从数据挖掘模型内容深入钻取查询转让专利

申请号 : CN200410063246.X

文献号 : CN1577335B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : P·金C·J·麦克勒南唐朝晖R·埃耶

申请人 : 微软公司

摘要 :

本发明提供从训练挖掘模型提供对挖掘模型源数据的广泛深入钻取的深入钻取特征。为使用户或应用程序能获得模型的给定节点上的模型内容信息,提供了一通用功能,用户可通过该通用功能指定模型的节点和数据集,并返回模型的节点和数据集的基础实例。可提供基础实例的采样,其中只请求节点中所表示的实例的采样。

权利要求 :

1.一种用于提供与应用于数据集的挖掘模型的图示相关的信息的方法,其特征在于,所述数据集包括至少一个实例,所述至少一个实例包括对应于至少一个变量的数据,所述图示包括与所述至少一个实例的至少一个相对应的至少一个节点,其中所述至少一个变量中的至少一个变量被用于将所述至少一个实例在所述图示的所述至少一个节点中分配,所述方法包括:接收对所述至少一个节点中一指定节点的基础数据的请求;

确定所述至少一个实例中的哪个实例对应于所述指定节点,其中所确定的对应的实例包括假设实例,所述假设实例解释所述指定节点的内容且不同于所述指定节点处的基础的实际实例;以及提供和所述对应实例相关的数据,其中和所述对应实例相关的数据包括对应于没有在所述图示中使用的至少一个变量的数据,其中没有在所述图示中使用的至少一个变量包括以下变量中的至少一个:与挖掘模型的预测能力无关的变量,以及基于用户请求从挖掘模型的使用或创建中排除出去的变量。

2.根据权利要求1所述的方法,其特征在于所述接收包括检测对指定节点的基础数据的请求,所述检测包括:接收具有与其相关的查询信息的查询;以及

检测出所述查询信息包括对指定节点的基础数据的所述请求。

3.根据权利要求2所述的方法,其特征在于所述接收查询包括接收以特定查询语言表示的查询。

4.根据权利要求3所述的方法,其特征在于所述接收查询包括接收以SQL数据库查询语言表示的查询。

5.根据权利要求1所述的方法,其特征在于所述提供与所述对应实例相关的数据包括提供与所述对应实例的每个实例相关的数据。

6.根据权利要求1所述的方法,其特征在于所述接收请求包括接收对数据采样的请求,所述提供与所述对应实例相关的数据包括提供与所述对应实例的采样相关的数据。

7.一种用于提供与应用于数据集的挖掘模型的图示有关的信息的系统,所述数据集包括至少一个实例,所述至少一个实例包括对应于至少一个变量的数据,所述图示包括与所述至少一个实例的至少一个对应的至少一个节点,其中所述至少一个变量中的至少一个变量被用于将所述至少一个实例在所述图示的所述至少一个节点中分配,所述系统包括:输入组件,用于从所述至少一个节点中接收一节点的指示;

分析组件,用于确定所述至少一个实例中的哪个实例对应于所述指定节点,其中所确定的对应的实例包括假设实例,所述假设实例解释所述指定节点的内容且不同于所述指定节点处的基础的实际实例;以及输出组件,用于输出与所述对应实例相关的数据,其中和所述对应实例相关的数据包括对应于没有在所述图示中使用的至少一个变量的数据,其中没有在所述图示中使用的至少一个变量包括以下变量中的至少一个:与挖掘模型的预测能力无关的变量,以及基于用户请求从挖掘模型的使用或创建中排除出去的变量。

8.根据权利要求7所述的系统,其特征在于所述输入组件检测对指定节点的基础数据的请求。

9.根据权利要求8所述的系统,其特征在于所述输入组件接收查询,并检测出所述查询包括对指定节点的基础数据的所述请求。

10.根据权利要求9所述的系统,其特征在于所述输入组件接收以特定查询语言表示的查询。

11.根据权利要求10所述的系统,其特征在于所述输入组件接收以SQL数据库查询语言表示的查询。

12.根据权利要求7所述的系统,其特征在于所述输出组件提供与所述对应实例的每个实例相关的数据。

13.根据权利要求7所述的系统,其特征在于所述输入组件接收对数据采样的请求,并且所述输出组件输出与所述对应实例的采样相关的数据。

