MLM 区别探索:掩码语言模型 和因果语言模型 (CLM)的区别

大多数现代 NLP 系统都遵循相当标准的方法来为各种用例训练新模型,即首先预训练,然后微调 。这里,预训练的目标是利用大量未标记的文本并构建语言理解的通用模型,然后针对各种特定的 NLP 任务(例如机器翻译、文本摘要等)进行微调 。
在本博客中,我们将讨论两种流行的预训练方案,即掩码语言建模(MLM)和因果语言建模(CLM) 。
【MLM区别探索:掩码语言模型和因果语言模型 (CLM)的区别】没有时间阅读整个博客?然后观看这段
掩码语言模型解释
在屏蔽语言模型下,我们通常屏蔽给定句子中一定比例的单词,并且模型预计会根据该句子中的其他单词来预测这些屏蔽单词 。这样的训练方案使得该模型本质上是双向的,因为掩码词的表示是根据左侧和右侧出现的单词来学习的 。您还可以将其想象为填空式的问题陈述 。
下图显示了同样的情况——
掩码语言模型|作者提供的图片
下图 。显示带有损失计算步骤的更详细视图 —
带有损失的屏蔽语言模型 |作者提供的图片
在这里,屏蔽词的表示可以是基于注意力的,就像BERT及其变体一样,或者你也可以在没有注意力的情况下设计它 。基于Alpha(注意力权重)的分布,您可以权衡每个其他输入单词的表示,以学习屏蔽单词的表示,例如 - Alpha=1 会给周围的单词赋予相同的权重(意味着每个单词都会持有MASK 表示中的同等贡献) 。
因果语言模型解释
因果语言模型 。因果语言模型(model),是跟掩码语言模型相对的语言模型,跟机制中的很相似,因果语言模型采用了对角掩蔽矩阵,使得每个token只能看到在它之前的token信息,而看不到在它之后的token,模型的训练目标是根据在这之前的token来预测下一个位置的token 。通常是根据概率分布来计算词之间组合的出现概率,因果语言模型根据所有之前的token信息来预测当前时刻token,所以可以很直接地应用到文本生成任务中 。可以理解为-的模型结果使用了完整的结构,但是因果语言模型则只用到的结构(同时去掉中间的- ,因为没有的结构) 。
虽然因果语言模型结构简单而且对于文本生成来说直截了当,但是它本身还是带有一些结构或者算法上的限制 。首先因果语言模型都是从左往右对token依次进行编码,忽略了相应的双向信息 。其次,因果语言模型不适合处理部分端到端的任务,在包括摘要和翻译等任务中不能取得令人满意的结果 。
在因果语言模型下,这里的想法再次是预测给定句子中的屏蔽标记,但与 MLM 不同,该模型允许只考虑出现在其左侧的单词来执行相同的操作(理想情况下,这可以是左侧或右侧)正好,思路就是让它单向) 。这样的训练方案使得这个模型本质上是单向的 。
如下图所示,模型预计会根据出现在句子左侧的单词来预测句子中存在的掩码标记 。根据模型对实际标签的预测,我们计算交叉熵损失并将其反向传播以训练模型参数 。
因果语言模型 |作者提供的图片
下图 。显示带有损失计算步骤的更详细视图 —
带有损失的因果语言模型 |作者提供的图片
在这里,屏蔽词的表示可以是基于注意力的,就像GPT和变体一样,或者你也可以在没有它的情况下设计它,就像我们在 LSTM 时代那样 。根据Alpha的分布(见图),您可以权衡每个其他输入单词的表示,以学习屏蔽单词的表示,例如 - Alpha=1 会给周围的单词赋予相同的权重(这意味着每个单词都将具有相同的权重)对学习到的 MASK 表示的贡献) 。
这些系统也称为仅解码器模型,因为在机器翻译、文本摘要等典型的编码器-解码器架构中,解码器(文本生成器)的工作原理类似 。