ChatGPT系列语言模型--GPT-2

一些重要的消息:

1. 免费ChatGPT已经修复,公众号回复key即可获得网站和密匙。

2. 我创建了一个ChatGPT AIGC的github,里面都是满满的算法干货,记得点个⭐️。地址是:

https://github.com/sherlock1987/Awesome-ChatGPT-AIGC-Lesson

3. 创建了一个知识星球,关于ChatGPT AIGC背后的算法知识,落地变现,文末有优惠券(所剩不多)。


好的我们继续,我是船长。本次给大家带啦关于GPT-2的讲解知识,下文没有公式,讲的也是很容易懂的~,如果对GPT-1感兴趣,可以看看船长之前写的文章:


ChatGPT系列语言模型的开端--GPT-1


与GPT-1的区别

GPT-2和GPT-1的区别在于GPT-2使用了更多的网络参数和更大的数据集,以此来训练一个泛化能力更强的词向量模型。GPT-2相比于GPT-1有如下几点区别:

1. 主推zero-shot,而GPT-1为pre-train+fine-tuning;

2. 模型更大,参数量达到了15亿个,而GPT-1只有1亿个;

3. 数据集更大,WebText数据集包含了40GB的文本数据,而GPT-1只有5GB;

4. 训练参数变化,batch_size 从 64 增加到 512,上文窗口大小从 512 增加到 1024;


所以 GPT-2 的核心思想就是,当模型的容量非常大且数据量足够丰富时,仅仅靠语言模型的学习便可以完成其他有监督学习的任务,不需要在下游任务微调。



模型变化

在模型结构方面,整个 GPT-2 的模型框架与 GPT-1 相同,只是做了几个地方的调整,这些调整更多的是被当作训练时的 trick,而不作为 GPT-2 的创新,具体为以下几点:
1. 后置层归一化( post-norm )改为前置层归一化( pre-norm );
2. 在模型最后一个自注意力层之后,额外增加一个层归一化;
3. 调整参数的初始化方式,按残差层个数进行缩放,缩放比例为 1 : � ;
4. 输入序列的最大长度从 512 扩充到 1024;


GPT-2 进行上述模型调整的主要原因在于,随着模型层数不断增加,梯度消失和梯度爆炸的风险越来越大,这些调整能够减少预训练过程中各层之间的方差变化,使梯度更加稳定。最终 GPT-2 提供了四种规模的模型,可以看到GPT-2的模型比GPT-1已经提升了一个数量级。其中 117M 参数等价于 GPT-1 模型,345M 参数模型用于对标同期的 BERT-large 模型。


ChatGPT系列语言模型--GPT-2


Zero-Shot具体方法

接下来的问题是,Zero-Shot具体是如何做的呢?实际上是依赖于自然语言的灵活性,构建一个一个prompt来达到我们的目的。

在 GPT-1 中,模型预训练完成之后会在下游任务上微调,在构造不同任务的对应输入时,我们会引入开始符(Start)、分隔符(Delim)、结束符(Extract)。虽然模型在预训练阶段从未见过这些特殊符号,但是毕竟有微调阶段的参数调整,模型会学着慢慢理解这些符号的意思。


现在,在 GPT-2 中,要做的是 zero-shot,也就是没有任何调整的过程了。这时我们在构造输入时就不能用那些在预训练时没有出现过的特殊符号了。所幸自然语言处理的灵活性很强,我们只要把想要模型做的任务 “告诉” 模型即可,如果有足够量预训练文本支撑,模型想必是能理解我们的要求的。


举个机器翻译的例子,要用 GPT-2 做 zero-shot 的机器翻译,只要将输入给模型的文本构造成 translate english to chinese, [englist text], [chinese text] 就好了。比如:translate english to chinese, [machine learning], [机器学习] 。这种做法就是日后鼎鼎大名的 prompt。下面还有其他任务的zero-shot形式:


问答:question answering prompt+文档+问题+答案: answer the question, document, question, answer。

文档总结:summarization prompt+文档+总结:summarize the document, document, summarization。


