文档和信息检索方法及设备的制作方法

文档序号:6356900阅读:203来源:国知局
专利名称:文档和信息检索方法及设备的制作方法
背景技术
发明领域本发明涉及文档和/或信息检索,在其中与输入查询相关的文档和/或信息被检索,更具体而言,涉及一种检索方法和设备,其中包括通过布尔逻辑而彼此相关的多个项的输入查询被变换为矢量形式。
相关技术描述随着近些年来信息流通的增加,信息检索技术变得越来越重要。布尔模型、扩展布尔模型、模糊集合模型、矢量空间模型、概率模型以及网络模型是用于信息检索技术的模型的现有技术实例。这些现有技术信息检索模型被详述于Takenobu Tokunaga“InformationRetrieval and Language Processing”(University of Tokyo.Press,1999)和Ricardo Baeza/Yates和Berthier Ribeiro-Neto“ModernInformation Retrieval”(Addison-Wesley,1999)。其中,布尔模型是最经典和基础的模型,而矢量空间模型是最流行的模型。对布尔模型,相关文档是通过以下来定位的用与每个文档关联的查询项在逻辑上核对由布尔逻辑运算符如AND、OR或NOT描述的输入查询的项,从而定位相关文档。对矢量空间模型,矢量分量描述并对应于输入查询的每个项。与输入查询关联的矢量分量的值被设置为一。每个文档都由根据该文档中对应查询项的存在或不存在而具有一或零值的文档矢量来描述。分量值常常被加权。查询矢量与文档矢量的相似性被测量以表示查询和文档之间的相关性程度。
矢量空间模型通常被认为在以下方面优于布尔模型(1)解除(ease of)加权任何重要查询项;(2)解除(ease of)依照对用户查询的相关性程分类并显示检索结果;以及(3)解除(ease of)将检索结果中用户判断为需要或不需要的文档反馈给检索过程以便于用户所需的信息采集。
矢量空间模型不具有描述用户和文档查询项之间的逻辑关系的能力。布尔模型的特征是通过布尔逻辑函数例如布尔AND或OR函数来建立逻辑关系。如在参考“Information Retrieval and LanguageProcessing”中所述,为检索对有关“Restaurant of Chinese foodor Italian food located at Shibuya”的信息的用户查询,布尔模型可通过以下逻辑表达式准确地描述用户的查询Shibuya AND(Chinese food OR Italian food)AND Restaurant然而,布尔模型不能根据对用户的重要性来加权查询项,并且检索结果不能根据相关性程度来分类。
矢量空间模型将这样的用户查询描述为{Shibuya Chinese food Italian food Restaurant}借助矢量空间模型,有可能加权对用户重要的查询项并分类检索结果,但存在检索到位于非Shibuya的地方的中国餐馆和意大利餐馆的可能性。
为缓解如以上所述的布尔模型的缺点,已提出了扩展布尔模型。扩展布尔模型克服了与第(1)和(2)项关联的问题但不解决第(3)项的问题。我不知道具有矢量和布尔模型的理想特性的检索模型。
发明概述根据本发明的一个方面,响应于查询,所需文档项或信息项从多个文档项和/或信息项中被检索。所述项由项索引矢量来识别。所述查询包括以布尔逻辑形式而彼此相关的多个查询项。所述方法包括将布尔逻辑形式的查询项变换为经变换的矢量形式,以及响应于(1)查询项的经变换的矢量形式,和(2)索引矢量的相似性测量,检索所需的项。
优选的是,变换步骤包括通过使用多个第一索引矢量来计算(1)平方和矩阵以及(2)计算所述平方和矩阵的本征矢量和本征值,所述第一索引矢量具有表示多个查询项的每个存在或不存在的分量。平方和矩阵是在从查询产生的所有第一索引矢量的基础上被计算的。
变换步骤进一步优选地包括从本征矢量中选择基本矢量,其中基本矢量构成子空间。
相似性测量优选地包括计算第一索引矢量和基本矢量之间的内积,以及采用本征值的加权系数。
检索步骤优选地包括比较相似性测量与预定阈以确定每个项是否与查询相关。加权系数和阈优选地被改变成使预定评价量度最大。
优选的是,响应于(1)尽管与查询相关但被判断为不相关的第一索引矢量,和(2)尽管与查询不相关但被判断为相关的第一索引矢量的至少一个,平方和矩阵被修改。
优选的是,响应于用户决定(1)检索项符合查询和(2)检索项不符合查询的至少一个,平方和矩阵在一个实施例中被修改。
在另一个实施例中,平方和矩阵在另一个索引矢量的基础上被修改,该索引矢量具有表示每个项中所包括的每个索引项的存在或不存在的分量。
优选的是,通过使用在用户判断与用户请求一致的项中包括的所述另一个索引矢量的平均矢量,或者在用户判断为不一致的项中包括的所述另一个索引矢量的平均矢量,从而计算反馈矢量。每个另一个索引矢量和反馈矢量之间的第二相似性被测量。第三相似性是通过使用首先提及的相似性测量和第二相似性测量来计算的。每个项对查询的相关性是通过比较第三相似性测量与预定阈来判断的。
平方和矩阵优选地根据以下来计算S=Σfi∈Ω1fifiT]]>其中fi表示与查询相关的项的索引矢量,而Ω1表示相关项可以取的所有第一索引矢量的集合。
优选地用包括以下的设备来进行检索(1)输入单元,用于接受包括通过布尔逻辑而彼此相关的多个查询项的查询;以及(2)数据处理单元,其被连接以响应于输入单元。数据处理单元被编程以响应于查询,用于(1)将该查询变换为矢量形式,以及(2)测量项索引矢量和查询的矢量形式的相似性以确定哪个项与查询对应。被连接以响应于数据处理单元的输出装置提供确定哪个项与查询对应的指示。
数据处理单元优选地被编程以(1)通过使用(a)第一索引矢量,其具有表示查询中包括的每个查询项的存在和不存在的分量,以及(b)相关于查询的文档可以取的所有第一索引矢量,从而计算平方和矩阵;(2)计算所述平方和矩阵的本征矢量和本征值;(3)从本征矢量中选择构成子空间的基本矢量;(4)在项索引矢量和基本矢量之间的内积以及采用本征值的加权系数的基础上测量每个项和查询之间的第一相似性;(5)比较第一相似性与预定阈以确定每个项是否相关于所述查询;以及(6)将判断结果输出到输出单元。
数据处理单元优选地被编程以响应于(1)尽管与查询相关但被判断为不相关的第一索引矢量,和(2)尽管与查询不相关但被判断为相关的第一索引矢量的至少一个而修改平方和矩阵。
本发明的另一个方面涉及一种用于控制数据处理单元的程序,该数据处理单元被用于帮助从多个文档项和/或信息项中检索文档项和/或信息项。每个项都由索引矢量来识别。检索响应于包括通过布尔逻辑而彼此相关的多个查询项的查询。所述程序使数据处理单元将查询变换为矢量形式并测量项索引矢量和查询的矢量形式之间的相似性以确定哪个项与查询对应。
依照一个实施例,所述程序使数据处理单元响应于(1)尽管与查询相关但被判断为不相关的第一索引矢量,和(2)尽管与查询不相关但被判断为相关的第一索引矢量的至少一个而修改平方和矩阵。
基于对本发明几个特定实施例的以下详述的考虑,特别是当结合附图考虑时,本发明的以上和再进一步的目的、特点和优点将变得明显。
附图简述

