笔记转载于GitHub项目:https://github.com/NLP-LOVE/Introduction-NLP
前面已经讲过了隐马尔可夫模型、感知机、条件随机场、朴素贝叶斯模型、支持向量机等传统机器学习模型,同时,为了将这些机器学习模型应用于 NLP,我们掌握了特征模板、TF-IDF、词袋向量等特征提取方法。而这些方法的局限性表现为如下:
为了解决传统机器学习与自然语言处理中的数据稀疏、人工特征模板和误差传播等问题,人们将注意力转向了另一种机器学习潮流的研究–深度学习。
作为连接传统机器学习与深度学习的桥梁,词向量一直是入门深度学习的第一站。词向量的训练方法有很多种,word2vec 是其中最著名的一种,还有 fastText、Glove、BERT和最近很流行的 XLNet 等。
接着,句法分析器对当前的状态提取上述三大类特征,分别记作 w、t 和 l。不同于传统方法,此处为每个特征分配一个向量,于是得到三个稠密向量 Xw、Xt 和 Xl。接着,将这三个向量拼接起来输人到含有一个隐藏层的神经网络,并且使用立方函数激活,亦即得到隐藏层的特征向量: h=(W1(xw⊕xt⊕xl))3 h=\left(W_{1}\left(x^{w} \oplus x^{t} \oplus x^{l}\right)\right)^{3} h=(W1(xw⊕xt⊕xl))3 接着,对于 k 种标签而言,Arc-Standard 一共存在 2k +1 种可能的转移动作。此时只需将特征向量 h 输人到多元逻辑斯谛回归分类器(可以看作神经网络中的输出层)中即可得到转移动作的概率分布: p=softmax(W2h) p=softmax\left(W_{2} h\right) p=softmax(W2h) 最后选取 p 中最大概率所对应的转移动作并执行即可。训练时,采用 softmax 交叉熵损失函数并且以随机梯度下降法优化。
总之,自然语言处理的未来图景宏伟而广阔。自然语言处理入门系列文章就作为这条漫漫长路上的一块垫脚石,希望给予读者一些必备的入门概念。至于接下来的修行,前路漫漫,与君共勉。
HanLP何晗–《自然语言处理入门》笔记:
https://github.com/NLP-LOVE/Introduction-NLP
目录