在最近的一项研究中,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之上作为开源模型发布,其中包括许多现成的预训练语言表示模型。
学生研究员Kevin Clark和Google Brain高级研究科学家Thang Luong在博客中写道:“ ELECTRA只需很少的示例就可以达到相同的性能,因为它每个示例都收到模式训练信号。” “与此同时,RTD带来了功能强大的表示学习,因为模型必须学习数据分布的准确表示才能解决任务。”