图1A是本发明第一优选实施例的工作的流程图;图1B是在描述如何优选地执行确定用于图1A相关性判断的参数的步骤中有用的流程图;图2是本发明第二优选实施例的工作的流程图;图3A是本发明第三优选实施例的工作的流程图;图3B是本发明第四优选实施例的工作的流程图;图4是本发明第五优选实施例的工作的流程图;以及图5是依照本发明的文档检索设备的优选实施例的方块图。
附图详述在描述本发明的优选实施例之前,与本发明关联的理论被讨论。
令Q(w1,..,wN)(以下被称为Q)表示基于布尔模型的查询。文档i的索引矢量(以下在某些情况下被简称为“矢量”)由fiT=(b1,..,bN)来表示,其中T表示转置而bn表示二进制变量(1或0),其表示wn是否被提取为文档i中的索引项。文档i对查询Q的相关性通过匹配用于文档i的矢量fi和通过将布尔查询Q变换为矢量而获得的几个N维矢量来确定。
为将布尔查询Q变换为矢量,假定布尔查询Q由N个查询项组成,该查询项有时被称为索引项。在此情况下,查询Q可在理论上被变换为2N-1个索引矢量。令Ω1表示与查询Q相关的文档在2N-1个索引矢量中可以取的所有可能索引矢量的集合,并令Ω0表示与查询Q不相关的索引矢量的集合;因此Ω0不包括Ω1。
为了举例,考虑先前提及的布尔模型。输入查询Q被假定为“Shibuya AND(Chinese food OR Italian food)AND Restaurant)。如以上所述的与该输入查询Q相关的文档可以取的所有可能索引矢量的集合Ω1包括三个矢量f1T=(1011)、f2T=(1101)和f3T=(1111)。在该实例中,(1)Shibuya、(2)Chinese food、(3)Italian food和(4)Restaurant分别被变换为f1T、f2T和f3T中的每个的第一、第二、第三和第四项。由于Shibuya和Restaurant必须出现于待检索的文档中,f1T、f2T和f3T中的每个的第一和第四项具有二进制值“1”。在f1T中,第二和第三项分别是二进制值0和1,表示待检索的文档不具有Chinese food,但的确具有Italian food。在f2T中,第二和第三项分别是二进制值1和0,表示待检索的文档具有Chinese food,但不具有Italian food。在f3T中,第二和第三项分别是二进制值1和1,表示待检索的文档具有Chinese food和Italian food。矢量集合Ω0是除了三个矢量f1T、f2T和f3T以外的矢量的集合;f1T、f2T和f3T由Ω1来限定,因此Ω1与Ω0互斥。
因此,所有可能索引矢量的索引矢量被包括在集合Ω0或集合Ω1中。因此,任何文档i是否相关于查询Q是由文档i的矢量fi被包括在集合Ω1和集合Ω0的哪个中来确定的。用于每个文档i的矢量fi和从查询Q得到的矢量集合Ω1之间的相似性被测量。如果用于特定文档j的矢量fj和从查询Q得到的矢量集合Ω1之间的相似性超过预定值,则文档j的矢量fj被表示为集合Ω1的一员。句子矢量集合模型(SVSM)相似性(被公开于Takahiko Kawatani“Text Procesing bySentence Vector Set Model”,Research Report on NaturalLanguage Processing,Information Processing Society ofJapan,2000-NL-140,pp.31-38(2000))被用作相似性尺度。根据SVSM相似性,可使用集合Ω1中包括的所有矢量的平方和矩阵(稍后描述)的本征矢量和本征值来准确测量矢量fi和矢量集合Ω1之间的相似性。
图5的文档检索设备100是包括输入单元110的计算机系统,该输入单元响应于表示用于检索任何所需文档的布尔查询Q的用户输入。可替换的是,反馈装置(未示出)提供基于检索结果的反馈信息给输入单元110。输入单元110得到表示被提供给输入单元110的查询的输出信号。
单元110的输出信号被连接于计算单元120的输入。单元120,典型为经编程的通用计算机的中央处理单元,响应于来自输入单元110的查询和所存文档中的索引信息而检索文档文件130中存储的文档。计算单元120包括存储器系统122,其包括随机存取存储器(RAM)和经编程的存储器,用于使单元120执行图1、2、3或4的步骤。单元120响应于单元110的输出信号和所存文档中的索引信息以及系统122的被编程的存储器而将检索结果递送给输出单元140。
图1A和1B合起来是计算单元120依照本发明第一实施例执行的步骤,即在存储器系统122的经编程的存储器中存储的步骤的流程图。
在步骤11期间,计算单元120响应于来自输入单元110的布尔逻辑形式的查询Q。然后,在步骤12期间,计算单元120计算平方和矩阵,并且在步骤13期间,单元120计算从布尔逻辑到输入查询和文件130存储的文档中的索引信息之间的关系的矢量形式的变换的本征值和本征矢量。在步骤14期间,单元120确定用于输入查询对文件130存储的文档中的索引信息的相关性的参数。单元120在步骤15期间执行检索工作。
在工作中,输入单元110在查询输入步骤11期间得到布尔逻辑形式的查询Q。Ω1表示相关于查询Q的文档可以取的所有可能索引矢量的集合。在平方和矩阵计算步骤12期间,单元120依照方程(1)从矢量集合Ω1中包括的所有矢量来计算平方和矩阵SS=Σfi∈Ω1fifiT.........(1),]]>
其中fi是矢量集合Ω1中的索引矢量。对于有关Shibuya、Chinesefood、Italian food和Restaurants的先前实例,S=Σfi∈Ω1fifiT=Σλ=13fifiT]]>=10111011+11011101+11111111]]>=1011000010111011+1101110100001101+1111111111111111]]>=3223221221223223]]>单元120在本征值/本征矢量计算步骤13期间计算平方和矩阵S的本征值和本征矢量。
令λm和m分别表示第m个本征值和本征矢量,并且令R表示矩阵S的等级。在相关性判断参数确定步骤14期间,单元120根据方程(2)来计算矢量集合Ω1和Ω0中的索引矢量fi和从查询Q得到的矢量集合Ω1之间的相似性riri=[Σm=1Lλm(φmTfi)2Σm=1Lλm2||fi||2]1/2.........(2).]]>其中(mTfi)表示内积。单元120测量即计算用于可从具有N个索引项的查询Q产生的所有索引矢量(编号为2N-1)的相似性ri。为进行该测量,单元120以迭代方式从实验上确定在以下描述的三个参数L、α和β。
在方程(2)中,L是所使用的本征值和本征矢量的数量。L维子空间由作为基本矢量的L个本征矢量所限定(spanned);L由此分别具有最小和最大值1和R。对于L的值,有利的是尽可能小,从而减小在从文件130中检索文档的过程中的单元120的处理时间,同时达到高性能。
每个本征值都具有上限值β。本征值按比例缩放即加权方程(2)的相似性计算。然而,原始的计算本征值的使用不总是产生优选的结果。因此,本征值具有β的预定所选上限值。大于预定值β的所有本征值被削减到β,而不管获得最佳结果所需的阶。β的值是根据从第一常数值到第二常数值的范围内的连续数(sequential number)从实验上确定的。
给定文档是否相关于查询Q是由文档索引矢量和矢量集合Ω1的相似性是否超过阈α来确定的。从0到1逐步变化的阈α是从实验上确定的。
图1B是迭代运算计算机100在方块14期间执行以确定得到最接近布尔请求Q的文档的L、α和β值的详细流程图。在相关性判断参数确定步骤14期间,文档对布尔查询Q的相关性是通过使用所有可能的索引矢量来判断的,同时值L、β和α被依次变化。使评价量度(被称为F量度)最大化的值L、β和α被获得。
在与可被检索的文档关联的2N-1个索引矢量方面,A(在检索过程开始之前已知的数)表示相关索引矢量的数量,B是作为从方程(2)计算的相似性值ri的结果被判断为相关的索引矢量的数量(即,具有超过阈α的相似性值的索引矢量的数量),而C是B中被判断为与查询Q相关的相关索引矢量的数量。在涉及Shibuya的餐馆的先前实例中,相关文档索引矢量是(1,0,1,1)、 (1,1,0,1)和(1,1,1,1),因此A=3。然后,单元120将再调用“R”计算为R=C/A,并且将精度“P”计算为P=C/B。在R和P具有相等的权重的情况下,单元120将F量度计算为F=2×R×P/(R+P)....(3)更具体而言,当在运算16期间首先进入方块14时,单元120从其存储器122重试L、α和β的初始值,它们是L-1、α=0和β=第一常数。然后,单元120前进到运算17,在该运算期间单元120针对L、α和β的初始值依照方程(2)为矢量集合Ω1和Ω0中的每个索引矢量fi计算相似性ri。然后,在运算18期间,计算单元120使用在步骤17期间计算的ri的值和阈α的值依照先前讨论的原理来计算A、B、C、R和P。然后,在运算19期间,计算单元120从在运算18期间确定的R和P的值计算F量度。单元120依照方程(3)来计算F。在运算18期间计算的F的值与导致F被计算的L、α和β的值一起被存储在存储器系统122的RAM中。
然后在运算20期间,单元120确定计算单元120是否已针对L、α和β的所有组合执行了运算17、18和19。如果单元120在运算20期间确定尚未处理L、α和β的所有组合,则单元120前进到运算21,L、α和β之一的值在该运算期间被增量。然后用L、α和β的经增量的值来重复运算17-19。单元120重复运算17-19直到运算20用信号通知L、α和β的所有可能值已被考虑。当运算20用信号通知L、α和β的所有可能值已被考虑时,单元120前进到运算21,在该运算期间单元120确定F的最大所存值(即Fmax)和与Fmax关联的L、α和β的值。与Fmax关联的L、α和β的值由此完成布尔查询Q到集合Ω1的矢量的转置。在单元120完成运算21之后,单元120前进到图1A的检索步骤15。
在检索步骤15(图1A)期间,单元120确定文档文件130中存储的每个文档与经转置的查询的相关性即相似性被判断。单元120将该相似性输出为检索结果。单元120通过使用方程(2)来确定相似性,其中fi表示文件130中文档i的索引矢量,并且在运算21期间确定的值L、α和β被用作参数。其它点与现有技术中相同。
图2是单元120依照本发明的第二优选实施例执行的运算的流程图。图2的方块11-14与图1A的方块11-14相同。这样,在方块11期间,输入110将布尔逻辑查询Q提供给计算单元120;在方块12期间,单元120执行计算平方和矩阵的步骤;并且在方块13期间,单元120计算本征值和本征矢量。在方块14期间,单元120象在图1A的实施例中一样确定参数。这样,通过处理方块11到14,布尔逻辑形式的所输入的查询Q被变换为矢量形式。
然后,单元120前进到方块25,在该方块期间单元120基于从相关性判断参数确定步骤14获得的结果来判断反馈是否必要。如果单元120确定(1)尽管被包括在相关索引矢量中,即在矢量集合Ω1中,但索引矢量被判断为不相关,或者(2)尽管被包括在不相关索引矢量中,即在矢量集合Ω0中,但索引矢量被判断为相关,或者(3)在由方块24表示的第二次或较晚的迭代过程中评价量度F不收敛,则单元120确定反馈是必要的。如果在运算24期间单元120确定评价量度F已收敛,或者每次重复反馈时,量度F被减小,则不执行反馈,并且程序前进到象结合图1A而描述的一样被执行的检索工作15。如果单元120在步骤25期间确定反馈不必要,则亦执行检索工作15。
如果单元120在运算25期间确定反馈是必要的,并且在运算24期间确定F尚未收敛,则单元120前进到方块26,单元120在该方块期间选择用于反馈运算的矢量。单元120然后前进到方块27,单元120在该方块期间使用L、α、β、a和b反馈矢量来修改平方和矩阵。单元120然后前进到方块28,所述单元在该方块期间确定用于使相似性即相关性判断能被执行的参数。
在反馈矢量选择步骤26期间,单元120确定待反馈的索引矢量,即单元120选择作为不需要的结果而获得的索引矢量。这样,在步骤26期间,单元120创建与反馈运算关联的矢量集合。执行运算26的一种方式是令rmin表示相关索引矢量的相似性的最小值,而rmax表示不相关索引矢量的相似性的最大值。在此情况下,最后结果相似性小于rmax(或来自方块14的第一迭代结果小于rmax)的相关索引矢量被加给集合Ω+,而相似性大于rmin的不相关索引矢量被加给集合Ω-。集合Ω+和Ω-在第一迭代期间被保持空。
在平方和矩阵修改步骤27期间,单元120计算依照以下的方程(4)S1=S+aΣf∈Ω+ffT-bΣf∈Ω-ffT...........(4).]]>其中a和b是单元120计算的参数,并且矩阵S1的本征值和本征矢量被获得。在方程(4)中,S表示在方块12期间单元120计算的平方和矩阵。在相关性判断参数确定步骤28期间,单元120执行与相关性判断参数确定步骤14相同的处理。另外,在步骤28期间,单元120计算评价量度,同时变化参数a和b的值,从而确定使所述评价量度最大的参数L、α、β、a和b的值。单元120以与该单元在图1B的运算18期间确定A和B相同的方式在运算28期间确定a和b的值。
在单元120执行步骤28之后,该单元再次执行步骤25以确定进一步的反馈是否必要。在确定进一步的反馈不必要或F已收敛之后,单元120依次重复运算24-28,直到该单元执行检索步骤15。
图3A是结合本发明的第三实施例,通用计算机100被编程以采取的步骤的流程图。一开始,程序122激活单元120以执行方块200,单元120在该方块期间执行图2中所示的步骤。然后存储器122在运算29期间激活单元120和显示输出装置140,因此该显示向用户提供检索结果的可视指示。然后,基于所显示的检索信息,通过借助输入110将信号选择性地提供给单元120,用户在操作34期间决定有关检索结果的反馈是否必要。如果用户决定反馈是必要的,则用户激活输入110,并且单元120响应于输入110而前进到方块30。在方块30期间,用户响应于输出显示130而激活输入110,从而使单元120被提供了表示所显示文档需要或不需要的信号。然后单元120前进到方块31,在输入110在运算30期间提供给单元120的输入和查询Q的基础上,通过使用索引矢量fi,单元120在方块31期间修改平方和矩阵。然后单元120前进到方块32,单元120在该方块期间确定用于相关性判断的参数L、α、β、a和b。存储器122然后激活单元120以执行方块33,单元120在该方块期间从文件130中检索文档。
在图3A中,以与按照图1A和2的检索操作相同的方式首先执行检索操作33。在检索结果显示步骤29期间,单元120激活输出140以提供检索结果给用户。用户评价所显示的结果并决定反馈是否必要。如果(1)用户所需的文档在检索结果中,或者(2)用户需要重新检索相关于所需文档的所检索文档,或者(3)用户确定非所需的文档错误地存在于检索结果中,则该用户在用户反馈选择步骤30中指定这样的所需或非所需文档。用户所需的每个文档都被称为“正文档”,而每个非所需的文档都被称为“负文档”。两个或多个这样的文档可被指定。在正文档中包括的索引矢量在矢量集合Ωpf中被加在一起,而在负文档中包括的索引矢量在矢量集合Ωnf中被加在一起。矢量集合Ωpf和Ωnf最初是空的,即具有零值。
在平方和矩阵修改步骤31期间,单元120依照方程(5)来计算平方和矩阵S2=S1+a1Σf∈ΩpfffT-bΣf∈ΩnfffT..........(5).]]>其中,a1和b1是所计算的参数,并且矩阵S2的本征值和本征矢量被获得,而符号S1表示单元120在方块27(图2)期间计算的平方和矩阵。
在相关性判断参数确定步骤32期间,单元120执行该单元在相关性判断参数确定步骤14中执行的相同处理。另外,在步骤32期间,单元120针对参数a1和b1的不同值来计算评价量度。以与结合图1b所描述的相同的方式,单元120确定导致评价量度F被最大化的参数a1和b1的值。步骤32不同于步骤14,这是因为在步骤32期间,单元120(1)去除了在索引矢量集合Ω1中包括的任何负文档的任何索引矢量,并且(2)如果正文档的索引矢量不被包括在集合Ω1中,则将该正文档的索引矢量添加给集合Ω1。与图1A和2的检索步骤15同样地执行检索步骤33。在步骤29期间,单元120将步骤33的检索结果提供给输出240的显示。
在图3中,在反馈指定步骤30、平方和矩阵修改步骤31、相关性判断参数确定步骤32和检索步骤33期间,正和负文档的索引矢量的分量表示查询中包括的查询项是否被用作文档中的索引项。然而,每个文档中的所有现有项可被用作矢量分量。
接下来,结合图3B中所示的操作来描述每个文档中现有项被处理为矢量的实例。在图3B的操作中,每个正和负文档的矢量被表示为g。由于索引项在每个文档中通常是不同的,文档索引项需要被分类以使矢量g的分量能对应于相同的项,即使是在不同的文档中。在步骤30期间,在用户在操作34期间确定反馈为必要之后,用户确定正和负文档的相应矢量集合Ωpf和Ωnf,即在操作30期间,用户选择所需(正)和非所需(负)文档。
然后,在操作36期间,单元120依照以下来修改平方和矩阵并计算矩阵S3的本征值和本征矢量S3=S1+a2Σg∈ΩpgggT-b2Σg∈ΩngggT.......(6).]]>方程(6)中矩阵S1的行和列的维数通常小于矢量g的行和列。因此,在矩阵S1的尺寸被调节之后,行和列需要被移动,从而使矩阵S1的第i列和第i行对应于与矢量g的第i个分量的索引项相同的索引项。如果对应于矢量g的第i个分量的项不被用于查询,则矩阵S1的第i列和第i行被设置为零。
在操作36之后,单元120前进到相关性判断参数确定步骤32,该步骤以与结合图2和3B中的操作32和28而描述的相同的方式被执行。在检索步骤33期间,单元120判断对文件(即数据库)130中存储的每个文档的相关性,并输出检索结果到输出140。在步骤33期间,单元120依照方程(7)来计算相似性ri=[Σm=1Lλm(φmTgi)2Σm=1Lλm2||gi||2]1/2.........(7).]]>在方程(7)中,gi表示文档i的矢量,并且如上述被确定的值被用作参数。在实施本发明的过程中,其它点可与在现有技术中相同。
图4是单元120依照本发明第五实施例执行以检索文档的操作的流程图。一开始,如方块200所示,单元120执行图2的检索步骤。然后,如方块29所示,单元120提供检索文档给输出140的显示。在操作34期间,用户响应于所显示的文档并确定反馈是否必要。然后在操作30期间,用户选择需要和不需要的文档。然后单元120依次前进到步骤41和42,在该步骤期间,所述单元分别计算反馈矢量并执行文档检索。
图4的处理步骤200、29、34和30与图3A和3B中的对应步骤相同。在反馈矢量计算步骤41期间,单元120首先计算正文档的矢量集合Ωpg中的平均矢量gp和负文档的矢量集合Ωng中的平均矢量gn。随后,在步骤41期间,单元120依照方程(8)来计算反馈矢量g’g′=a3gp-b3gn……(8),其中a3和b3是参数。
在检索步骤42期间,单元120首先计算反馈矢量g’和待检索文档i的索引矢量gi之间的相似性r’i。单元120依照方程(9)来计算r’ir′i=giTg/(‖gi‖‖g′‖ ……(9),其中,T表示转置,并且‖g’‖表示矢量g’的范数。
随后,在检索步骤42期间,单元120确定待检索文档i的相似性r*i为一个函数,如加权平均。单元120依照方程(10)通过修改方块15(图1A和2中)来计算待检索文档i的相似性rir′i=h(ri,r′i……(10).
在检索步骤42期间,单元120亦根据文档相关性的程度来分类所检索的文档。在操作29期间,文档被显示于输出140,从而使最相关于用户的输入查询Q的文档被首先显示,而最不相关的被最后显示。在单元120变化参数a3和b3的值的同时,最佳值被确定。这可通过在此以前已被实践的技术来实施。
如在以下结合第一实例所述,本发明是很有效的,在该实例中,由八个查询项w1-w8组成的布尔逻辑形式的查询Q被表示为Q=(w1OR w2OR w3OR w4)AND(w5OR w6)AND w7AND w8由于在查询Q中有八个索引项,因此有存在(28-1=255)个索引矢量的可能性。这255个索引矢量的45个相关于查询Q。通过使用图1A和1B的程序,这255个索引矢量被分别判断它们是否相关于查询Q。然后,100%的F量度被获得。这表示相关索引矢量集合和不相关索引矢量集合可被很好地区分。在现有技术中,在应用矢量空间模型的情况下,F量度是87.1%。因此,检索性能已被明显提高。
现在考虑第二示例布尔逻辑查询Q=((w1OR w2OR w3OR w4)AND((NOT w5)OR w6)AND w7ANDw8在现有技术矢量空间模型中,该实例的F量度是85.4%,而对于图1A和1B的实施例是94.3%。当对该第二查询Q进一步执行图2的程序时,100%的量度被获得。这些事实表示,与布尔模型等效,本发明已实现了相关文档和不相关文档之间的可区分性,同时保留了现有技术矢量空间模型的优点。
尽管已描述并说明了本发明的特定实施例,显然可在如被限定于所附权利要求中的本发明的真精神和范围内进行对具体说明并描述的实施例的细节中的改变。例如,本发明的原理可被用于通常的信息检索而不被局限于文档检索。
权利要求
1.一种从多个文档项和/或信息项中检索所需文档项或信息项的方法,所述项由项索引矢量来标识,所述方法是响应于包括多个查询项的查询而实施的,所述查询项以布尔逻辑形式而彼此相关,所述方法包括将布尔逻辑形式的查询项变换为经变换的矢量形式,以及响应于查询项和项索引矢量的经变换的矢量形式的相似性测量来检索所需项信息。
2.权利要求1的方法,其中变换步骤包括(a)通过使用多个第一索引矢量来计算平方和矩阵,所述第一索引矢量具有表示多个查询项的每个存在或不存在的分量,平方矩阵是在从所述查询产生的所有第一索引矢量的基础上被计算的;以及(b)计算所述平方和矩阵的本征矢量和本征值。
3.权利要求2的方法,其中变换步骤进一步包括从本征矢量中选择基本矢量,该基本矢量构成子空间。
4.权利要求3的方法,其中相似性测量包括计算第一索引矢量和基本矢量之间的内积,以及采用本征值的加权系数。
5.权利要求4的方法,其中检索步骤包括比较相似性测量与预定阈以确定每个所述项是否与所述查询相关。
6.权利要求5的方法,进一步包括改变加权系数和阈以使预定评价量度最大。
7.权利要求2的方法,进一步包括响应于以下的至少一个来修改平方和矩阵的步骤(a)尽管与所述查询相关但被判断为不相关的第一索引矢量,和(b)尽管与所述查询不相关但被判断为相关的第一索引矢量。
8.权利要求2或7的方法,进一步包括响应于(a)用户判定检索项符合查询和(b)判定检索项不符合查询的至少一个来修改所述平方和矩阵。
9.权利要求2或7的方法,进一步包括在另一个项索引矢量的基础上修改所述平方和矩阵,该项索引矢量具有一个分量,其表示每个所述项中包括的每个索引项的存在或不存在,并且对应于(a)用户判断符合用户请求的文档或(b)用户判断不符合用户请求的文档。
10.权利要求9的方法,进一步包括(a)通过使用在用户判断符合用户请求的所述项中包括的所述另一个索引矢量的平均矢量,或者在用户判断为不符合的所述项中包括的所述另一个索引矢量的平均矢量,来计算反馈矢量;(b)测量每个项索引矢量和反馈矢量之间的第二相似性;(c)通过使用权利要求4的所述相似性测量和第二相似性测量来计算第三相似性;以及(d)通过比较第三相似性测量与预定阈来判断每个项是否相关于所述查询。
11.权利要求2的方法,其中所述平方和矩阵是依照以下来计算的S=Σfi∈Ω1fifiT]]>其中fi表示与所述查询相关的所述项的索引矢量,而Ω1表示相关项可以取的所有所述第一索引矢量的集合。
12.用于从多个文档项和/或信息项中检索所需文档项和/或信息项的设备,每个所述项由项索引矢量来识别,所述设备包括(a)输入单元,用于接受包括通过布尔逻辑而彼此相关的多个查询项的查询;(b)数据处理单元,其被连接以响应于输入单元,该数据处理单元被编程以响应于查询,将该查询变换为矢量形式,并且测量项索引矢量和查询的矢量形式的相似性以确定哪个项与查询对应;以及输出装置,其被连接以响应于数据处理单元,用于提供确定哪个项与查询对应的指示。
13.权利要求12的设备,其中数据处理单元被编程以(a)通过使用(i)第一索引矢量,其具有表示所述查询中包括的每个查询项的存在和不存在的分量,以及(ii)相关于所述查询的文档可以取的所有第一索引矢量,从而计算平方和矩阵;(b)计算所述平方和矩阵的本征矢量和本征值;(c)从本征矢量中选择构成子空间的基本矢量;(d)在项索引矢量和基本矢量之间的内积以及采用本征值的加权系数的基础上测量每个项和所述查询之间的第一相似性;(e)比较第一相似性与预定阈以确定每个所述项是否相关于所述查询;以及(f)将判断结果输出到输出单元。
14.权利要求13的设备,其中数据处理单元被编程以响应于(a)尽管与所述查询相关但被判断为不相关的第一索引矢量,和(b)尽管与所述查询不相关但被判断为相关的第一索引矢量的至少一个而修改所述平方和矩阵。
15.一种用于控制数据处理单元的程序,该数据处理单元被用于帮助从多个文档项和/或信息项中检索文档项和/或信息项,每个项都由项索引矢量来识别,检索响应于包括通过布尔逻辑而彼此相关的多个查询项的查询,所述程序被安排以使数据处理单元将查询变换为矢量形式并测量项索引矢量和查询的矢量形式之间的相似性以确定哪个项与查询对应。
16.权利要求15的程序,其中所述程序被安排以使数据处理单元响应于(a)尽管与所述查询相关但被判断为不相关的第一索引矢量,和(b)尽管与所述查询不相关但被判断为相关的第一索引矢量的至少一个而修改所述平方和矩阵。
17.权利要求16的程序,其中所述程序被安排以使数据处理单元响应于(a)尽管与所述查询相关但被判断为不相关的第一索引矢量,和(b)尽管与所述查询不相关但被判断为相关的第一索引矢量的至少一个而修改所述平方和矩阵。
全文摘要
一种数据处理单元,其被编程以从多个文档项和/或信息项中检索文档项和/或信息项。每个项都由项索引矢量来识别。检索(15)响应于包括通过布尔逻辑而彼此相关的多个查询项的查询(11)。所述程序使数据处理单元通过矩阵计算(12)将查询变换为矢量形式并测量项索引矢量和查询的矢量形式之间的相似性以确定哪个项与查询对应。
文档编号G06F17/30GK1507596SQ02809312
公开日2004年6月23日 申请日期2002年3月1日 优先权日2001年3月2日
发明者T·卡瓦塔尼, T 卡瓦塔尼 申请人:惠普公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1