【机器学习】20. RNN - Recurrent Neural Networks 和 LSTM

1. RNN定义

  • 用于顺序数据

  • 文本数据是序列数据的一个例子

  • 句子是单词的序列------一个单词接另一个单词

  • 每个句子可能有不同数量的单词(长度可变)

  • 每个句子之间可能有长距离的依赖关系

  • rnn可以记住序列中较早的相关信息

  • RNN在每个时间点取序列中的1个元素。

  • 神经元在某一个时间点的输出,在下一个时间点(或另一个时间点)反馈给同一神经元

  • 结果:RNN对过去的激活有记忆(因此过去的输入促成了这些激活)

  • RNN可以捕获长距离依赖->对序列有用

2. 简单RNN

简单RNN含有由1个隐藏层构成的前馈神经网络, 这个隐藏层特别的, 含有一个记忆缓存, 会存储隐藏层之前一个时间步的状态. 在每一个时间步, 记忆缓存中的数据会和下一组输入结合作为隐藏层神经元的下一次输入.

  • unroll 图

图片来源:https://blog.csdn.net/v_JULY_v/article/details/89894058

RNN 会受到短时记忆的影响。如果一条序列足够长,那它们将很难将信息从较早的时间步传送到后面的时间步。

在递归神经网络中,获得小梯度更新的层会停止学习------ 那些通常是较早的层。 由于这些层不学习,RNN会忘记它在较长序列中以前看到的内容,因此RNN只具有短时记忆。

在反向传播过程中, 误差梯度会在每个时间步中与w_hh 多次相乘, 如果这些权重过小, 这种多次相乘会导致梯度逐渐变得非常小, 最终几乎消失

而梯度爆炸则是因为计算的难度越来越复杂导致。

LSTM,可以在一定程度上解决梯度消失和梯度爆炸这两个问题

3. LSTM

4张图,直接了解完LSTM

3.1. 忘记门

忘记门会读取上一个输出h_{t-1}和当前输入x_{t},做一个Sigmoid 的非线性映射,然后输出一个向量f_{t}

3.2. 输入门

3.3 细胞状态

3.4. 输出门

C 是细胞状态

相关推荐
Niuguangshuo5 小时前
深入解析Stable Diffusion基石——潜在扩散模型(LDMs)
人工智能·计算机视觉·stable diffusion
迈火5 小时前
SD - Latent - Interposer:解锁Stable Diffusion潜在空间的创意工具
人工智能·gpt·计算机视觉·stable diffusion·aigc·语音识别·midjourney
wfeqhfxz25887825 小时前
YOLO13-C3k2-GhostDynamicConv烟雾检测算法实现与优化
人工智能·算法·计算机视觉
芝士爱知识a5 小时前
2026年AI面试软件推荐
人工智能·面试·职场和发展·大模型·ai教育·考公·智蛙面试
Li emily5 小时前
解决港股实时行情数据 API 接入难题
人工智能·python·fastapi
Aaron15885 小时前
基于RFSOC的数字射频存储技术应用分析
c语言·人工智能·驱动开发·算法·fpga开发·硬件工程·信号处理
J_Xiong01176 小时前
【Agents篇】04:Agent 的推理能力——思维链与自我反思
人工智能·ai agent·推理
星爷AG I6 小时前
9-26 主动视觉(AGI基础理论)
人工智能·计算机视觉·agi
2501_941837266 小时前
蛤蜊生存状态分类识别 _ 基于YOLOv10n的海洋生物检测与分类_1
yolo·数据挖掘
爱吃泡芙的小白白6 小时前
CNN参数量计算全解析:从基础公式到前沿优化
人工智能·神经网络·cnn·参数量