CN115858780A - 一种文本聚类方法、装置、设备及介质 - Google Patents
一种文本聚类方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115858780A CN115858780A CN202211510974.5A CN202211510974A CN115858780A CN 115858780 A CN115858780 A CN 115858780A CN 202211510974 A CN202211510974 A CN 202211510974A CN 115858780 A CN115858780 A CN 115858780A
- Authority
- CN
- China
- Prior art keywords
- semantic
- clustering
- text
- text data
- class
- 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
Images
Abstract
本公开涉及一种文本聚类方法、装置、设备及介质,尤其涉及语义聚类技术领域;其中,该方法包括:将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量;根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果;针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类;根据子类,确定所有文本数据的目标聚类结果。本公开实施例能够提升包含噪声的文本数据的语义聚类效果,使得聚类结果更准确,同时,通过先聚类再分裂的方法,有利于保证聚类速度和聚类效果的平衡。
Description
技术领域
本公开涉及语义聚类技术领域,尤其涉及一种文本聚类方法、装置、设备及介质。
背景技术
在数据分析过程中,面对数以万计的数据需要有针对性的进行问题分析,因此需要对数据进行聚类,将包含数据量较多的那些类(即头部类)调出来进行分析,以提升数据的分析效率。通常情况下,语音或者图像等数据的识别结果可能会出现各类错误,这些错误在聚类时属于噪声干扰,可能会使本该分到一个类别的一些文本被分到不同的类别,造成聚类结果不准确,如头部类中数据量变少或者聚类结果缺少区分度等,从而无法提升数据分析的效率。
发明内容
为了解决上述技术或者至少部分地解决上述技术问题,本公开提供了一种文本聚类方法、装置、设备及介质,可以提升包含噪声的文本数据的语义聚类效果,使得聚类结果更准确,同时,通过先聚类再分裂的方法,有利于保证聚类速度和聚类效果的平衡。
为了实现上述目的,本公开实施例提供的技术方案如下:
第一方面,本公开提供了一种文本聚类方法,该方法包括:
将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量;
根据不同语义向量之间的距离和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果;
针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类;
根据所述子类,确定所有文本数据的目标聚类结果。
第二方面,本公开提供了一种文本聚类装置,该装置包括:
第一确定模块,用于将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量;
聚类模块,用于根据不同语义向量之间的距离和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果;
分裂模块,用于针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类;
第二确定模块,用于根据所述子类,确定所有文本数据的目标聚类结果。
第三方面,本公开还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例中的任一种所述的文本聚类方法。
第四方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例中的任一种所述的文本聚类方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:首先将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量,接着根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,然后针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类,最后根据子类,确定所有文本数据的目标聚类结果,通过上述技术方案,能够提升包含噪声的文本数据的语义聚类效果,使得聚类结果更准确,同时,通过先聚类再分裂的方法,有利于保证聚类速度和聚类效果的平衡,以及在聚类效果较好的情况下,更有利于从聚类结果中提取出有价值的信息,提高数据分析的效率,减少数据分析的工作量。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1A为本公开实施例提供的一种文本聚类方法的流程示意图;
图1B为本公开实施例提供的一种文本聚类方法的原理示意图;
图1C为本公开实施例中对初始聚类结果中的类进行分裂,得到对应的子类的原理示意图;
图2A为本公开实施例提供的另一种文本聚类方法的流程示意图;
图2B为本公开实施例提供中确定参考聚类结果的原理示意图;
图2C为本公开实施例中确定初始聚类结果的原理示意图;
图3A为本公开实施例提供的一种确定语义模型的原理示意图;
图3B为本公开实施例提供的一种初始语义匹配模型的结构示意图;
图3C为本公开实施例提供的一种初始语义匹配模型中第一模型或者第二模型的结构示意图;
图3D为本公开实施例提供的一种基于数据增强方法确定目标文本对的原理示意图;
图3E为本公开实施例提供一种确定预测标签的原理示意图;
图4A是本公开实施例提供的一种文本聚类装置的结构示意图;
图4B是本公开实施例文本聚类装置中聚类模块的结构示意图;
图5是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
需要说明的是,本公开中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
需要说明的是,在本公开中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
随着科技的不断发展,各种家居设备、终端设备以及办公设备等不断趋于智能化,为人们的生活带来了极大的便利。越来越多的智能设备具备语音交互功能,例如,智能设备中可以安装语音助手,通过语音助手可以方便用户使用语音与智能设备进行交互。示例性的,用户可以通过语音控制智能设备进行搜索、查询、播放XX节目等。智能设备通过对用户的语音输入数据进行语音识别能够得到对应的文本信息,以便后续基于文本信息确定用户的真实意图,并基于该真实意图执行后续的控制过程。
随着自然语言处理相关技术的发展,语音处理,已广泛应用于各类电子产品中,以其自然方便的交互方式受到了广大用户的喜爱,逐渐成为了智能产品时代的主流交互控制方式。
在语音识别、语义识别、或者图像识别等数据分析场景中,面对数以万计的海量数据需要有针对性的进行问题分析,因此需要对数据进行聚类,将包含数据量较多的那些类(即头部类)调出来进行分析,以提升数据的分析效率。通常情况下,语音或者图像等数据的识别结果可能会出现各类错误,这些错误在聚类时属于噪声干扰,可能会使本该分到一个类别的一些文本被分到不同的类别,造成聚类结果不准确,如头部类中数据量变少或者聚类结果缺少区分度等,从而无法提升数据分析的效率。
为了解决上述问题,本公开实施例提供了一种文本聚类方法,首先将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量,接着根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,然后针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类,最后根据子类,确定所有文本数据的目标聚类结果,通过上述技术方案,能够提升包含噪声的文本数据的语义聚类效果,使得聚类结果更准确,同时,通过先聚类再分裂的方法,有利于保证聚类速度和聚类效果的平衡,以及在聚类效果较好的情况下,更有利于从聚类结果中提取出有价值的信息,提高数据分析的效率,减少数据分析的工作量。
为了更加详细的说明本方案,以下将以示例性的方式结合图1A进行说明,可以理解的是,图1A中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本申请实施例中提供的文本聚类方法为准。
图1A为本公开实施例提供的一种文本聚类方法的流程示意图,图1B为本公开实施例提供的一种文本聚类方法的原理示意图。本实施例可适用于对多个包含噪声的文本数据的聚类过程进行说明。本实施例方法可由文本聚类装置来执行,该装置可采用硬件/或软件的方式来实现,并可配置于电子设备中。
如图1A所示,该方法具体包括如下步骤:
S110,将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量。
其中,包含噪声的文本数据可以理解为:在对语音或者图像等数据进行识别的过程中,得到的存在错误的文本数据(即与实际文本存在差异的文本数据),这里的错误即可理解为噪声。语义模型可以理解为预先训练好的能够基于文本数据,生成对应的语义向量的模型,该模型可以采用深度学习模型或者其他模型等,本实施例对该模型和该模型采用的网络结构不做具体限定。多个包含噪声的文本数据即为待聚类的文本数据,这里的文本数据可能会是量级较大(如几十万、几百万等)的文本数据。
由于文本数据无法直接进行数学运算,因此需要将多个包含噪声的文本数据依次输入至语义模型中,通过该语义模型能够得到每个文本数据对应的语义向量,以便后续执行聚类过程。
S120,根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果。
其中,向量距离计算方法可以采用欧氏距离计算方法、余弦距离计算方法以及其他距离计算方法等,本实施例对此不做限定。文本特征可以包括字、词或者短语的含义,以及词性等特征。
在得到每个文本数据对应的语义向量之后,通过对应的向量距离计算方法能够确定出不同语义向量之间的距离。在得到不同语义向量之间的距离之后,获取每个文本数据的文本特征,然后进行聚类,具体聚类过程可以为:先根据不同语义向量之间的距离对所有语义向量进行一次聚类;再根据每个文本数据的文本特征,对所有语义向量进行第二次聚类,从而得到初始聚类结果;也可以为:根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行一次聚类,得到初始聚类结果;还可以为其他的根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类的方式,此处不做具体限定。
S130,针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类。
在得到初始聚类结果之后,初始聚类结果中可以包括多个类(也可以称为多个簇),每个类中可以包含多个语义向量,那么针对初始聚类结果中的每个类,能够对每个类分别进行分裂,具体分裂过程为:针对初始聚类结果中的每个类,确定该类的密度图,根据密度图对该类进行分类,得到该类对应的子类,即将该类分裂为至少一个子类。
S140,根据子类,确定所有文本数据的目标聚类结果。
其中,目标聚类结果可以理解为最终聚类结果。
将每个类对应的子类汇总在一起,就能够得到所有文本数据的目标聚类结果。
本实施例中提供的文本聚类方法,首先将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量,接着根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,然后针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类,最后根据子类,确定所有文本数据的目标聚类结果,通过上述技术方案,能够提升包含噪声的文本数据的语义聚类效果,使得聚类结果更准确,同时,通过先聚类再分裂的方法,有利于保证聚类速度和聚类效果的平衡,以及在聚类效果较好的情况下,更有利于从聚类结果中提取出有价值的信息,提高数据分析的效率,减少数据分析的工作量。
在一些实施例中,可选的,所述针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类,可以具体包括:
针对所述初始聚类结果中的每个类,确定所述类的所述密度图对应的最大子密度图;
根据所述最大子密度图,对所述密度图中除所述最大子密度图以外的语义向量进行剪枝,得到所述类对应的初始子类;
当所述初始子类的图密度小于或者等于预设阈值,则将所述初始子类确定为所述类对应的所述子类。
其中,预设阈值可以预先设定,也可以视具体情况而定,本实施例对此不做限定。最大子密度图可以理解为密度图对应的所有子图中密度最大的图。子图的密度可以根据子图中边数和点数的比值确定。
具体的,针对初始聚类结果中的每个类,确定该类的密度图,然后根据密度图中相连的边之间的关系、边数以及点数等,通过最小割模型可以确定出该密度图对应的最大子密度图,也可以通过其他方式确定最大子密度图,此处不做限定。在得到最大子密度图之后,根据该最大子密度图,对密度图中除最大子密度图以外的语义向量进行剪枝,得到该类对应的初始子类,初始子类包括:最大子密度图对应的子类和剪枝后的语义向量形成的至少一个子类,其中,剪枝后的语义向量形成的子类的个数,可以视剪枝具体情况而定,此处不做限定。当初始子类中每个子类的图密度均小于或者等于预设阈值时,将初始子类确定为该类对应的子类;反之,当初始子类中至少一个子类的图密度大于预设阈值,则返回执行针对初始聚类结果中的每个类,确定类的密度图对应的最大子密度图,直至得到的初始子类中每个子类的图密度均小于或者等于预设阈值为止,得到该类对应的子类。
本实施例中,通过上述过程对初始聚类结果中的每个类进行分裂,得到对应的子类,简单高效,能够对初始聚类结果进行细裂变,从而提高目标聚类结果的准确性。
示例性的,图1C为本公开实施例中对初始聚类结果中的类进行分裂,得到对应的子类的原理示意图。图1C中所示的得到对应的子类的过程已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
图2A为本公开实施例提供的另一种文本聚类方法的流程示意图。本实施例是在上述实施例的基础上进行优化。可选的,本实施例对根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果的过程进行详细的解释说明。如图2A所示,该方法具体包括如下:
S210,将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量。
S220,根据不同语义向量之间的距离和文本数据的数量,对所有语义向量进行聚类,得到参考聚类结果。
具体的,根据不同语义向量之间的距离和文本数据的数量,能够确定聚类的目标个数,即:将所有语义向量聚类为多少个类。在得到目标个数(假设为N1)之后,根据该目标个数对所有语义向量进行聚类,得到参考聚类结果,即得到N1个类。这里的聚类方法可以使用K均值(K-means)聚类算法、划分方法、层次方法或者基于密度的方法等,本实施例不做具体限定。
S230,基于参考聚类结果和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果。
在得到参考聚类结果之后,基于参考聚类结果和每个文本数据的文本特征,在参考聚类结果的基础上进行类的分裂,能够得到初始聚类结果。
S240,针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类。
S250,根据子类,确定所有文本数据的目标聚类结果。
本实施例中提供的文本聚类方法,首先将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量,接着根据不同语义向量之间的距离和文本数据的数量,对所有语义向量进行聚类,得到参考聚类结果,基于参考聚类结果和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,然后针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类,最后根据子类,确定所有文本数据的目标聚类结果,上述技术方案中,通过不同语义向量之间的距离和文本数据的数量进行初次聚类,通过初次聚类得到的参考聚类结果和每个文本数据的文本特征,进行二次聚类,有利于提高初始聚类结果的准确性,进而提高目标聚类结果的准确性,且在得到参考聚类结果之后,再进行分裂,有利于提高聚类的速度,尤其是在待聚类文本数据的量级较大时,能够显著提升聚类速度,保证了聚类速度和聚类效果的平衡。
在一些实施例中,可选的,所述根据不同语义向量之间的距离和所述文本数据的数量,对所有语义向量进行聚类,得到参考聚类结果,可以具体包括:
根据不同语义向量之间的距离,确定距离阈值;
根据所述距离阈值和所述文本数据的所述数量,确定聚类的目标个数;
根据所述目标个数,对所有语义向量进行聚类,得到参考聚类结果,其中,所述参考聚类结果中包含所述目标个数的类。
具体的,通过计算不同向量之间的距离,能够从计算得到的多个距离中确定距离阈值,例如0.9,此处不做具体限定。在得到距离阈值之后,根据距离阈值和本数据的数量,通过相应的数学运算,能够确定出聚类的目标个数。然后根据目标个数,对所有语义向量进行聚类,得到参考聚类结果。
本实施例中,通过先确定聚类的目标个数,再进行聚类,能够减少聚类的工作量,有利于提高聚类的速度。
示例性的,图2B为本公开实施例提供中确定参考聚类结果的原理示意图。图2B中所示的确定参考聚类结果的过程已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
在一些实施例中,可选的,所述基于所述参考聚类结果和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,可以具体包括:
基于所述参考聚类结果,建立向量索引库,其中,所述向量索引库中向量索引的个数与所述目标个数相同,所述向量索引为所述参考聚类结果中包含的类的中心;
通过所述向量索引库,对每个语义向量进行检索,得到所述每个语义向量对应的目标向量索引和目标语义向量,其中所述目标向量索引为:所有向量索引中与所述每个语义向量距离最近的向量索引,所述目标语义向量为:所述目标向量索引所在的类中与所述每个语义向量距离最近的语义向量;
根据所述每个语义向量、所述目标向量索引和所述目标语义向量,建立关系图;
根据所述每个文本数据的文本特征,对所述关系图进行剪枝,得到所述初始聚类结果。
其中,预设数值可以预先设定,也可以视具体情况而定,本实施例对此不做限定。
具体的,在得到参考聚类结果之后,根据参考聚类结果中每个类包含的语义向量和该类的中心(也可称簇头),将每个类的中心作为向量索引,该类中除了中心之外的其它语义向量作为该向量索引中的其他向量,能够建立向量索引库。通过向量索引库,对每个语义向量进行检索,即:每个语义向量分别请求向量索引库对应的检索引擎,通过检索引擎能够得到每个语义向量对应的目标向量索引和目标语义向量。根据每个语义向量、每个语义向量对应的目标向量索引和目标语义向量,能够建立关系图,关系图中的顶点表示语义向量,两个顶点的边表示两个顶点之间的连接关系。在得到关系图之后,需要根据每个文本数据的文本特征,计算具有连接关系的语义向量之间的文本相似度,然后根据文本相似度对关系图进行剪枝,例如,当相似度小于预设数值时,将这个边和其中一个顶点去除,最终在经过剪枝之后,能够把一些关联较小的语义向量去除,形成新的类,从而得到初始聚类结果。
本实施例中,通过参考聚类结果,建立向量索引库,并通过向量索引库,对每个语义向量进行检索,能够提高聚类的效率,减少工作量,以及后续建立关系图,对关系图进行剪枝,能够保证初始聚类结果的准确性。
示例性的,图2C为本公开实施例中确定初始聚类结果的原理示意图。图2C中所示的确定初始聚类结果的过程已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
在一些实施例中,可选的,所述语义模型可以具体通过以下方式确定:
获取训练样本,所述训练样本包括多个文本对;
将每个文本对依次输入至初始语义匹配模型中,得到所述每个文本对对应的预测标签,所述预测标签用于表征所述每个文本对中包含的两个文本数据的语义匹配关系;
若所述预测标签和所述每个文本对对应的实际标签不相同,则对所述初始语义匹配模型的参数进行调整,直至所述初始语义匹配模型收敛,得到目标语义匹配模型;
根据所述目标语义匹配模型,确定所述语义模型。
其中,训练样本可以为预先确定的多个文本对,每个文本对中包含两段文本数据,两端文本数据可以为同义文本对,也可以为异义文本对,本实施例不做具体限定。预测标签可以用0或者1表示,0表示异义文本对,1表示同义文本对。
具体的,获取训练样本,将训练样本中包括的多个文本对中的每个文本对依次输入至初始语义匹配模型中,通过初始语义匹配模型,能够得到每个文本对对应的预测标签。当预测标签和每个文本对对应的实际标签(根据每个文本对的语义确定的标签)不相同时,对初始语义匹配模型的参数进行调整,直至初始语义匹配模型收敛,能够得到目标语义匹配模型。根据目标语义匹配模型,能够确定出语义模型,语义模型为目标语义匹配模型的一部分,语义模型中不包括目标语义匹配模型中确定标签的结构。
本实施例中,通过对初始语义匹配模型进行训练,得到目标语义匹配模型,再根据目标语义匹配模型确定语义模型,有利于提高语义模型输出结果的准确性。
示例性的,图3A为本公开实施例提供的一种确定语义模型的原理示意图。图3A中所示的确定语义模型的过程已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
在一些实施例中,可选的,所述初始语义匹配模型包括:第一模型、第二模型以及归一化层,所述第一模型和所述第二模型结构相同;所述每个文本对中包含第一文本数据和第二文本数据;
所述第一模型,用于生成所述第一文本数据对应的语义向量;
所述第二模型,用于生成所述第二文本数据对应的语义向量;
所述归一化层,用于根据所述第一文本数据对应的语义向量和所述第二文本数据对应的语义向量,通过归一化函数,确定所述每个文本对对应的预测标签。
其中,第一模型的结构和第二模型的结构相同,可以采用编码器-解码器结构、卷积神经网络和循环神经网络结构,还可以为其他网络结构,本实施例对此不做具体限定。第一模型的参数和第二模型的参数可以共享。
具体的,通过第一模型能够生成每个文本对中第一文本数据对应的语义向量,通过第二模型能够生成每个文本对中第二文本数据对应的语义向量,在得到第一文本数据对应的语义向量和第二文本数据对应的语义向量之后,将二者输入至归一化层,通过归一化层中的归一化函数(Softmax),能够得到每个文本对对应的归一化数值,该归一化数值的取值范围为[0,1]。根据归一化数值,当该归一化数值趋近于0时,确定每个文本对对应的预测标签为异义文本对;当该归一化数值趋近于1时,确定每个文本对对应的预测标签为同义文本对,从而就能够确定每个文本对对应的预测标签。
本实施例中,通过上述初始语义匹配模型得到预测标签,简单快捷。
示例性的,图3B为本公开实施例提供的一种初始语义匹配模型的结构示意图。如图3B所示,初始语义匹配模型可以包括:第一模型、第二模型以及归一化层,其中第一模型和第二模型均与归一化层相连,第一模型、第二模型以及归一化层的作用已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
在一些实施例中,可选的,第一模型或者第二模型可以具体包括:嵌入层、编码层以及池化层。其中,嵌入层(Embedding Layer)用于对输入进行特征提取,得到特征向量;编码层可以采用Transformer-Encoder结构,用于对特征向量进行编码,得到编码向量;池化层(Pooling layer)用于防止过拟合,最终池化层的输出为输入的句向量。
示例性的,图3C为本公开实施例提供的一种初始语义匹配模型中第一模型或者第二模型的结构示意图。如图3C所示,第一模型或者第二模型可以具体包括:嵌入层、编码层以及池化层,其中,嵌入层与编码层相连,编码层与池化层相连,嵌入层、编码层以及池化层的作用已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
在一些实施例中,可选的,训练样本中的文本对可以通过数据增强方式确定,具体为:
1、对一个初始文本对按照文本内容进行切分,例如按照字、词以及短语进行切分,其中,文本对可以随机选取,本实施例对此不做限定;例如,对文本对(“我爱玩滑板”和“我喜欢玩滑板”)中“我爱玩滑板”分别按照字、词以及短语三种粒度进行切分,可以得到[“我”,“爱”,“玩”,“滑”,“板”]、[“我”,“爱”,“玩”,“滑板”]、[“我”,“爱”,“玩滑板”];
2、从步骤1中的三种粒度切分中,分别随机取出一个片段进行替换,例如字粒度的“滑”通过近音字替换为“花”,其中,替换方式包括但不限于:同音字、形近字或者近音字替换,同音词或者近义词替换以及近义短语替换等,最终替换后得到目标文本对,目标文本对即可作为训练样本中的文本对。
本实施例中,通过上述方式确定训练样本中的文本对,简单快捷且高效。
示例性的,图3D为本公开实施例提供的一种基于数据增强方法确定目标文本对的原理示意图。图3D中所示的确定目标文本对的过程已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
示例性的,图3E为本公开实施例提供一种确定预测标签的原理示意图。如图3E所示,输入1为第一文本数据(如A为什么叫A),即:[CLS]句子1,输入2为第一文本数据(如A为什么叫),即:[CLS]句子2,将输入1输入至左边的嵌入层,经过嵌入层、Transformer-encoder以及池化层的作用,得到句向量u,将输入2输入至右边的嵌入层,经过嵌入层、Transformer-encoder以及池化层的作用,得到句向量v;然后句向量u和句向量v通过归一化层作用,最终得到预测标签。图3E中每个层的作用已经在上述实施例中详细描述过,为了避免重复,此处不再赘述。
需要说明的是:还可以采用其他模型或者结构得到预测标签,本实施例不做具体限定。
图4A是本公开实施例提供的一种文本聚类装置的结构示意图。该装置配置于电子设备中,可实现本申请任意实施例所述的文本聚类方法。如图4A所示,该装置具体包括如下:
第一确定模块401,用于将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量;
聚类模块402,用于根据不同语义向量之间的距离和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果;
分裂模块403,用于针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类;
第二确定模块404,用于根据所述子类,确定所有文本数据的目标聚类结果。
作为本公开实施例一种可选的实施方式,所述分裂模块403,具体用于:
针对所述初始聚类结果中的每个类,确定所述类的所述密度图对应的最大子密度图;
根据所述最大子密度图,对所述密度图中除所述最大子密度图以外的语义向量进行剪枝,得到所述类对应的初始子类;
当所述初始子类的图密度小于或者等于预设阈值,则将所述初始子类确定为所述类对应的所述子类。
作为本公开实施例一种可选的实施方式,图4B是本公开实施例文本聚类装置中聚类模块的结构示意图,如图4B所示,聚类模块402包括第一聚类单元4021和第二聚类单元4022;
其中,第一聚类单元4021,用于根据不同语义向量之间的距离和所述文本数据的数量,对所有语义向量进行聚类,得到参考聚类结果;
第二聚类单元4022,用于基于所述参考聚类结果和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果。
作为本公开实施例一种可选的实施方式,第一聚类单元4021,具体用于:
根据不同语义向量之间的距离,确定距离阈值;
根据所述距离阈值和所述文本数据的所述数量,确定聚类的目标个数;
根据所述目标个数,对所有语义向量进行聚类,得到参考聚类结果,其中,所述参考聚类结果中包含所述目标个数的类。
作为本公开实施例一种可选的实施方式,第二聚类单元4022,具体用于:
基于所述参考聚类结果,建立向量索引库,其中,所述向量索引库中向量索引的个数与所述目标个数相同,所述向量索引为所述参考聚类结果中包含的类的中心;
通过所述向量索引库,对每个语义向量进行检索,得到所述每个语义向量对应的目标向量索引和目标语义向量,其中所述目标向量索引为:所有向量索引中与所述每个语义向量距离最近的向量索引,所述目标语义向量为:所述目标向量索引所在的类中与所述每个语义向量距离最近的语义向量;
根据所述每个语义向量、所述目标向量索引和所述目标语义向量,建立关系图;
根据所述每个文本数据的文本特征,对所述关系图进行剪枝,得到所述初始聚类结果。
作为本公开实施例一种可选的实施方式,所述语义模型通过以下方式确定:
获取训练样本,所述训练样本包括多个文本对;
将每个文本对依次输入至初始语义匹配模型中,得到所述每个文本对对应的预测标签,所述预测标签用于表征所述每个文本对中包含的两个文本数据的语义匹配关系;
若所述预测标签和所述每个文本对对应的实际标签不相同,则对所述初始语义匹配模型的参数进行调整,直至所述初始语义匹配模型收敛,得到目标语义匹配模型;
根据所述目标语义匹配模型,确定所述语义模型。
作为本公开实施例一种可选的实施方式,所述初始语义匹配模型包括:第一模型、第二模型以及归一化层,所述第一模型和所述第二模型结构相同;所述每个文本对中包含第一文本数据和第二文本数据;
所述第一模型,用于生成所述第一文本数据对应的语义向量;
所述第二模型,用于生成所述第二文本数据对应的语义向量;
所述归一化层,用于根据所述第一文本数据对应的语义向量和所述第二文本数据对应的语义向量,通过归一化函数,确定所述每个文本对对应的预测标签。
通过本公开实施例提供的文本聚类装置,首先将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量,接着根据不同语义向量之间的距离和每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,然后针对初始聚类结果中的每个类,根据类的密度图对类进行分裂,得到类对应的子类,最后根据子类,确定所有文本数据的目标聚类结果,通过上述技术方案,能够提升包含噪声的文本数据的语义聚类效果,使得聚类结果更准确,同时,通过先聚类再分裂的方法,有利于保证聚类速度和聚类效果的平衡,以及在聚类效果较好的情况下,更有利于从聚类结果中提取出有价值的信息,提高数据分析的效率,减少数据分析的工作量。
本公开实施例所提供的文本聚类装置可执行本公开任意实施例所提供的文本聚类方法,具备执行方法相应的功能模块和有益效果。
本公开实施例提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例中的任一种所述的文本聚类方法。
其中,电子设备可以为个人计算机(personal computer,PC)、服务器或者大型计算机等,本公开实施例对此不做具体限定。
图5是本公开实施例提供的一种电子设备的结构示意图。如图5所示,该电子设备包括处理器510和存储装置520;电子设备中处理器510的数量可以是一个或多个,图5中以一个处理器510为例;电子设备中的处理器510和存储装置520可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储装置520作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本公开实施例中的文本聚类方法对应的程序指令/模块。处理器510通过运行存储在存储装置520中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现本公开实施例所提供的文本聚类方法。
存储装置520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本实施例提供的一种电子设备可用于执行上述任意实施例提供的文本聚类方法,具备相应的功能和有益效果。
本公开实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现上述文本聚类方法执行的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,该计算机可读存储介质可以为只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述在一些实施例中讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
Claims (10)
1.一种文本聚类方法,其特征在于,所述方法包括:
将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量;
根据不同语义向量之间的距离和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果;
针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类;
根据所述子类,确定所有文本数据的目标聚类结果。
2.根据权利要求1所述的方法,其特征在于,所述针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类,包括:
针对所述初始聚类结果中的每个类,确定所述类的所述密度图对应的最大子密度图;
根据所述最大子密度图,对所述密度图中除所述最大子密度图以外的语义向量进行剪枝,得到所述类对应的初始子类;
当所述初始子类的图密度小于或者等于预设阈值,则将所述初始子类确定为所述类对应的所述子类。
3.根据权利要求1所述的方法,其特征在于,所述根据不同语义向量之间的距离和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,包括:
根据不同语义向量之间的距离和所述文本数据的数量,对所有语义向量进行聚类,得到参考聚类结果;
基于所述参考聚类结果和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果。
4.根据权利要求3所述的方法,其特征在于,所述根据不同语义向量之间的距离和所述文本数据的数量,对所有语义向量进行聚类,得到参考聚类结果,包括:
根据不同语义向量之间的距离,确定距离阈值;
根据所述距离阈值和所述文本数据的所述数量,确定聚类的目标个数;
根据所述目标个数,对所有语义向量进行聚类,得到参考聚类结果,其中,所述参考聚类结果中包含所述目标个数的类。
5.根据权利要求4所述的方法,其特征在于,所述基于所述参考聚类结果和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果,包括:
基于所述参考聚类结果,建立向量索引库,其中,所述向量索引库中向量索引的个数与所述目标个数相同,所述向量索引为所述参考聚类结果中包含的类的中心;
通过所述向量索引库,对每个语义向量进行检索,得到所述每个语义向量对应的目标向量索引和目标语义向量,其中所述目标向量索引为:所有向量索引中与所述每个语义向量距离最近的向量索引,所述目标语义向量为:所述目标向量索引所在的类中与所述每个语义向量距离最近的语义向量;
根据所述每个语义向量、所述目标向量索引和所述目标语义向量,建立关系图;
根据所述每个文本数据的文本特征,对所述关系图进行剪枝,得到所述初始聚类结果。
6.根据权利要求1所述的方法,其特征在于,所述语义模型通过以下方式确定:
获取训练样本,所述训练样本包括多个文本对;
将每个文本对依次输入至初始语义匹配模型中,得到所述每个文本对对应的预测标签,所述预测标签用于表征所述每个文本对中包含的两个文本数据的语义匹配关系;
若所述预测标签和所述每个文本对对应的实际标签不相同,则对所述初始语义匹配模型的参数进行调整,直至所述初始语义匹配模型收敛,得到目标语义匹配模型;
根据所述目标语义匹配模型,确定所述语义模型。
7.根据权利要求6所述的方法,其特征在于,所述初始语义匹配模型包括:第一模型、第二模型以及归一化层,所述第一模型和所述第二模型结构相同;所述每个文本对中包含第一文本数据和第二文本数据;
所述第一模型,用于生成所述第一文本数据对应的语义向量;
所述第二模型,用于生成所述第二文本数据对应的语义向量;
所述归一化层,用于根据所述第一文本数据对应的语义向量和所述第二文本数据对应的语义向量,通过归一化函数,确定所述每个文本对对应的预测标签。
8.一种文本聚类装置,其特征在于,所述装置包括:
第一确定模块,用于将多个包含噪声的文本数据依次输入至语义模型中,得到每个文本数据对应的语义向量;
聚类模块,用于根据不同语义向量之间的距离和所述每个文本数据的文本特征,对所有语义向量进行聚类,得到初始聚类结果;
分裂模块,用于针对所述初始聚类结果中的每个类,根据所述类的密度图对所述类进行分裂,得到所述类对应的子类;
第二确定模块,用于根据所述子类,确定所有文本数据的目标聚类结果。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211510974.5A CN115858780A (zh) | 2022-11-29 | 2022-11-29 | 一种文本聚类方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211510974.5A CN115858780A (zh) | 2022-11-29 | 2022-11-29 | 一种文本聚类方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115858780A true CN115858780A (zh) | 2023-03-28 |
Family
ID=85667721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211510974.5A Pending CN115858780A (zh) | 2022-11-29 | 2022-11-29 | 一种文本聚类方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115858780A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117708613A (zh) * | 2023-12-25 | 2024-03-15 | 北京中微盛鼎科技有限公司 | 一种面向产业链协同运作的数字资源匹配方法 |
CN117708613B (zh) * | 2023-12-25 | 2024-05-14 | 北京中微盛鼎科技有限公司 | 一种面向产业链协同运作的数字资源匹配方法 |
-
2022
- 2022-11-29 CN CN202211510974.5A patent/CN115858780A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117708613A (zh) * | 2023-12-25 | 2024-03-15 | 北京中微盛鼎科技有限公司 | 一种面向产业链协同运作的数字资源匹配方法 |
CN117708613B (zh) * | 2023-12-25 | 2024-05-14 | 北京中微盛鼎科技有限公司 | 一种面向产业链协同运作的数字资源匹配方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230100376A1 (en) | Text sentence processing method and apparatus, computer device, and storage medium | |
CN111753060B (zh) | 信息检索方法、装置、设备及计算机可读存储介质 | |
CN110442718B (zh) | 语句处理方法、装置及服务器和存储介质 | |
CN107085581B (zh) | 短文本分类方法和装置 | |
WO2021093755A1 (zh) | 问题的匹配方法及装置、问题的回复方法及装置 | |
CN109376222B (zh) | 问答匹配度计算方法、问答自动匹配方法及装置 | |
US20230039496A1 (en) | Question-and-answer processing method, electronic device and computer readable medium | |
CN112214593A (zh) | 问答处理方法、装置、电子设备及存储介质 | |
CN110781687B (zh) | 相同意图语句的获取方法及装置 | |
CN113282711B (zh) | 一种车联网文本匹配方法、装置、电子设备及存储介质 | |
CN112463944B (zh) | 一种基于多模型融合的检索式智能问答方法及装置 | |
CN113761868B (zh) | 文本处理方法、装置、电子设备及可读存储介质 | |
CN112131876A (zh) | 一种基于相似度确定标准问题的方法及系统 | |
CN114298055B (zh) | 基于多级语义匹配的检索方法、装置、计算机设备和存储介质 | |
CN116150306A (zh) | 问答机器人的训练方法、问答方法及装置 | |
CN114676346A (zh) | 新闻事件处理方法、装置、计算机设备和存储介质 | |
CN114328800A (zh) | 文本处理方法、装置、电子设备和计算机可读存储介质 | |
CN112307048B (zh) | 语义匹配模型训练方法、匹配方法、装置、设备及存储介质 | |
CN111581365B (zh) | 一种谓词抽取方法 | |
US11822887B2 (en) | Robust name matching with regularized embeddings | |
CN115858780A (zh) | 一种文本聚类方法、装置、设备及介质 | |
CN113673237A (zh) | 模型训练、意图识别方法、装置、电子设备及存储介质 | |
CN115146021A (zh) | 文本检索匹配模型的训练方法、装置、电子设备及介质 | |
CN112925912A (zh) | 文本处理方法、同义文本召回方法及装置 | |
CN111767388A (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 |