文档和图案分群的方法及装置的制作方法

文档序号:6399482阅读:211来源:国知局
专利名称:文档和图案分群的方法及装置的制作方法
技术领域
本发明涉及了包括文档和图案分群(clustering)的处理。
背景技术
文档和图案分群是一种这样的技术,其把一个输入的文档或图案集根据文档或图案的内容或主题分成若干组。人们已经研究分群技术好长时间了,并且由C.D.Manning和H.Schutze所写的“Foundations of Statistical Natural LanguageProcessing”(MIT出版社,1999)系统地介绍了到目前为止所发明的方法。有两种分群方法。一种,被称为软分群(soft clustering),其获取每个文档或图案属于每个群集(cluster)的概率。另一种,被称为硬分群(hard clustering),其确定每个文档或图案是否属于每个群集。硬分群还被分为分层和不分层方法。所述分层方法还被分为自底向上和自顶向下的方法。在分层方法的初始状态,每个文档或图案都成了群集的种子,且重复通过合并最接近的群集所进行的处理。为了合并最近群集,用树结构来表示文档和图案集。测量群集之间的接近(即,相似性)程度的已知方法,是单连接(single link)方法,完全连接(completelink)方法,和组平均(group average)方法。在这些测量方法中的每一种中,都根据两个文档或图案之间的相似性执行计算。在所述自顶向下方法中,从一个所有的文档或图案都在一个群集中的初始状态,重复处理。例如,如果在一个群集中的所有文档或图案对的最低相似性小于一个阈值,则对所述群集进行划分。
在所述不分层方法中,构建预定数目的群集以符合某一标准。在不分层方法中的典型的处理步骤是步骤1随机选择特定数目的被分群的文档或图案,并把它们当作相应群集的中心,步骤2确定每个文档或图案与每个群集中心的距离,并使每个文档或图案属于离它最近的群集,步骤3通过对属于每个群集的文档或图案向量求平均值,来确定每个群集中心,及步骤4执行步骤2的处理;如果每个文档或图案所属于的群集没有改变,则结束该过程;并且如果存在改变,则执行,步骤3。
常规的文档和图案分群技术有三个严重的问题。一个问题是,关于所要获得的群集数。在文档或图案分群中,所要获得的群集数必须与一个输入的文档或图案集中的文档或图案中的主题数相同。如上所述,在所述自底向上分层分群处理中,每个群集都起始于包括一个文档或图案的状态,重复执行合并最近群集直到所有的文档或图案最终都在一个群集里面。因此,为了获得数量与主题数相同的群集,必须停止群集的合并。这可以通过不合并具有低于一个阈值的相似性的群集对得到实现。然而,很难确定阈值。如果所述阈值不适当,就不能获得正确的群集数。类似地,在自顶向下的处理中,如果在一个群集中的所有文档或图案对中的最低相似性高于一个阈值的情况下,没有划分该群集,则原则上会获得与主题数相同的群集数。
在这种情况下,也很难确定所述阈值。而且,用不分层分群方式,所述用户必须把群集数输入(事先)到一个将要划分的指定文档中。然而,不可能准确地输入关于群集数的信息,而不用事先知道所述输入文档或图案集。如上所述,从输入的文档或图案集中获得正确的群集数是个难题。虽然由于Liu et al尝试正确地推断不分层分群的群集数,从而提高了性能,但是这并不理想(X.Liu,Y.Gong,W.Xu及S.Zhu,Document Clustering with Cluster Refinement and ModelSelection Capabilities;第25届信息检索的研究和发展国际ACM-SIGIR研讨会年会会议论文集,第191-198.坦佩雷市页,芬兰,2002年8月)。
第二个问题是分群准确性。这是关于属于同一群集的文档或图案是否描述了同一主题或对象的问题。在分群处理中,通常,用向量来表示一个文档。每个向量分量都取决于文档中每项的存在,或项的出现频率。根据下述来确定两个群集间的相似性(1)属于不同群集的文档的两个向量之间的余弦相似性(cosine similarity),及(2)某一文档和群集之间的距离。文档或图案与群集之间的距离,由文档或图案的向量与所述群集中的文档或图案的平均向量之间的距离(例如,欧几里德距离)来确定。在常规的分群处理中,当得到所述余弦相似性或欧几里德距离时,通常使用为每个文档或图案所获得的向量而不用核对什么项对于所述群集来说是重要的。因而,不是每个群集所必需的一个项或对象特征或一个项或对象特征对的存在,能够影响分群的准确性。
第三个问题是如何提取主题或对象的层。通常,在一个主题或对象中有一个层。例如,考虑主题“Iraq war”。相关的新闻文章中的副主题可能是下述中的任一种;“Iraq war”,“Saddam Hussein”,“Inspection of weapons of massdestruction by United Nations”,“Opinion of President Bush”或“Opposition ofFrance,Germany and Russia”。考虑这种新闻文章的分群结果的情况。想知道“Iraqwar”的用户,可能想要看相应于通过次分群(sub-clustering)所得到的每个副主题的文档组;该用户通常不想看原始的分群结果。如上所提到的,由于很难正确地确定相应于单个主题的群集并把每个文档指定给一个正确的群集,所以次分群仍是个难题。

