【NLP】Sentence-T5|谷歌提出文本表示新SOTA

卷友们好,我是rumor。

又出新SOTA了。

每个新SOTA,都意味着下一位要卷得更辛苦、调得更猛烈一些。

而这个SOTA还出在我一直关注的文本表示赛道。

这次谷歌用了T5,把STS的平均分从82.52提到了83.34

题目:Sentence-T5: Scalable Sentence Encoders from Pre-trained Text-to-Text Models
地址:https://arxiv.org/abs/2108.08877

模型结构

乍一看题目还是蛮期待的,用T5做文本表示,会不会玩出什么花来?不过读了之后有些略微调低期望,这篇文章提出了三种从T5拿文本表示的方法:

  1. 直接拿encoder输出的第一个token表示,类似CLS,但由于T5在训练时就没有CLS,实验下来效果不好就去掉了

  2. 直接拿encoder输出的mean pooling,实验下来发现这个最好,不精调的时候也比BERT的好很多,作者分析是T5更多的训练数据+预训练时加了下游任务

  3. 拿decoder的第一个输出,直接用不太好,但精调后还可以,作者分析是这个相当于加了attention pooling

有监督Loss

精调时采用了双塔结构,比以往不同的是多加了一层投影和L2-Norm。

在精调时参考了对比学习的NT-Xent loss,但输入的都是有监督数据(不用对比学习的数据增强了,直接输入有标注的正负样本)。

同时提出了tow-stage的精调:先用网上挖掘的20亿弱监督QA对精调,再用NLI精调(entailment=1,contradict=0)。

实验结果

除了在STS上对比之外,还在SentEval上进行了实验(给表示加一个分类器,测试embedding迁移到下游任务的效果):

最终加了其他数据的Sentence-T5以不到1个点的微弱优势登上SOTA。

同时作者验证了尺寸越大效果越好:

总结

看得出来我这篇文章写得不是很快乐,主要是感觉新意比较有限,懒穷的我可能也不会去挖20亿的数据,也没有卡去跑更大的模型。

不过!还是有几点启发可以分享一下:

  1. 作者加了Proj&Norm层但是没有做消融实验,这个对效果究竟有多少影响呢?

  2. 作者在对比loss上的temperature=100,之前无监督对比学习的T都很小,这是为什么呢?

  3. 最近一直在想prompt learning怎么用来做文本表示,而T5天生就契合prompt,既然作者证实了decoder精调后是可以用的,那是不是。。。


往期精彩回顾



适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑黄海广老师《机器学习课程》课件合集
本站qq群851320808,加入微信群请扫码:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值