LSTM原理浅理解

        LSTM,全称是Long-Short Term Memory ,即长短期记忆,是一种有监督型的深度学习网络模型。该模型与其他模型的最大区别是具备双时序记忆功能(包括长期记忆与短期记忆),广泛应用于时序相关数据集的处理。

         那为什么LSTM能够实现时序数据的处理能力呢?这得从深度学习(机器学习)的本质中探究:

        当前,我们使用的深度学习其基本架构主要集中在神经网络层面,例如卷积神经网络、循环神经网络、多层感知机等等,它们有一个最大的共同点:都需要构建隐藏层来运算。而数据在隐藏层神经元之间的流动始终离不开一个参数——ω,也就是权重。

        换句话来说,神经网络的基本要素ω所形成的线性方程组,构建了深度学习的核心根基。我们构建深度学习算法的底层逻辑,就是找到一组与数据集有着深度关联的ω,从而实现数据输入输出的对应。

        现在我们来看一下LSTM,LSTM拥有两套记忆系统,分别是长期记忆系统和短期记忆系统。两者之间既相对独立又相互关联,可以理解为拥有两套ω,加上神经网络的一套,共三套ω,从而实现时序数据处理。

        接下来我们来关注一下LSTM的三大控制系统:遗忘门、记忆门、输出门。

        遗忘门:用来决定是否遗忘历史记忆的信息。其原理为通过比较当前时刻信息与历史记忆信息之间的关联程度,赋予历史记忆数据一个权值(通过sigmoid函数控制权值在[0,1]),从而决定历史记忆数据的删除与保留。主要服务于长期记忆系统,关系到历史长期记忆哪些需要删减。

        输入门:也称为“记忆门”,用来决定是否记忆当前时刻的信息。其原理为通过提取当前时刻信息中的重要部分(通过tanh函数提取),提取出的部分再经过进一步筛选(通过sigmoid函数对每个数据点进行“评级”,取出最高级),最终决定数据的上传与否。主要服务于长期记忆系统,关系到当前记忆哪些需要增添到长期记忆中。

        输出门:用来实现当前时刻的数据输出。其原理为通过短期记忆系统中的前一时刻信息与当前时刻信息的整合(用sigmoid函数进行),然后将长期记忆系统中的长期历史信息压缩(用tanh函数进行),两者相结合共同构成当前时刻的输出。主要服务于短期记忆系统,关系到整个模型当前时刻的输出。

        在这里,我们稍稍补充一下上述三大门中涉及到的两个函数:sigmoid函数和tanh函数。

        Sigmoid函数:是一个在生物学中常见的S型函数,也称为S型生长曲线。在神经网络中,其主要用于激活函数,将变量映射到[0,1],其均值为0.5。函数图形如下:

        Sigmoid函数可以将它理解为一种“寻找重要性”的函数,将数据信息转换为权重信息,是一种信息数字化工具。

        Tanh函数:是一种双曲正切函数,在神经网络中,其主要用于激活函数,将变量映射到[-1,1],与sigmoid函数最大的区别就在于tanh函数的均值为0,解决了Sigmoid函数的不以0为中心输出问题. 函数图形如下:

        tanh函数也是一种“寻找重要性”的函数,但由于它是一个奇函数,尤其在处理需要输出对称数据的场景中表现突出。例如在信息的压缩与提取中,使用tanh函数能够给数据加上正负,从而代表了数据的流动方向。

以上就是关于LSTM原理的大致剖析,总结一下:LSTM通过三大门控单元,完成了时序数据的采集、处理、输出以及记忆,形成了一套独特的时间机器预测系统,对于时序性要求高的数据集而言有着举足轻重的作用。

PS:如果想深入了解LSTM解决梯度消失问题的详细原理解析,请关注《LSTM梯度问题》这篇文章!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值