发明内容
我们考虑没有获得主题(或对象)层的平直分群(flat clustering)情况。由于文档(或图案)分群,根据在每个文档(或图案)中所描述的主题(或对象)对文档(和图案)进行组合,所以属于一个群集的文档(和图案)(叫群集文档(或图案)集),应该描述同一主题(或对象)。因此,所述群集文档集应该有些公共性。此外,每个主题(或对象)应该有不同于所述主题(或对象)的项或项对,并且所述项或项对经常出现在该主题(或对象)中,但是很少出现在其他主题(或对象)中。因此,在多个群集之间项或项对的出现趋势应该有区别。
鉴于上述,根据本发明的一个方面,为了提高分群的准确性,在分群处理中引入了下述内容。
A)提取指定群集文档(或图案)集的公用信息,并且利用公共信息获得每个文档(或图案)到指定群集接近度(closeness)(文档(或图案)公共性)。
B)检测不同于给定群集的多个项和项对(或对象特征或对象特征对),并在文档公共性的计算中消除了那些不同的对的影响。
在常规分层处理中,群集的合并或划分被重复执行很多次。在常规不分层处理中,群集的成员被互换很多次。从此,在现有技术中,很难检测各个群集的公共信息或不同于所述群集的多个项和项对。
本发明的一个方面应用了一种包括几个步骤的方法,如下步骤1在第一次重复中,从所有文档(或图案)中检测一个群集种子的候选者。在第二或随后的重复中,从文档(或图案)中检测所述群集种子候选者,其中所述文档(或图案)和任一当前群集相比较的文档(或图案)的公共性小于一阈值。
步骤2相对于每个候选者,检测和所有文档(或图案)的相似性。提取相似性高于一阈值的文档(或图案)作为邻居文档(或图案)。选择具有最大数量的邻居文档的候选文档(或图案)作为所述群集的种子。据文档(或图案)的集构建所述群集,其中所述文档是所述种子的邻居。
步骤3检测(或图案)和当前群集相比较的每个文档(或图案)的公共性。使文档(或图案)公共性高于一个阈值的文档(或图案),临时地属于所述群集,这样该群集就扩充了。如果临时属于所述群集的文档(或图案)的数目变得恒定,则过程进入到步骤4。否则,再次检测和当前群集相比的每个文档(或图案)的文档(或图案)的公共性。如果满足了一结束条件,则所述处理进入到下一步。否则,该处理返回到步骤1并继续进行。
步骤5在下一步中,检测和每个群集的文档(或图案)公共性(相对于每个文档(或图案)来说),并且判断每个文档(或图案)属于一个具有高于阈值的文档(或图案)公共性的群集。
接着进行关于两个或更多群集是否重叠并符合一个主题(或对象)的确定。这种群集作为多余的群集而被删除,并且再次获得每个文档(或图案)所属的群集来进行考虑。
在上面的分群过程中,利用公共信息的文档(或图案)公共性的计算,和对与指定群集没有区别的一个项或项对(或对象或对象对)的检测,在步骤3和5中执行。相对于前者,所述公共信息是从临时属于指定群集的文档(或图案)中提取的。至于公共信息的提取和使用,可以采用在号码为2002-326157的日本专利申请中所公开的方法。
通过进行下述假定可以理解该基本思想,即一指定群集由R个文档群集成,且由R个句子组成的句组通过从各文档中提取一个句子来构建。为句子的所有可能的结合构建句组。这种句组的总数等于各文档的句子的数目的乘积。在指定句组中,把在R个句子中的多于A个句子中出现的项定义为公共项,并且由公共项所构建的句子被称为公共句。在多于A个文档中出现的项成了某些句组中的公共项。而且,假定为所有的句组构建公共句,且如上所述的公共句的一个集可以被认为表示了指定群集的公共主题的内容。因此,如果每个文档和公共句集之间的相似性能够作为文档公共被获得,则它将表示每个文档到指定群集的公共主题的接近度。
仅当所述文档(或图案)包括在多于A个文档(或图案)中出现的项(或对象)时,一个文档(或图案)与一个公共句(或对象组)的集合之间的相似性才具有非零值。假定两个值,A1和A2(A1>A2),作为A的值。由于在多于A1个文档(或图案)中出现的项(或对象)的数目小于在多于A2个文档(或图案)中出现的数目,当A=A1时的所述公共句(或对象的组)的主题,比A=A2时的更窄(narrower)。因此,当A=A1时而不是A=A2时,与公共句(或对象的组)集相比较的相似性高于一阈值的文档(或图案)主题的扩展范围更小。而且,包括在多于A1个文档(或图案)中出现的项的文档(或图案)的数目小于当A=A2时的数目。如果文档(或图案)与公共句(或对象组)的集合之间的相似性作为文档(或图案)公共性而在步骤3和5中被采用,则当A被置为小值时所述群集由具有分布广泛(wide spread)的主题的文档(或图案)组成,且反之亦然。这样,A的值控制了一个群集的主题(或对象)范围。
通过指定群集的发展过程,来检测不同于指定群集的项和项对(或对象和对象对),其中所述群集的种子文档(或图案)具有主题(或对象)i。为了理解该概念,假定(1)在整个文档集中描述了主题i的文档数是c0,(2)c是指定群集的文档集,(3)在整个输入文档集中包括项m的文档数是U0mm,(4)Umm是指定群集的文档集,及(5)项目m相对于主题i来讲是不同的。由于具有项m的大多数文档都有主题i,所以将满足下列关系U0mm/Umm~c0/c如果由于项m经常出现在主题不同于主题i的文档中而没有满足关系U0mm/Umm~c0/c,则应该满足下述关系U0mm/Umm>c0/c因此,如果能够精确地确定c0/c,就能够确定项m是否不同于主题(或对象)i。U0mm/Umm被称为项(或对象特征)m的文档(或图案)频率比。在特定数目的项(或对象特征)中,其中所述项在一指定群集中的文档(或图案)集中的频率最高,(1)假定文档(或图案)频率比小的特定数目的项(或对象特征),不同于主题(或对象)i,并且(2)这些项(或对象特征)的文档(或图案)频率比的平均值c′,被认为是c0/c的预测值。最后,利用一个常系数α,可以确定满足下述等式的项目(或对象特征)m与主题(或对象)i相同。
U0mm/Umm>αc′类似地,假定包括项(或对象特征)m,n的文档(或图案)的数目,在整个输入文档(或图案)集中是U0mm,并且Umn是所述指定群集的文档(或图案)集。利用这些假定,可以确定满足下列等式的项(或对象特征)对m,n,与主题(或对象)i相同。
U0mn/Umn>αc′关于文档公共性,为了减少所述项(或对象特征)和项(或对象特征)对对指定群集的没实质的影响,经判断与主题(或对象)i相同的所述项(或对象特征)和项对(或对象特征),不被用于在每个文档(或图案)与所述指定群集的文档(或图案)集之间的文档(或图案)公共性的计算。可选择地,c′/(U0mm/Umm)c′/(U0mn/Umn)在计算文档(或图案)公共性中可以被分别用作项(或对象特征)m和项(或对象特征)对m,n。利用能够这种方法,文档公共性有了一个很大的值用于文档(或图案)描述主题(或对象)i。结果,可以预料到所述分群的提高了的精确性。
在整个分群过程中,重复执行处理以致最初,提取一个文档(或图案)作为群集的种子,并接着通过检测和合并作为所述种子描述同一主题(或对象)的文档(或图案),所述种子增加了。因此,如果种子文档(或图案)的数目与输入文档中的主题(或对象)的数目相同,则可以获得正确的群集数。即使作为步骤1的结果为同一主题(或对象)检测到两个种子文档(或图案),由于在步骤6中检测并删除了多余的群集,所以仍能够获得正确的群集数。如果作为步骤1的结果没有为同一主题(或对象)检测到种子文档(或图案),则缺少群集数。在下述时刻会发生这种情况当具有要检测的主题(或对象)的文档(图案),与其他主题(或对象)的一个现有群集相比较具有高文档(或图案)相似性,并被合并到所述群集时。然而,由于通过采用步骤A)和B)提高了分群的准确性,所以混合了不同主题(或对象)的文档(或图案)的概率较低,很少发生缺少获得的群集数的情况。
随着A值被改变或随着项(或对象特)或项对(或对象特征对)有选择地被使用,通过递归地应用上面所提到的分群过程,能够处理分层分群。假定(1)输入文档(或图案)集在第0层,(2)通过对输入文档(或图案)进行分群而获得的群集在第1层,(3)通过对在第一层上的每个群集进行次分群而获得的次群集(subcluster)在第2层和(4)等用于为每个在随后层上的群集进行次分群。
能够如下执行分层分群。首先,通过采用上述通过将A设为适当值所进行的分群处理,获得在第1层上的群集。在每个群集中的所述文档(或图案),具有每个主题(或对象)。当获得了在第2层上的次群集时,A被设为一个比在获得了在第一层上的群集时的值大的值。在第一层上的群集被分成范围较窄的带有次主题(或次对象)的次群集。
一种可选分层分群方法如下。在第2层上的所述次群集中不同的项(或对象特征)或项对(对象特征对),必须是在第1层上的父群集中文档频率低的项(或对象特征)或项对(或对象特征对)。因此,在删除了文档(或图案)频率高于一阈值的项(或对象特征)或项对(或对象特征对)之后,通过应用分群处理,得到了有效的次群集。类似地,将得到在第三或更高层上的次群集。


