基于Siamese-BIGRU-Attention的语义相似度分析研究

2022-10-08 08:36陈鑫邱占芝
大连交通大学学报 2022年4期
关键词:计算方法语义准确率

陈鑫,邱占芝

(大连交通大学 机械工程学院,辽宁 大连 116028)

在对话生成领域,探索对话过程中的话题转换,对于了解对话的趋势和走向十分重要.话题转换是指会话过程中谈话主题切换的过渡过程[1].在对话过程中,话题转换连接了不同的话题线索,话题线索包含多个毗邻对,每个毗邻对又是由两个话轮组成.因此,话题线索、毗邻对和话轮在对话结构中形成自上而下的分层次描述关系.总的来说,对于如何准确地识别话题转换,语义相似度的研究是至关重要的.通过研究发现,实现对话过程中的话题转换的切分与判别,可以分为以下三个步骤.首先,通过语义相似度模型计算话轮间的相似度,通过相似度判定阈值进行相似性话轮的筛选,得到切分后的话轮组;其次,把所有已切分的话轮组输入到主题模型中,得到每个话轮组对应的主题向量;最后,将多个话轮组中提取的主题向量输入到聚类模型中,输出得到与话轮组对应的主题类别,从而明确在对话过程中的主题类别的转换.

在之前的研究进程中,研究人员们主要从基于距离属性、基于内容和基于深度学习三个不同维度进行语义文本的相似度计算研究.

基于距离的语义相似度计算是通过在层次树中的位置距离差异来测算语义相似度.差异越小,相似度越大;差异越大,相似度越小[2].YANG等人[3]提出这种方法以分布假设为基础,认为相似的单词之间存在相似的语义,并通过各种类型的文本向量化方法将文本转换为词向量,通过计算得到向量间距离来评估文本间的相似度.CAMACHO等人[4]提出若两个文本之间有更多的相同属性,相似度较高;若两个文本之间相同属性较少,则相似度较低,此方法在很大程度上依赖于文本属性集的自身属性.

基于内容属性语义相似度计算方法,根据内容源不同可分为语义词典和大型知识库资源两大类[5].在语义词典方面,LOGESWARAN等人[6]提出在计算的句子间的相似度过程中以词粒度作为考量,通过词语间相似度的加权求和来评估相似度,过程中并未考虑到句法结构间的联系,所以导致对长文本的相似度计算不准确.在大型知识库资源方面,YEH等人[7]提出基于大型知识库资源的方法具有知识资源丰富和迭代速度较快的特点,但也存在着诸多问题,如知识层次及密度分布不均、知识体系不够完备、相关资源获取不直接且无法量化计算等.

基于深度学习的语义相似度计算方法可分为无监督学习和监督学习.LE[8]等人提出无监督学习是数据集本身进行信息自监督训练,并对词向量加权求和得到句向量,最终计算句向量间距离来评估语义间的文本相似度.HILL等人[9]则认为无监督学习无法将带有标签的信息和先验知识融入模型之中,导致计算准确率较低且计算时间较长.CONNEAU等人[10]提出了监督学习的方法,该方法运用带有标签的训练集对模型进行训练,提升了模型的时效性,比无监督学习展示出来更好的模型总体性能.

总的来说,基于距离属性的语义相似度计算通常存在着对大规模对话语料库需求较大且在计算时不考虑文本的语义信息及句子结构信息的问题.而基于内容属性的语义相似度计算通常存在着算法迁移难度大、人工成本高及不同的句法结构适应能力差的缺点.本文从语义相似度评价效果较好的深度学习领域中的监督学习继续深入,将选取监督学习方法中的孪生网络架构作为基础架构并运用BIGRU进行语义特征的深层次提取,该方法在充分挖掘上下文因果关系的同时,具有极高的时效性.同时,在BIGRU后,加入了attention机制,进一步提升了上下文关键语义的捕捉能力.最终完成基于Siamese-BIGRU-Attention的语义相似度计算模型的设计.

1 模型结构

本文提出的基于Siamese-BIGRU-Attention的语义相似度计算模型是由两个相同的网络结构A和B组成的孪生网络,该网络结构主要由输入层、嵌入层、BIGRU层、注意力全连接层和匹配层组成,如图1所示.

图1 基于Siamese-BIGRU-Attention计算模型

输入层:将对话过程中的句子S1和S2进行预处理,然后将其输入到模型的嵌入层.

嵌入层:将句子中的每个单词映射为一个低维的稠密向量.预处理后的等长度的句子序列为Sn=(Wn1,Wn2,…,Wnn),每一个单词都需被转换为一个词嵌入向量,然后将其作为后面神经网络结构的输入.

BIGRU层:本文通过BIGRU提取句子的深层语义特征.GRU相对于RNN来说,有效地解决了梯度消失的问题.GRU是在LSTM结构的基础上,将输入门与遗忘门合并成更新门,同时将原来的输出门更新成重置门.GRU和LSTM都是通过门结构来保留文本序列的重要特征,但GRU相比于LSTM少了一个门,同时也具有更少的参数数量,因此GRU的训练速度要更快一些.由于GRU网络无法联系全部上下文信息,因此增加了GRU的反向输入,再将正反向的 GRU合并构建双向门控循环单元BIGRU,此结构充分利用了上下文信息挖掘文本序列的因果关系.