14.一种用于提供与应用于数据集的挖掘模型的图示相关的信息的系统,其特征在于,所述数据集包括至少一个实例,其中所述至少一个实例包括对应于至少一个变量的数据,所述图示包括与所述至少一个实例的至少一个相对应的至少一个节点,其中所述至少一个变量中的至少一个变量被用于将所述至少一个实例在所述图示的所述至少一个节点中分配,所述系统包括:请求接收装置,用于接收对所述至少一个节点中一指定节点的基础数据的请求;

对应确定装置,用于确定所述至少一个实例中的哪个实例对应于所述指定节点,其中所确定的对应的实例包括假设实例,所述假设实例解释所述指定节点的内容且不同于所述指定节点处的基础的实际实例;以及数据提供装置,用于提供与所述对应实例相关的数据,其中与所述对应实例相关的数据包括对应于没有在所述图示中使用的至少一个变量的数据,其中没有在所述图示中使用的至少一个变量包括以下变量中的至少一个:与挖掘模型的预测能力无关的变量,以及基于用户请求从挖掘模型的使用或创建中排除出去的变量。

15.一种用于提供与应用于数据集的挖掘模型的图示相关的信息的方法,其特征在于,所述数据集包括至少一实例,其中所述至少一个实例包括对应于至少一个变量的数据,所述图示包括与所述至少一个实例的至少一个相对应的至少一个节点,其中所述至少一个变量中的至少一个变量被用于将所述至少一个实例在所述图示的所述至少一个节点中分配,所述方法包括:接收对所述至少一个节点中一指定节点的基础数据的请求;

确定与所述指定节点对应的至少一个假设实例,所述假设实例解释所述指定节点的内容且不同于所述指定节点处的基础的实际实例;以及提供和所述对应的假设实例相关的数据,其中和所述对应的假设实例相关的数据包括对应于没有在所述图示中使用的至少一个变量的数据,其中没有在所述图示中使用的至少一个变量包括以下变量中的至少一个:与挖掘模型的预测能力无关的变量,以及基于用户请求从挖掘模型的使用或创建中排除出去的变量。

16.根据权利要求15所述的方法,其特征在于,所述接收包括检测对指定节点的基础数据的请求,所述检测包括:接收具有与其相关的查询信息的查询;以及

检测出所述查询信息包括对与指定节点对应的假设数据的所述请求。

17.根据权利要求16所述的方法,其特征在于,所述接收查询包括接收以特定查询语言表示的查询。

18.根据权利要求16所述的方法,其特征在于,所述接收查询包括接收以SQL数据库查询语言表示的查询。

19.一种用于提供与应用于数据集的挖掘模型的图示相关的信息的系统,所述数据集包括至少一个实例,其中所述至少一个实例包括对应于至少一个变量的数据,所述图示包括与所述至少一个实例的至少一个对应的至少一个节点,其中所述至少一个变量中的至少一个变量被用于将所述至少一个实例在所述图示的所述至少一个节点中分配,所述系统包括:输入组件,用于接收所述至少一个节点中的一节点的指示;

分析组件,用于确定与所述指定节点相对应的至少一个假设实例,所述假设实例解释所述指定节点的内容且不同于所述指定节点处的基础的实际实例;以及输出组件,用于输出与所述对应的假设实例相关的数据,其中与所述对应的假设实例相关的数据包括对应于没有在所述图示中使用的至少一个变量的数据,其中没有在所述图示中使用的至少一个变量包括以下变量中的至少一个:与挖掘模型的预测能力无关的变量,以及基于用户请求从挖掘模型的使用或创建中排除出去的变量。

20.根据权利要求19所述的系统,其特征在于,所述输入组件检测对指定节点的基础假设数据的请求。

21.根据权利要求20所述的系统,其特征在于,所述输入组件接收查询,并检测出所述查询包括对指定节点的基础假设数据的所述请求。

22.一种用于提供与应用于数据集的挖掘模型的图示相关的信息的系统,其特征在于,所述数据集包括至少一实例,其中所述至少一个实例包括对应于至少一个变量的数据,所述图示包括与所述至少一个实例的至少一个相对应的至少一个节点,其中所述至少一个变量中的至少一个变量被用于将所述至少一个实例在所述图示的所述至少一个节点中分配,所述系统包括:请求接收装置,用于接收对与所述至少一个节点中的一指定节点对应的假设数据的请求;

