与时间有关的神经网络 - RNN

在进行对于联邦遗忘学习的问题研究上,考虑到是不是可能遗忘的程度或者数据是和时间有关的,所以不知道是不是可以使用长短期记忆网络,因此对于RNN和LSTM进行一定的学习

主要矛盾

使用什么样子的数据,输出什么样子的数据,解决什么样的问题

RNN

输入:与时间有关的序列

单层网络-经典RNN结构

RNN中提出了隐状态h(hidden state)的概念,隐状态h可以对序列形的数据提取特征,接着再转换为输出

RNN的计算是一种递推式的计算,其中使用的 W , U , b W,U,b W,U,b都是相同的参数,也就是说在RNN中的每个步骤参数是共享的(但是LSTM中不共享,因为RNN的权值是在同一个向量中,只是不同时刻而已),递推公式为 h i = f ( U x i + W h i − 1 + b ) h_i = f(Ux_i + Wh_{i-1} + b) hi=f(Uxi+Whi1+b)
在这里插入图片描述

RNN的输出值直接通过h进行计算,输出同样是共享参数,计算公式为 y i = s o f t m a x ( V h i + c ) y_i = softmax(Vh_i + c) yi=softmax(Vhi+c)
在这里插入图片描述

通过观察可以看到RNN的输入和输出的序列长度必须是等长的。

RNN的应用

RNN可以被用来使用先前的事件推断后续的事件,而不是在推断后面事件的时候从零推断。

如果将上面的结构无限延长,那么这个屏幕的横向估计也放不下,之前提到这个结构的公式可以写成一个递推公式,那何不将结构也画成一个递推的结构?
在这里插入图片描述
将上面的递推结构用公式表达一下, h t = s o f t m a x [ V ( U x t + W h t − 1 + b ) + c ] h_t = softmax[V(Ux_t + Wh_{t - 1} + b) + c] ht=softmax[V(Uxt+Wht1+b)+c]

链式的特征揭示了RNN本质上是与序列和列表有关的,但是RNN的弊端就是他会丧失学习非常远的信息的能力,RNN会受到短时记忆的影响,如果序列足够长,那他们很难将信息从较早的时间步传送到后面的时间步

LSTM

Long Short Term网络,是一种特殊类型的RNN,可以学习长期依赖的信息,它和RNN没有什么特别大的结构的不同,只是使用了不同的函数计算隐状态。

粗略总结

RNN倾向近期记忆的影响,LSTM倾向于长期记忆的影响

猜你喜欢

转载自blog.csdn.net/x_fengmo/article/details/132215595
今日推荐