卷友们好,我是rumor。

写这篇文章的时候,我的心情很复杂。

简单的来说,有一个好消息和坏消息。

好消息是我们ConSERT模型今年2月投稿的ACL中了,用对比学习做文本表示,刷过了BERT-flow,直接提了2-5个点。

坏消息是我们一直没挂出来,想憋大招等5月份ACL正式通知下来一起宣传,没想到陈丹琦组在4月份推出了SimCSE,比我们高个1-2点。

更坏的消息是,我虽然很早就看到了SimCSE的论文,但只瞟了眼第一页的结果,心中默认他们放的是large模型表现(比我们低)。所以在准备ConSERT宣传工作之前我一直沉浸在某种自我陶醉的状态,跟一些知道的小伙伴也都夸下了海口,说「我们还是SOTA,稳」。

直到ACL正式结果下来,领导说咱们开始PR吧,我们才发现人家SimCSE放的是base模型结果。

那种感觉,就像跑N*400米,我以为自己跑在第一个,实际上已经被套圈了。

Anyway,跑都跑了,还是分享一些我们在工作中发现的有意思的点以及思考。

题目:ConSERT: A Contrastive Framework for Self-Supervised Sentence Representation Transfer
地址:https://arxiv.org/abs/2105.11741
代码:https://github.com/yym6472/ConSERT

NLP+对比学习

P.S. 对比学习的背景就不过多介绍了,不了解的同学可以参考这篇文章。

到底在解决什么问题

ConSERT、SimCSE等方法,在应用了对比学习之后,都比之前的方法有了很大提升。这是因为BERT的表示本身存在塌缩的问题。

之前BERT-flow的论文就有提到过,通过对BERT词表示的观察,会发现整体呈锥形分布:高频词聚集在锥头部,低频词分散在锥尾。又由于高频词本身是高频的,因此会dominate句子表示,让整体的相似度都很高,如下图a所示:

如果我们去掉句子中的高频词,效果就会好一些,如下图蓝色的线:

再来看对比学习,它是通过拉近相同样本的距离、拉远不同样本的距离,来刻画样本本身的表示,正好可以解决BERT表示的塌缩问题。经过对比学习增量训练后,我们也可以观察出整体的句子表示确实更均匀了些(上图b、橙色线)。

数据增强方法很重要

在最初做对比学习时,我们的思路局限在有监督对抗扰动和BERT输出后的表示对比上(比如mean、max池化后的对比),但提升一直有限。直到渊蒙发现即使不使用任何方法,直接拉近相同表示、拉远不同表示也会有不错的提升后,我们的重点才又放到了句子前期的扰动上。

参考其他NLP论文的数据增强后,我们在Embedding层使用了:

  • shuffle:更换position id的顺序

  • token cutoff:在某个token维度把embedding置为0

  • feature cutoff:在embedding矩阵中,有768个维度,把某个维度的feature置为0

  • dropout:顺着cutoff,我们又想到了dropout

再看SimCSE的思路还是很巧妙的,我们只局限在了Embedding layer和Pool layer的扰动上,意识到扰动越提前,越会被网络放大,而没意识到在Transformer的每一层都可以增加扰动,把diff更加放大,提升任务难度。

有意思的是两篇论文得出的结论是不一样的,我们对比后发现Feature cutoff+Shuffle的效果最好(当然我们的dropout其实弱一些):

再把SimCSE的思路拿过来,如果在transformer每一层都做shuffle或者cutoff,说不定也能有些提升。

另外我们也尝试了SimCLR那样增加一层MLP、或者用SimSiam,但基本都没效果。估计是因为BERT的学习能力已经很强了,不需要其他变化来辅助。

所以总结下来,数据增强方法在NLP对比学习上是关键的一环,变化太大会影响语义,太小则没效果,需要适当把握度,在每一层微微加些扰动。

调参也重要

实验过程中,我们发现temperature超参数对于效果的影响非常大:

再看对比学习的公式:

我们猜想是,当 过小时,样本之间的分数diff就会增大,降低模型学习难度,但过大时,因为BERT本身已经存在塌缩现象(句子向量分数都非常接近),就会让任务变得太难,模型不一定能学会。

另外learning rate的影响也不小,最近在仔细看了SimCSE的设置后,不甘的我们又悄咪咪做了些实验,调参小能手渊蒙强势上线:

