用于多维数据的自动洞察的制作方法

文档序号:11530762阅读:282来源:国知局
用于多维数据的自动洞察的制造方法与工艺
背景多维数据是用于诸如商业智能分析之类的分析任务的典型和流行的数据类型。如本文所用的,多维数据是以包括作为表中的行的记录集的表格格式(即,多维表)来组织的数据,并且每一记录由作为表中的列的属性集来表示。此类分析任务导致对从所分析的数据获得的洞察进行概括的报告。期望的分析报告包括各种类型的洞察,所述洞察通常通过由一些自动数据挖掘技术辅助的多维数据的人工探索而发现。然而,由于多维数据分析的复杂性以及针对各种洞察的综合挖掘技术的缺乏降低了用户与多维数据完全交互的能力,所以此类洞察发现任务通常是困难且耗时的。概述本文描述了用于提供自动化机制的概念和技术,所述自动化机制对多维数据提供系统和综合的洞察挖掘。提供自动化机制的示例计算设备包括处理器以及其上存储计算机可执行指令的存储器。计算机可执行指令在被处理器执行时,导致计算设备访问多维数据并接收与数据集内的数据子空间相关的自动生成的洞察。具有自动洞察的多维数据分析,特别是通过使用自动挖掘的洞察提供提示、指南,并且进行分析流程,以期望更快地接近期望的分析结果。期望的洞察可具有以下特性,●将从正在分析的数据中发现的合适的知识单元,作为分析流程的自然构成块和所得到的报告●信息性作为惊喜/有趣/重要事实或支持/解释事实,作为无缝连接和与数据探索交互的提示和线索应当理解,上述主题也可被实现为计算机控制的装置、计算机进程、计算系统或诸如计算机可读介质等制品。通过阅读下面的详细描述并审阅相关联的附图,这些及各种其他特征将变得显而易见。提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本技术实现要素:并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在将本概述用来限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部分中所提及的任何或所有缺点的实现。附图简述合并在本公开中且构成本公开的一部分的附图解说了本发明的各个实施例。在附图中:图1是用于从数据集自动标识洞察并呈现按重要性排名的洞察的系统的一个实施例的框图;图2a和2b是各种元洞察的示例输出;图3是用于从数据集自动标识洞察并呈现按重要性排名的洞察的示例方法的流程图;图4a和4b示出了用于标识、评分、排名和多样化洞察的示例方法的流程图;以及图5是实现图3、4a和4b中所示的操作的示例商业智能计算设备和远程用户计算设备的框图。详细描述本文描述了用于分析复杂多维数据以标识该多维数据的一个或多个数据集内的子空间的显著洞察的自动化机制的概念和技术。概览操作示例计算设备的用户标识一个或多个子空间的数据集。该数据取自先前定义的多维数据。计算设备标识子空间的属性,然后确定子空间的属性是否与其他子空间的属性相差阈值量。对被确定为相差阈值量的那些子空间标识洞察。洞察包括两种或更多种不同的类型。计算设备基于洞察之间的各种比较来对所标识的洞察进行排序。然后,计算设备至少基于该排序来呈现洞察的一部分。不同类型的洞察可以是具有值的数值洞察、具有时间分量的基于时间的洞察、以及具有基于两个或更多个子空间的洞察的复合洞察。计算设备通过对洞察的部分进行评分并对经评分的洞察进行排名来排序。计算设备通过至少基于相关联的子空间的市场份额评级来确定洞察的影响值来评分。市场份额评级基于与该洞察相关联的子空间与其他可比较的子空间的相关性。然后,计算设备确定这些洞察中各个洞察的显著性值,将影响值或显著性值中的至少一个归一化到范围,并至少基于影响值和显著性值确定这些洞察中各个洞察的分数。以下详细描述引用附图。在任何可能的地方,相同的附图标记在附图和以下描述中用于指代相同或相似的元素。尽管可能描述了各示例实现,但修改、改编、以及其他实现是可能的。例如,可对附图中所解说的元素进行替换、添加或修改,并且可通过对所公开的方法替换、重排或添加阶段来修改本文中所描述的方法。现在参考其中相似的附图标记表示相似的元素的附图,将描述各个实施例。图1是例示出具有用于从数据集自动标识洞察并呈现按重要性排名的洞察的组件的示例系统架构的框图。该系统架构包括商业智能(bi)计算设备100和用户计算设备102。bi计算设备100可以是以下参考图5描述的各种合适的计算设备之一。例如,bi计算设备100或用户计算设备102可包括平板计算设备、台式计算机、移动通信设备、膝上型计算机、膝上型/平板混合计算设备、游戏设备或用于执行各种任务的其他类型的计算设备。bi计算设备100可包括处理器108、网络接口114和洞察引擎112。数据存储104包括一个或多个多维数据结构。数据存储104可直接连接到bi计算设备100,或可经由网络106或另一网络连接到bi计算设备100。用户计算设备102可包括处理器118、显示设备120、用户接口122和网络接口124。网络接口114、124允许相应计算设备通过诸如公共或专用数据网络等网络106来与其他计算设备通信。用户计算设备102的用户可请求访问存储在数据存储104中的多维数据结构。该请求可以是经由网络接口114与由处理器108产生的网页交互的形式。处理器108在执行洞察引擎112时执行所请求的多维数据结构或其他未请求的多维数据结构的一个或多个数据集的洞察分析。一旦洞察分析完成,在用户经由用户接口122做出请求之后不久,可经由显示器120向用户呈现一个或多个洞察。洞察分析在以下详细描述。多维数据允许诸如bi分析之类的各种类型的分析任务。表1示出了关于汽车销量的多维数据集的示例。年份季度品牌型号市场销量利润2008q1福特suv美国110,7985,4602008q2福特suv美国88,5483,8752008q3福特suv美国118,6375,9002008q4福特suv美国147,5696,4902009q1本田中型中国51,0402,2002009q2本田中型中国35,7891,8702009q3本田中型中国68,4533,1002009q4本田中型中国79,3223,980……………………………..……表1多维数据在概念上以包括作为表中的行的记录集的表格格式(即,多维表)来组织,并且每一记录由作为表中的列的属性集来表示。多维数据包括两种类型的列——维度和度量。维度列和度量列是互斥的,这意味着多维表中的列将要么是维度要么是度量,但不能既是维度又是度量。维度表示表中的记录的基本和内在属性,例如关于汽车销量数据集的“品牌”和“年份”。维度被用来基于维度值的等同性和不等同性对记录进行分组和过滤。维度根据其值域落入两种主要类型——类别和次序。具体而言,类别维度采用类别值(例如,汽车销量的“品牌”),而次序维度采用次序值(例如,汽车销量的“年份”)。类别和次序被用于主要对表征其内在能力的维度进行分类以反映排序,但不限制其使用场景。可以存在具有非数字值的次序维度(例如,“年龄”维度也可将“婴儿”、“儿童”、“青少年”等取作值)。当排序并非是分析任务中的重要方面时,次序维度可以仅仅用作类别维度。对于记录而言,度量反映与分析任务相关的附连和量化属性(例如,汽车销量数据集的“销量”和“利润”)。度量列中的值通常是数字值。对于数据集,子空间是表示记录子集的概念。具体而言,通过作为过滤约束的一组<维度:值>对来定义子空间,并且子空间恰好包含给定数据集中满足过滤约束的所有记录。对于给定数据集,存在其定义中没有过滤约束的特殊子空间,包括给定数据集中的所有记录的该特殊子空间被表示为*子空间。以下描述了各子空间的不同关系。当子空间a的定义是子空间b的定义的子集而仅有一对<维度:值>过滤器不同时,a和b处于父子关系——鉴于在b的定义中存在但在a的定义中不存在的该唯一维度,a是b的父子空间而b是a的子子空间。子空间的父子关系推断出以下属性:●当b是a的子子空间时,b的记录将是a的记录的子集。●b的父子空间的数量等于b的定义中的<维度:值>过滤对的数量。当子空间a和b具有相同数量的<维度:值>过滤对且仅有一个过滤对不同(维度相同而值不同)时,a和b处于兄弟关系。.此外,给定数据集,共享相同父子空间的所有子空间形成兄弟子空间组。兄弟关系和兄弟子空间组推断以下属性:●当a和b是兄弟子空间时,它们的记录的交集将是空集。●兄弟组中所有子空间中的记录的并集将恰好等于其共享父子空间中的所有记录。知识和洞察基于数据子集的量化属性。除了通过反映其中的数据记录关于维度值的共性来表征子空间的子空间定义之外,还可使用基于度量导出的属性来表征子空间。对子空间的某些度量的直接聚合可以是属性,例如,对{品牌:福特市场:中国}子空间在“销量”度量上的总数(sum)聚合是反映福特汽车在中国的总销量的属性。基于度量聚合的经导出的计算也可以是属性,例如,与其关于其他“品牌”的兄弟子空间相比子空间{品牌:福特市场:中国}的销量总数的排名位置,或子空间{品牌:福特市场:中国}的销量总数在“年份”上趋势(分别基于{品牌:福特市场:中国,年份:2008}的销量总数的结果等)。前面的示例例示了属性可被流水线化的事实——一个属性计算的结果可以是另一个属性计算的输入,并且迭代地形成具有有意义的语义的属性流水线。表2列出了可被用于形成各种属性流水线的示例属性。例如,子空间(品牌:福特,年份:2009)的sumsales(总销量)箭头指向difffromprevyear(不同于上一年份)箭头指向rankbrand(排名品牌)对应于跨所有“品牌”关于在2009“年份”内“销量”增长的“福特”的排名位置;而在不同流水线排序中的相同的三个属性对应于不同的语义——sumsales(总销量)箭头指向rankbrand(排名品牌)箭头指向difffromprevyear(不同于上一年份)对应于在2009“年份”内所有“品牌”中“福特”的“销量”排名位置变化。更多此类流水线属性可被添加。表2因此,基于关于多维数据、属性和属性流水线的前面的讨论,示例洞察定义如下:定义1基本洞察——给定多维数据集作为分析上下文,基本洞察是●单个洞察——与其兄弟子空间或父子空间相比具有显著不常见的属性值(基于阈值/设置)的子空间;●复合洞察——一些子空间之间显著不常见的关系。两个子空间的关系可通过它们的子空间关系以及它们的属性之间的关系一起来表征。例如,子空间{品牌:福特}和{品牌:福特市场:中国}处于父子子空间关系,当他们的“销量”趋势(时间序列属性)在“年份”上具有显著正相关关系时,该两个子空间和此类不常见的关系可以形成洞察。因此,基本洞察可包括以下三个分量。●一个子空间(对于单个洞察)或多个[>1]子空间(对于复合洞察),作为洞察的主体;●以属性或属性流水线形式的计算,作为表征主体和(对于复合洞察的)它们的关系的角度;●作为角度(从该角度计算结果是不常见的)的洞察类型,并且对应的分数反映其主体的重要性和其计算结果的不常见性。表3提供了示例洞察类别和类型。表3作为示例实现,关于洞察候选(即,未准备好输出给用户的洞察),分数是以下两个因子的组合:●影响——它反映了洞察的主体子空间对照整个数据集的重要性。此类影响可通过用于关于任何度量和计算及其组合提升子空间的最佳可能角度来确定。直觉如下——当考虑关于子空间a的洞察时,在a越重要的情况下该洞察的排名应当越高,并且a的重要性应该由要提升的最佳可能角度来确定;●显著性——它纯粹反映了洞察本身的显著性。为了比较的公平性对影响和显著性进行归一化。例如,当影响和显著性两者都被归一化在[0,1]区间中时,它们的直接乘积被用作洞察的分数以用于排名。组合影响和显著性的其他方法可被用于计算分数。表4示出了不同洞察类型的显著性值计算的示例。表4洞察挖掘的可扩展搜索框架概念上,搜索框架枚举并关于洞察定义的三个分量评估洞察候选——子空间、洞察类型以及计算。在实践中,待评估的洞察候选可由搜索框架以具有以下分层逻辑的上下文的替换形式来枚举:●搜索框架在顶层中枚举主体子空间;○每个单个子空间将被用作待评估的单个洞察的主体;○父子或兄弟(如在示例实现中的)或其他关系中的每个子空间集将被用作待评估的复合洞察的主体。搜索框架在第二分层中枚举计算。●对主体子空间或主体子空间集的计算可以是以下两者○原始属性——度量/维度被枚举用于原始属性计算;或者○属性流水线——流水线中的属性和用于计算流水线中每个属性的维度/度量被枚举。针对主体子空间的每个上下文加上来自第二分层的计算,搜索框架在第三分层中枚举待评估的洞察类型。简而言之,搜索框架在三个分层中枚举三元组<主体子空间,计算,洞察类型>,并且三元组的每个特定组合确定一个待评估的特定洞察候选。在本章节中,这提供了关于搜索三元组的搜索框架的可扩展设计,并将搜索优先级和结果排名留给随后的章节。可扩展意味着它可支持新的洞察类型。计算任务单元的隔离执行计算功能(即,任务单元)的隔离,使得添加新洞察类型可对框架引入最小的影响。在一个实现中,分别定义以下三种计算任务单元。●子空间搜索单元——它对应于用于枚举主体子空间的顶层枚举。●计算搜索单元——它对应于用于枚举计算的第二层枚举。●洞察评估单元——它对应于用于枚举洞察类型的第三层枚举。以此方式,添加新洞察类型的影响将被限制在第三层洞察评估单元内,而为新计算添加新属性类型的影响将被限制在第二层计算搜索单元内。洞察评估单元的抽象抽象允许添加新洞察类型以便尽可能多地利用现有框架。在一些示例中,洞察评估单元根据对应的洞察类型被分类为以下三个类别,使得新洞察类型很有可能落入这三个类别并被框架容易地支持。●单个点洞察评估单元——它对应于关于作为单个主体的单个子空间的洞察类型,以及基于原始属性或以经导出的点属性作为结束的属性流水线的计算。●单个形状洞察评估单元——它对应于关于作为单个主体的单个子空间的洞察类型,以及基于以经导出的形状属性作为结束的属性流水线的计算。●复合洞察评估单元——它对应于关于两个或更多个子空间的洞察类型。新洞察类型落入上述三个类别之一,并且利用对应的计算任务框架来容易地支持该新洞察类型。排名一旦每个洞察都具有分数,则根据它们对应的分数的降序排序对洞察进行排名,而不管类型是否相同。根据以下事实,分数有两个因子:●洞察的以下两个主要分量与洞察评分相关。○一个子空间或两个子空间(如在示例实现中的)或多个[>2]子空间作为洞察的主体○洞察类型及其统计度量(显著性)反映了该洞察的极端性/不常见性的程度●洞察排名原则背后的直觉如下:○偏好被跨洞察类型地分开,例如,通过将洞察按类型排名或忽略类型排名。在两个洞察的显著性值是可比较的情况下,其主体更重要的洞察排在前。○在两个洞察的主体的重要性是可比较的情况下,具有更高显著性的洞察排在前。一般而言,使用影响(记录集对照给定数据集的所有记录的重要性)来提升一个、两个或更大数量的子空间。出于讨论简明起见而不失一般性,以一个子空间的影响作为示例,并且结论变得可适用于和可扩展于多个子空间的情况。从多个角度评估子空间。最优势的角度被用于提升。以下是影响评估的多个可能的角度。1.每个度量列提供了一种潜在权重信息,用于评估记录的重要性然后评估子空间对照整个数据集的重要性。2.在每个记录对应于诸如人、销售记录、或基本事件日志之类的一个对等实体的情况下,考虑每个记录具有等同权重的附加假想度量列(即,计数)。此类权重(等于记录的数量)的和的比率被用于反映子空间重要性。3.属性流水线是用于影响度量的另一种潜在角度。基于前面的讨论和分析,跨这些不同的角度来进行权重归一化。"归一化"意味着使不同角度的不同提升准则变为可比较的——在不同权重角度上的优势应该是相互公平且没有偏见的。因此,选择或甚至仔细构建用于归一化的加权计算。作为示例实现,非负值的比例是最基本的归一化方法。因此,对所有的那些非负度量列,当其默认聚合为总数时,可使用自然归一化对那些度量列计算基于比例的影响。非负约束的破坏可能会对归一化造成麻烦。最具挑战性的部分来自整个数据集的总权重将是正值和负值一起被平衡的结果,其可能甚至为零并对归一化而言是无用的。此外,可能存在>100%或<-100%的比率作为权重,这将是对其他角度的偏见并将导致不公平。因此,在可能存在更好的角度以供使用的情况下,破坏非负约束的角度不会被使用。作为示例实现,使用前k项值的和的比率是基于比例的权重的变型,特别针对用平均值(avg)作为默认聚合的那些度量列。事实上这是用来代替比例的另一种比率。在计算分数之后,输出任何洞察之前,排名靠前的洞察可被发送到多样化步骤或替换实现以便标识元洞察。元洞察是相关的基本洞察的有组织集合,并且这些基本洞察将共同传达更高级/更复杂的知识,诸如以下示例所示。图2a示出了基于四个基本洞察的元洞察。由于基本洞察都与平板计算机的销量有关,他们揭示了如下的销量主导链(以百万美元值来度量):1.平板计算机主导全部(91.58%)2.9到10英寸的大小主导所有大小的平板计算机(69.79%)3.屏幕分辨率为1024×768的平板计算机主导大小为9到10英寸的平板计算机(77.15%)4.基于ios的平板计算机主导大小为9到10英寸且屏幕分辨率为1024×768的平板计算机(99.09%)根据此元洞察,用户可容易地意识到流行的平板计算机销量的推动因子。图2b示出了基于三个基本洞察的元洞察,其揭示了如下综合有趣的事实:1.关于合并的平板计算机销量,在所有国家中美国是出众第一名。2.关于屏幕分辨率,1024×768和600×800是共同主导美国平板计算机销量的出众前两名。3.关于前面的两个分辨率,它们在产品类别上的分布差异很大——1024×768主要针对平板计算机类别,而800×600主要针对电子阅读器类别。根据此元洞察,读者可容易地意识到关于平板计算机和电子阅读器之间的分辨率差异的有趣的事实,以及关于美国和屏幕分辨率的相关的上下文信息。元洞察挖掘包括洞察图数据结构,其中每个节点都附连有基本洞察,并且每个边表示附连到该边的终端节点的两个基本洞察之间的连接。此外,元洞察挖掘包括用于洞察图构建的基于模板的构建算法。模板与两种洞察类型之间的有效连接有关。评分模型为洞察图的每条路径(从根到叶)生成分数。距离模型度量洞察图的两条路径之间的距离。洞察路径选择算法基于前面的评分模型和距离模型。效率为了提高洞察引擎112的效率,洞察引擎112可实现一些动作。例如,洞察引擎112可执行:●对对应于最终最高排名的洞察的洞察候选的计算动作区分优先级,以确保它们将在时间限制内被评估并将被尽早地被评估。●对对应于最终最低排名的洞察的洞察候选的计算动作进行修剪,以节省计算资源并尽早地进行修剪。当估算计算动作的优先级时,在不执行洞察的显著性值的计算的同时执行其对应的子空间的影响值的计算。基于其对应的子空间的影响,以最佳优先方式对计算动作区分优先级。修剪包括:●最小影响阈值修剪——以预设影响阈值作为最小影响,在子空间洞察具有比阈值更低的影响的情况下,该子空间洞察可被修剪;●动态排名前k项影响修剪——在影响和显著性都归一化于[0,1]区间内并使用它们的乘积被组合的情况下,洞察的最终分数将不会高于其影响。为了输出最终排名前k项的洞察,在结果队列中那些影响值低于动态排名第k项洞察的分数的洞察可被动态地修剪。●冗余洞察修剪——存在两个或多个子空间的定义不同,但对应于相同的记录组的情况。这在某些维度的值根据一些其他维度的值是确定性的情况下发生。这些被称为冗余子空间,并将各自具有作为主体的冗余子空间的不同洞察认为是冗余洞察。因此,冗余子空间被修剪以避免生成冗余洞察并节省计算资源。计算优化技术也以不同程度被实现。一些高级计算优化技术如下:●用于子空间搜索单元的最优搜索排序○子空间以自下而上的排序被评估。自下而上的排序指的是从对应于完整数据集的子空间开始枚举,并向子空间定义迭代地添加新的维度和值以枚举更高级别的子空间;○对子空间枚举添加的新维度将具有不同的排序,这可能导致不同的性能。添加具有更大基数(cardinalities)的维度导致更好的性能,因为更大的基数意味着当前子空间的更细的分解,并且基于影响的修剪可能抓住更早的机会来修剪所得到的分解子空间。●对相关度量的检测的预处理——高度相关度量导致对具有高度重叠知识的等同的子空间的多个洞察。通过在预处理阶段检测此类相关度量,用于评估此类冗余洞察的计算资源被节省。多样化为了对所得到的排名前k项洞察有更好的用户感知,洞察多样性被实现。仅基于个体洞察的分数来评估洞察质量可能会导致由排名前k项洞察推荐的高度冗余知识。因此,洞察选择机制被实现为在排名之后或与排名协同的后处理动作。这可在单个洞察分数与多样性之间产生更平衡的折衷。期望的洞察选择机制背后的概念定义了一些针对洞察组的某些潜在功能,然后提出了寻求最大潜力的最佳解决方案的有效和高效的算法。上述概念的一个示例实现被描述如下。从潜在函数开始,对于给定的洞察组gk={ii|0≤i≤k-1,k>1}以及某一成对洞察距离函数d(ii,ij),以下是适当的潜在函数。成对洞察距离函数d(ii,ij)在潜在函数中起关键作用。以下是洞察的因子:●t——洞察类型●s——子空间●c——计算●x——洞察分数(随洞察显著性和/或子空间影响单调增加)前三个因子t、s、和c为鉴别洞察而进行计算,从而有助于多样化所选洞察,同时x不进行计算但其有助于洞察排名。以下关于前三个因子的洞察距离的子模型分别被定义为d(ii,ij)的构成块。●d(ii,ij):=δ(ti,tj)(克罗内克增量,即,相等为1而不等为0)●○a是在ii和ij的子空间之间具有共享的等同的<维度:值>的过滤器的数量○b是在ii和ij的子空间之间具有共享的等同的维度而具有不同的值的过滤器的数量○ci和cj分别是在ii和ij的子空间中具有唯一<维度:值>的过滤器的数量dc(ii,ij):=δ(ci,cj)●然后,这些子模型的一些组合(诸如线性组合)被用于如下定义d(ii,ij)d(ii,ij):=αtdt(ii,ij)+αsds(ii,ij)+αcdc(ii,ij)其中at、as以及ac是线性组合的系数,并且它们的值是通过经由实验的经验调整来确定的。在一示例实现中,将洞察分数x作为参考权重1.0,三个系数分别被设置为at=2.0、as=1.8、以及ac=0.2。最后,有效和高效的算法被用于搜索针对潜在函数的最佳解决方案。优化问题的设置如下。●输入——具有每个洞察类型的所有前n个自动洞察的洞察群g,该洞察群g由现有的引擎生成,而无需此洞察多样化努力●输出——具有最大潜力e(gk)的排名前k项的自动洞察gk然而,用于真实最佳解决方案的算法因具有高复杂性而过于昂贵。因此,利用贪婪策略的轻量算法被使用。1.2.3.form:=1tok-1doa.b.4.为了贪婪地选择下一个洞察,以下是示例调整:●根据ds(ii,ij)子模型,更具体的子空间(具有更多的过滤器)往往具有比更一般的子空间(具有更少的过滤器)更大的ds。因此,从该角度来看具体的子空间将具有优势,而这是不期望的。在实践中,通过将因子去乘以分量来使具体的子空间被罚分,其中λ是此分量中涉及的最具体的子空间的过滤器数量。●除了x之外,奖励被授予以便利用预设偏好来提升洞察类型例如,时间序列数据的负相关洞察类型相对较少,但对之具有更高的兴趣。因此,对于被偏好的洞察类型,通过将因子η去乘以洞察分数x来提升对应的洞察。在一示例实现中,设η=2.0。表5提供了总结上述各种实现的示例。表5现在转到图3、4a以及和4b的流程图,用于提供从多维数据的数据集挖掘的洞察的洞察生成的方面被示出。应该理解,不一定按任何特定次序来呈现本文公开的方法的操作,并且用替换次序来执行部分或全部操作是可能的且可构想的。为了易于描述和说明,按所示次序来呈现各操作。可以添加、省略和/或同时执行操作,而不脱离所附权利要求书的范围。还应当理解,所示方法可在任何时间结束且不必完整地执行。这些方法的部分或全部操作和/或基本等效的操作可通过执行计算机存储介质上所包括的计算机可读指令来执行,如在下文中所定义的。如在说明书和权利要求书中使用的术语“计算机可读指令”及其变型,在本文是用来广泛地包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等等。计算机可读指令可以在各种系统配置上实现,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持式计算设备、基于微处理器的可编程消费电子产品、其组合等等。因此,应该理解,本文所述的逻辑操作被实现为(1)一系列计算机实现的动作或运行于计算系统上的程序模块,和/或(2)计算系统内的互连的机器逻辑电路或电路模块。该实现是取决于计算系统的性能及其他要求的选择问题。因此,本文描述的逻辑操作被不同地称为状态、操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、固件、专用数字逻辑及其任何组合来实现。如下文将结合图1更详细地描述的,例程300的操作在本文中被描述为至少部分地由诸如洞察引擎112之类的应用、组件和/或电路来实现。尽管以下图示涉及图1的组件,但是可以理解例程300的操作也可以许多其他方式来实现。例如,例程300可至少部分地由处理器108、118实现。另外,例程300的一个或多个操作可替换地或附加地至少部分地由单独工作的芯片组或与其他软件模块协同工作的芯片组来实现。适于提供指示任何设备的位置或状态的上下文数据的任何服务、电路、以及应用可在本文所描述的操作中使用。参考图3,用于标识洞察的例程300的各方面被示出。首先,在操作302,当被处理器108实现时,从源接收多维数据或由洞察引擎112访问多维数据。可从位于bi计算设备100附近(直接连接)或远离bi计算设备100(经由网络连接)的各种不同源或数据存储接收多维数据。被接收或被访问的多维数据是基于从用户计算设备102接收的用户的选择。在操作304,由洞察引擎112标识来自多维数据的数据集的子空间的洞察。该操作在图4a和4b所示的流程图中更详细地被描述。在操作306,将经标识的洞察输出给用户计算设备102。可以各种方式来执行输出洞察。示例包括在用户选择并接收被包括在多维数据中的数据集时以实时或近乎实时的方式输出洞察。结果向用户提供数据集的洞察,从而帮助用户分析呈现给该用户的多维数据。如图4a和4b所示,操作304可开始于操作402,其中数据集的不同子空间的影响值被确定。如上所述的影响值可以被认为是与可比较的子空间的聚合的比较。例如,影响值可以被认为是参照类似子空间的市场份额。接着,在操作404,基于所确定的子空间的影响值来对子空间区分优先级。操作404确定哪些子空间应该进一步被调查。由于大量的子空间可能存在于数据集中,操作404可通过区分优先级来标识具有低影响值的那些子空间。具有低影响值(低于阈值)的那些子空间可以被认为是没有展现出足够的影响以作出有价值的洞察。因此,低于特定影响阈值(即,优先级)的那些子空间可被忽略,以有利于较高优先级的子空间。在操作406,高于阈值优先级的那些子空间具有为每个子空间确定的采用属性或属性流水线形式的计算组。在一个实现中,洞察引擎112根据属性和属性流水线的预定义组来为子空间确定计算。接着,在操作408,为每个或各子空间确定有效洞察类型。洞察类型在上表4中被描述。洞察类型确定是基于相应子空间的所确定的计算的。在操作410,洞察引擎112可为每个洞察候选确定关于子空间的洞察类型和计算的显著性值。显著性值确定的实例在表4中被示出。在操作412,基于对应的显著性值和影响值来为每个洞察候选确定洞察分数。在一个实现中,显著性值与影响值的乘积产生洞察分数。使用显著性值和影响值的其他函数可被执行以用于产生分数。在操作414,根据操作406-412来为经区分优先级的子空间中的其他子空间进行影响分数的确定。在确定洞察分数之后,两条不同的操作路径可被自行执行或被组合地执行。在第一路径中,在操作420,基于所确定的洞察分数来执行子空间洞察的排名和多样化。该操作的结果可以多种不同格式中的任何格式被呈现在用户计算设备102上,参见操作422。在第二路径中,将洞察分组以形成元洞察,参见操作426。在操作428,基于被包括在元洞察中的洞察的子空间的分数来对元洞察进行排名和多样化。然后,在操作430,将元洞察输出到用户计算设备102。对于图1所示的组件,图5示出了能够执行上述用于提供在复杂故障域内用于服务计算实体的动作编排的程序组件的示例计算机架构的附加细节。图5所示的计算机架构示出了控制台、常规服务器计算机、工作站、台式计算机、膝上型计算机、平板、平板手机、网络设备、个人数字助理(pda)、电子阅读器、数字蜂窝电话或其他计算设备,并且可用于执行本文提及的任一软件组件。例如,图5所示的计算机架构可用于执行上述任一软件组件。尽管本文描述的一些组件专用于计算设备104,但可以理解这些组件和其他组件可以是远程计算机102的一部分。计算设备104包括基板502或“母板”,其是大量组件或设备可通过系统总线或其他电子通信路径所连接到的印刷电路板。在一个说明性实施例中,一个或多个中央处理单元(cpu)504与芯片组506协同操作。cpu504可以是执行计算设备104的操作所需的算术和逻辑操作的标准可编程处理器。cpu504通过从一个分立的物理状态转换到下一状态来执行操作,该转换是通过操纵在各状态之间进行区别并改变这些状态的切换元件来实现的。切换元件一般可包括维持两个二进制状态之一的电子电路,诸如触发器,以及基于一个或多个其它切换元件的状态的逻辑组合来提供输出状态的电子电路,诸如逻辑门。这些基本切换元件可被组合以创建更复杂的逻辑电路,包括寄存器、加减器、算术逻辑单元、浮点单元等等。芯片组506提供cpu504与基板502上的其余组件和器件之间的接口。芯片组506可提供对用作计算设备104中的主存储器的ram508的接口。芯片组506还可提供对诸如只读存储器(rom)510或非易失性ram(nvram)之类的用于存储有助于启动计算设备104并在各种组件和器件之间传送信息的基本例程的计算机可读存储介质的接口。rom510或nvram还可存储根据本文描述的各实施例的计算设备104的操作所必需的其他软件组件。计算设备104可以通过诸如局域网106等网络使用到远程计算设备和计算机系统的逻辑连接来在联网环境中操作。芯片组506可包括用于通过诸如千兆比特以太网适配器等网络接口控制器(nic)512提供网络连通性的功能。nic512能够通过网络106将计算设备104连接到其他计算设备。应当领会,多个nic512可存在于计算设备104中,以将该计算机连接到其它类型的网络和远程计算机系统。网络106允许计算设备104与远程服务和服务器(诸如远程计算机102)通信。另外,如上所述,远程计算机102可镜像和反映出存储在可以为本文描述的技术提供数据或处理的计算设备104和主机服务上的数据。计算设备104可连接到为该计算设备104提供非易失性存储的大容量存储设备526。大容量存储设备526可存储已经在本文更详细地描述的系统程序、应用程序、其他程序模块和数据。大容量存储设备526可以通过连接到芯片组506的存储控制器515连接到计算设备104。大容量存储设备526可包括一个或多个物理存储单元。存储控制器515可以通过串行附连scsi(sas)接口、串行高级技术附连(sata)接口、光纤通道(fc)接口或用于在计算机和物理存储单元之间物理地连接和传送数据的其它类型的接口与物理存储单元对接。还应理解,大容量存储设备526、其他存储介质和存储控制器515可包括多媒体卡(mmc)组件、emmc组件、安全数字(sd)组件、pci高速组件等。计算设备104可通过变换物理存储单元的物理状态以反映出被存储的信息来将数据存储在大容量存储设备526上。在本说明书的不同实现中,物理状态的具体变换可取决于各种因子。这些因子的示例可以包括,但不仅限于:用于实现物理存储单元的技术,大容量存储设备526被表征为主存储还是辅存储等等。例如,计算设备104可通过经由存储控制器515发出以下指令来将信息存储在大容量存储设备526:更改磁盘驱动器单元内的特定位置的磁特性、光存储单元中的特定位置的反射或折射特性,或者固态存储单元中的特定电容、晶体管或其它分立组件的电特性。在没有偏离本说明书的范围和精神的情况下,物理介质的其他变换也是可能的,前面提供的示例只是为了便于此描述。计算设备104还可通过检测物理存储单元内的一个或多个特定位置的物理状态或特性来从大容量存储设备526中读取信息。除了上述大容量存储设备526之外,计算设备104还可访问其它计算机可读介质以存储和检索信息,诸如程序模块、数据结构或其它数据。由此,尽管编排模块114、服务关系数据112、和其他模块被描绘为存储在大容量存储设备526中的数据和软件,但应理解,这些组件和/或其他模块可被至少部分地存储在计算设备104的其他计算机可读存储介质中。虽然对本文包含的计算机可读介质的描述引用了诸如固态驱动器、硬盘、或cd-rom驱动器之类的大容量存储设备,但是本领域的技术人员应该明白,计算机可读介质可以是可由计算设备104访问的任何可用计算机存储介质或通信介质。通信介质包括诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,且包含任何传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。作为示例而非限制,通信介质包括有线介质,诸如有线网络或直接线连接,以及无线介质,诸如声学、rf、红外和其它无线介质。上述的任意组合也应包括在计算机可读介质的范围之内。作为示例而非限制,计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机介质包括但不限于,ram、rom、eprom、eeprom、闪存或其他固态存储器技术;cd-rom、数字多功能盘(dvd)、hd-dvd、blu-ray或其他光学存储;磁带盒、磁带、磁盘存储或其他磁性存储设备;或能用于存储所需信息且可以由计算设备104访问的任何其他介质。为了声明的目的,短语“计算机存储介质”及其变型不包括波或信号本身和/或通信介质。大容量存储设备526可存储用于控制计算设备104的操作的操作系统527。根据一个实施例,操作系统包括来自微软公司的操作系统。根据其他实施例,操作系统可包括可以从其相应的制造商获得的unix、android、windowsphone或ios操作系统。应理解,也可利用其他操作系统。大容量存储设备526可存储由计算设备104利用的其他系统或应用程序和数据,诸如编排模块114、服务关系数据112、和/或上述任意其他软件组件和数据。大容量存储设备526可能还存储本文未具体标识的其他程序和数据。在一个实施例中,大容量存储设备526或其他计算机可读存储介质用计算机可执行指令来编码,这些计算机可执行指令在被加载到计算设备104中时将计算机从通用计算系统变换成能够实现本文描述的实施例的专用计算机。这些计算机可执行指令通过如上所述地指定cpu504如何在各状态之间转换来变换计算设备104。根据一个实施例,计算设备104具有对存储计算机可执行指令的计算机可读存储介质的访问,这些计算机可执行指令在由计算设备104执行时执行以上参考图3、4a和4b以及其他附图描述的各个例程。计算设备104可能还包括用于执行本文描述的任意其他计算机实现的操作的计算机可读存储介质。计算设备104还可包括用于接收并处理来自诸如键盘、鼠标、话筒、耳机、触摸垫、触摸屏、电子指示笔、或任何其他类型的输入设备之类的多个输入设备的输入的一个或多个输入/输出控制器516。还示出输入/输出控制器516与输入/输出设备525通信。输入/输出控制器516可向诸如计算机监视器、平板显示器、数字投影仪、打印机、绘图仪或其它类型的输出设备等显示器提供输出。输入/输出控制器516可提供与诸如话筒530、扬声器532、游戏控制器和/或音频设备等其他设备的输入通信。另外或替换地,视频输出522可以与芯片组506通信并且独立于输入/输出控制器516进行操作。可以明白,计算设备104可以不包括图5所示的全部组件,可以包括在图5中未明确示出的其它组件,或者可使用完全不同于图5所示的架构。示例条款a:一种方法,包括:在计算设备处标识多维数据的一个或多个子空间;标识所述一个或多个子空间的一个或多个属性;确定待评估的洞察候选集合,其中通过洞察类型、所标识的一个或多个属性中的一个属性、以及所述一个或多个子空间中的一个或多个子空间来确定洞察候选;从所述洞察候选集合中标识一个或多个子空间的多个洞察,其中所述标识包括确定以下:所述一个或多个子空间中的第一个子空间的所述属性与两个或更多个子空间中的一些其他子空间的所述属性相差第一阈值,或所述一个或多个子空间中的一个或多个子空间的所述属性的值形成了显著模式或关系,其中基于所述对应的洞察类型对所述显著模式或关系进行评估,并对照第二阈值对所述显著模式或关系进行评估,其中所述多个洞察包括两种或更多种不同类型的洞察;对所标识的多个洞察进行排序;以及至少基于所述排序来标识所述多个洞察的至少一部分以供呈现。b:如a所述的方法,其中所述两种或更多种不同类型的洞察被包括在以下类别的至少一个类别中:包括值的数值洞察;包括时间分量的基于时间的洞察;以及包括基于两个或更多个子空间的洞察的复合洞察。c:如a或b所述的方法,其中所述排序包括:对所述多个洞察的至少一部分进行评分;以及对所述经评分的多个洞察的至少一部分进行排名;以及其中被标识以供呈现的所述多个洞察的所述至少一部分包括所述多个洞察中排名为前预定数量名的洞察。d:如c所述的方法,其中所述评分包括:至少基于所述一个或多个子空间中的所述第一个子空间的重要性评级来确定所述多个洞察中的各单独洞察的影响值,所述重要性评级基于与所述洞察相关联的所述子空间与其他可比较的子空间的相关性,所述方法进一步包括以下的至少一个:响应于所述对应的影响值低于修剪阈值来修剪所述多个洞察中的一个或多个洞察,或基于所确定的影响值对与所述多个洞察中的所述各单独洞察相关联的进一步操作区分优先级。e:如c所述的方法,其中所述评分包括:进行以下的至少一个:至少基于所述一个或多个子空间中的所述第一个子空间的重要性评级来确定所述多个洞察中的各单独洞察的影响值,所述重要性评级基于与所述洞察相关联的所述子空间与其他可比较的子空间的相关性,或确定所述多个洞察中的所述各单独洞察的显著性值;将所述影响值或显著性值中的至少一个归一化于范围;以及至少基于所述影响值和所述显著性值来确定所述多个洞察中的所述各单独洞察的分数。f:如e所述的方法,还包括:对于所述多个洞察中前k名的各单独洞察,基于所述相关联的分数以及子空间距离模型、属性距离模型、或洞察类型距离模型中的至少一个来定义潜在函数;以及响应于最大化所标识的洞察中前k名的每个洞察的所述潜在函数,确定所述多个洞察中前k名的洞察的新排序。g:如a、b、c、d、e或f所述的方法,其中所述多个洞察中的一个或多个洞察与多于一个的子空间相关联。h:如a、b、c、d、e、f或g所述的方法,其中所述一个或多个其他子空间包括与所标识的一个或多个子空间的兄弟关系或父子关系中的至少一个。i:如a、b、c、d、e、f、g或h所述的方法,其中所述多个洞察中的一个或多个洞察包括基于所述一个或多个属性的多于一个的流水线属性。j:如a、b、c、d、e、f、g、h或i所述的方法,进一步包括:标识所述多个洞察中的两个或更多个洞察之间的连接;以及至少基于所述多个洞察中的至少两个之间的所标识的连接来形成一个或多个元洞察,所述元洞察包括多个洞察。k:一种用于提供洞察的系统,所述系统包括:一个或多个处理器;以及通信地耦合到所述一个或多个处理器的存储器,所述存储器存储在被执行时使得所述一个或多个处理器执行以下的指令:标识多维数据的一个或多个子空间;标识所述一个或多个子空间的一个或多个属性;确定待评估的洞察候选集合,其中通过洞察类型、所标识的一个或多个属性中的一个属性、以及所述一个或多个子空间中的一个或多个子空间确定洞察候选;从所述洞察候选集合中标识一个或多个子空间的多个洞察,其中所述标识包括以下确定:所述一个或多个子空间中的第一个子空间的所述属性与所述两个或更多个子空间中的一些其他子空间的所述属性相差阈值量;或所述一个或多个子空间中的一个或多个子空间的属性值形成了显著模式或关系,其中基于所述对应的洞察类型对所述显著性进行评估并且所述显著性超过所述阈值量;其中所述多个洞察包括两种或更多种不同类型的洞察;对所标识的多个洞察进行排序;以及至少基于所述排序来标识所述多个洞察的至少一部分以供呈现。l:如k所述的系统,其中所述排序包括:对所述多个洞察的至少一部分进行评分;以及对所述经评分的多个洞察的至少一部分进行排名;以及其中被标识以供呈现的所述多个洞察的所述至少一部分包括所述多个洞察中排名为前预定数量名的洞察。m:如l所述的系统,其中所述评分包括:进行以下的至少一个:至少基于所述一个或多个子空间中的所述第一个子空间的重要性评级来确定所述多个洞察中的各单独洞察的影响值,所述重要性评级基于与所述洞察相关联的所述子空间与其他可比较的子空间的相关性,或确定所述多个洞察中的所述各单独洞察的显著性值;将所述影响值或显著性值中的至少一个归一化于范围;以及至少基于所述影响值和所述显著性值来确定所述多个洞察中的所述各单独洞察的分数。n:如l所述的系统,其中所述评分包括:至少基于所述多维数据的对应数据集的重要性评级来确定所述多个洞察中的各单独洞察的影响值,所述重要性评级基于与所述洞察相关联的所述子空间与其他可比较的子空间的相关性,进一步包括以下的至少一个:响应于所述对应的影响值低于修剪阈值来修剪所述多个洞察中的一个或多个洞察,或基于所确定的影响值对与所述多个洞察中的所述各单独洞察相关联的进一步操作区分优先级。o:如k、l、m或n所述的系统,所述一个或多个处理器能进一步用于:对于所述多个洞察中前k名的各单独洞察,基于所述相关联的分数以及子空间距离模型、属性距离模型、和洞察类型距离模型中的一个来定义潜在函数;以及响应于最大化所标识的洞察中前k名的各洞察的所述潜在函数,确定所述多个洞察中前k名的洞察的新排序。基于上述内容,应理解文本提供了用于提供复杂网络中的计算实体的动作编排的技术。虽然用计算机结构特征、方法和变换动作、特定计算机器、以及计算机可读介质专用的语言描述了本文中所描述的主题,但是应当理解,所附权利要求书中所定义的本发明不必限于本文中所描述的具体特征、动作、或介质。相反,这些具体特征、动作和介质是作为实现权利要求的示例形式来公开的。以上所述的主题仅作为说明提供,并且不应被解释为限制。可对本文中所描述的主题作出各种修改和改变,而不必遵循示出和描述的示例实施例和应用且不背离所附权利要求书中所阐述的本发明的真正精神和范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1