图1是与本发明相关的通用计算机操作的方框图;图2A和2B是与图1的文档输入和预处理块相关的操作的流程图,用于确定从输入文档集阶段到确定每个文档所属于的群集的阶段的一个过程;图3是与图1的文档信息处理块相关的操作如何使群集扩充的流程图,从初始的群集的扩充过程;图4A和4B是帮助解释删除一多余群集的方法的图。
具体实施例方式
图1是计算机系统的方框图,其中所述计算机系统用于执行处理被分群的文档的自然语言的方法。应意识到,所描述的原理同样适用于图案处理,但是只对与文档处理有关的特定实施例进行描述。所述系统包括文档输入块110,文档预处理块120,文档信息处理块130,和输出块140。把所要处理的文档集输入到文档输入块110。文档预处理块120根据一个输入的文档,执行项的检测,词法分析,和文档段的划分。
文档的文档段的基础单元,是句子。大多数欧洲语言句子的开头和结尾,容易被删除,因为每个句子都用句号(period)结尾,且印刷时其后是双间隔。象其他文档分段的方法,与复杂句子相关,把句子分割(即,划分)成一个主句(principle clause)和一个从句。在又一方法中,多个句子被收集到一个文档段中以便在每个段中的项的数目大约相同。又一方法,不考虑文档中的句子,从文档的开头把文档分成多个项数相同的段。
块130执行输入文档的信息处理并直接执行与输入文档中的分群相关的处理。块130执行下述操作,诸如(1)删除一种子文档,(2)计算在所有输入文档和指定群集间的文档集公共性,和(3)检测和特定群集相同的项和项对。稍后将详细描述块130。输出块140把文档信息处理块130获得的结果,输出到一个诸如显示器这样的输出装置。
图2A和2B构成了分群和对指定文档集执行块110,120和130的其他操作的流程图。通过在通用计算机上运行一个程序,能够执行图2A-2B和3的操作。
在步骤21期间,输入块110提供一文档集给计算机。在步骤22期间所提供的文档都在预处理块120中经过了预处理。在步骤23期间,块130从所述文档集的所有文档中提取信息。在步骤24期间,块130提取群集的种子文档并构建一个初始群集。块130,在步骤25期间,处理文档以便扩充群集。在步骤26期间,块130在集合中提取剩余的文档。块130,在步骤27期间,停止检查条件。在步骤28期间,块130处理所述文档集以从剩余的文档中提取信息。块130,分别在步骤29和30期间,判定什么在群集成员中,并接着提取和删除多余的群集。描述一个处理英语文档的实施例。
首先,在步骤21期间把文档集作为对象输入给计算机。当在分层分群中获得第n层的次群集,所述输入文档集包括在第(n-1)层上的(次)群集。在文档预处理步骤22中,为每个输入的文档执行文档预处理(诸如项的检测,词法分析,文档段的划分,和文档段向量的构建)。项的检测包括为每个输入的文档检测词,数值表达式,符号串,等等。因此一般地把词,数值表达式,符号串,等叫做项。由于英语书写表示法在项之间有空格,所以很容易执行项的检测。
接着,为每个输入的文档执行词法分析(诸如对项作标记的词性)。
为每个输入的文档执行文档分割(或划分)。在文档段向量的构建中,从在整个文档中出现的项,来确定所要构建的向量的维数和每个分量和每个项之间的一致性。不必使所述向量的分量等于所有在文档中出现的项。利用词性标记的结果,可以利用下述来构建所述向量,例如,仅利用被判断为名词和动词的项。接着,构建文档段向量,这样只有相应于在每个文档段中出现的项的分量为1,且其他的为0。
在所有文档的文档集信息提取步骤23中,在所述分群处理阶段中所用的数据,从每个文档和整个输入的文档集中获得。将要获得的数据是每个文档的共同出现率矩阵(co-occurrence matrix),所述文档集的共同出现率矩阵(公共共同出现率矩阵),及整个输入的文档集的文档频率矩阵(document frequencymatrix)。每个文档的共同出现率矩阵,是反映项的出现频率和项对的共同出现率频率的矩阵。
继续对以句子作为文档段的情况进行说明,通过假定M表示出现项的种数,Dr表示由R个文档群集成的文档集D中的第r文档,Yr表示在文档Dr中的句子数,及dry=(dry1……,drym)T表示第y句子向量。由于句子向量dry是二进制向量,所以drym表示第m项的存在或不存在。Sr,文档Dr的共同出现率矩阵,由下式给出Sr=Σy=1YrdrydryT,]]>其中T表示向量转置(vector transpose)。
从等式(1),Sr的mn分量由下式给出Srmn=Σy=1Yrdrymdrym.]]>因此Srmn表示句子数,项m出现的和Srmn表示项m和项n协同出的句子的共同出现率计数。如果,每个项没有在句中出现两次和更多,则Srmn表示项m在文档Dr中的出现频率。接着,系统获得矩阵T,其mn分量是如下定义的Tmn=Πr=1RSmnr>0Smnr]]>而且,文档频率矩阵U0存储了每个项的文档频率和在输入的文档集中所获得的每个项。矩阵U0mn和U0mm分别表示出现项m的文档数,和项m和n共同出现率的文档数。利用如上所述的矩阵T和U0获得一公共共同出现率矩阵TA。公共共同出现率矩阵TA的mn分量如下确定。
TAmn=TmnU0mn≥A,
否则,TAmn=0。
“A”表示用实验方法确定的阈值。
矩阵QA,具有一个如下所给出的mn分量,其被定义为并被用作公共共同出现率矩阵。
QAmn=1og(TAmn) TAmn>1,否则,QAmn=0。
当分层分群正在被处理时,一旦U0mn的值超过一阈值就把U0mn设为0。
在步骤24中,处理器130通过执行前面所描述的步骤1和2,提取群集的种子文档并构建初始群集。和任一当前群集的文档公共性小于一阈值的文档,被假定为剩余文档集。所述剩余文档集,是不属于任一当前群集的概率较高的文档的集合。根据下述条件计算公共共同出现率矩阵TA,QA,和文档频率矩阵U(1)在第一次重复时的输入文档集,和(2)在第二次和后来的重复中的剩余文档集。
群集的种子文档,最好是文档所描述的主题显著的文档(dominantdocument)。因为,在剩余文档集中最显著主题的一个文档群集中的所述显著文档,被假定为和剩余文档集具有高文档公共性,步骤24(1)确定在剩余文档集中的每个文档和剩余文档集之间的公共性,和(2)选择具有高文档公共性的文档作为群集种子的候选者。设SP为任意文档P的公共共同出现率矩阵。在步骤24期间,在文档P和剩余文档集之间的所述文档公共性,获得如下。
comq(D′,P,QA)=Σm-1MΣn-1MQAmnSPmnΣm=1MΣn=1M(QAmn)2Σm=1MΣn=1M(SPmn)2---(2)]]>在等式(2)中,矩阵TA也可以用来代替矩阵QA。为了减少多个主题所共有的项的影响,所述共同出现率矩阵和公共共同出现率矩阵的对角线分量,不能用于等式(2),因为单个项在多个主题中要比项对容易被共享。
所述群集的种子文档的候选者,利用等式(2),通过计算和剩余文档集中所有文档的文档公共性而获得,并选择一具有高文档公共性的特定数目的文档。
接着,描述处理群集种子文档提取的步骤24部分。开始为每个候选文档,获取在剩余文档集D中的所有文档的相似性。可以采用公知的余弦相似性作为相似性测定。接着,为每个候选文档,获取相似性大于当前阈值的文档作为每个候选文档的邻居文档。从候选文档中选出邻居文档数最大的文档,作为所述群集种子文档。所述种子文档给出了最初的群集。
在执行块130的群集扩充步骤25中,通过把公共性高的文档合并到所述群集来扩充该群集。图3是所述群集扩充步骤25的详细流程图。最初,块130在步骤31期间构建文档频率矩阵。然后,块130在步骤32期间构建公共共同出现率矩阵,在步骤32之后是步骤33,在步骤33期间为每个项和项对执行特殊性计算。然后,在步骤34期间,块130计算文档公共性,步骤34之后是步骤35,在步骤35期间执行一个群集成员判定。然后,块130进行到结束条件检测的步骤36。
在步骤31期间,包括文档频率矩阵的构建,和步骤32,包括公共协同矩阵的构建,块130在步骤31和32期间对当前所处理的文档的集合执行处理。步骤31和32的这些处理,相当于在图2的步骤23期间的所述文档频率矩阵构建过程和所述公共共同出现率矩阵构建构成。
设U为在步骤31期间所获得的文档频率矩阵。设TA和QA分别为公共共同出现率矩阵和它的经修改的矩阵。在步骤33期间,块130确定每个项的特殊性和权重(weight)。为零文档频率的项和项对把权重置为0。首先,以前述方式获得U0mm/Umm作为项m的文档频率。此外,选择一个特定数目的高文档频率的项和一个特定数目的小文档频率比率的项。假定所选的项,是指定群集的不同的项。接着,取这些项的文档频率比率的平均值。设c′为平均文档频率比率。项m的特殊性Vmm,和项对m,n的特殊性Vmn由下式确定。
Vmm=c′/(U0mm/Umm)Vmn=c′/(U0mm/Umm)可选择地,平均文档频率比率可以利用不同的项对和不同的项来获得。在这种情况下,当m不等于n时,获得U0mm/Umm作为项对m,n的文档频率比率,并当m等于n时,获得U0mm/Umm作为项m的文档频率比率。在特定数目的最高文档频率的项和项对中,选择特定数目的小文档频率比率的项和项对。把所选择的项和项对看成所述指定群集的不同的项和项对。接着,取这些项和项对的文档频率比率的平均值。设c′为所述平均值。
设zmm和zmm分别为项m和项对m,n的权重。如下,利用权重判定函数f(x)来确定这些权重。
zmm=f(Vmm)zmm=f(Vmm)f(x)可以为很多种函数。例如,可以用下列。
f(x)=x或f(x)=x2或如果x>阈值f(x)=1否则f(x)=0。
在所述文档公共性计算步骤34,块130为所有输入的文档计算和指定群集的文档公共性。设SP为文档P的共同出现率矩阵。文档P和文档集D的文档公共性可以由下式获得com1(D,P,QA)=Σm=1MzmmQAmmSPmmΣm=1Mzmm(QAmm)2Σm=1Mzmm(SPmn)2,]]>或者comq(D,P,QA)=Σm=1MΣn=1MzmnQAmnSPmnΣm=1MΣn=1Mzmn(QAmn)2Σm=1MΣn=1Mzmn(SPmn)2,]]>其中D表示所述指定群集的一个文档集。在上述等式中,矩阵TA可以被用来代替矩阵QA。
在步骤35中,块130通过选择文档公共性高于一特定值的文档,确定所述指定群集的临时成员。
在结束条件检测步骤36中,块130确定指定群集的扩充步骤是否完成。在步骤36第一次重复时,处理无条件地返回步骤31并重复步骤31的处理。在步骤36第二次和后来重复时,计算在步骤35期间所获得的指定群集中文档的数目。如果所述文档数不等于它在以前的重复中的数目,则所述过程返回到步骤31并重复步骤31的所述处理。如果在步骤36期间确定所述文档数等于以前的重复中的文档数目,则为所有输入的文档保留指定群集的文档公共性。
现在继续描述图2。
在步骤26期间,块130根据每个文档和所有当前群集的文档公共性,提取剩余文档。和任一群集的文档公共性都小于一阈值的文档,被提取出来作为剩余文档。
在结束条件检测步骤27期间,块140根据剩余文档数,确定从所述根据提取到所述扩充的一系列处理是否已经完成。如果剩余文档数小于一阈值,并等于在以前的重复中的剩余文档数,则所述过程进行到步骤29。如果没有满足这种条件,则所述处理进入到步骤28并对剩余文档集执行相当于步骤23的处理。
在所述群集的成员的判定步骤29中,确定每个文档所属于的群集。通过利用关于文件与在图3中为每个文档所获得的每一群集的文档公共性的信息,并使每个文档属于其文档公共性高于一个用实验的方法所获得的阈值的所述群集,可以完成上述步骤。
在步骤30期间,包括检测和删除多余的群集,块130确定是否存在多余的群集。如果存在多余的群集,则将其删除。当为一个主题获得了两个和多个群集时,就会出现多余的群集。在这种情况,描述所述主题的文档,和两个或多个群集有大的文档公共性,并且所述两个或多个群集彼此重叠。为了检测所述多余的群集,首先为所有文档获取和所有获得的群集的文档公共性。
接着,获得所述文档数,其中所述文档和一指定群集的文档公共性大于一阈值和任一其他群集的文档公共性小于所述阈值。如果所述指定的群集不与任何其他群集重叠,则这种文档的数目等于与指定群集的文档公共性的数值高于所述阈值的文档的数目。另一方面,如果所述指定群集与其他群集重叠,则在所述群集中的文档数成了不与所述群集重叠的文档数,即,只在指定群集中的文档数。
如上所述的文档数,可以被定义为每个群集的重要性。例如,在图4A的情况下,群集1的重要性是在群集1中的文档数。这也是群集2的情形。如果所述指定群集与其他群集部分重叠,则所述重要性是不与其他群集重叠的文档数。即,就群集1来说,在图4B中用c所表示的部分中所含的文档数,表示所述重要性。就群集2来说,在图4B中用d所表示的部分中所含的文档数,表示所述重要性。
如果一个群集的重要性小于一特定值,即使属于该群集的文档数大,所述重要性较小的群集还是会被看作多余的群集并被删除。如果存在多个这种较小重要性的群集,首先删除群集重要性最低的群集。然后再对剩余群集执行群集重要性的计算,并删除群集重要性最低的群集。重复以该种方式所进行的处理,直到没有了多余的群集。如果执行多余群集的删除,就再次执行每个群集成员的确定。在这种情况下,把每个文档指定给与之文档公共性最高的所述群集,是一种群集成员的判定的可选方法。
为了解释前述操作的作用,描述根据图2,3的实施例的实验结果。用TDT2作为语料库(corpus)。语料库TDT2是一群集新闻故事,其中所述故事是关于在1998年的1月和6月之间从六个新闻来源中所收集的100个事件。与Liu et al利用TDT2所执行的不分层分群的结果进行比较(X.Liu,Y.Gong,W.Xu及S.Zhu,Document Clustering with Cluster Refinement and Model Selection Capabilities;第25届信息检索的研究和发展国际ACM-SIGIR研讨会年会会议论文集,pp.191-198.坦佩雷市,芬兰,2002年8月)。所述组成,是基于利用和Liu et a1.相同的数据所得到的实验结果。
所述数据是一群集与ABC,CNN和VOA所收集的15个事件相关的新闻故事。表1包括那些数据的详细内容。
表1

