博雯 发自 凹非寺
量子位 | 公众号 QbitAI

近几年,随着业内“大力出奇迹”的趋势,Transformer的模型参数量也是水涨船高。

不过,当参数从数百万增加至数十亿,甚至数万亿,性能实现相应提升时,Transformer的深度也受到了训练不稳定的限制。

至少,还没有优化方法能在Transformer扩展至上千层的同时,还保证其稳定性。

但现在,微软研究院一篇论文出手,直接将Transformer提升到了1000层

所采用的方法,甚至只需要修改几行代码就能完成。

LSTM之父, 获得IEEE CIS 2021年神经网络先驱奖的Sepp Hochreiter也转发了这项研究:

接下来,我们就来一起看看这一方法到底是如何做到的。

几行代码提升至1000层

要解决不稳定优化的问题,首先要知道其原因。

论文认为,这种不稳定性源于训练开始时“爆炸式”的模型更新

这会使模型陷入一种局部最优状态,增加每个LN(Layer Normalization)的输入量,通过LN的梯度会随着训练变得越来越小,从而导致梯度消失,使模型难以摆脱一开始的局部最优状态。

最终破坏了优化的稳定性。

因此,基于这一问题,开发者残差连接处引入了一个新的归一化函数,DeepNorm

DeepNorm伪代码

DeepNorm在执行层归一化之前up-scale了残差连接,在不同架构下具有不同的参数:

这一函数将Post-LN的良好性能和Pre-LN的稳定训练高效结合了起来,最终将Transformer扩展到2500个注意力和前馈网络子层(即1000层)比以前的模型深度高出一个数量级。

将DeepNorm方法应用到Transformer的每一个子层中,就得到了一个全新的DeepNet模型。

事实证明,相较于已有的优化方法Post-LN,DeepNet的模型更新几乎保持恒定:

基于IWSLT-14 De-En翻译数据集的训练

除此之外,开发者也将DeepNet与NormFormer、ReZero、DS-init等多个Transformer模型进行比较,结果在WMT-17 En-De数据集上,DeepNet在多个深度上都效果最好:

与Facebook AI的M2M模型(120亿参数量、48层)相比,DeepNet(32亿参数量、200层)在BLEU基准上的分数提升了5%

最后,论文作者之一的董力也现身说明,整体而言,这一研究的价值就是:

1、扩展到1000层增加深度是为了探究上限

2、DeepNorm方法对浅层的Transformer也有稳定作用

作者介绍

论文两位共同一作Hongyu Wang和Shuming Ma,其中Hongyu Wang为微软研究院的一名实习生,并在此期间完成了论文。

而Shuming Ma(马树铭)本科和研究生皆毕业于北京大学,2019年加入微软亚洲研究院,现在是NLP组的一名研究员。

通讯作者为微软亚洲研究院NLP小组的首席研究员韦福如,2004年和2009年从武汉大学计算机科学系获得理学士学位和博士学位,曾任职于IBM中国研究中心。

论文:
https://arxiv.org/abs/2203.00555

