中学生能看懂:GPT-1 论文《Improving Language Understanding by Generative Pre-Training》

发布于: 修改于: Android转发:0回复:0喜欢:2

文/赛博禅心

写在前面

本篇基于论文《Improving Language Understanding by Generative Pre-Training》

论文地址:网页链接

由 Alec Radford, Karthik Narasimhan, Tim Salimans, Ilya Sutskever 等人撰写的论文,对当代自然语言处理(NLP)领域产生了深远的影响。这篇论文首次介绍了GPT(Generative Pre-Training)模型,这是一个基于Transformer架构的大规模无监督学习语言模型。

Powered by 「大聪明GPT」

你是否好奇,当你对手机说“播放我最爱的歌”时,它是如何听懂你的?或者网站是怎样瞬间将一段文字翻译成另一种语言的?这些看似魔法般的能力,其实都得益于计算机越来越擅长理解人类语言,这就是所谓的“语言理解”。

计算机理解语言有点儿像我们学习阅读或聆听别人讲话。但计算机得学会的不是一种语言,而是上百种,每种语言都有自己的规则和奇妙之处。为何这很重要呢?因为计算机越能理解我们,就越能在日常生活中帮助我们。

想想看,当你跟Siri或Alexa之类的语音助手交谈,实际上你是在和一台计算机对话。你可能会问它天气怎样,或者在做饼干时要求它帮你计时。为了准确回答,语音助手需要理解你说的话背后的含义,这是听力和理解力的区别。如果语音助手能完美理解你,它就能成为一个巨大的帮手,就像一个随时待命、超级聪明的朋友。

再来看搜索引擎,当你用它来搜索家庭作业的资料,你输入问题,搜索引擎就能给你一系列相关的网站。这其实是计算机在背后默默地理解你输入的词语,帮你找到最好的答案。

还有自动驾驶汽车技术,这些车辆需要理解路标和指示,确保你安全地从A点到B点,不走错路。道路标识也是一种语言——交通语言。

提高机器的语言理解能力不仅让你的设备变得更加有用,对科学家和医生来说也至关重要。能读懂并理解医学研究论文或复杂数据的计算机,能帮助人们发现新的疾病治疗方法,或是解读宇宙奥秘!

语言理解不仅局限于阅读或听取信息,它还帮助计算机进行写作。现在有些计算机能够编写故事、创作诗歌,甚至撰写文章。这对寻求灵感的作者或者想让编写报告这类枯燥工作变得更加有趣和富有创造性的人来说非常有帮助。

别忘了说不同语言的人们。计算机更精准的语言理解能力,能够跨越不同地域之间的沟通障碍。实时翻译技术可以让一句“Hola, ¿cómo estás?”立刻转化为“你好,你怎么样?”,让我们更轻松地结交新朋友,了解不同的文化。

因此,语言理解不仅让科技更有用、更具创造性,也让人们更加亲近。但要教会计算机理解并使用语言并非易事,这个巨大的挑战让全球最聪明的头脑都倍感困惑。接下来,我们将探究为何这项任务如此艰巨,以及计算机为了在这门科目上取得佳绩需要做哪些“作业”。

初来乍到,吓了一跳

想象一下,如果你被突然带到一个完全不懂当地语言的国家。到处都是看不懂的文字,人们说话就像在念密码。对于计算机而言,开始学习人类语言就有点像这样。如果计算机无法理解我们,就无法在需要时提供帮助,这是个相当严峻的问题。

首先,任何一种人类语言都像是一个包含成千上万碎片的庞大而复杂的拼图。有单词,还有用于组合这些单词的语法规则,以及许多规则的例外情况。即使计算机学会了语言中的每一个单词,它可能也无法理解这些词汇组合在一起时的含义。因为意思会随着单词顺序的变化而变化,就像"The cat chased the mouse"和"The mouse chased the cat"明显不同。

这不只是句子结构的问题。想想我们有多少种表达方式 —— 疑问、感叹、命令 —— 还有我们如何通过语调来表达疑问、兴奋或命令。对计算机来说,捕捉这些细微差别是非常困难的。它们不是天生就能理解这些,而需要通过大量学习才能掌握。

接下来说说那些"有意思"的部分:笑话、讽刺和成语。试着向一个从没听过笑话的人解释为什么一个笑话很好笑。计算机在处理这个问题上也面临同样的困境。笑话通常是通过文字游戏或以出乎意料的方式使用语言来逗乐,这对计算机而言是一个巨大的挑战。

讽刺则是另外一道难关。讽刺是我们表面说的一套,实际上意思却正好相反,比如当有人不小心洒了饮料时我们说"干得好!"。人类通过语调和语境来理解讽刺,而计算机通常只会直接理解字面含义,所以它们可能无法意识到在这种情况下"干得好!"实际上是在说"糟糕,出错了。"

至于成语和谚语,那些字面意思并不明显的短语,例如"It's raining cats and dogs"(字面意:下了猫和狗,本意:瓢泼大雨)或"Piece of cake"(字面意:一块蛋糕,本意:小菜一碟)。要理解这些,需要对语言背后的文化有所了解,这对计算机来说是更高一层的复杂性。

但这还没完。语言在不断发展变化!新词汇源源不断,老词汇得到新解释,俚语变成了主流。想象一下,你祖父母的英语可能与你的有很大差异。对计算机来说,跟上这些变化就像是在射击一个移动的靶子,它们需要持续更新才能紧跟潮流。

所以,这些因素综合起来,使得语言学习对计算机而言是个巨大的挑战。计算机需要学习的不只是单词和语法,还有无数的语言细节、文化背景和语言的不断演变。这是个艰巨的任务,但一旦计算机能够更好地理解语言,它们就能变成我们日常生活中的得力助手。

如我们所见,理解语言不仅仅是知道词汇和句子,还要把握整个交流的上下文。但计算机并不轻易放弃!它们通过浸泡在大量文本中——想象一下,就像是在一个巨大的图书馆里面的每一本书里游泳——来学习上下文,把握语言的模式和规则。这是它们通往掌握人类语言之路上的下一个重要步骤。

熟能生巧

从上次讨论语言理解和沟通背景的基础上,我们继续探讨计算机是如何通过分析大量文本来学习语言模式的,这个过程有点像学生通过课本学习。

就像你为历史考试通过阅读教科书、做笔记、自测来复习一样,计算机在学习语言时也采用类似的方法。但与学生不同,计算机要同时处理成千上万本书籍、网页和文章。这种方式称为无监督学习,就好比在没有老师的情况下自主做作业。

接下来我们分解这个过程。计算机理解语言的智能部分被称为语言模型,它通过算法来工作,算法是一系列详细到每一步的指令,指导计算机如何理解和生成句子。

想象一下,如果你的教科书里所有考试所需的知识都混在一起,没有任何顺序,这就像计算机眼中的互联网——充满了各式各样的文本。语言模型深入这些文字的海洋,开始寻找模式。比如,它可能发现“bake”(烘烤)经常和“oven”(烤箱)、“flour”(面粉)、“cake”(蛋糕)以及“cookies”(饼干)等词汇一起出现,于是就学习到“bake”很可能与烹饪有关。

计算机这么做主要是在做两件事:预测和理解。预测就像是填空,它尝试猜出它从未见过的句子中下一个单词是什么。这和你根据学过的内容推测考试可能会考什么类似。理解则是当计算机明白为何一个词会出现在另一个词之后,这和你理解某些历史事件的因果关系相似。

这些预测并不是随便猜的。计算机通过查看众多实例逐渐变得擅长预测下一个单词。就像你学了很多关于独立战争的内容后,你会开始预测提到“Paul Revere”(保罗·里维尔)时,接下来可能会提到他的午夜骑行。

但更神奇的是,计算机不仅在学习单词及其含义,它还在学习整个短语、俚语、笑话甚至讽刺。因为单词组合在一起的方式赋予了它们含义。如果你只记住了历史上的日期,而不了解背后的故事,就无法真正理解历史。计算机在学习语言时也是如此。

负责帮助计算机学习的模型叫做Transformer。它虽然不会变成汽车或者机器人,但它所做的工作同样令人称奇。Transformer被设计得能够像变形金刚那样,关注句子中不同的部分。就像你在教科书中高亮重点一样,Transformer模型能够关注语言中的重要部分,更好地理解语境。

这个模型有多个层次,有点像蛋糕或你教科书中的章节,每一层都让计算机对语言有更深刻的理解。有些层面着眼于单词,有的专注于短语,还有的涵盖整个句子。计算机处理完这些层次之后,对文本的含义有了相当清晰的认识。

Transformer擅长处理像小说或长文章这样的长文本,因为它能记住文本前面的内容,并利用这些信息来理解后文。这就像你在读科学书的最后一章时能够回想起第一章学到的内容,一切知识都是相连的。

另一个关于计算机学习语言的重要方面是大量的练习,就像你复习时一遍遍翻阅笔记确保记牢一样。计算机在阅读了大量文本、开始把握语言模式之后,会不断地练习和微调它们的技能。

通过这些方法,计算机通过消化大量的文本样本,了解其中的模式和语境,并不断地精炼自己的知识,从而发展语言能力。这个过程既不简单也不是一蹴而就的,但随着计算机不断地阅读和学习,它们在理解我们使用的语言方面越来越进步。

现在,计算机已经通过阅读和学习了解了语言规则之后,准备迈向下一步:通过练习特定的任务来应用它们学到的知识。

微调:专攻特定领域

我们的语言学习电脑在阅读了大量文本后已经成为万能高手,现在是时候让它在某一个——实际上可能是许多——领域成为行家里手了。这有点像你在学校里各科都不错,但有时候你得专心攻克代数或生物学才能考出好成绩。这就是计算机如何通过微调从广泛的知识转向精通特定任务。

想象一下,你有一个大的历史课题需要准备。你读过教科书,对历史有了大体的了解。但现在,你需要深入了解美国革命的具体信息。你肯定会深挖关于这段时期的文件、论文和传记,对吧?计算机在某一专项语言任务上的专研,也是通过在特定的例子上进行训练。

这一学习阶段就像定做西装——量身定制,非常精确。计算机由于之前广泛的阅读,对语言已经有了丰富的理解。现在,它需要将这些知识应用到诸如从英语翻译成法语的句子、总结一篇长文章、判断一篇评论是正面还是负面等具体任务上。

微调的神奇之处在于此。计算机已经准备就绪,有了Transformer模型,并且还得到了一小部分但非常相关的数据集——我们可以叫它练习册。这本练习册正好包含了计算机在现实世界中需要解决的那些问题和难题。就像有私人家教坐在旁边指导你一样,计算机在导师的监督下研究这些练习题。

如果用我们的历史项目来比喻,微调就像是拿到了乔治·华盛顿亲笔的信件。你读过了教科书,现在你要处理真实、详尽的细节,让你的知识更加实用和精确。对于我们的计算机来说,它通过学习那些已知正确答案的实例,调整自己内部的运作机制——即它的算法和模式——以便在未来遇到类似任务时,能够以惊人的精确度预测正确答案。

正如不同的学科有时会有所交集,计算机所学习的任务也能从彼此中受益。例如,通过学习翻译语言,计算机在理解语法和词汇方面也会变得更好,这也有助于它更好地总结文本或判断推文的情绪。

具体任务可能包括:

问题解答:给定一段关于太阳系的文本,太阳系中最大的山在哪里?计算机将学会从文本中筛选信息,找到火星上的奥林帕斯山是最大的山。

情感分析:计算机阅读关于最新超级英雄电影的评论,判断它们是正面还是负面。这帮助企业理解消费者对他们产品的看法。

文本分类:计算机可能会得到一系列文章,并将它们归类为体育、科学或娱乐等,就像图书管理员将书籍分门别类放在合适的书架上。

微调的一个有趣之处在于,计算机在学习新任务时不必从零开始。它已经从初始训练阶段累积了大量的知识,并以此为基础。这就像你已经掌握了算术,因此在学习代数时就会更加得心应手——一切知识都是相互关联的!

还有一个重要的概念是任务感知输入转换。这些是计算机根据当前任务调整处理方法的微调。例如,如果任务是检测情绪,计算机会特别关注情感性的词汇和短语。这就像你在历史教科书中用荧光笔标出重要日期一样,这个工具帮助计算机更加专注于任务中最重要的部分。

总结来说,微调是计算机从通用语言理解转变为精通特定语言任务的秘密武器。这就像是在知道一些关于很多事物和知道很多关于某些事物之间的区别——对计算机来说,就像中学生一样,这两者都对在现实世界中的'考试'中取得好成绩至关重要。

现在,我们继续下一部分:Transformer不仅仅是电影中的机器人,它们还是计算机理解和响应语言的超级智能'大脑'。在下一节中,我们将探讨Transformer模型是如何帮助计算机更自然地理解和回应语言,就像跟朋友交谈一样。

Transformer: 一个超级大脑

想象一下:你在一个人声鼎沸的房间里,突然有人叫出你的名字。尽管周围喧嚣吵闹,你的大脑却能够神奇地将注意力集中在那个声音上,明白对方说了什么。在计算机和语言处理的领域,Transformer模型就像是你大脑的映射——它能够在信息海洋中捕捉到那些关键的数据点,哪怕周围环境再复杂繁杂。

什么是 Transformer 模型?

Transformer 是一种用于处理语言的计算机模型。在 Transformer 出现之前,计算机使用的方法就像是试图在喧嚣的房间里同时听取每个人的声音——这并不太有效。但 Transformer 模型彻底改变了这种状况。它采用了一种名为“注意力机制”的技术。这个注意力机制,就像你在嘈杂的食堂里专注于倾听朋友的谈话,你在专注于那个时刻最重要的信息。

Transformer模型是怎么运作的?

想象一下,当你用放大镜看漫画时,你能够聚焦到最细小的部分——就像是角色们的面部表情或者对话泡泡里的小字。Transformer模型在处理语言时,也有类似的能力:它能聚焦于句子中最关键的词语或短语,这些元素对理解整体含义至关重要,同时又不会忽视整体上下文。

例如,当你输入这样一个句子给Transformer:"The monkey climbed the tree because it was fun."(猴子爬上树,因为它觉得好玩。)这里的"it"(它)可能指猴子也可能指树,但我们知道"it"实际上指的是猴子,因为这样才逻辑通顺。Transformer也能做到这一点——它通过加强对"it"附近单词的关注来推断出"it"指的是猴子。

Transformer和学习语言

在校园里,我们会用到各种工具来帮助学习变得更有效。例如,使用抽认卡来帮助记忆单词,而使用日程计划本来管理我们的家庭作业。同样地,Transformer也有自己的一系列工具。其中最重要的一个工具是它能够记住之前学过的内容。就像你在学习分数之后,这些知识可以帮助你更好地理解百分比,因为两者之间有联系。

Transformer能够记录它之前遇到过的所有词汇和它们的上下文环境。这种记忆力在理解新句子时显得非常有用。它不需要每次都重新学习一切——它会运用已有的知识来解决新的语言任务,就像你在数学学习中利用之前的知识来解决更加复杂的问题一样。

Transformer模型为何颠覆了游戏规则

Transformer问世之前,计算机很难弄懂词语的顺序以及那些赋予句子真正意义的微妙之处。如果你把一句话中的词语顺序打乱,你或许仍然能猜出其含义,但那句话会读起来很怪异,让人迷惑。对于计算机而言,这一挑战就更加艰巨了。但现在有了Transformer,计算机可以更加高效地处理句子,它不仅理解词语的排序,更能捕捉到语句的微妙意味——就像你自己理解语言那样。

Transformer模型在处理多任务方面也展现了惊人的能力。当它们分析一句话时,它们不仅关注词语的排序,同时也在解读那些细微的提示和含义,就像你在朋友的话语中能感知到一个笑话或一丝讽刺那样。这种多层次的理解能力使得Transformer在语言翻译或者在写作时为你推荐下一句话等任务上表现得异常强大。

Transformer在现实世界中的超能力

现在,你可能在用Transformer的技能而不自知。比如你跟Siri或Alexa这样的数字助手聊天得到了有用的答复,其背后就是一个Transformer模型在发挥作用。或者当你写作业报告时,使用了某款能检查语法的工具,它很可能就利用了Transformer模型来理解你想说的内容,并帮助你更准确地表达。

Transformer真正厉害的地方,在于它们能够从各种语言和任务中学习。例如,Transformer能够通过学习法语来提升对英语的理解,或者通过阅读新闻文章来更好地领会科学教材的内容。这就好比你通过学习踢足球,不仅踢得好,还神奇地提高了你打篮球和排球的能力——这正显示了Transformer在处理语言任务时的适应性和多功能性。

Transformer如何不断学习与进步

虽然Transformer已经非常智能,但它们还需要持续学习和进步,就像你努力学习一样。它们通过阅读更多的文本、针对特定任务进行深入训练和不断地应对新挑战来提高自身能力。有时候它们会进行更新,这就像学生升级一样,它们需要掌握更多复杂的知识。

总的来说,Transformer模型为电脑理解和处理人类语言带来了革命性的变化。它像是帮助你专注于重点的放大镜、辅助记忆的抽认卡和记录你所有待办事项的规划器——三者的优点集于一身。凭借Transformer,电脑能够关注语言中的关键部分、记住所学的内容,并且随着时间的推移变得更加聪明。这是它们从仅仅识别文字到真正理解并用语言沟通的关键,就像你我一样。

第1步:读个不停

就像你在为科学项目准备时会阅读大量的资料一样,计算机开始它的学习过程,也是通过翻阅海量的文本。这并不是普通的浏览,而是深入地研究各类资料,包括小说、报纸、网络文章等等。对于计算机来说,这就像是同时接触到全世界的每一本书。通过这样的过程,它开始领悟语言的运作规律,识别出语句的构成和常见词汇的搭配模式。

第2步:无需教导自学规则

就像你在做项目研究时,通过阅读逐渐理解基本概念并做笔记一样,计算机在处理文本时也能自己领悟语言的规则。这部分是所谓的非监督学习,没有人直接向计算机传授规则。它通过分析大量文本,自主探索出语言的“语法”,无需任何人专门教授。就像你能够仅通过看图片,而不需要一步步的指导,就组装出火山模型一样。

第3步:反复练习,熟能生巧

试想你会怎样通过练习小测试或构建一个小模型来检验自己的想法。电脑现在就要做类似的事情,这个过程被称为“微调”。就好比专门的训练一样。电脑已经对语言有了广泛的理解,但现在它通过特定的例子和纠正来进一步专研。如果它在理解某个句子时出错了,就像老师批改你的小测试一样,它会得到正确的答案并从错误中学习。它正通过这些练习,为最终在真实世界中准确理解语言做好准备。

第4步:专注于任务

就像你不会通过训练足球来备战篮球比赛一样,计算机也需要针对它即将执行的特定任务来优化语言处理能力,无论是翻译还是摘要编写。因此,在完成了广泛阅读后,计算机会接受一位教练的辅导——这里的教练是程序员,他们会帮助计算机专注于提升它所需的特定语言技巧。比如,如果计算机需要做的是回答问题,那它就会大量练习回答问题。

第5步:Transformer大显身手

记得我们之前说的Transformer吗?现在,它已经成为了主角。在这一系列的实践和调整中,Transformer模型使得计算机能够锁定语言中最关键的部分。就像你在学习时用荧光笔标记重点一样,它帮你记住最重要的内容。Transformer模型也是这么做的,但它标记的是单词和句子。它知道应该关注哪些词,使得计算机对语言的理解变得更加精准。

第6步:从之前的对局中学习

就如同你会从以前的科学实验或是练习赛中吸取经验一样,Transformer也会记住它之前学到的所有内容。它会利用之前阅读过的所有文本的知识来更好地预测自己未来阅读时可能会遇到的内容。比如,如果它在科学相关的文本中多次遇到“光合作用”这样的词语,那么它就会知道这些词在处理生物学相关任务时可能非常重要。

第7步:为重要的日子做好准备

就像所有的阅读、练习和调整都是为了考试或比赛做准备一样,这一切都是为了让计算机准备好迎接现实中的语言挑战。当真正的时刻来临——无论是用户提出的问题还是对翻译的需求——计算机已经做好了充分的准备,它会利用学到的所有知识去理解问题,并尽可能给出最佳答案,就像你准备好了为你的项目展示或决赛而战一样。

第8步:更新培训

就像你会为新一年的项目学习最新技巧或知识一样,电脑系统也需要不断更新。开发者会向它输入新的信息,并改进它的学习方式,以此适应人类语言使用习惯的变化。比如,当一个新的流行语词盛行,电脑就会学习并明白人们使用它的含义。

整体来看,电脑通过生成式预训练来理解语言的过程,就像是你准备一个重大的学校课题或体育赛事。它一开始会进行大量的广泛学习,然后逐渐聚焦在特定技能的练习上。就像你会利用所有的笔记和之前的经验来出色完成你的项目或赛事,电脑也会利用Transformer模型和它庞大的“阅读”资料库,以卓越的能力来理解和回应人类的语言。