失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > CS231n李飞飞计算机视觉 循环神经网络

CS231n李飞飞计算机视觉 循环神经网络

时间:2021-01-31 16:17:30

相关推荐

CS231n李飞飞计算机视觉 循环神经网络

循环神经网络

循环神经网络:Recurrent Nerual Network,简称RNN。

RNN可以有很多种结构,包括一对一的Vanilla网络,一对多的图像字幕,多对一的情感分类(处理一定数量的按顺序排列的词,然后试着把句子里的词,按正面和负面情感分类),多对多的机器翻译(将一个序列翻译成另一个序列)、视频分类。

RNN例子

RN有其自己内部的状态,但是在每个时间点接收内容,然后结合函数来修改自己的状态,也就是说影响RNN状态的因素不止有自己的状态还有接受内容。

可以将RNN的状态表达成这样一个函数:

其中表示RNN在t时刻的状态,表示在t时刻RNN收到的内容。表示参数为w的函数。

是对的权重,是对的权重。

图像标注

考虑一个图像标注的网络

网络分为两部分,CNN和RNN,CNN用来处理图像,RNN用来负责建立序列模型。

将图像放入CNN中,得到v,然后利用第二个公式计算出h(这里表示图像信息进入RNN的第一步的情况。)

而是序列的第一个单词的分布情况,假设根据,发现最可能出现的词语是“稻草”。

然后将“稻草”对应的向量放入RNN的底部,得到序列中第二个单词的描述“帽子‘”,

然后将“帽子”对应的向量放入RNN的底部,依次循环直到得到一个结束标志。最终RNN价格这张图片描述成草帽。

y向量的维数等于单词表的数目加一,这是因为考虑到了结束标志。

LSTM

RNN只有一个隐藏状态h,而LSTM包含多个隐藏状态h,c。

其中i表示input,f表示forget,o表示output,f,i,o的值是0~1,g的值是-1~1

表示细胞状态,的更新依赖f(忘记门)和i(输入门)两个变量,首先与f逐元素相乘,舍弃的部分信息,f中为1的元素对应的信息得以完全保留,为0的元素对应的信息会被丢弃。然后,i与g逐元素相乘,表示细胞状态受输入i的影响。两者加和得到新的目标状态。

而再来影响,计算o(输出门)与的点积,然后得到。

计算过程如下:

对比LSTM和RNN

RNN全部的隐藏状态影响下一状态。而LSTM只选择部分隐藏状态影响下一状态。RNN可能会发生梯度消失的情况,而LSTM因为有加法的原因回均匀地分配梯度,不会产生梯度消失的问题。

总结

RNN设计灵魂RNN简单但效果不够好LSTM的加法会使梯度流加速RNN梯度的反向传播会造成梯度爆炸或梯度消失,梯度爆炸问题可以通过梯度裁剪来解决,梯度消失问题就通过增加额外的加法解决(类似LSTM)

参考:/coldyan/p/8385021.html

如果觉得《CS231n李飞飞计算机视觉 循环神经网络》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。