注意力全连接层:本文利用注意力机制将对句子语义有更重要贡献的单词赋予较大的权重,反之则赋予较少的权重,这样更能准确地表达句子语义.选用全连接层则是实现特征表示到样本空间的映射,它可以实现特征提取的综合.

匹配层:计算句子语义向量的余弦相似度,并得到输出.在得到两个句子S1和S2的语义表示后,在句子的语义空间中计算两个向量的余弦相似度,从而判断两个句子是否语义相似.

2 实验

2.1 数据集选择

本文选取日常会话片段标注库作为模型训练的数据集.该数据集主要包含700个日常会话片段,按照不同的话题内容,分为7个大组:工作、学习、娱乐、饮食、交通、情感及天气.每个大组包含100个会话片段,每个会话片段包含20条话语消息,合计14 000条话语消息.通过不同场景下的日常对话,来进行语义相似度模型的训练.

2.2 实验评价指标

语义相似度评价方面,当两个句子的相似度大于相似度阈值时,我们判定这两个句子相似;当两个句子的相似度小于相似度阈值时,我们判定这两个句子不相似.对于本实验,我们采用准确率Accuracy和F1 score值作为评价指标,计算公式如式(1)和式(2)所示:

(1)

(2)

其中,TP表示相似句子判定为相似的个数,FP表示不相似句子判定为相似的个数,FN表示相似句子判定为非相似的个数,TN表示不相似句子判定为非相似的个数.

2.3 实验设置

为了验证本文方法Siamese-BIGRU-Attention模型的有效性,同时为了比较不同模型的性能和效果.本文加入了TF-IDF、 Siamese-CNN和Siamese-BIGRU模型进行对比实验,并均采用准确率Acuracy和F1值评价指标来比较实验效果.

2.4 实验结果与分析

TF-IDF计算语义相似度可分为三个步骤,首先筛选出上下文不同句子的关键词,将其合并为一个集合,计算得到每句话对于该集合中各个词的词频;然后通过TfidfVectorizer生成上下文两句话各自的词频向量;最后计算得到两个向量的余弦相似度.通过计算,该语义相似度计算方法的准确率为74.23%,总体来说,准确率不高,主要制约于该方法属于浅层词汇匹配,对于复杂的对话文本,相似度匹配性能有限.

基于卷积神经网络编码的Siamese-CNN模型计算语义相似度可包含两个关键点:其一,运用CNN实现提取特征,并通过特征向量来构造损失函数,进行网络训练;其二,利用孪生神经网络提取关键词,同时将不同输入映射成特征向量,通过两个向量之间的距离来测算不同输入之间的差异.通过计算,该语义相似度计算方法的准确率为79.92%,精度不是很高主要是由于卷积神经网络更加擅于提取句子的局部特征,获取全局语义编码的能力有限.

在孪生网络基础上,引入BIGRU模块,设计了Siamese-BIGRU模型,该模型的核心方法是将待比较的两个句子通过同一个编码器使其映射到相同的向量空间中,该方法实现了参数共享,进而展现了不错的相似度计算性能,因此其准确率得到了进一步的提升,达到了82.42%,说明了双向门控循环单元具有很强的语义的编码能力,在语义相似度计算方面有着很好的应用,如能更加关注两个句子编码向量之间的交互关系,准确率可能会得到进一步提升.

在Siamese-BIGRU模型基础上,引入了注意力机制,设计了Siamese-BIGRU-Attention模型.attention核心本质是一种加权值,对目标文本完成加权求和后,可得到基于全部文本的中间语义变换函数,因此,引入attention后,该模型通过两个句子编码向量之间交互信息的深度捕捉,更好地实现句子语义相似度的建模.通过计算,该语义相似度计算方法的准确率达到了84.98%,使得模型语义相似度计算性能得到了进一步的提升,虽然提升幅度并不是很大,但依然证明了注意力机制对于模型性能提升的有效性.

实验结果如表1所示.

表1 模型相似度计算结果

3 结论

本文提出基于Siamese-BIGRU-Attention模型的语义相似度计算方法,并探究了BIGRU和attention机制对于模型的影响效果.通过实验,表明该方法在准确率及F1值方面优于其他几个模型,能够展现出更好的语义相似度评估性能,这为话轮延续变换的识别及话题线索的准确切分都提供了极大的帮助.本文实验采用的数据为日常会话片段,它是基于工作、学习、娱乐、饮食、交通、情感及天气七大主题的话语消息,文本类型基本都是短文本对话语料,并且数据分布相对比较均衡.与短文本不同,长文本往往存在噪声较多且计算时间长的问题,在后续的工作中,将继续开展长文本相似度计算方法的探索,同时将不同文本类型的语义相似度计算方法融入聚类算法中,继续进行话轮延续转换的深入研究.

猜你喜欢
计算方法语义准确率
真实场景水下语义分割方法及数据集
槽道侧推水动力计算方法研究
基于示踪气体法的车内新风量计算方法研究
极限的计算方法研究
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
第二重要极限的几种计算方法
“吃+NP”的语义生成机制研究