CN110209809A - 文本聚类方法和装置、存储介质及电子装置 - Google Patents

文本聚类方法和装置、存储介质及电子装置 Download PDF

Info

Publication number
CN110209809A
CN110209809A CN201810981997.1A CN201810981997A CN110209809A CN 110209809 A CN110209809 A CN 110209809A CN 201810981997 A CN201810981997 A CN 201810981997A CN 110209809 A CN110209809 A CN 110209809A
Authority
CN
China
Prior art keywords
text
node
similar group
feature
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.)
Granted
Application number
CN201810981997.1A
Other languages
English (en)
Other versions
CN110209809B (zh
Inventor
习自
赵学敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810981997.1A priority Critical patent/CN110209809B/zh
Publication of CN110209809A publication Critical patent/CN110209809A/zh
Application granted granted Critical
Publication of CN110209809B publication Critical patent/CN110209809B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification

Abstract

本发明公开了一种文本聚类方法和装置、存储介质及电子装置。其中,该方法包括:根据待聚类文本之间的特征相似度构建相似度图,其中,该相似度图中的每个节点表示该待聚类文本中的一个文本,且该相似度图中存在连接的两个节点所表示的文本之间的该特征相似度大于第一阈值;从该相似度图中的相似团中获取目标相似团,其中,每个该相似团包括该相似度图中由该连接形成的封闭图形中的节点,或者,该相似度图中与其他节点都不连接的节点;通过该目标相似团确定该待聚类文本的聚类结果。通过本发明,解决了现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。

Description

文本聚类方法和装置、存储介质及电子装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种文本聚类方法和装置、存储介质及电子装置。
背景技术
现有短文本聚类方法主要有基于相似度距离、基于密度、基于主题模型的聚类方法。其中,基于相似度距离的聚类方法将所有文本聚为事先指定数目的若干类,聚类的过程可以概括为:迭代计算文本到各个聚类中心的距离以及更新各个聚类中心的位置,聚类的结果是同一类之间的文本相似度较高,不同类之间的文本相似度较低。常见的基于相似度距离的聚类方法有k-means,k-medoids等,常被用于计算相似度的特征有N-gram、tf-idf、word2vec等,而常用的距离测度有余弦距离、绝对值距离、欧式距离等。基于密度的聚类方法将所有文本划分成若干个密度较大的簇,其聚类过程可以概括为:迭代寻找密度较大的子簇,并将该子簇加入到最近的簇中。DBSCAN是一种典型的基于密度的聚类算法,其聚类得到的每个簇包含很多密度相连的核心点,每个核心点在其半径邻域内包含的文本数目都大于事先设置的某个阈值,密度相连是指两个核心点之间可以互相关于指定半径密度可达。基于主题模型的聚类方法一般假设所有文本来自若干个主题,并且假设数据符合某个概率分布,从而在聚类的时候依据训练好的主题概率模型,将所有文本划分到若干个类。常见的基于主题模型的聚类方法有隐含狄利克雷分布(Latent Dirichlet Allocation,简称为LDA)、概率性潜在语义分析(Probabilistic Latent Semantic Analysis,简称为PLSA)、吉布斯采样狄利克雷多项式混合模型(Gibbs Sampling Algorithm for the DirichletMultinomial Model,简称为GSDMM)等。
但是需要说明的是,现有的上述三类短文本聚类方法在聚类结果或聚类效率上都存在若干缺点。首先是基于相似度距离的聚类算法,这类方法需要事先指定聚类数目,其大小将直接影响最终的聚类结果,而在一般的挖掘性聚类任务中,数据的分布是杂乱无章的,因此很难确定聚类数目,常常需要通过多次试验来确定,并且聚类数目对不同分布的数据是不具有可适用性的;基于相似度距离的聚类方法的另一个缺点是:聚类依赖于初始中心点的选择,导致聚类结果具有一定随机性。其次是基于密度的聚类方法,这类方法虽然不用事先指定聚类数目,但是却需要指定密度阈值和邻域半径;另外,这类方法还依赖数据的空间分布,当数据分布密度不均匀的时候,聚类效果往往较差。然后是基于主题模型的聚类方法,这类方法同样需要事先指定聚类数目,同时聚类效果也依赖于数据的概率分布,当数据的分布不符合假设的概率模型时,聚类效果会较差。最后,这三类聚类方法都不能很好地排除噪声点(无意义的数据)对聚类结果的影响。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供一种文本聚类方法和装置、存储介质及电子装置,以至少解决现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题。
根据本发明实施例的一个方面,提供了一种文本聚类方法,包括:根据待聚类文本之间的特征相似度构建相似度图,其中,所述相似度图中的每个节点表示所述待聚类文本中的一个文本,且所述相似度图中存在连接的两个节点所表示的文本之间的所述特征相似度大于第一阈值;从所述相似度图中的相似团中获取目标相似团,其中,每个所述相似团包括所述相似度图中由所述连接形成的封闭图形中的节点,或者,所述相似度图中与其他节点都不连接的节点;通过所述目标相似团确定所述待聚类文本的聚类结果。
根据本发明实施例的另一方面,还提供了一种文本聚类装置,包括:构建单元,用于根据待聚类文本之间的特征相似度构建相似度图,其中,所述相似度图中的每个节点表示所述待聚类文本中的一个文本,且所述相似度图中存在连接的两个节点所表示的文本之间的所述特征相似度大于第一阈值;获取单元,用于从所述相似度图中的相似团中获取目标相似团,其中,每个所述相似团包括所述相似度图中由所述连接形成的封闭图形中的节点,或者,所述相似度图中与其他节点都不连接的节点;确定单元,用于通过所述目标相似团确定所述待聚类文本的聚类结果。
根据本发明实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的方法。
在本发明实施例中,根据待聚类文本之间的特征相似度构建相似度图,其中,该相似度图中的每个节点表示该待聚类文本中的一个文本,且该相似度图中存在连接的两个节点所表示的文本之间的该特征相似度大于第一阈值;从该相似度图中的相似团中获取目标相似团,其中,每个该相似团包括该相似度图中由该连接形成的封闭图形中的节点,或者,该相似度图中与其他节点都不连接的节点;通过该目标相似团确定该待聚类文本的聚类结果。即,通过定义两两之间都相似的文本集合为相似团,成功地将文本聚类转换成相似度图中的相似团提取问题,不同于相关技术中基于相似度距离和主题模型进行文本聚类时需事先指定聚类数目,以及基于密度进行文本聚类时需指定密度阈值和邻域半径等造成文本聚类效果较差,进而解决现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种文本聚类方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的文本聚类方法的流程示意图;
图3是根据本发明实施例的一种可选的文本聚类方法的示意图;
图4是根据本发明实施例的一种可选的文本聚类装置的结构示意图;
图5是根据本发明又一种可选实施例的文本聚类装置结构框图(一);
图6是根据本发明又一种可选实施例的文本聚类装置结构框图(二);
图7是根据本发明又一种可选实施例的文本聚类装置结构框图(三);
图8是根据本发明实施例的一种可选的电子装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种文本聚类方法。可选地,上述文本聚类方法可以但不限于应用于如图1所示的应用环境中。如图1所示,包括步骤S11,文本聚类系统接收文本聚类请求;步骤S12,在数据库中提取到多个文本后,执行文本聚类;步骤S13,在将待聚类文本进行聚类后,返回聚类结果。
例如,输入“音乐”,并点击“聚类确定”按钮进行聚类,经文本聚类系统进行聚类操作后,在界面上显示“听首音乐”,“播放音乐”,“播放音乐冰雨”,“放首音乐”等。
又例如,输入“电话”,并点击“聚类确定”按钮进行聚类,经文本聚类系统进行聚类操作后,在界面上显示“打电话”,“打电话给张三”,“给李四打电话”等。
可选地,在本实施例中,作为一种可选的实施方式,如图2所示,上述文本聚类方法可以包括:
S202,根据待聚类文本之间的特征相似度构建相似度图,其中,该相似度图中的每个节点表示该待聚类文本中的一个文本,且该相似度图中存在连接的两个节点所表示的文本之间的该特征相似度大于第一阈值;
需要说明的是,上述第一阈值可以根据文本聚类过程中模型训练的经验进行预定义,例如,可以设置上述第一阈值为0.5、0.6,在此,不做任何限定。
S204,从该相似度图中的相似团中获取目标相似团,其中,每个该相似团包括该相似度图中由该连接形成的封闭图形中的节点,或者,该相似度图中与其他节点都不连接的节点;
S206,通过该目标相似团确定该待聚类文本的聚类结果。
可选地,上述文本聚类方法可以但不限于任何需要短文本聚类(包括但不限于:日志分析挖掘,训练语料标注)的自然语言理解类的产品中,比如智能助手、智能手表、智能家电、智能耳机、智能机器人等。上述仅是示例,本实施例中对此不做任何限定。
在上述应用场景下,根据待聚类文本之间的特征相似度构建相似度图,其中,该相似度图中的每个节点表示该待聚类文本中的一个文本,且该相似度图中存在连接的两个节点所表示的文本之间的该特征相似度大于第一阈值;从该相似度图中的相似团中获取目标相似团,其中,每个该相似团包括该相似度图中由该连接形成的封闭图形中的节点,或者,该相似度图中与其他节点都不连接的节点;通过该目标相似团确定该待聚类文本的聚类结果。即,通过定义两两之间都相似的文本集合为相似团,成功地将文本聚类转换成相似度图中的相似团提取问题,不同于相关技术中基于相似度距离和主题模型进行文本聚类时需事先指定聚类数目,以及基于密度进行文本聚类时需指定密度阈值和邻域半径等造成文本聚类效果较差,进而解决现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
需要说明的是,上述短文本可以是智能助手中用户输入的一个较短的请求语句,通常只包含用户的一个意图。例如,“播放冰雨”;“查看北京天气”;“听有声小说”等。
另外,需要说明的是,上述聚类操作通常将对象集合划分成由相似对象组成的多个类的过程称为聚类。在本实施例中,聚类的目的是将相似的短文本划分成一类,以便于对数据做进一步的分析处理。
上述相似团在图论学中,顶点之间两两互相连接的图称为团。在本实施例中,定义每个文本为一个顶点,再依据文本之间的相似度将对应顶点进行连接,所有文本便可以构成一个图,而其中两两相连的顶点集所构成的子图便是一个相似团。
可选地,在本实施例中,上述根据待聚类文本之间的特征相似度构建相似度图包括但并不限于:方式一、根据上述待聚类文本的特征获取任意多个节点中每两个节点所表示的文本之间的特征相似度;在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,得到上述相似度图;方式二、根据上述待聚类文本的特征获取具有一定特征相似度的多个节点中每两个节点所表示的文本之间的特征相似度;在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,得到上述相似度图。上述仅是示例,本实施例中对此不做任何限定。
其中,对于上述方式二、其中具有一定特征相似度的多个节点,可以通过以下方式获取:建立特征到文本的倒排索引,即,以N-gram字典中的每一个特征作为关键词,以所有包含该N-gram的文本作为值,由此构建键值对。例如:特征词“音”的倒排索引为:“放首音乐”,“播放音乐冰雨”,“听首音乐”,“播放音乐”。
需要说明的是,上述N-gram可以是自然语言处理中的一种常用文本特征,其核心思想是对文本以滑窗形式依次提取长度为N的子片段,每个子片段称为一个gram。
例如,“查看北京天气”的2-gram依次为“查看”、“看北”、“北京”、“京天”、“天气”。
又例如,“查看北京天气”的3-gram依次为“查看北”、“看北京”、“北京天”、“京天气”,依次类推。
上述N-gram字典可以是统计每个文本的N-gram出现的频次,将出现频次低于某个阈值的N-gram过滤掉,得到最终的N-gram字典。
可选地,在本实施例中,上述从上述相似度图中的相似团中获取目标相似团包括但并不限于:方式一、将上述相似度图中的多个相似团进行合并,得到上述目标相似团;方式二、将上述相似度图中的多个相似团中的部分相似团进行合并,得到上述目标相似团。
需要说明的是,对于上述方式二可以是将多个相似团中相似度相近的部分相似团进行合并。
另外,需要说明的是,在本实施例中表征文本的方式包括但并不限于:采用N-gram特征来表征文本、采用文本的语义特征来表征文本。
其中,采用N-gram特征来表征文本,即利用到了文本的基于字的特征,而文本的语义特征,引入文本的语义特征(例如,词向量等),通过引入文本的语义特征可以更好地衡量文本之间的相似度,从而提升最终的聚类效果。
下面结合具体示例,对本实施例进行举例说明。
本示例提出的文本聚类方法主要分为以下三个步骤:
步骤S21,特征提取,提取每一个待聚类文本的N-gram特征,方便下一步计算文本之间的相似度;
步骤S22,相似度图构建,将每个文本看作是图中的一个节点,计算两两节点之间的特征相似度并由此构建相似度图;
步骤S23,相似团提取与合并,在上一步得到的相似度图中,抽取得到相似团,将重合度比较高的团合并,由此得到最终的聚类结果。
基于上述N-gram和相似团提取的短文本聚类方法可以有效提升短文本聚类效果,既可以帮助产品经理有效挖掘出新意图需求,又可以帮助技术人员快速标注训练语料。可以应用到任何需要短文本聚类(包括但不限于:日志分析挖掘,训练语料标注)的自然语言理解类的产品中,比如智能助手、智能手表、智能家电、智能耳机、智能机器人等。
在一个可选地实施方式中,上述根据待聚类文本之间的特征相似度构建相似度图包括以下步骤:
步骤S31,获取上述待聚类文本的特征;
步骤S32,根据上述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,其中,上述多个节点与上述待聚类文本一一对应,上述多个节点中的每个节点表示上述待聚类文本中的一个文本;
步骤S33,在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,得到上述相似度图。
可选地,在本实施例中,上述预设的多个节点可以通过以下方式获取:建立特征到文本的倒排索引,即,以N-gram字典中的每一个特征作为关键词,以所有包含该N-gram的文本作为值,由此构建键值对。
例如:特征词“音”的倒排索引为:“放首音乐”,“播放音乐冰雨”,“听首音乐”,“播放音乐”,然后分别将该文本与节点对应,以得到上述多个节点。
通过上述步骤S31至步骤S33,获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,可以快速地获得相似度图。
可选地,上述获取上述待聚类文本的特征包括以下步骤:
步骤S41,获取上述待聚类文本中每个文本基于切字和切词的N-gram特征,得到N-gram特征集合,其中,上述N-gram特征集合包括上述待聚类文本中所有文本的上述N-gram特征;
步骤S42,从上述N-gram特征集合中确定目标特征集合,其中,上述目标特征集合中的每个特征在上述N-gram特征集合中出现的次数大于第二阈值;
需要说明的是,上述第二阈值可以根据文本聚类过程中模型训练的经验进行预定义,例如,可以设置上述第二阈值为3、4,在此,不做任何限定。
步骤S43,对于上述待聚类文本中的每个文本均执行以下步骤,其中,执行上述以下步骤时的文本被称为当前文本:将上述当前文本的特征设置为用于表示上述当前文本的N-gram特征中出现在上述目标特征集合中的目标特征。
可选地,在本实施例中,在获取上述待聚类文本的特征时,主要是提取所有文本的N-gram,过滤掉低频的N-gram,最终生成目标特征集合,然后基于该目标特征集合生成文本的特征表达。
例如,下面以文本“播放音乐”为例来说明文本N-gram提取过程。其中,N-gram字典和本实施例中的目标特征集合对应,文本的特征表达和目标特征对应。
首先,我们在文本开头和结尾分别插入开始标识符“B”和结束表示符号“E”,这样做的好处是可以使提取到的文本特征具有一定的位置信息;然后,对文本进行切词;最后,分别提取文本的基于切字以及切词结果的1-gram、2-gram、3-gram,如表1所示,第二列为基于切字的N-gram,第三列则为基于切词的N-gram。
表1文本“播放音乐”的N-gram特征
对于每个文本都按照上面的方式提取其N-gram,最后统计每个N-gram出现的频次,将出现频次低于某个阈值的N-gram过滤掉,得到最终的N-gram字典。例如,设定阈值为3,则对上文提到的9个文本提取到的最终N-gram字典为:[“音”,“乐”,“音乐”,“话”,“打”,“电话”,“乐E”,“打电话”,“音乐E”,“打电”,“电”,“放”]。
对于每一个文本,记录其所有N-gram在N-gram字典中的下标值作为该文本的特征表达。例如,文本“播放音乐”的特征表达为:[0,1,2,6,8,11]。
通过上述步骤S41至步骤S43,可以快速的获取所述待聚类文本的特征,为提高文本聚类效果提供了一定的基础。
在一个可选地实施方式中,上述根据上述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度包括以下步骤:
步骤S51,对于上述多个节点中每两个节点均执行以下步骤,其中,执行以下步骤时的两个节点被称为第一节点和第二节点:
获取第一文本的特征和第二文本的特征之间的交集和并集,其中,上述第一文本为上述第一节点所表示的文本,上述第二文本为上述第二节点所表示的文本;
将该第一节点和该第二节点所表示的文本之间的特征相似度设置为与该交集中的特征的个数和该并集中的特征的个数相关。例如,可以将上述第一节点和上述第二节点所表示的文本之间的特征相似度设置为上述交集中的特征的个数除以上述并集中的特征的个数。
可选地,在本实施例中,先获取第一文本的特征和第二文本的特征之间的交集和并集,然后将上述交集中的特征的个数除以上述并集中的特征的个数,就可以得到上述第一节点和上述第二节点所表示的文本之间的特征相似度。
例如,假设有以下9个待聚类的文本(日志或语料):“打电话”、“放首音乐”、“播放音乐冰雨”、“打电话给张三”、“听首音乐”、“你会讲故事吗”、“播放音乐”、“给李四打电话”、“我想吃饭”。
首先,将9个文本依次抽象成图3中的9个节点,并依次编号为0到8号;然后,依次计算两两节点之间的特征相似度,为了加速计算,我们利用上文构建的倒排表,在计算某个节点与其他节点之间的相似度时只需要计算该节点特征所在倒排表中的文本,这样做的目的是避免计算与该节点没有共同特征的节点之间的相似度,从而可以加速构建相似度图。在计算两个节点之间的相似度时,我们采用下面的交除并公式:
即,两个文本的特征交集除以特征并集。
例如,节点1对应的文本——“放首音乐”的特征为:[0,1,2,6,8,11],节点2对应的文本——“播放音乐冰雨”的特征为:[0,1,2,11],于是节点1和节点2的特征交集为:[0,1,2,11],并集为:[0,1,2,6,8,11],特征相似度为:4/6≈0.667;最后将相似度大于某个阈值的节点进行连接,便可以得到由所有文本构成的相似度图。例如,我们将相似度阈值设置为0.6,得到上文9个文本之间的如图3所示的相似度图。
通过上述步骤S51,获取相似度图,成功地将文本聚类转换成相似度图中的相似团提取问题,不同于相关技术中基于相似度距离和主题模型进行文本聚类时需事先指定聚类数目,以及基于密度进行文本聚类时需指定密度阈值和邻域半径等造成文本聚类效果较差,进而解决现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
在一个可选地实施方式中,将上述当前文本的特征设置为用于表示上述当前文本的N-gram特征中出现在上述目标特征集合中的目标特征包括以下步骤:
步骤S61,获取上述当前文本的N-gram特征中出现在上述目标特征集合中的目标特征;
步骤S62,获取用于表示上述目标特征在上述目标特征集合中的位置的位置索引;
步骤S63,将上述当前文本的特征设置为上述位置索引。
可选地,在本实施例中,将目标特征在目标特征集合中的位置的位置索引表达为当前本文的特征。
例如,假设有以下9个待聚类的文本(日志或语料):“打电话”、“放首音乐”、“播放音乐冰雨”、“打电话给张三”、“听首音乐”、“你会讲故事吗”、“播放音乐”、“给李四打电话”、“我想吃饭”。
对于每个文本都按照上面的方式提取其N-gram,最后统计每个N-gram出现的频次,将出现频次低于某个阈值的N-gram过滤掉,得到最终的N-gram字典。例如,设定阈值为3,则对上文提到的9个文本提取到的最终N-gram字典为:[“音”,“乐”,“音乐”,“话”,“打”,“电话”,“乐E”,“打电话”,“音乐E”,“打电”,“电”,“放”]。
对于每一个文本,记录其所有N-gram在N-gram字典中的下标值作为该文本的特征表达。例如,文本“播放音乐”的特征表达为:[0,1,2,6,8,11]。
通过上述步骤S61至步骤S63,将文本的特征表示为该文本的上述目标特征在上述目标特征集合中的位置的位置索引,可以加速相似度的计算。
在一个可选地实施方式中,从上述相似度图中的相似团中获取目标相似团包括以下步骤:
步骤S71,将上述相似度图中的多个相似团进行合并,得到上述目标相似团。
通过上述步骤S71,将相似度图中的多个相似团进行合并,进一步提高了文本聚类效果。
可选地,将上述相似度图中的多个相似团进行合并,得到上述目标相似团包括以下步骤:
步骤S81,对于上述多个相似团中的每一个相似团重复执行以下步骤,其中,执行上述以下步骤时的相似团被称为当前相似团:
步骤S82,计算上述当前相似团与下一个相似团的重合度;如果上述重合度大于第三阈值,将上述下一个相似团合并到上述当前相似团中。
需要说明的是,上述第三阈值可以根据文本聚类过程中模型训练的经验进行预定义,例如,可以设置上述第三阈值为0.3、0.4,在此,不做任何限定。
可选地,通过上述步骤S81至步骤S82,将上述相似度图中的多个相似团按照重合度进行合并,进一步解决了现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
可选地,计算上述当前相似团与下一个相似团的重合度包括以下步骤:
步骤S91,获取上述当前相似团和上述下一个相似团的交集所包含的节点个数,得到第一目标节点个数;
步骤S92,获取上述当前相似团和上述下一个相似团中较小的相似团所包含的节点个数,得到第二目标节点个数;
步骤S93,将该重合度设置为与该第一目的节点个数和该第二目的节点个数相关。例如,可以将上述重合度设置为上述第一目的节点个数除以上述第二目的节点个数。
可选地,在本实施例中,在计算上述当前相似团与下一个相似团的重合度时,具体是上述当前相似团和上述下一个相似团的交集所包含的节点个数除以上述当前相似团和上述下一个相似团中较小的相似团所包含的节点个数。
例如,可以首先通过图论中的极大团提取算法,找到上述图3中的所有团。例如,可以找到图3中的相似度图的所有团为:[0,3,7]、[1,2,6]、[1,4,6]、[5]、[8];然后,按团包含的节点个数进行降序排列,并依次计算当前团与下一个团的重合度,如果重合度大于某个阈值,则将下一个团合并到当前团中,对每一个未被合并的团执行上面操作,直到没有团可以合并为止。其中重合度计算方式为:
即,两个团共同包含的节点个数除以两个团中较小者包含的节点个数。
例如,团[1,2,6]与[1,4,6]共同包含节点[1,6],并且它们当中较小者包含的节点个数为3,于是这两个团的重合度为2/3,约等于0.667,假设重合度阈值为0.3,则可以将这两个团合并。
通过上述步骤S91至步骤S93,提取并合并相似度图中的极大团,由此得到最终的聚类结果,不需要事先指定聚类数目,因此可以摆脱聚类数对聚类结果的影响,从而达到很好的聚类效果,并且对不同的数据具有很强的适用性;而且,由于团的强相似性要求同一个类中的文本两两之间都必须相似,因此本实施例可以很好地解决噪声点对聚类结果的影响,将本实施例提出的短文本聚类技术应用到项目中后,极大提高了线上用户日志分析以及语料标注效率。
在一个可选地实施方式中,通过上述目标相似团确定上述待聚类文本的聚类结果包括以下步骤:
步骤S91,将上述目标相似团中包含的节点映射回上述节点对应的文本,得到目标文本;
步骤S92,将上述目标文本确定为上述聚类结果。
可选地,在将文本聚类转换成相似度图中的相似团提取之后,为了得到最终的文本聚类结果,需要将节点再映射回对应的文本。
例如,将图3所示的相似团合并后,再将所有合并后的团中的节点映射回原来的文本,便可以得到最终的聚类结果。
对于以下9个待聚类的文本(日志或语料):“打电话”、“放首音乐”、“播放音乐冰雨”、“打电话给张三”、“听首音乐”、“你会讲故事吗”、“播放音乐”、“给李四打电话”、“我想吃饭”,最终的聚类结果可以为[“听首音乐”,“播放音乐”,“播放音乐冰雨”,“放首音乐”]、[“打电话”,“打电话给张三”,“给李四打电话”]、[“你会讲故事吗”]、[“我想吃饭”]。
综上,在本实施例中为了有效完成聚类并排除杂乱数据对聚类效果的影响,提出一种基于N-gram和相似团提取算法的短文本聚类方法。对于每一个文本,首先提取其N-gram,将所有文本的N-gram构成一个特征空间,记录每个文本的N-gram在该特征空间中的下标作为该文本的N-gram特征;然后将所有文本看作是图中的一个顶点并计算两两之间的相似度,将相似度大于阈值的两个顶点连边,从而构成一个文本相似度图;最后在该图中提取相似团,并合并重复度比较高的团,得到最终的聚类结果,进一步提高了文本聚类的效果。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
根据本发明实施例的另一个方面,还提供了一种用于实施上述文本聚类方法的场景中的文本聚类装置,可选地,本方案实施例可以应用于如上述图1所示硬件环境中,本实施例中在此不再赘述。
根据本发明实施例的一个方面,如图4所示,上述文本聚类装置包括:
1)构建单元42,用于根据待聚类文本之间的特征相似度构建相似度图,其中,该相似度图中的每个节点表示该待聚类文本中的一个文本,且该相似度图中存在连接的两个节点所表示的文本之间的该特征相似度大于第一阈值;
需要说明的是,上述第一阈值可以根据文本聚类过程中模型训练的经验进行预定义,例如,可以设置上述第一阈值为0.5、0.6,在此,不做任何限定。
2)获取单元44,用于从该相似度图中的相似团中获取目标相似团,其中,每个该相似团包括该相似度图中由该连接形成的封闭图形中的节点,或者,该相似度图中与其他节点都不连接的节点;
3)确定单元46,用于通过该目标相似团确定该待聚类文本的聚类结果。
可选地,上述文本聚类方法可以但不限于任何需要短文本聚类(包括但不限于:日志分析挖掘,训练语料标注)的自然语言理解类的产品中,比如智能助手、智能手表、智能家电、智能耳机、智能机器人等。上述仅是示例,本实施例中对此不做任何限定。
在上述应用场景下,根据待聚类文本之间的特征相似度构建相似度图,其中,该相似度图中的每个节点表示该待聚类文本中的一个文本,且该相似度图中存在连接的两个节点所表示的文本之间的该特征相似度大于第一阈值;从该相似度图中的相似团中获取目标相似团,其中,每个该相似团包括该相似度图中由该连接形成的封闭图形中的节点,或者,该相似度图中与其他节点都不连接的节点;通过该目标相似团确定该待聚类文本的聚类结果。即,通过定义两两之间都相似的文本集合为相似团,成功地将文本聚类转换成相似度图中的相似团提取问题,不同于相关技术中基于相似度距离和主题模型进行文本聚类时需事先指定聚类数目,以及基于密度进行文本聚类时需指定密度阈值和邻域半径等造成文本聚类效果较差,进而解决现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
需要说明的是,上述短文本可以是智能助手中用户输入的一个较短的请求语句,通常只包含用户的一个意图。例如,“播放冰雨”;“查看北京天气”;“听有声小说”等。
另外,需要说明的是,上述聚类操作通常将对象集合划分成由相似对象组成的多个类的过程称为聚类。在本实施例中,聚类的目的是将相似的短文本划分成一类,以便于对数据做进一步的分析处理。
上述相似团在图论学中,顶点之间两两互相连接的图称为团。在本实施例中,定义每个文本为一个顶点,再依据文本之间的相似度将对应顶点进行连接,所有文本便可以构成一个图,而其中两两相连的顶点集所构成的子图便是一个相似团。
可选地,在本实施例中,上述根据待聚类文本之间的特征相似度构建相似度图包括但并不限于:方式一、根据上述待聚类文本的特征获取任意多个节点中每两个节点所表示的文本之间的特征相似度;在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,得到上述相似度图;方式二、根据上述待聚类文本的特征获取具有一定特征相似度的多个节点中每两个节点所表示的文本之间的特征相似度;在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,得到上述相似度图。上述仅是示例,本实施例中对此不做任何限定。
其中,对于上述方式二、其中具有一定特征相似度的多个节点,可以通过以下方式获取:建立特征到文本的倒排索引,即,以N-gram字典中的每一个特征作为关键词,以所有包含该N-gram的文本作为值,由此构建键值对。例如:特征词“音”的倒排索引为:“放首音乐”,“播放音乐冰雨”,“听首音乐”,“播放音乐”。
需要说明的是,上述N-gram可以是自然语言处理中的一种常用文本特征,其核心思想是对文本以滑窗形式依次提取长度为N的子片段,每个子片段称为一个gram。
例如,“查看北京天气”的2-gram依次为“查看”、“看北”、“北京”、“京天”、“天气”。
又例如,“查看北京天气”的3-gram依次为“查看北”、“看北京”、“北京天”、“京天气”,依次类推。
上述N-gram字典可以是统计每个文本的N-gram出现的频次,将出现频次低于某个阈值的N-gram过滤掉,得到最终的N-gram字典。
需要说明的是,上述第一阈值可以根据文本聚类过程中模型训练的经验进行预定义,在此,不做任何限定。
可选地,在本实施例中,上述从上述相似度图中的相似团中获取目标相似团包括但并不限于:方式一、将上述相似度图中的多个相似团进行合并,得到上述目标相似团;方式二、将上述相似度图中的多个相似团中的部分相似团进行合并,得到上述目标相似团。
需要说明的是,对于上述方式二可以是将多个相似团中相似度相近的部分相似团进行合并。
另外,需要说明的是,在本实施例中表征文本的方式包括但并不限于:采用N-gram特征来表征文本、采用文本的语义特征来表征文本。
其中,采用N-gram特征来表征文本,即利用到了文本的基于字的特征,而文本的语义特征,引入文本的语义特征(例如,词向量等),通过引入文本的语义特征可以更好地衡量文本之间的相似度,从而提升最终的聚类效果。
下面结合具体示例,对本实施例进行举例说明。
本示例提出的文本聚类方法主要分为以下三个步骤:
步骤S21,特征提取,提取每一个待聚类文本的N-gram特征,方便下一步计算文本之间的相似度;
步骤S22,相似度图构建,将每个文本看做是图中的一个节点,计算两两节点之间的特征相似度并由此构建相似度图;
步骤S23,相似团提取与合并,在上一步得到的相似度图中,抽取得到相似团,将重合度比较高的团合并,由此得到最终的聚类结果。
基于上述N-gram和相似团提取的短文本聚类方法可以有效提升短文本聚类效果,既可以帮助产品经理有效挖掘出新意图需求,又可以帮助技术人员快速标注训练语料。可以应用到任何需要短文本聚类(包括但不限于:日志分析挖掘,训练语料标注)的自然语言理解类的产品中,比如智能助手、智能手表、智能家电、智能耳机、智能机器人等。
在一个可选地实施方式中,图5是根据本发明又一种可选实施例的文本聚类装置结构框图(一),如图5所示,构建单元42包括:
1)第一获取模块52,用于获取该待聚类文本的特征;
2)第二获取模块54,用于根据该待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,其中,该多个节点与该待聚类文本一一对应,该多个节点中的每个节点表示该待聚类文本中的一个文本;
3)第三获取模块56,用于在该多个节点中的该特征相似度大于该第一阈值的两个节点之间形成该连接,得到该相似度图。
可选地,在本实施例中,上述预设的多个节点可以通过以下方式获取:建立特征到文本的倒排索引,即,以N-gram字典中的每一个特征作为关键词,以所有包含该N-gram的文本作为值,由此构建键值对。
例如:特征词“音”的倒排索引为:“放首音乐”,“播放音乐冰雨”,“听首音乐”,“播放音乐”,然后分别将该文本与节点对应,以得到上述多个节点。
通过图5所示装置,获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,在上述多个节点中的上述特征相似度大于上述第一阈值的两个节点之间形成上述连接,可以快速地获得相似度图。
在一个可选地实施方式中,本发明还提供了一种可选实施例的文本聚类装置,上述第一获取模块52包括:获取子单元,用于获取该待聚类文本中每个文本基于切字和切词的N-gram特征,得到N-gram特征集合,其中,该N-gram特征集合包括该待聚类文本中所有文本的该N-gram特征;确定子单元,用于从该N-gram特征集合中确定目标特征集合,其中,该目标特征集合中的每个特征在该N-gram特征集合中出现的次数大于第二阈值;第一处理子单元,用于对于该待聚类文本中的每个文本均执行以下步骤,其中,执行该以下步骤时的文本被称为当前文本:将该当前文本的特征设置为用于表示该当前文本的N-gram特征中出现在该目标特征集合中的目标特征。
需要说明的是,上述第二阈值可以根据文本聚类过程中模型训练的经验进行预定义,例如,可以设置上述第二阈值为3、4,在此,不做任何限定。
可选地,在本实施例中,在获取上述待聚类文本的特征时,主要是提取所有文本的N-gram,过滤掉低频的N-gram,最终生成目标特征集合,然后基于该目标特征集合生成文本的特征表达。
例如,下面以文本“播放音乐”为例来说明文本N-gram提取过程。其中,N-gram字典和本实施例中的目标特征集合对应,文本的特征表达和目标特征对应。
首先,我们在文本开头和结尾分别插入开始标识符“B”和结束表示符号“E”,这样做的好处是可以使提取到的文本特征具有一定的位置信息;然后,对文本进行切词;最后,分别提取文本的基于切字以及切词结果的1-gram、2-gram、3-gram,如表1所示,第二列为基于切字的N-gram,第三列则为基于切词的N-gram。
表1文本“播放音乐”的N-gram特征
对于每个文本都按照上面的方式提取其N-gram,最后统计每个N-gram出现的频次,将出现频次低于某个阈值的N-gram过滤掉,得到最终的N-gram字典。例如,设定阈值为3,则对上文提到的9个文本提取到的最终N-gram字典为:[“音”,“乐”,“音乐”,“话”,“打”,“电话”,“乐E”,“打电话”,“音乐E”,“打电”,“电”,“放”]。
对于每一个文本,记录其所有N-gram在N-gram字典中的下标值作为该文本的特征表达。例如,文本“播放音乐”的特征表达为:[0,1,2,6,8,11]。
通过上述装置,可以快速的获取所述待聚类文本的特征,为提高文本聚类效果提供了一定的基础。
在一个可选地实施方式中,本发明还提供了一种可选实施例的文本聚类装置,上述第二获取模块54包括:第二处理子单元,用于对于该多个节点中每两个节点均执行以下步骤,其中,执行以下步骤时的两个节点被称为第一节点和第二节点:获取第一文本的特征和第二文本的特征之间的交集和并集,其中,该第一文本为该第一节点所表示的文本,该第二文本为该第二节点所表示的文本;将该第一节点和该第二节点所表示的文本之间的特征相似度设置为与该交集中的特征的个数和该并集中的特征的个数相关。例如,将该第一节点和该第二节点所表示的文本之间的特征相似度设置为该交集中的特征的个数除以该并集中的特征的个数。
可选地,在本实施例中,先获取第一文本的特征和第二文本的特征之间的交集和并集,然后将上述交集中的特征的个数除以上述并集中的特征的个数,就可以得到上述第一节点和上述第二节点所表示的文本之间的特征相似度。
例如,假设有以下9个待聚类的文本(日志或语料):“打电话”、“放首音乐”、“播放音乐冰雨”、“打电话给张三”、“听首音乐”、“你会讲故事吗”、“播放音乐”、“给李四打电话”、“我想吃饭”。
首先,将9个文本依次抽象成图3中的9个节点,并依次编号为0到8号;然后,依次计算两两节点之间的特征相似度,为了加速计算,我们利用上文构建的倒排表,在计算某个节点与其他节点之间的相似度时只需要计算该节点特征所在倒排表中的文本,这样做的目的是避免计算与该节点没有共同特征的节点之间的相似度,从而可以加速构建相似度图。在计算两个节点之间的相似度时,我们采用下面的交除并公式:
即,两个文本的特征交集除以特征并集。
例如,节点1对应的文本——“放首音乐”的特征为:[0,1,2,6,8,11],节点2对应的文本——“播放音乐冰雨”的特征为:[0,1,2,11],于是节点1和节点2的特征交集为:[0,1,2,11],并集为:[0,1,2,6,8,11],特征相似度为:4/6≈0.667;最后将相似度大于某个阈值的节点进行连接,便可以得到由所有文本构成的相似度图。例如,我们将相似度阈值设置为0.6,得到上文9个文本之间的如图3所示的相似度图。
通过上述装置,获取相似度图,成功地将文本聚类转换成相似度图中的相似团提取问题,不同于相关技术中基于相似度距离和主题模型进行文本聚类时需事先指定聚类数目,以及基于密度进行文本聚类时需指定密度阈值和邻域半径等造成文本聚类效果较差,进而解决现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
在一个可选地实施方式中,上述第一处理子单元还用于获取该当前文本的N-gram特征中出现在该目标特征集合中的目标特征;获取用于表示该目标特征在该目标特征集合中的位置的位置索引;将该当前文本的特征设置为该位置索引。
可选地,在本实施例中,将目标特征在目标特征集合中的位置的位置索引表达为当前本文的特征。
例如,假设有以下9个待聚类的文本(日志或语料):“打电话”、“放首音乐”、“播放音乐冰雨”、“打电话给张三”、“听首音乐”、“你会讲故事吗”、“播放音乐”、“给李四打电话”、“我想吃饭”。
对于每个文本都按照上面的方式提取其N-gram,最后统计每个N-gram出现的频次,将出现频次低于某个阈值的N-gram过滤掉,得到最终的N-gram字典。例如,设定阈值为3,则对上文提到的9个文本提取到的最终N-gram字典为:[“音”,“乐”,“音乐”,“话”,“打”,“电话”,“乐E”,“打电话”,“音乐E”,“打电”,“电”,“放”]。
对于每一个文本,记录其所有N-gram在N-gram字典中的下标值作为该文本的特征表达。例如,文本“播放音乐”的特征表达为:[0,1,2,6,8,11]。
通过上述第一处理子单元,将文本的特征表示为该文本的上述目标特征在上述目标特征集合中的位置的位置索引,可以加速相似度的计算。
在一个可选地实施方式中,图6是根据本发明又一种可选实施例的文本聚类装置结构框图(二),如图6所示,获取单元44包括:
1)第四获取模块62,用于将该相似度图中的多个相似团进行合并,得到该目标相似团。
通过图6所示装置,将相似度图中的多个相似团进行合并,进一步提高了文本聚类效果。
在一个可选地实施方式中,本发明还提供了一种可选实施例的文本聚类装置,第四获取模块62包括:第三处理子单元,用于对于该多个相似团中的每一个相似团重复执行以下步骤,其中,执行该以下步骤时的相似团被称为当前相似团:计算该当前相似团与下一个相似团的重合度;如果该重合度大于第三阈值,将该下一个相似团合并到该当前相似团中。
需要说明的是,上述第三阈值可以根据文本聚类过程中模型训练的经验进行预定义,例如,可以设置上述第三阈值为0.3、0.4,在此,不做任何限定。
可选地,通过上述装置,将上述相似度图中的多个相似团按照重合度进行合并,进一步解决了现有的文本聚类方法需事先指定聚类数目导致文本聚类效果较差的技术问题,达到了提高文本聚类效果的技术效果。
在一个可选地实施方式中,第三处理子单元还用于获取该当前相似团和该下一个相似团的交集所包含的节点个数,得到第一目标节点个数;获取该当前相似团和该下一个相似团中较小的相似团所包含的节点个数,得到第二目标节点个数;将该重合度设置为与该第一目的节点个数和该第二目的节点个数相关。例如,可以将该重合度设置为该第一目的节点个数除以该第二目的节点个数。
可选地,在本实施例中,在计算上述当前相似团与下一个相似团的重合度时,具体是上述当前相似团和上述下一个相似团的交集所包含的节点个数除以上述当前相似团和上述下一个相似团中较小的相似团所包含的节点个数。
例如,可以首先通过图论中的极大团提取算法,找到上述图3中的所有团。例如,可以找到图3中的相似度图的所有团为:[0,3,7]、[1,2,6]、[1,4,6]、[5]、[8];然后,按团包含的节点个数进行降序排列,并依次计算当前团与下一个团的重合度,如果重合度大于某个阈值,则将下一个团合并到当前团中,对每一个未被合并的团执行上面操作,直到没有团可以合并为止。其中重合度计算方式为:
即,两个团共同包含的节点个数除以两个团中较小者包含的节点个数。
例如,团[1,2,6]与[1,4,6]共同包含节点[1,6],并且它们当中较小者包含的节点个数为3,于是这两个团的重合度为2/3,约等于0.667,假设重合度阈值为0.3,则可以将这两个团合并。
通过第三处理子单元,提取并合并相似度图中的极大团,由此得到最终的聚类结果,不需要事先指定聚类数目,因此可以摆脱聚类数对聚类结果的影响,从而达到很好的聚类效果,并且对不同的数据具有很强的适用性;而且,由于团的强相似性要求同一个类中的文本两两之间都必须相似,因此本实施例可以很好地解决噪声点对聚类结果的影响,将本实施例提出的短文本聚类技术应用到项目中后,极大提高了线上用户日志分析以及语料标注效率。
在一个可选地实施方式中,图7是根据本发明又一种可选实施例的文本聚类装置结构框图(三),如图7所示,确定单元46包括:
1)映射模块72,用于将该目标相似团中包含的节点映射回该节点对应的文本,得到目标文本;
2)确定模块74,用于将该目标文本确定为该聚类结果。
可选地,在将文本聚类转换成相似度图中的相似团提取之后,为了得到最终的文本聚类结果,需要将节点再映射回对应的文本。
例如,将图3所示的相似团合并后,再将所有合并后的团中的节点映射回原来的文本,便可以得到最终的聚类结果。
对于以下9个待聚类的文本(日志或语料):“打电话”、“放首音乐”、“播放音乐冰雨”、“打电话给张三”、“听首音乐”、“你会讲故事吗”、“播放音乐”、“给李四打电话”、“我想吃饭”,最终的聚类结果可以为[“听首音乐”,“播放音乐”,“播放音乐冰雨”,“放首音乐”]、[“打电话”,“打电话给张三”,“给李四打电话”]、[“你会讲故事吗”]、[“我想吃饭”]。
根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,根据待聚类文本之间的特征相似度构建相似度图,其中,所述相似度图中的每个节点表示所述待聚类文本中的一个文本,且所述相似度图中存在连接的两个节点所表示的文本之间的所述特征相似度大于第一阈值;
S2,从所述相似度图中的相似团中获取目标相似团,其中,每个所述相似团包括所述相似度图中由所述连接形成的封闭图形中的节点,或者,所述相似度图中与其他节点都不连接的节点;
S3,通过所述目标相似团确定所述待聚类文本的聚类结果。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述待聚类文本的特征;
S2,根据所述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,其中,所述多个节点与所述待聚类文本一一对应,所述多个节点中的每个节点表示所述待聚类文本中的一个文本;
S3,在所述多个节点中的所述特征相似度大于所述第一阈值的两个节点之间形成所述连接,得到所述相似度图。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述待聚类文本中每个文本基于切字和切词的N-gram特征,得到N-gram特征集合,其中,所述N-gram特征集合包括所述待聚类文本中所有文本的所述N-gram特征;
S2,从所述N-gram特征集合中确定目标特征集合,其中,所述目标特征集合中的每个特征在所述N-gram特征集合中出现的次数大于第二阈值;
S3,对于所述待聚类文本中的每个文本均执行以下步骤,其中,执行所述以下步骤时的文本被称为当前文本:将所述当前文本的特征设置为用于表示所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,对于所述多个节点中每两个节点均执行以下步骤,其中,执行以下步骤时的两个节点被称为第一节点和第二节点:获取第一文本的特征和第二文本的特征之间的交集和并集,其中,所述第一文本为所述第一节点所表示的文本,所述第二文本为所述第二节点所表示的文本;将所述第一节点和所述第二节点所表示的文本之间的特征相似度设置为与所述交集中的特征的个数和所述并集中的特征的个数相关。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征;
S2,获取用于表示所述目标特征在所述目标特征集合中的位置的位置索引;
S3,将所述当前文本的特征设置为所述位置索引。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,将所述相似度图中的多个相似团进行合并,得到所述目标相似团。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,对于所述多个相似团中的每一个相似团重复执行以下步骤,其中,执行所述以下步骤时的相似团被称为当前相似团;
S2,计算所述当前相似团与下一个相似团的重合度;如果所述重合度大于第三阈值,将所述下一个相似团合并到所述当前相似团中。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述当前相似团和所述下一个相似团的交集所包含的节点个数,得到第一目标节点个数;
S2,获取所述当前相似团和所述下一个相似团中较小的相似团所包含的节点个数,得到第二目标节点个数;
S3,将所述重合度设置为与所述第一目的节点个数和所述第二目的节点个数相关。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
根据本发明实施例的又一个方面,还提供了一种用于实施上述文本聚类方法的电子装置,如图8所示,该电子装置包括存储器802和处理器804,该存储器802中存储有计算机程序,该处理器804被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,根据待聚类文本之间的特征相似度构建相似度图,其中,所述相似度图中的每个节点表示所述待聚类文本中的一个文本,且所述相似度图中存在连接的两个节点所表示的文本之间的所述特征相似度大于第一阈值;
S2,从所述相似度图中的相似团中获取目标相似团,其中,每个所述相似团包括所述相似度图中由所述连接形成的封闭图形中的节点,或者,所述相似度图中与其他节点都不连接的节点;
S3,通过所述目标相似团确定所述待聚类文本的聚类结果。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述待聚类文本的特征;
S2,根据所述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,其中,所述多个节点与所述待聚类文本一一对应,所述多个节点中的每个节点表示所述待聚类文本中的一个文本;
S3,在所述多个节点中的所述特征相似度大于所述第一阈值的两个节点之间形成所述连接,得到所述相似度图。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述待聚类文本中每个文本基于切字和切词的N-gram特征,得到N-gram特征集合,其中,所述N-gram特征集合包括所述待聚类文本中所有文本的所述N-gram特征;
S2,从所述N-gram特征集合中确定目标特征集合,其中,所述目标特征集合中的每个特征在所述N-gram特征集合中出现的次数大于第二阈值;
S3,对于所述待聚类文本中的每个文本均执行以下步骤,其中,执行所述以下步骤时的文本被称为当前文本:将所述当前文本的特征设置为用于表示所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,对于所述多个节点中每两个节点均执行以下步骤,其中,执行以下步骤时的两个节点被称为第一节点和第二节点:获取第一文本的特征和第二文本的特征之间的交集和并集,其中,所述第一文本为所述第一节点所表示的文本,所述第二文本为所述第二节点所表示的文本;将所述第一节点和所述第二节点所表示的文本之间的特征相似度设置为与所述交集中的特征的个数和所述并集中的特征的个数相关。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征;
S2,获取用于表示所述目标特征在所述目标特征集合中的位置的位置索引;
S3,将所述当前文本的特征设置为所述位置索引。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,将所述相似度图中的多个相似团进行合并,得到所述目标相似团。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,对于所述多个相似团中的每一个相似团重复执行以下步骤,其中,执行所述以下步骤时的相似团被称为当前相似团;
S2,计算所述当前相似团与下一个相似团的重合度;如果所述重合度大于第三阈值,将所述下一个相似团合并到所述当前相似团中。
可选地,在本实施例中,上述处理器可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取所述当前相似团和所述下一个相似团的交集所包含的节点个数,得到第一目标节点个数;
S2,获取所述当前相似团和所述下一个相似团中较小的相似团所包含的节点个数,得到第二目标节点个数;
S3,将所述重合度设置为与所述第一目的节点个数和所述第二目的节点个数相关。
可选地,本领域普通技术人员可以理解,图8所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,简称为MID)、PAD等终端设备。图8其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图8中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图8所示不同的配置。
其中,存储器804可用于存储软件程序以及模块,如本发明实施例中的文本聚类方法和装置对应的程序指令/模块,处理器802通过运行存储在存储器804内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述文本聚类方法。存储器804可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器804可进一步包括相对于处理器802远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器802具体可以但不限于用于存储文本聚类流程等信息。作为一种示例,如图8所示,上述存储器802中可以但不限于包括上述文本聚类装置中的构建单元42、获取单元44、确定单元46。此外,还可以包括但不限于上述文本聚类装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置810用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置810包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置810为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子装置还包括:显示器808,用于显示上述文本聚类的结果;和连接总线810,用于连接上述电子装置中的各个模块部件。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (15)