假设实例提供装置,用于提供与所述指定节点相对应的至少一个假设实例,所述假设实例解释所述指定节点的内容且不同于所述指定节点处的基础的实际实例;以及数据提供装置,用于提供与所述对应的假设实例相关的数据,其中与所述对应的假设实例相关的数据包括对应于没有在所述图示中使用的至少一个变量的数据,其中没有在所述图示中使用的至少一个变量包括以下变量中的至少一个:与挖掘模型的预测能力无关的变量,以及基于用户请求从挖掘模型的使用或创建中排除出去的变量。

说明书 :

从数据挖掘模型内容深入钻取查询

技术领域

[0001] 本发明一般涉及数据挖掘领域。本发明尤其涉及从计算模型提供源数据的深入钻取(drill-through)特征。

背景技术

[0002] 数据挖掘是大量数据的探测和分析,目的在于发现数据中的关系、模式和趋势。也可使用数据挖掘来创建可用于预测将来的数据或分类现有数据的模型。
[0003] 例如,企业可收集有关其客户的大量信息。该信息可包括采购信息和客户可用的任何其它信息。可使用与客户数据相关的模型的预测,以控制客户流失、执行信用风险管理、侦查诈骗或制定销售决策。
[0004] 可提供智能交叉销售支持。例如,可使用数据挖掘功能,通过把用户的有关特性或用户已订购的项目和其它用户以前订购的项目的数据库相关,建议用户可能会感兴趣的项目。根据用户的行为或简介对用户进行分段。数据挖掘使分段模型分析能够发现将用户分成人口区段的特征。另外,可预测用户简介数据中缺少的值。例如,当用户不提供数据时,可预测该数据的值。
[0005] 为了创建和测试数据挖掘模型,可将可用的数据分成两个部分。其中一部分,即训练数据集,可用于创建模型。数据的其余部分,即测试数据集,可用于测试模型,从而确定模型作出预测时的精确度。一旦已创建数据挖掘模型,即可使用该模型对其它数据集中的数据作出相关的预测。
[0006] 将数据集中的数据分组成若干实例。例如,对于客户数据,每个实例可对应于不同的客户。一种实例中的数据可描述一个客户或以其它方式与一个客户相关。可与一种实例(例如,对于给定的客户)相关的一类数据是分类变量。分类变量将该实例分成几种预定义的状态之一。例如,一个这样的变量可对应于客户的受教育程度。在一个例子中,该变量有各种可能的值。这些可能的值称为状态。例如,婚姻状况变量的状态可以是“已婚”或“未婚”,并可对应于客户的婚姻状态。另一种变量是连续变量。连续变量是具有一可能值范围的变量。例如,一个这样的变量可对应于客户的年龄。与年龄变量相关的是该变量的可能值范围。
[0007] 如上所述,将可用的数据分成两组-训练数据集和测试数据集。通常70%的数据用于训练,30%的数据用于测试。模型可在包括该信息的训练数据集上训练。一旦模型训练完毕,便可在测试数据集上运行该模型以进行评估。在该测试期间,会向模型提供除年龄数据之外的全部数据,并要求模型在给定其它数据的情况下预测客户的年龄。在训练和评估之后,可在其它数据集上使用该模型。
[0008] 在测试数据集上运行模型,将模型所产生的结果和实际的测试数据进行比较,以查看模型在正确地预测客户年龄方面有多成功。
[0009] 当已运行模型之后,可产生应用于数据集的模型的图示。图1是显示将数据挖掘模型应用于数据集的结果的决策树图模型的例子。该图显示应用数据挖掘模型以针对数据集中的一组特定实例预测年龄的结果。模型中的每个实例存在于图的一个或多个节点中。例如,图的根节点1142标为“全部”并包含图中的全部实例。可根据“层”来描述节点,其中从根到叶具有最长路径的叶是决策树中的第零层节点,第n层节点的父节点是第n+1层节点。使用该术语,根节点1142是第四层节点。
[0010] 根节点1142之下的一层是第三层节点1132和1134。根据各实例中的婚姻状况将所述实例分配到这些节点中。根据“Capitalgain(资本利得)”变量的值将节点所表示的各组实例进一步分成四个第二层节点1122、1124、1126和1128。根据“Educationnum(受教育年数)”变量将第二层节点1122所表示的实例进一步分成第一层节点1112和1113。根据“Educationnum(受教育年数)”变量将第二层节点1126所表示的实例进一步分成两个第一层节点1114和1116。并根据“Hoursperweek(每周工时)”变量将第二层节点1128所表示的实例进一步分成两个第一层节点1118和1119。根据年龄变量将第一层节点1114和1116中的实例进一步分成第零层节点1102和1104(对于第一层节点1114)以及第零层节点1106和1108(对于第一层节点1116)。
[0011] 此图呈现了向数据集应用挖掘模型的视觉表示。其它图(如群集图)也可呈现向数据集应用挖掘模型的此类视觉表示。在某些图形显示中,每个节点包括信息栏或其它包含与节点中所含实例相关的信息的显示。
[0012] 虽然该信息可能有用,但可能需要找到与节点中所含实例有关的更多信息。某些程序可实施将数据挖掘模型应用于数据集的结果的绘图,这些程序使用户能够从节点存取数据。此类现有的解决方案是所用的数据挖掘模型所特有的并且是封闭的。此类存取不具有扩充性或一般性。将功能关联到用于产生和显示图形的工具上。但是,需要使用户能够使用宽泛范围的应用程序来存储数据集、应用数据挖掘模型并显示数据挖掘图形,以便为用户提供灵活性。因此,需要具有从与应用于数据集的数据挖掘模型的图示数据相对应的数据集存取数据的能力,而不管用于存储数据集、应用数据挖掘模型并显示数据挖掘图形的应用程序。

