15年来,自然语言处理发展史上的8大里程碑
作者头像
  • 李丹
  • 2021-09-15 12:18:37 17

自然语言是人类独特的智慧结晶。自然语言处理(Natural Language Processing,NLP)是计算机科学和人工智能领域的重要分支,致力于研究人与计算机间通过自然语言进行有效沟通的各种理论和方法。这项研究不仅具有深远的实际应用价值,还蕴含着颠覆性的理论意义。

自然语言处理涉及理解复杂的语言结构,需要广泛的知识和操作能力,因此被视为解决人工智能完备性问题的核心之一。对自然语言处理的研究充满了挑战和吸引力。

这篇文章由自然语言处理专家、知名博主 Sebastian Ruder撰写,从神经网络技术的角度探讨了近15年来自然语言处理领域的重大进展,并总结了8个与当下紧密相关的里程碑事件。文章不可避免地省略了一些重要的相关工作,主要聚焦于神经网络相关技术,但这并不代表其他技术领域没有重要突破。实际上,许多提及的神经网络模型都是基于同一时期非神经网络技术的发展之上。在文章结尾,特别强调了那些奠定了坚实基础的重要成果。

2001年——神经语言模型

语言模型的任务是在给定已出现词语的文本中预测下一个单词。这是一个相对基础的语言处理任务,但有着广泛的应用场景,例如智能键盘和邮件回复推荐。语言模型的概念历史悠久,早期采用n-grams模型(利用前n个词预测下一个词)并通过平滑技术处理未见过的n-grams。

首个神经语言模型是由Bengio等人于2001年提出的前馈神经网络(feed-forward neural network),如图1所示。该模型以先前出现的n个词作为输入向量,这些向量后来被称为词嵌入(word embeddings)。词嵌入在串联后进入隐藏层,再通过softmax层输出。尽管后来循环神经网络(RNNs)和长短时记忆网络(LSTMs)逐渐替代了前馈神经网络,但后者在某些情况下仍然表现优异,特别是在处理邻近词时。

2008年——多任务学习

多任务学习是指通过共享模型参数在多个任务下训练的方法,这一思想最早由Rich Caruana于1993年提出,并应用于道路追踪和肺炎预测。2008年,Collobert和Weston等人首次将多任务学习应用于自然语言处理领域,如图2所示。他们通过共享词嵌入矩阵,使模型能够在不同任务下协作,从而提高模型的泛化能力。

多任务学习在自然语言处理领域得到了广泛应用,尤其是在处理有限训练数据时。随着模型在多个任务上的评测,多任务学习的重要性日益凸显,相关评估基准也在不断涌现。

2013年——词嵌入

传统的词袋模型通过稀疏向量表示文本已有悠久历史,而稠密向量表示词语的词嵌入技术在2001年首次出现。2013年,Mikolov等人通过去除隐藏层和优化目标函数,使得词嵌入模型的训练更加高效。这种简单但有效的改进与高效的word2vec模型结合,使得大规模词嵌入模型的训练成为可能。

Word2vec提供了两种实现方式:连续词袋模型(CBOW)和Skip-gram。它们分别通过周围词预测中心词和通过中心词预测周围词来构建词嵌入。这些词嵌入不仅能够捕捉性别、时态等关系,还能在下游任务中显著提升性能。尽管word2vec模型广受欢迎,但其他方法如矩阵分解也能达到类似效果。

2013年——神经网络在自然语言处理中的应用

2013年和2014年标志着自然语言处理领域神经网络时代的开启。三种主要的神经网络类型广泛应用:循环神经网络(RNNs)、卷积神经网络(CNNs)和结构递归神经网络(SRNs)。

循环神经网络是处理动态输入序列的首选,而长短期记忆网络(LSTMs)则因其在梯度消失和梯度爆炸问题上的优越表现而广泛使用。卷积神经网络(CNNs)则通过并行操作和更大的上下文覆盖能力,成为另一种强大的选择。结构递归神经网络(SRNs)则以树形结构表示语言,提供了另一种处理方式。

2014年——序列到序列模型

2014年,Sutskever等人提出了序列到序列学习框架,该框架使用神经网络将一个序列映射到另一个序列。在这一框架中,编码器将输入序列压缩为向量表示,解码器根据编码器的状态逐个预测输出符号。这一框架在机器翻译中表现出色,谷歌于2016年宣布将神经机器翻译模型取代基于短语的机器翻译模型。

序列到序列模型不仅限于机器翻译,还可以应用于各种自然语言生成任务,如基于图片生成描述、基于表格生成文本等。

2015年——注意力机制

注意力机制是神经网络机器翻译的核心创新之一,它通过让解码器回顾源序列的隐藏状态,解决了编码器压缩信息不足的问题。这一机制在各种需要根据输入特定部分做决策的任务中得到广泛应用,如句法分析、阅读理解和单样本学习等。

注意力机制不仅能提供输入与输出之间的关联信息,还能够通过注意力权重揭示模型内部的运作机制。

2015年——基于记忆的神经网络

基于记忆的神经网络引入了明确的记忆单元,如神经图灵机(NTMs)、记忆网络(MNets)等。这些模型通过记忆模块实现了对输入信息的长期保存和处理,特别适用于语言模型构建和阅读理解等任务。

2018年——预训练的语言模型

预训练的语言模型通过无标签文本进行训练,无需依赖监督数据,因此可以扩展到大规模语料库。这些模型不仅在多种任务中表现出色,还能在数据稀缺的情况下有效学习,尤其适合低资源语言的应用。

其他里程碑

一些其他进展虽不如上述里程碑那么知名,但也产生了广泛影响。例如,基于字符的描述(Character-based representations)在处理形态丰富的语言时表现出色;对抗学习(Adversarial learning)提高了模型的鲁棒性;强化学习(Reinforcement learning)在时间依赖性任务中展示了其优势。

    本文来源:图灵汇
责任编辑: : 李丹
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
大里自然语言发展史年来处理程碑
    下一篇