表2包括15个在试验中所用的数据集,和在这里公开的及由Liu et al.所公开的方法的分群准确性。Liu et al.的方法的结果是基于Liu et al.论文(paper)的。当某一文档所属于的事件符合群集的种子文档的事件时,就认为所述分群的结果时正确的。和所有群集的文档公共性为0的文档,被认为是错误的。根据被正确分群的文档数目与所有文档数目的比率,可以获得准确性。在Liu et al.的方法中,在根据高斯混合模型(Gaussian mixture model)执行不分层分群之后,获得每个群集的不同项,并且通过不同项的表决来更正所述结果。在表2中,测试数据ABC-01-02-15是指由ABC所收集的、并且在表1中的事件ID为01、02、和15的文档。在表2中,用这里所公开的方法所获得的高准确性的数据集的数目,比用Liu et al.的方法所获得的大。
表2

就在Liu et al.论文中所列出的12个数据来说,用这里公开的方法所提取的群集数是正确的。另一方面,用Liu et al.的方法,所提取的群集数对于在12个数据集中的3个数据集来讲是是不正确的。表3包括Liu et al.的方法和这里所公开的方法的结果。
表3

如上所述,根据这里所描述的方法,可以从一个输入文档集中提取正确的群集数,并且可以高准确性地把每个文档都指定给一个群集。因此,可以显著地提高用户采集信息的效率。
通过把一个文档集作为例子描述了上面的实施例。而且,可以把所公开的实施例应用到一图案集中,其中所述图案集是可以被类似地表示并具有和这里所描述的文档集相同的特征。用图案代替文档包括(1)用图案要素代替文档的项,(2)用图案段代替文档段,(3)用图案频率矩阵代替文档频率矩阵,(4)用每个图案的共同出现率矩阵代替每个文档的文档频率矩阵,(5)用图案公共性代替文档公共性等。结果可以把本发明的原理象应用到文档集那样应用到图案集。在所述权利要求中,术语(或图案),(或对象特征),被用来指定与图案相关的操作,代替文档。
权利要求
1.一种在输入的文档(或图案)集中根据他们之间的关系对文档(或图案)进行分群的方法,其中每个所述文档(或图案)都具有一个或多个文档(或图案)段,包括,(a)根据项在每个文档(或图案)中的出现的频率,为输入文档(或图案)的集合获得一个文档(或图案)频率矩阵;(b)从没有包括在那一刻所存在的任一组中的剩余文档(或图案)中选择一个种子文档(或图案),并利用所述种子文档(或图案)构建一个所述初始状态的当前群集;(c)利用基于所述输入文档(或图案)集的文档(或图案)频率矩阵的信息,为所述输入文档(或图案)集中的每个文档(或图案),获得和当前组相比较的文档(或图案)公共性,基于当前群集中的所述文档(或图案)的文档(或图案)频率矩阵的信息,及基于所述当前组的公共共同出现率矩阵的信息,并使文档(或图案)公共性高于临时地属于当前群集的一个阈值;(d)重复步骤(c),直到临时地属于当前群集的文档(或图案)数变得与在先前的重复中的相同;(e)重复步骤(b)到(d),直到满足一指定收敛条件;和(f)根据每个文档(或图案)与每个群集相比较的文档(或图案)公共性,判定每个文档(或图案)所属于的群集。
2.根据权利要求1的一种分群方法,其中步骤(a)还包括,(a-1)根据项在每个文档(或图案)段中的出现频率,为每个所述文档(或图案)段产生一个文档(或图案)段向量;(a-2)为所述输入文档(或图案)集中的每个文档(或图案),从所述文档(或图案)段向量中获得一个共同出现率矩阵,和(a-3)为每个文档从所述共同出现率矩阵中获得一个文档(或图案)频率矩阵)。
3.根据权利要求1的一种分群方法,其中步骤(b)还包括,(b-1)构建一个剩余文档(或图案)的公共共同出现率矩阵,其中所述剩余文档没有包括在那一刻所存在的任一组中;和(b-2)通过利用所述剩余文档(或图案)的公共共同出现率矩阵,并提取文档(或图案)公共性最高的文档(或图案),为每个在所述剩余文档(或图案)集中的文档(或图案),获得和剩余文档(或图案)集的集合相比铰的文档公共性,和通过使文档(或图案)集包括所述种子文档(或图案)及与所述种子文档(或图案)相似的所述邻居文档(或图案)来构建所述初始状态的当前群集。
4.根据权利要求1的一种分群方法,其中步骤(c)还包括,(c-1)构建一个当前群集的公共共同出现率矩阵和一个所述当前群集的文档(或图案)频率出现矩阵。(c-2)通过比较所述输入文档(或图案)集的文档(或图案)频率矩阵和所述当前群集的文档(或图案)步骤矩阵获得每个项及每个项对和所述当前群集相比较的特殊性;和(c-3)通过利用所述当前群集的公共共同出现率矩阵和由其特殊性所获得的每个项和项对的权重为所述输入文档(或图案)集中的每个文档(或图案),获得和所述当前群集相比较的文档(或图案)公共性,并使所述文档(或图案)公共性高于临时属于所述当前群集的一阈值。
5.根据权利要求1的一种分群方法,还包括,重复步骤(e),直到和任一当前群集相比较的文档(或图案)公共性小于一阈值的文档(或图案)数变为0,或所述文档(或图案)数小于一阈值并等于先前重复的文档(或图案)数。
6.根据权利要求1的一种分群方法,其中步骤(f)还包括,检测多余群集的存在,当所述多余群集存在时,删除所述多余群集并再次判定每个文档所属于的群集。
7.根据权利要求1的一种方法,其中所述文档(或图案)Dr的共同出现率矩阵Sr,根据下式确定Sr=Σy=1YrdrydryT-----(1)]]>其中M等于出现项的种数,Dr等于由R个文档(或图案)组成的文档集D中的第r文档(或图案),Yr等于在文档(或图案)Dr中的文档(或图案)段数,及dry=(dry1……,drym)T等于文档(或图案)Dr的第y文档(或图案)段向量,T表示向量的转置。
8.根据权利要求1的一种方法,其中文档(或图案)集D的所述文档(或图案)频率矩阵的每个分量是其中在所述文档(或图案)集D中的每个文档(或图案)的共同出现率矩阵的相应的分量不取0值的文档(或图案)的数目。
9.根据权利要求1的一种方法,还包括由矩阵TA确定所述文档(或图案)集D的公共共同出现率共同出现率矩阵,其根据谁的mn分量由矩阵TA确定的矩阵T,其中具有mn向量的所述矩阵TA如下确定TAmn=Tmn,Umn>A,否则,TAmn=0。其中,Umn表示所述文档(或图案)集D的文档(或图案)频率矩阵的mn向量。
10.根据权利要求1的方法,还包括由矩阵QA确定文档(或图案)集D的公共共同出现率共同出现率矩阵,其根据谁的mn分量由下式确定的矩阵TTmn=ΠSmnr>0r=1RSmnr]]>具有mn分量的矩阵QA由下式确定QAmn=log(TAmn) TAmn>1,否则,QAmn=0。
11.根据权利要求10的一种方法,其中zmm和zmn分别为项(或对象特征)m和项(或对象特征)对m,n的权重,具有共同出现率共同出现率矩阵SP的文档(或图案)P相对于文档(或图案)集D的文档(或图案)公共性,由下式给出com1(D,P;QA)=Σm=1MzmmQAmmSPmmΣmmMzmm(QAmm)2Σm=1Mzmm(SPmm)2-------(3)]]>comq(D,P;QA)=Σm=1MΣn=1MzmnQAmnSPmnΣm=1MΣn=1Mzmn(QAmn)2Σm=1MΣn=1Mzmn(SPmn)2-----(4)]]>
12.根据权利要求9的一种方法,其中zmm和zmn分别为项(或对象特征)m和项(或对象特征)对m,n的权重,具有共同出现率共同出现率矩阵SP的文档(或图案)P相对于文档(或图案)集D的文档(或图案)公共性,由下式给出com1(D,P;QA)=Σm=1MzmmQAmmSPmmΣm=1Mzmm(QAmm)2Σm=1Mzmm(SPmn)2-------(3)]]>comq(D,P;QA)=Σm=1MΣn=1MzmnQAmnSPmnΣm=1MΣn=1Mzmn(QAmn)2Σm=1MΣn=1Mzmn(Srmn)2------(4)]]>
13.根据权利要求1的一种方法,其中所述当前群集的种子文档(或图案)的提取和所述初始状态的当前群集的构建包括(a)利用所述剩余文档(或图案)的公共共同出现率矩阵,为在所述剩余文档(或图案)集中的每个文档(或图案),获得和剩余文档(或图案)集相比较的文档(或图案)公共性,(b)提取,一特定数目的在步骤(a)所获得的谁的文档(或图案)公共性大的文档(或图案),作为当前群集的种子的后选者;(c)获得在输入文档(或图案)集或在所述剩余文档(或图案)集中,所述群集种子的各候选者和所有文档(或图案)相比较的相似性,其中并获得相似性大于一阈值的文档(或图案)作为所述候选者的邻居文档(或图案);和(d)在所述候选者中,选择邻居文档(或图案)数最大的候选者,作为当前群集的种子并使其邻居文档(或图案)成为所述初始状态的当前群集。
14.根据权利要求1的一种方法,还包括检测每个项(或对象特征)和每个项对相对于所述当前群集的特殊性,并检测它们的加权,所述特殊性和加权检测步骤包括(a)获得文档(或图案)频率矩阵的每个分量和文档(或图案)频率矩阵的相应分量的比率,作为每个项(或特征)或每个项(或特征)对的文档(或图案)频率比率,其中前面的文档(或图案)频率矩阵是从输入文档(或图案)集中所获得的,而后面的文档(或图案)频率矩阵是从当前群集中获得的;(b)在一特定数目的文档频率比率最高的项(或特征)或项(或特征)对中,选择一特定数目的文档(或图案)频率比率最小的项(或特征)或项(或特征)对,并获得所选项(或特征)或项(或特征)对的文档(或图案)频率比率的平均值,作为平均文档(或图案)频率比率;(c)用每个项(或特征)或每个项(或特征)对的文档(或图案)频率比率除所述平均文档(或图案)频率比率,作为每个项(或特征)或每个项(或特征)对的特殊性的测定;和(d)由用特殊性测定作为变量的函数,求出每个项(或特征)或每个项(或特征)对的加权。
15.根据权利要求1的一种方法,还包括删除文档(或图案)频率高于一阈值的项(或特征)或项(或特征)对。
16.根据权利要求1的一种方法,其中,通过假设包括在一群集中的所述文档(或图案)集为所述输入文档(或图案)集递归地执行分群。
17.一种计算机程序产品,用于使计算机执行权利要求1的方法。
18.一种计算机程序产品,用于使计算机执行权利要求2的方法。
19.一种计算机程序产品,用于使计算机执行权利要求3的方法。
20.一种计算机程序产品,用于使计算机执行权利要求4的方法。
21.一种计算机程序产品,用于使计算机执行权利要求5的方法。
22.一种计算机程序产品,用于使计算机执行权利要求6的方法。
23.一种计算机,被安排用来执行权利要求1的方法。
24.一种计算机,被安排用来执行权利要求2的方法。
25.一种计算机,被安排用来执行权利要求3的方法。
26.一种计算机,被安排用来执行权利要求4的方法。
27.一种计算机,被安排用来执行权利要求5的方法。
28.一种计算机,被安排用来执行权利要求6的方法。
29.一种在输入的文档(或图案)集中根据他们之间的关系对文档(或图案)进行分群的方法,其中每个所述文档(或图案)都具有一个或多个文档(或图案)段,包括(a)装置,用于根据项在每个文档(或图案)中的出现的频率,为输入文档(或图案)的集合获得一个文档(或图案)频率矩阵;(b)装置,用于从没有包括在那一刻所存在的任一群集中的剩余文档(或图案)中选择一个种子文档(或图案),并利用所述种子文档(或图案)构建一个所述初始状态的当前群集;(c)装置,用于利用基于所述输入文档(或图案)集的文档(或图案)频率矩阵的信息,基于当前群集中的所述文档(或图案)的文档(或图案)频率矩阵的信息,及基于所述当前组的公共共同出现率矩阵的信息,为所述输入文档(或图案)集中的每个文档(或图案),获得和当前群集相比较的文档(或图案)公共性,和装置,用于使文档公共性高于一个阈值的文档(或图案)临时地属于当前群集;(d)装置,用于重复装置(c)的操作,直到临时地属于当前群集的文档(或图案)数变得与在先前的重复中相同;(e)装置,用于重复装置(b)到(d)的操作,直到满足一指定收敛条件;和(f)装置,用于根据每个文档(或图案)和每个群集相比较的文档(或图案)公共性,判定每个文档(或图案)所属于的群集。
全文摘要
以文档(或图案)分群的方式,得到了群集的正确数目和每个文档(或图案)到所述正确的群集的准确指定。对描述相同主题(或对象)的文档(或图案)进行分组,这样属于同一群集的文档(或图案)组具有一些公共性。每个主题(或对象)都具有不同的项(或对象特征)或项(或对象特征)对。当获得了每个文档(或图案)到一指定群集的接近度时,提取并利用关于所述指定群集的公共信息,同时排除了与所述指定群集相同的项(或对象特征)或项(或对象特征)对的影响。
文档编号G06F17/30GK1530857SQ20041003520
公开日2004年9月22日 申请日期2004年3月5日 优先权日2003年3月5日
发明者川谷隆彦 申请人:惠普开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1