在看apple 最近发布的OpenELM 模型,其论文中提到 block-wise scaling 模型结构优化方法,(论文见: OpenELM: An Efficient Language Model Family with Open-source Training and Inference Framework),这里记录下DeLighT论文中的 block-wise scaling,翻译整理下以便对照代码实现,了解背景和原理。DeLighT论文中的实验任务主要是在两个标准的序列建模任务上评估了DeLighT的性能:机器翻译(machine translation)任务 encoder-decoder architecture 和 语言建模( language modeling)decoder architecture,论文中机器翻译任务未对En-Zh(英文译中文)进行实验,可以作为一个复现练习,根据源码实操一下论文中的实验;而语言建模可以作为openELM的来源延伸~ 结合cornet进行复现(也有mxl示例,mxl针对Apple Silicon 硬件进行的优化深度学习框架)。
论文主作者:Sachin Mehta
论文地址:https://arxiv.org/pdf/2008.00623
论文代码: https://github.com/sacmehta/delight (基于当时facebook的 fairseq seq2seq工具库开发)
该论文研究是在作者以前的DeFINE: DEep Factorized INput Token Embeddings for Neural Sequence Modeling 进行改进,模型结构引入更多的GLTs,来学习更宽的权重,并且减少了参数数量。
摘要
我们介绍了一种深度且轻量级的Transformer,名为DeLighT,它在参数数量显著减少的情况下,提供了与标准基于Transformer的模型相似或更好的性能。DeLighT更有效地在每个Transformer块内部(通过DeLighT变换)以及跨块(通过块级缩放)分配参数,允许输入端使用较浅较窄的DeLighT块,输出端使用较宽较深的DeLighT块。总体而言,DeLighT网络比标准Transformer模型深2.5到4倍,但参数和运算量更少。在基准机器翻译和语言建模任务上的实验表明,DeLighT在平均参数数量减少2到3倍的情况下,达到或提高了基线Transformer的性能。