多特征融合的双目标自监督医疗问题文本聚类方法及系统
未命名
08-05
阅读:87
评论:0
1.本发明涉及一种文本处理技术领域,特别是关于一种多特征融合的双目标自监督医疗问题文本聚类方法及系统。
背景技术:
2.在许多实际应用中,短文本聚类是一项具有挑战性的重要任务。然而,许多基于词袋的短文本聚类方法往往受到文本表示稀疏性的限制,而基于神经网络词嵌入的方法无法捕捉文本语料库中的文档结构依赖性,同时传统文本聚类算法将文本表示与聚类过程分开计算,自监督学习(self-supervised learning)是无监督学习的一个特殊形式,自监督学习和无监督学习面向没有标注的数据。将聚类结果作为目标自监督训练引导深度网络学习到更好的表征,通过深度网络与聚类过程联合训练,学习到的高质量文本表征有助于提高聚类算法性能,提高聚类精度和网络的泛化能力,改变传统聚类框架中特征表示和聚类算法之间非端到端的本质。
3.医疗问答数据为非结构化的文本形式,且字符较短,用语不规范的特点,单一模型提取的特征往往不能充分表征文本内容,需要结合其他模型构建融合特征,丰富特征向量的语义信息,从而更好的进行文本表示。因此,如何使问题文本融合更多的信息,同时构建端对端的文本聚类模型,构建多特征融合的双目标自监督医疗问题文本聚类模型成为目前亟需解决的技术问题。
技术实现要素:
4.针对上述问题,本发明的目的是提供一种多特征融合的双目标自监督医疗问题文本聚类方法及系统,其能有效提高问题文本的特征表示能力。
5.为实现上述目的,本发明采取以下技术方案:一种多特征融合的双目标自监督医疗问题文本聚类方法,其包括:提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。
6.进一步,将词频信息和词汇语义信息融合得到加权词向量,包括:
7.以词频-逆文本频率指数值tf-idf对快速文本分类器fasttext词汇语义加权,减少非关键词的特征影响,提高主题区分能力,得到医疗问题文本中词汇的权重特征;
8.将词汇语义特征与相应的tf-tdf值相乘,得到加权词向量。
9.进一步,在提取医疗问题文本数据源中的词频信息和词汇语义信息之前,还包括对医疗问题文本数据进行处理的步骤:
10.将医疗问题文本数据进行数据清洗,去除无意义噪声数据,同时对标点符号不用、
乱用问题进行修正;
11.将进行数据清洗后的医疗问题文本数据进行分词,分词后进行类别标注。
12.进一步,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,包括:
13.采用bigru作为非线性函数f1以获取长期依赖神经元信息,每个gru单元中设置有两个sigmoid门:复位门和更新门;通过双向结构获得单个问题文本中相邻单词之间的依赖关系;
14.在bigru基础上引入自注意机制,允许将句子的不同方面提取到多个向量表示中;在没有其他额外输入的情况下获取更多信息,并能直接访问所有时间下的隐藏表示。
15.进一步,多方面的自我注意机制,为:
[0016][0017][0018]
式中,w1和w2是具有可学习参数的线性层,tanh作为激活层引入非线性变换,t为矩阵的转置,h作为gru的输出特征,而z则代表线性层输出特征;a为自注意力矩阵,exp代表指数函数,a中的每个值表示对于特征值与其他特征值的相关性;通过乘以注意力矩阵a和输入h得到基于自注意力机制增强的中间特征入h得到基于自注意力机制增强的中间特征再通过一层线性投射层计算以获得输出特征。
[0019]
进一步,跨文档主题信息目标函数,为:
[0020][0021][0022]
式中,l
topic
为跨文档主题信息目标函数,kl散度,d
ij
∈d表示样本i属于主题j的概率,f
ij
∈f为表示样本i属于主题j的概率,f为主题模型lda计算出的文本的文档-主题分布,下标i、j分别表示样本i,主题j;d为一种概率分布,d∈r1×r,其中r为文档-主题分布向量的长度,relu为线性修正激活函数,w1和w2是具有可学习参数的线性层。
[0023]
进一步,联合损失函数为:
[0024]
l
train
=αl
cluster
+l
topic
[0025]
其中,l
train
为联合损失函数,l
cluster
为聚类目标函数,l
topic
为跨文档主题信息目标函数,α为超参数。
[0026]
一种多特征融合的双目标自监督医疗问题文本聚类系统,其包括:第一处理模块,提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;第二处理模块,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;第三处理模块,基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。
[0027]
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行上述方法中的任一方法。
[0028]
一种计算设备,其包括:一个或多个处理器、存储器及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为所述一个或多个处理器执行,所述一个或多个程序包括用于执行如上述方法中的任一方法的指令。
[0029]
本发明由于采取以上技术方案,其具有以下优点:
[0030]
本发明为学习融合跨文档主题特征同时构建端对端的文本聚类模型,构建两个目标函数,融合到统一聚类框架下,学习有利于文本聚类的友好表示。解决了目前文本聚类算法将文本表示与聚类过程分开,以及医疗问题文本本身字符少,特征稀疏的问题。
附图说明
[0031]
图1是本发明实施例中多特征融合的双目标自监督医疗问题文本聚类方法流程图;
[0032]
图2是本发明实施例中基于传统的空间向量模型的医学问题文本聚类结果可视化效果;
[0033]
图3是本发明实施例中结合词袋模型的方法和词嵌入的方法的医学问题文本聚类结果可视化效果;
[0034]
图4是本发明实施例中通过自编码器对数据提取高阶特征降维的医学问题文本聚类结果可视化效果;
[0035]
图5是本发明实施例中mf-dsc的医学问题文本聚类结果可视化效果;
[0036]
图6是本发明实施例中不同模型各数据集下的nmi值对比示意图。
具体实施方式
[0037]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0038]
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0039]
为了解决目前文本聚类算法将文本表示与聚类过程分开,以及医疗问题文本本身字符少,特征稀疏的问题,本发明提供一种多特征融合的双目标自监督医疗问题文本聚类方法及系统。本发明能提高问题文本的特征表示能力,改变传统聚类框架中特征表示和聚类算法之间非端到端的本质,采用多特征融合的双辅助目标自监督聚类算法(double-target self-supervised clustering with multi-feature fusion,简称mf-dsc)。首先根据词频信息获得词汇权重,词汇语义信息生成词向量,将词频信息和词汇语义信息融合得到加权词向量作为模型的整体输入进行深度学习,并引入自注意力机制,计算每个词语在问题文本中的权重,即词汇间的相互影响。为学习融合跨文档主题特征同时构建端对端
的文本聚类模型,构建两个目标函数,融合到统一聚类框架下,学习有利于文本聚类的友好表示。
[0040]
在本发明的一个实施例中,提供一种多特征融合的双目标自监督医疗问题文本聚类方法。本实施例中,如图1所示,该方法包括以下步骤:
[0041]
1)提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;
[0042]
2)将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;
[0043]
3)基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。
[0044]
本实施例中,将文本表示输入到bigru模型进行深度学习高质量语义信息,并引入自注意力机制,用来获得问题文本中词汇之间的相关性。为了构建端对端的文本聚类模型,获取更加友好的聚类表示,将文本表示和聚类结果融合到统一框架下,将聚类目标函数融合到学习表示的网络损失函数,同时为使文本关注到全文档信息,引入跨文档主题信息目标函数,融合到统一框架下构建了联合损失函数,实现双目标自监督。
[0045]
上述步骤1)中,词频特征获得词汇权重,词汇语义特征生成词向量,将词频信息和词汇语义信息融合即得到加权词向量。
[0046]
本实施例中,具体的,将词频信息和词汇语义信息融合得到加权词向量,包括以下步骤:
[0047]
1.1.1)以词频-逆文本频率指数值tf-idf对快速文本分类器fasttext词汇语义加权,减少非关键词的特征影响,提高主题区分能力,得到医疗问题文本中词汇的权重特征;
[0048]
1.1.2)将词汇语义特征与相应的tf-tdf值相乘,得到加权词向量。
[0049]
上述步骤1)中,以医学问答社区为数据源,使用python从医学问答社区中获取问题标题作为研究对象。由于问答社区问句存在语义模糊和表述不科学规范等问题,本发明需要对数据进行预处理。故在提取医疗问题文本数据源中的词频信息和词汇语义信息之前,还包括对医疗问题文本数据进行处理的步骤:
[0050]
1.2.1)将医疗问题文本数据进行数据清洗,去除无意义噪声数据,同时对标点符号不用、乱用问题进行修正;
[0051]
具体的,对于少数表达不准确和不规范的问题进行少量的调整,构建肝癌医学同义词表,规范专业术语,如将“肝ca”替换为“肝癌”。
[0052]
1.2.2)将进行数据清洗后的医疗问题文本数据进行分词,分词后进行类别标注。
[0053]
本实施例中,利用pkuseg进行分词,支持领域分词。明确问题文本类别对聚类效果进行评估,通过现有技术和专家咨询确定类目体系,结构清晰,领域特色突出。根据现有对医学健康信息的分类并结合医疗问答社区中医学问题的实际情况,将医学问题划分为12大类,类别如下表1所示,标注类别根据医学问题类目划分体系进行标注与审核。
[0054]
表1医学问题类目划分体系
[0055][0056]
在本实施例中,快速文本分类器fasttext有输入层、隐藏层和输出层,是在skip-gram基础上加以改进,对输入上下文的每一个词基于词n-gram格式进行分解,可以对词汇的内部顺序进行表示,例如对于“原发性肝癌”这个词,若n-gram取值为3,则它的trigram有:“原发”,“原发性”,“发性癌”,“性肝癌”和“肝癌”。“原发性肝癌”的词向量可以用分解处理后的5个词向量叠加来表示。fasttext模型生成的词汇语义特征包含了语义和部分语序信息,医疗问答社区中的问题文本每个问题的词汇量很少,特征词汇的上下文语义和语序信息缺失明显,以fasttext模型提取词汇语义特征,医疗问题文本d词汇语义特征表示为:
[0057][0058]
其中,ak表示问题文本d中词汇wk的向量,s为向量维度。
[0059]
以词频-逆文本频率指数值tf-idf对fasttext词汇语义加权,减少非关键词的特征影响,从而提高主题区分能力,问题文本d中词汇的权重特征w为:
[0060]
w=[tfidf1,tfidf2,
…
,tfidfk]
[0061]
其中,tfidfk表示问题文本d中词汇wk的权重,tf-tdf值越大重要性越强。
[0062]
文本将词汇语义特征与相应的tf-tdf值相乘,即为问题文本d的加权词汇语义特征fw,
[0063][0064]
其中,为实数矩阵。
[0065]
上述步骤2)中,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,包括以下步骤:
[0066]
2.1)采用bigru作为非线性函数f1以获取长期依赖神经元信息,每个gru单元中设置有两个sigmoid门:复位门和更新门;通过双向结构获得单个问题文本中相邻单词之间的依赖关系;
[0067]
2.2)在bigru基础上引入自注意机制,允许将句子的不同方面提取到多个向量表示中;在没有其他额外输入的情况下获取更多信息,并能直接访问所有时间下的隐藏表示。
[0068]
在本实施例中,编码器本质上是将输入序列编码成特征表示的rnn。对于词汇序列预测,给定输入任意问题文本序列k为问题文本词汇数,s为预训练词嵌入的维度,也是主题维度。然后,编码器被用于在时间步长t学习x
t
到h
t
的映射是时间t时编码器的隐藏状态,m时隐藏状态的大小,f1是一个非线性函数。本发明采用bigru作为f1来获取长期依赖神经元信息,此外,采用gru单元的原因是神经元对一定时间内进行求和,这有助于克服梯度消失的问题并更好地捕获时间序列中的长期相关性。在每个gru单元中由两个sigmoid门,即复位门r
t
和更新门z
t
。gru单元更新如下:
[0069]rt
=σ(wr[h
t-1
,x
t
])
[0070]zt
=σ(wz[h
t-1
,x
t
])
[0071][0072][0073]yt
=σ(w
oht
)
[0074]
其中,是前一个隐藏状态h
t-1
和当前输入x
t
的连接。wo为输出权重向量,y
t
为t时刻下经过激活函数激活获得当前对应的输出,为t时刻的候选隐藏层状态信息,为待学习的参数,σ为sigmoid函数,为了获得单个问题文本中相邻单词之间的依赖关系,采用双向结构。
[0075][0076][0077][0078]
最后与每个横向拼接,得到一个隐藏状态h
t
。设每个单向gru的隐藏单元数为u,为简单起见,注意所有的h
t
为其中k为输入问题文本中的词汇数。
[0079]
本实施例中,自注意力机制是注意力机制的变体,与注意力机制不同的是它的encoder和decoder部分是同一文本,通过文本自身的词语分布来计算每个词语在文本中的权重,即词汇间的相互影响,其减少了对外部信息的依赖,更擅长捕捉数据或特征的内部相关性,对每个特征配以不同的权重,互补的特征信息进行加强,并弱化冲突部分。现有技术
中大多采用rnn的最终隐藏状态或rnn隐藏状态通过最大(或平均)池化来创建简单的向量表示。然而,在循环神经网络模型的所有时间步骤中多有语义是相对困难的,并且有的词汇语义并不是必要的。与现有方法不同,本发明引入一种自注意机制,该机制允许将句子的不同方面提取到多个向量表示中。具体而言,在本实施例中,在所提出的句子嵌入模型中,在bigru之上引入了自注意机制,在没有其他额外输入的情况下获取更多信息,并且由于可以直接访问所有时间下的隐藏表示,它减轻了编码器的一些长期记忆负担。
[0080]
具体的,多方面的自我注意机制,为:
[0081]
z=w2·
tanh(w1·ht
)
[0082][0083][0084]
式中,w1和w2是具有可学习参数的线性层,tanh作为激活层引入非线性变换,t为矩阵的转置,h作为gru的输出特征,而z则代表线性层输出特征。自注意力矩阵a通过softmax函数计算得到,exp代表指数函数,a中的每个值表示对于特征值与其他特征值的相关性。通过乘以注意力矩阵a和输入h得到基于自注意力机制增强的中间特征过乘以注意力矩阵a和输入h得到基于自注意力机制增强的中间特征再通过一层线性投射层计算以获得输出特征。
[0085]
后续再通过线性投射层计算以获得输出特征,计算如下:
[0086][0087]
式中,w1和w2是具有可学习参数的线性层,tanh作为激活函数引入非线性变换。m∈r1×r则为最终的文本表示向量,其中r为向量维度。
[0088]
上述步骤3)中,为了构建端对端的文本聚类模型,同时引入跨文档主题信息,获取更加友好的聚类表示,引入跨文档主题信息目标函数l
topic
,同时将聚类目标函数l
cluster
融合到学习表示的网络损失函数中,在统一框架下构建联合损失函数,将文本表示和聚类结果融合到统一框架下。
[0089]
为了进一步学习跨文档-主题信息,使用文档-主题分布f作为自监督训练目标,在文档簇与主题之间存在一一映射关系的假设成立的情况下,能够在预训练阶段使自编码器bigru就学习融合跨文档信息的相对聚类友好的表示,但是需要得到与对应的文档-主题向量相同维数的预测向量,利用两层全连接层作为解码器。
[0090][0091]
d∈r1×r,其中r为文档-主题分布向量的长度。relu为线性修正激活函数,其作用是将输入中的负值置零,而w1和w2是具有可学习参数的线性层,用于文本表示向量m的降维,使其维度与文档-主题向量一致,结果d
ij
∈d表示样本i属于主题j的概率,d即为一种概率分布。
[0092]
具体的,跨文档主题信息目标函数l
topic
,为:
[0093][0094]
式中,l
topic
为跨文档主题信息目标函数,kl散度,d
ij
∈d表示样本i属于主题j的概
率,d为一种概率分布,f
ij
∈f为表示样本i属于主题j的概率,f为主题模型lda计算出的文本的文档-主题分布,下标i、j分别表示样本i,主题j。
[0095]
上述步骤3)中,联合损失函数为:
[0096]
l
train
=αl
cluster
+l
topic
[0097]
其中,l
train
为联合损失函数,l
cluster
为聚类目标函数,l
topic
为跨文档主题信息目标函数。α为超参数,在聚类算法聚类过程中不断优化该损失l
train
,从而更新模型参数。值得注意的是在算法迭代初期,模型提取的特征尚不够理想,具有过大α的l
cluster
可能存在副作用。使用了一个简单的爬升策略对α进行调整,使其随着训练迭代的进行而逐渐增大,如下式所示:
[0098][0099]
其中α
max
=0.3,t为迭代次数,t
′
为设定的固定最大迭代次数。
[0100]
其中,聚类目标函数l
cluster
为:为了构建端对端的文本聚类模型,同时为自编码器bigru学习聚类的友好表示,提出基于batch的聚类损失以提升输出特征的聚类效果。该损失表示如下:
[0101][0102]
其中,m为每个batch内样本的数量,k为每个batch内聚类中心数量,即聚类类别数量12,而c则为每个batch的聚类中心,x为每个batch内的样本。在每次训练迭代中,通过k-means算法对batch内的特征进行聚类获得聚类中心c,l
cluster
将使得batch内的特征向聚类中心c靠拢。
[0103]
实施例:通过本实施例进一步对本发明进行说明并进行相应的实验证明。
[0104]
实验环境及评价指标:实验编程语言使用python 3.8,集成开发环境为pytorch 1.9.0,实验环境为一个ubuntu 16.04操作系统的工作站。该工作站有8个nvidia titan rtx 24gb gpu,256g ram和80个gold 6248cpu@2.50ghz。实验使用adamw优化器,设置学习率为1e-3,学习率策略为线性衰减,采用256的batch size训练32个epoch。
[0105]
bigru全连接网络层数设置为2,单元数分别设置为50,100。产生的句子表示向量维度设置为14。初始化的参数通过随机均匀分布生成并通过随机梯度下降法(sgd)进行参数更新。
[0106]
本实施例采用聚类精确度(acc)、归一化互信息(nmi)、兰德指数(ari)和f值。acc用于评价实验类别与真实类别相比预测的准确率,nmi和f值用于预测实验类被与真实类别的相近程度,ari衡量两个数据分布的吻合程度,是评价聚类效果的常用指标,都是评价聚类效果的常用指标,这里不再进行详细介绍。
[0107]
对比实验:本实施例设计了6个对比试验,分别如下:
[0108]
对比方法m1:以k-means聚类算法为基础的聚类框架,使用空间向量模型和词频-逆文本频率指数特征加权方案对文本进行表示用以聚类,该方法作为基线方法,为了方便后面进行叙述,将该聚类方法命名为m1。
[0109]
对比方法m2:以k-means聚类算法为基础的聚类框架,使用bert模型进行文本表示的文本聚类算法,为了方便后面进行叙述,将该聚类方法命名为m2。
[0110]
对比放方法m3:tae模型是将结合bow方法和神经句子嵌入的方法对文本表示进行优化,并以文档-主题信息分布作为目标提出一种自监督方法,命名为m4。
[0111]
对比方法m4:sif-auto是一种利用sif词向量进行文本表示,然后利用自编码网络进行特征提取,以聚类分布作为辅助目标分布作为自监督,进行聚类的算法,命名为m5。
[0112]
对比方法m5:bert_ae_k-means是本文提出的文本表示方法,均采用预训练模型bert提取文本的语义表示,经过自编码器提取特征,以聚类目标作为辅助目标分布作为自监督,命名为m5。
[0113]
对比实验结果分析:根据上述对比试验设计,在构建的医疗问题数据集上做了5个对比实验,每个模型的的聚类效果如表2所示。
[0114]
表2不同模型实验聚类效果
[0115][0116]
mf-dsc文本聚类方法在nmi、ari、acc和f1分别为0.4346、0.4934、0.8649和0.5737,均优于其他模型。相比于传统的空间向量模型m1和预训练模型m2进行文本表示的聚类方法,mf-dsc文本聚类在各个指标上的效果表现得更加优秀,空间向量模型在处理大规模文本时,文本向量维度增加,忽略词语之间的语义关系,而预训练模型bert所生成的数据高维,问题文本的语义信息不能更好的得到表示。其中在预训练模型m2 pre-bert和bert中一个利用知识掩码策略针进行预训练,一个没有进行预训练,经过预训练的pre-bert聚类效果得到大幅提升,可以提高文本的表示能力,缩减了预训练语料与目标领域语料之间数据特征分布的差异,得到更加符合语义环境的动态词向量。m3、m4、m5是近年来提出在短文本方聚类任务上表现较好的模型,与对比方法m3相比,在nmi、ari、acc和f1四个指标上也均有提高,其中在nmi指标上提高了3.44个百分点,mf-dsc与对比方法m3均将跨文档主题信息作为自监督目标,mf-dsc除此之外还将聚类目标函数融合到聚类框架中获得更友好的聚类表示。与对比方法m4和m5相比,在nmi、ari、acc和f1四个指标上提高较多,m4 sif对所有词的词汇向量加权平均,然后去除共有部分,由于问题文本本身文本短小特征稀疏,会带来更多的信息损失,在各模型实验结果中也是最不理想的。m5在预训练模型上基础上使用自编码器进行特征提取和降维,效果优于m2的pre-bert。
[0117]
消融实验分析:为了验证词频特征和语义特征以及两个辅助目标函数对整个算法所起到的作用,本发明对mf-dsc进行了消融实验。首先在特征消融方面,没有词频特征在nmi、ari、acc和f1四个指标上分别降低0.0331、0.0111、0.0017和0.0117个点;没有词汇语义特征在nmi、ari、acc和f1四个指标上分别降低0.0146、0.0212、0.0079和0.0164个点,去掉词频特征或词汇语义特征均会降低聚类指标,词频特征影响更多的是聚类类别和真实类别的相似程度,词汇语义特征更多的是两个数据分布的吻合程度。在辅助目标消融方面,如若没有l
topic
,在nmi、ari、acc和f1四个指标上分别降低0.0393、0.0168、0.0031和0.0152个点;如若没有l
cluster
,在nmi、ari、acc和f1四个指标上分别降低0.0128、0.0256、0.0087和
0.0203,没有l
topic
或l
cluster
均会影响文本聚类效果,其中l
topic
使深度学习网络学习到跨文档信息,对于聚类类别和真实类别的相似程度有着更大的影响,如表3所示。
[0118]
表3模型消融实验
[0119][0120]
模型泛化分析:模型在医疗问题数据集上的性能提升已经得到验证,证明了基于多特征融合的双目标自监督文本聚类方法的有效性。为了使结论更加具有可靠性,本发明在六个文本数据集上进行了实验,从而验证方法的可靠性。
[0121]
在六个文本数据集上进行泛化实验,分别是twitter us airline sentiment数据集、20newsgroups数据集、online shopping 10cats数据集、bdci2018数据集、illness-dataset数据集和agnews数据集,六个数据集的训练集、测试集、类别数量等具体情况如表所示。
[0122]
twitter us airline sentiment:该数据集是twitter上关于美国航空公司的评论记录,常被用于情绪识别任务。它包括推文的id、推文的情绪(即三种类别,中性、负面和正面)、负面推文的原因、航空公司的名称和推文文本等内容。
[0123]
20newsgroups:该数据集是大约20,000个英文新闻组文档的集合,具有20个不同的新闻类别,每个类别的文档数量大致相等。
[0124]
online shopping 10cats:该数据集来自电商网站的商品评论数据,共包含书籍、平板、手机、水果、洗发水、热水器、蒙牛、衣服、计算机、酒店10个类别,记作。
[0125]
bdci2018:该数据集来自汽车论坛的用户评论数据,共包含动力、价格、内饰、配置、安全性、外观、操控、油耗、空间、舒适性10个类别。
[0126]
illness-dataset:该数据集由2018年和2019年收集的22,660篇英文推文组成,涉及四个类别,分别是阿尔茨海默氏症、帕金森症、癌症和糖尿病。
[0127]
agnews:该数据集由学术新闻搜索引擎cometomyhead搜集而成,新闻数据源多达2,000个。数据集一共有120,000个训练样本,7,600个测试样本。标签一共有4个,但没有给出标签的具体含义。文本则包含新闻标题以及正文,本发明仅使用新闻标题部分。
[0128]
关于各数据集的训练集数据量、测试集数量、类别数量、文本平均长度、最大长度、最小长度以及语种详细情况如表4所示。
[0129]
表4各文本数据集情况
[0130][0131]
表5展示了三种对比方法和本发明文本聚类方法mf-dsc在六个公共数据集上测试所得到的标准互信息nmi、兰德指数ari、聚类准确度acc和f1值,从表5中可以看出除了在illness-dataset上mf-dsc文本聚类方法在acc方面稍逊于baseline模型,mf-dsc文本聚类方法在其他数据集上优于其他模型。
[0132]
表5模型泛化实验结果
[0133][0134]
不同模型各数据集下的nmi值对比如图6所示,四个模型中mf-dsc在六个数据集上均表现最优,其中在online shopping 10cats中nmi最高为0.4319,其次是20newsgroups和bdci2018,再其次是agnews,在twitter us airline sentiment和illness-dataset中nmi较低,online shopping 10cats是中文的商品评论数据集,mf-dsc在此数据集上具有较好的泛化效果。20newsgroups是20个类别的英文长文本,bdci2018是10个类别的中文短文本,两者nmi的表现可以说处于同一层次,而twitter us airline sentiment,illness-dataset以及agnews中nmi较低,可能跟数据集类别数目有关,类别数目均较少,类目划分不清,一个文档可能从属于其他类别。
[0135]
根据对比实验多特征融合的双目标自监督问题文本聚类模型mf-dsc融合词频特征、词汇语义特征、跨文档特征进行深度学习获取深层次的语义,构建以跨文档主题目标和
聚类目标联合优化的端对端的聚类模型,以获取更友好的聚类表示,在聚类效果上具有明显优势,同时在六个数据集上进行了泛化实验,模型具有较强的泛化能力。
[0136]
综上所述,本发明的多特征融合的双目标自监督问题文本聚类模型mf-dsc,进行深度学习学习获得深层次的语义关系,引入跨文档主题信息目标和聚类目标构建端对端的问题文本聚类方法。用医疗问题文本数据集验证模型的有效性,在nmi、ari、acc和f值方面均优于基线模型和其他四个对比模型。并通过消融实验验证词频特征和语义特征以及两个辅助目标函数对整个算法所起到的作用,在六个公开数据集上进行实验验证模型的泛化性。
[0137]
在本发明的一个实施例中,提供一种多特征融合的双目标自监督医疗问题文本聚类系统,其包括:
[0138]
第一处理模块,提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;
[0139]
第二处理模块,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;
[0140]
第三处理模块,基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。
[0141]
上述实施例中,将词频信息和词汇语义信息融合得到加权词向量,包括:
[0142]
以词频-逆文本频率指数值tf-idf对快速文本分类器fasttext词汇语义加权,减少非关键词的特征影响,提高主题区分能力,得到医疗问题文本中词汇的权重特征;
[0143]
将词汇语义特征与相应的tf-tdf值相乘,得到加权词向量。
[0144]
上述实施例中,在提取医疗问题文本数据源中的词频信息和词汇语义信息之前,还包括对医疗问题文本数据进行处理的步骤:
[0145]
将医疗问题文本数据进行数据清洗,去除无意义噪声数据,同时对标点符号不用、乱用问题进行修正;
[0146]
将进行数据清洗后的医疗问题文本数据进行分词,分词后进行类别标注。
[0147]
上述实施例中,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,包括:
[0148]
采用bigru作为非线性函数f1以获取长期依赖神经元信息,每个gru单元中设置有两个sigmoid门:复位门和更新门;通过双向结构获得单个问题文本中相邻单词之间的依赖关系;
[0149]
在bigru基础上引入自注意机制,允许将句子的不同方面提取到多个向量表示中;在没有其他额外输入的情况下获取更多信息,并能直接访问所有时间下的隐藏表示。
[0150]
其中,多方面的自我注意机制,为:
[0151][0152][0153]
式中,w1和w2是具有可学习参数的线性层,tanh作为激活层引入非线性变换,t为矩
阵的转置,h作为gru的输出特征,而z则代表线性层输出特征;a为自注意力矩阵,exp代表指数函数,a中的每个值表示对于特征值与其他特征值的相关性;通过乘以注意力矩阵a和输入h得到基于自注意力机制增强的中间特征入h得到基于自注意力机制增强的中间特征再通过一层线性投射层计算以获得输出特征。
[0154]
上述实施例中,跨文档主题信息目标函数,为:
[0155][0156][0157]
式中,l
topic
为跨文档主题信息目标函数,kl散度,d
ij
∈d表示样本i属于主题j的概率,f
ij
∈f为表示样本i属于主题j的概率,f为主题模型lda计算出的文本的文档-主题分布,下标i、j分别表示样本i,主题j;d为一种概率分布,d∈r1×r,其中r为文档-主题分布向量的长度,relu为线性修正激活函数,w1和w2是具有可学习参数的线性层。
[0158]
上述实施例中,联合损失函数为:
[0159]
l
train
=αl
cluster
+l
topic
[0160]
其中,l
train
为联合损失函数,l
cluster
为聚类目标函数,l
topic
为跨文档主题信息目标函数,α为超参数。
[0161]
本实施例提供的系统是用于执行上述各方法实施例的,具体流程和详细内容请参照上述实施例,此处不再赘述。
[0162]
在本发明一实施例中提供的计算设备结构,该计算设备可以是终端,其可以包括:处理器(processor)、通信接口(communications interface)、存储器(memory)、显示屏和输入装置。其中,处理器、通信接口、存储器通过通信总线完成相互间的通信。该处理器用于提供计算和控制能力。该存储器包括非易失性存储介质、内存储器,该非易失性存储介质存储有操作系统和计算机程序,该计算机程序被处理器执行时以实现一种多特征融合的双目标自监督医疗问题文本聚类方法;该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、管理商网络、nfc(近场通信)或其他技术实现。该显示屏可以是液晶显示屏或者电子墨水显示屏,该输入装置可以是显示屏上覆盖的触摸层,也可以是计算设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。处理器可以调用存储器中的逻辑指令。
[0163]
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0164]
在本发明的一个实施例中,提供一种计算机程序产品,所述计算机程序产品包括
存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。
[0165]
在本发明的一个实施例中,提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储服务器指令,该计算机指令使计算机执行上述各实施例提供的方法。
[0166]
上述实施例提供的一种计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
[0167]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0168]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0169]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0170]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
技术特征:
1.一种多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,包括:提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。2.如权利要求1所述多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,将词频信息和词汇语义信息融合得到加权词向量,包括:以词频-逆文本频率指数值tf-idf对快速文本分类器fasttext词汇语义加权,减少非关键词的特征影响,提高主题区分能力,得到医疗问题文本中词汇的权重特征;将词汇语义特征与相应的tf-tdf值相乘,得到加权词向量。3.如权利要求1所述多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,在提取医疗问题文本数据源中的词频信息和词汇语义信息之前,还包括对医疗问题文本数据进行处理的步骤:将医疗问题文本数据进行数据清洗,去除无意义噪声数据,同时对标点符号不用、乱用问题进行修正;将进行数据清洗后的医疗问题文本数据进行分词,分词后进行类别标注。4.如权利要求1所述多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,包括:采用bigru作为非线性函数f1以获取长期依赖神经元信息,每个gru单元中设置有两个sigmoid门:复位门和更新门;通过双向结构获得单个问题文本中相邻单词之间的依赖关系;在bigru基础上引入自注意机制,允许将句子的不同方面提取到多个向量表示中;在没有其他额外输入的情况下获取更多信息,并能直接访问所有时间下的隐藏表示。5.如权利要求4所述多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,多方面的自我注意机制,为:多方面的自我注意机制,为:式中,w1和w2是具有可学习参数的线性层,tanh作为激活层引入非线性变换,t为矩阵的转置,h作为gru的输出特征,而z则代表线性层输出特征;a为自注意力矩阵,exp代表指数函数,a中的每个值表示对于特征值与其他特征值的相关性;通过乘以注意力矩阵a和输入h得到基于自注意力机制增强的中间特征再通过一层线性投射层计算以获得输出特征。6.如权利要求1所述多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,跨文档主题信息目标函数,为:
d=softmax(w2relu(w
1t
m))式中,l
topic
为跨文档主题信息目标函数,kl散度,d
ij
∈d表示样本i属于主题j的概率,f
ij
∈f为表示样本i属于主题j的概率,f为主题模型lda计算出的文本的文档-主题分布,下标i、j分别表示样本i,主题j;d为一种概率分布,d∈r1×
r
,其中r为文档-主题分布向量的长度,relu为线性修正激活函数,w1和w2是具有可学习参数的线性层。7.如权利要求1所述多特征融合的双目标自监督医疗问题文本聚类方法,其特征在于,联合损失函数为:l
train
=αl
cluster
+l
topic
其中,l
train
为联合损失函数,l
cluster
为聚类目标函数,l
topic
为跨文档主题信息目标函数,α为超参数。8.一种多特征融合的双目标自监督医疗问题文本聚类系统,其特征在于,包括:第一处理模块,提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;第二处理模块,将加权词向量作为bigru模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;第三处理模块,基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。9.一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行如权利要求1至7所述方法中的任一方法。10.一种计算设备,其特征在于,包括:一个或多个处理器、存储器及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为所述一个或多个处理器执行,所述一个或多个程序包括用于执行如权利要求1至7所述方法中的任一方法的指令。
技术总结
本发明涉及一种多特征融合的双目标自监督医疗问题文本聚类方法及系统,其包括:提取医疗问题文本数据源中的词频信息和词汇语义信息,将词频信息和词汇语义信息融合得到加权词向量;将加权词向量作为BiGRU模型的输入,进行深度学习并引入自注意力机制,计算每个词语在医疗问题文本中的权重,得到词汇间的语义关系;基于词汇间的语义关系构建跨文档主题信息目标函数,并将聚类目标函数融合到学习表示的网络损失函数中,与跨文档主题信息目标函数构建联合损失函数,将文本表示和聚类结果融合到统一框架下,实现端对端的双目标自监督文本聚类。本发明能有效提高问题文本的特征表示能力。力。力。
技术研发人员:高东平 申喜凤 秦奕 南嘉乐 张维宁 车美龄
受保护的技术使用者:中国医学科学院医学信息研究所
技术研发日:2023.05.15
技术公布日:2023/8/4
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
