当前位置:   article > 正文

RNN基本结构解读_rnn结构

rnn结构


在计算机视觉领域,最常用的网络结构就是CNN卷积神经网络。但是在现实中我们存在很多序列型数据,比如某一天的温度记录,一段时间内某支股票的变化情况,文本序列,乃至视频流,我们都可以认为其实序列型数据,它们在时间上存在先后关系。处理这些序列数据最常用、最传统的深度学习模型就是 循环神经网络RNN(Recurrent Neural Network)。自然语言处理所要面对的主要是这种文本序列。本文将详细介绍RNN的基本机构。

1. RNN的多种结构

与CNN不同的是,RNN具有多种网络结构。联系实际很容易想到,在不同的时间段内,序列数据的长短总是不一致的。就像我们说话,每一句的长度都是不确定的。由此我们得出了以上五种基本结构。

1.1 单层网络结构

最基本的单层网络结构,输入是 x x x,经过变换 W ⋅ x + b W·x + b Wx+b和激活函数 f f f得到输出 y y y

img
1.2 经典RNN网络结构

序列型的数据不太好用原始的神经网络处理。为了处理序列建模问题,RNN引入了隐藏态 h h h(hidden state)的概念。 h h h可以对序列型的数据提取特征,接着再转换为输出。

img

如上图,我们从 h 1 h_1 h1开始逐步推到其计算过程。首选阐述图中网络结构的基本含义:

  • 圆圈或方块表示向量
  • 一个箭头表示对该向量做一次变换

如图所示, h 0 h_0 h0 x 1 x_1 x1分别有一个箭头连接 h 1 h_1 h1,表示对 h 0 h_0 h0 x 1 x_1 x1分别作了一次变化。图中的 U U U W W W是参数矩阵, b b b是偏置项参数, f f f是激活函数。在经典的RNN网络结构中,通常使用 t a n h tanh tanh作为激活函数。有了 h 1 h_1 h1的计算,我们很容易可以推出之后的计算流程,每一步的过程与第一步基本一致。

img

这里需要特别强调的是:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/720185
推荐阅读
相关标签