1.一种文本聚类方法,其特征在于,包括:
根据待聚类文本之间的特征相似度构建相似度图,其中,所述相似度图中的每个节点表示所述待聚类文本中的一个文本,且所述相似度图中存在连接的两个节点所表示的文本之间的所述特征相似度大于第一阈值;
从所述相似度图中的相似团中获取目标相似团,其中,每个所述相似团包括所述相似度图中由所述连接形成的封闭图形中的节点,或者,所述相似度图中与其他节点都不连接的节点;
通过所述目标相似团确定所述待聚类文本的聚类结果。
2.根据权利要求1所述的方法,其特征在于,所述根据待聚类文本之间的特征相似度构建相似度图包括:
获取所述待聚类文本的特征;
根据所述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,其中,所述多个节点与所述待聚类文本一一对应,所述多个节点中的每个节点表示所述待聚类文本中的一个文本;
在所述多个节点中的所述特征相似度大于所述第一阈值的两个节点之间形成所述连接,得到所述相似度图。
3.根据权利要求2所述的方法,其特征在于,所述获取所述待聚类文本的特征包括:
获取所述待聚类文本中每个文本基于切字和切词的N-gram特征,得到N-gram特征集合,其中,所述N-gram特征集合包括所述待聚类文本中所有文本的所述N-gram特征;
从所述N-gram特征集合中确定目标特征集合,其中,所述目标特征集合中的每个特征在所述N-gram特征集合中出现的次数大于第二阈值;
对于所述待聚类文本中的每个文本均执行以下步骤,其中,执行所述以下步骤时的文本被称为当前文本:将所述当前文本的特征设置为用于表示所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征。
4.根据权利要求2所述的方法,其特征在于,所述根据所述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度包括:
对于所述多个节点中每两个节点均执行以下步骤,其中,执行以下步骤时的两个节点被称为第一节点和第二节点:
获取第一文本的特征和第二文本的特征之间的交集和并集,其中,所述第一文本为所述第一节点所表示的文本,所述第二文本为所述第二节点所表示的文本;
将所述第一节点和所述第二节点所表示的文本之间的特征相似度设置为与所述交集中的特征的个数和所述并集中的特征的个数相关。
5.根据权利要求3所述的方法,其特征在于,将所述当前文本的特征设置为用于表示所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征包括:
获取所述当前文本的N-gram特征中出现在所述目标特征集合中的目标特征;
获取用于表示所述目标特征在所述目标特征集合中的位置的位置索引;
将所述当前文本的特征设置为所述位置索引。
6.根据权利要求1所述的方法,其特征在于,从所述相似度图中的相似团中获取目标相似团包括:
将所述相似度图中的多个相似团进行合并,得到所述目标相似团。
7.根据权利要求6所述的方法,其特征在于,将将所述相似度图中的多个相似团进行合并,得到所述目标相似团包括:
对于所述多个相似团中的每一个相似团重复执行以下步骤,其中,执行所述以下步骤时的相似团被称为当前相似团:
计算所述当前相似团与下一个相似团的重合度;如果所述重合度大于第三阈值,将所述下一个相似团合并到所述当前相似团中。
8.根据权利要求7所述的方法,其特征在于,计算所述当前相似团与下一个相似团的重合度包括:
获取所述当前相似团和所述下一个相似团的交集所包含的节点个数,得到第一目标节点个数;
获取所述当前相似团和所述下一个相似团中较小的相似团所包含的节点个数,得到第二目标节点个数;
将所述重合度设置为与所述第一目的节点个数和所述第二目的节点个数相关。
9.根据权利要求1所述的方法,其特征在于,通过所述目标相似团确定所述待聚类文本的聚类结果包括:
将所述目标相似团中包含的节点映射回所述节点对应的文本,得到目标文本;
将所述目标文本确定为所述聚类结果。
10.一种文本聚类装置,其特征在于,包括:
构建单元,用于根据待聚类文本之间的特征相似度构建相似度图,其中,所述相似度图中的每个节点表示所述待聚类文本中的一个文本,且所述相似度图中存在连接的两个节点所表示的文本之间的所述特征相似度大于第一阈值;
获取单元,用于从所述相似度图中的相似团中获取目标相似团,其中,每个所述相似团包括所述相似度图中由所述连接形成的封闭图形中的节点,或者,所述相似度图中与其他节点都不连接的节点;
确定单元,用于通过所述目标相似团确定所述待聚类文本的聚类结果。
11.根据权利要求10所述的装置,其特征在于,所述构建单元包括:
第一获取模块,用于获取所述待聚类文本的特征;
第二获取模块,用于根据所述待聚类文本的特征获取预设的多个节点中每两个节点所表示的文本之间的特征相似度,其中,所述多个节点与所述待聚类文本一一对应,所述多个节点中的每个节点表示所述待聚类文本中的一个文本;
第三获取模块,用于在所述多个节点中的所述特征相似度大于所述第一阈值的两个节点之间形成所述连接,得到所述相似度图。
12.根据权利要求10所述的装置,其特征在于,所述获取单元包括:
第四获取模块,用于将所述相似度图中的多个相似团进行合并,得到所述目标相似团。
13.根据权利要求10所述的装置,其特征在于,所述确定单元包括:
映射模块,用于将所述目标相似团中包含的节点映射回所述节点对应的文本,得到目标文本;
确定模块,用于将所述目标文本确定为所述聚类结果。
14.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至9任一项中所述的方法。
15.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至9任一项中所述的方法。
CN201810981997.1A 2018-08-27 2018-08-27 文本聚类方法和装置、存储介质及电子装置 Active CN110209809B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810981997.1A CN110209809B (zh) 2018-08-27 2018-08-27 文本聚类方法和装置、存储介质及电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810981997.1A CN110209809B (zh) 2018-08-27 2018-08-27 文本聚类方法和装置、存储介质及电子装置

