统计自然语言处理基础_【精读】自然语言处理基础之RNN

我们在前两篇【精读】自然语言处理基础中提到了,无论是seq2seq模型,还是注意力(attention)机制,其中语言序列的编码解码都经过了一种名为RNN的神经网络。

RNN神经网络到底是何方神圣呢?

RNN全名:Recurrent Neural Networks,也叫递归神经网络或循环神经网络。是深度神经网络(DNN)的一种

RNN和深度神经网络有什么区别呢?

举个简单的例子,比如在一个人机对话场景中,有2句话

句1:arrive China on May 2nd

句2:leave China on May 2nd

如果使用的DNN,机器对句1和句2中的China的理解将没有区别

而我们可以明显的知道句1中的China是目的地,而句2中的China是出发地

RNN解决的问题

RNN就可以克服上述的困难,很好的处理和序列相关的数据(如时间序列,语言序列等)

在上面两例子中,机器理解句1中的China,会参考前面一个词的输入“arrive”

而对于句子2中的China,机器会参考前面的“leave”,因此最后China会分别理解为“目的地”和“出发地

统计自然语言处理基础_【精读】自然语言处理基础之RNN_第1张图片

如下图所示,中间隐层A,正在读取某个输入Xt,并输出一个值 ht。循环网络可以使得信息从当前时刻传递到下一时刻。也就是说X0的信息会传到X1中,X1的信息会传到X2中,以此类推

如果我们将这个循环展开:

统计自然语言处理基础_【精读】自然语言处理基础之RNN_第2张图片

RNN的应用场景

语言模型;文本生成;机器翻译;语音识别

图像描述:前四种应用场景我们都较为熟悉,而这一种应用使得RNN和卷积神经网络(convolutional Neural Networks, CNNs)一样,对无标图像描述自动生成中得到应用。

将CNNs与RNNs结合进行图像描述自动生成。这是一个非常神奇的研究与应用。该组合模型能够根据图像的特征生成描述

统计自然语言处理基础_【精读】自然语言处理基础之RNN_第3张图片

你可能感兴趣的:(统计自然语言处理基础)