循环神经网络 (RNN) 的长期依赖问题

栏目: 编程工具 · 发布时间: 7年前

内容简介:时间序列数据是在不同时间点上统计同一指标,并按照时间先后排列成的一个集合。时间序列的主要作用是了解一个指标的长期趋势和预测未来。循环神经网络(Recurrent Neural Network或RNN )就是一类用于处理序列数据的神经网络。RNN的状态,不仅受输入影响,还受前一时刻状态的影响。

时间序列数据是在不同时间点上统计同一指标,并按照时间先后排列成的一个集合。时间序列的主要作用是了解一个指标的长期趋势和预测未来。

循环神经网络(Recurrent Neural Network或RNN )就是一类用于处理序列数据的神经网络。RNN的状态,不仅受输入影响,还受前一时刻状态的影响。

循环神经网络 (RNN) 的长期依赖问题

一种RNN的设计模式

上图网络结构中,各循环连接是在隐藏层之间,且是共享权重的,设循环连接的权重是W。

什么是长期依赖

        长期依赖是指当前系统的状态,可能受很长时间之前系统状态的影响,是RNN中无法解决的一个问题。

如果从“ 这块冰糖味道真? ”来预测下一个词,是很容易得出“ 甜 ”结果的。但是如果有这么一句话,“ 他吃了一口菜,被辣的流出了眼泪,满脸通红。旁边的人赶紧给他倒了一杯凉水,他咕咚咕咚喝了两口,才逐渐恢复正常。他气愤地说道:这个菜味道真? ”,让你从这句话来预测下一个词,确实很难预测的。因为出现了长期依赖,预测结果要依赖于很长时间之前的信息。

循环神经网络 (RNN) 的长期依赖问题

长期依赖问题

理论上,通过调整参数,RNN是可以学习到时间久远的信息的。但是,实践中的结论是,RNN很难学习到这种信息的。 RNN 会丧失学习时间价格较大的信息的能力, 导致长期记忆失效。

长期记忆失效的原因

RNN中,我们可以认为,循环连接是非常简单的,缺少非线性激活函数的。以文章第一张图的RNN为例,连接关系可以表示为。如果abs(W)<1,因为前的系数为W,也就是t-1时间的状态信息传递到t时刻,成为了原来的W倍。如果逐层迭代,将写成含的表达式,那么前面的系数会是。abs(W)<1时,是非常小的一个数,可以认为对几乎不产生影响。也就是0时刻的信息几乎被遗忘,就导致了长期记忆失效。

解决长期依赖问题有很多方法的,其中长短时记忆网络(LSTM)是比较常用的一个。

参考资料

[1] Yoshua Bengio.Deep Learning

[2] Christopher Olah.http://colah.github.io/posts/2015-08-Understanding-LSTMs/

本文作者:曲曲菜(微信公众号: 曲曲菜 )

原创作品,未标明作者不得转载。

循环神经网络 (RNN) 的长期依赖问题

更多AI和金融知识,长按图片关注作者公众号


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

金融数量分析

金融数量分析

郑志勇 / 北京航空航天大学出版社 / 2014-7-1 / CNY 58.00

《金融数量分析——基于MATLAB编程(第3版)》一书中的案例均来源于作者的工作实际,并充分体现“案例的实用性、程序的可模仿性”,程序中附有详细的注释。例如,投资组合管理、KMV模型计算、期权定价模型与数值方法、风险价值VaR的计算等案例程序,读者可以直接使用或根据需要在源代码的基础上修改、完善。 本书共23章。前两章分别对金融市场的基本概况与MATLAB的基础知识进行概述;接下来为20个金......一起来看看 《金融数量分析》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具