Publications (2)

Publication Number Publication Date
CN110209809A true CN110209809A (zh) 2019-09-06
CN110209809B CN110209809B (zh) 2023-10-24

Family

ID=67779995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810981997.1A Active CN110209809B (zh) 2018-08-27 2018-08-27 文本聚类方法和装置、存储介质及电子装置

Country Status (1)

Country Link
CN (1) CN110209809B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111078824A (zh) * 2019-12-18 2020-04-28 南京录信软件技术有限公司 一种减少Lucene无字典n-gram切词占用存储空间的方法
CN111597336A (zh) * 2020-05-14 2020-08-28 腾讯科技(深圳)有限公司 训练文本的处理方法、装置、电子设备及可读存储介质
CN112733520A (zh) * 2020-12-30 2021-04-30 望海康信(北京)科技股份公司 文本相似度计算方法、系统及相应设备和存储介质
CN112749281A (zh) * 2021-01-19 2021-05-04 青岛科技大学 一种融合服务协作关系的Restful类型Web服务聚类方法
CN113407713A (zh) * 2020-10-22 2021-09-17 腾讯科技(深圳)有限公司 基于主动学习的语料挖掘方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307213A1 (en) * 2008-05-07 2009-12-10 Xiaotie Deng Suffix Tree Similarity Measure for Document Clustering
CN105468677A (zh) * 2015-11-13 2016-04-06 国家计算机网络与信息安全管理中心 一种基于图结构的日志聚类方法
CN106844331A (zh) * 2016-12-13 2017-06-13 苏州大学 一种句子相似度计算方法和系统
CN107451183A (zh) * 2017-06-19 2017-12-08 中国信息通信研究院 基于文本聚类思想的知识地图构建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307213A1 (en) * 2008-05-07 2009-12-10 Xiaotie Deng Suffix Tree Similarity Measure for Document Clustering
CN105468677A (zh) * 2015-11-13 2016-04-06 国家计算机网络与信息安全管理中心 一种基于图结构的日志聚类方法
CN106844331A (zh) * 2016-12-13 2017-06-13 苏州大学 一种句子相似度计算方法和系统
CN107451183A (zh) * 2017-06-19 2017-12-08 中国信息通信研究院 基于文本聚类思想的知识地图构建方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111078824A (zh) * 2019-12-18 2020-04-28 南京录信软件技术有限公司 一种减少Lucene无字典n-gram切词占用存储空间的方法
CN111597336A (zh) * 2020-05-14 2020-08-28 腾讯科技(深圳)有限公司 训练文本的处理方法、装置、电子设备及可读存储介质
CN111597336B (zh) * 2020-05-14 2023-12-22 腾讯科技(深圳)有限公司 训练文本的处理方法、装置、电子设备及可读存储介质
CN113407713A (zh) * 2020-10-22 2021-09-17 腾讯科技(深圳)有限公司 基于主动学习的语料挖掘方法、装置及电子设备
CN113407713B (zh) * 2020-10-22 2024-04-05 腾讯科技(深圳)有限公司 基于主动学习的语料挖掘方法、装置及电子设备
CN112733520A (zh) * 2020-12-30 2021-04-30 望海康信(北京)科技股份公司 文本相似度计算方法、系统及相应设备和存储介质
CN112733520B (zh) * 2020-12-30 2023-07-18 望海康信(北京)科技股份公司 文本相似度计算方法、系统及相应设备和存储介质
CN112749281A (zh) * 2021-01-19 2021-05-04 青岛科技大学 一种融合服务协作关系的Restful类型Web服务聚类方法

