基于ALBERT和GLUE的自然语言处理模型优化与微调
在自然语言处理领域,为了创建能更好适应更大词汇量和更长最大输入长度的基于Transformer的语言模型,有两种关键策略:嵌入因子分解和跨层参数共享。这两种策略是ALBERT方法的基石,下面我们将详细探讨这两种策略及其应用。
嵌入因子分解和跨层参数共享
- 嵌入因子分解 :在BERT等早期模型中,输入嵌入的大小与隐藏层的维度紧密相关。分词器为每个标记创建一个单热编码向量,其维度等于词汇表的大小V。输入嵌入可以看作是一个V×E的矩阵,将单热编码向量投影到大小为E的维度。在早期模型中,E等于隐藏层维度H,这意味着当隐藏层大小增加时,输入嵌入的维度也必须增加,效率较低。而ALBERT的作者观察到,输入嵌入的作用是学习与上下文无关的表示,而隐藏层的作用是学习与上下文相关的表示。因此,他们提出将单输入嵌入矩阵拆分为两个矩阵:一个是V×E的矩阵,另一个是E×H的矩阵,使H和E完全独立。这样,即使隐藏层维度很大或需要扩展,输入嵌入的大小也可以显著减小,仅这一设计决策就使将单热嵌入向量投影到隐藏层的矩阵大小减少了80%。
- 跨层参数共享 :该策略与多任务学习中的软参数共享场景相关。在学习过程中,通过对各层的相应权重施加适当的约束,鼓励它们彼此相似。这起到了正则化的作用,通过减少可用自由度的数量来降低过拟合的风险。结合这两种技术,研究人员构建了预训练语言模型,在2020年2月时,这些模型在GLUE和SQuAD的记录性能上都超过了之前的模型。与BERT相比,参数大小减少了约90%,而性能仅略有下降(在SQuAD上下降不到1%)。
超级会员免费看
订阅专栏 解锁全文
28

被折叠的 条评论
为什么被折叠?



