序列不包含任何匹配元素_Match2:相似问题识别的匹配模型

759544da8091a165a385a382c1b4262f.png

介绍

90e289d0da780e806d668a5711658125.png

本文的主要贡献:

  • 分析了已存档答案在相似问题识别任务中的作用,并提出了答案的两面用法,以将其用作两个问题的桥梁。
  • 提出了一种新颖的匹配匹配(
    )模型,以比较两个问题在相同答案上的匹配模式,以进行相似的问题识别。

模型

给定一个用户问题

,存档问题
,对存档问题的回答是
,
旨在学习分类模型
,以预测用户问题
和存档问题
之间的相似性得分

模型包含以下组件:
  • 基于表示的相似度模块:根据两个问题的表示在两个问题之间生成一个相似向量
  • 基于匹配模式的相似度模块:比较两个问题与已归档答案的匹配模式
  • 聚合模块:通过汇总基于表示形式和基于匹配模式的模块来产生最终的相似度得分。 整体架构如图3所示,我们将按以下方式详细描述模型

889615f41d914d78a83038d908708cd1.png
Match2架构

3cbf7b0c85a990ac20050aa0a56e3ba8.png

基于表示的相似度模块

基于表示的相似度模块一般以这两个问题作为输入,预测一个相似度向量,与前面的问题匹配方法相似。由于BERT算法在许多自然语言理解任务中具有优越性,因此在本文中采用该算法来度量问题的相似性。

d9b01199ac3c005d7ba92d7da2810f96.png

其中,

表示合并后的特征对应于[CLS],
表示整个输入序列的序列特征,我们采用
作为基于表征的相似度向量
,其中H为Bert的隐藏大小。

基于匹配模式的相似度模块

基于匹配模式的相似度模块负责比较两个问题在相同答案上的匹配模式。如图3右侧所示,此模块具有Siamese网络结构,其中包括三个依赖层:

  • 匹配模式层:以两个问题-答案对作为输入并分别学习它们的匹配模式
  • 模式相似度层:通过对比两个匹配模式来建立模式相似度张量
  • 压缩层:通过压缩匹配的相似度张量来产生问题之间的相似度向量

匹配模式层

再次采用Bert来计算同一答案上两个问题的匹配范围。 与公式1中的

不同,我们在这里使用序列特征
并将其分为两部分分别代表问题和答案。通过连接来自每个Transformer层的问题序列特征来表示具有m个令牌序列的用户问题

ab4e53000a2d231a0f61658678971850.png

式中,L为Bert中Transformer层数,

2d86cebb8bf7fa8569e0ae15f2de0c19.png

9bad6890b4c330ba2d5d826a7924d88c.png

模式相似度层

给定两个匹配模式

,计算模式匹配相似张量
,

6e9b9804d021b8fd89d10b1d5e7b9d3a.png

其中S表示张量方向相似度函数,

表示分层匹配的模式,定义为

37803cf2f897a1f58e9754bda86aba73.png

按元素计算的匹配相似性标量

由下式计算

e4c78377d413c71fbed00859710f72d4.png

相似度计算函数:

  • 点积:

a2eceae63f4b8be3cb8cee86010db97b.png
  • 余弦:

1dad0cf8c9e3bba75cb2e2b5e9af7f45.png
  • L1:

d329bf80433ca4b8ee157291c61de141.png
  • L2:

f838803b4f8d2df70ac79da4cdb28065.png
  • Jesene-Shannon散度:

dca93fb1c3ab0af6127966a433d9870d.png

压缩层

压缩层旨在通过将图案相似度张量

压缩为低维矢量来产生基于匹配的基于图案的相似度矢量。 我们首先使用带有H过滤器的两层BN-ReLU-Conv [19]结构来引入上下文信息,然后采用平均全局池化方法[28]获得最终的基于匹配的基于平台的相似度 向量

聚合模块

来自前两个模块的相似度向量被组合起来以计算该模块中的问题相似度分数

。 给定
,引入了GRU启发的门机制,以前者为主,后者为互补,得出最终的问题相似性向量
。 计算如下:

be48f62d33d217486fe5c840dd58d4ee.png

⊗是按元素相乘,σ表示sigmoid 函数,

都是可训练参数。

基于问题的相似度向量

,然后应用多层感知器(MLP)获得问题相似度评分

29d289aac5aecdea1ff0cc9d72267a7d.png

其中

为可训练参数。

模型训练和推理

在训练阶段,采用交叉熵损失以端到端的方式学习Match2模型。 为了充分训练模型,我们采用了多任务学习策略将问题与问题的匹配任务与问题与问题的匹配任务相结合。问题与问题的匹配任务旨在以两个问题之间的相似性为主要测量对象 答案匹配是一项辅助任务,旨在评估答案是否可以满足基于匹配模式的相似性模块中的问题。然而,由于缺少问答匹配标签,我们应该为辅助任务建立基础,(1)对于每个存档问题,我们将相应的存档答案视为相关答案; (2)对于每个用户问题,我们将与其相似问题相对应的答案视为相关答案,因此,我们再次计算了具有交叉熵损失的问题答案匹配损失

,总损失为 定义为三个损失的加权总和

91af4b5b2b7388b83a2c871bc292d99c.png

其中r∈[0,1]是主要任务丢失率,为了克服稀疏不相关答案的问题,对于每个问题,我们从其top-K中随机抽取不相关答案通过BM25[34]方法从整个答案集合中检索到5个候选答案。请注意,如果答案与用户问题和归档问题都不相关,则在训练该实例时将r设置为0,因为在这种情况下答案不能成为桥梁。

在推理阶段,给定用户问题

,已归档问题
和实际已归档答案
,我们将预测
与阈值0.5进行比较,以确定问题是否相似。

实验

295de1a934d3908acb770dd1d617e102.png

1cf44e8fe54e07c7938a44b8c407d4cc.png

253905f0ba73314dd416864e7c017629.png

793f1e8079d1449cda0ede0cc84fa39b.png

db210ae5f8a22e32c0c3880e98c4563b.png

结论

本文的创新点在于针对Q-Q匹配引入Q-A匹配来辅助判断,并巧妙的设计了聚合模块,但是在推理阶段是令人担忧的。

参考文献

1、Match2 : A Matching over Matching Model for Similar question Identification

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值