序列模型和循环网络

Sequence Modeling and Recurrent Networks

Sequence modeling tasks

序列模型和循环网络_第1张图片

在以往的模型中,各个输入之间是独立分布的 x ( i ) x^{(i)} x(i) 之间是相互独立的,同样输出 y ( i ) y^{(i)} y(i)之间也是相互独立的。

但是在序列模型中,输入输出是一个特定的序列,我们需要用到序列的相关信息。不能把各个输入看作是相互独立的存在。

序列模型和循环网络_第2张图片

autoregressive prediction
执行序列预测任务,输出依赖于之前的输入

序列模型和循环网络_第3张图片

Recurrent neural networks 循环神经网络

循环神经会维护一个 隐藏层,每个隐藏层都是通过前一层的隐藏层和当前的输入来计算的。

序列模型和循环网络_第4张图片

在整个模型中都只有一套 W t t , W h x , W y h , b h , b y W_{tt}, W_{hx}, W_{yh}, b_h, b_y Wtt,Whx,Wyh,bh,by,但是会对每一层都计算一个 h t h_t ht

train

序列模型和循环网络_第5张图片

RNN 堆叠

通过RNN堆叠可以将每一层做的很深,这里的深是指每一层的隐藏层更深。从x到y要经历更多的隐藏层。

序列模型和循环网络_第6张图片

激活值/梯度 爆炸 消失

序列模型和循环网络_第7张图片

序列模型和循环网络_第8张图片

和其他拥有很深的MLP 网络类似,RNN 也会面临激活值 、梯度值的爆炸或者消失。之前我们使用的normalization (batch-norm\layer-norm)

序列模型和循环网络_第9张图片

使用 sigmoid函数和tanh函数可以限制激活值和梯度的大小,但是并不能阻止梯度和激活值的消失。

LSTM

使用LSTM可以避免一些问题上的激活值消失

序列模型和循环网络_第10张图片

LSTM 的结构就扔在这里了,至于怎么工作的,不深究了。。。

你可能感兴趣的:(deep,learning,system,rnn)