购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2.6 自然语言处理的重大突破

自然语言处理的发展可以追溯到20世纪50年代的图灵测试,其经历了从规则到统计,再到现在的深度学习的发展过程。早期基于传统机器学习模型的自然语言处理算法一般都是基于浅层模型(如SVM和logistic回归)的,这些模型都在非常高维和稀疏的特征上进行训练和学习,会面临维度爆炸等难以解决的问题。

2003年,Bengio等人在论文 A Neural Probabilistic Language Model [6] 中提出了神经网络语言模型,其中作为副产品,词向量掀开了用稠密的多维向量来编码词义的方式。Mikolov等人在2013年发表了文章 Distributed Representations of Words and Phrases and Their Compositionality ,真正使从大规模语料中获得词向量变为现实。

自然语言处理的研究者很早就开始研究如何对句子进行编码和解码。使用CNN进行句子建模可以追溯到Collobert和Weston在2008年的研究,他们使用多任务学习为不同的NLP任务输出多个预测,如词性标注、语块分割、命名实体标签和语义相似词等。

对词语序列使用RNN及其变种的研究从RNN被提出来后就没有间断过,llya Sutskever等人在2014年的文章 Sequence to Sequence Learning with Neural Networks 中提出了一种通用深度LSTM编码器-解码器框架,其可以实现序列之间的映射。这种seq2seq编解码结构后来被广泛用于机器翻译、生成式聊天机器人等自然语言处理任务。

2014年,Dzmitry Bahdanau和Kyunghyun Cho等人在论文 Neural Machine Translation by Jointly Learning to Align and Translate 中首次将注意力机制应用到机器翻译任务,改进了机器翻译在长序列上的性能,使注意力机制开始得到关注。

2017年,Ashish Vaswani等人在 Attention Is All You Need 中提出了Transformer,它完全去除了编码步中的循环和卷积,仅依赖注意力机制来捕捉输入和输出之间的全局关系,使整个架构更加并行化,并使在翻译、解析等任务上训练得到积极结果所需的时间更少。至此,Transformer作为一种更为强大的特征提取器在自然语言处理任务中获得了非常多的应用。

特征提取器除了RNN、CNN、Transformer,自然语言处理近年来出现了一种新的任务处理模型,即预训练模型。预训练模型最早可以追溯到词向量,在词向量中,有大量编码了的词语之间的关系信息,可用于下游的自然语言处理任务,但因为词向量是一种静态模型,无法随着语境的变化动态改变表征值,因此其无法解决多义词的问题。为解决此问题,2017年,ELMO模型在 Deep Contextualized Word Representation 中被提出。ELMO模型的思想是用事先训练好的语言模型来学习一个单词的Word Embedding,在实际使用Word Embedding时,再利用该语言模型根据上下文单词的语义去调整单词的Word Embedding表示。经过调整后的Word Embedding能表达单词在此上下文中的具体含义,自然也就能克服多义词的问题。

2018年,Generative Pre-Training(GPT)模型被提出,其采用单向语言模型,用Transformer作为特征抽取器,取得了非常不错的效果。2018年10月,谷歌在论文 Bidirectional Encoder Representation from Transformers 中推出了BERT模型,刷新了几乎所有NLP任务的榜单。

2019年2月,OpenAI基于更大的模型,以及规模更大、质量更好的数据集推出了GPT2.0,其语言生成能力令人惊叹。2019年6月,XLNet诞生于论文 XLNet:Generalized Autoregressive Pretraining for Language Understanding 中,它分别吸取了BERT和GPT两类模型的长处,获得了很好的效果。从2017年左右起,深度学习在自然语言处理中的应用被广泛关注。 lahbQpbeNUmR1/0vM25hSzgHeaZaF6QeYk5l/uGwOs0mm3R2twc5DP/vwno3PDR0

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开