本周的深度学习课程进入了第五课,也就是最后一课。学完这一段,我们应该就会开组会然后讨论下一步的安排了。。。无论如何,该将重心重新挪回到算法,软构,自动机等考试的准备上了。

前言

RNN循环神经网络实际上是一种处理序列的专用网络结构,比如语言等,因为词汇之间的联系和关系以及其所在的位置对实际上的意思是有直接影响的,如果这件事情用神经网络来做的话无法捕捉到具体位置所具有的特性。

介绍

一图以蔽之是下图。我个人认为可以类比核糖体去理解。当然初学者我们不应该这么精简的,于是我们继续看下面的展开和解释。
深度学习笔记(30):RNN循环神经网络模型总结
深度学习笔记(30):RNN循环神经网络模型总结

接下来是RNN详细介绍:我们要想好好理解一下,就需要将其按照时间展开(为什么说是按照时间展开呢,是因为其实图中所示的s节点前后的U,V权重矩阵其实一直是一个,就像是说你拿着一个工具,现在用一下,以后用一下,然后有人在给你拍照片,观看录像的时候你发现虽然你拿的还是同一个工具,但是却每个时刻有不同的内在性质,当然如果你高中生物还记得理解核糖体理解起来应该很简单)
深度学习笔记(30):RNN循环神经网络模型总结其实过程就是这样,比如说你输入了一个序列I love Harbin Insitute of Technology ,然后你想得到一组对应的y值,可能是情感态度,可能是想找出来其中的那些位置是名词等等。然后你就把我们的RNN核糖体放在一段,然后疯狂转录出来y。我们注意在其中一个时间点上,同时接受前一个cell(时间展开后的)的隐藏状态sst-1和rnn所读取的序列所在的位置的xxt,产生传递到下一个cell(时间展开后的)的隐藏状态,然后开出来一个支路,再次使用softmax层输出该位置的ot(也就是y预测值,在很多资料中我们把softmax的输出称为o)。对比左右两图,逐渐用右边的图片将左边的图片动态化就可以了。
反向传播的公式时间有限,这里不推导了,在主流的框架中,通过计算图,这个过程可以自动完成。

参考资料

https://zybuluo.com/hanbingtao/note/541458