在具体看论文之前,我们先来看看GPT-2,也是GPT家族巨人的惊人表现做一个开胃菜。在一个生成式任务上,OpenAI给出了这么一个开头:
翻成中文是:在一项惊人的研究中,科学家们发现了一群独角兽,它们生活在安第斯山脉一个偏远的还没被开发山谷中,更令人惊讶的是这些独角兽会说一口完美的英语。
就这么一句话,GPT-2能接着它写出以下这么一大段故事:
因为它们独特的角,科学家们把他们命名为Ovid’s Unicorn,这些长着四个银色角的独角兽是原来科学家所不曾见过的。
......中间还描写了,这些独角兽如何被发现,以及权威人士们评论这些生物是怎么出现的,最后还认为要验明这群独角兽是否是外星的种族,唯一方法就是通过DNA了。
这一本正经的胡说八道,让编者也是自愧不如啊。GPT-2这么强劲不是没有道理的,接下来让我们回归学术,查查GPT家族的户口本吧!
GPT是 “Generative Pre-Training” 的缩写,由OpenAI的四位作者发表于2018年。我想基于文章谈谈GPT模型的特点以及和之前模型的相似点。下图为GPT及ELMo的结构图。
GPT模型不同于之前模型的特点:
GPT模型和之前模型的共同点:
GPT使用了 multi-layer Transformer decoder 作为语言模型的层结构。GPT模型一共有12层,每层是一个 transformer的decoder,有768维hidden state和12个attention头。position-wise feed-forward network 使用了3072维内部状态。输入层的tokens 经过word embedding 和 position embedding ,最后通过softmax得到输出的概率分布。语言模型的训练使用了2000轮的warmup,最大学习率为2.5e-4,接着通过cosine schedule下降到0,dropout使用0.1,输入的最大长度为512。在直接finetune任务目标的时候,模型训练了三轮。
同时GPT使用了 BPE vocabulary with 40,000 merges。BPE算法在论文Neural Machine Translation of Rare Words with Subword Units 中也有具体的代码,简单的说,算法会把相邻字符的bigram计算出现的次数,每次都把出现次数最多的bigram合并。原来的词典是256个unicode,最后经过num_merges次合并以后,词典中就多了num_merges个在整个文章中出现较多的“词根”, 比如lower中的low,widest中的est都会被合并起来。编者自己运行了一下下方的代码,最后得到的vocab是 {'low': 5, 'low e r ': 2, 'newest': 6, 'wi d est': 3}。出现最多的字符对都被merge起来,他们一般会倾向于具有独立的含义,而没有被merge的相邻字符对显然是很少联合表达某个含义,所以他们被分开进行embedding是合理的。
GPT家族的杰出后代GPT-2同样是由OpenAI发表,GPT-2希望能够使模型不经过任何改变就可以在下游任务上获得比较好的性能,也就是zero-shot。
要达成这个目标,模型就要是通用的,不能只在某些任务上进行训练。它的语言模型目标,跟GPT相似,但是因为模型要在多任务上都能有较好的表现,所以模型的预测不仅要基于前几个词作为条件,同时也要将任务考虑在内。
GPT2相比于GPT的几个变化:
它最小的模型结构等同于GPT模型,其次的等同于BERT-LARGE,最大的才是真正被称为GPT2的模型有1.5B个参数。模型如此庞大,比之前最先进的预训练语言模型大了12倍,数据集大了15倍。作者们认为一个巨大的模型,在一个巨大的数据集上经过了高效的训练,就能在不同的任务上取得优异的效果。事实也是这样,GPT2在七个任务上不需任何标注数据,就能超过原来的state-of-art。简直惊呆了!
更令人惊讶的是,GPT2竟然还会写代码!!!
难怪Facebook AI研究院的 Tim Rocktäschel 看了GPT2写的代码都表示:我们要有大麻烦了!GPT2如此强大,以至于OpenAI 的研究人员们当时决定暂时不发布训练模型所用的数据、也不发布最大的真正GPT2的参数,因为他们认为模型有遭到恶意滥用的风险==
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有