深度学习:自然语言处理的基本原理

概念:

        自然语言处理(Natural Language Processing,简称NLP)是人工智能和语言学领域的一个分支,它致力于研究如何让计算机能够理解、解释和生成人类语言,以及如何实现人与计算机之间的有效通信。自然语言处理的目的是缩小人类语言和计算机之间的差距。

语言转换方法:统计语言模型,神经语言模型

统计语言模型的问题:

1、参数空间爆炸式增长,无法处理(N>3)的数据(只能最高处理两个数据)

2、无法处理词与词的内在联系

神经语言模型:词嵌入embedding

在处理自然语言时,通常将词语或者字做向量化

如何解决唯独灾难问题:

通过神经网络训练,将每个词都映射到一个较短的词向量上来。

例如:                    转换短的词向量

0 0 0 0 0 0 1         0.62 0.23 0.12  0

0 0 0 0 0 1 0         0.22 0.43 1       0

0 0 0 0 1 0 0         0.11 0.25 0.02  0

0 0 0 1 0 0 0          0.65 0.28 0.12 0

这种将高维度的词表示转换为低维度的词表示的方法,我们称之为词嵌入。

word2vec

        一种用于生成词嵌入(word embeddings)的模型,它能够将词汇映射到高维空间中的向量,这些向量能够捕捉词汇之间的语义关系。

1、CBOW:以上下文词汇预测当前词,即用ωt−2、ωt−1、 ωt+1、 ωt+2预测ωt

2、skipgram:以当前词预测其上下文词汇,即用ωt预测ωt−2、ωt−1、 ωt+1、 ωt+2

模型的训练过程:

1、当前词的上下文词语的one-hot编码输入到输入层。

2、这些词分别乘以同一个矩阵ωV*N后分别得到各自的1*N 向量。

3、将多个这些1*N 向量取平均为一个1*N 向量。

4、将这个1*N 向量乘矩阵 ω’N*V ,变成一个1*V 向量。

5、将1*V 向量softmax归一化后输出取每个词的概率向量1*V

6、将概率值最大的数对应的词作为预测词。

7、将预测的结果1*V 向量和真实标签1*V 向量(真实标签中的V个值中有一个是1,其他是0)计算误差

8、在每次前向传播之后反向传播误差,不断调整 ωV*N和ω’N*V矩阵的值。

上一篇:计算机知识科普问答--22(106-110)


下一篇:戴尔电脑怎么开启vt虚拟化_戴尔电脑新旧机型开启vt虚拟化教程