当前位置: 首页 > news >正文

(done) LSTM 详解 (包括它为什么能缓解梯度消失)

RNN 参考视频:https://www.bilibili.com/video/BV1e5411K7oW/?p=2&spm_id_from=pageDriver&vd_source=7a1a0bc74158c6993c7355c5490fc600

LSTM 参考视频:https://www.bilibili.com/video/BV1qM4y1M7Nv?p=5&vd_source=7a1a0bc74158c6993c7355c5490fc600

斯坦福教授讲解的 RNN 和 LSTM:https://www.bilibili.com/video/BV1s64y1P7Qm?p=9&vd_source=7a1a0bc74158c6993c7355c5490fc600 (这个视频并没有提到 LSTM 的反向传播推导,skip)


先来复习一下 RNN,以下是 RNN 网络模型结构的示图:
在这里插入图片描述

需要注意的是,RNN 神经网络中的激活函数通常使用 tanh,原因参考这篇博客 【sigmod Relu tanh三种常见的激活函数】
链接在:https://blog.csdn.net/purple_love/article/details/134487378


首先要理解 LSTM 的 motivation:已知 RNN 模型能够处理时间序列信息。但是它有一个问题,RNN 模型在进行反向传播算法训练的时候,对于距离 “cur_time” 较远的信息存在 “梯度消失” 问题,所以 RNN 只具备短期记忆、不具备长期记忆。此外,RNN 也很难区分哪些信息是重要的,哪些信息是不重要的。因此,需要对 RNN 模型进行改良。而其中,最成功的改良产品就是 LSTM。

如下图,是 LSTM 的网络结构
在这里插入图片描述
可以和 RNN 的网络结构对比一下:
在这里插入图片描述

为了理解 LSTM,我们要同时理解它的前向传播过程和反向传播过程,让我们看看下面的三张图片:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如下图是对 LSTM 的反向传播的手算推导,可以证明 LSTM 能够缓解梯度消失问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/342155.html

相关文章:

  • springboot使用研究
  • 老旧房屋用电线路故障引起的电气火灾预防对策​
  • OpenAI发布GPT-4.0使用指南
  • 【WEEK11】学习目标及总结【Spring Boot】【中文版】
  • Unity 性能优化之图片优化(八)
  • C++类细节,面试题02
  • Stylus的引入
  • 前端框架-echarts
  • 【StarRocks系列】 Trino 方言支持
  • 【2024最新华为OD-C卷试题汇总】URL拼接 (100分) - 三语言AC题解(Python/Java/Cpp)
  • 【ARM 嵌入式 C 字符串系列 23.7 -- C 实现函数 isdigit 和 isxdigit】
  • 三分钟了解计算机网络核心概念-数据链路层和物理层
  • 数据结构===堆
  • AAA、RADIUS、TACACS、Diameter协议介绍
  • Nacos高频面试题及参考答案(2万字长文)
  • CMakeLists.txt语法规则:条件判断中表达式说明四
  • Hive概述
  • buuctf-misc-33.[BJDCTF2020]藏藏藏1
  • golang 基础知识细节回顾
  • 递归陷阱七例
  • 【3D基础】坐标转换——地理坐标投影到平面
  • 颈椎锻炼方式
  • 测试环境搭建:JDK+Tomcat+Mysql+Redis
  • (delphi11最新学习资料) Object Pascal 学习笔记---第11章第1节(混合引用中的错误)
  • 代码随想录算法训练营第三天 | 链表理论基础,203.移除链表元素,707.设计链表,206.反转链表
  • 如何利用仪表构造InfiniBand流量在数据中心测试中的应用
  • Kubernetes 文档 / 概念 / Kubernetes 架构 / 节点
  • ICode国际青少年编程竞赛- Python-1级训练场-for循环练习
  • Flutter分模块开发、模块可单独启动、包含Provider
  • Element-UI快速入门:构建优雅的Vue.js应用界面