CN107408130B - 通过间接集群连接来进行搜索的方法 - Google Patents

通过间接集群连接来进行搜索的方法 Download PDF

Info

Publication number
CN107408130B
CN107408130B CN201680014803.XA CN201680014803A CN107408130B CN 107408130 B CN107408130 B CN 107408130B CN 201680014803 A CN201680014803 A CN 201680014803A CN 107408130 B CN107408130 B CN 107408130B
Authority
CN
China
Prior art keywords
node
icc
iccs
nodes
article
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680014803.XA
Other languages
English (en)
Other versions
CN107408130A (zh
Inventor
B·S·J·科尔迈尔
P·奇拉卡玛瑞
S·孙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN107408130A publication Critical patent/CN107408130A/zh
Application granted granted Critical
Publication of CN107408130B publication Critical patent/CN107408130B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/358Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Abstract

通过将简单的几何规则的集合应用于“主题”的连接图中的连接,能够揭示原本对于外行难以得到的隐藏关系。可以从在线百科全书或不直接连接到起始主题而是通过中间文章团体连接的其它文章的图中找到有趣的、可能地非明显的内容线索,称为间接连接集群(ICC)。执行信息图的搜索的系统可以接收对识别相关内容的请求,使用与请求相关联的起始主题来(在对信息图的遍历中)识别一个或多个ICC,提炼一个或多个ICC(消除某些ICC),并产生ICC的经提炼的集合,并对经提炼的集合中的ICC进行排序。可以响应于识别相关内容的请求来提供经排序的ICC。

Description

通过间接集群连接来进行搜索的方法
背景技术
在生产力应用内创作、创建和编辑内容的同时,用户可以以空白页面文档开始,然后可以创建或创作新内容。当创作新内容时,用户很可能会发现很难开始就复杂的主题进行写作——特别是当以空白文档开始时,在没有研究和协助的情况下,可能难以产生内容。此外,用户可能希望在创作内容的同时研究主题,以包括额外的有趣并且相关的信息。在某些情况下,用户可能希望从正在创作内容的生产力应用内研究与所创建的内容的主题有关的信息。
使用文档的上下文(包括文档中的内容),可以在生产力应用内和/或通过web应用向用户建议附加的主题。然而,优化和提供相关结果可能是一个挑战;特别是在用户没有进行广泛研究(通过长期地进行研究)或者用户没有大量的先验知识以便提供足够的搜索项的情况下。因此,即使在基于文档的上下文和/或文档中使用的术语来提供所连接的文章的在线文档数据库(例如在线百科全书)的相关信息的情况下,实际结果也可能相当地限于上下文和/或术语,并且可能不提供如用户可能想要的那么广泛的一系列主题和/或如用户可能想要的那么深入的理解,除非用户他或她自己主动深入研究。
发明内容
描述了用于在信息图中搜索和存储信息的技术和系统。通过应用如本文所述的某些简单规则来分析在主题的连通图(connected graph)内的连接的几何形状,可以揭示除了一个领域中最专业的用户之外的所有人都难以得到的隐藏关系。
信息图可用于表示诸如在线百科全书等被连接的文章的资源。节点可以用于表示每篇文章,并且可以用文章的标题来标注。边(edge)可用于表示一篇文章包含指向另一篇文章的链接。信息图于是可以被用来识别间接相关的内容(例如,不直接与在信息图的搜索期间最初找到(或“命中”)的主题相连接的相关内容)。本文描述的技术和系统使用可以被可互换地称为“间接集群连接”或“间接连接集群”(简称“ICC”)的结构。ICC指的是彼此不直接连接而是仅经由连接集群间接连接的两个节点,该连接集群是符合关于其连接的指定标准的一组节点。
执行信息图的搜索的系统可以接收对识别相关内容的请求,使用与请求相关联的起始主题来识别信息图中的一个或多个ICC,提炼一个或多个ICC以消除某些ICC并且产生经提炼的ICC的集合,并对经提炼的ICC的集合中的ICC进行排序。可以响应于识别相关内容的请求来提供经排序的ICC。在某些情况下,经提炼的ICC的集合中的目标节点的内容可以被全部或部分地提供,作为关于排序的信息的替代或补充。
提供该发明内容以便以简化的形式来引入下面的具体实施方式中进一步描述的概念的选集。该发明内容不旨在识别所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。
附图说明
图1示出了可以实现某些实施例的示例环境的概念图。
图2示出了信息图数据结构的间接连接集群。
图3示出了用于识别ICC的示例过程。
图4示出了可以提供ICC服务的示例的ICC搜索系统的概念图。
图5示出了可以由ICC搜索系统执行的过程。
图6示出了从作为输出ICC生成的在线百科全书生成的信息图的子集。
图7示出了遍历从维基百科生成的信息图的ICC搜索组件的应用。
图8示出了可以在本文所述的某些实现方式中使用的计算设备的组件。
图9示出了可以用于实现本文描述的某些方法和服务的计算系统的组件。
具体实施方式
描述了用于搜索信息图的技术和系统。通过将所描述的技术应用于主题的连通图中的连接的几何形状,可以揭示主题之间的隐藏和间接的关系,并因此以较少的用户努力(和识别的搜索项)和网络资源的使用来识别潜在有用的结果。
在某些实施例中,由于在搜索过程期间检测到主题之间的关系,可以向用户提供与感兴趣的初始主题相关的一个或多个主题,以使得用户能够发现与感兴趣的初始主题相关的相关信息。通过诸如维基百科的在线百科全书提供的信息,可能由于其对与其他文章链接的文章进行组织而可能适用于描述的结构和搜索方法。因此,可以使用在线百科全书文章及其链接(或另一在线链接的文章来源)中捕获的信息,以便通过分析文章之间的连接来向寻求创作内容的用户建议感兴趣的、可能地不明显的主题。
通过将在线百科全书(例如维基百科)或其他在线信息源建模为信息图,可以找到感兴趣的、相关的和可能地不明显的内容线索。该内容可能不直接连接到发起搜索的起始主题,而是经由中间文章集群(intermediate cluster of articles)进行连接。这些种类的连接(例如,由中间文章集群导致的这些连接)可以可互换地称为“间接集群连接”或“间接连接集群”(简称“ICC”),其中ICC能够建议原本只有通过广泛的研究或先验知识才能发现的有趣的连接和故事线。在某些情况下,通过使用ICC,可以识别传统搜索系统甚至可能无法发现的主题。
ICC指的是彼此不直接连接而是仅经由节点连接集群间接连接的两个节点。连接集群是符合关于其连接的指定标准的一组节点。在一个实现方式中,连接集群是大小为N的团体(clique),其中N个节点全部彼此互连。其他实现方式可以包括连接集群标准的变种,例如其中每个节点仅连接到两个其他节点,或者连接集群中的所有节点连接到一个中央节点。
在下面的具体实施方式中,描述了实施例,并且参考附图是为了便于各种实施例的描述。附图可以提供一些具体的实施例和示例,但是也可以实现其他示例,并且可以对多个方面进行改变和/或组合而不脱离本文所述的本公开的范围。
图1示出了可以实现某些实施例的示例环境的概念图。参考图1,在示例场景中,当在至少部分地在计算设备102处执行的生产力应用100中创作内容时,用户110还可以(经由同一计算设备102的或执行生产力应用100的另一个计算设备的用户接口104)使用因特网或其他网络108进行研究。例如,用户可以通过web浏览器应用106或者在可用时通过生产力应用100主动研究主题,这是通过提交查询或术语以便搜索在线内容和文章数据库(例如,使用搜索服务112,搜索服务112可以搜索各种内容资源114和/或站点列表的索引)。在某些情况下,生产力应用100可以具有代表用户进行搜索的在线研究能力,其基于生产力应用100内的上下文(和内容)或由用户110输入的用于请求生产力应用100内的相关内容的关键术语或其他选择。
然而,应用的搜索结果可能受到用户的浅薄的知识库(以及用户已知的或由用户创作的术语或内容)的限制(在深度和/或相关性上),并且用户可能希望发现关于可能与用户感兴趣的主题相关但用户通过自己的研究可能发现不了的主题的附加的文章。例如,一些主题可能与用户感兴趣的主题间接相关,并且对于用户来说也不是显而易见地要专门地查询并且并入其研究中(即使当搜索引擎具有各种知识库以产生附加术语时)。实际上,在某些情况下,传统的搜索引擎和查询无法揭示上述主题。
根据某些实现方式,提供ICC服务120以便于识别相关结果并提高本地和/或基于云的应用的搜索能力。在一些情况下,ICC服务120可以在服务器122处(其可以包括虚拟资源和物理资源)实现。可以如关于图9的计算系统900所描述的来实现服务器122。在某些情况下,ICC服务120中的一些或全部可以在用户的计算设备(例如,设备102)处实现。用户计算设备102可以是台式计算机、膝上型计算机、平板电脑、智能电话、可穿戴设备(例如,眼镜或手表)或其他计算设备(其中任何一种可以如关于图8的计算设备800所描述的)。
生产力应用100可以包括文字处理应用、电子表格应用、演示应用或使用户能够创建、修改和在某些情况下共享内容的其他类似的应用。在一些情况下,生产力应用100可以是移动研究伙伴或包括移动研究伙伴。在生产力应用100包括用于执行对各种内容资源进行的基于上下文和/或基于内容的搜索的特征(其可以有助于用户将其包括到在生产力应用100内创作的文档中)的情况下,生产力应用100可以基于来自ICC服务120的结果而与ICC服务120通信以请求和接收内容(基于与随请求提供的用户的初始感兴趣主题相对应的信息,该内容可能是相关的,甚至是非显而易见的)。在某些情况下,生产力应用100的某些方面可以是web应用(在服务器上执行),并且可以例如经由web浏览器(诸如web浏览器106)在网络108上访问。
ICC服务120可以执行可通过应用编程接口(API)访问的各种过程。这些过程可以通过在服务器122(或其他计算设备)处执行的模块或组件执行。在一些情况下,ICC服务120可以由ICC搜索系统(诸如关于图4所描述的)来实现。ICC搜索系统可以体现为服务器122或一些其它计算设备,例如关于图8和图9所描述的。
在一些情况下,对ICC服务120的请求包括启动搜索的主题。在某些情况下,请求包含来自生产力应用100的可从中识别一个或多个主题的内容。该请求还可以包括集群属性。例如,当ICC使用大小为N的团体(size-N clique)来定义时,集群属性可以包括团体大小或者可以被搜索组件用来确定适当的团体大小的数据。当然,在某些情况下,ICC服务120的ICC搜索组件可以使用默认的团体大小。
如上面简要讨论的,在被策展和吸收(curated and ingested)的知识图表(例如在线百科全书文章及其链接(或其他在线链接的文章来源))内捕获的信息,可以被生产力应用(或其他应用)使用来向希望扩大他们的知识或创作内容的用户建议感兴趣的、可能非明显的主题。在线百科全书(例如维基百科)或其他在线信息源或内容存储库可以被建模为信息图数据结构并存储在存储资源130(其可以被实现为计算系统900或其中的虚拟组件或物理组件)处,并且信息图可以被ICC服务120访问以搜索内容。
在一些情况下,ICC服务120可以生成文章来源(诸如在线百科全书)的信息图,其中信息图的节点表示关于特定主题的文章,而边表示文章之间的链接。在题为“将维基百科建模为图”的示例中更详细地描述了生成文章来源的信息图的这个过程。
内容的相关的且可能地不明显的线索可以从信息图中被识别,其中内容的线索可能不直接连接到起始主题,而是通过文章的中间团体(或其他内容)连接,如关于图2更详细地描述的。
图2示出了信息图数据结构的间接连接集群。如上文简要论述的,具有连接内容的在线百科全书或其他在线信息资源可以被建模为信息图数据结构。作为图形数据结构的一部分,文章可以被表示为节点,而在节点之间的边指示由这些节点表示的文章(或其他内容)被连接(例如,经由可选择的链接、引用、或关系的其他指示符)。使用该图形数据结构,可以识别符合指定标准(例如,起始节点的主题,团体大小,团体定义/标准等)的ICC的集合。
在本文详细提供的实施例中,在对主题的连通图内的连接的几何形状进行分析时应用的规则包括将ICC定义为节点的集群或集合,其中起始节点仅通过节点的子集(其形成大小为N的团体)而连接到目标节点。在本实施例中,大小为N的团体的成员各自也连接到起始节点和目标节点,但是起始节点不直接连接到目标节点,并且在该团体之外没有其他节点连接到起始节点和目标节点两者。如上所述,可以应用团体变化。然而,以下规则(使用如下的团体定义:全部彼此相互连接的一组节点)可以正式地定义ICC的实施例:给定具有起始节点A201和目标节点E 202的信息图(G),如果以下标准为真,则节点A201,B 203,C 204,D 205和E 202形成大小为5的ICC:
·节点A201连接到B 203,C 204和D 205
·节点A201未连接到节点E 202
·节点B 203,C 204和D 205组成一个团体
·节点B 203,C 204和D 205都连接到E 206
·在图G中,不存在连接到A201并且也连接到E 202的另一节点X(其中X≠B 203,C204或D 205)
在此上下文中,如果X链接到Y(包括Y链接到X),则认为节点X和Y是连接的。ICC的约束是形成连接集群的团体的大小。A201和E 202之间的节点的团体形成一个连接集群210。节点A201是起始节点220,节点E 202是目标230。
随着ICC的大小增加,仍然存在一个起始节点220和一个目标230,但是ICC的连接团体(在连接集群210中)的大小增加。因此,大小为6的ICC具有连接起始节点220和目标节点230的大小为4的团体(在连接集群210中)而大小为5的ICC则具有大小为3的团体。
在根据某些实施例的系统中,给定被建模为将表示文章的节点通过边连接的信息图的在线文章数据库,其中边表示两个连接文章中的至少一个是否包含到另一个的链接,可以基于初始起始主题从信息图中识别多个ICC。例如,可以根据由生产力应用(例如,应用100)(或其他请求相关文章的应用)提供的内容中接收到的初始主题来识别(例如,通过ICC服务120)图形中的一个或多个起始节点。
在底层图形结构中,如果节点A201链接到节点B 203,则在A201和B 203之间提供边241。如上文简要论述的,在线百科全书或具有连接内容的其他在线信息资源的文章(或其他内容)可以被表示为节点,节点之间的边指示由这些节点表示的文章(或其他内容)是连接的。在一些情况下,每个节点可以以文章的标题命名,并且每个节点可以包括关于文章的附加信息的元数据,诸如文章长度、章节、图像、日期、作者信息和/或其他有用的元数据。
当边被用于指示两篇文章是连接的,因为所述文章中的至少一篇链接到另一篇(例如,经由在内容的一部分中的超文本链接,其当被选择时导航到另一篇文章),边可以指示链接的方向性(例如,哪篇文章被引用,哪篇文章进行了引用)。例如,A201和B 203之间的边241可以包含关于以下的信息:由节点A201表示的文章是否链接到由节点B 203表示的文章、由节点B 203表示的文章是否链接到由节点A201表示的文章、或者由节点A201和B 203表示的两篇文章是否彼此链接。关于链接的方向性的信息可以例如通过该边上的元数据或通过使用有向边来实现。
图3示出了用于识别ICC的示例过程。参考图3,用于识别ICC的过程300可以在接收到起始主题时开始。过程300可以由在服务器122或其他ICC搜索系统中执行的ICC搜索组件来执行。起始主题可以是可用于对信息图进行搜索的一个或多个词语(例如,关键术语)、短语、指定实体或其他文本。起始主题可以根据由用户在生产力应用中输入的内容来识别,作为请求对ICC进行搜索的服务的一部分,或者通过ICC搜索服务基于作为请求的一部分而接收到的内容来识别。使用起始主题,可以从信息图中识别至少一个起始节点,例如通过搜索起始节点的信息图(301)。
可以通过用于识别潜在相关信息的任何合适的方法来完成对起始节点的搜索,例如,如被典型的搜索引擎用来识别与搜索查询相对应的内容的方法。可以搜索该图以识别具有符合搜索条件(例如,匹配项)的标题或其他元数据的节点。起始节点的这些初始结果可以被认为是“命中”。从起始节点的“命中”起,信息图(302)可以被遍历。该图可以被遍历或“走过”以识别由起始节点、连接集群和目标节点组成的任何节点集合。
用于标识节点集合(ICC)的集群属性可以是指定的ICC标准的一部分。指定的ICC标准可以由请求(该请求是基于该请求所包含的信息确定的)来指定,作为用于识别ICC的程序指令的一部分提供,或其组合。因此,当从起始节点起遍历该图时,可以识别具有指定集群属性(如团体大小,团体成员类型和上面描述的定义的特征)的ICC以及对应的数据输出(303)。此外,在一些情况下,可以遍历具有方向性和/或权重的图形数据结构,以沿着经过一个或多个连接节点的边找到从源节点到目标节点的特定路径。
在一些情况下,在操作303,可以输出形成ICC的节点的集合。在一些情况下,可以输出由一些或所有节点表示的内容。例如,在某些情况下,例如当信息图表示在线百科全书或链接的文章时,可以输出来自ICC的目标节点的目标文章名称,并且可选地,可以将来自目标文章的一些文本和/或来自一个或多个连接器文章的一些文本作为输出而包括。可以响应于该请求而提供输出数据,或者可以在响应于该请求而提供结果之前实施进一步处理对结果进行提炼和/或排序。
在一些情况下,对于在遍历信息图期间识别的每个ICC,与目标节点相对应的目标文章名称和来自起始节点和目标节点之间的连接集群的“连接器”节点的至少一个连接器文章名称可以例如以列表形式存储(304)。其他信息,例如与图中的边相关的可用信息,也可以存储在列表中。可以与边或与边连接的节点相关联地存储的信息的示例包括但不限于:连接重叠分数(如下所述)、连接到连接集群中的每个连接器节点的边数量、以及每个连接器节点的每个边的方向。该列表的数据结构可以是可对其执行诸如排序等动作的具有关联属性的数据的集合的任何适当的结构。该列表可以包括行和列或具有某种其他组织方式。
通过ICC构造,然后可以使用信息图来识别间接相关的内容(例如,在信息图的搜索期间,不直接连接到最初找到(或“命中”)的主题的相关内容)。
图4示出了可以提供ICC服务的示例ICC搜索系统的概念图;图5示出了可以由ICC搜索系统执行的过程。
ICC搜索系统400可以包括各种组件,包括ICC识别器401、提炼器402和排序器403。ICC搜索系统400还可以包括一个或多个存储资源以存储提炼规则404和排序规则405(以及团体成员属性)。此外,ICC搜索系统400可以包括存储信息图410的外部存储资源或与存储信息图410的外部存储资源进行通信。在示例实施例中,给定由ICC识别器401识别的起始节点A,ICC识别器401的ICC组件可以返回符合搜索条件的所有ICC 411的列表。在提供(作为经排序的经提炼的ICC 417)给生产力应用(或自其发起请求的其他应用)以便以某种方式向用户呈现之前,可以对ICC 411的列表进行提炼和排序(例如,经由提炼器402和排序器403)。在某些情况下,可以提供目标节点的目标文章名称和起始节点与目标节点之间的至少一个连接器文章名称。
ICC搜索系统400可以被实现为任何合适的计算系统,并且可以通过提供通过用于ICC搜索服务的API访问的功能来支持ICC服务(例如,服务120)。ICC搜索系统400的输入(例如要搜索的主题)可以作为请求的一部分(例如,来自生产力应用或其他应用)来给出。此外,ICC搜索系统400的一些输入(例如团体大小、团体成员属性和各种规则)可以基于存储以便ICC搜索系统400(或为了提供输入的目的而可以与ICC搜索进行通信的其他系统)访问的数据,使得ICC搜索系统400可以执行其各种处理。
例如,参考图5,ICC搜索系统400可以执行包括识别与起始主题相对应的ICC的过程(501);提炼识别的ICC(502)以消除某些ICC并产生经提炼的ICC的集合;并对该经提炼的ICC的集合中的ICC进行排序(503)。步骤501可以由ICC识别器401执行,并且可以涉及执行诸如关于图3描述的过程300。
搜索系统400(或ICC识别器401的搜索组件)的输入可以是起始节点的名称(例如,起始节点标题)或足够用于标识可能是相关的起始节点的信息。例如,具有一个或多个主题412的请求可以被ICC搜索系统400接收并由ICC识别器401使用以搜索信息图410以寻找相关的起始节点。可以通过各种搜索算法来实现对起始节点的搜索,包括但不限于以某种方式对图进行遍历的搜索算法。在该请求没有指定主题而是包括内容413(例如,自然语言、用户表达、上下文和/或对来自生产力应用的创作内容的选择)的某些情况下,可以使用主题识别器414来识别提供给ICC搜索系统400以供ICC识别器401使用的主题415。
ICC识别器401可以包括逻辑或软件,逻辑或软件当被执行时指示ICC搜索系统400遍历信息图410(其可以存储在本地或远程存储资源上)以输出一个或多个与所识别的起始节点相关的ICC 411,其中通过在满足ICC的标准的信息图模型中查找节点集合来识别ICC。在示例中,输出包括一个或多个ICC 411的列表。列表中可由ICC识别器401输出的每个条目可以包括以下中的一个或多个:目标文章名称;目标和形成连接集群的节点之间的连接的性质(例如,链接重叠和方向性);与形成连接集群的节点对应的连接器/中间文章的名称;对于每个连接器/中间文章,连接集群节点和起始节点之间的连接的性质(例如,链接重叠分数和方向性);并且在某些场景中,围绕着与目标文章的连接的至少一个中间文章的文本的一部分。
在信息图410中,每个边还可以具有与其相关联的边值。边值可以被认为是可以在对ICC排序或提炼期间使用的权重。由于每个节点可以表示一篇文章,所以分配给两个节点之间的边的边值可以用于表示由相连接的节点表示的两篇文章的相似度。在某些情况下,权重(边值)可以基于项和链接频率以及项频率-逆文档频率(Tf-idf)。
在示例实施例中,为了测量相似度,使用称为“链接重叠”的度量。链接重叠是节点相似度的度量,并尝试找到两篇文章有多么地彼此相关联的定量度量。直观地,链接重叠是两篇文章有多少共同的出站(outbound)链接的分数。因此,可以将链接重叠分数作为每个边的权重添加。如将在下面进一步详细讨论的,链接重叠分数也可以用于对一个或多个输出ICC进行排序。
存在多种用于确定一对节点之间的链接重叠分数的方法。计算两个节点A和B之间的链接重叠分数LA,B的一些示例方法包括但不限于:
Figure BDA0001403091800000101
Figure BDA0001403091800000111
Figure BDA0001403091800000112
以及
LA,B=size(SA∩SB)(方法4),
其中SA是来自节点A的出站链接的集合,SB是来自节点B的出站链接的集合,size(x)找到集合x的大小,min(SA,SB)返回两个集合中较小的集合,max(SA,SB)返回两个集合中较大的集合。
作为示例计算,给定节点A链接到{B,C,D,F},节点B链接到{C,D,E,G,H},当方法1用于查找重叠时,结果如下:
Figure BDA0001403091800000113
应当理解,这些描述的度量仅是对图中的节点连接的强度进行加权和排序的一种方式。可以使用多个公式来计算链接重叠分数,但是公式(方法1-4)代表一些示例计算。在一些情况下,用于计算链接重叠分数的方法可以由标识符指示。在某些情况下,可以使用该标识符(指示要应用的链接重叠方法)作为ICC搜索组件的输入之一。
ICC搜索系统400可以执行计算本身以找到节点之间的链接重叠,或者ICC识别器401的ICC搜索组件可以遍历已经具有用链接重叠分数加权的边的信息图。在ICC搜索系统400执行计算以找到链接重叠分数本身(在提炼步骤之前,期间或之后,这取决于何时需要链接重叠分数)的某些情况下,用于计算链接重叠分数的特定方法也可以可选地被当作为ICC搜索系统400的输入。如上所述,ICC搜索系统可以采用指示在计算链接重叠分数时使用哪些已知公式的输入参数。否则,可以使用默认的一个或多个链接重叠公式。ICC搜索系统可能采取的另一个输入可以是ICC大小范围,ICC大小范围是正在寻找的ICC的大小的范围(例如,大小范围为5-6,其对应于大小为3和4的团体)。
步骤502可以由提炼器402执行。提炼器402使用一个或多个提炼规则404来消除由ICC识别器401所识别的某些ICC 411。在一些情况下,数以千计的或数以百万计的结果(例如,ICC 411)可以满足输入标准(ICC包括与提供有请求的主题相关的起始节点),并且可能有益的是缩小结果以向用户呈现他们可能会考虑的相关和感兴趣的ICC的可管理的列表。提炼器402可以执行减少从ICC识别器401输出的ICC 411的量的处理。提炼器402(或提炼模块/组件)可以考虑多个考量因素,以消除某些ICC并减少最终用于响应请求提供相关内容的ICC的量。规则可以包括但不限于:类消除(通过学习或预先分配的类),关于边的方向的规则(例如,是否有以及有多少外发(outgoing),是否有以及有多少进入(incoming)),关于文章中的实体的接近度的规则,关于每个节点的物理属性的规则,关于节点的组的物理属性的规则,包括集群大小消除的规则,包括链接重叠阈值的规则,及上述各项的组合。例如,规则可以是“如果节点的边仅具有“出站”的方向性,则不应用大小规则”。
在一些情况下,提炼器使用已知的类型和模式来识别包括最可能对用户感兴趣的目标的ICC。某些节点类型,例如具有与其他节点(例如,过度连接的节点,非常互连的节点或具有大量入站连接的“大型”节点)的多个连接的节点类型可以被考虑去除,因为假定更感兴趣的信息将从不具有大量连接的节点中找到。
提炼器402可以考虑连接节点的大小(例如,表示与其他文章的超文本链接的连接的数量)。可以考虑连接节点的大小,因为较小的节点大小或在团体(或连接集群的其他格式)内的更紧密的集群可能提供更有质量的建议。例如,节点的大小可以指示由节点文章引用的文章的数量,因此如果团体中有三个大的节点,那么它们彼此链接的可能性很高,但是如果团体中有三个小的节点,那么他们不太可能相互连接,信号可能会更强。
在一些情况下,提炼器402可以考虑ICC的连接集群中的节点的相对大小。例如,提炼器可以应用的提炼规则可能是连接集群中的至少一个节点是非常小的节点(“非常小”用于说明一个点,因为提炼规则将使用实际的数字,其可能已被经验地识别为提供有用的结果)。提炼器402可以考虑文章内的连接链接的接近度(例如,链接和/或与链接相对应的实体在文章的文本中有多接近)。接近度也可以基于观察到的用户行为来预定义或学习。还可以考虑链接重叠,其中可以基于预定义的、学习的和/或定制的链接重叠规则来消除链接重叠分数超过或低于特定值的任何节点。链接重叠分数可由提炼器402使用,例如,设置ICC的一个或多个节点必须满足或超过(或相反地,不能达到)的阈值。提炼器应用的规则(以及规则的组合)可以由用户进行预定义、学习和/或定制。
具体主题也可以被消除。例如,如果一个节点代表一个国家作为主题,则ICC可以被消除。要消除的节点的类型可以基于预定义的规则,或者可以基于对用户选择的观察而随时间学习。根据定义的接近度规则,进行连接的链接的接近度可以被认为是提供更宽泛或更紧密的连接范围。
这些和其他提炼规则404可以存储在ICC搜索系统400的存储资源中,并由提炼器402访问。可根据需要更新和调整规则。
上述提炼规则不旨在是限制性的,而是为了消除来自ICC的大输出列表的结果而由提炼模块可以考虑到的许多考量因素的示例。
在提炼ICC的输出列表以提供用于用户考虑的ICC(经提炼的ICC 416)的可管理列表之后,还可以基于多个考量因素对ICC列表进行排序。这里,操作503可以由排序器403使用排序规则405来执行,以输出经排序的经提炼的ICC 417。用于提炼结果的一些考量因素也可用于对结果进行排序。例如,一些排序考量因素可以包括,按特定的中间节点或目标节点的出现次数对ICC进行排序,按照节点类型、节点大小、链接重叠分数、方向和/或连接的接近度进行排序。如前所述,有多个公式可用于计算链接重叠分数。提炼规则和排序规则可以存储在ICC搜索系统400的相同或不同的存储资源上。
应当理解,这些描述的度量、考量因素和规则只是对图中的节点连接的强度进行提炼、加权和排序的一种方式。作为对上述考量因素的补充或替代,还可以考虑用于对ICC列表进行排序的其它考量因素,并且所描述的考量因素旨在作为一些排序方法的示例。有利地,所提供的ICC列表可以表示在原本用户可能无法发现的节点之间的有意义的连接。
显然,在一些情况下,通过使用所描述的技术和系统的某些实现方式的生产力和/或内容创作应用,用户可以更快地写入更好的内容。通过描述的间接集群连接,给定输入主题,可以建议感兴趣的、可能地不明显的主题,使用户在不是研究领域的专家的情况下也能够揭示主题之间的隐藏关系。
图6示出了从作为输出ICC生成的在线百科全书生成的信息图的示例子集。
在下面的真实世界示例中,从对维基百科建模的信息图生成ICC。假设用户表达了关于阿波罗计划(Apollo Program)进行写作的意图。不熟悉这个话题的人可能很难将内容放在上下文中,并揭示主题之间的不明显的关系。使用“阿波罗计划(Apollo Program)”作为起始主题(以及作为起始节点),如图6所示,揭示了一个团体大小=3的ICC。该图表示为G=(N,E),其中节点N={1,2,3,4,5}和边E={{1,3},{1,4},{1,5},{2,3},{2,4},{2,5},{3,4},{4,5},{5,3}},但没有{l,2}。
在图6的ICC中,阿波罗计划602是起始节点,并且三个连接器节点Arthur Rudolph604,Wernher von Braun 608和V-2 Rocket 606表示Mittelbau-Dora 610的目标节点。针对Apollo Program 602和Mittelbau Dora 610的主题的第一篇和最后一篇文章(节点1和2)代表起始节点和目标节点,以及针对Arthur Rudolph 604、Wernher von Braun 608和V-2 Rocket 606的主题的三篇中间文章(节点3,4和5)表示连接器节点或连接集群612的节点。
这个示例说明了揭示阿波罗计划和Mittelbau Dora之间的关系的能力,Mittelbau Dora是在纳粹德国的可怕的环境下生产火箭的集中营。特别是,连接集群612可以呈现从阿波罗计划引起的感兴趣的故事线索:Arthur Rudolph和Wernher von Braun是领头的科学家,他们首先在纳粹德国V-2火箭上着手工作,并最终将他们的专业知识运用到美国空间计划。目标Mittelbau-Dora是囚犯在V-2火箭上工作的集中营。总而言之,这形成了美国空间计划如何与在集中营中的活动有关的叙述,这对于用户而言在开始有兴趣关于阿波罗计划进行写作时可能不是明显的连接。
下面的表2示出了使用ICC搜索组件的实现,以“Apollo Program”作为起始节点,对于上述“Mittelbau-Dora”示例输出的ICC表的示例条目:
表2:输出ICC Apollo-MD
Figure BDA0001403091800000151
表2的ICC是来自起始节点“阿波罗计划”的一个输出ICC条目的示例。示例的完整的ICC输出列表可以包括每个ICC的一行,“阿波罗计划”作为起始节点。每个条目可以包括,在起始节点与每个连接器节点之间的以及在目标节点和每个连接器节点之间的每个边的链接重叠分数和方向性。此外,可以应用如上所述的提炼和排序来向用户或客户端应用呈现最相关和感兴趣的不明显的ICC,并且根据如前所述的预定义或定制规则以经排序的顺序呈现它们。
在一些实施例中,输出列表可以提供更详细的信息,例如每个中间连接器文章的文章名称和目标文章的文章名称。此外,可以提供来自至少一个中间文章的文本的一部分,其中文本的部分是围绕将中间文章连接到起始节点或目标节点之一的超链接的文本的一部分,以说明文章是如何连接的。例如,起始节点文章中的一句话可能是“该中心的设计、开发和建造由Kern H.Debus,Wernher von Braun博士的原始的V-2火箭工程团队的成员来进行”。上一句中的斜体字表示将起始节点文章连接到两个中间连接器文章的超链接。可以提供该句子来向用户演示该连接。
图7示出了遍历从在线百科全书生成的信息图的ICC搜索组件的示例应用。在线百科全书的信息图中可以存在代表主题之间非明显关系(ICC)的候选者的交叉连接700的多种模式。阿波罗计划701可以链接到具有包括“Direct Ascent”702,“Georg VonTiesenhausen”703,“Hans Fischer”704和“Wernher Von Braun”705“的主题的众多文章。连接700的多个模式可以由ICC搜索组件遍历来识别满足预定义输入标准的一个或多个ICC,例如具有3的团体大小。在该示例中,可以看出,遍历包括从节点“Apollo Program”701到节点“Wernher Von Braun”705的行进以及从节点“Werner Von Braun”705到达可能的目标节点的各种节点(和交叉连接的模式)。这里,节点“Mittelbau Dora”706满足目标节点的标准(尽管图中未标识连接集群)。
将维基百科建模为图形
以下描述维基百科和其他在线百科全书(或链接的文章)如何被建模为包含ICC的图形。
文章作为节点:维基百科图中的节点表示维基百科文章。每个节点以维基百科文章的标题命名。数据模型也可以是可扩展的,使得节点可以具有其他文章元数据(例如,文章长度,章节等)。
在示例的维基百科图模型中,就其本身而言没有意义但仅作为其他文章列表的文章未添加到图中。这种性质的文章可能包括但不限于:类别页面(例如http://en.wikipedia.org/wiki/Category:History_of_Spain);类别文章“列表”或“列表的列表”(例如http://en.wikipedia.org/wiki/List_of_multiple_Olympic_gold_medalists);时间表或特定主题的索引(例如http://en.wikipedia.org/wiki/1967_in_aviation,http://en.wikipedia.org/wiki/Index_of_philosophy);和专门针对日期的文章(例如http://en.wikipedia.org/wiki/January_31)。
链接作为加权边:维基百科图中的边表示从一个维基百科文章到另一个维基百科文章的链接。如果节点A链接到节点B,则提供在A和B之间的边。边还跟踪链接的方向性。例如,A和B之间的边包含有关A链接到B、B链接到A、或A和B彼此链接的信息。链接的方向性可以例如通过边上的元数据或通过使用有向边来实现。
在一些情况下,在线百科全书被初始建模为图形的期间,将相似性分数添加作为每个边的权重。也就是说,边的权重代表两篇文章的相似度。在一个实现方式中,定量相似性度量可以是指示两篇文章具有多少个共同的出站链接的分数。
作为对结构化内容的检索的一部分,可以以如下方式遍历维基百科图:可以基于经过指示“相似”文章的边的路径、在主题和/或识别的实体以及其他主题和/或实体之间的感兴趣的连接来建议。
图8示出了可以在本文所述的某些实现方式中使用的计算设备的组件。参考图8,系统800可以表示计算设备,例如但不限于个人计算机、阅读器、移动设备、个人数字助理、可穿戴式计算机、智能电话、平板电脑、膝上型计算机(笔记本或上网本)、游戏设备或控制台、娱乐设备、混合型计算机、台式计算机或智能电视。因此,可以并入关于系统800描述的更多或更少的元件来实现特定的计算设备。
系统800包括一个或多个处理器的处理系统805,以根据存储在存储系统815上的软件810的指令来变换或操纵数据。处理系统805的处理器的示例包括通用中央处理单元、应用特定处理器和逻辑设备,以及任何其它类型的处理设备、组合或其变体。处理系统805可以是片上系统(SoC)或者包括在片上系统(SoC)中,以及一个或多个其他组件,例如网络连接组件、传感器、视频显示组件。
存储系统815可以包括可由处理系统805读取并能够存储包括生产力应用820和可选ICC服务组件825的软件810的任何计算机可读存储介质。
存储系统815可以包括用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。存储系统815的存储介质的示例包括随机存取存储器、只读存储器、磁盘,光盘、CD、DVD、闪速存储器、磁带盒、磁带、磁盘存储器或其他磁存储设备,或任何其它合适的存储介质。在任何情况下存储介质(或介质)都不是传播信号或载波。
存储系统815可以被实现为单个存储设备,但也可以跨彼此共同定位或分布的多个存储设备或子系统来实现。存储系统815可以包括能够与处理系统805通信的附加元件,例如控制器。
软件810可以包括操作系统(未示出)。设备操作系统通常控制和协调计算设备中各种组件的功能,为应用与较低层的接口(诸如网络接口)的连接提供了一种更简单的方法。操作系统的非限制性示例包括来自微软公司的
Figure BDA0001403091800000181
苹果公司的
Figure BDA0001403091800000182
iOSTM,谷歌公司的
Figure BDA0001403091800000183
OS,以及Canonical的Ubuntu类别的Linux操作系统。应当注意,操作系统可以在计算设备上本地地实现以及在运行于本地设备操作系统(OS)之上的软件虚拟化层上实现。虽然图8中未示出,虚拟化OS层可以被认为是操作系统空间中的额外的嵌套分类,每个分类包含操作系统、应用程序和API。
软件810还可以包括诸如可以与ICC服务以及在某些情况下与ICC服务825的部件或全部组件(例如关于图4的组件401、402和403(连同执行过程300和500的指令一起)和图1的服务120所描述的)通信的生产力应用820的应用程序。生产力应用820可以被配置为向远程(例如,经由因特网)的ICC服务或本地ICC服务(例如,ICC服务825)提供请求并且从ICC服务接收已执行的请求的结果。
软件810可以用程序指令实现,并且除了其他功能之外,当通常由系统800或特别地由处理系统805执行时,引导系统800或处理系统805的一个或多个处理器如本文所述进行操作。
系统还可以包括用户接口系统830,用户接口系统830可以包括能够使用户和系统800之间进行通信的输入/输出(I/O)设备和组件。用户接口系统830可以包括诸如鼠标831、轨迹板(未示出)、键盘832、用于从用户接收触摸手势的触摸设备833、用于检测用户的非触摸手势和其他运动的运动输入设备834,用于检测语音的麦克风(未示出)之类的输入设备以及能够接收用户输入的其他类型的输入设备及其相关联的处理元件。
用户接口系统830还可以包括诸如显示屏幕835、扬声器(未示出)、用于触觉反馈的触觉设备(未示出)和其它类型的输出设备的输出设备。在某些情况下,输入设备和输出设备可以组合在单个设备中,例如触摸屏显示器,其既描绘图像又从用户接收触摸手势输入。
视觉输出可以多种方式显示在显示器835上,呈现图形用户接口元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘或能够以视觉形式描绘的任何其他类型的信息。
用户接口系统830还可以包括由OS执行以支持各种用户输入和输出设备的用户接口软件和相关联的软件(例如,用于图形芯片和输入设备)。相关的软件帮助OS使用定义的机制将用户接口硬件事件传达给应用程序。包括用户接口软件的用户接口系统830可以支持图形用户接口、自然用户接口或任何其他类型的用户接口。例如,可以通过用户接口系统830呈现与本文描述的ICC服务通信的生产力应用820的接口。
通信接口840可以包括允许通过一个或多个通信网络(未示出)与其他计算系统通信的通信连接和设备。合力地允许系统间通信的连接和设备的示例可以包括网络接口卡、天线、功率放大器、RF电路、收发器和其他通信电路。连接和设备可以通过通信介质(例如金属、玻璃、空气或任何其它合适的通信介质)进行通信,以与其他计算系统或系统网络交换通信。去向和来自通信接口的传输由OS控制,在必要时通知应用通信事件。
计算系统800通常旨在表示计算系统,通过该计算系统部署和执行软件以实现如本文所述的生产力工具的应用、组件或服务。在某些情况下,计算系统800的各个方面也可以表示可以在其上对软件分段以及从中可以将软件分发,传输,下载或以其它方式提供给另一个计算系统用于部署和执行或者还有其他分发的计算系统。
图9示出了可以用于实现本文所述的某些方法和服务的计算系统的组件。参考图9,系统900可以在单个计算设备内实现,或者分布于在执行程序指令时协作的多个计算设备或者子系统内。系统900可以包括一个或多个刀片服务器设备、独立服务器设备、个人计算机、路由器、集线器、交换机、桥接器、防火墙设备、入侵检测设备、大型计算机、网络连接的存储设备和其他类型的计算设备。系统硬件可以根据任何合适的计算机体系结构进行配置,如对称多处理(SMP)体系结构或非均匀存储器访问(NUMA)体系结构。
系统900可以包括处理系统910,其可以包括从存储系统930检索和执行软件920的一个或多个处理器和/或其他电路。处理系统910可以在单个处理设备内实现,但也可以分布在执行程序指令时协作的多个处理设备或子系统之间。
存储系统930可以包括由处理系统910可读并且能够存储软件920的任何计算机可读存储介质。存储系统930可以被实现为单个存储设备,但是也可以跨共同定位或相对于彼此分布的多个存储设备或子系统来实现。存储系统930可以包括能够与处理系统910进行通信的附加元件,例如控制器。存储系统930还可以包括其上存储诸如实体相关信息的数据的存储设备和/或子系统。
软件920可以在程序指令中实现,并且在其他功能中,当通常由系统900或特别地处理系统910执行时,可引导系统900或处理系统910操作如本文所述的ICC服务945,包括关于图1、图3、图4和图5描述的组件和过程。
系统900可以表示任何计算系统,在该计算系统上,包括ICC服务945的软件920可以被分段,并且软件920可以从中被分发、传输、下载或以其它方式提供给另一个计算系统用于部署和执行,或另外的分发。
在系统900包括多个计算设备的实施例中,服务器可以包括促进计算设备之间的通信的一个或多个通信网络。例如,一个或多个通信网络可以包括促进计算设备之间的通信的局域网或广域网。可以在计算设备之间包括一个或多个直接通信链路。此外,在某些情况下,计算设备可以安装在地理分布的位置。在其他情况下,多个计算设备可以安装在单个地理位置,例如服务器农场(server farm)或办公室。
可以包括通信接口950,提供允许通过通信网络或网络集合(未示出)或通过空中在系统900与其他计算系统(未示出)之间进行通信的通信连接和设备。
可以在由一个或多个计算设备执行的计算机可执行指令(例如程序模块)的一般上下文中描述本文中针对通过间接集群连接来搜索和存储信息而阐述的某些技术。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件和数据结构。
可替代地或另外,本文描述的功能、方法和过程可以至少部分地由一个或多个硬件模块(或逻辑组件)来实现。例如,硬件模块可以包括但不限于专用集成电路(ASIC)芯片、现场可编程门阵列(FPGA)、SoC系统、复杂可编程逻辑器件(CPLD)以及其他已知的或以后开发的可编程逻辑器件。当硬件模块被激活时,硬件模块执行硬件模块中包含的功能、方法和过程。
实施例可以被实现为计算机过程、计算系统,或实现为制品,诸如计算机程序产品或计算机可读介质。本文描述的某些方法和过程可以被实现为可存储在一个或多个存储介质上的软件、代码和/或数据。本发明的某些实施例考虑了计算机系统形式的机器的使用,其中指令的集合在被执行时可使系统执行上述任何一种或多种方法。某些计算机程序产品可以是计算机系统可读取并且编码用于执行计算机过程的指令的计算机程序的一个或多个计算机可读存储介质。
计算机可读介质可以是可由计算机系统访问的任何可用的计算机可读存储介质或通信介质。通信介质包括以下介质:通过该介质将包含例如计算机可读指令、数据结构、程序模块或其他数据的通信信号从一个系统传送到另一个系统。通信介质可以包括诸如电缆和电线(例如,光纤,同轴电缆等)的导向传输介质以及可以传播能量波的无线(非导向传输)介质,诸如声学、电磁、RF、微波和红外线。尽管关于通信介质进行了描述,但载波和可能包含计算机系统可用的数据的其它传播信号不被认为是计算机可读的“存储介质”。
作为示例而非限制,计算机可读存储介质可以包括以存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质的示例包括诸如随机存取存储器(RAM,DRAM,SRAM)之类的易失性存储器;非易失性存储器,例如闪速存储器,各种只读存储器(ROM,PROM,EPROM,EEPROM),相变存储器,磁和铁磁/铁电存储器(MRAM,FeRAM)以及磁和光存储设备(硬盘,磁带,CD,DVD)。如本文所使用的,在任何情况下术语“存储介质”不包括载波或传播信号。应当理解,存储介质和通信介质是指不同的介质。
本发明的某些方面提供以下非限制性的实施例:
示例1.一种搜索方法,包括:接收起始主题;基于起始主题识别信息图中的至少一个起始节点;从通过起始主题识别的起始节点遍历信息图,以利用指定的ICC标准的集合来识别间接连接集群(ICC),其中ICC包括起始节点、不直接连接到起始节点的目标节点和将起始节点间接连接到目标节点的连接器节点的连接集群;以及从至少一个所识别的ICC的目标节点输出目标文章名称。
示例2.根据示例1的方法,还包括:对于在遍历信息图期间识别的每个ICC,将与目标节点对应的目标文章名称和来自连接集群的至少一个连接器文章名称存储在列表中。
示例3.根据示例2的方法,还包括:存储以下中的至少一个作为列表中的条目:链接重叠分数、连接到连接集群中的每个连接器节点的边的数目以及每个连接器节点的每个边的方向。
示例4.根据示例1-3中任一项所述的方法,其中接收所述起始主题包括:接收用户在生产力应用中输入的内容;以及从所述内容中识别所述起始主题。
示例5.根据示例1-4中任一项所述的方法,还包括:当遍历所述信息图时,确定节点对之间的链接重叠分数。
示例6.示例5的方法,其中确定节点对之间的链接重叠分数包括:通过使用以下计算两个节点A和B之间的链接重叠分数LA,B
Figure BDA0001403091800000221
Figure BDA0001403091800000222
Figure BDA0001403091800000223
LA,B=size(SA∩SB),
其中SA是来自节点A的出站链接的集合,SB是来自节点B的出站链接的集合,size(x)求得集合x的大小,min(SA,SB)返回两个集合中较小的集合,max(SA,SB)返回两个集合中较大的集合。
示例7.根据示例1-6中任一项所述的方法,还包括:创建所述信息图,其中创建所述信息图包括:将文章表示为至少以标题标识的节点;将从一篇文章到另一篇文章的链接表示为边,边指示链接的方向性;并且向所述边分配权重,所述权重表示链接重叠并且具有对应于链接重叠分数的值。
示例8.根据示例1-7中任一项所述的方法,还包括:使用所述目标文章名称从所述连接集群的连接器节点输出来自至少一个连接器文章的文本的一部分,其中,文本的一部分是围绕链接的文本的一部分,所述链接将由连接器节点表示的连接器文章连接到:由起始节点表示的起始文章、由目标节点表示的目标文章、或两者。
示例9.根据示例1-8中任一示例所述的方法,还包括:提炼在遍历信息图期间识别的ICC,以生成从其输出目标文章名称的ICC的精简的集合。
示例10.根据示例9的方法,其中提炼在遍历信息图期间识别的ICC包括:基于提炼考量的集合,消除在遍历信息图期间识别的ICC,其中,该组提炼考量包括以下中的一个或多个:ICC的一个或多个节点的多个连接;ICC的特定一个或多个节点的一个或多个连接的方向;在去向或来自节点的特定方向上的连接的数量;一个或多个节点的相对大小;由ICC的节点表示的文章中的实体的接近度,其中实体对应于在由ICC的节点表示的文章中具有链接的并且由连接器节点表示的标题或主题;以及链接重叠分数阈值。
示例11.根据示例10的方法,还包括:对所述精简的ICC的集合中的ICC进行排序并提供排名(ranking)。
示例12.根据示例11的方法,其中根据以下至少之一进行ICC的排序:链接重叠分数,节点大小,文章内的实体的接近度以及目标节点的出现次数。
示例13.根据示例1-12中任一项所述的方法,其中所述指定的ICC标准的集合包括至少一个团体属性,例如团体大小。
示例14.根据示例13的方法,其中连接集群中的每个节点连接到起始节点和目标节点两者,团体大小表示连接集群中的总节点数,并且在连接集群外部没有也连接到起始节点和目标节点两者的其他节点。
示例15.根据示例13或14的方法,其中连接集群的每个节点彼此连接。
示例16.一种用于向用户建议间接相关主题的系统,所述系统包括:处理器;一个或多个计算机可读存储介质;以及存储在所述一个或多个计算机可读存储介质上的用于执行搜索方法的程序指令,程序指令在由处理系统执行时引导所述处理系统:基于起始主题识别信息图中的至少一个起始节点;从通过起始主题识别的起始节点起遍历信息图,以使用指定的ICC标准的集合来识别间接连接集群(ICC),其中ICC包括起始节点、不直接连接到起始节点的目标节点以及将起始节点间接连接到目标节点的节点的连接集群;并且从至少一个所识别的ICC的目标节点输出目标文章名称。
示例17.根据示例16的系统,其中对于在处理系统正在执行遍历信息图的指令时识别的每个ICC,指令引导处理系统将对应于目标节点的目标文章名称和来自连接集群的至少一个连接器文章名称存储在列表中。
示例18.根据示例16或17的系统,还包括用于执行搜索方法的指令的应用编程接口,指令引导处理系统响应于接收到起始主题而执行搜索方法。
示例19.根据示例16-18中任一项所述的系统,其中所述指令进一步引导所述系统:使用所述目标文章名称从所述连接集群的连接器节点输出来自至少一个连接器文章的文本的一部分,其中所述文本的一部分是围绕链接的文本的一部分,所述链接将由所述连接器节点表示的连接器文章连接到由所述起始节点表示的起始文章或由所述目标节点表示的目标文章之一或两者。
示例20.根据示例16-19中任一项所述的系统,其中所述指定的ICC标准的集合包括至少一个团体属性,例如团体大小。
示例21.根据示例20的系统,其中连接集群中的每个节点连接到起始节点和目标节点,团体大小表示连接集群中的总节点数,并且在连接集群之外没有其他节点也连接到起始节点和目标节点两者。
示例22.根据示例20或21的系统,其中连接集群的每个节点彼此连接。
示例23.根据示例20或21的系统,其中连接集群由仅连接到另外两个节点的节点组成,或者连接集群由连接到一个中央节点的节点组成。
示例24.一个或多个具有存储在其上的指令的计算机可读存储介质,所述指令当由处理系统执行时,引导处理系统:响应于接收到对在线百科全书或链接的文章的相关内容的请求,针对不与从请求识别的起始主题直接连接的相关内容对代表在线百科全书或链接的文章的信息图进行搜索,其中,对信息图进行搜索的指令引导处理系统:识别和与所述请求关联的起始主题对应的间接连接集群(ICC),其中ICC包括起始节点、不直接连接到起始节点的目标节点,以及将起始节点间接地连接到目标节点的连接器节点的连接集群;提炼所识别的ICC以消除某些ICC并产生经提炼的ICC的集合;并对该经提炼的ICC的集合中的ICC进行排序。
示例25.根据示例24的介质,其中用于提炼识别的ICC以消除某些ICC并产生经提炼的ICC的集合的指令引导处理系统:基于提炼考量的集合从ICC中消除ICC,其中所述提炼考量的集合包括以下中的一个或多个:用于ICC的一个或多个节点的连接的数量;ICC的特定一个或多个节点的一个或多个连接的方向;在去向或来自节点的特定方向上的连接的数量;一个或多个节点的相对大小;由ICC的节点表示的文章中的实体的接近度,其中实体对应于在由ICC的节点表示的文章中具有链接的并且由连接器节点表示的标题或主题;以及链接重叠分数阈值。
示例26.根据示例24或25的介质,其中对经提炼的ICC的集合中的ICC进行排序的指令引导处理系统:基于以下至少一个来对经提炼的ICC的集合中的ICC进行排序:链接重叠分数,节点大小,文章中实体的接近度以及目标节点的出现次数。
示例27.根据示例24-26中任一项所述的介质,还包括引导处理系统进行以下操作的指令:输出包括与排序的ICC的目标节点相对应的目标文章名称的列表。
示例28.根据示例16-19中的任一项所述的介质,其中所述指定的ICC标准的集合包括至少一个团体属性,例如团体大小。
示例29.根据示例20的介质,其中连接集群中的每个节点连接起始节点和目标节点,团体大小表示连接集群中的总节点数,并且在连接集群之外没有也连接到起始节点和目标节点两者的其他节点。
示例30.根据示例20或21的介质,其中连接集群的每个节点彼此连接。
示例31.根据示例20或21的介质,其中连接集群由仅连接到另外两个节点的节点组成,或者连接集群由连接到一个中央节点的节点组成。
示例32.一种创建信息图的方法,包括:将文章表示为至少以标题标识的节点;将从一篇文章到另一篇文章的链接表示为边,边指示链接的方向性;并且向所述边分配权重,所述权重表示链接重叠并且具有对应于链接重叠分数的值。
示例33.根据示例32的方法,还包括通过使用从以下之一中选择的公式计算两个节点A和B之间的链接重叠分数LA,B
Figure BDA0001403091800000261
Figure BDA0001403091800000262
Figure BDA0001403091800000263
LA,B=size(SA∩SB),
其中SA是来自节点A的出站链接的集合,SB是来自节点B的出站链接的集合,size(x)求得集合x的大小,min(SA,SB)返回两个集合中较小的集合,max(SA,SB)返回两个集合中较大的集合。
示例34.根据示例32或33的方法,其中链接重叠分数表示文章的集合具有多少个共同的出站链接的分数。
示例35.根据示例32-34中任一项所述的方法,其中从一篇文章到另一篇文章的链接是超链接。
示例36.根据示例32-35中任一项所述的方法,还包括:将元数据与每个节点包括在一起,其中所述元数据包括以下中的至少一个或多个:文章长度,章节数,与文章相关联的日期信息,作者,文章中每个章节的标题和图像信息。
实例37.一种或多种具有存储在其上的指令的计算机可读存储介质,当指令由处理系统执行时,引导处理系统:响应于在计算设备处经由用户接口接收到相关内容的命令,所述请求包括主题,向ICC服务传送针对至少一篇目标文章的请求和对应的一个或多个连接主题;接收所述至少一篇目标文章和对应的一个或多个连接主题;以及从所述至少一篇目标文章和相应的一个或多个连接主题返回内容用于显示。
应当理解,本文描述的示例和实施例仅用于说明目的,并且本领域技术人员可以据此轻易地进行各种修改或改变,并且各种修改或改变被包括在本申请的精神和范围内。
尽管主题已经以特定于结构特征和/或动作的语言进行了描述,但是应当理解,所附权利要求中限定的主题不一定限于上述具体特征或动作。相反,上述具体特征和动作被公开为实现权利要求的示例,并且其他等同特征和动作旨在包含于权利要求的范围内。

Claims (15)

1.一种用于向用户建议间接相关主题的系统,所述系统包括:
处理器;
一个或多个计算机可读存储介质;以及
存储在所述一个或多个计算机可读存储介质上的用于执行搜索方法的程序指令,所述程序指令当由处理系统执行时,引导所述处理系统:
基于起始主题识别信息图中的至少一个起始节点;
通过以下操作基于由所述起始主题识别的起始节点来确定至少一个目标节点:遍历所述信息图,以识别满足针对间接连接集群ICC的ICC标准集合的所有节点群组,其中所述ICC标准集合包括以下标准:标准为所述ICC包括所述起始节点、每一个节点都是相距所述起始节点单跳的两个或更多连接器节点、相距所述两个或更多连接器节点中的每一个节点单跳且相距所述起始节点两跳的目标节点;以及标准为所述起始节点和所述目标节点不是单跳连接的;以及在遍历所述信息图时确定在节点对之间的链接重叠分数;
从在节点群组中识别的满足所述ICC标准集合的相应目标节点识别目标文章名称;以及
从至少一个所识别的ICC的目标节点输出所述目标文章名称。
2.根据权利要求1所述的系统,其中,对于在所述处理系统正在执行遍历所述信息图的指令时识别的每个ICC,所述指令引导所述处理系统将与所述目标节点对应的目标文章名称和来自所述连接集群的至少一个连接器文章名称存储在列表中。
3.根据权利要求1所述的系统,还包括应用编程接口以便所述指令执行搜索方法,所述指令引导所述处理系统响应于接收到所述起始主题而执行所述搜索方法。
4.根据权利要求1所述的系统,其中所述指令进一步引导所述系统:
使用所述目标文章名称从所述连接集群的连接器节点输出来自至少一个连接器文章的文本的一部分,其中所述文本的一部分是围绕链接的文本的一部分,所述链接将由所述连接器节点表示的连接器文章连接到由所述起始节点所表示的起始文章或由所述目标节点表示的所述目标文章之一或两者。
5.一个或多个计算机可读存储介质,具有存储在其上的指令,所述指令当由处理系统执行时引导所述处理系统:
响应于接收到对在线百科全书或链接的文章的相关内容的请求,针对不与从所述请求识别的起始主题直接连接的相关内容对表示所述在线百科全书或链接的文章的信息图进行搜索,其中对所述信息图进行搜索的指令引导所述处理系统:
遍历所述信息图,以识别满足对应于与所述请求相关联的起始主题的间接连接集群ICC标准集合的所有节点群组,其中所述ICC标准集合包括以下标准:标准为所述ICC包括起始节点、每一个节点都是相距所述起始节点单跳的两个或更多连接器节点、相距所述两个或更多连接器节点中的每一个单跳且相距所述起始节点两跳的目标节点;以及标准为所述起始节点和所述目标节点不是单跳连接的;以及在遍历所述信息图时确定在节点对之间的链接重叠分数;
提炼所识别的ICC以消除某些ICC并产生经提炼的ICC的集合;以及
在所述经提炼的ICC的集合中对ICC进行排序。
6.根据权利要求5所述的介质,其中,用于提炼所识别的ICC以消除某些ICC并产生经提炼的ICC的集合的指令引导所述处理系统:
基于提炼考量的集合从所述ICC中消除ICC,其中所述提炼考量的集合包括以下中的一个或多个:
用于所述ICC的一个或多个节点的连接的数量;
所述ICC的特定一个或多个节点的一个或多个连接的方向;
在去向或来自节点的特定方向上的连接的数量;
一个或多个节点的相对大小;
由所述ICC的节点表示的文章中的实体的接近度,其中所述实体对应于在由所述ICC的节点表示的文章中具有链接的并且由所述连接器节点表示的标题或主题;以及
链接重叠分数阈值。
7.根据权利要求5所述的介质,其中,对所述经提炼的ICC的集合中的ICC进行排序的指令引导所述处理系统:
基于以下中的至少一个对所述经提炼的ICC的集合中的ICC进行排序:链接重叠分数、节点大小、文章内的实体的接近度以及所述目标节点的出现次数。
8.一种计算机实现的搜索方法,包括:
接收起始主题;
基于所述起始主题识别信息图中的至少一个起始节点;
通过以下操作基于由所述起始主题识别的至少一个起始节点来确定至少一个目标节点:遍历所述信息图,以识别满足针对间接连接集群ICC的ICC标准集合的所有节点群组,其中所述ICC标准集合包括以下标准:标准为所述ICC包括所述起始节点、每一个节点都是相距所述起始节点单跳的两个或更多连接器节点、相距所述两个或更多连接器节点中的每一个单跳且相距所述起始节点两跳的目标节点;以及标准为所述起始节点和所述目标节点不是单跳连接的;以及在遍历所述信息图时确定在节点对之间的链接重叠分数;
从在节点群组中识别的满足所述ICC标准集合的相应目标节点识别目标文章名称;以及
从至少一个所识别的ICC的目标节点输出所述目标文章名称。
9.根据权利要求8所述的方法,其中所述ICC标准集合包括团体大小,其中所述连接集群中的每个节点连接到所述起始节点和所述目标节点两者,所述团体大小表示所述连接集群中的节点的总数,并且在所述连接集群之外没有也连接到所述起始节点和所述目标节点两者的其他节点。
10.根据权利要求8所述的方法,还包括创建所述信息图,其中创建所述信息图包括:
将文章表示为至少以标题标识的节点;
将从一篇文章到另一篇文章的链接表示为边,所述边指示所述链接的方向性;以及
向所述边分配权重,所述权重表示链接重叠并且具有对应于链接重叠分数的值。
11.根据权利要求8所述的方法,还包括:
使用所述目标文章名称从所述连接集群的连接器节点输出来自至少一个连接器文章的文本的一部分,其中所述文本的一部分是围绕链接的文本的一部分,所述链接将由所述连接器节点表示的连接器文章连接到:由所述起始节点表示的起始文章、由所述目标节点表示的目标文章、或两者。
12.根据权利要求8所述的方法,还包括:
提炼在所述信息图的遍历期间识别的ICC,以生成精简的ICC的集合,所述目标文章名称是从该精简的ICC的集合输出的。
13.根据权利要求12所述的方法,其中,提炼在所述信息图的遍历期间所识别的ICC包括:
基于提炼考量的集合来消除在所述信息图的遍历期间识别的ICC,其中所述提炼考量的集合包括以下中的一个或多个:
用于所述ICC的一个或多个节点的连接的数量;
所述ICC的特定一个或多个节点的一个或多个连接的方向;
在去向或来自节点的特定方向上的连接的数量;
一个或多个节点的相对大小;
由所述ICC的节点表示的文章中的实体的接近度,其中所述实体对应于在由所述ICC的节点表示的文章中具有链接的并且由所述连接器节点表示的标题或主题;以及
链接重叠分数阈值。
14.根据权利要求13所述的方法,还包括:
将所述精简的ICC的集合中的ICC进行排序并提供排名。
15.根据权利要求14所述的方法,其中,根据以下中的至少一项来执行所述ICC的排序:链接重叠分数、节点大小、所述文章内的实体的接近度以及所述目标节点的出现次数。
CN201680014803.XA 2015-03-10 2016-03-09 通过间接集群连接来进行搜索的方法 Active CN107408130B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562131097P 2015-03-10 2015-03-10
US62/131,097 2015-03-10
US14/977,281 US10467254B2 (en) 2015-03-10 2015-12-21 Methods of searching through indirect cluster connections
US14/977,281 2015-12-21
PCT/US2016/021414 WO2016144986A1 (en) 2015-03-10 2016-03-09 Methods of searching through indirect cluster connections

Publications (2)

Publication Number Publication Date
CN107408130A CN107408130A (zh) 2017-11-28
CN107408130B true CN107408130B (zh) 2021-03-02

Family

ID=55538657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680014803.XA Active CN107408130B (zh) 2015-03-10 2016-03-09 通过间接集群连接来进行搜索的方法

Country Status (3)

Country Link
US (1) US10467254B2 (zh)
CN (1) CN107408130B (zh)
WO (1) WO2016144986A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10558679B2 (en) * 2016-02-10 2020-02-11 Fuji Xerox Co., Ltd. Systems and methods for presenting a topic-centric visualization of collaboration data
US10311368B2 (en) * 2017-09-12 2019-06-04 Sas Institute Inc. Analytic system for graphical interpretability of and improvement of machine learning models
US20190095438A1 (en) * 2017-09-22 2019-03-28 NewsRx, LLC Automating content generation
US10089383B1 (en) 2017-09-25 2018-10-02 Maana, Inc. Machine-assisted exemplar based similarity discovery
US20190294920A1 (en) * 2018-03-23 2019-09-26 Maana, Inc Activation based feature identification
US10242320B1 (en) * 2018-04-19 2019-03-26 Maana, Inc. Machine assisted learning of entities
US10936630B2 (en) * 2018-09-13 2021-03-02 Microsoft Technology Licensing, Llc Inferring topics with entity linking and ontological data
CN109684474B (zh) * 2018-11-19 2021-01-01 北京百度网讯科技有限公司 用于提供写作话题的方法、装置、设备和存储介质
US11663498B2 (en) 2019-05-21 2023-05-30 Sisense Ltd. System and method for generating organizational memory using semantic knowledge graphs
US11698918B2 (en) * 2019-05-21 2023-07-11 Sisense Ltd. System and method for content-based data visualization using a universal knowledge graph
US11687553B2 (en) 2019-05-21 2023-06-27 Sisense Ltd. System and method for generating analytical insights utilizing a semantic knowledge graph
US11531706B2 (en) * 2019-08-27 2022-12-20 GraphSQL, Inc. Graph search using index vertices
CN111241276A (zh) * 2020-01-06 2020-06-05 广东小天才科技有限公司 题目搜索方法、装置、设备及存储介质
CN113554438B (zh) * 2020-04-23 2023-12-05 北京京东振世信息技术有限公司 账号的识别方法、装置、电子设备及计算机可读介质
WO2022250863A1 (en) * 2021-05-27 2022-12-01 Microsoft Technology Licensing, Llc Computing system for providing a personalized user experience via graph intelligence

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1755685A (zh) * 2004-09-30 2006-04-05 微软公司 查询图
CN101170578A (zh) * 2007-11-30 2008-04-30 北京理工大学 基于语义相似度的层次式对等网络结构及构建方法
CN101763395A (zh) * 2009-12-31 2010-06-30 浙江大学 采用人工智能技术自动生成网页的方法
CN102687137A (zh) * 2009-11-18 2012-09-19 微软公司 搜索日志中的概念发现

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154213A (en) 1997-05-30 2000-11-28 Rennison; Earl F. Immersive movement-based interaction with large complex information structures
EP1690212A2 (en) 2003-11-26 2006-08-16 Genstruct, Inc. System, method and apparatus for causal implication analysis in biological networks
US9330175B2 (en) * 2004-11-12 2016-05-03 Make Sence, Inc. Techniques for knowledge discovery by constructing knowledge correlations using concepts or terms
US8140559B2 (en) * 2005-06-27 2012-03-20 Make Sence, Inc. Knowledge correlation search engine
US7765176B2 (en) 2006-11-13 2010-07-27 Accenture Global Services Gmbh Knowledge discovery system with user interactive analysis view for analyzing and generating relationships
WO2011151500A1 (en) 2010-05-31 2011-12-08 Helsingin Yliopisto Arrangement and method for finding relationships among data
US9311308B2 (en) 2010-10-29 2016-04-12 Hewlett-Packard Development Company, L.P. Content recommendation for groups
GB201200158D0 (en) 2012-01-05 2012-02-15 Rugerro Gramatica Dott Information network with linked information
US8909653B1 (en) 2012-02-06 2014-12-09 Su-Kam Intelligent Education Systems, Inc. Apparatus, systems and methods for interactive dissemination of knowledge
US9253077B2 (en) * 2012-11-30 2016-02-02 International Business Machines Corporation Parallel top-K simple shortest paths discovery
US20140282356A1 (en) 2013-03-15 2014-09-18 SimuQuest, Inc. System Integration Techniques
US9483580B2 (en) 2013-06-11 2016-11-01 International Business Machines Corporation Estimation of closeness of topics based on graph analytics
US9892210B2 (en) * 2014-10-31 2018-02-13 Microsoft Technology Licensing, Llc Partial graph incremental update in a social network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1755685A (zh) * 2004-09-30 2006-04-05 微软公司 查询图
CN101170578A (zh) * 2007-11-30 2008-04-30 北京理工大学 基于语义相似度的层次式对等网络结构及构建方法
CN102687137A (zh) * 2009-11-18 2012-09-19 微软公司 搜索日志中的概念发现
CN101763395A (zh) * 2009-12-31 2010-06-30 浙江大学 采用人工智能技术自动生成网页的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"From Exploratory Search to Web Search and back";Roberto Mirizzi et al;《CIKM ’10: International Conference on Information and Knowledge Management》;20101030;第39-45页 *

Also Published As

Publication number Publication date
US10467254B2 (en) 2019-11-05
US20160267166A1 (en) 2016-09-15
CN107408130A (zh) 2017-11-28
WO2016144986A1 (en) 2016-09-15

Similar Documents

Publication Publication Date Title
CN107408130B (zh) 通过间接集群连接来进行搜索的方法
JP7411651B2 (ja) コンテンツアイテム推奨をランク付けするための技術
CN106796602B (zh) 用于内容创作的生产力工具
CA2879157C (en) Discovering and ranking trending links about topics
US11556865B2 (en) User-centric browser location
US10067913B2 (en) Cross-lingual automatic query annotation
US9613132B2 (en) Method of and system for displaying a plurality of user-selectable refinements to a search query
US8930342B2 (en) Enabling multidimensional search on non-PC devices
CN107291792B (zh) 用于确定相关实体的方法和系统
US20200004882A1 (en) Misinformation detection in online content
US9805120B2 (en) Query selection and results merging
Kairam et al. Refinery: Visual exploration of large, heterogeneous networks through associative browsing
US10176260B2 (en) Measuring semantic incongruity within text data
US10482142B2 (en) Information processing device, information processing method, and program
CN109952571B (zh) 基于上下文的图像搜索结果
US11475081B2 (en) Combining catalog search results from multiple package repositories
US20160188721A1 (en) Accessing Multi-State Search Results
CN110431550B (zh) 用于识别可视叶页面的方法和系统
WO2016156952A1 (en) Method of and system for processing a search query
JP2016045552A (ja) 特徴抽出プログラム、特徴抽出方法、および特徴抽出装置
Kulkarni et al. Information retrieval based improvising search using automatic query expansion
Vieira Journalism 3.0: Multidimensional Cluster Visualization and Labelling on Twitter Data for Data Journalism
WO2023235733A1 (en) Multi-round searching and cataloging of search results
Awad et al. Tag Ranking Multi-agent Semantic Social Networks
KR20210056668A (ko) 아이디어를 도출하기 위해, 사용자로부터 입력된 키워드에 대한 관련 키워드들을 제공하는 방법 및 시스템

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant