句子表征|Poly-Encoders

目录

一、论文背景

二、模型架构

三、实验结果


论文:Poly-Encoders: Architectures And Pre-Training Strategies For Fast And Accurate Multi-Sentence Scoring

一、论文背景

        计算两个句子相似度有两种技术架构:Bi-Encoder(俗称双塔)和Cross-encoder,这两个的区别在于交互的时机,Bi-Encoder构架input_text和candidate分别训练,直到最后预测分数的时候才交互,而Cross-encoder将input_text分别和candidate拼接送入模型或者训练中多次产生交互。从上面的描述可以看到,两架构各有利弊:Bi-Encoder由于交互少,训练和预测会更快些,对线上工程来说,并发和响应时耗是有要求的,Cross-Encoder由于交互训练,模型可以学到更多特征,预测准确度上要优于Bi-Encoder,劣势就是更耗时。那么有没有一种方案够兼顾质量和速度:Poly-Encoder,本文模型提出的初衷正为此。

二、模型架构

        Poly-Encoder, 论文是这么定义的:具有额外学习注意力机制的架构,代表更多全局特征,从中执行自注意力。

         见图知义,Poly-encoder是在Bi-encoder上加入一些调料,主要包括:

                1、query经过Encoder后并不生成单一的向量,出发点是query通常比较长,单一的向量无法完成涵盖全部语义信息,于是采用attention机制生成m个向量,多侧面去刻画query;

                2、生成最后query_emb的方式是通过1中的m个向量与candidate_emb做attention,可见,Poly-encoder与candidate进行了两次交互。

三、实验结果

        

  预测准确度上,Poly-encoder的效果是介于Bi-encoder和Cross-encoder之间,但相对于Bi-encoder,在有些数据集上出现较大辐度提升,如ConvAI2和Ubuntu v2。

        从耗时上优势就比较明显了,与Cross-encoder准确度相当的条件下,预测效率相差3个量级 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值