基于贝叶斯网络的用于文件检索的方法和设备的制作方法

文档序号:6413709阅读:198来源:国知局
专利名称:基于贝叶斯网络的用于文件检索的方法和设备的制作方法
技术领域
本发明申请要求以下美国临时专利申请的优先权,该项优选先权申请的公开内容(包括所有附属文件)全部并入本文供参考所述美国临时专利申请号为60/050,818,申请人为黄永成和秦桉,标题为“基于贝叶斯网络的用于文件检索的方法和设备”,申请日为1997年6月26日。
本发明涉及计算机数据库,确切地说,本发明涉及计算机数据库信息的索引与检索。


图1给出了一个系统100及其对数据库105信息进行索引与检索的环境。图1是一个上层的框图,标记为“现有技术”。但是,如果按照本发明实施图1所选的各个模块,图1就不再是现有技术了。
根据图1,索引器101使用数据库105中的文件103,求得一个索引结构107。检索器109通过用户界面得到使用者的一个请求111,然后使用这个索引结构107来决定该数据库105中的一个或多个文件标识115是否满足这个请求111。如虚线所示,文件标识115可包含连接到数据库的链117,据此向该使用者113提交经确认的文件119。在某一特定的方案中,文件标识115或部分或全部的文件119可称为检索器109的输出。
一个数据库就是一个信息群体。一个数据库可以被看作为一组记录或文件,因此,一个数据库也是指一个文件数据库或一个由文件组成的数据库。
此处使用的请求是使用者对这个数据库或关于这个数据库的信息需求的表达方式。给定一个请求,一个文件检索系统试图确认并且(或者)提供这个数据库中的一个或多个文件来满足这个请求,通常,它的意思就是这个文件检索系统将在一个索引结构中浏览或检索,以便得到一个或多个与这个请求相关的文件。
一个索引结构是任何一种关于数据库中文件内容信息的数据结构。数据库中的文件自身可以成为这个数据库的一个索引结构。
一个计算机数据库的例子是一个电子可读的文件库,它包含像文字、图形、声音、和/或图像等等形式,这个库中的每一个文件都是这个数据库中的一个文件。
计算机数据库的一个特别的例子是互联网(Internet)或称之为万维网(World Wide Web,简称Web)的部分互联网。在万维网上,每一个可取得的文件或者服务或者网页都可以被看作为一个文件。万维网可被认为是一个覆盖全球的、迅速成长的由几百万个相互链接在一起的文件的集合或数据库。这些文件由个人或各个机构建立并添加到万维网上,对其内容或信息的形式几乎没有任何规则或限制,因此,在万维网上要找到相关的信息成了一项很困难的工作。
随着计算机数据库如万维网的激增,对强大、高效并且多功能的文件索引检索的方法和系统的需求与日俱增。
文件索引是指为了在检索中使用而给一个数据库建立一个索引结构。一种文件的索引方法是简单地把文件自身当作这个索引结构,于是在检索中这些文件自身就可被搜索(例如文本搜索)。这种方法有一个优点,就是简单,可是这种方法的效率极低,即使是应用于一些中等规模的数据库。
另一种文件索引的方法是构造一个数据库中出现的词的反查文件,每个这样的词都有一些指针指向包含这个词的那些文件。在检索过程中,文件检索系统搜索感兴趣的词的索引,确认并且(或者)找出包含这些词的文件。
另外,类似反查文件索引结构这样的索引结构,可以忽略一些像英语中的“the”或“and”这样的词,汉语中的“这个”或“很”这样的词,它们作为检索关键词的用途不大。这些在索引结构中被忽略的词都是些很常用的词,一般将它们称为“终止词”。
反查文件索引结构可以自动地生成,并适用于多种用途,但是,为了存储和计算这些索引结构所需的存储空间和计算能力,对大型数据库来说是相当可观的,因为这里要对这个数据库中找到的全部的或者几乎全部的(非终止)词进行索引。
文件索引的其它方法尚有利用人工对文件归类,来产生类似分级目录那样的索引结构。这种方法很有用,并满足一定的文件检索目的,但它属于劳动密集型,对万维网这样的大型数据库索引时不实际。
文件检索是指在一个数据库中确认或找出一个或多个满足一个请求的文件。一种常见的请求包含一组检索关键词。因为文件检索都包括一些搜索,所以文件检索有时也指文件搜索。
文件检索方法通常用两个量来评价广度与精度。广度通常指在一个数据库中成功地找到的那一部分相关的文件。例如,在一个由10,000个文件组成的数据库中有10个文件与使用者的信息需求相关,而一个文件检索方法成功地找出了这10个文件中的6个,于是,这时的广度就是60%。
精度通常指找出的文件中真的相关的那一部分文件。例如,如果一个文件检索方法找到了50个文件,而只有其中的6个与使用者的信息需求相关,于是,这时的精度就是12%。
一种文件的检索方法是索引结构的布尔搜索。在这个方法中,使用者可以在请求中的检索关键词间使用像AND,OR和NOT这样的操作符。这种方法的一个缺点是它通常需要像反查文件一类的大型索引结构,另一个缺点是,这种方法达到高广度的时候,其精度通常较低。
有一些对布尔搜索修正的方法,这些修正通常是为了提高广度和/或精度。对布尔搜索修正的方法包括基于矢量的搜索和请求自动扩展。
使用基于矢量的方法,对每一个检索到的文件,检索器都要计算这些文件中检索关键词相对于其在此数据库所有文件中出现频率的相对出现频率。每个检索到的文件的相对出现频率限定了一个矢量空间中的点(也就是矢量),其每一维都对应于请求中的一个检索关键词。相似的文件在这个矢量空间内会聚集在一起。利用这种几何关系,使用者就可很有效地检查检索到的文件。基于矢量的搜索方法的一个缺点是,尽管它能提高精度,但不能提高广度,这种方法的另一个缺点是它仍然需要大型索引结构。
在自动请求扩展方法中,检索器根据事先限定的同类词词典或事先限定的同现词词表为用户的请求增加新的关键词。这种修正方法的一个缺点是,尽管它可以提高广度,但通常会降低精度,另外,建立这种词的同类词词典是一个非常困难的人工工作。
通过上面的描述,我们看到有必要提高计算机文件数据库的索引与检索水平,特别地,即使是应用于像互联网或万维网这样的大型数据库,也需要一些方法和系统来减少索引结构的存储空间并提高广度与精度。
以下参考文献有助于研究本发明的主题背景Chow,C.K.and Liu,C.N.,“Approximating DiscreteProbabilityDistributions with Dependence Trees”,IEEE Trans.on Information Theory,Vol.1T-14,No.3,May 1968.
Jensen,F.V.,“An Introduction to Bayesian Networks”,UCL Press,1996.
Pearl,J.,“Fusion,Propagation,and Structuring in Belief Networks”,Artificial Intelligence,Vol.29,pp.241-288,1986.
依据本发明,我们提出了一种进行文件索引和有序检索的系统和基于计算机的方法,它们用主题词表示每一个文件,其中主题词用以排序并适用于计算机数据库索引结构。
在一个特定的实施方案中,可利用贝叶斯理论通过优化找出主题词,其方法包括下列步骤通过一个数据输入设备得到至少文件的一部分;从该文件的这一部分中确定文件关键词;将每一个文件关键词归入一组预先建立的关键词类;选择几个词或称为主题词列的一列词作为主题词,每一个被选择的词来自不同的预先建立的关键词类,并且这些找出的主题词要使一个代价函数值最小。
在本发明的一个特定的实施方案中,这个代价函数是一个两个分布的相异性的测度,第一个分布为一个常规文件中的一组文件关键词出现的似然分布,第二个分布也是一个常规文件中的一组文件关键词出现的似然分布,但第二个分布是由所选择的主题词近似而得的。
在本发明的另一个特定的实施方案中,所使用的相异性的测度是交叉熵。
在查找和检索任务中,本发明的一个实施方案是一个由计算机实现的方法,来将使用者的请求与一个数据库中至少一个文件进行匹配,这种匹配是根据这个数据库中每一个文件所存储的一列主题词进行的。这一方法包括下列步骤由一个数据输入设备得到这个请求;分析这个请求找出请求关键词,它们属于一个预先确定的域内关键词集合;计算经分析的请求与这个数据库中每一个文件的主题词之间的相近度;对这个数据库中至少两个文件的相近度进行排序。
参见本发明说明书的剩余部分和附图,可以对本发明的本质与优点有更进一步的理解。
图1为一个(现有技术的)系统和它对一个数据库进行信息索引与检索的环境。
图2为一个本发明所述实施方案的系统和它计算一个数据库的统计特征的环境。
图3为一个实现索引过程的流程图。
图4为一个实现索引过程的文件索引系统的框图。
图5为一个本发明所述实施方案的一个文件检索系统。
图6为一个实现检索过程的流程图。一、基本假设本发明的实施方案依据两个基本假设第一个基本假设是,趋于同现的词(如在同一个文件中)在语义上比那些不会同现的词更相近,因此,本发明使用了数据库或文件集合D中词对的统计关系。在本发明的一个实施方案中,这种统计关系为D的一个文件中两个词同时出现的可能性的测度。
词之间的这种关系可以表示为一种“关连词语网络”。关连词语网络是一个有向图,每一节点对应于一个词,它在文件集合D中至少出现一次。连接两个节点的边给出了所对应的词对的统计关系,这种统计关系替代了现有人工智能系统中常用的语义关系,比如“A是B的一种”,还有“C具有属性D”,等等。
第二个基本假设是一个词所表示的概念的广泛性可以用它在一个文件集中出现的频率来测度,并且两个词要么不相关,要么出现频率小的那个词所表达的概念比出现频率大的那个词所表达的概念更加细微。二、数据库特征化依本发明所述的实施方案,索引器与检索器使用各种各样的统计特征,这些统计特征来自这个数据库的整个搜索范围,以及这个数据库内各个文件的相关信息。在某个特定的实施方案中,这些特征可视作数据库索引结构107的一部分。
图2给出了本发明所述方案的系统120和用于生成计算数据库105的统计特征的环境。应用域定义单元121从数据库D105取得训练文件123,并据此产生出域内关键词125。关键词类定义单元127为域内关键词125生成关键词类129。关键词频率分析单元131计算出各种统计信息133,这些将是后续处理的基本要素。
应用域定义单元121、关键词类定义单元127以及关键词频率分析单元131和其它图中的其它模块一样都可用软件来实现,它们存留在计算机内存中并指导计算机处理器进行计算。这些和其它模块在同一计算机系统内同一时间内运行,也可分布于多个计算机系统中,或在不同的时间多次运行。
统计特征化单元125、127以及133可以组成或表示为一个由上有向图定义的关连词语网络。二甲、域内关键词在本发明的一个方案中,应用域定义单元121将训练文件123中找到的词中的终止词除去,所剩余的词中的任何词就在此成为域内关键词125,因此,这些词所构成的表就是一个域内关键词的定义。也存在其它的定义。每一个域内关键词125是关连词语网络中的一个节点。
在一个实际例子中,我们随机选择了6,000个文本文件,每个文件至少有1,500字节,文件若超过20,000字节就将其截断,由此产生出大约22,000个不同的域内关键词。二乙、关键词类基于上述两种假设,关键词类定义单元127将关连词语网络中的词依其在训练数据中的出现频率分为c个类C1, C2,…,Cc,它们也被视作这一训练数据所代表的信息域内这些词的期望出现频率。类C1包含那些最常用的词,而类Cc则包含那些最不常用的词。理想情况下,任何一个类中的词的出现频率都不会大于其前一个类中的词的出现频率,因此,在一个信息域内,每一个域内关键词的期望出现频率基本上不会大于其前一个关键词类中的任意一个词的期望出现频率。
如果i小于j,那么类Ci就是类Cj的前方的一个类;如果j=i+1,那么类Ci就是类Cj的前一个类。同样地,如果j<i,类Ci就是类Cj的后方的一个类;如果i=j+1,那么类Ci就是类Cj的后一个类。
关键词类定义单元127对不同的类中的词进行平衡,例如,选择这些类使它们满足下面的性质Σw∈CiP(w)≈Σw∈CjP(w)]]>其中P(w)为词w在一个随机选取的文件中出现的概率。给定一个特定的随机选取的文件训练集,本发明的一个实施方案可将上述性质替换为性质Σw∈Cif(w)≈Σw∈Cjf(w)]]>其中f(w)为训练集中包含词w的文件数。
正如下面所介绍的,域内关键词定义类使得大大减少计算量与存储空间成为可能。通常,定义较少的类可较大地减少这些存储量,但是,定义较多的类通常可得到较高的精确度。最低将类数c大约设为10就能提高操作性能,为了进一步提高操作性能,可将c设为20,30,或者50。实际上这种提高的程度受限于因为c的增加而增加的所需存储空间与计算能力。c的最佳值可以不同,这取决于特定的应用和可利用的资源。
二丙、数据库的统计特征文件集D中的词集记为W,并假定其含有N个词。W中的每一个词wi都对应于一个二值随机变量Wi。(随机变量由上加线的字母表示,其值由大写字母表示,与随机变量相对应的词由表示该随机变量的小写字母表示。)如果wi在一个从D中随机选取的文件中出现,则Wi的值为“出现”,否则,它的值就是“缺席”。概率P(Wi=“出现”)是词wi的意思常用度的一个测度。
在关连词语网络中,两个词相连是由一个类的条件决定,也就是说,只有当wi属于第k类且wj属于第k+1类时,从与wi相对应的节点才有一个有向边连接到与wj相对应的节点。因此,关连词语网络是一个有向无环图。
在本发明的一个实施方案中,两个词wi和wj关系的相近度由它们间的互信息表示,这与第二个基本假设是一致的。
定义1两个随机变量Wi和Wj间的互信息的定义如下I(Wi-;Wj-)=ΣWi,WjP(Wi,Wj)logP(Wi,Wj)P(Wi)P(Wj)]]>其中,求和范围为所有可能的状态,这里就是状态“出现”与“缺席”。注意,此处对数函数以2为底,不过,在某些特定的实施方案中也可使用其它的底。
在关连词语网络中,两个节点间的边有一个权值,其大小是其对应的两个词间的互信息。注意,根据上述类的条件,关连词语网络不是一个紧密连接的网。为了更进一步删减网络的连接,本发明的一个方案选用一个适当的阈值θ,来删除权值小于θ的所有边。
注意,通过统计D中的词的出现频率就可得到任何词的概率分布。具体实施时,可用D中的一个随机标样作为训练集123,使用标准的统计估值技术以此训练语料库来计算这些统计量。
k个词(w1,…wk)之间关系的测度是联合概率分布P(W1,W2,…Wk)。在一个给定的文件集中,联合概率分布可以由简单地计算词的同现频率得到。这些同现频率数值除以训练集中的文件总数就得到所对应的概率。这种方法简单,但当k较大时,计算量非常大,因为k个词的可能状态有2k个。即使用户只对两个词的关系感兴趣,也就是说,k=2,对大型文件集来说其计算量之大仍然不易完成。
幸运的是,每个词常常只与其它少数几个词有紧密的关系,因此,有可能用几个较低阶的联合概率分布的乘积来近似这个高阶联合概率分布,下文将祥细讨论。
因此,关键词频率分析单元131只需要计算所有可能的分布中经缩小的一个子集。像下面要讨论的那样,在本发明的一个实施方案中,索引过程只需要分布P(Wi)和P(Wj,Wk),而检索过程只需要分布P(Wi)和P(Wj|Wk),上述各分布都是对所有域内关键词wi以及域内关键词wj与wk所组合而成的所有的词对而言,此处wj属于wk的类的后一个类(也就是说,wk属于第α-1类而wj属于第α类)。在这样的一个方案中,关键词频率分析单元131只需要计算分布P(Wi)和P(Wj,Wk)或者分布P(Wi)和P(Wj|Wk)中的任一组,因为根据P(wj-|wk-)=P(wj,wk)P(wk)]]>任意一组分布都可以完全计算另一组分布。
因为检索任务的响应速度比索引任务的响应速度更重要,在本发明的一个特定的实施方案中,关键词频率分析单元131计算分布P(Wi)和P(Wj|Wk),以便使检索任务中的计算量达到最少。
简要总结如下,在依照本发明的一个实施方案中,数据库特征化单元或者应用域特征化单元通过下列步骤产生一个关连词语网络1.取得一个系统参数c;2.取得一个文件训练集;3.建立域内关键词定义,例如除去终止词;4.统计训练集中所有的域内关键词的出现频率,建立上述分布P(Wi),然后将域内关键词排序,例如依关键词所出现的文件个数为序;5.将所有域内关键词分为c个类,并使各个类取得平衡;6.将每一个域内关键词作为一个有向无环图中的一个节点,自每一个节点作一条有向边到其后一个类中的每个节点;7.为每一个边赋一个权值,例如,统计这个边的两个节点(wj和wk)的同现频率,并估计分布P(Wi,Wk),然后计算相连的两个节点的互信息,以此作为这个边的权值;8.可选择性地除去那些权值太小的边。三、索引三甲、主题词列本发明的实施方案的一个重要功能是它可自动找到一列关键词,也就是主题词,它可以最好地描述一个文件。这样的一个序列就称为主题词列。
在主题词列中应有一些常用的关键词来表述这个文件属于哪一个大范围的主题,这类关键词有“计算机”、“国家”、“经济”等等,也应有一些非常用词来表述这个文件的特别的内容(假设它只有一个)。根据本发明的实施方案,一个包含有常用和非常用关键词的主题词列的定义如下定义2一个主题词列的定义为一个词矢量,(w1,w2,…wc),其中wi∈Ci,1≤i≤c。
例如,词矢量(百分比,市场,公司,投资,价格,有限,福特,汽车,汽车制造商,交通公具)就是一个主题词列,在这个执行程序中c=10。
一个主题词列t=(w1,…,wc)所对应的随机变量为T,其概率函数为P(T)=P(T=T)P(T)=P(W1,W2,…,Wc)=P(Wc|Wc-1,…,W1)…P(W2|W1)P(W1)为了计算这一概率,我们作如下的条件独立假设P(Wi|Wi-1,…,W1)=P(Wi|Wi-1)例如P(投资=X|公司=Y,市场=Z)=P(投资=X|公司=Y)在这一假设之下,P(T)=P(W1,W2,…,Wc)=P(Wc|Wc-1)P(Wc-1|Wc-2)…P(W2|W1)P(W1)在后续的讨论中还作了如下假设;P(U1,U2,…,Uk|V=P(U1|V)P(U2|V)…P(Uk|V)其中各个Ui都属于第α类,V属于第α-1类。三乙、表征主题词列在一个给定的文件中,不同的词组合可构成很多的主题词列,它们中的有些是有意义的,而有些则没有;有些与这个文件相关,而有些则不相关。在本发明的方案中,那个最相关的主题词列被用来代表这个文件。主题词列(而不是文件的全部)被存储在索引结构中,并应用于文件检索处理中。
使用下述方法可获得这个最相关的主题词列。将一个文件d记为一组词的集合(w1,w2,…,wn),也就是说,一个词多次出现与出现顺序都不作考虑。按照关连词语网络将这些词分组,构成一个集合矢量(d1,d2,…,dc),其中di=(di,1,…,di,ni),1≤i≤c,它包含这个文件中属于类Ci的所有域内关键词。分析与之对应的随机变量D=(D1,…,Dc),其中Di是与类Ci中的词相对应的随机变量矢量。概率分布P(D)=P(D=D)就是这个文件的关键特征。
由条件独立假设,我们有P(D)=P(D1,D2,…,Dc)=P(Dc|Dc-1)…P(D2|D1)P(D1)=Πw∈dcP(W|Dc-1)…Πw∈d2P(W|D1)Πw∈d1P(W)]]>记一个主题词列为k=(k1,…,kc),考查其对应的随机变量K=(K1,…,Kc)。因为主题词列中的词来自于这个文件,不失一般性,可假设存在一些j使ki=di,j换个方式,ki是这个文件中的一个域内关键词di,j,所以Ki对应于Di,j,因此,事件{Ki=Ki}与事件{Di,j=Di,j}完全相同。
这一概率可以近似为Pk(D)=P(Dc|Kc-1)…P(D2|K1)P(D1)=Πw∈dcP(W|Kc-1)…Πw∈d2P(W|K1)Πw∈d1P(W)]]>交叉熵的概念可用来测度这种近似的精确度,也就是定义CE(P(D-),Pk(D-))=ΣDP(D)logP(D)Pk(D)]]>此处的求和范围是文件中的词所对应的随机变量的所有状态。
给定一个文件d,它的表征主题词列就是由d中的词组成的主题词列,并且使交叉熵CE(P(D),Pk(D))最小。
使用以下结果可有效地使交叉熵达到最小定义1考虑一个主题词列k=(k1,…,kc),交叉熵最小的条件是,对每一个关键词ki,1≤i≤c-1,下述的互信息最大Σw∈di+1I(W-;Ki)]]>于是,交叉熵是一个代价函数,它可通过一个替代量(列如上述的量)的最大而达到最小,这是一个计算简单的方法。注意,仅仅变换一下术语,如果把一个功效函数简单地定义为一个代价函数的相反(例如它的负数或倒数),那么这个代价函数的最小就可表示为这个功效函数的最大,这两种操作显然是等价的。
同样地,使替代量最大等效于使用相反的方式定义的替代量最小。然而,用上述的替代量(互信息之和)的最大使上述的代价函数(交叉熵)最小不只是简单的术语调换,这是因为替代量最小化的计算实际上要比原来的代价函数最大化简单。
本发明的一个实施方案中的索引过程如下1.给定一个文件d,按照关连词语网络中的类将d中的关键词组为d1,d2,…,dc。
2.在文件关键词的每一个类di,1≤i≤c-1中找出一个满足定理1的词ki作为这个表征主题词列中的词元素。
3.把可以使I(Kc;Kc-1)最大的关键词kc增补到这个表征主题词列中。
这个表征主题词列中的域内关键词的个数为c,它是一个小且固定的数字,于是,与全文检索数据库相比,检索数据库的存储空间显著减少。
通常,与一个数据库的每个文件中不同的文件关键词个数的常见值相比,如果选择一个小一些的c的话,这个数据库中的大多数文件都会有一些文件关键词属于每一类,因此,这个数据库中的大多数文件的主题词列中都会恰好有c个主题词。
由前面互信息的定义可见,索引过程所需分布为P(Wi)和P(Wj,Wk)(它可用P(Wi)和P(Wj|Wk)计算),它们包括所有的域内关键词wi和由所有域内关键词wj与wk所组成的词对,此处wj属于wk所属类的后一个类(也就是k=j-1)。
图3是解释实现索引过程的流程图。
图4是实现索引过程的文件索引系统130及其环境的框图。图4也可应用于依据本发明实现其它类似索引过程的系统。
在图4中,一台数据输入设备接收一个需要索引的文件137。这个数据输入设备135可以是键盘、拾音器、扫描仪、复制设备、无线接收机、调制解调器、或其它设备,它们可以是连接到一个本地计算机上的,或者是连接到一个远程的计算设备上的,但不只限于这类设备。这个数据输入设备135也可以是一个网络界面设备,它通过网络从远程的机器上接收输入,这个网络可以是局域网、广域网、互联网、或任何其它网络,使用电的、光的、电磁的、或其它类型的通讯技术。
一个分析单元138从文件137中抽取索引所需的文件关键词139。在本发明的一个特定的实施方案中,根据域内关键词定义125,文件中出现的词是文件关键词,也是域内关键词。定义125简单地作为这个特定实施方案中的域内关键词的总表。
一个关键词分类单元141产生关键词集合143,每个集合对应于一个由关键词类定义129所确定的关键词类。在本发明的一个特定实施方案中,关键词类定义129简单地作为总体域内关键词的表,它们分为像关连词语网络这样形式的类。
一个代价最小化单元145对文件关键词的集合(或类)143进行计算,它使用代价函数基本要素133来使代价函数最小,以便选出文件主题词147,然后将其组成一个列,以便加入数据库索引结构107。四、检索检索是找出一组满足使用者信息需求的文件的过程。图5给出了依本发明的实施方案的一个文件检索系统140及其环境。通常使用者的信息需求111由一列请求关键词表示,或者由分析单元149依照请求111给出一组合适的请求关键词q151。
与传统方法不同,本发明的实施方案并不直接在文件集中的所有文件中作精确匹配搜索。由于所有的文件都是由它们的主题词列来表示的,本系统目标是使条件概率P(Q=“出现”|K=“出现”)最大,其中,k=(k1,…,kc)是一个文件的主题词列。为了简洁,这个条件概率也记作P(Q=1|K=1)。
为了使这个条件概率的计算更加有效,关键词分类单元首先将q151中的词分组为(q1,q2,…,qc)153,例如,按照关连词语网络分类。根据条件独立的性质P(Q-=1|K-=1)=P(Q-=1,K-)P(K-=1)]]>=P(Qc-=1,K-=1|Qc-1-=1,Kc-1-=1)…P(Q2-=1,K2-=1|Q1-=1,K1-=1)P(Q1-=1,K1-=1)P(Kc-=1|Kc-1-=1)…P(K2-=1|K1-=1)P(K1-=1)]]>分子可由下面的关系近似P(Qi,Ki|Qi-1,Ki-1)=P(Ki|Qi-1,Ki-1)Πw∈qiP(W|Qi-1,Ki-1)]]>其中2≤i≤c,并且P(Q1,K1)=P(K1)Πw∈q1P(W)]]>为了计算上式中的项P(W|Qj,Kj),可使用贝叶斯网络中的著名的“有噪或门”的假设[Jensen,1996],即P(U|V1,V2)=1-P(-U|V1)P(-U|V2)其中-U代表U的补。
相关度计算单元155对数据库索引结构107中的所有主题词列计算条件概率157。排序单元159将计算出的相关度按降序排序。将最上端的M个文件的文件标识(或文件自身)提供给使用者(M是预先设定的系统参数,比如由使用者给出。)图6是解释检索过程的流程图。
在检索过程的分析中我们看到,所需分布是P(Wi)和P(Wj|Wk)(它可由P(Wi)与P(Wj,Wk)计算得到),它们包括所有域内关键词wi以及所有由域内关键词wj和wk组成的词对,此处wj属于wk的类的后一个类(也就是k=j-1)。五、一个求主题词列的例子现有一个文件包含下列词{w1,w2,w3,w4,w5,w6}词w1和词w2属于第8类;词w3和词w4属于第9类;词w5和词w6属于第10类。五甲、计算步骤按下列步骤求这个文件的主题词列1.计算I(W1;W3)+I(W1;W4)记其值为a(如何计算I(W1;W3)请参看下一节)。同样地,计算I(W2;W3)+I(W2;W4)=b假定a比b大,则得k8=w1。
2.计算I(W3;W5)+I(W3;W6)=cI(W4;W5)+I(W4;W6)=d假定d比c大,则得k9=w43.计算I(W4;W5)=eI(W4;W6)=f假定f比e大,则得k10=w6。于是主题为
{空,空,空,空,空,空,空,w1,w4,w6}五乙、如何计算I(W1;W3)令p(W1=1,W3=1)=p1p(W1=1,W3=0)=p2p(W1=0,W3=1)=p3p(W1=0,W3=0)=p4由于p(W1=1)=p(W1=1,W3=1)+p(W1=1,W3=0)=p1+p2p(W1=0)=p(W1=0,W3=1)+p(W1=0,W3=0)=p3+p4p(W3=1)=p(W1=1,W3=1)+p(W1=0,W3=1)=p1+p3p(W3=0)=p(W1=1,W3=0)+p(W1=0,W3=0)=p2+p4所以I(W1-;W3-)=p1logp1(p1+p2)(p1+p3)+p2logp2(p1+p2)(p2+p3)]]>+p3logp3(p3+p4)(p1+p3)+p4logp4(p3+p4)(p2+p4)]]>其它互信息项也用类似方法计算。六、一个请求相关度计算的例子现有一请求词w6属第10类,w7属第9类,w8属第8类。
q=(w6,w7,w8)为了计算文件d与请求q的相关度,计算下面的概率P(W6-=1,W6-=1|W7-=1,W4-=1)P(W7-=1,W4-=1|W8-=1,W1-=1)P(W8-=1,W1-=1)P(W6-=1|W4-=1)P(W4-=1|W1-=1)P(W1-=1)]]>其中
P(W6=1,W6=1|W7=1,W4=1)=P(W6=1|W7=1,W4=1)≈1-P(W6=0|W7=1)P(W6=0|W4=1)并且P(W7=1,W4=1|W8=1,W1=1)≈ P(W7=1|W8=1,W1=1)P(W4=1|W8=1,W1=1)≈(1-P(W7=0|W8=1,W1=1))(1-P(W4=0|W8=1,W1=1))以上是本发明的特定实施方案的全部说明,各种修正、变更以及其等同形式都可使用,因此,上述说明不应被视作限制由权利要求中所限定的本发明的保护范围。
权利要求
1.一种在计算机内用来获得代表一个文件的主题词的方法,该主题词适于存入计算机数据库的索引结构中,这种方法包括以下步骤从一台数据输入设备接受一个文件的至少一部分,该文件的这一部分包括词;由该文件的这一部分求得一组文件关键词;将每个文件关键词归入其中一个预先建立的一组关键词类中;以及选取词作为主题词,每一个所谓被选取的词来自一个不同的预先建立的关键词类,并使所得到的主题词的代价函数值为最小。
2.一种如权利要求1所述之方法,其中代价函数为两个分布的相异性测度,第一个分布为一个常规文件中的文件关键词出现的似然分布,第二个分布也是一个常规文件中的文件关键词出现的似然分布,但第二个分布是由所选择的主题词近似而得的。
3.一种如权利要求2所述之方法,其中相异性测度为交叉熵。
4.一种如权利要求3所述之方法,其中从文件关键词中选择词的步骤包括将一个替代量最小化或最大化,从而使交叉熵最小化,但并不真正地计算交叉熵。
5.一种如权利要求2所述之方法,其中预先建立的关键词类是有序的,至少有关键词类有一个后一个关键词类,从文件关键词中选择词构成主题词的步骤包括对一个文件关键词计算它与后一个关键词类中的每一个文件键词之间的互信息之和;以及对每一个特定的关键词类,从属于该类的一组文件关键词中选取一个文件关键词作为这个类的主题关键词,该词与其后一个关键词类中的所有文件关键词之间的互信息之和为最大。
6.一种如权利要求2所述之方法,其中这个预先建立的关键词类是有序的,在预先建立的关键词类中,至少有一个关键词类具有前一个关键词类;第一个似然分布包括一个条件独立假设,在这个假设之下,任何特定的文件中的一个关键词的似然出现频率仅与该特定文件中前一个关键词类中的关键词的出现与不出现有关;以及第二个似然分布包括一个近似,在这个近似条件下,任何特定文件中的一个关键词的似然出现频率仅与该特定文件中前一个关键词类中所求得的主题关键词的出现与不出现有关。
7.一种如权利要求1所述之方法,其中关键词类由少于约50个关键词类组成。
8.一种如权利要求1所述之方法,其中关键词类由少于约20个关键词类组成。
9.一种如权利要求1所述之方法,其中预先建立的关键词类是有序的,一个预先建立的关键词类中的任意一个词在一个信息应用域内的期望出现频率基本上不会超过其前一个关键词类中的任意一个词。
10.一种如权利要求1所述之方法,其中求得一组文件关键词的步骤包括根据预先定义的域内关键词,将那些经确认的域内关建词作为文件关键词。
11.一种如权利要求10所述之方法,其中在数据库中存在域内关键词的一个预先确定的集合;按照预先确定的域内关键词的定义,只有那些被确认的域内关键词才被认为是文件关键词,这一步骤包括从这个文件的一部分中选取那些属于这个预先确定的域内关键词集合中的词;以及这一方法还包括下面的一步,在把每一个文件关键词归类到一个预先确定的关键词类之前,要先把域内关键词集合分割成一组有序的域内关键词组,其中一个域内关键词组中的任意一个词的期望出现频率基本上不超过后续的域内关键词组中的任意一个词,这里的一组有序的域内关键词组就构成了预先确定的关键词类。
12.一种如权利要求11所述之方法,其中分割域内关键词集合的步骤包括控制分割到每一个域内关键词组中的域内关键词的相对个数。
13.一种如权利要求12所述之方法,其中控制域内关键词相对个数的步骤包括在所有的域内关键词组中,对每一个域内关键词组,对该域内关键词组中的每一个域内关键词,从数据库中随机选取的一个文件包含该域内关键词的概率之和近似相等。
14.一种如权利要求11所述之方法,其中在一个信息域内存在一个域内关键词训练文件集合,此方法还包括在确定一批文件关键词的步骤之前,有一个步骤从这个域内关键词训练文件集合中选取非终止词,这些词就构成了域内关键词集合。
15.一种如权利要求1所述之方法,还包括下面的一个步骤,将主题关键词写入一个计算机可读的内存映像产品,进而为至少一个文件建立一个含有主题关键词的计算机可读的数据库索引产品,此处数据库索引产品包括这个计算机可读的内存映像产品。
16.一种如权利要求15所述之方法形成的计算机可读的数据库索引产品。
17.一种在计算机中用来获得代表数据库中的一个文件的主题词的方法,该文件包含词,主题词应用于具有一个用户界面的基于计算机的文件检索器,这种方法包括下列步骤选取这些词的一个子集,构成无重复的文件关键词;将这些文件关键词分为有序组,从d1到dc-1,每个组都唯一地与一组预先建立的关键词类中的一个相对应,这些类标记为从1到一个数c,在数据库中,从最常用词到最不常用词;从c-1个最常用词的组d1-dc中的每一个组里找出一个文件关键词ki,它使下面的互信息之和达到最大值Σwj∈di+lI(W-;Ki)]]>其中,i是该组的下标,Ki是一个随机变量,它对应于一个常规文件中关键词ki的出现与不出现,Wi是一个随机变量,它对应于一个常规文件中关键词wj的出现与不出现;然后在最不常用词的第c组中找出一个文件关键词kc,它使互信息I(Kc-1,Kc)达到最大值,在此,文件关键词k1,…,kc就是这个主题词列。
18.一种如权利要求17所述之方法,其中,任何两个随机变量Wi和Wj的互信息的定义如下I(Wi-;Wj-)=ΣWi,WjP(Wi,Wj)logP(Wi,Wj)P(Wi)P(Wj)]]>
19.一种由计算机实现的用于把一个来自一个使用者的请求与一个数据库中的至少一个文件进行匹配方法,这种匹配基于这个数据库中为每个文件所存储的一个主题词序列,这种方法包括以下步骤从一个数据输入设备上接受这个请求;分析这个请求,并得到请求关键词,它满足一个预先确定的域内关词的定义;对数据库中一批文件中的每一个文件,计算它的主题词与经分析的请求之间的相近度;以及对这个数据库中的这批文件中至少两个所计算的相近度进行排序。
20.一种如权利要求19所述之方法,其中计算相近度的步骤包括将每一个请求关键词归类到一组预先确定的关键词类中的一个类中;以及在给定这个数据库的这批文件中一个文件的主题词出现概率的条件下,计算出请求关键词出现的似然条件概率,这个概率即为相近度。
21.一种如权利要求20所述之方法,其中这个数据库为互联网时,这个方法还包括给一个使用者提供指向这个数据库中文件的链,其相近度大于一个可选的阈值。
22.一种建立主题词以便将一个文件特征化的系统,这个系统包括一个分析单元,它从这个文件中找到一组文件关键词;一个关键词分类单元,它按照预先定义的类将这些文件关键词分组;以及一个代价函数最小化单元,它使候选主题关键词的代价函数值最小,并找到一组最小代价的候选主题关键词,将它们作为这个文件的主题关键词。
23.一种将一个用户的一个请求与一个数据库中的至少一个文件进行匹配的系统,这种匹配是根据这个数据库中为每一个文件存储的索引结构中的一组主题词进行的,这个系统包括一个分析单元,它通过分析这个请求得到能满足一个预先确定的域内关键词的定义的请求关键词;一个相近度计算单元,它计算经分析的请求与这个数据库的一批文件中的每一个文件的主题词间的相近度,这里,相近度计算单元所使用的数据库的一批文件中的每一个文件的主题词的数目是相同的;以及一个排序单元,它对这个数据库的一批文件中的至少两个文件的相近度进行排序。
全文摘要
本发明提供一种在计算机中用来获得代表数据库中的一个文件的主题词的方法,这些主题词适用于文件检索。这种方法包括:从这个文件中找出文件关键词;将每个文件关键词归类到一组预先确定的关键词类的一个类中;选取一些词作为主题词,每一个被选择的词都出自一个不同的预先确定的关键词类,并使所得到的主题词的代价函数值为最小。这个代价函数可以为一个相异性的测度,例如两个分布的交叉熵,第一个分布为一个常规文件中的一组文件关键词出现的似然分布,第二个分布也是一个常规文件中的一组文件关键词出现的似然分布,但第二个分布是由所选择的主题词近似而得的。代价函数可以作为对优先文件进行排序的一个基准。
文档编号G06F17/30GK1211769SQ9810267
公开日1999年3月24日 申请日期1998年6月26日 优先权日1997年6月26日
发明者黄永成, 秦桉 申请人:香港中文大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1