虽然真正落地时大家会更关注数据的影响,但在给定数据集、数据量不大的情况下,调参还是会带来几个点的波动。但局限在调参取胜还是不可取的,真正的好方法应该兼具鲁棒性

遗留问题

整个工作下来,我们对于对比学习的探索还是很多的,但实际还有一个问题,估计只有真正做过对比学习的人才注意到了,那就是停止策略

对比学习虽然可以拉远样本表示,解决它们塌缩到一起的问题,但拉远到什么程度是个头呢?

实验中我们发现,如果放任它一直训练下去,效果就会极速下降,造成「反向塌缩」。

所以只能使用STS-B作为dev集,频繁地进行评估,保留最优step,SimCSE也是同样的做法。但这种做法也不能算是「真正的无监督」,像BERT那样可以在大语料上一直预训练。

关于停止策略我们也找了一些方法,并和其它做对比学习的同学讨论,总体的思路是在对比学习(最大化互信息)的同时最小化与任务无关的互信息,但方法比较复杂,由于时间原因没有再继续深入,感兴趣的同学可以参考以下文章:

NIPS2020: What Makes for Good Views for Contrastive Learning?
ICLR2021: Self-Supervised Learning From a Multi-View Perspective
ICLR2021: FAIRFIL: Contrastive Neural Debiasing Method For Pretrained Text Encoders

这个方向还是有价值深挖一下的,因为目前我们只停留在了dev集最优结果上,如果能找到减缓反向塌缩的方法,继续训练,说不定能找到更优的结果。

论文Novelty?

在最终写作论文的过程中,我们最担心的问题是ConSERT的方法会不会被质疑是A+B,自己的novelty不够,确实审稿人也提出了这点。

关于这点相信大家做研究也会碰到,每个人都有不同的想法。个人认为方法的拼凑、简单不要紧,重要的还是效果。像之前的SBERT其实也只是把BERT拿来放到经典的框架里实现了一把,但由于方法简单、开源库方便而产生了很大的影响力。虽然一些文章也会被称为「灌水」(见下图),但大部分作者还是在用心钻研其他方法对自己领域的作用,并提供一些经验作为后人的参考。

所以有价值的研究不一定要多fancy,能真正对落地效果有提升就可以。甚至方法越简单越好,简单到极致就是优雅

总结

最后,还有一个take away,就是追热点的研究一定请快!狠!准!

早点放到arixv上占坑。前段时间批量的MLP模型出世估计也是大佬们忍不住了,齐刷刷出来占坑。

最最后,文本表示是我们认为很有价值并且长期关注的方向,欢迎志同道合的同学加我微信「leerumorrr」投递简历!来一起做出新的SOTA!等你!


大家好我是rumor

一个热爱技术,有一点点幽默的妹子

欢迎关注我

带你学习带你肝

一起在人工智能时代旋转跳跃眨巴眼

「安慰+1」

