CN110888981B - 基于标题的文档聚类方法、装置、终端设备及介质 - Google Patents
基于标题的文档聚类方法、装置、终端设备及介质 Download PDFInfo
- Publication number
- CN110888981B CN110888981B CN201911047481.0A CN201911047481A CN110888981B CN 110888981 B CN110888981 B CN 110888981B CN 201911047481 A CN201911047481 A CN 201911047481A CN 110888981 B CN110888981 B CN 110888981B
- Authority
- CN
- China
- Prior art keywords
- document
- cluster
- documents
- target
- titles
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例适用于文本处理技术领域,提供了一种基于标题的文档聚类方法、装置、终端设备及介质,所述方法包括:采集多个文档,各个文档分别具有相应的文档标题;针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度;根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词。本实施例通过对各个文档的标题进行处理,可以将具有高度关联性的标题所对应的文档聚为一类,降低了聚类时的计算复杂度。
Description
技术领域
本申请属于文本处理技术领域,特别是涉及一种基于标题的文档聚类方法、装置、终端设备及介质。
背景技术
文档标题对于查找文档内容有着至关重要的作用,通过将检索关键词与标题中的各个词语进行匹配,可以查找出包含检索关键词的多份文档。
以金融领域中的大量公告文档为例,对公告文档的标题的查找通常使用的是结合数据库存储的方式来进行检索。输入关键词,如“募集”、“资金”、“存放情况”、“专项报告”等,系统会在数据库中进行全部内容的检索与关键词匹配,然后输出标题中包含该关键词的文档。但是,按照上述检索方式需要检索的内容非常多,检索过程耗时较长。并且,通过对标题进行简单的关键词匹配,检索结果的准确率也较低,所获得的文档可能并非用户实际期望检索的内容。
发明内容
有鉴于此,本申请实施例提供了一种基于标题的文档聚类方法、装置、终端设备及介质,以解决现有技术中检索文档标题时耗时较长、准确率较低的问题。
本申请实施例的第一方面提供了一种基于标题的文档聚类方法,包括:
采集多个文档,各个文档分别具有相应的文档标题;
针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度,所述目标文档为所述初始文档簇中第一相似度大于所述第一预设阈值且小于第二预设阈值之间的文档,所述第二文档为不属于所述初始文档簇的文档;
根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词。
本申请实施例的第二方面提供了一种基于标题的文档聚类装置,包括:
文档采集模块,用于采集多个文档,各个文档分别具有相应的文档标题;
第一相似度计算模块,用于针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
初始文档簇聚类模块,用于将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
第二相似度计算模块,用于针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度,所述目标文档为所述初始文档簇中第一相似度大于所述第一预设阈值且小于第二预设阈值之间的文档,所述第二文档为不属于所述初始文档簇的文档;
目标文档簇生成模块,用于根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词。
本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述基于标题的文档聚类方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述基于标题的文档聚类方法的步骤。
与现有技术相比,本申请实施例包括以下优点:
本申请实施例,通过采集多个文档,并针对其中的任一文档计算出该文档的文档标题与其他各个文档的文档标题之间的第一相似度后,可以将第一相似度大于第一预设阈值的多份文档聚类为初始文档簇。然后,针对初始文档簇中的各个目标文档,再通过计算目标文档的标题与第二文档的标题之间的第二相似度,可以对初始文档簇进行更新,获得最终的目标文档簇。本实施例通过对各个文档的标题进行处理,可以将具有高度关联性的标题所对应的文档聚为一类。由于文档标题往往概括了文档的主要内容,基于文档标题来完成聚类,极大了降低了聚类时的计算复杂度,提高了聚类的准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例的一种基于标题的文档聚类方法的步骤流程示意图;
图2是本申请一个实施例的另一种基于标题的文档聚类方法的步骤流程示意图;
图3是本申请一个实施例的又一种基于标题的文档聚类方法的步骤流程示意图;
图4是本申请一个实施例的一种基于标题的文档聚类装置的示意图;
图5是本申请一个实施例的一种终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本申请。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
下面通过具体实施例来说明本申请的技术方案。
参照图1,示出了本申请一个实施例的一种基于标题的文档聚类方法的步骤流程示意图,具体可以包括如下步骤:
S101、采集多个文档,各个文档分别具有相应的文档标题;
需要说明的是,本方法可以适用于终端设备。即,通过终端设备的处理,实现对各个文档的聚类。本实施例中的终端设备可以是笔记本电脑、台式计算机等设备,本实施例对终端设备的具体类型不作限定。
在本实施例中,为了实现对各个文档的聚类,可以首先采集多个文档。例如,通过网页抓取特定类型的文档,该文档可以是上市公司定期或不定期发布的公告,也可以是政府部门发布的规划等等,本实施例对文档的具体类型亦不作限定。
当然,对于采集到的多个文档,可以按照统一的方式对各个文档进行预处理。例如,对各个文档进行格式转换,删除文档中的冗余信息等等。
S102、针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
通常,文档的标题能够概括该文档中具体的内容。例如,对于上市公司发布的分红公告,其标题中一般就包含有“分红”这个关键词。因此,可以通过文档的标题来对各个文档进行聚类。
在本实施例中,对于采集到的各个文档,可以首先计算文档标题之间的相似度。例如,可以从多个文档中随机选择一个文档,然后分别计算该文档的标题与其他文档的标题之间的相似度,即第一相似度。
在具体实现中,文档标题之间的相似度可以通过计算两个标题中是否包含相同的词语,如果包含相同的词语,相同的词语在两个文档中各占的比例又是多少等方式来计算标题之间的相似度,也可以通过计算两个标题之间的编辑距离等方式来计算标题之间的相似度。本领域技术人员可以根据实际需要采用恰当的方式计算标题间的相似度,本实施例对此不作限定。
S103、将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
本实施例中的第一预设阈值可以根据实际需要确定,例如可以所以是0.6或其他数值。
在计算出文档标题之间的第一相似度后,可以将第一相似度大于第一预设阈值的那些文档聚类为初始文档簇。
S104、针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度;
需要说明的是,由于在聚类成初始文档簇时是以随机选择的某个标题为基准,然后将所有标题中与该标题相似度大于第一预设阈值的标题聚为一类的,有部分标题存在被遗漏掉,或者以另外一个标题为基准进行聚类才能获得更好的聚类结果的可能性。
因此,在本实施例中,在聚类出初始文档簇后,还可以对初始文档簇进行更新。为了更新初始文档簇,本实施例可以再次计算初始文档簇中的各个目标文档的标题与各个第二文档之间的相似度,即第二相似度。
本实施例中的目标文档可以是指已经被聚类至初始文档簇中,但其与基准文档之间的第一相似度相对较小的那部分文档。例如,目标文档可以是初始文档簇中第一相似度大于第一预设阈值且小于第二预设阈值的文档。若第一预设阈值为0.6,第二预设阈值为0.8,则在聚类为初始文档簇时是将所有相似度大于0.6的文档聚为一类。然后,在需要对已聚类的文档簇进行更新时,可以从已聚类的文档簇中筛选出相似度介于0.6至0.8之间的文档作为目标文档与第二文档进行标题相似度计算。其中,第二文档为不属于初始文档簇的那些文档。
在计算目标文档的标题与第二文档的标题之间的第二相似度时,采用的相似度计算方法可以与计算第一相似度时采用的方法相同,也可以不同,本实施例对此不作限定。
S105、根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词。
在根据第二相似度对初始文档簇进行更新时,同样可以设置一个阈值,对于第二相似度大于该阈值的第二文档,可以将其添加至初始文档簇,否则,则不对该文档进行处理。
待全部文档均按上述方式处理完毕后,所得到的最终的文档簇即是目标文档簇。对于目标文档簇,还可以识别出相应的簇关键词,作为目标文档簇的一个标签。
在本申请实施例中,通过采集多个文档,并针对其中的任一文档计算出该文档的文档标题与其他各个文档的文档标题之间的第一相似度后,可以将第一相似度大于第一预设阈值的多份文档聚类为初始文档簇。然后,针对初始文档簇中的各个目标文档,再通过计算目标文档的标题与第二文档的标题之间的第二相似度,可以对初始文档簇进行更新,获得最终的目标文档簇。本实施例通过对各个文档的标题进行处理,可以将具有高度关联性的标题所对应的文档聚为一类。由于文档标题往往概括了文档的主要内容,基于文档标题来完成聚类,极大了降低了聚类时的计算复杂度,提高了聚类的准确率。
参照图2,示出了本申请一个实施例的另一种基于标题的文档聚类方法的步骤流程示意图,具体可以包括如下步骤:
S201、采集多个文档,各个文档分别具有相应的文档标题;
需要说明的是,本方法可以适用于终端设备。即,通过终端设备对各个文档的文档标题进行处理,实现对各个文档的聚类。
S202、对各个文档的文档标题进行分词,统计各个文档标题中的词语个数;
在对各个文档的文档标题进行处理时,可以首先对文档标题进行去格式化处理。例如,删除标题中的空格、特殊字符等对于后续聚类没有意义的格式。然后,再使用分词工具对标题进行分词。
需要说明的是,在分词后,还可以将一些无用的词语进行删除。后续的处理过程中仅仅对保留下来的词语进行处理即可,进一步降低了处理的复杂度。
在具体实现中,可以根据预设的停用词表对分词后获得的各个词语进行匹配,从而删除掉无用的停用词。
对于保留下来的词语,可以统计每个文档标题中保留下来的词语的个数。
S203、针对任一文档,分别统计所述文档的文档标题与其他各个文档的文档标题中包含的相同词语的个数;
本实施例中的任一文档可以是随机选择的一个基准文档,后续可以以此文档为基准,逐个计算该基准文档的文档标题与其他各个文档的文档标题之间的第一相似度。
在具体实现中,可以首先统计上述基准文档的文档标题与其他各个文档的文档标题中包含的相同词语的个数。
S204、根据所述相同词语在所述各个文档标题的全部词语中的比例,逐个计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
在本实施例中,可以通过计算两个文档标题在分词后获得的相同词语的个数,分别除以两个文档标题实际的词语个数得到两个结果,再将这两个结果进行相加的值除以两个结果进行相乘的值,获得第一相似度。
即,可以采用如下公司计算两个文档的文档标题之间的第一相似度:
(k/i+k/j)/((k/i)×(k/j))
其中,i为其中一个文档的文档标题中的词语个数,j为待计算的另一文档的文档标题中的词语个数,k为其中一个文档的文档标题与另一文档的文档标题中包含的相同词语的个数。
在上述公式中,通过分别除以两个文档标题实际的词语个数,可以解决由于某个文档标题的内容过长,从而导致该文档标题的词语个数较多的问题,由相同词语个数除以文档标题实际的词语个数,就是为了降低较长的文档标题对相似度的影响;其次,将两个结果进行相加的值除以两个结果进行相乘的值,也能够解决由于一个文档标题的内容结果较好,而另一个文档标题的内容结果较差时,相似度值会被较好的结果或较差的结果影响的问题。采用本实施例的上述计算方式,当两个文档标题的内容结果都较好时,相似度值才会更高,说明两个文档标题的内容更相似,有效的保证了文档标题的内容相似的准确性。
S205、将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
在计算出文档标题之间的第一相似度后,可以将第一相似度大于第一预设阈值的那些文档聚类为初始文档簇。例如,可以将第一相似度大于0.6的那些文档聚类为初始文档簇。
S206、针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度;
在本实施例中,目标文档可以是初始文档簇中第一相似度大于第一预设阈值且小于第二预设阈值的文档,而第二文档则是不属于初始文档簇的文档。
例如,可以从初始文档簇中提取出第一相似度大于0.6且小于0.8的文档作为目标文档,然后再将目标文档继续与其他的第二文档计算标题之间的第二相似度。
对于相似度在0.8以上的文档标题,可以认为该标题已属于该簇,不再进行相似度计算,以减少计算相似度的复杂度;对于相似度在0.6到0.8之间的文档标题文本,则可以认为该标题属于该簇,但还需要与其他文档标题进行相似度计算,以保证文档标题的相似度的准确性。
由于仅仅需要计算相似度大于0.6小于0.8的部分文档,计算的内容将会越来越少,计算的速度也会越来越快。
S207、根据所述第二相似度更新所述初始文档簇,得到目标文档簇;
在本实施例中,在计算出目标文档与第二文档之间的第二相似度后,述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度均小于或等于第二预设阈值,则可以认为该第二文档的文档标题与任一目标文档的文档标题之间的相似度均较低,可以舍弃该第二文档。若第二文档的文档标题与任一目标文档的文档标题之间的第二相似度大于上述第二预设阈值,则认为第二文档至少与某一个目标文档的文档标题具有较高的相似度,可以将该第二文档添加至初始文档簇。当计算完全部第二文档的文档标题与各个目标文档的文档标题之间的第二相似度后,根据添加至初始文档簇的各个第二文档,可以得到目标文档簇。
S208、分别统计各个词语在所述目标文档簇的全部文档标题中出现的总次数,根据所述各个词语出现的总次数确定多个目标词;
在本实施例中,对于已经聚为一簇的各个文档,可以统计各个文档的文档标题中每个词语在全部文档标题中出现的总次数,根据各个词语出现的总次数,从大到小顺序排列各个词语。上述出现的总次数可以看作是各个词语的词频。
然后,可以进一步计算各个词语之间的词频落差。即,分别计算相邻的两个词语出现的总次数之间的差值。例如,某一个词语的词频为50次,按序排列的下一个词语的词频为48次,再下一个词语的词频为45次,则前两个词语之间的词频落差为2,后两个词语之间的词频落差为3。
在本实施例中,可以以目标差值对应的目标词语,和出现的总次数超过上述目标词语出现的总次数的多个其他词语为目标词,其中,目标差值为首次出现的超过预设数值的差值。
在具体实现中,目标差值可以设定为3。即,对于按照词频从大到小排列的多个词语,在分别计算出两两词语之间的词频落差后,可以从词频最大的第一个词语开始查找,找到词频落差大于3的第一个目标词,并将该目标与其之前的全部词语共同作为本文档簇的初始簇关键词。
S209、分别计算所述多个目标词与多个第三文档的文档标题之间的第三相似度,根据所述第三相似度迭代更新所述目标文档簇;
由于多个目标词可以看作是对一个文档标题进行分词后所获得的,因此可以将多个目标词当作一个文档标题,再将其与第三文档进行标题相似度的计算。其中,第三文档为不属于目标文档簇的文档。
对于计算出的第三相似度,若第三相似度大于第二预设阈值,例如大于0.8,则可以将第三文档加入目标文档簇。
S210、当根据所述各个词语出现的总次数确定出的多个目标词不再发生变化时,设置当前的多个目标词作为所述目标文档簇的簇关键词。
在将第三文档加入目标文档簇,完成对目标文档簇的更新后,可以继续按照上述步骤找出当前的目标文档簇的多个目标词。若此时得到的目标词与前一次迭代获得的目标词不同,则可以继续通过计算第三相似度对目标文档簇进行更新,直到获得的目标词与前一次迭代获得的目标词相同,则结束,表示该簇已经找到最相似的标题,也解决了上述被漏掉或有更好簇的问题。
待迭代完成后,所获得目标文档簇即是最终聚类获得的文档簇。此时,可以将不再发生变化的多个目标词作为该文档簇的簇关键词。
在本实施例中,由于文档标题往往概括了文档的主要内容,通过对各个文档的标题进行处理,可以将具有高度关联性的标题所对应的文档聚为一类。同时,本实施例通过多次迭代过程对最初形成的初始文档簇进行更新,解决了由于随机选择基准文档用于计算相似度可能带来的具有关联性的文档标题被遗漏掉的问题,保证了聚类的完整性和准确性。
参照图3,示出了本申请一个实施例的又一种基于标题的文档聚类方法的步骤流程示意图,具体可以包括如下步骤:
S301、采集多个文档,各个文档分别具有相应的文档标题;
S302、针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
S303、将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
S304、针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度;
S305、根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词;
需要说明的是,本实施例的步骤S301-S305与前述实施例中步骤S101-S105以及S201-S210类似,可以相互参阅,本实施例对此不再赘述。
S306、当接收到用户输入的检索关键词时,根据各个文档簇的簇关键词和所述检索关键词,确定检索文档簇;
在本实施例中,聚类完成的文档簇可以用于文档检索。
在具体实现中,当用户通过输入某个检索关键词进行文档检索时,可以首先根据该检索关键词确定出待检索文档簇。
由于各个文档簇均已设置有相应的簇关键词,因此,可以将簇关键词包含上述检索关键词的文档簇作为检索文档簇。
S307、提取所述检索文档簇中的多个文档,向所述用户推荐所述检索文档簇中的多个文档。
在确定出检索文档簇后,可以直接将该检索文档簇中的各个文档推荐给用户。例如,若经过聚类获得某个文档簇,且该簇的簇关键词包括“分红”,则在接收到用户检索“分红”的信息后,将上述文档簇中的文档推荐给用户。由于簇关键词为“分红”,则该文档簇中的各个文档的文档标题必然与“分红”这一关键词具有较强的关联性,通过将该文档簇中的文档推荐给用户,可以极大地匹配用户的检索期望。
需要说明的是,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
参照图4,示出了本申请一个实施例的一种基于标题的文档聚类装置的示意图,具体可以包括如下模块:
文档采集模块401,用于采集多个文档,各个文档分别具有相应的文档标题;
第一相似度计算模块402,用于针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
初始文档簇聚类模块403,用于将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
第二相似度计算模块404,用于针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度,所述目标文档为所述初始文档簇中第一相似度大于所述第一预设阈值且小于第二预设阈值的文档,所述第二文档为不属于所述初始文档簇的文档;
目标文档簇生成模块405,用于根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词。
在本申请实施例中,所述第一相似度计算模块402具体可以包括如下子模块:
词语个数统计子模块,用于对各个文档的文档标题进行分词,统计各个文档标题中的词语个数;
相同词语统计子模块,用于针对任一文档,分别统计所述文档的文档标题与其他各个文档的文档标题中包含的相同词语的个数;
第一相似度计算子模块,用于根据所述相同词语在所述各个文档标题的全部词语中的比例,逐个计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度。
在本申请实施例中,根据所述相同词语在所述各个文档标题的全部词语中的比例,采用如下公式,逐个计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度:
(k/i+k/j)/((k/i)×(k/j))
其中,i为所述文档的文档标题中的词语个数,j为待计算的另一文档的文档标题中的词语个数,k为所述文档的文档标题与所述另一文档的文档标题中包含的相同词语的个数。
在本申请实施例中,所述目标文档簇生成模块405具体可以包括如下子模块:
第二文档舍弃子模块,用于若所述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度均小于或等于所述第二预设阈值,则舍弃所述第二文档;
第二文档添加子模块,用于若所述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度大于所述第二预设阈值,则将所述第二文档添加至所述初始文档簇;
目标文档簇生成子模块,用于当计算完全部第二文档的文档标题与各个目标文档的文档标题之间的第二相似度后,根据添加至所述初始文档簇的各个第二文档,得到目标文档簇。
在本申请实施例中,所述目标文档簇生成模块405还可以包括如下子模块:
词语总次数统计子模块,用于分别统计各个词语在所述目标文档簇的全部文档标题中出现的总次数;
目标词确定子模块,用于根据所述各个词语出现的总次数确定多个目标词;
目标文档簇更新子模块,用于分别计算所述多个目标词与多个第三文档的文档标题之间的第三相似度,根据所述第三相似度迭代更新所述目标文档簇,所述第三文档为不属于所述目标文档簇的文档;
簇关键词设置子模块,用于在根据所述各个词语出现的总次数确定出的多个目标词不再发生变化时,设置当前的多个目标词作为所述目标文档簇的簇关键词。
在本申请实施例中,所述目标词确定子模块具体可以包括如下单元:
词语排序单元,用于根据所述各个词语出现的总次数,从大到小顺序排列所述各个词语;
次数差值计算单元,用于分别计算相邻的两个词语出现的总次数之间的差值;
目标词确定单元,用于以目标差值对应的目标词语,和所述出现的总次数超过所述目标词语出现的总次数的多个其他词语为目标词,其中,所述目标差值为首次出现的超过预设数值的差值。
在本申请实施例中,所述装置还可以包括如下模块:
检索文档簇确定模块,用于在接收到用户输入的检索关键词时,根据各个文档簇的簇关键词和所述检索关键词,确定检索文档簇,所述检索文档簇的簇关键词至少包含所述检索关键词;
文档推荐模块,用于提取所述检索文档簇中的多个文档,向所述用户推荐所述检索文档簇中的多个文档。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参见方法实施例部分的说明即可。
参照图5,示出了本申请一个实施例的一种终端设备的示意图。如图5所示,本实施例的终端设备500包括:处理器510、存储器520以及存储在所述存储器520中并可在所述处理器510上运行的计算机程序521。所述处理器510执行所述计算机程序521时实现上述基于标题的文档聚类方法各个实施例中的步骤,例如图1所示的步骤S101至S105。或者,所述处理器510执行所述计算机程序521时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块401至405的功能。
示例性的,所述计算机程序521可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器520中,并由所述处理器510执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段可以用于描述所述计算机程序521在所述终端设备500中的执行过程。例如,所述计算机程序521可以被分割成文档采集模块、第一相似度计算模块、初始文档簇聚类模块、第二相似度计算模块、目标文档簇生成模块,各模块具体功能如下:
文档采集模块,用于采集多个文档,各个文档分别具有相应的文档标题;
第一相似度计算模块,用于针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
初始文档簇聚类模块,用于将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
第二相似度计算模块,用于针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度,所述目标文档为所述初始文档簇中第一相似度大于所述第一预设阈值且小于第二预设阈值的文档,所述第二文档为不属于所述初始文档簇的文档;
目标文档簇生成模块,用于根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词。
所述终端设备500可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备500可包括,但不仅限于,处理器510、存储器520。本领域技术人员可以理解,图5仅仅是终端设备500的一种示例,并不构成对终端设备500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备500还可以包括输入输出设备、网络接入设备、总线等。
所述处理器510可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器520可以是所述终端设备500的内部存储单元,例如终端设备500的硬盘或内存。所述存储器520也可以是所述终端设备500的外部存储设备,例如所述终端设备500上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等等。进一步地,所述存储器520还可以既包括所述终端设备500的内部存储单元也包括外部存储设备。所述存储器520用于存储所述计算机程序521以及所述终端设备500所需的其他程序和数据。所述存储器520还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制。尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (6)
1.一种基于标题的文档聚类方法,其特征在于,包括:
采集多个文档,并对各个文档进行预处理,各个文档分别具有相应的文档标题;
针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度,所述目标文档为所述初始文档簇中第一相似度大于所述第一预设阈值且小于第二预设阈值的文档,所述第二文档为不属于所述初始文档簇的文档;
根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词;
其中,所述计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度,包括:
对各个文档的文档标题进行分词,统计各个文档标题中的词语个数;
针对任一文档,分别统计所述文档的文档标题与其他各个文档的文档标题中包含的相同词语的个数;
根据所述相同词语在所述各个文档标题的全部词语中的比例,采用如下公式,逐个计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度:
(k/i+k/j)/((k/i)×(k/j))
其中,i为所述文档的文档标题中的词语个数,j为待计算的另一文档的文档标题中的词语个数,k为所述文档的文档标题与所述另一文档的文档标题中包含的相同词语的个数;
所述根据所述第二相似度更新所述初始文档簇,得到目标文档簇,包括:
若所述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度均小于或等于所述第二预设阈值,则舍弃所述第二文档;
若所述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度大于所述第二预设阈值,则将所述第二文档添加至所述初始文档簇;
当计算完全部第二文档的文档标题与各个目标文档的文档标题之间的第二相似度后,根据添加至所述初始文档簇的各个第二文档,得到目标文档簇;
所述设置所述目标文档簇的簇关键词,包括:
分别统计各个词语在所述目标文档簇的全部文档标题中出现的总次数;
根据所述各个词语出现的总次数确定多个目标词;
分别计算所述多个目标词与多个第三文档的文档标题之间的第三相似度,若所述第三相似度大于所述第二预设阈值,则将所述第三文档加入目标文档簇,所述第三文档为不属于所述目标文档簇的文档;
当根据所述各个词语出现的总次数确定出的多个目标词不再发生变化时,设置当前的多个目标词作为所述目标文档簇的簇关键词。
2.根据权利要求1所述的方法,其特征在于,所述根据所述各个词语出现的总次数确定多个目标词,包括:
根据所述各个词语出现的总次数,从大到小顺序排列所述各个词语;
分别计算相邻的两个词语出现的总次数之间的差值;
以目标差值对应的目标词语,和所述出现的总次数超过所述目标词语出现的总次数的多个其他词语为目标词,其中,所述目标差值为首次出现的超过预设数值的差值。
3.根据权利要求1所述的方法,其特征在于,还包括:
当接收到用户输入的检索关键词时,根据各个文档簇的簇关键词和所述检索关键词,确定检索文档簇,所述检索文档簇的簇关键词至少包含所述检索关键词;
提取所述检索文档簇中的多个文档,向所述用户推荐所述检索文档簇中的多个文档。
4.一种基于标题的文档聚类装置,其特征在于,包括:
文档采集模块,用于采集多个文档,并对各个文档进行预处理,各个文档分别具有相应的文档标题;
第一相似度计算模块,用于针对任一文档,计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度;
初始文档簇聚类模块,用于将所述第一相似度大于第一预设阈值的多份文档聚类为初始文档簇;
第二相似度计算模块,用于针对所述初始文档簇中的各个目标文档,分别计算所述目标文档的文档标题与多个第二文档的文档标题之间的第二相似度,所述目标文档为所述初始文档簇中第一相似度大于所述第一预设阈值且小于第二预设阈值的文档,所述第二文档为不属于所述初始文档簇的文档;
目标文档簇生成模块,用于根据所述第二相似度更新所述初始文档簇,得到目标文档簇,并设置所述目标文档簇的簇关键词;
所述第一相似度计算模块,包括:
词语个数统计子模块,用于对各个文档的文档标题进行分词,统计各个文档标题中的词语个数;
相同词语统计子模块,用于针对任一文档,分别统计所述文档的文档标题与其他各个文档的文档标题中包含的相同词语的个数;
第一相似度计算子模块,用于根据所述相同词语在所述各个文档标题的全部词语中的比例,采用如下公式,逐个计算所述文档的文档标题与其他各个文档的文档标题之间的第一相似度:
(k/i+k/j)/((k/i)×(k/j))
其中,i为所述文档的文档标题中的词语个数,j为待计算的另一文档的文档标题中的词语个数,k为所述文档的文档标题与所述另一文档的文档标题中包含的相同词语的个数;
所述目标文档簇生成模块,包括:
第二文档舍弃子模块,用于若所述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度均小于或等于所述第二预设阈值,则舍弃所述第二文档;
第二文档添加子模块,用于若所述第二文档的文档标题与任一目标文档的文档标题之间的第二相似度大于所述第二预设阈值,则将所述第二文档添加至所述初始文档簇;
目标文档簇生成子模块,用于当计算完全部第二文档的文档标题与各个目标文档的文档标题之间的第二相似度后,根据添加至所述初始文档簇的各个第二文档,得到目标文档簇;
所述目标文档簇生成模块,包括:
词语总次数统计子模块,用于分别统计各个词语在所述目标文档簇的全部文档标题中出现的总次数;
目标词确定子模块,用于根据所述各个词语出现的总次数确定多个目标词;
目标文档簇更新子模块,用于分别计算所述多个目标词与多个第三文档的文档标题之间的第三相似度,若所述第三相似度大于所述第二预设阈值,则将所述第三文档加入目标文档簇,所述第三文档为不属于所述目标文档簇的文档;
簇关键词设置子模块,用于当根据所述各个词语出现的总次数确定出的多个目标词不再发生变化时,设置当前的多个目标词作为所述目标文档簇的簇关键词。
5.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述基于标题的文档聚类方法的步骤。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述基于标题的文档聚类方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047481.0A CN110888981B (zh) | 2019-10-30 | 2019-10-30 | 基于标题的文档聚类方法、装置、终端设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047481.0A CN110888981B (zh) | 2019-10-30 | 2019-10-30 | 基于标题的文档聚类方法、装置、终端设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110888981A CN110888981A (zh) | 2020-03-17 |
CN110888981B true CN110888981B (zh) | 2022-11-01 |
Family
ID=69746624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911047481.0A Active CN110888981B (zh) | 2019-10-30 | 2019-10-30 | 基于标题的文档聚类方法、装置、终端设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110888981B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632907A (zh) * | 2021-01-04 | 2021-04-09 | 北京明略软件系统有限公司 | 用于文档标记方法、装置及设备 |
CN113254583B (zh) * | 2021-05-28 | 2021-11-02 | 北京明略软件系统有限公司 | 一种基于语义向量的文档标记方法、装置及介质 |
CN113673550A (zh) * | 2021-06-30 | 2021-11-19 | 浙江大华技术股份有限公司 | 聚类方法、装置、电子设备、计算机可读存储介质 |
CN113408660B (zh) * | 2021-07-15 | 2024-05-24 | 北京百度网讯科技有限公司 | 图书聚类方法、装置、设备和存储介质 |
CN117851602B (zh) * | 2024-03-07 | 2024-05-14 | 武汉百智诚远科技有限公司 | 基于深度学习的法律文件自动分类方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090017830A (ko) * | 2007-08-16 | 2009-02-19 | 한국과학기술원 | 신뢰도를 향상시킨 문서 구조 기반 군집 장치 및 방법 |
CN102855282A (zh) * | 2012-08-01 | 2013-01-02 | 北京百度网讯科技有限公司 | 一种文档推荐方法及装置 |
CN105095209A (zh) * | 2014-04-21 | 2015-11-25 | 北京金山网络科技有限公司 | 文档聚类方法及装置、网络设备 |
CN108038099A (zh) * | 2017-11-29 | 2018-05-15 | 贵州大学 | 基于词聚类的低频关键词识别方法 |
CN108197117A (zh) * | 2018-01-31 | 2018-06-22 | 厦门大学 | 一种基于文档主题结构与语义的中文文本关键词提取方法 |
CN109359296A (zh) * | 2018-09-18 | 2019-02-19 | 深圳前海微众银行股份有限公司 | 舆情情感识别方法、装置及计算机可读存储介质 |
CN109522410A (zh) * | 2018-11-09 | 2019-03-26 | 北京百度网讯科技有限公司 | 文档聚类方法及平台、服务器和计算机可读介质 |
CN110019806A (zh) * | 2017-12-25 | 2019-07-16 | 中国移动通信集团公司 | 一种文档聚类方法及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060242098A1 (en) * | 2005-04-26 | 2006-10-26 | Content Analyst Company, Llc | Generating representative exemplars for indexing, clustering, categorization and taxonomy |
CN109190111B (zh) * | 2018-08-07 | 2023-09-08 | 北京奇艺世纪科技有限公司 | 一种文档正文关键词提取方法及装置 |
CN110232126B (zh) * | 2019-06-14 | 2023-10-24 | 腾讯科技(深圳)有限公司 | 热点挖掘方法及服务器和计算机可读存储介质 |
-
2019
- 2019-10-30 CN CN201911047481.0A patent/CN110888981B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090017830A (ko) * | 2007-08-16 | 2009-02-19 | 한국과학기술원 | 신뢰도를 향상시킨 문서 구조 기반 군집 장치 및 방법 |
CN102855282A (zh) * | 2012-08-01 | 2013-01-02 | 北京百度网讯科技有限公司 | 一种文档推荐方法及装置 |
CN105095209A (zh) * | 2014-04-21 | 2015-11-25 | 北京金山网络科技有限公司 | 文档聚类方法及装置、网络设备 |
CN108038099A (zh) * | 2017-11-29 | 2018-05-15 | 贵州大学 | 基于词聚类的低频关键词识别方法 |
CN110019806A (zh) * | 2017-12-25 | 2019-07-16 | 中国移动通信集团公司 | 一种文档聚类方法及设备 |
CN108197117A (zh) * | 2018-01-31 | 2018-06-22 | 厦门大学 | 一种基于文档主题结构与语义的中文文本关键词提取方法 |
CN109359296A (zh) * | 2018-09-18 | 2019-02-19 | 深圳前海微众银行股份有限公司 | 舆情情感识别方法、装置及计算机可读存储介质 |
CN109522410A (zh) * | 2018-11-09 | 2019-03-26 | 北京百度网讯科技有限公司 | 文档聚类方法及平台、服务器和计算机可读介质 |
Non-Patent Citations (1)
Title |
---|
基于改进TextRank算法的中文文本摘要提取;徐馨韬等;《计算机工程》;20181112;第273-277页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110888981A (zh) | 2020-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110888981B (zh) | 基于标题的文档聚类方法、装置、终端设备及介质 | |
CN111581976B (zh) | 医学术语的标准化方法、装置、计算机设备及存储介质 | |
CN110874530B (zh) | 关键词提取方法、装置、终端设备及存储介质 | |
CN110851598B (zh) | 文本分类方法、装置、终端设备及存储介质 | |
US10579661B2 (en) | System and method for machine learning and classifying data | |
CN110633330B (zh) | 事件发现方法、装置、设备及存储介质 | |
CN111460153B (zh) | 热点话题提取方法、装置、终端设备及存储介质 | |
CN103049568B (zh) | 对海量文档库的文档分类的方法 | |
JP5616444B2 (ja) | 文書インデックス化およびデータクエリングのための方法およびシステム | |
CN113836131B (zh) | 一种大数据清洗方法、装置、计算机设备及存储介质 | |
CN113407785B (zh) | 一种基于分布式储存系统的数据处理方法和系统 | |
CN112784062A (zh) | 一种成语知识图谱构建方法及装置 | |
CN111913860A (zh) | 一种操作行为分析方法及装置 | |
CN111538903B (zh) | 搜索推荐词确定方法、装置、电子设备及计算机可读介质 | |
CN110399464B (zh) | 一种相似新闻判别方法、系统及电子设备 | |
CN112307318A (zh) | 一种内容发布方法、系统及装置 | |
Chen et al. | Ranked window query retrieval over video repositories | |
CN113901037A (zh) | 数据管理方法、装置及存储介质 | |
CN116032741A (zh) | 一种设备识别方法、装置、电子设备和计算机存储介质 | |
CN112182140B (zh) | 结合rpa和ai的信息录入方法、装置、计算机设备和介质 | |
CN112579781A (zh) | 文本归类方法、装置、电子设备及介质 | |
CN116821087A (zh) | 输电线路故障数据库构建方法、装置、终端及存储介质 | |
CN114116811B (zh) | 日志处理方法、装置、设备及存储介质 | |
CN113032566B (zh) | 一种舆情聚类方法、装置以及设备 | |
CN113868510A (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 |