论文题目:Optimal Subarchitecture Extraction For BERT
论文地址:https://arxiv.org/abs/2010.10499
源码地址:https://github.com/alexa/bort
Bort: 亚马逊最新4层小模型,效果超越BERT-large - 知乎
训练语料
作者预训练Bort的预料是原始BERT的十倍。同时BERT-of-Theseus、TinyBERT也是在分别基于原始BERT或者用Wiki语料训练的。
最优子结构的选取
输入:模型结构,数据,参数,子结构搜索空间(层数/注意力头数/隐藏维度/Intermediate层维度),模型超参,最大训练步数s,loss,最优模型
输出:最优结果,包括参数、层数/注意力头数/隐藏维度/Intermediate层维度
流程:
1. 计算最优模型的参数量、推理时间
2. 根据最优模型的参数量对搜索空间中的候选排序
3. 对于每一组超参数:
4. 对于每一组子结构:
5. 将子结构训练s步
6. 根据子结构的参数量、推理时间,计算分数W(参数量越小、推理时间越小、和最优模型T最后一层的交叉熵越小则分数越高)
7. 选取分数W最高的作为最优子结构
预训练
得到了最优子结构后,作者用小模型对Roberta-large进行蒸馏,并得到了两个结论: