今天给大家分享的这篇文章,斯坦福曼宁教授于2021年10月份完稿的(比ChatGPT还要早上一年),最近才发布到期刊上的。由于原文比较长,所以作者结合自己的理解做了一些整理,感兴趣的可以阅读一下原文。「本篇文章主要概述了整个自然语言处理的发展过程,介绍近年NLP的发展以及相关神经网络模型技术,最后给出了未来语言模型的发展方向」。文章是2021年底完稿的,结合目前的语言模型的发展趋势,可以发现曼宁教授的预测太准了,和他两年前的预测基本一致!感兴趣可以翻到最后,他的预测今天照样适用。
https://www.amacad.org/publication/human-language-understanding-reasoning
在过去的十年里面,人们在自然语言处理方面取得了巨大的进步。其中主要做法是:对简单的神经网络进行拓展构建大型语言模型框架,然后利用海量的数据进行训练。由此产生的预训练语言模型如:Bert、GPT、LLaMa等,此类模型可以提供通用的语言理解和文本生成能力,可以轻松适应许多理解、写作和推理任务。此类模型触摸到了真正人工智能的门槛,这也会引领在语言之外的领域构建强大的基础模型。
当科学家考虑人工智能时,大多会想到重建人脑的能力。但现代人类的智能远不止单个大脑的智能。「人类语言是非常强大的,并且已经改变了我们的物种,因为它提供了一种将人类大脑联系在一起的方式」。一个人可能并不比我们的近亲黑猩猩或倭黑猩猩聪明多少,因为类人猿已被证明拥有人类智慧的标志性技能,例如使用工具和制定计划,此外他们短期记忆力要比我们好。对于人类何时发明了语言,这或许永远是个谜!但在地球生命漫长的进化史中,人类最近才发展出了语言,人类、猿类、猴子的共同祖先可以追溯到大约 6500 万年前;人类大约在 600 万年前与黑猩猩分离,而人类语言通常被认为只有几十万年的历史。正是人类发展出来的语言交流迅速让智人超越其它生物,尽管不如大象强壮,也不如猎豹快,但仍然可以捕猎他们。直到最近(五千多年),「人类才发明了文字,从而使知识能够跨越时空距离进行交流」。在短短几千年的时间里,这种文字信息共享机制将我们从青铜时代带到了当今的智能手机时代。语言作为一个高保真的代码,「它可以让人们进行理性讨论和信息的分发,这促进了社会文化的进步;同时它作为人类社会智能的基础,在未来人类智能发展过程中将发挥重要的作用」。正因如此,自然语言处理(NLP)随着人工智能早期发展而同步出现。
到目前为止,自然语言处理的发展历史大致可以分为四个阶段。
第一阶段:从1950年到1969年。「NLP研究开始于机器翻译研究。在第二次世界大战期间,计算机在密码破译方面取得了巨大的成功」,人们认为翻译可以在此基础上迅速发展。冷战双方的研究人员都试图开发能够翻译其他国家科学成果的系统。然而,在这个时代之初,人们对人类语言、人工智能或机器学习的结构几乎一无所知。回想起来,可用的计算量和数据量少得可怜。尽管最初的系统被大肆宣传,但这些系统提供的只是单词级别的翻译查询和一些简单的基于规则的方式来处理泛化单词和词序。
第二阶段,从1970年到1992年,我们见证了一系列NLP系统的发展,这些系统在语法和引用等方面表现出了复杂性和深度。「这些系统都是基于规则手工构建的」,并逐步开始使用一些人类语言理解的复杂性,有些系统甚至可应用于数据库查询等任务。语言学和基于知识的人工智能迅速发展,在这个时代的第二十年,新一代手工构建的系统出现了,受益于一系列更现代的语言理论的发展,这些系统明确区分了陈述性语言知识及其处理过程。
第三阶段,从 1993 年到 2012 年。在这个时期,「数字文本变得丰富,比较有前景的方向是算法研究」,即利用算法处理大量的语言文本来达到对自然语言的理解。「这种方式重新定位了NLP的研究方向,并且该方式目前仍然主导着该领域的发展」。在这一时期初期,主要的工作方式是获取合理数量的在线文本,并且文本收集通常只有数千万字,从这些数据中提取某种模型,主要是通过计算特定的事实。但是,单词计数在提高语言理解方面的作用有限,早期从文本集合中学习语言结构的尝试相当失败。这导致该领域的大多数人专注于构建注释语言资源,例如标记单词的意义、文本中人名或公司名称的实例,或者树库中句子的语法结构,然后使用有监督的机器学习技术来构建模型,这些模型可以在运行时在新的文本上产生类似的标签
第四阶段,从2013年到现在,「由于引入了深度学习或人工神经网络方法,NLP的工作发生了天翻地覆的变化」。在这种方法中,单词和句子由向量空间中的位置表示,意义或语法的相似性由该空间中的接近度表示。从2013年到2018年,深度学习为构建高性能模型提供了一种更强大的方法:更容易对更远距离的上下文进行建模,并且模型可以更好地推广到具有相似含义的单词或短语,因为它们可以利用向量空间中的接近性,而不是依赖于符号的身份(如词形或词性)。然而,在构建监督机器学习模型来执行特定的分析任务时,这种方法没有改变。「2018年,一切都改变了,NLP成为大型自监督神经网络学习的第一个重大成功」。自监督的方法是让系统从文本中创建自己的预测目标,比如在给定前一个单词的情况下连续识别文本中的下一个单词,或者在文本中填充一个被掩盖的单词或短语。通过数十亿次重复这样的预测任务学习,这样模型在下次给定相似的文本上下文时会做得更好,积累大量的语言知识,然后可以将这些知识应用到特定的任务中,例如问答或文本分类。
事后看来,大型自监督学习方法的发展很可能被视为根本性的变化,第三个时代可能会延续到2017年。预训练自监督方法的影响是革命性的:它可以在大量未标记的人类语言材料上训练模型,从而产生一个大型预训练模型,该模型可以非常容易地通过微调或提示进行调整,从而在各种自然语言理解和生成任务上展现出惊人的结果。
单单一篇文章不可能全面描述现在占主导地位的人工语言神经网络模型,但本文可以提供一些提示。「这些模型通过实数向量表示一切」。「自 2018 年以来,NLP 应用的主要神经网络模型一直是 Transformer 神经网络」。它比前几十年探索的用于单词序列的简单神经网络复杂得多。其主要思想之一是Attention,通过该思想,一个位置的表示被计算为来自其他位置的表示的加权组合。Transformer 模型中一个常见的自监督目标是屏蔽掉文本中偶尔出现的单词。它通过从每个单词位置(包括掩码位置)计算代表该位置的query、key和value的向量来实现这一点。将某个位置的query与每个位置的value进行比较,计算出对每个位置的关注度;在此基础上,计算所有位置的值的加权平均值。这个操作在 Transformer 神经网络的每一级重复多次,结果值通过一个全连接的神经网络层进一步操作,并通过使用归一化层和残差连接为每个单词产生一个新的向量。整个过程重复多次,为 Transformer 神经网络提供额外的深度层。最后,掩码位置上方的表示应捕获原始文本中的单词:例如committee,如下图所示。如果对Transformer不是很理解可以看一下这篇文章:[再谈 Transformer,有图片描述,通俗易懂,郑重承若:绝不含任何公式推导!]
通过 Transformer 神经网络的许多简单计算可以实现或学到什么一点也不明显。起初,这听起来像是某种复杂的统计关联学习器。然而,「如果有一个非常强大、灵活且高参数的模型(如 transformer 神经网络)和大量数据来进行预测,可以发现这些模型代表人类语言的大部分结构」。事实上,工作表明这些模型学习并表示句子的句法结构,并将学习记住世界上的许多事实,因为这些事情中的每一个都有助于模型成功预测掩码词。此外,在预测掩码词时最初看起来是一个相当简单低级的任务并不是特别复杂的东西,然而正是此类任务让模型变得特别强大,因为它是普遍的:语言的每一种形式 和世界知识,从句子结构、单词内涵和关于世界的事实,可以让模型更好地完成这项任务。因此,这些模型汇集了它们所接触的语言和世界的广泛常识。只需进一步微调,就可以将其应用到许多特定的 NLP 任务。
从 2018 年到 2020 年,这样做的标准方法是通过少量额外的监督学习对模型进行微调,根据感兴趣的确切任务对其进行训练。但最近,研究人员出人意料地发现,这些模型中最大的一个,例如 GPT-3(生成式预训练 Transformer-3),只需提示即可很好地执行新任务。给他们一个人类语言的描述或几个例子来说明他们想要做什么,他们就可以执行许多他们从未接受过其他培训的任务。
传统的自然语言处理模型通常由几个独立开发的组件组成,一般构建在一个管道中,它首先试图捕获文本的句子结构和低级实体,然后是更高级别的含义,这将被送入一些特定领域的执行组件。在过去的几年里,公司已经开始用 LPLM 取代这种传统的 NLP 解决方案,通常经过微调以执行特定任务。我们可以期望这些系统在21世纪20年代还能做什么?
早期的机器翻译系统涵盖有限领域内的有限语言结构。从翻译文本的平行语料库构建大型统计模型使机器翻译成为可能,这是大多数人在 2006 年谷歌翻译推出后体验到的东西。十年后 ,在 2016 年底,谷歌的机器翻译改用神经机器翻译后有了显着改进。这个新系统不仅通过不同的神经架构进行了改进,而且通过使用一种根本不同的方法进行了改进。它不是从平行文本中构建大量的两种语言翻译的成对系统,而是从一个巨大的神经网络中获益,这个神经网络同时训练了谷歌translate覆盖的所有语言,输入简单地用一个不同的标记来表示该语言。
在问答系统中,系统会在一系列文本中寻找相关信息,然后提供特定问题的答案(而不是像早期的网络搜索那样只返回建议保存相关信息的页面)。问答有许多直接的商业应用,包括售前和售后客户支持。现代神经网络问答系统在提取文本中存在的答案方面具有很高的准确性,甚至相当擅长找出没有答案的答案。
对于常见的传统NLP任务,如在一段文本中标记人员或组织名称,或对关于产品的文本的情感进行分类(积极或消极),当前最好的系统仍然基于LPLM,通常提供一组以所需方式标记的示例来进行微调。虽然在大型语言模型出现之前,这些任务就可以做得很好,但这些模型中对语言和世界的更广泛的知识进一步提高了这些任务的性能。
最后,LPLM在生成流畅和连接文本的能力方面引发了一场革命。除了创造性的用途,它还可以编写公式化的新闻文章,如收入或体育报道,到自动总结。这些最新的NLP系统在许多任务上都表现得很好。事实上,给定一项固定的任务,它们通常可以被训练得和人类一样出色。然而,我们仍然有理由怀疑这些系统是否真正理解它们在做什么,或者它们只是非常复杂的重写系统,并没有什么意义。
我们还处于基础模型的早期阶段,但让我来描绘一个可能的未来。大多数信息处理和分析任务,甚至可能是像机器人控制这样的事情,都将由相对较少数量的基础模型的一个专门化来处理。这些模型的训练将是昂贵和耗时的,但使它们适应不同的任务将是相当容易的;事实上,们也许可以简单地用自然语言指令来做到这一点。这种对少数模型的聚合带来了一些风险:「能够构建这些模型的团体可能拥有过多的权力和影响力,许多最终用户可能会受到这些模型中存在的任何偏见的影响」,并且很难判断模型在特定环境中是否安全使用,因为模型及其训练数据非常大。
然而,这些模型将从大量训练数据中获得的知识部署到许多不同的运行时任务的能力将使这些模型变得强大,「它们将首次证明一个机器学习模型的人工智能目标是基于简单的现场指示它应该做什么来完成许多特定任务」。虽然这些模型的最终可能性只是模糊地理解,但它们可能仍然有限,缺乏人类水平的仔细逻辑或因果推理能力。但基础模型的广泛有效性意味着它们将得到非常广泛的应用,它们将在未来十年让人们第一次看到一种更通用的人工智能形式。