CN112579769A - 关键词的聚类方法、装置、存储介质和电子设备 - Google Patents
关键词的聚类方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN112579769A CN112579769A CN201910944133.7A CN201910944133A CN112579769A CN 112579769 A CN112579769 A CN 112579769A CN 201910944133 A CN201910944133 A CN 201910944133A CN 112579769 A CN112579769 A CN 112579769A
- Authority
- CN
- China
- Prior art keywords
- clustered
- cluster
- keyword
- keywords
- similarity
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 239000013598 vector Substances 0.000 claims abstract description 211
- 238000012545 processing Methods 0.000 claims description 26
- 230000011218 segmentation Effects 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000012935 Averaging Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 6
- 238000004422 calculation algorithm Methods 0.000 description 11
- 238000012549 training Methods 0.000 description 8
- 238000013138 pruning Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
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
技术领域
本发明涉及计算机领域,具体而言,涉及一种关键词的聚类方法、装置、存储介质和电子设备。
背景技术
目前,在进行关键词聚类时,可以是通过机器学习算法对关键词进行聚类。但是,机器学习算法需要提前设置聚类的数量,并且针对性较强,对于一些样本分布变化较大的数据来说,聚类效果较差。
在相关技术中,还可以基于词语相似度对关键词进行聚类。比如,基于世界知识的计算方法,该方法也即根据世界知识(Ontology)计算词语语义距离的方法,还可以是利用大规模的语料库进行统计,可以是利用词语的相关性来计算词语的相似度。
上述方法虽然可以实现对关键词进行聚类,但是,对关键词进行聚类的准确性低,对于一些相同前缀或后缀的词组很容易分到一类,还会受数据稀疏的影响,对于一些未出现词组,也容易得不到相似度结果,从而存在对关键词进行聚类的准确性低的技术问题。
针对现有技术中对关键词进行聚类的准确性低的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种关键词的聚类方法、装置、存储介质和电子设备,以至少解决对关键词进行聚类的准确性低的技术问题。
本发明实施例提供了一种关键词的聚类方法。该方法可以包括:确定待聚类关键词的词向量;根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度;根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。
可选地,确定待聚类关键词的词向量包括:基于预设词典确定待聚类关键词的词向量,其中,预设词典中包括多个分词以及每个分词对应的词向量。
可选地,在待聚类关键词不存在于预设词典的情况下,该方法还包括:对待聚类关键词进行分词处理,得到多个分词;基于预设词典确定各个分词的词向量;根据各个分词的词向量得到待聚类关键词的词向量。
可选地,确定待聚类关键词与每个聚类之间的相似度,包括:对于每个聚类,根据待聚类关键词的词向量与聚类中各个关键词的词向量,计算待聚类关键词与聚类中所有关键词的相似度之和,将和作为待聚类关键词与聚类之间的相似度。
可选地,根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类,包括:从待聚类关键词与各个聚类之间的相似度中选取相似度的最大值;判断选取的最大值是否大于第一预设阈值;在判断结果为是的情况下,将最大值所对应的聚类确定为待聚类关键词所在的聚类;在判断结果为否的情况下,新建聚类,并将新建聚类确定为待聚类关键词所在的聚类。
可选地,在确定待聚类关键词所在的聚类之后,该方法还包括:获取每个聚类中关键词的词向量;对于每个聚类,将聚类中关键词的词向量进行求平均值计算,得到平均向量,并将聚类中词向量与平均向量之差大于第二预设阈值的关键词从聚类中删除。
可选地,该方法还包括:根据删除的关键词的词向量与其它聚类中所包含关键词的词向量,确定删除的关键词与每个其他聚类之间的相似度,并确定删除的关键词所在的聚类。
为了实现上述目的,根据本发明的一个方面,提供了一种关键词的聚类方法的装置。该装置可以包括:第一确定单元,用于确定待聚类关键词的词向量;第二确定单元,用于根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度;第三确定单元,用于根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。
为了实现上述目的,根据本发明的一个方面,还提供了一种存储介质。该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行本发明实施例的关键词的聚类方法。
为了实现上述目的,根据本发明的一个方面,还提供了一种电子设备。该电子设备包括至一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行本发明实施例的关键词的聚类方法。
通过本发明,确定待聚类关键词的词向量;根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度;根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。也就是说,本发明对于待聚类关键词,先确定其词向量,然后通过该待聚类关键词的词向量和每个聚类中所包含关键词的词向量,来得到待聚类关键词与每个聚类之间的相似度,这样通过每个聚类对对应的相似度来确定待聚类关键词所在的聚类,从而不需设定聚类类别的数量,对文本分布的依赖性较低,能更好适应不同类型的关键词,避免了通过机器学习算法对关键词进行聚类需要提前设置聚类的类别数量,且对于一些样本分布变化较大的数据来说对关键词进行聚类的准确性低,还避免了由于通过基于词语相似度的方法对关键词进行聚类,所导致的对关键词进行聚类的准确性低,从而解决了对关键词进行聚类的准确性低的技术问题,达到了提高对关键词进行聚类的准确性的技术效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种关键词的聚类方法的流程图;
图2是根据本发明实施例的另一种关键词的聚类方法的流程图;
图3是根据本发明实施例的一种关键词的聚类装置的示意图;以及
图4是根据本发明实施例的一种电子设备的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本发明实施例提供了一种关键词的聚类方法。
图1是根据本发明实施例的一种关键词的聚类方法的流程图。如图1所示,该方法可以包括以下步骤:
步骤S102,确定待聚类关键词的词向量。
在本发明上述步骤S102提供的技术方案中,待聚类关键词为待确定其所在聚类的一个词语,或为包括多个词语的词组。该实施例的词向量用于表示词语,每个词语对应一个词向量,可以为数值向量,比如,词语为“我们”,则对应的词向量可以是[0.9877,0.347658,0.23748,1.345],此处不做任何限制。
该实施例的待聚类关键词可以为多个,比如,该多个待聚类关键词为word1,word2,word3,word4,word5等,多个待聚类关键词可以存储在待聚类关键词列表中。可选地,该实施例确定每个待聚类关键词的词向量,可以获取每两个待聚类关键词之间的相似度,得到关键词相似度矩阵,从而避免对相似度较高的待聚类关键词进行重复聚类,并且由于矩阵中已经包含了部分关键词之间的相似度计算结果,所以能够在后续需要确定这些关键词之间相似度时避免重复计算,进而减少对关键词进行聚类的运算时间。可选地,该实施例的每两个待聚类关键词之间的相似度,可以为每两个待聚类关键词之间的余弦相似度。
步骤S104,根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度。
在本发明上述步骤S104提供的技术方案中,在确定待聚类关键词的词向量之后,根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度。
在该实施例中,聚类也即聚类类别,用于表示关键词所属的类别,可以是词语所属类别的归类。该实施例可以在确定待聚类关键词的词向量之后,在已经有确定好的至少一个聚类的情况下,确定待聚类关键词与已有的每个聚类之间的相似度,可以根据待聚类关键词的词向量和每个聚类中所包含的关键词的词向量,来确定待聚类关键词与每个聚类之间的相似度,比如,已有有聚类X、聚类Y、聚类Z,根据待聚类关键词的词向量和聚类X中所包含的关键词的词向量,确定待聚类关键词与聚类X之间的相似度J;根据待聚类关键词的词向量和聚类Y中所包含的关键词的词向量,确定待聚类关键词与聚类Y之间的相似度K;根据待聚类关键词的词向量和聚类Z中所包含的关键词的词向量,待聚类关键词与聚类Z之间的相似度L。
步骤S106,根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。
在本发明上述步骤S106提供的技术方案中,在确定待聚类关键词与每个聚类之间的相似度之后,根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类,也即,对待聚类关键词按照待聚类关键词与每个聚类之间的相似度进行归类,确定待聚类关键词所属的类别,可以将最大相似度对应的聚类确定为待聚类关键词所在的聚类,从而得到聚类结果。
可选地,在该实施例中,当待聚类关键词为关键词列表中的第一个关键词时,这时还没有聚类,也即,聚类的数量为0,这时可以直接将这个待聚类的关键词确定为第一个聚类,然后继续按照上述方法处理关键词列表中的下一个待聚类关键词。
在该实施例中,为了避免由于聚类结果中存在的部分奇异点所导致的类别偏差,还可以对聚类结果进行剪枝处理,以提高对待聚类关键词进行聚类的准确性。
下面对该实施例的上述方法进行进一步介绍。
作为一种可选的实施方式,步骤S102,确定待聚类关键词的词向量包括:基于预设词典确定待聚类关键词的词向量,其中,预设词典中包括多个分词以及每个分词对应的词向量。
在该实施例中,在实现确定待聚类关键词的词向量时,可以预先收集语料,对该语料进行训练,得到该语料中所包含的多个分词以及每个分词对应的词向量,将其确定为预设词典,基于该预设词典确定待聚类关键词的词向量,可以从预设词典中查找是否存在与待聚类关键词相同的分词,如果在预设词典中查找到存在与待聚类关键词相同的分词,则将查找到的分词所对应的词向量,确定为待聚类关键词的词向量,从而实现确定待聚类关键词的词向量的目的。
可选地,该实施例在对语料进行训练时,可以先采用分词算法对语料进行分词,得到分词结果,再使用词向量训练模型对分词结果进行训练,得到每个分词对应的词向量。其中,分词算法可以包括结巴分词算法、语言技术平台(LTP)分词算法等,词向量训练模型用于实现词向量训练方法,可以为word2vector训练模型,glove训练模型等。
作为一种可选的实施方式,在待聚类关键词不存在于预设词典的情况下,该方法还包括:对待聚类关键词进行分词处理,得到多个分词;基于预设词典确定各个分词的词向量;根据各个分词的词向量得到待聚类关键词的词向量。
由于该实施例是选取大规模的语料来训练得到预设词典的,原则上该预设词典本可以包含大部分的分词以及对应的词向量了,如果在预设词典中未查找到与待聚类关键词相同的分词,则确定待聚类关键词不存在于预设词典,确定该待聚类关键词是由几个分词拼接而成而成的词组。在这种情况下,对关键词进行进一步分词处理,可以采用上述分词算法对待聚类关键词进行分词处理,得到该待聚类关键词的多个分词,然后针对各个分词,就可以基于预设词典来确定各个分词的词向量,也即,从预设词典中查找是否存在与各个分词相同的分词,如果在预设词典中查找到与各个分词相同的分词,则将查找到的分词所对应的词向量,确定为各个分词的词向量,进而根据各个分词的词向量得到待聚类关键词的词向量,可以是对各个分词的词向量进行求均值计算,得到待聚类关键词的词向量,该待聚类关键词的词向量为一个与各个分词的词向量具有同样维度的向量,比如,对待聚类关键词进行分词得到分词A和分词B,然后在预设词典中查找分词A和分词B对应的词向量,对分词A和分词B对应的词向量求平均,得到待聚类关键词的词向量,从而在待聚类关键词为词组的情况下,尤其是较为稀疏的词组数据,也能实现有效地聚类,同时避免了相同前后缀导致的相似度较高的问题。
下面对该实施例的步骤S104,确定待聚类关键词与每个聚类之间的相似度的方法进行介绍。
作为一种可选的实施方式,步骤S104,确定待聚类关键词与每个聚类之间的相似度,该方法还包括:对于每个聚类,根据待聚类关键词的词向量与聚类中各个关键词的词向量,计算待聚类关键词与聚类中所有关键词的相似度之和,将和作为待聚类关键词与聚类之间的相似度。
可选地,该实施例中的已经确定好的每个聚类中可以包括至少一个关键词,在实现确定待聚类关键词与每个聚类之间的相似度时,可以计算待聚类关键词分别与聚类中的多个关键词之间的相似度,得到多个相似度,对多个相似度求和,得到待聚类关键词与聚类之间的相似度,比如,聚类X包括三个关键词word1、word2、word3,计算待聚类关键词与word1之间的相似度s1,计算待聚类关键词与word2之间的相似度s2,计算待聚类关键词与word3之间的相似度s3,将s1、s2、s3求和,得到待聚类关键词与聚类X之间的相似度。
可选地,在计算待聚类关键词与聚类中的每个关键词时,可以根据待聚类关键词的词向量与聚类中每个关键词的词向量,来计算待聚类关键词与聚类中的每个关键词之间的相似度,该相似度可以为余弦相似度。
下面对该实施例的步骤S106,根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类的方法进行介绍。
作为一种可选的实施方式,步骤S106,根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类,包括:从待聚类关键词与各个聚类之间的相似度中选取相似度的最大值;判断选取的最大值是否大于第一预设阈值;在判断结果为是的情况下,将最大值所对应的聚类确定为待聚类关键词所在的聚类;在判断结果为否的情况下,新建聚类,并将新建聚类确定为待聚类关键词所在的聚类。
在该实施例中,在确定待聚类关键词与每个聚类之间的相似度之后,从待聚类关键词与各个聚类之间的相似度中选取相似度的最大值,将最大值所对应的聚类确定为待聚类关键词所在的聚类,比如,待聚类关键词与聚类X之间的相似度J,大于待聚类关键词与聚类K之间的相似度,也大于待聚类关键词与聚类L之间的相似度,那么就将该待聚类关键词添加至聚类X中,也即,将聚类X确定为待聚类关键词所在的聚类。
可选地,在该实施例中,为了进一步提高对待聚类关键词进行聚类的准确性,在从待聚类关键词与各个聚类之间的相似度中选取相似度的最大值之后,还要判断该相似度的最大值是否大于第一预设阈值,如果判断出相似度的最大值大于第一预设阈值,则将该相似度最大值所对应的聚类确定为待聚类关键词所在的聚类;如果判断出相似度最大值不大于第一预设阈值,则新建聚类,该新建聚类确定为待聚类关键词所在的聚类,可以将该待聚类关键词本身作为上述新建类别。
举例而言,有关键词列表中包括多个待聚类关键词word1、word2、word3、word4和word5。对每个待聚类关键词进行处理,首先处理word1,当前聚类的数量为0,可以直接将word1归类为聚类collection1;然后计算word2,计算word2同当前所有聚类之间的相似度,这时已经有了一个聚类collection1,计算word2与聚类collection1之间的相似度,计算word2同聚类collection1中的每个关键词之间的相似度,并对得到的所有相似度求和,由于只有聚类collection1,且只有word1归类为聚类collection1,因而,计算word2与聚类collection1之间的相似度,也即计算word2与word1之间的相似度。由于只有一个聚类collection1,则待聚类关键词与各个聚类之间的相似度中选取的相似度的最大值就是关键词word2与聚类类collection1之间的相似度,如果其大于第一预设阈值0.7,则将word2归类到聚类collection1中,否则,将word2独立作为一个新的聚类类别collection2,然后依次按照上述方法进行,实现对每个待聚类的关键词进行聚类的目的。
作为一种可选的实施方式,在步骤S106,确定待聚类关键词所在的聚类之后,该方法还包括:获取每个聚类中关键词的词向量;对于每个聚类,将聚类中关键词的词向量进行求平均值计算,得到平均向量,并将聚类中词向量与平均向量之差大于第二预设阈值的关键词从聚类中删除。
在该实施例中,在确定待聚类关键词所在的聚类之后,对聚类进行剪枝操作,可以获取每个聚类中关键词的词向量,该关键词可以为多个,比如,该关键词包括word1、word2和word3,然后将属于同一个聚类中的关键词的词向量进行求平均值计算,可以是将同一个聚类中的关键词的词向量进行归一化求平均,比如,用每个关键词的词向量除以每个关键词的词向量的模,得到该每个关键词的词向量的归一化处理结果,然后对归一化处理结果求平均,从而得到同一个聚类中的关键词的平均向量。在得到同一个聚类中的关键词的平均向量之后,基于同一个聚类类别中的关键词的平均向量,确定需要从聚类类别中删除的关键词,可以将聚类中的关键词的词向量与平均向量之差大于第二预设阈值的关键词从聚类中删除。
可选地,在该实施例中,可以获取同一个聚类中的每个关键词的词向量,然后将聚类中的每个关键词的词向量与对应的平均向量进行相似度计算,可以是进行余弦相似度的计算,然后判断聚类中的每个关键词的词向量与对应的平均向量之间的相似度是否小于第三预设阈值,如果判断出聚类中存在词向量与对应的平均向量之间的相似度小于第三预设阈值的关键词,则将该关键词确定为需要从聚类中删除的关键词,比如,分别计算关键词word1的词向量、关键词word2的词向量、关键词word3的词向量与对应的平均向量之间的余弦相似度,如果word1的词向量与对应的平均向量的相似度小于第三预设阈值,则删除这个word1,从而实现了对聚类进行剪枝处理的目的。
作为一种可选的实施方式,该方法还包括:根据删除的关键词的词向量与其它聚类中所包含关键词的词向量,确定删除的关键词与每个其他聚类之间的相似度,并确定删除的关键词所在的聚类。
在该实施例中,在确定需要从每个聚类中删除的关键词之后,可以重新将删除掉的关键词确定为待聚类关键词,可以根据删除掉的关键词的词向量与其它的每个聚类中的各个关键词的词向量,计算删除掉的关键词与其它的每个聚类中所有关键词的相似度之和,将和作为删除掉的关键词与其它的每个聚类之间的相似度,基于删除掉的关键词与其它的每个聚类之间的相似度,进一步确定删除的关键词所在的聚类。
可选地,如果聚类中的关键词为一个,由于一个关键词没有聚类的必要,则可以按将其确定为需要删除掉的关键词,进而按照上述方法对其进行重新聚类。
在该实施例的关键词的聚类方法中,对于待聚类关键词,先确定其词向量,然后通过该待聚类关键词的词向量和每个聚类中所包含关键词的词向量,来得到待聚类关键词与每个聚类之间的相似度,这样通过每个聚类对对应的相似度来确定待聚类关键词所在的聚类,从而不需设定聚类类别的数量,可以对聚类结果进行剪枝处理和删除掉的每个关键词进行重新聚类的处理,对文本分布的依赖性较低,能更好适应不同类型的关键词,避免了通过机器学习算法对关键词进行聚类需要提前设置聚类的类别数量,且对于一些样本分布变化较大的数据来说对关键词进行聚类的准确性低,还避免了由于通过基于词语相似度的方法对关键词进行聚类,所导致的对关键词进行聚类的准确性低,另外,对于词组,尤其是较为稀疏的词组数据,也能有效地进行聚类,同时避免了相同前后缀导致的相似度较高问题,解决了对关键词进行聚类的准确性低的技术问题,达到了提高对关键词进行聚类的准确性的技术效果。
关键词的聚类在文本推荐、搜索引擎、网站优化等领域都有很大的应用价值。确定关键词所属聚类是这些领域中的上游任务,其对于下游的文本推送、关键词选择等任务提供数据支持。如果关键词聚类不准确,则会进一步影响文本推荐和网站优化等处理的效果。例如,在文本推荐的领域中,用户阅读某篇文本后,可以为其推荐内容相似的其他文本。因此可以预先对互联网中存在的海量文本进行处理,以提取各个文本的关键词并聚类。根据用户所阅读文本的关键词,在海量文本中查找与该关键词相同聚类其他关键词所对应的目标文本,将该目标文本推荐给用户。本发明对关键词的聚类准确性更高,因此为用户推送的文本更加准确。再例如,在论文网站也可以根据关键词聚类的结果来对论文进行聚类和管理,如果关键词聚类的准确性较差,就会导致论文的分类、管理、推荐等操作存在偏差,进而影响整体管理工作,本发明的方案具有较好的准确性,并且能够避免因为人工对关键词进行聚类而导致占用人力物力的问题。需要说明的是,此应用场景仅仅是示例说明,本发明提供的关键词聚类方案还可以应用于其他场景中。
实施例2
下面结合优选的实施方式对本发明实施例的关键词的聚类方法进行说明。
图2是根据本发明实施例的另一种关键词的聚类方法的流程图。如图2所示,该方法可以包括以下步骤:
步骤S202,基于大规模语料训练词向量,确定关键词相似度矩阵。
在该实施例中,先进行大规模语料进行训练,得到多个分词和每个分词对应的词向量,将其确定为预设词典,其中,词向量为一个词语的表示方法,比如,“我们”这个词语,其词向量表示可以是[0.9877,0.347658,0.23748,1.345],也即,每个词对应一个词向量。该实施例的分词算法可以为结巴分词、LTP分词等,词向量训练方法有word2vector,glove等。
在该实施例中,对于一个待聚类关键词,查询预设词典中是否包含这个关键词,如果包含这个关键词,就在预设词典中找到这个关键词对应的词向量。
如果在词典中找不到这个关键词,则说明这个待聚类关键词由多个分词组成,这时需要对待聚类关键词进行分词处理,可以将分词处理后的分词对应的词向量求平均,将其作为待聚类关键词的词向量,比如,对待聚类关键词进行分词得到分词A和分词B,然后在预设词典中查找分词A和分词B对应的词向量,对分词A和分词B对应的词向量求平均,得到待聚类关键词的词向量。
可选地,该实施例根据每两个待聚类关键词对应的词向量计算余弦相似度,将其作为每两个待聚类关键词之间的相似度,进而基于每两个待聚类关键词对应的词向量之间的余弦相似度,来确定多个待聚类关键词的相似度矩阵,从而避免对相似度较高的待聚类关键词进行重复聚类,进而减少对关键词进行聚类的运算时间。
步骤S204,对每个待聚类待关键词,计算其与已有聚类之间的相似度,基于相似度对每个待聚类关键词进行聚类。
在该实施例中,由于待聚类关键词还没有确定类别,该实施例的目的就是确定待聚类关键词的类别,可以获取每个待聚类关键词和已有聚类之间的相似度,将待聚类关键词聚类到对应的聚类中。
可选地,基于前面得到的待聚类关键词的词向量,确定这个待聚类关键词的词向量和已有聚类的相似度。比如已有聚类包括聚类X、聚类Y、聚类Z,对于一个待聚类关键词,就能够得到该聚类关键词与聚类X的相似度J,该聚类关键词与聚类Y的相似度K,该聚类关键词与聚类Z的相似度L。其中,以聚类X为例,假设聚类X中包括3个关键词,分别计算待聚类关键词与这3个关键词的相似度,得到3个相似度后取平均值,就可以得到待聚类关键词与聚类X之间的相似度。
根据待聚类关键词与各个聚类的相似度,对待聚类关键词进行聚类。比如,待聚类关键词与聚类X的相似度J,大于待聚类关键词与聚类K之间的相似度,以及大于待聚类关键词与聚类L之间的相似度,那么就将该待聚类关键词添加到聚类X中。
在实际操作时,如果确定相似度J最大,还要将相似度J与一个第一预设阈值进行比较,如果相似度J大于第一预设阈值,则将该待聚类关键词添加到聚类X中,否则新创建一个聚类,将该待聚类关键词添加到新创建的聚类中。
举例而言,在该实施例中,待聚类的关键词列表可以用keywords表示,已有的聚类可以用Collections表示,对于关键词列表keywords中的每个待聚类关键词keyword,可以按照如下逻辑关系进行处理:
在开始处理第一个待聚类关键词的时候,是没有类别的,也即,类别数量为0时,这时可以直接将这个关键词keyword作为第一个聚类,继续处理下一个待聚类关键词keyword。
对已有的聚类Collections中的每个聚类collection,计算每个待聚类关键词keyword和每个聚类collection的相似度:Sim(每个待聚类关键词keyword,每个聚类collection)=sum(sim(每个待聚类关键词keyword,每个聚类中包含的关键词keywordiin collection))。
其中,sum(sim(keyword,keywordi in collection))中的sim用于表示每个待聚类关键词分别与每个聚类中包含的关键词的相似度,sum是求和运算,用于表示每个待聚类关键词分别与每个聚类中包含的关键词的相似度之和,将相似度之和确定为每个待聚类关键词keyword与每个聚类collection之间的相似度Sim,可以用max(Sim)表示每个待聚类关键词keyword和已有的聚类collections中的各个聚类collection的相似度的最大值,如果max(Sim)大于第一预设阈值threshold1,则将每个待聚类关键词keyword归类到最大Sim值对应的聚类类别中,否则,将每个待聚类关键词keyword作为一个新的聚类类别。
举例而言,多个待聚类关键词可以包括word1、word2、word3、word4和word5。对每个待聚类关键词进行处理,首先对待聚类关键词word1进行处理,当前的聚类的数量为0,可以直接将待聚类关键词word1归类为聚类collection1;然后对待聚类关键词word2进行处理,计算待聚类关键词word2同当前所有聚类之间的相似度,而当前只有一个聚类collection1,计算待聚类关键词word2与聚类collection1之间的相似度,可以计算待聚类关键词word2与collection1中的每个关键词之间的相似度并对得到的所有相似度求和,而当前只有一个聚类collection1,且只有待聚类关键词word1归类为聚类collection1,则将待聚类关键词word2和word1之间的相似度确定为待聚类关键词word2与聚类collection1之间的相似度。由于只有一个聚类collection1,则最大的待聚类关键词和聚类类别的相似度就是待聚类关键词word2与聚类collection1之间的相似度,如果其大于第一预设阈值(比如,设定为0.7),则将待聚类关键词word2归类到聚类类别collection1,否则,将待聚类关键词word2独立作为一个新的聚类类别collection2,然后依次进行。
步骤S206,对每个聚类进行剪枝处理。
在该实施例中,对每个聚类进行剪枝处理,以避免由于部分奇异点导致的类别偏差。
该实施例可以对聚类进行剪枝处理,比如,步骤S202涉及两个聚类,那么需要对每个聚类分别进行剪枝处理。
对已有的聚类collections中的每个聚类collection,将已有的聚类collection中的各个关键词keyword对应的词向量的平均值作为平均向量,记作collection_w2v,对于聚类中的每个关键词,将聚类中的每个关键词的词向量分别与对应的平均向量进行相似度计算Sim(keyword,collection_average)=cosin(keyword_w2v,collection_w2v),如果Sim值小于第三预设阈值(threshold2),则可以删除聚类中的这个关键词,将删除掉的关键词和关键词的数量为1的聚类类别中的的关键词,也可以按照步骤S204的方式重新归类。
举例而言,聚类中包含关键词(word1、word2、word3),将三个关键词对应的词向量归一化求平均(归一化就是用词向量除以向量的模)得到的平均向量记为collection_w2v算作是类别词向量,然后分别计算word1、word2、word3同平均向量collection_w2v的余弦相似度,如果相似度小于第三预设阈值,则删除相似度小于第三预设阈值所对应的关键词。如果聚类中的关键词的数量为1,则就直接将其加入到删除词里去。
在处理完每个聚类之后,对这些删除的关键词,重新进行步骤S204的操作。
该实施例的关键词的聚类方法不需要设定聚类类别的数量,可以对聚类结果进行剪枝处理和删除掉的每个关键词进行重新聚类的处理,对文本分布的依赖性较低,从而能更好适应不同类型数据,进而提高了对关键词进行聚类的准确率;该实施例对于词组,尤其是较为稀疏的词组数据,也能有效聚类,同时避免了相同前后缀导致的相似度较高问题。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例3
本发明实施例还提供了一种关键词的聚类装置。需要说明的是,该实施例的关键词的聚类装置可以用于执行本发明实施例图1所示的关键词的聚类方法。
图3是根据本发明实施例的一种关键词的聚类装置的示意图。如图3所示,该关键词的聚类装置30可以包括:第一确定单元31、第二确定单元32和第三确定单元33。
第一确定单元31,用于确定待聚类关键词的词向量。
第二确定单元32,用于根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度。
第三确定单元33,用于根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。
可选地,第一确定单元31包括:第一确定模块,用于基于预设词典确定待聚类关键词的词向量,其中,预设词典中包括多个分词以及每个分词对应的词向量。
可选地,该装置还包括:分词单元,用于在待聚类关键词不存在于预设词典的情况下,对待聚类关键词进行分词处理,得到多个分词;第四确定单元,用于基于预设词典确定各个分词的词向量;第一获取单元,用于根据各个分词的词向量得到待聚类关键词的词向量。
可选地,第二确定单元32包括:计算模块,用于对于每个聚类,根据待聚类关键词的词向量与聚类中各个关键词的词向量,计算待聚类关键词与聚类中所有关键词的相似度之和,将和作为待聚类关键词与聚类之间的相似度。
可选地,第三确定单元33包括:选取模块,用于从待聚类关键词与各个聚类之间的相似度中选取相似度的最大值;判断模块,用于判断选取的最大值是否大于第一预设阈值;第二确定模块,用于在判断结果为是的情况下,将最大值所对应的聚类确定为待聚类关键词所在的聚类;处理模块,用于在判断结果为否的情况下,新建聚类,并将新建聚类确定为待聚类关键词所在的聚类。
可选地,该装置还包括:第二获取单元,用于在确定待聚类关键词所在的聚类之后,获取每个聚类中关键词的词向量;处理单元,用于对于每个聚类,将聚类中关键词的词向量进行求平均值计算,得到平均向量,并将聚类中词向量与平均向量之差大于第二预设阈值的关键词从聚类中删除。
可选地,该装置还包括:第五确定单元,用于根据删除的关键词的词向量与其它聚类中所包含关键词的词向量,确定删除的关键词与每个其他聚类之间的相似度,并确定删除的关键词所在的聚类。
该实施例通过第一确定单元31确定待聚类关键词的词向量,通过第二确定单元32根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度,通过第三确定单元33根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。也就是说,对于待聚类关键词,先确定其词向量,然后通过该待聚类关键词的词向量和每个聚类中所包含关键词的词向量,来得到待聚类关键词与每个聚类之间的相似度,这样通过每个聚类对对应的相似度来确定待聚类关键词所在的聚类,从而不需设定聚类类别的数量,对文本分布的依赖性较低,能更好适应不同类型的关键词,避免了通过机器学习算法对关键词进行聚类需要提前设置聚类的类别数量,且对于一些样本分布变化较大的数据来说对关键词进行聚类的准确性低,还避免了由于通过基于词语相似度的方法对关键词进行聚类,所导致的对关键词进行聚类的准确性低,从而解决了对关键词进行聚类的准确性低的技术问题,达到了提高对关键词进行聚类的准确性的技术效果。
实施例4
在该实施例中,所述关键词的聚类装置包括处理器和存储器,上述第一确定单元31、第二确定单元32和第三确定单元33均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来达到提高对关键词进行聚类的准确性的效果的目的。
实施例5
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述关键词的聚类方法。
实施例6
本发明实施例提供了一种电子设备。
图4是根据本发明实施例的一种电子设备的示意图。如图4所示,该电子设备40包括至少一个处理器401、以及与处理器401连接的至少一个存储器402、总线403;其中,处理器401、存储器402通过总线403完成相互间的通信;处理器401用于调用存储器402中的程序指令,以执行上述的关键词的聚类方法。本文中的电子设备40可以是服务器、PC、PAD、手机等。
实施例7
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
确定待聚类关键词的词向量;根据待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定待聚类关键词与每个聚类之间的相似度;根据待聚类关键词与每个聚类之间的相似度,确定待聚类关键词所在的聚类。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:基于预设词典确定待聚类关键词的词向量,其中,预设词典中包括多个分词以及每个分词对应的词向量。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:在待聚类关键词不存在于预设词典的情况下,对待聚类关键词进行分词处理,得到多个分词;基于预设词典确定各个分词的词向量;根据各个分词的词向量得到待聚类关键词的词向量。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:对于每个聚类,根据待聚类关键词的词向量与聚类中各个关键词的词向量,计算待聚类关键词与聚类中所有关键词的相似度之和的平均值,将平均值作为待聚类关键词与聚类之间的相似度。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:从待聚类关键词与各个聚类之间的相似度中选取相似度的最大值;判断选取的最大值是否大于第一预设阈值;在判断结果为是的情况下,将最大值所对应的聚类确定为待聚类关键词所在的聚类;在判断结果为否的情况下,新建聚类,并将新建聚类确定为待聚类关键词所在的聚类。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:在确定待聚类关键词所在的聚类之后,方法还包括:获取每个聚类中关键词的词向量;对于每个聚类,将聚类中关键词的词向量进行求平均值计算,得到平均向量,并将聚类中词向量与平均向量之差大于第二预设阈值的关键词从聚类中删除。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:根据删除的关键词的词向量与其它聚类中所包含关键词的词向量,确定删除的关键词与每个其他聚类之间的相似度,并确定删除的关键词所在的聚类。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种关键词的聚类方法,其特征在于,包括:
确定待聚类关键词的词向量;
根据所述待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定所述待聚类关键词与每个聚类之间的相似度;
根据所述待聚类关键词与每个聚类之间的相似度,确定所述待聚类关键词所在的聚类。
2.根据权利要求1所述的方法,其特征在于,确定待聚类关键词的词向量包括:
基于预设词典确定所述待聚类关键词的词向量,其中,所述预设词典中包括多个分词以及每个分词对应的词向量。
3.根据权利要求2所述的方法,其特征在于,在所述待聚类关键词不存在于所述预设词典的情况下,所述方法还包括:
对所述待聚类关键词进行分词处理,得到多个分词;
基于所述预设词典确定各个分词的词向量;
根据各个分词的词向量得到所述待聚类关键词的词向量。
4.根据权利要求1所述的方法,其特征在于,根据所述待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定所述待聚类关键词与每个聚类之间的相似度,包括:
对于每个聚类,根据所述待聚类关键词的词向量与所述聚类中各个关键词的词向量,计算所述待聚类关键词与所述聚类中所有关键词的相似度之和,将所述和作为所述待聚类关键词与所述聚类之间的相似度。
5.根据权利要求1所述的方法,其特征在于,根据所述待聚类关键词与每个聚类之间的相似度,确定所述待聚类关键词所在的聚类,包括:
从所述待聚类关键词与各个聚类之间的相似度中选取相似度的最大值;
判断选取的最大值是否大于第一预设阈值;
在判断结果为是的情况下,将所述最大值所对应的聚类确定为所述待聚类关键词所在的聚类;在判断结果为否的情况下,新建聚类,并将所述新建聚类确定为所述待聚类关键词所在的聚类。
6.根据权利要求1所述的方法,其特征在于,在确定所述待聚类关键词所在的聚类之后,所述方法还包括:
获取每个聚类中关键词的词向量;
对于每个聚类,将所述聚类中关键词的词向量进行求平均值计算,得到平均向量,并将所述聚类中词向量与所述平均向量之差大于第二预设阈值的关键词从所述聚类中删除。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
根据删除的关键词的词向量与其它聚类中所包含关键词的词向量,确定删除的所述关键词与每个其他聚类之间的相似度,并确定删除的所述关键词所在的聚类。
8.一种关键词的聚类装置,其特征在于,包括:
第一确定单元,用于确定待聚类关键词的词向量;
第二确定单元,用于根据所述待聚类关键词的词向量和每个聚类中所包含关键词的词向量,确定所述待聚类关键词与每个聚类之间的相似度;
第三确定单元,用于根据所述待聚类关键词与每个聚类之间的相似度,确定所述待聚类关键词所在的聚类。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7中任意一项所述的方法。
10.一种电子设备,其特征在于,所述电子设备包括至一个处理器、以及与所述处理器连接的至少一个存储器、总线;
其中,所述处理器、所述存储器通过所述总线完成相互间的通信;
所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1至7中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910944133.7A CN112579769A (zh) | 2019-09-30 | 2019-09-30 | 关键词的聚类方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910944133.7A CN112579769A (zh) | 2019-09-30 | 2019-09-30 | 关键词的聚类方法、装置、存储介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112579769A true CN112579769A (zh) | 2021-03-30 |
Family
ID=75116640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910944133.7A Pending CN112579769A (zh) | 2019-09-30 | 2019-09-30 | 关键词的聚类方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579769A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342904A (zh) * | 2021-04-01 | 2021-09-03 | 山东省人工智能研究院 | 一种基于企业特征传播的企业服务推荐方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776531A (zh) * | 2015-11-24 | 2017-05-31 | 北京国双科技有限公司 | 语料处理方法及装置 |
CN107067077A (zh) * | 2017-04-18 | 2017-08-18 | 武汉大学 | 一种卷积神经网络的加权算法 |
CN107665221A (zh) * | 2016-07-29 | 2018-02-06 | 北京国双科技有限公司 | 关键词的分类方法和装置 |
CN109033307A (zh) * | 2018-07-17 | 2018-12-18 | 华北水利水电大学 | 基于crp聚类的词语多原型向量表示及词义消歧方法 |
WO2019041524A1 (zh) * | 2017-08-31 | 2019-03-07 | 平安科技(深圳)有限公司 | 聚类标签生成方法、电子设备及计算机可读存储介质 |
-
2019
- 2019-09-30 CN CN201910944133.7A patent/CN112579769A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776531A (zh) * | 2015-11-24 | 2017-05-31 | 北京国双科技有限公司 | 语料处理方法及装置 |
CN107665221A (zh) * | 2016-07-29 | 2018-02-06 | 北京国双科技有限公司 | 关键词的分类方法和装置 |
CN107067077A (zh) * | 2017-04-18 | 2017-08-18 | 武汉大学 | 一种卷积神经网络的加权算法 |
WO2019041524A1 (zh) * | 2017-08-31 | 2019-03-07 | 平安科技(深圳)有限公司 | 聚类标签生成方法、电子设备及计算机可读存储介质 |
CN109033307A (zh) * | 2018-07-17 | 2018-12-18 | 华北水利水电大学 | 基于crp聚类的词语多原型向量表示及词义消歧方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342904A (zh) * | 2021-04-01 | 2021-09-03 | 山东省人工智能研究院 | 一种基于企业特征传播的企业服务推荐方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108804641B (zh) | 一种文本相似度的计算方法、装置、设备和存储介质 | |
CN108052659B (zh) | 基于人工智能的搜索方法、装置和电子设备 | |
Trstenjak et al. | KNN with TF-IDF based framework for text categorization | |
CN110929038B (zh) | 基于知识图谱的实体链接方法、装置、设备和存储介质 | |
CN109800307B (zh) | 产品评价的分析方法、装置、计算机设备及存储介质 | |
CN110543595B (zh) | 一种站内搜索系统及方法 | |
CN112035599B (zh) | 基于垂直搜索的查询方法、装置、计算机设备及存储介质 | |
CN109086265B (zh) | 一种语义训练方法、短文本中多语义词消歧方法 | |
CN112115232A (zh) | 一种数据纠错方法、装置及服务器 | |
CN112528022A (zh) | 主题类别对应的特征词提取和文本主题类别识别方法 | |
CN110968664A (zh) | 一种文书检索方法、装置、设备及介质 | |
CN115935983A (zh) | 事件抽取方法、装置、电子设备及存储介质 | |
CN108388556B (zh) | 同类实体的挖掘方法及系统 | |
CN113590811A (zh) | 文本摘要生成方法、装置、电子设备及存储介质 | |
CN106033444B (zh) | 文本内容的聚类方法和装置 | |
CN106407332B (zh) | 基于人工智能的搜索方法和装置 | |
CN112800226A (zh) | 用于获取文本分类模型的方法、用于文本分类的方法、装置及设备 | |
CN110427626B (zh) | 关键词的提取方法及装置 | |
CN112579769A (zh) | 关键词的聚类方法、装置、存储介质和电子设备 | |
CN112597273A (zh) | 一种基于nl2sql技术的配电自动化图表生成方法 | |
CN116910599A (zh) | 数据聚类方法、系统、电子设备及存储介质 | |
CN106951548B (zh) | 基于rm算法提升特写词语搜索精度的方法及系统 | |
CN106776531B (zh) | 语料处理方法及装置 | |
CN114647739A (zh) | 实体链指方法、装置、电子设备及存储介质 | |
CN114528378A (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 |