本发明涉及自然语言处理技术领域,更具体的,是一种关键词确定方法和相关设备。
背景技术:
现如今,信息的表达方式随着信息时代的发展而日益多样,其中利用文本的方式可以更为直观地表达信息。对于文本而言,关键词是文本主题信息的提炼,可以高度概括文本的主要内容,能够帮助用户快速了解文本内容。由于文本信息的数量过于庞大,故关键词确定方法显得尤为重要。
目前的一种关键词确定方法是,首先使用预先设置的词典对文本进行分词操作,然后基于分词结果使用关键词提取算法如基于词频-逆文档频率(tf-idf)的统计算法、文本排序(textrank)算法、词语熵算法等,在分词结果中提取关键词。
但是,上述关键词确定方法所得到的关键词通常在2-3字,但是这种长度的关键词往往并不能够反应文本的主要思想,因此这种方案确定的关键词并不准确。
技术实现要素:
有鉴于此,本申请提供了一种关键词确定方法及装置,用以解决上述确定的关键词不够准确的技术问题。
为实现所述目的,本申请提供的技术方案如下:
第一方面,本发明提供了一种关键词确定方法,包括:
获得多个不同聚类的文档集合;
将所述多个聚类中的任一聚类作为当前聚类,对所述当前聚类的文档集合执行下述关键词确定操作:
确定词语切分长度,并按照所述词语切分长度,对所述当前聚类的文档集合包含的文档进行切分,以得到多个词语;
统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况;
将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;
将关键词得分满足预设条件的词语确定为所述当前聚类的文档集合的关键词。
第二方面,本发明提供了一种关键词确定装置,包括:
获取单元,用于获得多个不同聚类的文档集合;
执行单元,用于将所述多个聚类中的任一聚类作为当前聚类,对所述当前聚类的文档集合,执行下述关键词确定操作:确定词语切分长度,并按照所述词语切分长度,对所述当前聚类的文档集合包含的文档进行切分,以得到多个词语;统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况;将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;以及将关键词得分满足预设条件的词语确定为所述当前聚类的文档集合的关键词。
第三方面,本发明提供了一种存储介质,其上存储有程序,所述程序被处理器执行时实现上述的关键词确定方法。
第四方面,本发明提供了一种关键词的确定设备,包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的关键词的确定方法。
由以上技术方案可知,本发明提供的关键词确定方法,可以获得多个不同聚类的文档集合,针对任一聚类的文档集合按照关键词确定操作来确定该任一聚类的关键词,具体的关键词确定操作为,确定词语切分长度,并按照所述词语切分长度,对所述任一聚类的文档集合包含的文档进行切分,以得到多个词语;统计每个词语在所述任一聚类的文档集合中的出现情况以及在所述任一聚类之外的其他聚类的文档集合中的出现情况;将每个词语在所述任一聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;将关键词得分满足预设条件的词语确定为所述任一聚类的文档集合的关键词。可见,本方法可以根据对关键词长度的实际需求,确定出满足需求的切分长度,使用该切分长度切分出备选的长词语,再使用卡方校验公式计算这些长词语成为该任一聚类的关键词的可能性得分,根据可能性得分确定出长关键词,从而让关键词的选取能够兼顾长关键词,使能够客观反映文档内容的词语被确定为关键词的概率更高,确定出的关键词准确性更高。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的关键词确定方法的一个流程图;
图2为本申请提供的关键词确定装置的一个结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
见图1,其示出了本发明提供的一种关键词确定方法流程,具体包括步骤s101~s102。
s101:获得多个不同聚类的文档集合。
其中,文档集合中包含有一篇或多篇文档,文档是文字的集合,文档可以来源于特定领域的语料。文档集合中包含有经过聚类得到的文档,聚类的标准可以是文档的主题内容,不同主题内容的文档会被划分为不同聚类的文档。例如,某聚类的文档集合包含的是“科技”这一主题内容的文档;另一聚类的文档集合包含的是“民生”这一主题内容的文档。
在一种实现方式中,文档集合可以是通过聚类算法得到的,聚类算法具体可以为层次树聚类算法。因此获得多个不同聚类的文档集合的一种实现方式,可以包括以下步骤:
获得多篇文档,并确定每篇文档的聚类特征向量;以及将文档的聚类特征向量输入至层次树聚类算法中,以将多篇文档划分为多个不同聚类的文档集合。
具体来讲,首先去除文档中的乱码如非中文、英文、数字及常用标点等,然后以文档为单位,将文档的题目与内容均进行分词,根据分词的结构构造聚类特征向量。然后,层次树聚类算法可以依据各个文档的聚类特征向量,按照一定的预设阈值,将各个文档进行分类后得到多个不同的聚类,每个聚类中包含有若干个文档。
其中,分词可以具体使用哈工大ltp语言技术平台工具,对文档进行切词处理后,可以得到预设字数的词单元。例如,某一文档内容为“全月国际原油期货价格在89-106美元/桶区间震荡”,经过切词处理后得到的词单元为:全国、国际、原油、期货、价格、在、89、-、106、美元、/、桶、区间、震荡。另外,聚类特征向量可以具体为tf-idf(termfrequency–inversedocumentfrequency,词频-逆文档频率)特征向量等等。
在一种实现方式中,文档集合可以通过以下步骤a1~a4获得。
a1:获得多篇文档,并将每篇文档分别作为一个文档集合。
其中,在进行聚类前,每篇文档可以看做各自为一个聚类的文档集合,也就是说,初始的每个聚类的文档集合中均只包含有一篇文档。
a2:将每个文档集合分别与其他每个文档集合两两分组。
本步骤是将所有的文档集合两两分组,每个文档集合要和其他剩下的每个文档集合均进行两两分组。例如假设有100篇文档,那么100个文档集合中的每个文档集合要和其他剩余的99个文档集合均进行两两分组。
a3:计算分组的两个文档集合中、一个文档集合中的每篇文档与另一文档集合中的每个文档之间的聚类特征相似度,并将最小的聚类特征相似度作为两个文档集合的距离相似度。
本步骤是计算分组的两个文档集合之间的距离相似度。可以理解的是,文档集合之间的距离相似度由两个文档集合的文档之间的距离相似度决定。经过多次循环处理后,每个文档集合中可能有一篇也可能有多篇文档,本步骤确定两个文档集合之间距离相似度的方式是,将两个文档集合中文档与文档的最小距离相似度,确定为两个文档集合之间的距离相似度。
需要说明的是,文档与文档之间的距离相似度即文档之间的聚类特征相似度,因此计算文档与文档之间的距离相似度,可以首先确定文档的聚类特征向量,然后根据两个文档的聚类特征向量,计算两个文档之间的聚类特征相似度。其中计算两个文档之间的聚类特征相似度可以使用余弦(cosine)相似度距离计算方式,如此计算出来的数值与聚类特征相似度的含义正相关,即数值越大,表示聚类特征相似度越大,进而表示两个文档越相似;反之数值越小,表示聚类特征相似度越小,进而表示两个文档越不相似。
a4:将距离相似度最大且满足预设相似度阈值的两个文档集合聚类为同一文档集合,并返回执行a2将每个文档集合分别与其他每个文档集合两两分组的步骤,直至最大的距离相似度不满足预设相似度阈值。
其中,本发明可以根据实际需求,预先设置相似度阈值。
得到所有两两文档集合之间的距离相似度后,确定出距离相似度最大值,判断该最大距离相似度是否满足预设相似度阈值,若满足则将该最大距离相似度对应的两个文档集合聚类为同一文档集合;若不满足,则停止聚类。需要说明的是,在聚类两个文档集合之后,需要重新返回上述步骤a2,并依次执行步骤a2至a4,直至最大的距离相似度不满足预设相似度阈值,停止聚类。
停止聚类后,可以得到多个聚类的文档集合。需要说明的是,该种方式利用相似度距离阈值来确定聚类后的文档集合的数目而不需要提前指定。
s102:针对任一聚类的文档集合,执行下述关键词确定操作:确定词语切分长度,并按照词语切分长度,对任一聚类的文档集合包含的文档进行切分,以得到多个词语;统计每个词语在任一聚类的文档集合中的出现情况以及在任一聚类之外的其他聚类的文档集合中的出现情况;将每个词语在任一聚类的文档集合中的出现情况以及在其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;将关键词得分满足预设条件的词语确定为任一聚类的文档集合的关键词。
其中,上一步骤得到的聚类为多个,本步骤对多个聚类中的任何一个聚类,都可以按照上述关键词确定操作,对该聚类中的文档确定关键词。本发明在确定该任一聚类的关键词时,需要使用对比聚类,对比聚类可以是该任一聚类之外的其他所有聚类,也可以是该任一聚类之外的其他部分指定的聚类。对任一聚类的文档集合进行关键词确定操作时,该任一聚类可以称为当前聚类,相应地各个步骤中所述的任一聚类即为该当前聚类。
关键词确定操作首先按照切分长度对文档进行词语切分,其中切分长度可以是预设好的,具体的切分长度可以由想要得到的词的字数而定,例如需要得到2字词,即切分长度设为2;需要得到3字词,即切分长度设为3;需要得到4字词,即切分长度设为4,等等。可见,本发明可以自由设置文档被切分的分词长度。
需要说明的是,切分长度可以是一个,也可以是多个,若切分长度为多个,则分别将文档按照每个切分长度均进行一次切分,从而得到多种不同切分长度的词语。例如,切分长度可以包括2、3、4及5四个长度,可以切分得到长度为2、3、4及5四种长度的词语。
切分长度可以指的是词语中包含的字符的个数,也可以是词语中包含的词单元的个数。以包含词单元为例,确定切分长度的一种实现方式为:获得用户输入的词单元最大个数,并获得预设的词单元最小个数;以及依据词单元最小个数及词单元最大个数,确定多种词语切分长度。
具体地,词单元可以是切分的基础单位,词单元的长度可以是2。用户可以输入词单元的最大个数,另外还可以获得预设的词单元最小个数,进而根据词单元最小个数及词单元最大个数可以确定出词单元范围,例如输入的词单元最大个数为4,预设的词单元最小个数为1,则词单元个数范围包括1,2,3及4。若词单元的长度为2,根据该范围可知,切分长度分别为2,4,6及8。
举例说明,假设切分长度包括2、3、4及5四个长度,则说明切分后得到的词语中分别包含有2个词单元、3个词单元、4个词单元及5个词单元。具体如,“基金公司”为包含2个词单元的词语、“中国基金公司”为包含3个词单元的词语、“中国基金公司股票”为包含4个词单元的词语、“中国基金公司股票预测”为包含5个词单元的词语。
需要说明的是,切分长度有多少个,则可以对文档进行多次切分,每次切分按照同一切分长度切分文档;或者可以按照词单元的长度初步切分文档,然后按照切分长度包含的词单元的个数,将相邻的词单元合并后得到切分后的词语。例如,按照词单元的长度,对文档进行初步分词后得到的是“a基金公司是最好的基金公司”,某切分长度为2,则将相邻的两个词单元组合后便可以得到切分长度为2的词语,如切分长度为2的词语包括:“a基金”、“基金公司”、“公司是”、“是最好”、“最好的”、“的基金”、“基金公司”。同理,可以得到其他切分长度的词语。
经过切分操作得到词语后,分别统计每个词语在该任一聚类以及在其他聚类的文档集合中的出现情况,出现情况可以具体包括:出现次数、出现频率或出现篇数。出现情况需要代入至卡方校验公式中,卡方校验公式用于将词语在该任一聚类中的出现情况以及在其他聚类中的出现情况转化为关键词得分。词语的关键词得分越高,则表示该词语作为该任一聚类的关键词的概率越大。
需要说明的是,卡方校验公式的转化标准遵循关键词的含义,即一个词语在该任一聚类中出现越频繁,而在其他聚类中出现越不频繁,则说明该关键词与该任一聚类越相关,越可能作为该任一聚类的关键词。但一个词语既在该任一聚类中出现频繁,也在其他聚类中同样出现频繁,则说明该词语为一个无意义词,如“的”等。卡方校验公式的计算方式,会降低这类无意义词语的关键词得分,以避免这类无意义的词语被选中为关键词。
本发明提供以下两种卡方校验公式的计算方式:
在一种实现方式中,分别统计每个词语在任一聚类的文档集合中的出现文档篇数以及在任一聚类之外的其他聚类的文档集合中的出现文档篇数。
需要说明的是,词语在一个文档集合的文档中出现,指的是词语出现在该文档中即可,而不论出现的次数有多少次。因此,词语在文档集合中的出现文档篇数,指的是文档集合中包含有该词语的文档的总篇数。例如,任一聚类的文档集合中有100篇文档,其中30篇文档出现了某个词语,则该词语在该任一聚类的文档集合中的出现文档篇数为30。
另外,还需要统计以下几项参数,即:词语在其他聚类的文档集合中的出现文档篇数;词语在该任一聚类的文档集合中的未出现文档篇数;词语在该其他聚类的文档集合中的未出现文档篇数;该任一聚类的文档集合的文档总篇数;词语在所有聚类的文档集合中的出现文档篇数;该其他聚类的文档集合的文档总篇数;词语在所有聚类的文档集合中的未出现文档篇数。
将这些参数代入至卡方校验公式score=(c*f-d*e)/((k 1)(g 1)(h 1)(i 1))中,得到每个词语的关键词得分。其中,score表示词语的关键词得分;c表示词语在任一聚类的文档集合中的出现文档篇数;d表示词语在其他聚类的文档集合中的出现文档篇数;e表示词语在任一聚类的文档集合中的未出现文档篇数;f表示词语在其他聚类的文档集合中的未出现文档篇数;k表示任一聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示其他聚类的文档集合的文档总篇数;i表示词语在所有聚类的文档集合中的未出现文档篇数。需要说明的是,分母中的参数k、g、h及i各自加1,是为了避免分母为0而导致的计算出错。
通过对上述卡方校验公式的分析可知,参数f的存在可以降低无意义词语关键词得分。理由是,如果是在所有聚类中均频繁出现的无意义词,那该词语在该其他聚类的文档集合中的未出现文档篇数会非常小,参数c乘以一个非常小的数值,会使最终的关键词得分变小,从而降低了该词语的关键词得分。
发明人经过研究发现,可以对上述卡方校验公式进行改进,将以上参数代入至改进后的卡方校验公式中,计算关键词得分。具体地:
在另一种实现方式中,将每个词语在任一聚类的文档集合中的出现文档篇数以及在任一聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=j*sqrt((c*c-d*e)*(c*c-d*e)/((k 1)(g 1)(h 1)(i 1)))中,得到每个词语的关键词得分。其中,有关参数c、d、e、g、h及i的说明可以参见上述说明,k表示任一聚类的文档集合的文档总篇数;j表示词语切分长度。
与上述卡方校验公式相比,该卡方校验公式主要有四点不同。一是,将参数f替换为参数c,二是分子(c*c-d*e)进行了平方计算,三是,对分式整体进行了开方sqrt计算,四是,开方结果整体乘以词语切分长度。
关于第一点的说明。前已述及,参数f的意义是为了降低无意义词语的关键词得分,但是在长关键词的计算场景中,为了得到满足要求的长关键词,一般所确定的切分长度会较大,从而切分后得到的词语会较长。但长度较长的词语通常不会在所有聚类中均频繁出现,所以长度较长的词语不容易成为无意义词语,所以可以不必考虑引入参数f。而为了加强词语在该任一聚类的文档集合中的出现文档篇数对于关键词得分的影响,将参数f替换为参数c。
需要说明的是,改进后的卡方校验公式中,保留有参数d即词语在该其他聚类的文档集合中的出现文档篇数,该参数d可以反映词语在对比聚类中的出现情况,因此替换掉参数f不会影响卡方校验公式对于关键词的确定。
关于第二点及第三点的说明。分子(c*c-d*e)进行平方,再对分式整体进行开方,是为了控制最终的关键词得分落入到预设的数值范围内,预设的数值范围可以与预设的关键词得分阈值对应,后续可以使用关键词得分阈值对词语的关键词得分进行筛选,以得到满足条件的关键词。
关于第四点的说明。词语切分长度是一种修正方式,开方结果整体乘以词语切分长度,是为了保证切分得到的更长词语的关键词得分更高,从而保证在相同的情况下,相较于短词而言长词的关键词得分更高。
使用卡方校验公式得到关键词得分后,将关键词得分满足预设条件的词语确定为该任一聚类的关键词。需要说明的是,预设条件可以是预设的关键词得分阈值,在这种情况下,只要是关键词得分满足该预设的关键词得分阈值,便可以将该关键词得分对应的词语确定为关键词。或者,预设条件可以既包括分数阈值条件也包括数量条件,在这种情况下,将关键词得分满足预设的关键词得分阈值且关键词得分排序在前的预设数量的词语确定为关键词。
由以上技术方案可知,本发明提供的关键词确定方法,可以获得多个不同聚类的文档集合,针对任一聚类的文档集合按照关键词确定操作来确定该任一聚类的关键词,具体的关键词确定操作为,确定词语切分长度,并按照词语切分长度,对任一聚类的文档集合包含的文档进行切分,以得到多个词语;统计每个词语在任一聚类的文档集合中的出现情况以及在任一聚类之外的其他聚类的文档集合中的出现情况;将每个词语在任一聚类的文档集合中的出现情况以及在其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;将关键词得分满足预设条件的词语确定为任一聚类的文档集合的关键词。
可见,本方法可以根据对关键词长度的实际需求,确定出满足需求的切分长度,使用该切分长度切分出备选的长词语,再使用卡方校验公式计算这些长词语成为该任一聚类的关键词的可能性得分,进而根据可能性得分确定出长关键词,从而满足用户对于长关键词的选取需求。另外,本方法是无监督的,无需进行数据标注,极大的节省了人力成本。本发明在评论文本情感分析、工业互联网文本检索和安全性检测等领域都有很大的应用价值。本发明在评论文本情感分析、文本检索和文本推荐等领域都有很大的应用价值。确定文本关键词是这些领域中的上游任务,其对于下游的文本处理任务提供数据支持,如果文本关键词提取不准确,则会进一步影响文本处理效果。例如,在文本推荐的领域中,用户阅读某篇文本后,可以为其推荐内容相似的其他文本。因此可以预先对互联网中存在的海量文本进行处理,以提取各个文本的关键词。根据用户所阅读文本的关键词,在海量文本中查找与该关键词相同的目标文本,将该目标文本推荐给用户。本发明确定出的关键词更加客观地反映文本内容,准确性更高,因此为用户推送的文本更加准确。再例如,在论文网站也可以根据关键词来对论文进行聚类和管理,如果确定关键词的准确性较差,就会导致论文的分类存在变差,进而影响整体管理工作,本发明的方案具有较好的准确性,并且能够避免因为人工提取关键词而导致占用人力物力的问题。需要说明的是,此应用场景仅仅是一个示例说明,本发明提供的关键词确定方案还可以应用于其他根据关键词对文本处理的场景中。
另外,本发明还提供了一种关键词确定装置,见图2,该装置可以具体包括:获取单元201及执行单元202。
获取单元201,用于获得多个不同聚类的文档集合;
执行单元202,用于将所述多个聚类中的任一聚类作为当前聚类,对所述当前聚类的文档集合,执行下述关键词确定操作:确定词语切分长度,并按照所述词语切分长度,对所述当前聚类的文档集合包含的文档进行切分,以得到多个词语;统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况;将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;以及将关键词得分满足预设条件的词语确定为所述当前聚类的文档集合的关键词。
在一个示例中,获取单元201用于获得多个不同聚类的文档集合,具体包括:
获得多篇文档,并确定每篇文档的聚类特征向量;
将文档的聚类特征向量输入至层次树聚类算法中,以将所述多篇文档划分为多个不同聚类的文档集合。
在一个示例中,获取单元201用于获得多个不同聚类的文档集合,具体包括:
获得多篇文档,并将每篇文档分别作为一个文档集合;
将每个文档集合分别与其他每个文档集合两两分组;
计算分组的两个文档集合中、一个文档集合中的每篇文档与另一文档集合中的每个文档之间的聚类特征相似度,并将最小的聚类特征相似度作为两个文档集合的距离相似度;
将距离相似度最大且满足预设相似度阈值的两个文档集合聚类为同一文档集合,并返回执行将每个文档集合分别与其他每个文档集合两两分组的步骤,直至最大的距离相似度不满足预设相似度阈值。
在一个示例中,执行单元202用于确定词语切分长度,具体包括:
获得用户输入的词单元最大个数,并获得预设的词单元最小个数;
依据所述词单元最小个数及所述词单元最大个数,确定多种词语切分长度。
在一个示例中,对于每个词语,该词语在所述当前聚类的文档集合中的出现文档篇数越多,该词语的关键词得分越高;该词语在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数越多,该词语的关键词得分越低。
在一个示例中,执行单元202用于统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况,具体包括:
统计每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数。
在一个示例中,执行单元202用于将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分,具体包括:
将每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=j*sqrt((c*c-d*e)*(c*c-d*e)/((k 1)(g 1)(h 1)(i 1)))中,得到每个词语的关键词得分;
其中,score表示词语的关键词得分;c表示词语在所述当前聚类的文档集合中的出现文档篇数;d表示词语在所述其他聚类的文档集合中的出现文档篇数;e表示词语在所述当前聚类的文档集合中的未出现文档篇数;k表示所述当前聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示所述其他聚类的文档集合的文档总篇数;i表示所述词语在所有聚类的文档集合中的未出现文档篇数;j表示词语切分长度。
在一个示例中,执行单元202用于将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分,具体包括:
将每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=(c*f-d*e)/((k 1)(g 1)(h 1)(i 1))中,得到每个词语的关键词得分;
其中,score表示词语的关键词得分;c表示词语在所述当前聚类的文档集合中的出现文档篇数;d表示词语在所述其他聚类的文档集合中的出现文档篇数;e表示词语在所述当前聚类的文档集合中的未出现文档篇数;f表示词语在所述其他聚类的文档集合中的未出现文档篇数;k表示所述当前聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示所述其他聚类的文档集合的文档总篇数;i表示所述词语在所有聚类的文档集合中的未出现文档篇数。
另外,本发明还提供了一种存储介质,其上存储有程序,所述程序被处理器执行时实现上述的关键词确定方法。
本发明实施例提供了一种设备,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的关键词的确定方法。本文中的设备可以是服务器、pc、pad、手机等。
本发明还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
获得多个不同聚类的文档集合;
将所述多个聚类中的任一聚类作为当前聚类,对所述当前聚类的文档集合执行下述关键词确定操作:
确定词语切分长度,并按照所述词语切分长度,对所述当前聚类的文档集合包含的文档进行切分,以得到多个词语;
统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况;
将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;
将关键词得分满足预设条件的词语确定为所述当前聚类的文档集合的关键词。
在一个示例中,所述获得多个不同聚类的文档集合,包括:
获得多篇文档,并确定每篇文档的聚类特征向量;
将文档的聚类特征向量输入至层次树聚类算法中,以将所述多篇文档划分为多个不同聚类的文档集合。
在一个示例中,所述获得多个不同聚类的文档集合,包括:
获得多篇文档,并将每篇文档分别作为一个文档集合;
将每个文档集合分别与其他每个文档集合两两分组;
计算分组的两个文档集合中、一个文档集合中的每篇文档与另一文档集合中的每个文档之间的聚类特征相似度,并将最小的聚类特征相似度作为两个文档集合的距离相似度;
将距离相似度最大且满足预设相似度阈值的两个文档集合聚类为同一文档集合,并返回执行将每个文档集合分别与其他每个文档集合两两分组的步骤,直至最大的距离相似度不满足预设相似度阈值。
在一个示例中,所述统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况,包括:
统计每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数。
在一个示例中,对于每个词语,该词语在所述当前聚类的文档集合中的出现文档篇数越多,该词语的关键词得分越高;该词语在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数越多,该词语的关键词得分越低。
在一个示例中,所述将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分,包括:
将每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=j*sqrt((c*c-d*e)*(c*c-d*e)/((k 1)(g 1)(h 1)(i 1)))中,得到每个词语的关键词得分;
其中,score表示词语的关键词得分;c表示词语在所述当前聚类的文档集合中的出现文档篇数;d表示词语在所述其他聚类的文档集合中的出现文档篇数;e表示词语在所述当前聚类的文档集合中的未出现文档篇数;k表示所述当前聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示所述其他聚类的文档集合的文档总篇数;i表示所述词语在所有聚类的文档集合中的未出现文档篇数;j表示词语切分长度。
在一个示例中,所述将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分,包括:
将每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=(c*f-d*e)/((k 1)(g 1)(h 1)(i 1))中,得到每个词语的关键词得分;
其中,score表示词语的关键词得分;c表示词语在所述当前聚类的文档集合中的出现文档篇数;d表示词语在所述其他聚类的文档集合中的出现文档篇数;e表示词语在所述当前聚类的文档集合中的未出现文档篇数;f表示词语在所述其他聚类的文档集合中的未出现文档篇数;k表示所述当前聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示所述其他聚类的文档集合的文档总篇数;i表示所述词语在所有聚类的文档集合中的未出现文档篇数。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
1.一种关键词确定方法,其特征在于,包括:
获得多个不同聚类的文档集合;
将所述多个聚类中的任一聚类作为当前聚类,对所述当前聚类的文档集合执行下述关键词确定操作:
确定词语切分长度,并按照所述词语切分长度,对所述当前聚类的文档集合包含的文档进行切分,以得到多个词语;
统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况;
将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;
将关键词得分满足预设条件的词语确定为所述当前聚类的文档集合的关键词。
2.根据权利要求1所述的关键词确定方法,其特征在于,所述获得多个不同聚类的文档集合,包括:
获得多篇文档,并确定每篇文档的聚类特征向量;
将文档的聚类特征向量输入至层次树聚类算法中,以将所述多篇文档划分为多个不同聚类的文档集合。
3.根据权利要求1所述的关键词确定方法,其特征在于,所述获得多个不同聚类的文档集合,包括:
获得多篇文档,并将每篇文档分别作为一个文档集合;
将每个文档集合分别与其他每个文档集合两两分组;
计算分组的两个文档集合中、一个文档集合中的每篇文档与另一文档集合中的每个文档之间的聚类特征相似度,并将最小的聚类特征相似度作为两个文档集合的距离相似度;
将距离相似度最大且满足预设相似度阈值的两个文档集合聚类为同一文档集合,并返回执行将每个文档集合分别与其他每个文档集合两两分组的步骤,直至最大的距离相似度不满足预设相似度阈值。
4.根据权利要求1所述的关键词确定方法,其特征在于,所述统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况,包括:
统计每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数。
5.根据权利要求1所述的关键词确定方法,其特征在于,对于每个词语,该词语在所述当前聚类的文档集合中的出现文档篇数越多,该词语的关键词得分越高;该词语在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数越多,该词语的关键词得分越低。
6.根据权利要求5所述的关键词确定方法,其特征在于,所述将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分,包括:
将每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=j*sqrt((c*c-d*e)*(c*c-d*e)/((k 1)(g 1)(h 1)(i 1)))中,得到每个词语的关键词得分;
其中,score表示词语的关键词得分;c表示词语在所述当前聚类的文档集合中的出现文档篇数;d表示词语在所述其他聚类的文档集合中的出现文档篇数;e表示词语在所述当前聚类的文档集合中的未出现文档篇数;k表示所述当前聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示所述其他聚类的文档集合的文档总篇数;i表示所述词语在所有聚类的文档集合中的未出现文档篇数;j表示词语切分长度。
7.根据权利要求5所述的关键词确定方法,其特征在于,所述将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分,包括:
将每个词语在所述当前聚类的文档集合中的出现文档篇数以及在所述当前聚类之外的其他聚类的文档集合中的出现文档篇数代入至卡方校验公式score=(c*f-d*e)/((k 1)(g 1)(h 1)(i 1))中,得到每个词语的关键词得分;
其中,score表示词语的关键词得分;c表示词语在所述当前聚类的文档集合中的出现文档篇数;d表示词语在所述其他聚类的文档集合中的出现文档篇数;e表示词语在所述当前聚类的文档集合中的未出现文档篇数;f表示词语在所述其他聚类的文档集合中的未出现文档篇数;k表示所述当前聚类的文档集合的文档总篇数;g表示词语在所有聚类的文档集合中的出现文档篇数;h表示所述其他聚类的文档集合的文档总篇数;i表示所述词语在所有聚类的文档集合中的未出现文档篇数。
8.一种关键词确定装置,其特征在于,包括:
获取单元,用于获得多个不同聚类的文档集合;
执行单元,用于将所述多个聚类中的任一聚类作为当前聚类,对所述当前聚类的文档集合,执行下述关键词确定操作:确定词语切分长度,并按照所述词语切分长度,对所述当前聚类的文档集合包含的文档进行切分,以得到多个词语;统计每个词语在所述当前聚类的文档集合中的出现情况以及在所述当前聚类之外的其他聚类的文档集合中的出现情况;将每个词语在所述当前聚类的文档集合中的出现情况以及在所述其他聚类的文档集合中的出现情况代入卡方检验公式中,得到每个词语的关键词得分;以及将关键词得分满足预设条件的词语确定为所述当前聚类的文档集合的关键词。
9.一种存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现如权利要求1~7中任一项所述的关键词确定方法。
10.一种关键词的确定设备,其特征在于,包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行如权利要求1~7中任一项所述的关键词的确定方法。
技术总结