在训练数据的收集部分,作者提到他们没有使用 Common Crawl 的公开网页爬取数据,因为这些数据噪声太多,太多无意义的内容。他们是去 Reddit 爬取了大量有意义的文本。作者还指出,在 Reddit 的高质量文本中,很可能已经有类似 zero-shot 构造方式的样本供模型学习。一个机器翻译的例子如下所示。


In a now-deleted post from Aug. 16, Soheil Eid, Tory candidate in the riding of Joliette, wrote in French: ”Mentez mentez, il en restera toujours quelque chose,” which translates as, ”Lie lie and something will always remain.”


Zero-Shot实验

在与同样为 zero-shot 模型的对比上,肯定是吊打了之前的 SOTA,这里就不展示了。可以关注一下下面 GPT-2 模型 zero-shot 性能关于模型规模的曲线。在有些任务上已经接近、超过之前某些有监督的方法;在比较困难的任务上,比如开放域问答,完全还看不到别人的影子。然而,看看曲线末端性能随模型规模提升的趋势,完全没有收敛的意思,这最后一段翘起的曲线,说明还有很大的提升空间。


ChatGPT系列语言模型--GPT-2


对于GPT-2感兴趣的小伙伴可以研究一下他的代码,链接地址在minGPT,观摩一下他写的GPT代码是受益匪浅的。


https://github.com/karpathy/minGPT



这次和身边的小伙伴做了一个ChatGPT聊天机器人,目前是全部免费的,欢迎大家来体验~ 下面告诉大家该如何使用。前段时间由于封号,目前已经修理好供大家使用。


Step1:关注公众号


Step2:发送:key

获得网站和密匙即可使用。


建议大家关注公众号,因为key会以日/周的频率进行更换,防止被黑客攻击。我们也制定了一系列防火墙策略,防止被入侵。

那么具体这个机器人能干嘛呢?


闲聊          

ChatGPT系列语言模型--GPT-2


文章书写          

ChatGPT系列语言模型--GPT-2

百科问答          

ChatGPT系列语言模型--GPT-2


代码书写          

ChatGPT系列语言模型--GPT-2




关于ChatGPT的出现,各行各业都开始争相涌入,船长本人也很看好这个方向,为了紧跟时代潮流以及不断学习,船长本人创建了一个知识星球:ChatGPT与AIGC。船长本人推出了减一百优惠券供大家使用(所剩不多),加入星球内三天内不满意可以全额退款。


ChatGPT系列语言模型--GPT-2

ChatGPT系列语言模型--GPT-2


ChatGPT系列语言模型--GPT-2


那么本星球有啥亮点呢?           

  1. 嘉宾阵容,我们有来自各个大厂的算法工程师,开发工程师,以及技术总监,还有擅长变现的自由工作者。

  2. 强大的算法知识,包括语言模型训练,训练数据,强化学习,Instruct Learning等强悍的代码实操。

  3. 免费使用的ChatGPT接口。是的你没有看错,对于知识星球内的朋友,搭建了一个免费的chatgpt,在手机上和电脑上就可以使用的ChatGPT,能在工作生活给大家提供更多的便利。进群之后即刻发送。

ChatGPT系列语言模型--GPT-2

免费使用的界面


最后祝大家玩的愉快,发现什么好玩的记得评论区里敲出来~,如果对于技术讨论有兴趣,也可以加入船长的微信讨论群~ ,目前1群人数过多,2群已经打开了!


ChatGPT系列语言模型--GPT-2

如果二维码过期,记得加船长微信来拉你进来~




你好,我是一个毕业于美国Top10学校的算法工程师,先后就职于三家大厂,个人喜好极其广泛,擅长深度思考,喜欢思维锻炼。公众号(船长尼莫)旨在和读者共同进步,会有原创的算法知识分享、工作求职分享、学者访谈、关于互联网的深度思考读书分享等等。评论区可以和我积极互动,也可以写下你想看的内容~😏,点赞关注下吧!



返回:ChatGPT系列语言模型--GPT-2

本文由“公众号文章抓取器”生成,请忽略上文所有联系方式或指引式信息。有问题可以联系:五人工作室,官网:www.Wuren.Work,QQ微信同号1976.424.585