CN111194442B - 基于文档的语义丰富度对文档进行排名 - Google Patents

基于文档的语义丰富度对文档进行排名 Download PDF

Info

Publication number
CN111194442B
CN111194442B CN201880065760.7A CN201880065760A CN111194442B CN 111194442 B CN111194442 B CN 111194442B CN 201880065760 A CN201880065760 A CN 201880065760A CN 111194442 B CN111194442 B CN 111194442B
Authority
CN
China
Prior art keywords
document
indicator
terms
documents
complexity
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
CN201880065760.7A
Other languages
English (en)
Other versions
CN111194442A (zh
Inventor
M·克鲁德尔
A·佩龙
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN111194442A publication Critical patent/CN111194442A/zh
Application granted granted Critical
Publication of CN111194442B publication Critical patent/CN111194442B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • 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/31Indexing; 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/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • 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/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • 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/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

提出了一种用于在计算系统中对多个文档进行排名的解决方案,每个文档包括多个文档术语。一种对应的方法包括:接收包括一个或多个查询术语的查询用于选择文档,计算查询与文档之间的对应相似性索引,每个相似性索引是根据查询术语与对应文档的文档术语之间的比较来计算的,确定文档的对应语义丰富度指示符,根据对应语义丰富度指示符来调整相似性索引,以及根据调整的对应相似性索引对文档的至少一部分进行排名以供其选择。

Description

基于文档的语义丰富度对文档进行排名
背景技术
下文对与本发明的上下文相关的技术的论述来引入本发明的背景。然而,即使当该讨论涉及文档、动作、人工制品等时,它也不暗示或表示所讨论的技术是现有技术的一部分或者是与本公开相关的领域中的公知常识。
本公开涉及信息技术领域。更具体地,本公开涉及文件的排名。
在用于选择可能与任何特定需求相关的文档的计算系统中,文档的排名是常见的;典型的例子是在信息检索(IR)的上下文中,其中排名被用于促进识别与不同主题相关的文档(例如由搜索引擎识别的因特网中的网页)。实际上,相关文档的选择是经验性质的活动,因为不可能在数学上证明任何文档比另一个更相关;因此,文档的排名被用于估计其相关性,然后相应地对文档进行排名或分类(例如,用于由人类用户对其进行手动选择)。
通常,排名应用于文档的语料库(或集合),其由大量文档形成,每个文档包括一系列术语(例如,单词)。用于选择期望文档的查询包括被认为表征它们的一个或多个术语(例如,由用户提交给搜索引擎)。根据查询的术语与文档的术语之间的比较来计算每个文档的相似性索引。然后,根据文档的相似性索引对文档进行排名,以便选择期望的那些(例如,通过按照其相似性索引的降序向用户返回最相关页面的列表,以便手动选择实际感兴趣的那些)。
用于对文档进行排行的普遍技术是基于向量空间模型(VSM)。简言之,在VSM技术中,每个文档和每个查询简单地根据它们的术语和它们的出现来索引。然后,文档和查询由多维空间(由公共词汇表的术语定义)中的对应向量表示;如果每个维度的术语存在于文档/查询中,则其值被设置为相应的术语权重。例如,根据rf-idf加权方案来定义术语权重;特别地,每个术语的术语权重被设置为(文档/查询中的术语的)术语频率tf与(文档语料库中的术语的)反向文档频率idf的乘积。然后根据文档向量的角度差计算文档相对于查询的相似性索引;这样,相似性索引取决于常见的术语,从而给予重复的(根据它们的术语频率)和/或稀少的(根据它们的反向文档频率)术语更大的重要性。
任何排名技术的质量取决于其能够多好地选择实际相关的文档(由排名在最顶部的文档所标识的)。例如,精确度(由相对于所选文档的总数而选择的相关文档来定义)应当尽可能高;实际上,期望限制与信息需要不相关的(不相关的)文档,即假阳性结果(理想地选择非相关文档)。同时,召回率(由相对于相关文档的总数而选择的相关文档来定义)应当尽可能高;实际上,希望限制未被选择的相关文档,即假阴性结果(理想地选择所有相关文档)。更简单地,排名技术应当能够选择一些相关文档;例如,当将排名技术应用于浏览范例时,基于对所选文档的相关性的快速检查,这些所选文档可能导致或可能不导致对所选文档的更深检查的(诸如当搜索因特网中的页面时);实际上,在这种情况下,只要至少一些所选文档是相关的,则查准率和查全率可能不太重要。
低质量的排名可能不利地影响计算系统的性能。特别地,选择一些相关文档的低查准率和召回率或者简单地低概率可能需要提交一个或多个附加查询以找到实际相关的文档。这些附加查询涉及计算系统的资源的相应附加消耗(例如,用于服务附加查询的计算能力、用于接收附加查询并返回其结果的网络流量)。
发明内容
在此提出本公开的简化概述以便提供对本公开的基本理解;然而,本发明内容的唯一目的是以简化形式引入本公开的一些概念作为其以下更详细描述的序言,并且其不应被解释为其关键元件的标识或其范围的描绘。
概括地,本公开基于根据文档的语义丰富度对文档进行排名的思想。
具体地,一方面提供了一种用于在计算系统中对多个文档进行排名的方法,其中根据文档的相应语义丰富度指示符来调整文档与用于选择它们的查询之间的相应相似性索引。
另一方面提供了用于实现该方法的对应的计算机程序。
另一方面提供了用于实现该方法的对应的计算机程序产品。
另一方面提供了一种对应的系统。
更具体地,本公开的一个或多个方面在独立权利要求中阐述,并且其有利特征在从属权利要求中阐述,其中所有权利要求的措辞通过引用逐字并入本文(其中任何有利特征参考任何具体方面提供,所述具体方面在必要的变更下应用于每个其它方面)。
附图说明
参考以下结合附图阅读的对本公开的详细描述(仅以非限制性指示的方式给出)将最好地理解本公开的解决方案及其另外的特征和优点(其中,为了简单起见,用相同或相似的参考标记表示对应的元件,并且不重复对它们的解释,并且通常使用每个实体的名称来表示其类型和属性(诸如值、内容和表示))。具体为:
图1A-图1E示出了根据本公开的实施例的解决方案的一般原理。
图2示出了其中可以应用根据本公开的实施例的解决方案的计算系统的示意性框图。
图3示出了表示可以用于实现根据本公开的实施例的解决方案的主要软件组件的角色的协作图。
图4A-图4B示出了描述与根据本公开的实施例的解决方案的实现有关的活动的流程的活动图。
具体实施方式
具体参考图1A-图1E,示出了根据本公开的实施例的解决方案的一般原理。
从图1A开始,文档语料库在计算系统中可用,例如因特网中的(web)页面;每个文档包括多个(文档)术语,例如,对应文本的单词。在计算机中,例如在(web)服务器计算机或简称为服务器105中,从客户计算机或简称为客户端110接收查询,以选择期望的文档。查询包括一个或多个(查询)术语(被认为表征期望的文档),其将被匹配到语料库的文档的文档术语,例如,用于由客户端110的用户搜索与特定主题相关的最相关页面。
响应于此,执行以下操作以根据文档的相关性对文档进行排名。这些操作将由计算机(即,所讨论的示例中的服务器105)执行,因为它们完全不适合人类。实际上,这将需要读取语料库的所有文档(通常是非常高的数量,例如,在因特网中的数十亿个页面的量级);因此,人这样做所花费的时间将如此巨大以致于使其绝对不切实际。相反,读取语料库的所有文档正是它们的排名所试图避免的。事实上,该过程的目的是准确地在语料库中的大量文档中自动识别出假定为相关的文档,以便允许在相对短的时间内手动选择实际感兴趣的文档。
移至图1B,在开始时,计算查询和每个文档之间的相似性索引;相似性索引度量文档与查询(语义上)相似的程度(并且然后它被认为与其相关),即文档的含义与查询相关的程度(例如,由降序的1到0的数字分数定义相似性)。相似性索引是根据查询术语和文档的文档术语之间的比较来计算的,例如通过应用VSM技术。
转到图1C,在根据本公开的实施例的解决方案中,为每个文档确定语义丰富度指示符。语义丰富度指示符度量文档应当传达的信息量(即,其信息量);换言之,语义丰富度指示符测量文档的认知内容,即,表达其概念有多少是有意义的。例如,根据其稀有的文档术语或稀有术语(例如由语料库的文件中出现在频率阈值以下的文档术语定义)和/或根据其句法复杂性(例如由文档中出现的动词短语的数量定义)来计算文档的语义丰富度指示符。
转到图1D,根据相应的语义丰富度指示符来调整文档的相似性索引(相对于查询);例如,每个相似性索引乘以相应语义丰富度指示符的中轴正则化函数(pivotnormalizer function),以便在语义丰富度指示符为高或低时分别增加或减少相似性索引。
转到图1E,根据相应的(调整后的)相似性索引对文档或其至少一部分(例如,预定数量的最相关的文档)进行排名。然后,文档的排名可以用于它们的选择。例如,响应于查询,从服务器105向客户端110返回具有最相关文档(以其相似性索引的降序排列)的列表;然后,该列表被显示在客户端110上,以便允许其用户从顶部浏览该列表,以选择实际感兴趣的文档。然后可以通过打开文档来检查文档;在所讨论的示例中,这涉及通过通信网络从因特网中的相应网站检索页面,并将它们临时存储到客户端110的web浏览器的高速缓冲存储器中。然后,可以将页面下载到客户端110的大容量存储器,并且可以打印页面以便于它们的读取。或者,对文档进行排名的相同过程可应用于过滤应用,例如,在电子邮件服务器或电子邮件客户端的反垃圾邮件程序中。在这种情况下,对照管理员预定义的或从用户的行为自动学习的反PAM规则(包括如上所述的对应查询术语)来验证(由电子邮件服务器或电子邮件客户端)接收的每个电子邮件;每当电子邮件的内容与这些反PAM规则中的任何一个匹配时,反垃圾邮件程序自动将其识别为垃圾邮件。反垃圾邮件程序然后可将该电子邮件标记为垃圾邮件(用于其手动验证),可将该电子邮件放入隔离中或可删除该电子邮件。
这样,文档的排名也取决于它们的语义丰富度,以便将认知推理能力注入到相应的过程中。
这显著地提高了排名的质量;例如,可以提高精确度(从而限制选择的不相关文档)、召回(从而限制未选择的相关文档)或简单地提高选择一些相关文档(用于它们的浏览)的概率。
上述结果可以以非常简单的方式(例如,通过保持VSM技术的简单性)实现。
特别地,文档的语义丰富度指示符(其特征独立于任何查询)可以被离线确定;因此,所提出的解决方案对实时性能(用于响应查询)的影响在实践中是可忽略的。
以上所有都显著地改进了计算系统的性能。特别地,所得到的增加的精确性和召回或简单地增加的选择一些相关文档的概率减少了提交用于找到实际相关的文档的附加查询的需要。这涉及计算系统的资源消耗的相应减少;例如,节省了服务器的计算能力(因为没有或至少减少了要服务的附加查询),并且减少了网络流量(因为服务器没有接收到或至少减少了附加查询,并且将它们的结果返回给客户端)。
现在参考图2,示出了其中可以应用根据本公开的实施例的解决方案的计算系统200的示意性框图。
计算系统200具有分布式体系结构,通常基于因特网;因特网由数百万个服务器205形成,这些服务器通过全球电信网络210连接在它们之间。包括用于对文档进行排名的上述服务器105的服务器205(被称为万维网或简称为web)的子集允许访问相应的网站,每个网站包括(web)页面的集合;每个页面(由HTML语言格式的超文本文档定义)通过相应的URL(由根据标准语法格式化的唯一字符串组成,用于通过HTTP协议访问它)来标识。客户端110的用户访问因特网(通过作为访问提供者操作的计算机,图中未示出),以便利用服务器205提供的服务;特别地,就与本公开相关而言,客户端110的用户访问服务器105以搜索期望的页面,该页面然后可以从对应的服务器205下载。
系统200的上述计算机中的每一个(即,服务器205和客户端110)包括例如通过具有一个或多个级别的总线结构215而在它们之间连接的若干单元。特别地,一个或多个微处理器(μP)220控制计算机205、110的操作;非易失性存储器(ROM)225存储用于引导计算机205、110的基本代码,而易失性存储器(RAM)230被微处理器220用作工作存储器。计算机205、110提供有用于存储程序和数据的大容量存储器235(例如,其中实现服务器205的相应服务器场的存储设备或用于客户端110的硬盘)。此外,计算机205、110包括用于外围或输入/输出(I/O)单元的多个控制器240;例如,每个服务器205的外围单元包括用于与提供对(全球电信)网络210的访问的对应服务器群的交换机/路由器子系统通信的网络接口卡(NIC)以及用于读/写由服务器群的控制台实现的可移动存储单元(诸如光盘,如DVD)的驱动器,而每个客户端110的外围单元包括监视器、键盘、鼠标、诸如Wi-Fi类型的用于(通过对应的访问提供商)访问网络210的无线NIC(WNIC)。
现在参考图3,示出了表示可以用于实现根据本公开的实施例的解决方案的主要软件组件的角色的协作图。
所有软件组件(程序和数据)作为整体用附图标记300表示。软件组件300通常存储在大容量存储器中,并且当程序运行时与操作系统和其他应用程序(图中未示出)一起(至少部分地)被加载到每个计算机的工作存储器中。程序最初例如从可移动存储单元或从网络安装到大容量存储器中。特别地,该图通过一系列交换的消息来表示软件组件300的静态结构和它们的动态行为,每个消息表示对应的动作(用符号“A”之后的序列号表示),该动作可以对应于用于在对应的计算机上实现指定的逻辑功能的(模块、代码段或代码部分的)一个或多个可执行指令。
特别地,服务器105包括以下组件。收集器305收集要包括在相应语料库中的任何新文档;例如,收集器305是下载已经在因特网动作“A1.收集”中添加或更新的页面的至少一部分的网络爬行器(或蜘蛛)。索引器310索引语料库的文档以用于它们的排名。例如,索引器310应用“词包”模型,其中每个文档仅由其术语表示,而不考虑其顺序(但考虑其多样性)。为此,索引器310访问(在读/写模式中)词汇储存库315,其将与文档语料库相关的信息存储到倒排索引数据结构中(从内容映射到位置)。具体来说,词汇存储库315包括文档语料库的(共同)词汇的所有术语的对应条目,每一条目存储具有与所述术语出现的文档相关的信息的列表。无论何时文档语料库由于任何新文档已被添加或任何(旧)文档已被移除而改变,索引器310相应地更新词汇储存库315。特别地,对于新文档,索引器310确定(新)文档d的每个术语t的术语频率tft,d,其等于文档d中术语t的重复(根据其长度正则化):
tft,d=Tt,d/Td
其中Tt,d是术语t出现在文档d中的次数,Td是术语在文档d中出现的总数(然后0<tft,d≤1)。术语频率tft,d随着文件d中术语t的重复而增加;因此,术语频率tft,d表示术语t在文档d中的重要性。对于文档d的每一术语t,索引器310将术语t的术语频率tft,d与文档d的识别符(例如,页面的URL)相关联地保存到词汇库315中的术语t的条目中,从而在必要时产生(相反,对于旧文档,索引器310从词汇库315移除对应信息)-动作“A2.计算tfd”。在任何情况下(无论文档语料库何时改变),索引器310计算文档语料库的每个术语T的反向文档频率idft,其已经受到改变的影响(因为新文档或旧文档包含它)。反向文档频率idft等于其中术语t出现的文档的对数标度中的分数的倒数:
idft=log 10(D/dft),
D是语料库中文档数量,dft是术语t出现的文档数量(然后idft≥0)。当术语t是常见的时,反向文档频率idft非常低,当术语t存在于语料库的所有文档中时,下至idft=0,而术语t越罕见,其反向文档频率idft越高;因此,反向文档频率idft一般表示术语t的特异性。索引器310将如此计算的每一反向文档频率idft保存到词汇存储库315中的对应术语t的条目中-动作“A3.计算idf”。
在根据本公开的实施例的解决方案中,计算器320和/或(句法)分析器325确定语料库的文档的语义丰富度指示符的对应分量,以用于调整它们的相似性索引。为此,计算器320和解析器325访问(在读/写模式下)存储与其相关的信息的文档丰富度存储库330。
特别地,在文档语料库改变的任何时间,计算器320计算文档语料库的术语t的特异性阈值,等于其反向文档频率idft(从词汇储存库315提取)的平均avg(idf):
其中T是文档语料库中存在的术语t的总数。具有高于平均avg(idf)的反向文档频率idft的术语t更罕见并且因而更有特异性,而具有低于平均avg(idf)的反向文档频率idft的术语t更常见并且因而更一般。计算器320将反向文档频率idft的平均值avg(idf)保存到文档丰富度存储库330中-动作“A4.计算avg(idf)”。此外,对于每个新文档,计算器320计算其语义丰富度指示符(称为特殊度指示符)的特殊性分量。(新)文档d的特异性指示符SRsd等于那些罕见的术语t的数目(根据文档d的长度正则化):
SRsd=Nst,d/Td
Nst,d是文档d中的稀有术语t的数量,即,其术语t具有(可能严格地)高于其平均avg(idf)的其反向文档频率idft,而再次Td是文档d中存在的术语的总数(然后0≤SRsd≤1)。文件d中的稀有术语t的密度越高,其特异性指示符SRsd越高;因此,特异性指示符SRsd表示文档d的词汇变化。计算器320将文档d的特异性指示符SRsd保存到丰富度文档存储库330中的文档d的条目中(由其标识符指示),在必要时创建它(相反,对于旧文档,计算器320从语义丰富度存储库330中移除相应的信息)-动作“A5.计算SRs”。在任何情况下(无论文档语料库何时改变),计算器320计算文档语料库的特异性指示符SRsd的平均avg(SRs):
再次用D表示语料库中的文档数量。计算器330将特异性指示符SRsd的平均avg(SRs)保存到文档丰富度存储库330中-动作“A6.计算avg(SRs)”。
另外或可选地,对于每个新文档,分析器325分析该新文档以识别其短语(即,根据相应语言的语法定义句子的完整语法单元的一个或多个词的任意组),包括其动词短语(即,由至少一个动词及其从属词组成的任意短语);例如,通过应用自然语言处理(NLP)词性(Part-Of-Speech,POS)标记来实现该结果,其中以标记的形式添加关于每个词性的信息。然后,分析器325计算新文档的语义丰富度指示符(称为复杂度指示符)的复杂度分量。(新)文档d的复杂度指示符SRcd等于文档d的动词短语的数量(根据其长度正则化):
SRcd=NVP,d/VPd
对于NVP,d t是文档d中动词短语的数量,VPd是文档d中(唯一)短语的数量(然后0≤SRsd≤1)。文档d中的动词短语的数量越高,其复杂度指示符SRcd越高;因此,复杂度指示符SRcd量化表示其表达性的文档d的句法复杂度。分析器325将文档d的复杂度指示符SRcd保存到丰富度文档存储库330中的相应条目中(相反,对于旧文档,分析器325从语义丰富度存储库330中移除相应的信息)-动作“A7.计算SRc”。在任何情况下(无论何时文档语料库改变),分析器325计算文档语料库的复杂度指示符SRcd的平均值avg(SRc):
再次用D表示语料库中的文档数量。分析器325将复杂度指示符SRcd的平均avg(SRc)保存到文档丰富度存储库330-动作“A8.计算avg(SRc)”。
通常,网络服务器335处理由客户端120(图中仅示出一个)提交到服务器105的任何请求,所述客户端利用浏览器340(通常用于在因特网上冲浪)访问所述服务器。就与本公开相关而言,客户端120的用户键入然后提交用于搜索文档的查询;每个查询由用户认为适于识别期望文档内容的一个或多个术语(例如,关键字)来定义。浏览器340将查询提交给web服务器335,该web服务器又将查询传递给(web)搜索引擎355-动作“A9.查询”。
搜索引擎350利用比较器350,其通过VSM技术计算语料库的每个文档和查询之间的相似性索引。为此,比较器350确定查询q的每个术语t的术语频率tft,q,同样等于查询q中根据其长度正则化的术语t的重复:
tft,q=Tt,q/Tq
其中Tt,q是术语t在查询q中出现的次数,而Tq是查询q中存在的术语的总数(并且然后0<tft,q≤1)-动作“A10.计算tfq”。比较器355接着计算文档d的每一术语t的tf-idf权重wt,d,其等于文档d中的术语t的术语频率tft,d与文档语料库(从词汇存储库315提取)中的术语t的反向文档频率idft的乘积:
wt,q=tft,q·idft.
tf-idf权重wt,d表示根据仅取决于文档d的局部参数(术语频率tft,d)和取决于整个文档语料库的全局参数(反向文档频率idft)的组合的文档d中的术语t的实际重要性;特别地,tf-idf权重wt,d随着文档d中的术语t的重复(成比例地)和/或随着术语t在文档的语料库中的稀少程度(对数地,以便丢弃其影响)而增加。类似地,比较器350计算查询q的每个术语t的tf-idf权重wt,q(等于查询q中的术语t的术语频率tft,q与文档语料库中的术语t的反向文档频率idft的乘积):
wt,q=tft,q·idft.
然后,在T维向量空间(具有等于文档语料库中存在的术语T的总数T的维数)中表示文档d和查询q。术语t是向量空间的轴,而文档d和查询q分别定义文档向量和查询向量它们分别由对应的tf-idf权重wt,d和wt,q所指示的点来标识(当术语t不存在于文档d或查询q中时,将其设置为0)。此时,比较器350根据它们的向量的角度差(取决于它们常见的术语t)来计算查询q和文档d之间的相似性索引。特别地,相似性索引SIM(q,d)被设置为文档向量/>和查询向量/>之间的角度θ的余弦,等于向量/>和/>的标量积(scalar product)并且被长度正则化:
相似性索引SIM(q,d)随着角度θ从向量和/>对齐时的1(意味着文档d与查询q非常相似,因为查询q的所有术语t都存在于文档d中)单调递减到向量/>和/>正交时的0(意味着文档d与查询q非常不同,因为查询q的术语t都不存在于文档d中)-动作“A11.计算SIM”。
在根据本公开的实施例的解决方案中,调整器355根据语料库的文档的语义丰富度来调整它们的相似性索引。特别地,调整器355计算语料库的每个文档d的特异性(调整)因子ADJsd,等于其特异性指示符SRsd(从文档丰富度储存库330中提取的)的轴正则化函数:
ADJcd=1-k+k·SRsd/avg(SRs),
其中k是调谐参数(其中0<k≤1)。当文档d的特异性指示符SRsd等于其平均avg(SRs)时,特异性因子ADJsd等于1,而当文档d的特异性指示符SRsd高于其平均avg(SRs)时,它高于1,而当文档d的特异性指示符SRsd低于其平均avg(SRs)时,它低于1;调整参数k强调特异性指示符SRsd对特异性因子ADJsd(从k=0时的空值到k=1时的最大值)的影响-动作“A12.计算ADJs”。
另外或可替换地,调整器355同样计算语料库的每个文档d的复杂度(调整)因子ADJcd,等于其复杂度指示符SRcd的轴正则化函数(从文档丰富度存储库330提取):
ADJcd=1-k’+k’·SRcd/avg(SRc),
其中k’是与上述相同或不同的调谐参数(其中0<k’≤1)。同样在这种情况下,当文档d的复杂度指示符SRcd等于其平均值avg(SRc)时,复杂度因子ADJcd等于1,而当文档d的复杂度指示符SRcd高于其平均值avg(SRc)时,复杂度因子ADJcd高于1,并且当文档d的复杂度指示符SRcd低于其平均值avg(SRc)时,复杂度因子ADJcd低于1;再次调谐参数k’强调复杂度指标符SRcd对复杂度因子ADJcd的影响(从k=0时的空值到k=1时的最大值)-动作“A13.计算ADJc”。
此时,调整器355相对于查询q(先前由比较器350计算)调整每个文档d的相似性索引SIM(q,d),将其乘以特异性因子ADJSd、复杂度因子ADJcd或这两者(根据调整器355的配置):
SIM(q,d)=ADJsd·SIM(q,d),
SIM(q,d)=ADJcd·SIM(q,d)or
SIM(q,d)=ADJsd·ADJsd·SIM(q,d).
这样,具有高于1的特异性因子ADJSd(因为它在词法上更复杂)和/或具有高于1的复杂度因子ADJcd(因为它在词法上更复杂)的每个文档d的相似性索引SIM(q,d)增加,而具有低于1的特异性因子ADJSd(因为它在词法上更简单)和/或具有低于1的复杂度因子ADJcd(因为它在词法上更简单)的每个文档d的相似性索引SIM(q,d)降低(那些具有等于1的的特异性因子ADJSd和复杂度因子ADJcd的每个文档d的相似性索引SIM(q,d)保持不变)。上述相似性索引SIM(q,d)的不同调整的选择是在简单性和准确性相对要求之间的折衷(在任何情况下,具有在计算资源方面的附加要求,尤其是对于复杂度因子ADJcd的确定,其在实践中不应该是问题,因为相应的操作是离线执行的)-动作“A14.调整SIM”。
此时,通常搜索引擎345按照其(可能更新的)相似性索引SIM(q,d)的降序来对语料库的文档进行排名;搜索引擎345然后选择具有较高相似性索引SIM(q,d)的文档(例如,前10-20),其应当与查询q最相关-动作“A15.排序”。搜索引擎345现在返回这样选择的(最相关的)文档的列表给客户端120(通过web服务器335)作为对查询q的响应;客户端120的浏览器340接收该列表并将其显示在其监视器上,以便允许用户选择实际感兴趣的文档(如果有的话)—动作“A16.返回”。
现在参考图4A-图4B,示出了描述与根据本公开的实施例的解决方案的实现有关的活动的流程的活动图。
具体地,该图表示可用于用方法400对文档进行排名的示例性过程。在这方面,每个块可以对应于用于在服务器上实现指定的逻辑功能的一个或多个可执行指令。
在块S402开始,连续执行循环以索引文档语料库,其中收集器收集要包括在语料库中的任何新文档(例如,通过下载相对于循环的先前迭代在因特网中已添加或更新的页面的至少一部分)。然后,由索引器执行内部循环,以便处理任何新文档(添加或更新)或任何旧文档(删除)。为此,索引器在块S404验证是否还有任何新/旧文档要由它处理。如果是,则活动流在框S406根据要处理的文档的类型进行分支。如果文档是新的(即,其已被添加或更新),那么索引器在框S408处确定新文档的每一术语t的术语频率tft,d,且将其与新文档d的识别符相关联地保存到词汇库中的术语t的条目中(在必要时创建所述条目)。相反,如果文档是旧的(即,其已被删除),则索引器在框S410从词汇库中移除对应的信息。在两种情况下,过程然后返回到块S404;一旦没有新的/旧的文档仍然要被处理(当文档的语料库相对于循环的先前迭代没有改变时立即进行),则处理下降到块S412中。此时,索引器计算已受其改变(如果有的话)(因为任何新/旧文档含有)影响的文档语料库的每一术语t的反向文档频率idft,且将如此计算的每一反向文档频率idft保存到词汇存储库中的对应术语t的条目中。
在根据本公开的实施例的解决方案中,活动流在框S414根据搜索引擎的配置而机型分支。如果搜索引擎被配置为根据其特异性指示符定义文档的语义丰富度指示符,则在块S416,计算器计算文档语料库的术语t的反向文档频率idft的平均avg(idf),并将其保存到文档丰富度存储库中。
然后,当搜索引擎没有被配置为根据其特异性指示符来定义文档的语义丰富度指示符时,该过程从块S416或直接从块S414继续到块S418。现在执行进一步的内循环,以确定语料库的文档的语义丰富度指示符的对应分量。为此,计算器在此检验是否还存在新的/旧的关于循环的前一次迭代的文件要由它处理。如果是,则活动流在框S420根据搜索引擎的配置而进行分支。如果搜索引擎被配置成根据其特异性指示符来定义文档的语义丰富度指示符,则活动流在框S422处根据要处理的文档的类型再次分支。如果文档是新的,则在块S424,计算器计算新文档d的特异性指示符SRsd,并将其保存到丰富度文档库中的文档d的条目中(在必要时创建它)。相反,如果文档是旧的,则计算器在块S426从语义丰富度存储库中移除相应的信息。当搜索引擎未被配置为根据其特异性指示符来定义文档的语义丰富度指示符时,活动流在框S428处从框S424、从框S426或直接从框S420再次合并。此时,活动流根据搜索引擎的配置进一步分支。如果搜索引擎被配置为根据文档的复杂度指示符来定义文档的语义丰富度指示符,则在块S430,活动流根据要处理的文档的类型再次分支。如果文档是新的,则在块S432,解析器计算新文档d的复杂度指示符SRcd(通过解析新文档以识别其短语,包括其动词短语),并将其保存到丰富度文档库中的相应条目中。相反,如果文档是旧的,则在块S434,解析器从语义丰富度存储库中移除相应的信息。
然后,当搜索引擎没有被配置为根据文档的复杂度指示符来定义文档的语义丰富度指示符时,处理从块S432、从块S434或者直接从块S428返回到块S418;一旦没有新的/旧的文档仍然要被处理(当文档语料库相对于循环的先前迭代没有改变时立即进行),则处理下降到块S436。此时,活动流根据搜索引擎的配置进一步分支。如果搜索引擎被配置为根据文档的特异性指示符来定义文档的语义丰富度,在块S438计算器计算文档语料库的特异性指示符SRsd的平均avg(SRs),并将其保存到文档丰富度存储库中。然后,当搜索引擎没有被配置为根据其特异性指示符定义文档的语义丰富度指示符时,处理从块S438或直接从块S436继续到块S440。此时,活动流根据搜索引擎的配置进一步分支。如果搜索引擎被配置为根据文档的复杂度指示符来定义它们的语义丰富度指示符,则在块S442,计算器计算文档语料库的复杂度指示符SRcd的平均值avg(SRc),并将其保存到文档丰富度存储库中。
然后,当搜索引擎没有被配置为根据文档的复杂度指示符来文档的语义丰富度指示符以连续重复相同的操作时,处理从块S442或直接从块S440返回到块S402。
以完全独立的方式,每当搜索引擎接收到由任何客户端的浏览器提交给它的查询时,过程从块S444转到块S446;响应于此,比较器确定查询q的每个术语t的术语频率tft,q。在块S448,比较器计算查询q的每个术语t的tf-idf权重wt,q
然后执行循环,以通过VSM技术计算语料库的每个文档与查询之间的相似性索引。循环在块S450,其中考虑语料库的(当前)文档(从任意顺序的第一个文档开始)。在块S452,比较器计算文档d的每个术语t的tf-idf权重wt,d。然后,在块S454,比较器计算查询q和文档d之间的相似性索引SIM(q,d)(根据它们的向量的角度差,取决于它们的常见术语t)。
在根据本公开的实施例的解决方案中,活动流在框S456根据搜索引擎的配置而分支。如果搜索引擎被配置为根据其特异性指示符定义文档的语义丰富度指示符,则在框S458,调整器计算文档d的特异性因子ADJsd(等于从文档丰富度存储库中提取的其特异性指示符SRsd的轴正则化函数)。在块S460,调整器将文档d与查询q相关的相似性索引SIM(q,d)乘以特异性因子ADJsd。然后,当搜索引擎没有被配置为根据其特异性指示符来定义文档的语义丰富度指示符时,该过程从块S460或者直接从块S456继续到块S462。此时,活动流根据搜索引擎的配置进一步分支。如果搜索引擎被配置为根据文档的复杂度指示符来定义它们的语义丰富度指示符,则在块S464,调整器计算文档d的复杂度因子ADJcd(等于从文档丰富度存储库中提取的其复杂度指示符SRcd的轴正则化函数)。在块S466,调整器将文档d与查询q相关的相似性索引SIM(q,d)乘以复杂度因子ADJcd(可能已经乘以特异性因子ADJcd)。然后,当搜索引擎没有被配置为根据其复杂度指示符来定义文档的语义丰富度指示符时,处理从块S466或直接从块S462继续到块S468。此时,进行测试以验证语料库的最后一个文档是否已经被处理。如果不是,则活动流返回到块S450以对语料库的下一文档重复相同的操作。相反(一旦语料库的所有文档都已经被处理),循环通过下降到框S470中而退出。
此时,照常,搜索引擎按照其(可能更新的)相似性索引SIM(q,d)的降序来对语料库的文档进行排名,并且选择具有其较高值的文档。然后,在块S472,搜索引擎将这样选择的(最相关的)文档的列表返回给客户端(通过web服务器)作为对查询q的响应(利用接收该列表并将其显示在其监视器上的客户端的浏览器,以便允许用户选择实际感兴趣的文档,如果有的话)。然后,该过程返回到框S444,等待提交进一步的查询。
当然,为了满足局部和特定的要求,本领域技术人员可以对本公开应用许多逻辑和/或物理修改和变更。更具体地,尽管本公开已经参考其一个或多个实施例以一定程度的特殊性进行了描述,但是应当理解,形式和细节上的各种省略、替换和改变以及其他实施例是可能的。特别地,本公开的不同实施例甚至可以在没有前述说明中阐述的具体细节(诸如数值)的情况下实践,以提供对其更透彻的理解;相反,为了不使不必要的细节混淆本说明,可能省略或简化了公知的特征。此外,明确地意图是,结合本公开的任何实施例描述的具体元件和/或方法步骤可以作为一般设计选择的问题而并入任何其它实施例中。在任何情况下,每个数值应当被解读为由术语约修饰(除非已经进行),并且数值的每个范围应当旨在明确地指定沿着该范围内的连续体(包括其端点)的任何可能的数值。此外,序数或其他限定词仅用作标签以区分具有相同名称的元素,但其本身并不意味着任何优先级、优先次序或顺序。术语包括、包含、具有、含有和涉及(及其任何形式)应当具有开放的、非穷举的含义(即不限于所列举的术语),基于、取决于、根据其功能(及其任何形式)的术语应当被认为是非排他性的关系(即,具有所涉及的可能的另外的变量),术语“一/一个”应当被认为是一个或多个术语(除非另外明确指出),并且术语“用于……的装置”(或任何装置加功能的表述)应当被认为是被适配或配置用于执行相关功能的任何结构。
例如,实施例提供了一种用于对计算系统中的多个文档进行排名的方法。然而,文档可以是任何数量和任何类型(例如,文本、图像、音频、地图);此外,文档可以任何方式(例如,可从任何源下载、本地存储)在任何计算系统中可用(见下文)。
在一个实施例中,每个文档包括多个文档术语。然而,术语可以是任何数量和任何类型(例如,词、短语、元数据);此外,所考虑的术语是文档的全部或仅其一部分(例如,通过过滤掉停止词,诸如由对应语言的最常见的词组成)。
在一个实施例中,该方法包括在计算机的控制下的以下步骤。然而,这些步骤可以由任何计算机执行(参见下文)。
在一个实施例中,该方法包括接收查询。然而,可以以任何方式(例如,手动输入、自动创建、本地或远程预定义)接收查询。
在一个实施例中,查询包括一个或多个查询术语。然而,查询术语可以是任何数量和任何类型(相对于文档术语相同或不同);此外,查询可以具有任何结构(例如,关键字的简单列表、与任何逻辑运算符组合的关键字)。
在一个实施例中,查询术语用于选择文档。然而,查询可以用于任何目的(例如,用于任何信息检索应用,诸如搜索因特网中的页面或图书馆中的书籍,任何过滤应用,诸如在反垃圾邮件程序中)。
在一个实施例中,该方法包括计算查询和文档之间的对应相似性索引。然而,相似性索引可以是任何类型(例如,具有任何连续或离散值)。
在一个实施例中,根据查询术语和对应文档的文档术语之间的比较来计算每个相似性索引。然而,相似性索引可以以任何方式计算(例如,根据任何代数模型,诸如VSM、集合论模型、概率模型)。
在一个实施例中,该方法包括确定文档的对应语义丰富度指示符。然而,语义丰富度指示符可以是任何类型(例如,定量度量、定性水平),并且它们可以以任何方式确定(例如,根据词汇种类、句法复杂性、特征的数量、语义邻域密度、语义多样性、具体性、情感效价、成像能力或其任何组合)。
在一个实施例中,该方法包括根据对应的语义丰富度指示符来调整相似度索引。然而,可以以任何方式(例如,利用乘法函数或加法函数,线性地或以任何非线性方式,以连续或离散方式)调整相似性索引。
在一个实施例中,该方法包括根据已经调整的对应相似性索引对至少部分文档进行排名。然而,可以以任何数量和任何方式(例如,返回最相关文档的列表或直接返回它们,仅选择单个文档,简单地对所有文档排名以供将来使用)对文档进行排名。
在一个实施例中,所述确定相应语义丰富度指示符的步骤包括根据相应文档的任何稀少术语计算每个语义丰富度指示符。然而,语义丰富度指示符可以根据罕见术语以任何方式来计算(例如,基于它们的数量的任何线性或非线性函数、它们的具体相对于文档语料库或一般地相对于对应语言的任何度量)。
在一个实施例中,罕见术语由以低于频率阈值的频率存在于文档中的文档术语组成。然而,频率阈值可以以任何方式来定义(例如,根据文档术语的分布的任何统计参数,根据对应的语言被设置为预定义值)。
在一个实施例中,根据相应文档的任何罕见术语计算每个语义丰富度指示符的所述步骤包括根据文档中的文档术语的分布的统计分析来计算频率阈值。然而,可以以任何方式(例如,根据以任何方式组合的任何数量和类型的统计参数)计算频率阈值。
在一个实施例中,所述根据对应文档的任何罕见术语计算每个语义丰富度指示符的步骤包括计算文档术语的对应反向频率指示符。然而,可以以任何方式(例如,基于线性或非线性地计算每个术语的反向频率指示符。
在一个实施例中,每个反向频率指示符指示其中存在对应的文档术语的文档的分数的倒数。然而,可以以任何方式(例如,利用对数函数、任何其他非线性函数或者甚至线性函数)来定义反向频率指示符。
在一个实施例中,根据对应文档的任何罕见术语来计算每个语义丰富度指示符的所述步骤包括基于反向频率指示符的集中趋势参数来计算特异性阈值。然而,集中趋势参数可以是任何类型(例如,任何平均值,诸如算术、几何或调和、中值、众数);此外,特异性阈值可以以任何方式基于集中趋势参数(例如,将特异性阈值设置为等于集中趋势参数或其百分比)。
在一个实施例中,根据对应文档的任何罕见术语来计算每个语义丰富度指示符的所述步骤包括根据比文档中存在的文档术语的特殊性阈值高的反向频率指示符来计算每个语义丰富度指示符。然而,可以以任何方式(例如,根据对应的反向频率指示符的和、积或任何其他函数)计算每个语义丰富度指示符。
在一个实施例中,所述计算对应的反向频率指示符的步骤包括将对数变换应用于反向频率指示符。然而,对数变换可以是任何类型的(例如,基于具有任何基数的对数)。
在一个实施例中,所述确定相应语义丰富度指示符的步骤包括根据相应文档的句法复杂度来计算每个语义丰富度指示符。然而,语义丰富度指示符可以根据句法复杂度以任何方式来计算(例如,基于其任何量化的任何线性或非线性函数,诸如基于复杂句法单元、动词、介词、副词、形容词或其任何组合)。
在一个实施例中,所述根据相应文档的语法复杂度来计算每个语义丰富度指示符的步骤包括根据文档中存在的任何复杂语法单元来量化每个文档的语法复杂度。然而,复杂语法单元可以任何方式用于量化语法复杂度(例如,根据其数目,基于复杂语法单元的任何特性(例如其长度)应用权重函数)。
在实施例中,复杂语法单元由具有高于复杂度阈值的复杂度的任何语法单元组成。然而,可以以任何方式定义复杂句法单元(例如,超过预定义长度的每个动词短语、每个介词短语、动词/介词短语或其任何组合)。
在一个实施例中,所述量化每个文档的句法复杂度的步骤包括识别每个文档中存在的定义相应复杂句法单元的任何动词短语。然而,每个文档的动词短语可以任何方式识别(例如,通过以任何方式标记文档,例如使用马尔可夫模型或动态编程方法,或更一般地通过其任何注释、抽象和/或分析)。
在一个实施例中,该方法包括分别根据存在于对应文档中的罕见术语来计算语义丰富度指示符的对应特异性分量。然而,可以以任何方式根据每个文档的罕见词来计算每个文档的特异性分量(见上文)。
在一个实施例中,该方法包括分别根据对应文档的句法复杂度来计算语义丰富度指示符的对应复杂度分量。然而,可以以任何方式根据其语法复杂度来计算每个文档的复杂度分量(参见上文)。
在一个实施例中,该方法包括根据对应的特异性分量和复杂性分量的组合来调整每个相似性索引。然而,可以根据对应的特异性分量和复杂度分量的任何组合(例如,利用乘法函数和/或加法函数,线性地和/或以任何非线性方式)来调整每个相似性索引。
在一个实施例中,所述确定文档的相应语义丰富度指示符的步骤包括根据相应文档的长度指示符正则化每个语义丰富度指示符。然而,每个文档的长度指示符可以以任何方式定义(例如,根据其所有术语的数量、其没有停止词的术语、其短语、其句子),并且其可以用于以任何方式正则化语义丰富度指示符(例如,通过将其单独地应用于语义丰富度指示符的至少一部分组件或全局地应用于整个语义丰富度指示符,如其本身或根据其任何功能);在任何情况下,在简化的实现中(例如,当语料库的文档具有统一的长度时)也可以省略该特征。
在一个实施例中,所述调整相似性索引的步骤包括基于相应的语义丰富度指示符,将每个相似性索引乘以至少一个轴正则化函数。然而,轴正则化函数可以是任何数量(例如,语义丰富度指示符的每个分量一个,然后以任何方式组合和/或通过以任何方式组合语义丰富度指示符的分量,然后将单个轴正则化函数应用于它们的组合)和任何类型(例如,具有或不具有定制其调整参数的可能性)。
在一个实施例中,所述计算对应的相似性索引的步骤包括根据向量空间模型技术来计算相似性索引。然而,VSM技术可以是任何类型(例如,标准的、通用的、基于主题的)。
在一个实施例中,该方法包括返回响应于查询而被排名的文档的列表。然而,该列表可以是任何类型(例如,通过文档的地址(诸如因特网中的页面的URL)或以任何其它方式(诸如通过文档在数据库中的名称、文档在文件系统中的路径)来标识文档,并且它可以以任何方式(例如,本地或远程)返回。
在一个实施例中,该列表用于使得被调整的对应相似性索引的降序至少部分显示。然而,列表的文档可以出于任何目的(例如,用于浏览、下载、阅读它们)而以任何数目显示(例如,被划分为页面或全部一起)。
通常,如果用等同的方法来实现相同的解决方案(通过使用具有更多步骤或其部分步骤的相同功能的类似步骤,移除一些非必需的步骤,或添加另外的可选步骤),则类似的考虑适用;此外,可以以不同的顺序、同时或以交错的方式(至少部分地)执行这些步骤。
实施例提供了一种计算机程序,其被配置用于使计算系统执行上述方法。实施例提供了一种计算机程序产品,包括具有与其一起实施的程序指令的计算机可读存储介质,所述程序指令可由计算系统执行以使所述计算系统执行相同的方法。然而,计算机程序可以在任何计算系统上运行(参见下文)。此外,软件程序可以被实现为独立模块、实现为用于预先存在的软件程序(例如,搜索引擎)的插件或者甚至直接实现在软件程序中。在任何情况下,根据本发明实施例的解决方案甚至有助于利用硬件结构(例如,通过集成在半导体材料的一个或多个芯片中的电子电路)或者利用适当编程或以其他方式配置的软件和硬件的组合来实现。
一个实施例提供了一种系统,该系统包括被配置用于执行上述方法的步骤的装置。实施例提供了一种系统,该系统包括用于执行相同方法的每个步骤的电路(即,例如通过软件适当配置的任何硬件)。然而,该方法可以在任何服务器(例如,物理计算机、虚拟计算机、云服务)上执行以供任何数量和类型的客户端(例如,台式机、膝上型计算机、智能电话、平板电脑)使用,这些客户端经由任何网络(例如,局域、广域、全球、蜂窝或卫星类型)在它们之间通信,或者该方法可以在任何独立计算机上执行。
通常,如果系统具有不同的结构或包括等效部件或其具有其它操作特性,则类似的考虑适用。在任何情况下,其每个部件可以被分成更多的元件,或者两个或更多个部件可以被一起组合成单个元件;此外,每个组件可以被复制以支持并行执行相应的操作。此外,除非另外指明,不同组件之间的任何交互通常不需要连续,并且它可以是直接的或通过一个或多个中介间接的。
本发明可以是任何可能的技术细节集成水平的系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),所述计算机可读程序指令用于使处理器执行本发明的各方面。计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
上述特征可以组合如下。例如以上描述的特征的可能组合如下:权利要求2与权利要求1、权利要求3与权利要求2、权利要求4与权利要求3、权利要求5与权利要求4、权利要求6与权利要求1至5中任一项、权利要求7与权利要求6、权利要求8与权利要求7、权利要求9与权利要求6至8中任一项与权利要求2至5中任一项权利要求的特征、权利要求10与权利要求1至9中任一项、权利要求11与权利要求1至10中任一项、权利要求12与权利要求1至11中任一项、权利要求13与权利要求1至12中任一项的方法,权利要求14具有用于执行权利要求1至13中任一项的方法的指令,权利要求15具有用于执行权利要求1至13中任一项的每个步骤的装置(或电路)。

Claims (14)

1.一种用于对计算系统中的多个文档进行排名的方法,文档中的每个包括多个文档术语,其中方法包括在计算机的控制下:
接收包括一个或多个查询术语的查询用于选择文档;
计算查询与文档之间的对应相似性索引,相似性索引中的每一个是根据查询术语与对应文档的文档术语之间的比较来计算的;
基于与每个文档相关联的所述多个文档术语,确定文档的对应语义丰富度指示符,其中确定文档的对应语义丰富度指示符包括计算用于调整文档的相似性索引的特异性指示符和复杂度指示符,
其中计算特异性指示符包括:基于多个文档术语来标识对应文档的罕见术语并且确定与对应文档内的罕见术语相关联的密度,
其中罕见术语包括存在于文档中的、频率低于频率阈值的文档术语,并且
其中计算复杂度指示符包括:基于所述多个文档来确定多个动词短语和多个唯一短语,以确定与对应文档相关联的句法复杂度;
基于将计算特异性和复杂度指示符进行组合的计算,根据对应语义丰富度指示符调整针对多个文档中的每个文档的相似性索引;以及
根据被调整的对应相似性索引对至少部分文档进行排名以对其进行选择。
2.根据权利要求1所述的方法,其中,确定文档的语义丰富度指示符包括:
根据文档中的文档术语的分布的统计分析来计算频率阈值。
3.根据权利要求1所述的方法,其中,确定语义丰富度指示符包括:
计算文档术语的对应反向频率指示符,反向频率指示符中的每一个指示其中存在对应文档术语的文档的分数的倒数;
基于反向频率指示符的集中趋势参数计算特异性阈值;以及
根据高于文档中存在的文档术语的特异性阈值的反向频率指示符来计算语义丰富度指示符中的每一个。
4.根据权利要求3所述的方法,其中计算对应的反向频率指示符包括:
将对数变换应用于反向频率指示符。
5.根据权利要求1所述的方法,其中确定对应的语义丰富度指示符包括:
根据相应文档的句法复杂度来计算语义丰富度指示符中的每一个。
6.根据权利要求5所述的方法,其中,所述根据对应文档的句法复杂度来计算语义丰富度指示符中的每一个包括:
根据存在于文档中的任何复杂句法单元来量化文档的每一个的句法复杂度,复杂句法单元由具有高于复杂度阈值的复杂度的任何句法单元组成。
7.根据权利要求6所述的方法,其中量化文档中的每一个的句法复杂度包括:
识别定义相应的复杂句法单元的、存在于文档中的每一个的任何动词短语。
8.根据权利要求1所述的方法,其中所述方法包括:
分别根据对应文档的任何罕见术语来计算语义丰富度指示符的对应特异性分量,罕见术语由频率低于频率阈值的、存在于文档中的文档术语组成;
根据对应文档的句法复杂度计算语义丰富度指示符的对应复杂度分量;以及
根据对应的特异性分量和复杂度分量的组合来调整相似性索引中的每一个。
9.根据权利要求1所述的方法,其中所述确定文档的对应语义丰富度指示符包括:
根据对应文档的长度指示符来规范化语义丰富度指示符中的每一个。
10.根据权利要求1所述的方法,其中,所述调整相似性索引的步骤包括:
基于对应的语义丰富度指示符,将相似性索引中的每一个乘以至少一个轴正则化函数。
11.根据权利要求1所述的方法,其中所述计算对应的相似性索引包括:
根据向量空间模型技术计算相似度索引。
12.根据权利要求1所述的方法,其中所述方法包括:
响应于查询返回被排名的文档的列表,以使得以被调整的对应相似性索引的降序显示其至少一部分。
13.一种用于对多个文档进行排名的计算机可读存储介质,每个文档包括多个文档术语,计算机可读存储介质具有实现于其中的程序指令,程序指令由计算系统可执行以使计算系统:
接收包括一个或多个的查询术语的查询用于选择文档的;
计算查询与文档之间的对应相似性索引,相似性索引中的每一个是根据查询术语与对应文档的文档术语之间的比较来计算的;
基于与每个文档相关联的所述多个文档术语,确定文档的对应语义丰富度指示符,其中确定文档的对应语义丰富度指示符包括计算用于调整文档的相似性索引的特异性指示符和复杂度指示符,
其中计算特异性指示符包括:基于多个文档术语来标识对应文档的罕见术语并且确定与对应文档内的罕见术语相关联的密度,
其中罕见术语包括存在于文档中的、频率低于频率阈值的文档术语,并且
其中计算复杂度指示符包括:基于所述多个文档来确定多个动词短语和多个唯一短语,以确定与对应文档相关联的句法复杂度;
基于将计算特异性和复杂度指示符进行组合的计算,根据对应的语义丰富度指示符调整针对多个文档中的每个文档的相似度索引;以及
根据被调整的相应相似性索引对至少部分文档进行排名以对其进行选择。
14.一种用于对多个文档进行排名的计算系统,所述文档中的每个包括多个文档术语,其中所述计算系统包括:
用于接收包括一个或多个查询术语的查询的电路用于选择文档;
用于计算查询和文档之间的对应相似性索引的电路,相似性索引中的每一个是根据查询术语和对应文档的文档术语之间的比较来计算的;
用于基于与每个文档相关联的所述多个文档术语确定文档的对应语义丰富度指示符的电路,其中确定文档的对应语义丰富度指示符包括计算用于调整文档的相似性索引的特异性指示符和复杂度指示符,
其中计算特异性指示符包括:基于多个文档术语来标识对应文档的罕见术语并且确定与对应文档内的罕见术语相关联的密度,其中罕见术语包括存在于文档中的、频率低于频率阈值的文档术语,并且
其中计算复杂度指示符包括:基于所述多个文档来确定多个动词短语和多个唯一短语,以确定与对应文档相关联的句法复杂度;
用于基于将计算特异性和复杂度指示符进行组合的计算、根据相应的语义丰富度指示符来调整针对多个文档中的每个文档的相似性索引的电路;以及
用于根据被调整的相应相似性索引对文档的至少一部分进行排名以对其进行选择的电路。
CN201880065760.7A 2017-10-30 2018-10-19 基于文档的语义丰富度对文档进行排名 Active CN111194442B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/796,950 US11163811B2 (en) 2017-10-30 2017-10-30 Ranking of documents based on their semantic richness
US15/796,950 2017-10-30
PCT/IB2018/058140 WO2019086996A1 (en) 2017-10-30 2018-10-19 Ranking of documents based on their semantic richness

Publications (2)

Publication Number Publication Date
CN111194442A CN111194442A (zh) 2020-05-22
CN111194442B true CN111194442B (zh) 2023-07-25

Family

ID=66243136

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880065760.7A Active CN111194442B (zh) 2017-10-30 2018-10-19 基于文档的语义丰富度对文档进行排名

Country Status (6)

Country Link
US (1) US11163811B2 (zh)
JP (1) JP7356973B2 (zh)
CN (1) CN111194442B (zh)
DE (1) DE112018005076T5 (zh)
GB (1) GB2580577A (zh)
WO (1) WO2019086996A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201708767D0 (en) * 2017-06-01 2017-07-19 Microsoft Technology Licensing Llc Managing electronic documents
US11163811B2 (en) 2017-10-30 2021-11-02 International Business Machines Corporation Ranking of documents based on their semantic richness
US10977250B1 (en) * 2018-09-11 2021-04-13 Intuit, Inc. Responding to similarity queries using vector dimensionality reduction
US11113327B2 (en) * 2019-02-13 2021-09-07 Optum Technology, Inc. Document indexing, searching, and ranking with semantic intelligence
CN112100391B (zh) * 2019-05-31 2023-06-13 阿里巴巴集团控股有限公司 用户意图识别方法、装置、服务端、客户端及终端设备
US11651156B2 (en) 2020-05-07 2023-05-16 Optum Technology, Inc. Contextual document summarization with semantic intelligence
US11574128B2 (en) 2020-06-09 2023-02-07 Optum Services (Ireland) Limited Method, apparatus and computer program product for generating multi-paradigm feature representations
CN111967252A (zh) * 2020-08-29 2020-11-20 深圳呗佬智能有限公司 一种实体词表示学习方法、装置、计算机设备及存储介质
US11698934B2 (en) 2021-09-03 2023-07-11 Optum, Inc. Graph-embedding-based paragraph vector machine learning models
CN115408491B (zh) * 2022-11-02 2023-01-17 京华信息科技股份有限公司 一种历史数据的文本检索方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102737018A (zh) * 2011-03-31 2012-10-17 北京百度网讯科技有限公司 基于非线性统一权值对检索结果进行排序的方法及装置
US9336192B1 (en) * 2012-11-28 2016-05-10 Lexalytics, Inc. Methods for analyzing text
CN106991084A (zh) * 2017-03-28 2017-07-28 中国长城科技集团股份有限公司 一种文档评估方法及装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2606778A (en) 1946-11-19 1952-08-12 Anaconda Copper Mining Co Rock drill rod joint
US6480843B2 (en) 1998-11-03 2002-11-12 Nec Usa, Inc. Supporting web-query expansion efficiently using multi-granularity indexing and query processing
US6510406B1 (en) * 1999-03-23 2003-01-21 Mathsoft, Inc. Inverse inference engine for high performance web search
US6757646B2 (en) * 2000-03-22 2004-06-29 Insightful Corporation Extended functionality for an inverse inference engine based web search
JP2003157270A (ja) 2001-11-22 2003-05-30 Ntt Data Technology Corp 特許文献検索方法及び特許文献検索システム
MXPA06004513A (es) * 2003-10-21 2006-09-04 Intellectual Property Bank Dispositivo de analisis de caracteristicas de documento para documento que ha de examinarse.
US7716216B1 (en) 2004-03-31 2010-05-11 Google Inc. Document ranking based on semantic distance between terms in a document
JP2006031209A (ja) 2004-07-14 2006-02-02 Ricoh Co Ltd 全文検索システム、全文検索方法、プログラムおよび記録媒体
US20080077570A1 (en) * 2004-10-25 2008-03-27 Infovell, Inc. Full Text Query and Search Systems and Method of Use
CN101341483B (zh) 2005-07-13 2013-06-12 汤姆森路透社全球资源公司 用于搜索和显示法律判例历史的用户接口
US20070112867A1 (en) 2005-11-15 2007-05-17 Clairvoyance Corporation Methods and apparatus for rank-based response set clustering
US9311390B2 (en) * 2008-01-29 2016-04-12 Educational Testing Service System and method for handling the confounding effect of document length on vector-based similarity scores
JP5316158B2 (ja) 2008-05-28 2013-10-16 株式会社リコー 情報処理装置、全文検索方法、全文検索プログラム、及び記録媒体
JP5308786B2 (ja) * 2008-11-20 2013-10-09 Kddi株式会社 文書データ検索装置
US8180785B2 (en) 2009-06-30 2012-05-15 International Business Machines Corporation Method and system for searching numerical terms
US8122043B2 (en) 2009-06-30 2012-02-21 Ebsco Industries, Inc System and method for using an exemplar document to retrieve relevant documents from an inverted index of a large corpus
EP2480988A1 (en) 2009-09-25 2012-08-01 Shady Shehata Methods and systems for extracting keyphrases from natural text for search engine indexing
JP5406814B2 (ja) * 2010-10-19 2014-02-05 日本電信電話株式会社 コンテンツ推奨装置およびその動作方法
US9514281B2 (en) * 2011-05-03 2016-12-06 Graeme John HIRST Method and system of longitudinal detection of dementia through lexical and syntactic changes in writing
US20130268457A1 (en) * 2012-04-05 2013-10-10 Fujitsu Limited System and Method for Extracting Aspect-Based Ratings from Product and Service Reviews
US20140108006A1 (en) * 2012-09-07 2014-04-17 Grail, Inc. System and method for analyzing and mapping semiotic relationships to enhance content recommendations
JP2014106665A (ja) * 2012-11-27 2014-06-09 Hitachi Ltd 文書検索装置、文書検索方法
JP5832040B2 (ja) * 2014-01-31 2015-12-16 シャープ株式会社 情報処理装置、情報処理方法、プログラム、情報処理システムおよび表示装置
US10242071B2 (en) 2015-06-23 2019-03-26 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
WO2017011483A1 (en) 2015-07-12 2017-01-19 Aravind Musuluri System and method for ranking documents
CN106815252B (zh) 2015-12-01 2020-08-25 阿里巴巴集团控股有限公司 一种搜索方法和设备
US20180300323A1 (en) * 2017-04-17 2018-10-18 Lee & Hayes, PLLC Multi-Factor Document Analysis
CN107247743A (zh) 2017-05-17 2017-10-13 安徽富驰信息技术有限公司 一种司法类案检索方法及系统
US11163811B2 (en) 2017-10-30 2021-11-02 International Business Machines Corporation Ranking of documents based on their semantic richness

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102737018A (zh) * 2011-03-31 2012-10-17 北京百度网讯科技有限公司 基于非线性统一权值对检索结果进行排序的方法及装置
US9336192B1 (en) * 2012-11-28 2016-05-10 Lexalytics, Inc. Methods for analyzing text
CN106991084A (zh) * 2017-03-28 2017-07-28 中国长城科技集团股份有限公司 一种文档评估方法及装置

Also Published As

Publication number Publication date
DE112018005076T5 (de) 2020-06-18
CN111194442A (zh) 2020-05-22
US20190130025A1 (en) 2019-05-02
JP2021501402A (ja) 2021-01-14
GB2580577A (en) 2020-07-22
US11163811B2 (en) 2021-11-02
GB202006965D0 (en) 2020-06-24
WO2019086996A1 (en) 2019-05-09
JP7356973B2 (ja) 2023-10-05

Similar Documents

Publication Publication Date Title
CN111194442B (zh) 基于文档的语义丰富度对文档进行排名
US10360308B2 (en) Automated ontology building
US9336202B2 (en) Method and system relating to salient content extraction for electronic content
US10210201B2 (en) Method and system for App page recommendation via inference of implicit intent in a user query
US8660836B2 (en) Optimization of natural language processing system based on conditional output quality at risk
US9507867B2 (en) Discovery engine
US9183173B2 (en) Learning element weighting for similarity measures
CN107256267A (zh) 查询方法和装置
US10810378B2 (en) Method and system for decoding user intent from natural language queries
US20100262610A1 (en) Identifying Subject Matter Experts
US20210110111A1 (en) Methods and systems for providing universal portability in machine learning
US10037321B1 (en) Calculating a maturity level of a text string
US20170060834A1 (en) Natural Language Determiner
US9471581B1 (en) Autocompletion of filename based on text in a file to be saved
US20110099134A1 (en) Method and System for Agent Based Summarization
US20230142351A1 (en) Methods and systems for searching and retrieving information
CN112016017A (zh) 确定特征数据的方法和装置
US11899910B2 (en) Multi-location copying and context based pasting
CN116975202A (zh) 文档检索方法、装置、设备及存储介质

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