萧箫 发自 凹非寺
量子位 | 公众号 QbitAI
新晋斯隆奖得主如何庆祝?
公开最新研究成果算不算?
就在斯隆奖宣布当天,陈丹琦团队展示了最新的研究成果。
团队发现,经典NLP模型BERT提出的预训练“15%掩蔽率”法则,是可以被打破的!
“15%掩蔽率”,指在一项预训练任务中,随机遮住15%的单词,并通过训练让AI学会预测遮住的单词。
陈丹琦团队认为,如果将掩蔽率提升到40%,性能甚至比15%的时候还要更好:
不仅如此,这篇文章还提出了一种新的方法,来更好地提升40%掩蔽率下NLP模型训练的效果。
一位抱抱脸(Hugging Face)工程师对此表示:
关于BERT有个很有意思的事情,它虽然是一项开创性的研究,然而它的那些训练方式都是错误或不必要的。
这篇论文的共同一作高天宇,也是清华特奖获得者,本科期间曾发表过四篇顶会论文。
那么,论文究竟是怎么得出这一结论的呢?
“大模型更适合高掩蔽率”
陈丹琦团队先是从掩蔽率、迭代次数和模型大小三个方向,验证了这一结论。
他们先是用了一系列不同的掩蔽率来训练NLP模型,参数如下:
结果发现,除了小部分数据集以外,模型在包括MNLI、QNLI、QQP、STS-B、SQuAD等数据集上的训练效果,40%掩蔽率都比15%都要更好。
为了进一步迭代次数 (training step)受掩蔽率的影响效果,作者们同样记录了不同迭代率下模型的效果。
结果显示,随着迭代次数的增加,40%掩蔽率基本都表现出了比15%更好的性能:
不仅如此,作者们还发现,更大的模型,更适合用40%掩蔽率去训练。
结果显示,大模型在40%掩蔽率的情况下,性能比中等NLP模型要更好:
这么看来,只将掩蔽率设置为15%,确实没有40%的训练效果更好,而且,更大的NLP模型还更适合用40%的掩蔽率来训练。
团队猜测,任务难一些能促使模型学到更多特征,而大模型正是有这种余裕。
为了探究其中的原理,作者们又提出了一个新的评估方法。
将掩蔽率拆分为2个指标
具体来说,就是将掩蔽率拆分为破坏率 (corruption rate)和预测率 (prediction rate)2个指标。
其中,破坏率是句子被破坏的比例,预测率是模型预测的比例。
例如,“我喜欢打篮球”语料可能被破坏成“我[MASK][MASK][MASK]”提供给模型,但模型却只需要预测第一个[MASK]是不是“喜欢”。
这样一来,就可以用破坏率来控制预训练任务的难度,用预测率来控制模型的优化效果。
论文进一步针对破坏率(mcorr)和预测率(mpred)进行了研究,发现了一个新规律:
预测率高,模型效果更好;但破坏率更高,模型效果更差:
这样就能用更精准的方式来评估各种预训练任务了。
最后,作者们在这种指标下,测试了多种掩码,观察在更高掩蔽率的情况下,哪些掩码的效果更好。
结果显示,随着掩蔽率的提升,随机均匀掩码的效果(Uniform)的表现还会比Span Masking、相关区间原则性掩码(PMI-Masking)更好。
然而,在之前的很多NLP模型中,基本都直接采用了PMI-Masking或是Span Masking等更复杂的掩码来训练。
这也说明,NLP大模型的预训练效果不能一概而论,光是训练方法就值得进一步研究。
作者介绍
论文的几名作者均来自陈丹琦团队。
一作高天宇,目前是普林斯顿大学的二年级博士生,本科毕业于清华大学,曾经获得清华本科特等奖学金。
本科时,高天宇就在刘知远教授团队中搞科研了,期间一共发表了4篇顶会论文(两篇AAAI,两篇EMNLP)。
共同一作Alexander Wettig,普林斯顿大学一年级博士生,本硕毕业于剑桥大学,对NLP的泛化能力方向感兴趣。
钟泽轩(Zexuan Zhong),普林斯顿大学博士生,硕士毕业于伊利诺伊大学香槟分校,导师是谢涛;本科毕业于北京大学计算机系,曾在微软亚研院实习,导师是聂再清。
通过这一发现,不少NLP大模型说不定又能通过改进训练方法,取得更好的效果了。
论文地址:
https://gaotianyu.xyz/content/files/2022/02/should_you_mask_15-1.pdf
参考链接:
[1]https://twitter.com/gaotianyu1350/status/1493919318668713986
[2]https://www.cs.princeton.edu/~awettig/
[3]https://www.cs.princeton.edu/~zzhong/
[4]https://gaotianyu.xyz/about/