Also Published As

Publication number Publication date
CN110209809B (zh) 2023-10-24

Similar Documents

Publication Publication Date Title
CN110209809A (zh) 文本聚类方法和装置、存储介质及电子装置
CN106407178B (zh) 一种会话摘要生成方法、装置、服务器设备以及终端设备
CN108664599B (zh) 智能问答方法、装置、智能问答服务器及存储介质
CN106934068A (zh) 机器人基于环境上下文的语义理解的方法
CN110866093A (zh) 机器问答方法及装置
CN111611801B (zh) 一种识别文本地域属性的方法、装置、服务器及存储介质
CN106446018B (zh) 基于人工智能的查询信息处理方法和装置
CN107239450B (zh) 基于交互上下文处理自然语言方法
CN110472043B (zh) 一种针对评论文本的聚类方法及装置
CN104331523B (zh) 一种基于概念对象模型的问句检索方法
CN110457672A (zh) 关键词确定方法、装置、电子设备及存储介质
CN113486173B (zh) 文本标注神经网络模型及其标注方法
CN109240637A (zh) 音量调节的处理方法、装置、设备及存储介质
CN109325124A (zh) 一种情感分类方法、装置、服务器和存储介质
CN103534696A (zh) 针对口语语言理解中的域检测利用查询点击记录
CN104462105A (zh) 中文分词方法、装置和服务器
KR101545050B1 (ko) 정답 유형 자동 분류 방법 및 장치, 이를 이용한 질의 응답 시스템
CN108306813B (zh) 会话消息的处理方法、服务器及客户端
CN112287082A (zh) 结合rpa与ai的数据的处理方法、装置、设备及存储介质
CN109117477A (zh) 面向中文领域的非分类关系抽取方法、装置、设备及介质
CN112749543B (zh) 一种信息解析过程的匹配方法、装置、设备及存储介质
CN113590771A (zh) 一种数据挖掘方法、装置、设备及存储介质
CN110222103A (zh) 提取excel数据的方法及装置、计算机设备、存储介质
CN110188106A (zh) 一种数据管理方法和装置
CN109145588A (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