Paper和陈丹琦撞车是一种怎样的体验相关推荐

  1. 清华姚班校友陈丹琦斩获2022斯隆奖!「诺奖风向标」27位华人学者入选

      视学算法报道   编辑:桃子 拉燕 [新智元导读]刚刚,有「诺奖风向标」之称的斯隆研究奖公布了最新获奖名单.今年,共有118名学者当选.值得一提的是,清华姚班毕业的华人科学家陈丹琦位列其中. 刚刚 ...

  2. 伯克利摘得最佳论文,陈丹琦、杨笛一等华人团队获杰出论文,ACL2022奖项公布...

    视学算法报道 编辑:陈萍.杜伟 刚刚,NLP 领域国际顶会 ACL2022 公布获奖论文信息,其中加州大学伯克利分校的增量句法表示研究被评为最佳论文.此外,最佳主题论文.杰出论文也揭晓. ACL 是计 ...

  3. 【清华访谈】|陈丹琦:穿越多元文化,做独具特色的科研

    源|清华<从茶园走向世界>校友访谈 她说,要穿越多元文化,做独具特色的科研."她在发现重要的研究问题上很有品位.她已经对该领域产生了非凡的影响,并且她的影响只会越来越大.&quo ...

  4. 骆驼QA:基于陈丹琦CoQA数据集的中文阅读理解模型,可给定知识文本进行问答...

    前言:骆驼(Luotuo)项目是由冷子昂@商汤科技,陈启源@华中师范大学以及李鲁鲁@商汤科技发起的中文大语言模型开源项目,包含了一系列语言模型,感兴趣的可以去github上了解下,非常棒. 进NLP群 ...

  5. 清华姚班陈丹琦获斯隆奖!与去年得主马腾宇是同班同学,博士毕业论文是近十年最热之一...

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 杨净 丰色 发自 凹非寺 量子位 | 公众号 QbitAI 清华姚班大神陈丹琦,刚刚有 ...

  6. 清华姚校友陈丹琦斩获2022斯隆奖!博士论文是近十年最热之一!共计27位华人入选...

    来源:新智元 有「诺奖风向标」之称的斯隆研究奖公布了最新获奖名单. 今年,共有118名学者获斯隆研究奖,华人学者占27席.他们将获得75000美元,这笔款项可在两年的时间内用于支持其研究的任何费用. ...

  7. 斯坦福大学陈丹琦等人解读机器阅读最新进展:超越局部模式匹配

    来源:AI 科技评论 不久前,斯坦福大学的计算机科学博士陈丹琦的一篇长达 156 页的毕业论文<Neural Reading Comprehension and Beyond>成为「爆款文 ...

  8. 清华姚班陈丹琦等27位华人学者获奖,斯隆奖2022年获奖名单颁布!

    整理 | 于轩 出品 | 程序人生 (ID:coder _life) 近日,素有"诺奖风向标"之称的斯隆研究奖颁布了2022年获奖名单.斯隆研究奖于1955年设立,每年颁发一次,旨 ...

  9. 陈丹琦带着清华特奖学弟发布新成果:打破谷歌BERT提出的训练规律!这个庆祝方式太学神了吧...

    萧箫 发自 凹非寺 量子位 | 公众号 QbitAI 新晋斯隆奖得主如何庆祝? 公开最新研究成果算不算? 就在斯隆奖宣布当天,陈丹琦团队展示了最新的研究成果. 团队发现,经典NLP模型BERT提出的预 ...

  10. ACL 2020今日放榜,779篇论文被接收,姚班校友陈丹琦首日演讲

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI ACL 2020,今天终于放榜啦! 今年的ACL总共有3088篇投稿,大会接收了779篇论文,其中长论文571篇.短论文208篇,接受率2 ...

最新文章

  1. pandas使用groupby函数计算dataframe每个分组对应的数据行的个数(size of each group in dataframe, rows count of group)
  2. Java上机操作练习题-助力期末
  3. mysql-表完成性约束
  4. Ubuntu14.04下使用apt-get命令傻瓜式安装ffmepg成功
  5. Intel初始化和模式切换示例
  6. 百度遭处罚;科大讯飞回应裁员;苹果推万元中国红手机 | 极客头条
  7. Visio流程图配色
  8. 雅思阅读真经总纲_雅思阅读用哪本书?五大热门雅思阅读书籍全面点评
  9. host文件的工作原理及应用
  10. ES6-rest参数
  11. 利用Python+xarray+cartopy+matplotlib 实现遥感地形图制图绘制 —— xarray 学习文档01
  12. 从微信跳转第三方app:在微信打开h5页面后,点击触发跳转自己app指定页面
  13. 02、Verilog例化说明
  14. arduiono电子音乐代码_用ARM实现音乐电子相册
  15. 自动生成带昵称的头像(仿照钉钉头像)
  16. QtQuick串口编程Demo
  17. 计算机技术与软件专业技术资格有哪些?
  18. 未来智能汽车数字化转型之路必不可少强大的高级排产软件
  19. 埋点tracker:前端数据埋点-方案设计思路梳理
  20. Vue + Spring Boot 项目实战(七):导航栏与图书页面设计

热门文章

  1. 2020苏州大学计算机考研经验总结博
  2. 微信点餐小程序怎么做(微信点餐小程序制作方法)
  3. Bitvise SSH Client连接Linux服务器教程和使用
  4. 基于matlab的gmsk,基于MATLAB的GMSK仿真分析-移动通信系统三级项目报告
  5. 形式语言与自动机_第二章_语言及文法
  6. 火狐浏览器不能看网页视频了的解决方法
  7. html视频文件哪种格式好,常见的视频格式有哪些?
  8. VMware ESXi 安装教程
  9. 【二级等保】二级等保需要做日志审计吗?
  10. python pdb模块_Biopython PDB模块