Transformer深至1000层还能稳定训练,微软实习生一作,LSTM之父转发相关推荐

  1. 速度堪比Adam,准确率媲美SGD,还能稳定训练GAN:全新优化器成为NeurIPS爆款

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:机器之心 AI博士笔记系列推荐 周志华<机器学习> ...

  2. 训练1000层的Transformer究竟有什么困难?

    ©PaperWeekly 原创 · 作者 | 苏剑林 单位 | 追一科技 研究方向 | NLP.神经网络 众所周知,现在的 Transformer 越做越大,但这个"大"通常是&q ...

  3. 1000层的Transformer,诞生了!

    卖萌屋今日学术精选 大家好,我是卖萌酱. 今天下午卖萌屋作者群里一位MILA实验室的大佬在临睡前(蒙特利尔时间凌晨0点半)甩出来一篇论文: 大佬表示太困了,肝不动了,于是卖萌酱左手抄起一罐咖啡,右手接 ...

  4. 数据结构电梯模拟 100梯1000层 不限梯数

    电梯模拟 不限电梯数 不限楼层数 100梯1000层!源码见文末 电梯模拟 实验要求 设计思路 设计要求 设计实现 类和对象 模拟方法 有限状态机 电梯调度优化 综合 输出展示 源码 电梯模拟 实验要 ...

  5. element-ui dialog遮罩层在最上层,关掉dialog遮罩层还在

    代码中使用了dialog,dialog中点击某个按钮,又嵌套了一个dialog. 导致最外层的dialog出现后一直被遮罩层遮住,点击确定关掉dialog遮罩层还在. element-ui的dialo ...

  6. 最近搞了移远的mc20和ec20模块,还应用了芯讯通的7600,对字符型数据收发有了更深的认识,还熟悉了地图的常用坐标系统。

    最近搞了移远的mc20和ec20模块,还应用了芯讯通的7600,对字符型数据收发有了更深的认识,还熟悉了地图的常用坐标系统.在stm32平台下怎么做物联网的嵌入式对接很熟悉了.代码质量还可以进一步提高 ...

  7. 女生二本学护理专业和计算机专业哪个好,二本女生适合的6大“医学专业”,好就业,工作压力小,还很稳定...

    原标题:二本女生适合的6大"医学专业",好就业,工作压力小,还很稳定 为什么医学类专业争议那么大,但每年还是会有很多学生报考呢?甚至很多学生其实自己也知道医学专业不建议报考的人很多 ...

  8. 从零实现Transformer、ChatGLM-6B、本地知识库、模型(训练/推理)加速

    前言 最近一直在做类ChatGPT项目的部署 微调,关注比较多的是两个:一个LLaMA,一个ChatGLM,会发现有不少模型是基于这两个模型去做微调的,说到微调,那具体怎么微调呢,因此又详细了解了一下 ...

  9. LeCun论文被指「洗稿」? LSTM之父发文怒怼:抄我的还标原创

    编 | 好困 Joey David 源 | 新智元 LSTM之父.暴脾气大爷Jürgen Schmidhuber又开炮了?这回怼的是LeCun,说最近的新论文是炒了自己20多年前的冷饭,只不过换了种说 ...

最新文章

  1. oracle数据库应用与开发习题,《Oracle数据库应用》练习题及答案.docx
  2. Android与服务进程内通信
  3. LinkedList方法源码
  4. flink checkpoint 恢复_Flink解析 | Apache Flink结合Kafka构建端到端的ExactlyOnce处理
  5. MicroK8s及KubeFlow安装文档
  6. phpstorm 的下载、安装与激活
  7. 如何在程序中画出实际大小为7CM半径的圆
  8. 硅谷新传奇Kevin Systrom
  9. 2019年成都房产新政,有这些内容需注意
  10. php 485通讯协议 编程,485通讯协议程序怎么写(51单片机的485通信程序案例)
  11. mPaaS 月度小报|魔方卡片(Cube)公测,十个卡片模板任意使用
  12. cmd看控制台输出红桃、方块、黑桃、梅花乱码解决
  13. 02_如何计算叔块奖励
  14. egret 实战教程之跳一跳(一)
  15. Protel 2004 电路设计 鲁捷,焦振宇,孟凡文编著
  16. php 根路由器,Pux
  17. pytorch embedding层详解(从原理到实战)
  18. 麦咖啡发布“奶铁”取代拿铁,明年新开1000家店 | 美通社头条
  19. python爬虫-1.06-MaoyanSpider
  20. python在线发音-python中文读法

热门文章

  1. 全面解读WEB 2.0
  2. 数据结构与算法--绪论
  3. BackgroundSubtractorGMG 背景建模
  4. java 扫描tcp端口号_多线程TCP端口扫描 java实现
  5. 一文速览机器学习的类别(Python代码)
  6. 让浏览器开挂的插件,测评师教你如何选
  7. CSDN湘苗培优,打造高素质技术人才
  8. 针对《评人工智能如何走向新阶段》一文,继续发布国内外的跟贴留言第二部552-556条
  9. 微软发布代码智能新基准数据集CodeXGLUE,多角度衡量模型优劣
  10. 大促下的智能运维挑战:阿里如何抗住“双11猫晚”?