在结构上,GPT也是以Transformer模型为基础,但与BERT只使用Transformer架构的编码器部分不同,GPT模型只使用Transformer架构的解码器部分。BERT所基于的Transformer编码器,其注意力机制是能看到整个句子前后信息的,因此BERT命名为“双向”编码表示,这就注定BERT的强项是语境信息(上下文)的获取和表示,优势在于语言理解,经过微调后BERT在阅读理解任务上甚至能超过人类。与之不同,GPT所基于的Transformer解码器模型,当前位置词语的输入需要的是前一位置词语的解码后的输出,注意力机制上只能看到当前位置之前的词,不会看到未生成的词。因此,GPT的优势在于语言生成。通过巨大规模的语料训练,GPT的语言模型获得了令人意想不到的效果,甚至只要输入简单的主题,即可自动生成一篇主题相关的短文。
尽管BERT和GPT相对于以往的语言模型来讲,已经表现得很强大了,但是仍远未能满足人们对自然语言处理的强大需求。下面通过介绍GPT-2模型,来阐述目前人工智能领域在自然语言处理方面的技术成就及其存在的问题。
2015年底,马斯克(Elon Musk)等诸多硅谷大亨,联合建立OpenAI这个人工智能非营利组织,旨在追求人工智能最先进的形态,并将研究结果向社会大众公开,以确保有朝一日计算机超越人类智力的可怕前景,不会变得像反乌托邦(dystopia)那样让人绝望。OpenAI这个类似研究实验室的机构自成立以来,在AI科研领域做出的贡献可谓是惊艳连连。特别值得一提的是,2019年2月14日他们在OpenAI的官方博客上介绍了他们训练的一个大规模无监督“通用”NLP模型“GPT-2”。这个NLP模型基于Transformer,拥有15亿参数,使用含有800万个网页的内容的数据集训练,只为一个目的:根据当前已有的信息预测下一个单词是什么。由于模型的容量足够大,并且训练数据足够多,GPT-2在拥有40GB网络数据的测试集上,仅是通过进行简单的“预测下一个单词是什么”,就能够完成各种不同的NLP任务:可以生成连贯的文本段落,其结果刷新了七大数据集基准;并且能在未经预训练的情况下,完成阅读理解、回答问题、机器翻译等多项不同的语言建模任务,展示出了强大的泛化能力(详见Radford et al. 2019)。
下面,我们来看GPT-2是怎样在人们给它一个两句话的开头(A)后,煞有介事地往下编后续故事(B)的(原文为英语,这里是中文节译)。