分享

Adapter: 高效NLP迁移学习

 520jefferson 2021-05-19

今天轻松一点,看个简单高效的trick。也是咱们在昨天的DCCL: 推荐系统的端+云联动学习挖的坑。

目前,NLP中主流的方式是预训练+微调,当然,有大宗师级别的资源强者可以玩GPT-3这样子的大模型号称可以摆脱微调,但毕竟王谢堂前燕,难入寻常百姓家。大模型难以实用。

Overall

NLP的迁移学习有两种,第一种是feature-based的transfer,主要代表是word2vec,即将训练好的embedding复用到其他模型中。第二种则是微调,即将预训练的整个模型都搬运过来,然后在具体的下游目标上进行调整,主要代表就是Bert。

Bert以及相关的类似模型在微调的时候比较耗时间,如果只微调较少的参数,导致效果不好。微调较多的参数,又会耗时。所以如果在资源较少的设备上,大模型的微调形同虚设。

Adapter

Adapter提供了一个非常高效的技巧,那就是在微调的时候,不改变已有的参数,而是新加一些参数,调整这部分参数从而达到微调的效果。

怎么样新加参数呢?如下图所示,左图是正常的Transformer的block,可以看到,在Multi-head attention和2层FFN层后都加了一个adapter。而adapter的结构如右图所示。

Image

adapter结构中,有这样几个特点:

  • 残差连接,这样,在刚开始的时候,用较小的参数初始化这个adapter,使得它的输出接近identity输出,可以保证在刚开始的时候模型依旧表现很好。这点其实跟ResNet加深层次的思路一样。
  • down-project & up-project,这个是为了减少adapter的参数量。

实验结果

如下图所示,可以看到,用了adapter后,可以在调整小部分参数的时候,就能达到较好的效果。

Image

参考文献

  • [1]. Houlsby, N., Giurgiu, A., Jastrzebski, S., Morrone, B., De Laroussilhe, Q., Gesmundo, A., ... & Gelly, S. (2019, May). Parameter-efficient transfer learning for NLP. In International Conference on Machine Learning (pp. 2790-2799). PMLR.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多