利用神经网络处理序列问题
普通的神经网络主要处理的是ID数据的问题,比如分类问题,回归问题,特征表达问题,学习到的是函数,输入X,得到Y。
用于预测序列数据,序列是指向量的序列,神经网络记住之前发生的事情,学出来的是状态机,而不是函数
分类:
一到多,输入的不是序列,而输出的是序列,如图片的文本描述
多到一,输入文本或视频,对文本进行分类,输入一个个词语
多到多,处理序列输入,但输出可以是序列也可以不是序列,如语言翻译;
多到多,视频描述,根据每一帧,给出一句一句的描述,即视频的解说文字
问题解决
序列预测:输入Hello,worl,输出d,有Xt-2,xt-1,xt,xt+1,xt+2
在t时刻通过模型来估计,xt+1=f(xt,,,,,xt-r)
问题是内部状态难以建模和观察,对长时间范围内的场景难以建模和观察
解决方案:
引入内部的隐含状态变量xt+1=f(xt,,,,,xt-r,zt,,,,,zt-r)
zt+1=g(xt+1,,,,,xt-r,zt,,,,zt-r)
即在每次运行之后,RNN在分析X(t)时会产生一个S(t),在分析X(t+1)时,Y(t)取决于S(t)和S(t+1)的整体