在最近的一项研究中,Google 的研究人员提出了“有效学习一种对令牌替换进行准确分类的编码器”
(ELECTRA)
,这是一种
AI 语言训练技术
,在具有相同数量的计算资源的情况下,其性能优于现有方法。在发布数月后的这一周,合著者发布了
TensorFlow
的代码库
(和预训练的模型)
,为强大的模型奠定了基础,这些模型能够以最新的准确性执行语言任务。这些模型可能有一天会进入客户服务聊天机器人,或者可能被合并到为执行团队总结报告的工具中。
预训练方法通常分为两类:语言模型
(例如 OpenAI 的 GPT)
,该模型从左到右处理输入文本并根据给定的上下文预测下一个单词;以及屏蔽语言模型
(例如 Google 的 BERT 和 ALBERT 以及 Facebook 的语言模型 RoBERTa)
,它可以预测输入中被掩盖的少量单词的身份。屏蔽语言模型的优势在于,它们可以“看到”要预测的令牌
(即单词)
左右两侧的文本,但是它们的预测仅限于输入令牌的一小部分,从而减少了学习量从每个句子。
ELECTRA
的秘密秘诀是一项称为替换令牌检测的预训练任务,它可以在从所有输入位置学习的同时训练双向模型
(就像被屏蔽的语言模型一样)
,就像语言模型一样。该区分模型的任务是区分“真实”和“伪造”输入数据。
ELECTRA
通过用不正确的伪造品
(但有些合理的伪造品)
替换某些令牌来“破坏”输入,然后,它要求模型确定哪些令牌已被替换或保持不变。
替换令牌来自另一个称为生成器的 AI 模型。生成器可以是在令牌上产生输出分布的任何模型,但是 Google 研究人员使用了与鉴别器一起训练的小型屏蔽语言模型。生成器和鉴别器共享相同的输入词嵌入。在预训练阶段之后,将生成器放下,并在各种下游任务上微调鉴别器
(ELECTRA 模型)
。
该团队报告说,在实验中,
ELECTRA
比以前的方法“有了实质性的改进”,使用不到
25% 的计算量,其性能与
RoBERTa
和
XLNet
相当。在 4 天的时间里,在单个图形卡
(计算的 1/30)
上训练了一个小的
ELECTRA
模型之后,研究人员设法超越了
GPT
。借助使用大量计算进行训练的大型
ELECTRA
模型,他们在
SQuAD 2.0
问答数据集和
GLUE
语言理解任务排行榜上获得了最先进的性能。
(ELECTRA 在 GLUE 上没有击败 Google 自己的 T5-11b,但研究表明它的大小是其的 1/30,并使用 10% 的计算进行训练。)
当使用少于 1/4 的计算量时,
ELECTRA
可以在
GLUE
自然语言理解基准上与
RoBERTa
和
XLNet
的性能相匹配,并在
SQuAD
问答基准上达到最新的结果。
ELECTRA
的出色效率意味着即使在小规模的情况下也能很好地运行-可以在几天内在单个
GPU
上进行训练,其准确性要高于
GPT
(该模型使用30倍以上的计算能力)
。
ELECTRA
已在
TensorFlow
之上作为开源模型发布,其中包括许多现成的预训练语言表示模型。