专利名称:命名实体的消歧的制作方法
命名实体的消歧
相关申请的交叉引用
本申请根据35U.S.C.S119(e)要求享有于2006年3月31日提交的 申i青No.60/744,091和于2006年6月29曰提交的申i青No. 11/427,678 的权益,所述申请以引用的方式并入本文。
站旦 冃尔
本发明一般涉及信息检索系统,更具体地涉及在文档和查询内的 命名实体(named entity)的消歧(disambiguation)。
对命名实体的搜索是Web上最常见的搜索之一。这些类型的搜索 包括对人、地点(包括地理位置以及城市、州、国家等)、企业和其 它组织、产品、书籍、电影等等的搜索。通常,命名实体是具有与其 相关联的专有名词(或名词短语)或专有名称的任何事物。对命名实 体的搜索典型地返回具有关于拥有与査询相同的名称(或甚至其一部 分)的任何实体的相关信息的搜索结果集。因此,对"Long Beach (长 滩)"的査询很可能返回关于在纽约州长岛的沿海城市的文档、关于 在南加州的沿海城市的文档以及与词语"long (长)"和"beach (海 滩)"相关的文档。类似地,对"John Williams (约翰 威廉姆斯)" 的査询将返回关于作曲家的文档、关于摔跤运动员的文档以及风险资 本家,他们都共享该名称;对"Python (巨蟒)"的査询将返回与编程 语言有关的文档、与蛇有关的文档以及电影。于是潜在的问题是对命 名实体的査询典型地有歧义,并且可以指相同种类的不同实例(例如, 具有相同名称的不同人)、或指在不同种类中的事物(例如蛇的种类、 编程语言或电影)。
用于命名实体的搜索结果典型地根据查询词语的频率、页面排名或其它因素来排序,而不考虑查询的不同意义(例如名称所指的不同 实体)。与不同实体有关的搜索结果易于被混合在一起。此外,还是
因为搜索系统不识别名称的不同意义,所以即使用户正典型地搜索最 佳描述命名实体(或相同名称的不同实体)的文档(页面),搜索结 果也可能不一定包括这样的文档或不将这样的文档排名非常高。
发明内容
在本发明的一个方面中,在搜索期间使用命名实体文章的知识库 来对实体名称消歧。知识库是根据文档(文章)的数据库构建的。文
章包括与具有诸如"John Williams"(人)、"Long Beach"(地点)、 "Python"(电影、编程语言以及致命的蛇)的专有名称的命名实体、 实体有关的文章。知识库包括提供对另外的歧义实体名称消歧的能力 的某些特征。文章的文本提供与名称的特定意义相关联的上下文。文 章还包含在实体名称的实例和链接到该名称的文章之间的链接。文章 还包括将名称的替选或别名关联到特定命名实体文章的重定向文章。 文章还包括对歧义名称的不同意义消歧的消歧文章。部分地使用在实 体名称的每个实例和名称被链接到的相关联的文章之间的链接信息来 获悉在上下文和名称的特定意义之间的关系。在评分模型中维护所获 悉的关系。
通过识别查询内的实体名称,并且使用评分模型来识别与该实体 名称最密切关联的文章,于是可以对包括实体名称和附加关键词的搜 索查询消歧。然后使用已消歧的名称和所识别的文章来扩增搜索结果, 例如根据所识别的实体分组或组织相关文档。
在本发明的另一个方面中,将在知识库中的文章(因此也将命名 实体)与类别相关联。获悉在命名实体和类别之间的关系的力度并且 将其并入评分模型,并且也使用其来对包含实体名称的查询消歧。
在本发明的又一个方面中,评分模型可以用来识别未包括在知识库中的实体。
本发明具有各种实施例,其包括作为计算机实现的过程、作为计 算机设备、作为集成电路以及作为在通用或专用处理器上执行的计算 机程序产品。
图1示出了用于本发明的一个实施例的系统架构。 图2示出了从命名实体字典选择实体和相关信息。
图3示出了在文章的主体中的链接和管道链接(piped link)的示例。
图4示出了消歧数据集的一部分。
图5示出了在内容词语和类别之间的相互关系的示例。
图6示出了用于生成消歧评分模型的概括方法。
仅用于说明的目的,附图描述了本发明的各种实施例。本领域技 术人员从下面的论述中将容易认识到,在不背离在此描述的本发明的 原理的情况下可以使用在此示出的结构和方法的替代实施例。
具体实施例方式
现参考图1,示出了根据本发明的一个实施例的信息检索系统的 系统架构。在该实施例中,系统100包括索引系统110、搜索系统120、 展示系统130、前端服务器140、命名实体知识库150、字典模块155、 命名实体字典160、消歧模块170以及数据准备模块180。系统100与 文章的知识库200接口连接,所述文章包括关于命名实体的文章。系 统100耦接到网络,并且通过这样的网络可以被任何类型的客户端装 置访问。
该系统具有两个基本的操作阶段生成已消歧的命名实体的集合 以及表示特征和命名实体之间的关系的消歧排名模型230;以及第二,在查询处理期间使用消歧排名模型230来识别并对包含实体名称的查 询消歧。
在生成阶段期间的全部操作如下。字典模块155从知识库200提 取命名实体的字典(数据集)来形成命名实体字典160。从知识库200 提取与包括在命名实体字典160中的命名实体相关联的文章来形成命 名实体知识库150。数据准备模块180使用命名实体字典160以及在命 名实体知识库150中的文章和命名实体文章的上下文(更普遍的特征) 之间的超链接结构来创建消歧数据集220。消歧数据集220也可以包括 用于识别与每个命名实体相关联的类别的类别信息。消歧模块170使 用消歧数据集220来获悉在来自査询上下文的单词和来自类别分类的 类别之间的关系的力度。消歧排名模型230用来对包含名称的(任何 类型的)查询消歧,以便帮助检索与查询相关的文档。
第二阶段的全部操作如下。作为处理查询的先驱,通过访问各种 网站190和其它文档集合,索引系统110负责根据文档内容(例如单 词、词语、媒体)来对文档进行索引;索引系统110创建索引和内容 数据库115以供在检索中使用。前端服务器140从客户端175的用户 接收査询,并且将这些查询提供给搜索系统120。查询可以是为了任何 类型的信息,但是在此感兴趣的是包括(或潜在包括)实体的名称的 查询,对于所述实体的名称在命名实体知识库150中存在命名实体文 早。
搜索系统120负责搜索与搜索查询相关的文档(搜索结果),包 括识别搜索查询中的任何实体名称,以及从内容数据库115检索与搜 索查询相关的文档。搜索系统120还识别搜索结果中的实体名称,并 且使用消歧排名模型230来对搜索结果中的命名实体消歧,并且使用 已消歧的名称来扩增搜索结果。扩增搜索结果包括例如根据已消歧的 名称的各种意义来组织(或分组)搜索结果,基于已消歧的名称添加 进一步(单独地或以组)识别或描述搜索结果的注释、摘录或其它内容,或前述的组合。例如,响应于对"John Williams"的搜索,对于名 称的任何数量的不同意义,搜索系统120可以将搜索结果分组成与作 曲家John Williams有关的一组文档,与摔跤运动员有关的第二组文档, 与风险资本家有关的第三组文档等等。搜索系统120也可以选择性地 包括(或排除)文档,例如,包括用于实体名称的每一个意义的一个 文档(例如关于该实体的来自命名实体知识库150的文档)以及按相 关性排名的剩余搜索结果。也可以容易地设计扩增的其它形式。搜索 系统120将扩增的搜索结果提供给展示系统130;展示系统130将结果 返回给客户端175。现进一步详细描述各种实施例的细节。
信息检索系统100使用知识库200,其可以是信息检索系统100 的一部分或独立于信息检索系统100 (例如,由相同或不同的运营商或 所有者维护)。知识库200包括关于各种主题的文章(或更一般地是 文档)的大型(优选)集合,其提供某种类型的在线百科全书。示例 性知识库200是Wikipedia (可在www.wikipedia.com获得)。
在本发明的情况下,将使用术语"文章",并且其被理解为包括 可以被搜索引擎索引及检索的任何类型的媒体,包括web文档、图像、 多媒体文件、文本文档、PDF或其它图像格式化文件等等。术语"文 章"也可以与术语"文档"互换使用。文档可以具有一个或多个页面、 分区、节段或其它组件,以适合于其内容和类型。等价地,文档可以 被称为"页面",如通常用来指因特网上的文档。通用术语"文档" 或"文章"的使用不暗示对关于本发明的范围的限制。系统100在诸 如因特网和万维网的大型文章库上操作,但是其也可以在更为有限的 集合中被使用,诸如用于图书馆或私企的文档集合。在任一种情况中, 应当理解,文章典型地分布在多个不同的计算机系统和站点上。于是 不丧失一般性,不考虑格式或位置(例如哪个网站或数据库),文章 通常将被统称为库或文档集合。每一个文章具有唯一识别该文章的相 关联的标识符;标识符优选是URL,但是也可以使用其它类型的标识 符(例如文档号)。在本公开中,假定使用URL来识别文章。知识库200具有下述结构。知识库200包括已超链接的文章集合。 每一个文章通过其标题来识别,所述标题典型地是单词序列,且第一 个单词总是大写字母开头。典型地,标题是在文章中描述的实体的最 常见的名称。当标题(或"名称")有歧义时,其进一步通过括号中 的表达来限定。例如,关于作曲家"John Williams"的文章具有标题"John Williams (composer)"。当然,可以使用区别其他的歧义名称的其它方 式。根据知识库200的模式和格式,可以使用特定格式化约定来格式 化标题。例如,可以在文章标题中使用下划线"—"来替代空格。
因为每一个文章描述特定的实体或概念,所以术语"实体"或"命 名实体"也将被用来指文章描述的实体;术语"命名实体文章"将被 用来指关于特定命名实体的文章。术语"实体名称"将被用来指命名 实体的专有名称,其也可以是命名实体文章的标题(或标题可以得自 于实体名称,或反之亦然)。在评价査询的情况中,应当理解,识别 査询(或文章)中的命名实体是确定命名实体的名称是否在查询(或 文章)中出现的过程。
现介绍下面的符号
E=在知识库200中的所有命名实体的集。
e EE=任意命名实体。
e.title=关于e的文章的标题名称。
e.text=关于e的文章的文本(也可以被表示为e.T,其中T是与 e相关联的所有文章的文本集)。
通常,在名称和实体之间存在多对多对应。这些关系通过两个附 加的结构即重定向文章和消歧文章被捕捉在知识库200中。重定向文章为可被用来指知识库200中的实体的每个替选名称而 存在。替选名称被用作为文章的标题,并且该文章包含指向关于实体 的实际命名实体文章的重定向链接。替选名称也可以被理解为实体的 名称的别名。替选名称可以包括同义词、拼写错误、或替选拼写、首 字母缩写词、常见名称、全名、俚语名称、译文、或指明特定实体的
任何其它方式。例如,名称"John Towner Williams (约翰 陶纳 威 廉姆斯)"是作曲家John Williams的全名,因此用作作曲家的替选名 称。因此,具有标题"John Towner Williams"的重定向文章被包括在 知识库200中,并且其包含指向"John Williams (composer)"的命名实 体文章的重定向链接(或其它指针)。可以具有多个直接页面的实体 的另一个示例是命名实体"United States (美国)"。重定向页面也可 以被用于标题的错误拼写(例如,"Untied States")、首字母縮写词 (例如,"USA" 、 "U.S." 、 "U.S.A.")、以及译文(例如,"Los Estados Unidos")、同义词(例如,"America (美国)")。与给定 命名实体e相关联的并且重定向到该实体的命名实体文章的所有替选 名称的集用符号表示为e.R。
例如,对于实体"United States",以下适用 e = United States e.title = "United States"
e.R = {"USA", "U.S.A", "U.S." , "US", "Estados Unidos", "America' 'Untied States",...}
如上所述, 一些实体名称有歧义,因为其可以指相同种类的事物 的不同实例,或甚至不同种类的事物。在知识库200的情况中,歧义
名称可以指两个或多个不同文章。因此,对于每一个歧义名称,知识 库200进一步包括歧义名称可以具有的不同意义的枚举。在一个实施 例中,在消歧页面中拥有名称的不同意义的枚举。替选地,其可以被 表达为消歧页面列出可以由特定的歧义实体名称表示的所有命名实体文章。对于歧义名称的每一个不同意义,存在具有该意义的名称的相 关联的描述。例如,对于命名实体"John Williams",消歧页面可以列 出具有该相同名称的多个不同实体。作为另一个示例,考虑实体Venus (金星),以及名称"Morning Star (晨星)"和"Evening Star (晚星)"。
这些名称每一个都有歧义,但是两者都指实体金星;因此这些名称的 每一个都具有相关联的歧义页面,所述歧义页面包括作为引用的
"Venus"(以及指向关于"Venus"的命名实体文章的链接)。
因此,对于给定的命名实体,将存在如通过重定向页面的标题所 指示的与该实体相关联的非歧义名称集,以及将该特定实体列出为歧 义名称的意义中的一个的附加歧义名称集。对于给定实体e, e.D是其 消歧页面包含指向e的链接(或替选地,至少列出e)的名称集。
知识库200的另外特征是类别的使用。在知识库200中的每一个 文章都与一个或多个类别相关联。以主题-副主题层级(也称为类别分 类),优选地以有向非循环图来组织类别。可以通过将类别标志(标 签)关联到每一个文章,或通过维护包括在每一个类别中的文章的单 独列表来进行关联,所述列表包含在该类别中的实体的名称、或指向 其各自的文章的URL (或其它类型的引用,例如文档ID)。例如,可 以将作曲家John Williams与类别"Star Wars music (星球大战音乐)"、
"20th century classical composers (20世纪古典作曲家)"、"Film score composer (电影配乐作曲家)"、"Music (音乐)"等等相关联。类 别也可以具有与命名实体相同的名称。因此,"Venus"既可以是类别, 也可以是对于其存在命名实体文章的命名实体;可以将命名实体文章
"Venus"与更一般的类别"Planets (行星)"和"Solar System (太阳 系)"相关联。对于给定的命名实体e, e.C是e所属于的类别的集。 实体被认为属于其直接类别、以及在类别层级中所有其上级(ancestor) 类别。图2示出了多个命名实体e (在"标题"列中列出)、以及其相 关联的重定向名称(在"重定向"列中列出)、列出实体的消歧页面 的标题(在"消歧"列中列出)和其相关联的类别(在"类别"列中列出)的示例。
在知识库200中的文章通常将包含对于其存在相应的命名实体文 章的命名实体的提述(或"实例")。当提及这类的命名实体时,经 由超链接将该命名实体的名称链接到相应的命名实体文章。优选地使 用两种类型的链接链接和管道链接。图3示出了来自知识库200中
的文章的代码摘录300和其相应的显示文本302的示例。在链接306 中的字符串"Rome"表示命名实体文章的标题,因此该字符串也作为 超文本链接的锚点(anchor)文本(示出为加下划线)出现在显示文本 302中。在管道链接304中,命名实体文章的标题"Vatican City (梵蒂 冈)"被示出在管道符号"l"之前;在管道符号之后的字符串"Vatican" 是在显示文本302中作为链接名称出现的字符串。管道链接的使用允 许知识库200中的文章的作者使用各种不同的名称来引用或链接到给 定的命名实体文章。链接也提供对训练消歧模块有用的消歧示例。
字典模块155是用于从知识库200生成命名实体的字典(数据集) 以形成命名实体字典160的装置的一个示例。命名实体字典160包含 多个名称(其自身是字符串),其中将每一个名称映射(与之相关联)
到来自知识库200的实体e的某个集;与给定名称相关联的实体集被表 示为d.E。字典模块155基于文章的标题、包括在重定向页面上的名称、 以及包括在消歧页面中的名称从知识库200确定待被包括的名称d。
在一个实施例中,字典模块155如下从知识库200生成名称d。 图6示出了该过程。字典模块155使用用于检测命名实体的一组名称 识别规则来处理600知识库200中的每一个文章的标题。在一个实施 例中,名称识别规则如下
如果e.title是多单词标题,则仅当所有的实义词均为大写字母 开头时e为命名实体;
*如果e.title是包含至少两个大写字母的一个单词标题,则e是命 名实体; 如果在文章内出现的标题至少75%为大写字母开头,则e为命
名实体。
第一规则识别诸如"United States"或"Name of the Rose (玫瑰之 名)"的命名实体。在此应注意,不考虑无用词(例如,前置词、冠 词等等)。第二规则识别诸如"NATO"或"LAGQ"的首字母縮写词。 第三规则识别在其它情况中的实体的名称,其中标题不满足前两个规 则,但是在文章中标题的用法指示作者认为标题是专有名称短语(因 此其以大写字母开头);当然可以使用除75%外的阈值量。可以使用 其它的或附加的规则来更自由地或更保守地识别命名实体,并且可以 对其它语言使用其它的规则,其使用不同的约定(语法上的和句法上 的)来表示专有名称。
优选地,该识别过程自动发生;不需要操作者人工地评审结果(特 别在其中可能超过500,000个命名实体的大型知识库中)。另外,每一 次向知识库200添加新的文章时可以调用字典模块155来确定其是否 关于命名实体,以及识别包含在文章的主体内的命名实体的附加的提 述。
字典模块155如下使用602重定向页面和消歧页面来构建命名实 体字典160。对于由规则识别的每一个名称d,字典模块155将以下内 容包括在命名实体字典160中
命名实体文章的标题d.title,
-名称集(01,其是d的重定向名称,以及
,名称集d.D,其是d的消歧名称。
因此,对于给定的名称d,存在d可以在知识库200中表示的实 体集d.E;当且仅当d = e.title、或d是e的重定向名称之一 (d ee.R)、 或d是对e消歧的名称之一 (d Ee.D)时,将特定命名实体e包括在 该集d.E中。从命名实体字典160和知识库200、命名实体文章集(即其名称 被包括在命名实体字典160中的文章),字典模块155创建604 (例如, 提取、复制、索引等等)命名实体知识库165。因此,该知识库165包 括所有命名实体文章(包括其超链接)、重定向到任何命名实体文章 的所有重定向文章、以及包含命名实体文章的名称(或指向其的链接) 的所有消歧文章。对于每一个命名实体,对于用于名称的正确意义的 特定文章,在文章、其重定向名称以及其消歧名称之间进行关联。因 此,对该阶段进行考虑的一种方式是,已将知识库200分割(或镜像) 成仅包含关于命名实体的文章的子数据库(150)。其已经通过对文章 的标题以及这样的标题的上下文的基于探试法的分析被程序地完成。
在生成阶段的下一个方面,数据准备模块180创建606消歧数据 集220,其被用作为消歧模块170的训练数据。数据准备模块180是用 于生成消歧数据集的装置的一个示例。数据准备模块180的一个实施 例操作如下。
如上所述,对于给定的名称("John Williams"),将存在在各 种上下文中包括该名称的实例的文章。在论述作曲家时文章中的一些 可以包括名称"John Williams";在论述摔跤运动员时其它的文章可以 包括相同的名称。在每一种情况中,根据在上面参考图3论述的命名 实体知识库150 (或替选地,也在知识库200中)的结构,这些实例被 链接(经由链接或管道链接)到适当的命名实体文章,即关于正论述 的实体的文章。此外,实体名称在其中出现的上下文(例如,包含该 名称的句子、段落等等)提供具有用于名称的特定实例的正确意义的 数据源。因此,数据准备模块180使用命名实体知识库150的这些方 面来构建消歧数据集200。该数据集具有以下的结构。
为了说明的目的,并且不丧失任何一般性,术语"査询"在此用 来表示实体名称在文章内的出现。如果在查询q中存在实体名称,使得所表示的实体集q.E包含至少两个实体,其中的一个是被链接到名称 的出现的正确实体q.e,则将査询q包括在数据集中。更确切地,如果 q.E包含n个命名实体ep e2, ...,en的名称,则利用n个对(q, ed来扩 增数据集200,表示如下
{q, ek}=[5(ek,q.e) I q.text I ek.title]
域q.text包含在以专有名称为中心的有限长度窗口中出现的单词。 在一个实施例中,窗口尺寸被设置为55,其是可以在跨文档互引用的 相关任务中提供最佳性能的一个值,尽管无疑地可以使用其它值。当 ek与链接中引用的实体q.e相同时,克罗内克尔(Kronecker) 5函数 5(ek,q.e)为1。换言之,当存在具有相同名称(例如"John Williams") 的多个不同实体时,则对于包括该名称的链接实例的给定文章,比如 说描述古典音乐的文章,将对于命名实体文章"John Williams (composer)"的克罗内克尔5函数设置为1,其中与名称实例相关联的 链接实际上链接到该命名实体文章。对于与名称"John Williams"相关 联的所有其它命名实体文章,将S函数设置为0。因此,从可以由名称
实例表示的所有实体中,该标记指示正确的实体。因此,消歧数据集 220提供对命名实体知识库150内的实体名称的每一个实例消歧的数据 的集。
在一个实施例中,数据准备模块180使用以下的方法来构建消歧 数据集220。对于命名实体知识库150中的每一个命名实体文章,数据 准备模块180遍历文章的文本以识别其中的超链接。处理文本在此包 括处理源代码、文档对象模型、索引或文章的其它表示。例如,通过 包括〈href^和其它的已知标志可以在HTML中识别超链接。在每一个 所识别的超链接内,将存在用作链接的锚点文本的实体的名称。
对于每一个所识别的实体名称,数据准备模块180经由在命名实
体字典160中的查找来确定与该实体名称相关联的一组文章。这些命 名实体中的一个将是通过超链接链接到的文章的名称的命名实体;其
19余将是其它的文章(例如,具有非匹配的标题)。被链接的文章是实 体名称(例如"John Williams")的实例、实例的上下文(例如,"Boston Pops conductor John Williams led the symphony in the debut of TreeSong, Concerto for Violin and Orchestra.(波士顿管弦乐团指挥家约翰'威廉姆 斯在小提琴和管弦乐的协奏曲树之歌的首次演出中指挥交响乐。)") 和命名实体文章其自身("John Williams (composer)")的积极示例。 对于该元组,5函数标记被设置为"1"。对于每一个剩余元组,其为 实体名称、相同上下文和文章中的另一个的组合,标记被设置为"0"。
图4示出了消歧数据集220的一小部分400,仅用于说明的目的。 在此,所选择的数据400包括数据的三个不同的元组(行),由名称 "John Williams"的实例与匹配该实体名称的三个不同文章(由在列 406中的三个不同的命名实体文章标题示出)的三个不同组合产生。包 含当前实例的査询文本(q.text) 404在中间列中示出。以上述描述的 方式,"John Williams"的实例将是链接,并且该链接将包含到命名实 体文章的引用。
对于第一元组,超链接包括其标题"John Williams (composer)"与 超链接中引用的文章相匹配的命名实体文章。对于该元组,S函数标记 402被设置为"1"。两个其它的条目用于具有实体名称"John Williams" 的其它文章,例如,条目用于"John Williams (wrestler)"和"John Williams (VC)"的命名实体文章。因为这些文章的标题与包含在超链接中的标 题不相匹配,所以标记402被设置为"0"。虽然这是消歧数据集220 的内容的基本示例,但是期望的是,也可以包括附加的上下文数据、 元数据或其它信息。
消歧模块170使用消歧数据集220 (或其一部分)来获悉608消 歧评分模型230。消歧模块170是用于获悉上下文信息(例如,q.text 或其它特征)与实体名称之间的关联的装置的一个示例。消歧模块170 以两个阶段来构建消歧评分模型230。首先,将消歧数据集220的某个部分选择为训练部分(可以将另 一个部分选择为模型确认)。为了简单的目的,仍将该部分称为消歧
数据集220。
对于数据集220中的每一个元组,消歧模块170将评分函数应用 于查询(例如,文章中的实体名称的实例)和命名文章自身的组合, 即score(q,ek)。评分函数是确定査询与文章的相关性(或相似性)的函 数,因此提供上下文-文章相似性分值。可以使用任何相关性或相似性 评分函数,并且在本发明的范围内的不同消歧方法可以使用不同的评 分函数,因为所使用的特定函数不是关键的。
可以使用的一个评分函数是基于査询的上下文和文章的文本之间 的余弦相似性
在该实施例中,在标准向量空间模型中表示分量q.text和ek.text, 其中每个分量与词汇表中的词语相对应,并且词语权重是标准tfXidf 分值。词语(单词或短语)的词汇表V是从知识库200中的文章库获 取的。对于每一个词干w,确定其文档频率df(w)。丢弃无用词和过于 频繁或过于稀少的单词。类属文档(文章)d然后被表示为长度的向量 |V|,其中每一个词汇表单词有一个位置。如果f(w)是单词w在文档d 中的频率,并且N是知识库200中的文章的总数,则在d的tfXidf表 示中单词w的权重是<formula>formula see original document page 21</formula>
使用诸如前述的评分函数,消歧模块170可以操作如下。对于给 定的査询(实体名称),模块从命名实体字典160确定与名称相关联 的实体。对于每一个这样的实体,消歧模块170计算在命名实体文章 和查询的上下文之间的评分函数。这产生例如在命名实体文章和该査询之间的余弦相似性分值(或
其它相关性类型分值)。经由下面的主排名函数,将最高评分命名实
体文章识别为用于对名称消歧的正确文章
e = arg max score( , q)
" (1)
如果^q.e,贝ljg是提供q的正确意义的命名实体。
消歧模块170获悉(1)的一般化,其将在下面被进一步详细阐述。 然后在消歧评分模型230中使用所获悉的排名函数。
再次参考图1,现进一步详细描述査询处理的一个实施例。在对 普通搜索的查询处理期间,搜索系统120将从客户端系统175接收类 属査询。该査询可以包括实体名称(或多个实体名称)。因此,搜索 系统120将査询传递到字典模块155以使用名称识别规则来确定査询 是否包含实体名称。该规则可以被应用于整个査询,或应用于其一部 分(例如,在査询词语上使用滑动窗口)。如果识别了实体名称,则 字典模块155向搜索系统120返回命名实体的列表。搜索系统120将 命名实体的列表与整个査询一起传递到消歧模块170。消歧模块170使 用消歧评分模型230来处理査询和命名实体。消歧模块170向搜索系 统120返回可以包括正确消歧的实体的识别的结果,以及前N个评分 实体。搜索系统120使用该结果来组织并排名与搜索结果相关的文档, 例如根据靠前评分实体的排名来分组文档。
在本发明的另一个实施例中,进一步使用与每一个命名实体文章 相关联的类别信息来对命名实体消歧。当包含在文章中的单词没有用 在关于这样的实体的查询中使用的相同单词来描述命名实体时,该特 征是有益的。例如,单词"conduct (指挥)"和"concert (音乐会)" 可能因为某些原因而未在关于作曲家约翰 威廉姆斯的文章中出现。 如果接收到"John Williams concert (约翰 威廉姆斯音乐会)"的査 询,则对于识别该文章以便对名称"John Williams"消歧,这些词语将 不会因此有用。例如如果文章过于简短、不完整或仅使用同义词,则相关单词可能不会在文章中出现。
更正式地,在q和ek之间的余弦相似性(或其它相关性分值)可 以被看作 来自査询q的上下文的单词和用于给定的命名实体ek的命 名实体文章之间的总的关联度的表示。当因为用于命名实体ek的文章 没有包含与ek相关的所有单词而使关联太低时,在上下文单词和ek所 属于的类别之间的关联是值得考虑的。
参考图5,示出了对名称"John Williams"的潜在査询的说明。为 了避免混乱,图5仅描述了在命名实体知识库150中的具有名称"John Williams"的两个实体500,作曲家和摔跤运动员。在每一个实体上, 示出了在类别层级中其相关联的类别502中的一个(分别为"Film score composers (电影配乐作曲家)"禾卩"Professional wrestlers (职业摔跤 运动员)"),以及其上级类别504中的一些(例如,"composers (作 曲家)"和"wrestlers (摔跤运动员)")。也示出了示例査询上下文 506。在查询内,词语"concert (音乐会)"突出显示。该词语与和如 在左方所示出的"John Williams (composer)"相关联的类别高度相关, 而词语与和如在右方所示出的"John Williams (wrestler)"相关联的类
别具有低度关联。消歧模块no进一步获悉在词语和类别之间的关联,
然后将所述关联包括在评分模型230中。
消歧模块170使用消歧数据集220,其如早先所述包括用于实体 名称与和这样的名称相关联的命名实体文章的每一个组合的元组,以 及上下文-文章相似性分值。消歧模块170用附加的特征向量进一步扩 增消歧数据集220,所述特征向量表示文章文本q.T和文章的类别之间 的相似性。
消歧模块170然后将一般化的排名函数用于评分模块。该一般化 的排名函数如下
<formula>formula see original document page 23</formula> (2)特征向量多(q,ek)包含用于上下文-文章相似性分值的特征^",以 及与来自词汇表V的单词W和来自类别层级C的类别C的组合相对应
的ivixici特征^"
fli "P)—h 如果w叫饼且c^.C,
因此,对于在V中的单词w和在C中的类别c的每一个组合,如 果单词w被包括在文章q的文本中并且c是文章的类别中的一个,则 将特征向量^,。设置为1。
因此,在一个实施例中,消歧模块170执行类别信息的下列处理。 对于每一个类别c,消歧模块170确定与类别c相关联的文章d;如上 所指示,这些文章中的每一个具有与其的词语向量。消歧模块170确 定作为这些文章向量d的向量和的类别向量Ci。这首先对作为类别层 级的叶的类别来进行,再对每一个上级类别处的类别进行。该过程为 类别分类中的所有类别建立了一组类别向量。
权重向量W对特征向量》(q,ek)的特征中的每一个的量值建模,包 括每一个单词-类别关联的权重。通过对消歧数据集220进行训练来获 悉权重向量,消歧数据集220如上所述被扩增来包括单词-类别特征。 所获悉的权重向量然后被用在评分模型230中。
再次参考图1,如前所述,搜索系统120可以将查询提供给消歧 模块170用于消歧。消歧模块170使用包括单词-类别特征的评分模型 230的扩展实施例,并且返回一组前N个评分实体,包括用于每一个 这样的实体的类别信息。评分系统120使用所识别并已消歧的实体和 类别信息来组织搜索结果,并且将搜索结果提供给展示系统130。
作为系统的另一个特征,消歧模块170可以被配置来识别实体的 名称,对于所述实体在命名实体知识库150中不存在相对应的命名实体文章。例如,如上所示,可以存在与"John Williams"有关的多个文 章,但是其中没有一个可以是关于相同名称的著名萨克斯管吹奏者。 因此,能够识别对于其不存在具有名称的适当意义的文章的命名实体 的实例是有益的。这些"局外"实体由单个特殊实体e。ut表示。
为了执行这种类型的识别,消歧模块170如前所述获取用于具有 相同名称的命名实体文章的分值,然后根据其分值对其进行排名。在 将最高评分命名实体文章识别为正确文章之前,消歧模块170将该分 值与阈值进行比较。仅当该分值大于阈值时,该文章才被识别为正确 文章。如果最高分值小于阈值,则没有一个实体是正确的。
更正式地,局外实体的检测可以以下列方式被包括在评分模型230 中。对于实体e。ut,其特征被设置为空值,例如文章文本e。u,T-"",以 及类别集e。ut.C = {}。然后更新基本排名函数(1),使得如果该分值 大于阈值7",则其返回具有最高分值的命名实体,其它情况则其返回 eout:
其中一般化的排名函数(2)是使用特征函数的加权组合来实现的 于畢该更改在特征向量$(q,ek)中产生附加的特征,如下, ,其中
总之,评分模型230可以被可变地设计来在对实体名称消歧时考 虑不同特征组的任何组合表示在文章和査询的上下文之间的相似性
的特征、表示在文章和与该文章相关联的类别之间的关联的特征、以
及表示局外实体的特征。附加的特征也可以被酌情包括在评分模型230 中。例如,附加的特征可以包括链接结构度量(例如,页面排名)、 基于主题的度量、基于短语的分值、文章流行性的流行性度量、(例
25如,文章作者的声誉的)声誉度量、新近度量(基于文章的年限)等 等。因此,在此的评分模型230应被理解为灵活地适应用来对命名实 体消歧的附加特征和实现。
由消歧模块170使用的学习算法可以被实现为支持向量机(SVM)
或其它监督学习算法。如上所指示,在此可以使用内核函数。 一个实
施例使用在关于Knowledge Discovery and Data Mining (知识发现和数 据挖掘)的第八届ACM SIGKDD国际会议论文集中第133-142页(2002) Joachims的"Optimizing search engines using click-through data (使用点
进数据来优化搜索引擎)"中描述的大裕量排名方法的内核版本,其 解决在下面阐述的最优化问题 最小化
服从
<formula>formula see original document page 26</formula>
该公式的目的是找到权重向量w,使得l)最小化被违反的来自消 歧数据集220的排名约束w争(q,q.e)》w争(q,ek)的数量,以及2)排名函 数w争(q,ek)远超训练数据来一般化。在上面的最优化问题中,C是允许 将裕量大小与训练错误折衷的参数。线性排名约束的数量是q(|q.E|-l)。 作为示例,图4中示出的三个查询中的每一个都生成两个约束。
所获悉的w是特征向量》(q,ek)的线性组合,其使能够使用内核。 它直观地示出在两个特征向量《(q,ek)和多(q',e'k)之间的点积与在两 个査询的上下文中的共有单词的数量和对两个命名实体共有的类别的 数量之间的积加上两个余弦相似性的积相等。相对应的排名内核是
<formula>formula see original document page 26</formula>为了避免数值问题,内核的第一条件是标准化并且第二条件是乘 以常量,例如《=108,如下
<formula>formula see original document page 27</formula>
总之,本发明提供了用于使用带有诸如链接、重定向(别名)和 消歧文章的消歧特征的文章的知识库来定义各种类型的消歧评分模 型、并且在査询处理期间执行査询的消歧的各种方法和系统。
己参考各种实施例特别详细地描述了本发明,并且本领域的技术 人员将理解本发明可以在其它的实施例中实践。另外,本发明的技术 人员将理解本公开的下述方面。第一,组件的特定命名、词语的大写、 属性、数据结构或任何其它编程或结构方面不是必须遵循或重要的, 并且实现本发明或其特征的机制可以具有不同的名称、格式或协议。 第二,系统可以如所述经由硬件和软件的组合或完全以硬件元件来实 现。第三,在此所述的各种系统组件之间的功能性的特定划分仅是示
例性的,并不是必须遵循;由单个系统组件执行的功能可以由多个组 件替代执行,并且由多个组件执行的功能可以由单个组件替代执行。
以上描述的某些部分从对信息的操作的算法和符号表示的方面来 描述了本发明。这些算法描述和表示是在数据处理领域的技术人员使 用来将其工作的实质内容最有效地传递给该领域的其它技术人员的手 段。虽然被功能性地、计算性地、或逻辑性地、或符号地描述,这些 操作应被理解为由计算机程序或等效电子电路、微码等等实现。此外, 其也已不时地证明将这些操作安排指代为模块是便利的,而不丧失一 般性。所描述的操作和其相关联的模块可以具体化在软件、固件或硬 件中。
另外,用来描述各种量、数据值以及计算的词语应被理解为与适当的物理量相关联并且仅是应用于这些量的便捷标签。除非特别陈述 不同于从下面的论述显而易见的情况,应当理解,在整个描述中,利 用诸如"处理"、"计算"、"确定"、"组织"、"分组"等等的 词语的论述是指操作和变换数据的计算机系统或类似电子计算装置的 行为和过程,所述数据被表示为在计算机系统存储器或寄存器或其它 这样的信息存储、传输或显示装置内的物理(电子)量。
本发明也涉及用于执行在此的操作的设备。该设备可以为所需目 的专门构建,或其可以包括通过存储在计算机中的计算机程序选择性 地激活或重新配置的通用计算机。这样的计算机程序可以被存储在计 算机可读存储介质中,诸如但不局限于任何类型的盘片,包括软盘、
光盘、CD-ROM、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、 EPROM、 EEPROM、磁或光卡、专用集成电路(ASIC)、或适合存储 电子指令的任何类型的媒体,并且每一个都被耦接到计算机系统总线。 此外,本说明书中涉及的计算机可以包括单处理器或可以是为增强的 计算能力使用多处理器设计的架构。
在此呈现的算法和显示在本质上不与任何特定的计算机或其它设 备相关。根据在此的教导,也可以将各种通用系统与程序一起使用, 或其可以证明构建更多专用设备来执行所需的方法步骤是便利的。用 于各种这些系统的所需结构将从上述描述中发现。另外,未参考任何 特定编程语言来描述本发明。应当理解,可以使用各种编程语言来实 现如在此所述的本发明的教导,并且对特定语言的任何引用是为了公 开本发明的实施和最佳模式而提供的。
本发明非常适合于在众多拓扑结构上的种类繁多的计算机网络系 统。在该领域内,大型网络的配置和管理包括通过诸如因特网的网络 通信地耦接到不同的计算机和存储装置的存储装置和计算机。
最后,应当注意,在本说明书中使用的语言主要为了易读和指导的目的而选择的,其并不是选择来划定或限定创造性主题。因此,本 发明的公开是意在说明性的,而不是限制本发明的范围,所述范围在 所附权利要求中阐明。
权利要求
1. 一种用于使用文章的数据库对专有名称消歧的方法,所述文章中的至少一些是关于具有专有名称的实体的命名实体文章,并且所述文章中的至少一个包括专有名称,其中所述专有名称中的至少一些被链接到相对应的命名实体文章,所述方法包括在所述多个文章中识别所述专有名称的实例,每一个专有名称在文章的上下文中出现;确定与所述专有名称相对应的所述命名实体;对于每一个相对应的命名实体,确定在关于所述命名实体的所述命名实体文章和包含所述专有名称的上下文之间的相似性分值;以及通过将所述专有名称与具有最高相似性分值的所述命名实体文章相关联来对所述专有名称消歧。
2. 如权利要求l所述的方法,其中所述相似性分值基于在所述上 下文的向量表示和所述命名实体文章的向量表示之间的余弦相似性函 数。
3. 如权利要求l所述的方法,进一步包括对于每一个命名实体文章,将所述文章与重定向到所述命名实体 文章的文章的名称集相关联。
4. 如权利要求l所述的方法,进一步包括对于每一个命名实体文章,将所述文章与包括指向所述命名实体 文章的链接的消歧文章的名称集相关联。
5. 如权利要求l所述的方法,进一步包括 在所述数据库中识别是命名实体文章的文章;以及 从所识别的命名实体文章构建专有名称集。
6. 如权利要求l所述的方法,进一步包括从命名实体文章的标题、重定向文章以及消歧文章构建所述专有 名称集。
7. 如权利要求l所述的方法,其中在所述数据库中识别是命名实体文章的所述文章包括识别在标题中具有多个单词的文章,其中在所述文章的所述标题中的所有单词以大写字母开头;识别具有单个单词标题的文章,其中所述单词的至少两个字母是大写字母;以及识别文章,其中所述文章标题在所述文章的所述文本中出现的实 例的至少大多数以大写字母开头。
8. 如权利要求l所述的方法,进一步包括从所述命名实体文章构建链接到其它命名实体文章的专有名称的 数据集,对于每一个专有名称包括所述专有名称的上下文、与所述专有名称相对应的命名实体文章、以及所述命名实体文章是否是所述 专有名称被链接到的所述命名实体文章的指示。
9. 如权利要求8所述的方法,其中所述相似性分值基于在所述专 有名称的所述上下文的向量表示和所述命名实体文章的向量表示之间 的余弦相似性函数。
10. 如权利要求8所述的方法,其中所述相似性分值是其中q是专有名称;q.text是在实体ek的命名实体文章中的所述专有名称所述上下文; ek是命名实体文章;以及 ek.text是所述命名实体文章的所述文本。
11. 如权利要求IO所述的方法,其中通过将所述专有名称与具有 最高相似性分值的所述命名实体文章相关联来对所述专有名称消歧包 括通过下列函数来识别所述实体e = arg max score(《,q)
12. 如权利要求l所述的方法,进一步包括对于每一个命名实体文章确定被分配给所述命名实体文章的至少 —个类别;以及确定在所述命名实体文章中的所述专有名称与所分配的类别之间 的关联。
13. 如权利要求l所述的方法,进一步包括将专有名称和所述专有名称在其中出现的命名实体文章的每一个 组合与特征向量相关联,所述特征向量包括被分配给所述命名实体文 章的所述类别的指示。
14. 如权利要求13所述的方法,其中对专有名称消歧包括对于所述专有名称识别具有将在所述上下文的单词和被分配给所 述命名实体文章的类别之间的相似性最大化的特征向量的命名实体文章
15. 如权利要求13所述的方法,其中所述特征向量进一步包括与在所述数据库中不具有相关联的命名实体文章的命名实体相关联的特 征。
16. 如权利要求15所述的方法,其中所述特征向量进一步包括在 所述命名实体文章中的所述专有名称的实例的上下文与所述命名实体 文章的文本之间的相似性分值。
17.如权利要求16所述的方法,其中对专有名称消歧包括使用以下函数来识别所述命名实体<formula>formula see original document page 5</formula>其中q是命名实体的专有名称;ek是来自命名实体文章的所述数据库的所述命名实体文章; q.text是所述命名实体文章中的所述专有名称的上下文;以及 ^^是指示包括在所述命名实体文章中的单词w和被分配给命名 实体文章ek的所述类别C的类别c的向量;以及e。ut是在所述数据库中不具有相关联的命名实体文章的命名实体。
18. —种用于对专有名称消歧的系统,包括-关于具有专有名称的实体的命名实体文章的数据库;重定向文章集,每一个重定向文章具有专有名称和指向命名实体文章的链接;消歧文章集,每一个消歧文章包括多个歧义专有名称,每一个专有名称链接到命名实体文章;数据集生成模块,生成链接到其它命名实体文章的专有名称的消 歧数据集,对于每一个专有名称包括所述专有名称的上下文、与所 述专有名称相对应的命名实体文章、以及所述命名实体文章是否是所 述专有名称被链接到的所述命名实体文章的指示;以及评分模块,通过从所述消歧数据集识别在命名实体文章中的所述 专有名称的所述上下文和所述命名实体文章的文本之间具有最高相似 性分值的所述命名实体文章来对每一个专有名称消歧。
19. 如权利要求18所述的系统,其中所述评分模块进一步适于通过对于所述专有名称识别在所述专有名称的上下文的单词和被分配给 所述命名实体文章的类别之间具有最大相似性的所述命名实体文章来 对所述专有名称消歧。
20. —种用于对专有名称消歧的系统,包括 关于具有专有名称的实体的命名实体文章的数据库; 重定向文章集,每一个重定向文章具有专有名称和指向命名实体文章的链接;消歧文章集,每一个消歧文章包括多个歧义专有名称,每一个专 有名称链接到命名实体文章;用于对专有名称消歧的计算机程序产品,所述计算机程序产品存 储在计算机可读介质上,并且包括数据集生成模块,生成链接到其它命名实体文章的专有名称的消 歧数据集,对于每一个专有名称包括所述专有名称的上下文、与所 述专有名称相对应的命名实体文章、以及所述命名实体文章是否是所 述专有名称被链接到的所述命名实体文章的指示;以及评分模块,通过从所述消歧数据集识别在命名实体文章中的所述 专有名称的上下文和所述命名实体文章的文本之间具有最高相似性分 值的所述命名实体文章来对每一个专有名称消歧。
21. —种用于使用文章的数据库来对专有名称消歧的系统,所述 文章中的至少一些是关于具有专有名称的实体的命名实体文章,并且 所述文章中的至少一个包括专有名称,其中所述专有名称中的至少--些被链接到所述相对应的命名实体文章,所述系统包括用于在所述多个文章中识别专有名称的装置,每一个专有名称在文章的上下文中出现;用于确定与所述专有名称相对应的所述命名实体的装置; 用于对于每一个相对应的命名实体确定在关于所述命名实体的所述命名实体文章和包含所述专有名称的所述上下文之间的相似性分值的装置;以及用于通过将所述专有名称与具有最高相似性分值的所述命名实体 文章相关联来对所述专有名称消歧的装置。
全文摘要
使用消歧评分模型来在搜索查询和其它上下文中对命名实体消歧。使用包括关于命名实体的文章的文章知识库来开发评分模型。使用包括文章标题、重定向页面、消歧页面、超链接以及类别的知识库的各个方面来开发该评分模型。
文档编号G06F7/00GK101454750SQ200780019877
公开日2009年6月10日 申请日期2007年4月2日 优先权日2006年3月31日
发明者亚历山德鲁·马里乌斯·帕斯卡, 拉兹万·康斯坦丁·布内斯库 申请人:谷歌公司