发明内容

[0013] 图示可由应用于数据集的挖掘模型组成。检测对所述至少一个节点中一指定节点的基础数据的请求。确定数据集中的哪些实例构成该节点的基础。提供与基础实例有关的数据。提供与基础实例有关的全部数据,或当请求时,提供与基础实例有关的数据的采样。
[0014] 以下说明其它实施例。

附图说明

[0015] 当结合附图阅读时,可较好地理解上述发明内容以及以下有关目前优选实施例的详细说明。基于说明本发明的目的,附图中显示本发明的示范性构造;但本发明不限于所披露的特定方法和装置。在附图中:
[0016] 附图1是应用于数据集的挖掘模型的图示的框图;
[0017] 图2是可实施本发明各方面的示范性计算环境的框图;
[0018] 图3是根据本发明的系统的框图;
[0019] 图4是窗口中所显示的深入钻取数据的例子;以及
[0020] 图5是根据本发明一项实施例从图示提供深入钻取信息的方法的流程图。

具体实施方式

[0021] 概述
[0022] 本发明提供从训练挖掘模型提供对挖掘模型源数据的广泛深入钻取的深入钻取特征。为使用户或应用程序能获得模型的给定节点上的模型内容信息,在一项实施例中提供了一通用功能,用户可通过该通用功能指定模型和数据集的节点,并返回该模型和数据集的节点中的实例。
[0023] 示范性计算环境
[0024] 图2说明了其中可实施本发明的适当的计算系统环境100的例子。计算系统环境100只是适当计算环境的一个例子,并不想对本发明的使用范围或功能作出任何限制。也不应将计算系统100解释为具有与示范性操作环境100中所述的任一组件或各组件的组合相关的依赖性或要求。
[0025] 本领域的普通技术人员应能明白,计算机或其它客户机或服务器装置可作为计算机网络的一部分来部署,或部署在分布式计算环境中。在这点上,本发明适用于具有任意数量的内存或存储单元,和横跨任一数量的存储单元或存储量而发生的任一数量的应用程序和过程的任何可结合本发明使用的计算机系统。本发明可应用于在具有远程或本地存储器的网络环境或分布式计算环境中部署有服务器计算机和客户机计算机的环境。本发明还可应用于独立的计算装置,所述计算装置具有程序设计语言功能、用于产生、接收和传输与远程或本地服务相关的信息的解释和执行能力。
[0026] 本发明可结合众多其它的通用或专用计算系统环境或配置来操作。有很多众所周知的计算系统、环境和/或配置适用于本发明,例如,包括但不限于:个人计算机、服务器计算机、掌上型装置或膝上型装置、多处理器系统、基于微处理器的系统、机顶盒、可编程消费者电子设备、网络PC、小型计算机、大型计算机、包括上述任何系统或装置的分布式计算环境等。
[0027] 大体按照计算机可执行指令来说明本发明,例如由计算机执行的程序模块。一般而言,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、对象、组件、数据结构等。也可以在分布式计算环境中实施本发明,在这样的环境中,由通过通信网络或其它数据传输媒质连接的远程处理装置来执行任务。在分布式计算环境中,程序模块和其它数据可位于包括内存存储装置的本地和远程计算机存储媒质中。分布式计算有助于通过计算装置和系统之间的直接交换来共享计算机资源和服务。这些资源和服务包括信息的交换,高速缓冲存储器和用于文件的磁盘存储器。分布式计算利用网络的连接性,使客户机能够对其集体力量施加杠杆作用,以利于整个企业。在这点上,多种装置可具有利用本发明技术的应用、对象或资源。
[0028] 参考图2,用于实施本发明的一种示范性系统包括以计算机110为形式的通用计算装置。计算机110的组件可包括但不限于:处理单元120、系统内存130,以及将包括系统内存在内的各种系统组件耦合到处理单元120的系统总线121。系统总线121可以采用各种类型的总线结构,包括内存总线或内存控制器、外围总线以及使用各种总线结构的任一种的局部总线。作为例子,而非限制,此类结构包括工业标准结构(ISA)总线、微通道结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线以及外围组件互连(PCI)总线(也称为Mezzanine总线)。
[0029] 计算机110通常包括多种计算机可读媒质。计算机可读媒质可以是任何可由计算机110存取的可用媒质,包括易失性与非易失性媒质、可移动与非可移动媒质。作为例子,而非限制,计算机可读媒质包括计算机存储媒质和通信媒质。计算机存储媒质包括可以任何方法或技术实施的易失性与非易失性以及可移动与非可移动媒质,用来存储信息,例如计算机可读指令、数据结构、程序模块或其它结构。计算机存储媒质包括但不限于:RAM、ROM、EEPROM、闪存或其它内存技术、CDROM、数字化视频光盘(DVD)或其它光盘存储器、磁盒、磁带、磁盘存储器或其它磁性存储装置,或任何其它可用于存储所需信息并且可由计算机110存取的媒质。通信媒质通常采用已调数据信号(例如载波或其它传输机制)来具体化计算机可读指令、数据结构、程序模块,或其它数据,并且包括任何信息传送媒质。术语“已调数据信号”是指其一个或多个特性是以对信号内信息进行编码的方式来设定或改变的信号。作为例子,而非限制,通信媒质包括有线媒质,例如有线网络或直线连接,还包括无线媒质,如声音、RF、红外线以及其它无线媒质。上述媒质的任何组合也应包括在计算机可读媒质的范围之内。
[0030] 系统内存130包括以易失性和/或非易失性内存为形式的计算机存储媒质,例如只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133(BIOS)所含有的基本例程有助于在计算机110内的元件之间传送信息,例如在启动期间。BIOS系统133通常存储在ROM 131内。RAM 132通常包含可由处理单元120即时存取和/或目前在操作的数据和/或程序模块。作为例子,而非限制,图2说明了操作系统134、应用程序135、其它程序模块136以及程序数据137。
[0031] 计算机110亦可包括其它可移动/非可移动、易失性/非易失性的计算机存储媒质。举例而言,图2说明了读写非可移动、非易失性磁性媒质的硬盘驱动器140、读写可移动、非易失性磁盘152的磁盘驱动器151以及读写可移动、非易失性光盘156(例如CD ROM或其它光学媒质)的光盘驱动器155。其它可用于示范性操作环境的可移动/非可移动、易失性/非易失性计算机存储媒质包括但不限于:磁带盒、闪存卡、数字化视频光盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器141通常通过非可移动存储接口(例如接口140)连接到系统总线121,磁盘驱动器151和光盘驱动器155通常通过可移动存储接口150连接到系统总线121。
[0032] 上文所讨论以及图2所述的驱动器及其相关的计算机存储媒质可为计算机110存储计算机可读指令、数据结构、程序模块和其它数据。例如,图2所述的硬盘驱动器141存储操作系统144、应用程序145、其它程序模块146和程序数据147。注意到这些组件可以和操作系统134、应用程序135、其它程序模块136以及程序数据137相同,也可以不同。这里为操作系统144、应用程序145、其它程序模块146和程序数据147给出不同的编号,用来说明它们至少是不同的副本。用户可通过输入装置(例如键盘162和指示装置161,后者常称为鼠标、轨迹球或触控垫)向计算机20输入命令和信息。其它输入装置(未示出)可包括麦克风、操纵杆、游戏垫、圆盘式卫星电视天线、扫描仪等。这些和其它输入装置通常通过用户输入接口160(与系统总线耦合)连接到处理单元120,但也可以由其它接口和总线结构连接,例如并行端口、游戏端口或通用串行总线(USB)。监视器191或其它类型的显示装置也可经由一个接口(例如视频接口190)连接到系统总线121。除了监视器以外,计算机还可以包括其它可通过输出外围接口196连接的外围输出装置,例如扬声器197和打印机190。
[0033] 计算机110可在网络化的环境中操作,该环境使用逻辑连接与一个或多个远程计算机(例如远程计算机180)连接。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等装置或其它公共网络节点,并且通常包括以上关于计算机110所述的许多或全部元件,尽管图2中只说明了内存存储装置181。图2中描述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可包括其它网络。此类网络环境在办公室、公司范围的计算机网络、企业内部网和因特网中非常普遍。
[0034] 当用在LAN网络环境中时,计算机110可通过网络接口或适配器170连接到LAN171。当用在WAN网络环境中时,计算机110通常包括调制解调器172或其它用于在WAN(例如因特网)173上建立通信的装置。调制解调器172(可为内置型或外置型)可经由用户输入接口160或其它适当的机制连接到系统总线121。在网络化的环境中,关于计算机110所述的程序模块或其部分可存储在远程内存存储装置中。作为例子,而非限制,图2说明了驻留在内存装置181上的远程应用程序185。应明白,所示的网络连接是示范性的,可使用其它在计算机之间建立通信连接的装置。
[0035] 虽然本文的某些示范性实施例结合驻留在计算装置上的软件来说明,但也可经由操作系统、应用程序设计接口(API)、“中间人”对象、控制对象、硬件、固件等来实施本发明的一个或多个部分,使得所述方法包括于全部.NET语言和服务、得到全部.NET语言和服务的支持或经由全部.NET语言和服务来存取,并且在其它分布式计算框架之内。
[0036] 深入钻取功能
[0037] 如上所述,数据挖掘应用允许在数据集上训练和使用模型。一般而言,数据集可表示为数据表。可用表的一行来表示每个实例,表的每列对应于一变量。行R和列C所索引的单元格中的值对应于一变量的值,该变量对应于与行R对应的实例的列C。虽然数据集可表示为数据表并通常存储在表结构中,但本发明也涵盖其它数据集存储和表示形式。
[0038] 当将挖掘模型应用于数据集中时,结果得到数据的图示。图示包括节点。可用来自数据集的实例来填充图示的节点。将挖掘模型应用于数据集的应用程序从数据集取得数据,用它来填充应用于数据集的挖掘模型的图示。但是,图示中可能会遗漏特定的信息。例如,在应用于数据集的挖掘模型的图示中,可根据节点处的实例数量来遮蔽节点。根节点处显示了数据集中的全部实例。将对应地遮蔽该节点。在下一层中分裂实例,并且该层中的遮蔽将指示哪个节点的数据较多,哪个节点的数据较少。然而,即使在此类被遮蔽的图示中,虽然遮蔽可指示每个节点中的实例有多少,但也会遗漏来自数据集的其它信息。例如,数据集可包含“Income”变量。在图1的图示中将实例分配于各节点时没有使用该变量。图示中不使用某一变量的原因有很多。例如,用户可明示地请求在挖掘模型的使用或创建中不包括特定的变量。在其它实例中,可开发不使用特定变量的挖掘模型,因为该变量不会对模型的预测能力产生积极的影响。然而,用户可能需要查看该特定变量的值。
[0039] 如图3所示,数据集程序300提供对存储的数据集310的存取。可经由查询语言提供对数据集的存取。例如,当数据集存储程序300是从微软公司获得的SQL应用程序之一时,查询语言是SQL查询语言。其它数据库应用程序可包括挖掘模型或相关的功能,本发明亦可使用此类其它的应用程序。
[0040] 本发明的一项实施例中亦可存储挖掘模型320。除此之外,在一项实施例中,将挖掘模型320应用于数据集310可产生习得图(learned graph)330。这些习得图330可由用户350存储,也可由用户350通过内容浏览器340予以使用。内容浏览器可以是单独的应用程序,如图3所示,或可集成到数据集程序300中。内容浏览器340可提供对基于习得图330信息的图示(例如图1中的示范性图示)的存取。除图1所示的决策树之外,图示还可包括群集显示以及其它的图示。
[0041] 内容浏览器340的用户350可以是直接或间接地与内容浏览器340的用户界面交互作用的人类用户。用户350也可以是使用内容浏览器340的另一应用程序或工具。根据本发明一项实施例,用户350可从与指定节点中的实例对应的数据集请求数据的显示。该数据称为“深入钻取”数据。例如,在内容浏览器340上浏览数据的人类用户可能希望浏览指定节点处的基础数据,以确定该节点中实例的其它特征。例如,内容浏览器340可经由鼠标点击来接收用户350对节点的请求。为提供数据,内容浏览器340可从数据集程序300请求实例数据。根据本发明一项实施例,非人类用户也可从数据集程序300请求实例数据。在一项实施例中,通过使用自动查询来完成这项操作。
[0042] 在一项实施例中,内容浏览器340经由查询从数据集程序300请求指定节点的实例数据。例如,在本发明一项实施例中,基于该目的而采用SQL型语法。例如,在一项实施例中,从模型“model-one”查询给定节点“NodeSelected的实例可以是:
[0043] Select*from[model-one].cases
[0044] Where IsInNode(‘NodeSelected’)
[0045] 此语法向数据集程序300指示其应返回模型“model-one中节点“NodeSelected”中的实例。在一项实施例中,当“.cases”在查询中时返回的实例是该模型在其上训练的该模型的训练实例。
[0046] 因为可用请求来选择大量的实例,因此只从数据集程序300返回此类实例的采样可能有用。这使对基础数据的请求返回基础数据的采样而非全部基础数据。这可在数据传送成本方面提供优势。在此类情形中,可请求只提供模型中所选节点处的实例的子集,而不用从模型中的全部实例请求数据(在该例子中的“from[model-one].cases”)。该子集包括表示该节点处数据的采样实例。例如,在一项实施例中,请求的语法可为:
[0047] Select*from[model-one].sample_cases
[0048] Where IsInNode(‘NodeSelected’)
[0049] 数据集程序300解释此请求并提供NodeSelected的基础数据的采样。
[0050] 在另一实施例中,当请求实例的采样时,并非返回该节点处的实际实例,而是返回假设的实例。因为为了解释节点的内容而完成对实例采样的请求,一种增加清晰性的方式是提供解释被查询节点的内容的假设实例。在某些实例中,实际数据可能不如假设的实例清晰。虽然此类假设的实例可能不是模型的训练数据的一部分,但如果假设的实例是训练数据的一部分,那么返回的假设实例将已在节点中。假设实例可能已在以前产生或提供,从而当作出对假设实例的请求时,可找到适当的假设实例。在此类实例中,除了显示为已存储并可用于图3中的数据集程序300的信息之外,还可将假设的实例信息用于数据集程序300。或者,当作出请求时,可即时产生假设的实例。
[0051] 如图3所示,在一项实施例中,除了存储习得图330信息之外,数据集程序还可存储映射信息335。此映射信息可存储有关将实例映射到习得图330之一中的节点的信息。这样,即使不可存取习得图的模型,也可在查询之后返回习得图的实例信息。
[0052] 图4显示深入钻取数据的例子。该数据对应于图1中节点1112的深入钻取。如图所示,窗口400中显示节点的实例信息,包括图1的决策树中未示出的变量的数据。
[0053] 图5的流程图中显示根据本发明一项实施例的方法。步骤500中接收对所述至少一个节点中一指定节点的基础数据的请求。在步骤510中确定数据集中的哪些实例构成该节点的基础。在步骤520中提供与基础实例有关的数据。提供与基础实例有关的全部数据,或当请求时,提供与基础实例有关的数据的采样。
[0054] 虽然本发明已参考相关的数据源加以说明,但所述本发明的适用性不限于此类数据源。例如,但不作限制,预期本发明可实施于多维数据源的环境中,例如在线分析处理(OLAP)立方源,或任何其它挖掘模型数据类型。
[0055] 有多种实施本发明的方式,例如适当的API、工具套件、驱动程序代码、操作系统、控件、独立或可下载软件对象等,它们使应用和服务可使用本发明的产品配置方法。本发明期望通过API(或其它软件对象)的观点,以及通过在产品配置数据方面进行通信的软件或硬件对象来使用本发明。因此,本文所述的本发明的各种实施方案可具有全部用硬件、部分用硬件和部分用软件以及用软件的方面。
[0056] 如上所述,虽然本发明的示范性实施例已结合各种计算装置和网络结构加以说明,但可将基本概念应用于任何需要在其中实施产品配置的计算装置或系统。因此,根据本发明的编码/解码数据的技术可应用于多种应用和装置。例如,本发明的演算法和硬件实施方案可应用于计算装置的操作系统,作为装置上的单独对象、作为另一对象的部分、作为可再使用的控件、作为可从服务器下载的对象、作为装置或对象和网络之间的“中间人”、作为分布式对象、作为硬件,在内存中,前面任何项的组合,等等。虽然本文选择示范性的程序设计语言、名称和例子作为各种选择的代表,但这些语言、名称和例子并非想要作限制。有关参考使用控件来实现本发明的实施例,本发明不限于提供.NET控件,而是应在根据本发明实现配置目的的任何软件(和/或硬件)的较宽泛方面进行考虑。本领域的普通技术人员应明白,有多种方式可提供用于实现通过本发明各种实施例实现的相同、相似或等效功能的对象代码和命名法。本文所用的术语“产品”指代产品和/或服务,和/或可用于通过因特网目录销售的任何其它物品。也可结合在线拍卖或投标网站实施本发明。
[0057] 如上所述,可结合硬件或软件或在适当的情况下结合两者的组合来实施本文所述的各种技术。因此,本发明的方法和装置,或其某些方面或部分,可采取有形媒质(例如软盘、CD-ROM、硬盘驱动器或任何其它机器可读存储媒质)中所具体化的程序代码(即指令)的形式,其中当将程序代码载入机器(例如计算机)并由机器来执行时,该机器变为用于实施本发明的装置。在可编程计算机中执行程序代码的实例下,计算装置一般将包括处理器、可由处理器读取的存储媒质(包括易失性和非易失性内存和/或存储元件)、至少一输入装置和至少一输出装置。可利用本发明的产品配置技术(例如透过使用数据处理API、可再使用控件等)的一个或多个程序较佳地实施于高级面向过程或面向对象的程序设计语言中,以与计算机系统通信。然而,如需要,可用汇编或机器语言来实施程序。在任何实例下,语言可以是经编译或解释的语言,并可与硬件实施方案结合。
[0058] 本发明的方法和装置亦可经由以程序代码为形式具体化的通信来实施,该程序代码通过某一传输媒质(例如通过电线或电缆、通过光纤或经由任一其它的传输形式)来传输,其中,当接收程序代码、将程序代码载入机器(如EPROM、门阵列、可编程逻辑装置(PLD)、客户机计算机、录像机等或如以上示范性实施例中所述具有信号处理能力的接收装置)并由机器来执行程序代码时,该机器变为用于实施本发明的装置。当在通用处理器上实施时,程序代码可与处理器结合,以提供用来调用本发明的功能的独特装置。另外,结合本发明使用的任何存储技术总可以是硬件和软件的组合。
[0059] 虽然本发明已结合各图的优选实施例来说明,应了解可使用其它类似的实施例,并可对所述实施例进行修改和添加以执行本发明的相同功能,而不致脱离本发明。例如,虽然本发明的示范性网络环境在网络化的环境(对等网络化环境)中说明,本领域的熟练技术人员应明白,本发明不限于此,并且本申请中所述的方法可应用于任一计算装置或环境,例如游戏控制台、掌上型计算机、便携式计算机等(有线或无线),并可应用于经由通信网络连接并可横跨网络交互作用的任一数量的此类计算装置。此外,应强调,本发明涵盖多种计算机平台,包括掌上型装置操作系统和其它专用操作系统,尤其当无线网络化装置的数量持续增长时。而且,本发明可实施于多个处理芯片或装置中,或横跨多个处理芯片或装置来实施,并且可横跨多个装置类似地实现存储器。因此,本发明不应限于任何单项实施例,而应在与随附权利要求书一致的广度和范围内进行解释。