深度学习:循环神经网络RNN

目录

一、神经网络的历程

1.传统神经网络存在的问题

2.提出一种新的神经网络

二、RNN基本结构

1.RNN基本结构

2.RNN的独特结构

3.RNN的局限性


一、神经网络的历程

1.传统神经网络存在的问题

  • 无法训练出具有顺序的数据。模型搭建时没有考虑数据上下之间的关系。
  • 因为传统神经网络输入数据的时候是同时输入,同一层的数据之间没有顺序关系,所以对于连续性的数据没有很好的预测效果

2.提出一种新的神经网络

  • 为了解决传统神经网络的问题,提出了一种新的神经网络------RNN(Recurrent Neural Network)在处理序列输入时具有记忆性,可以保留之前输入的信息并继续作为后续输入的一部分进行计算。

二、RNN基本结构

1.RNN基本结构

  • 下方蓝色的是输入,
  • 中间的矩形是隐藏层,
  • 上方紫色的是输出层
  • 看成传统神经网络转了个方向比较好理解

2.RNN的独特结构

  • RNN叫循环神经网络
  • 那么它的循环在哪呢,就是它的独特结构
  • 最开始的时候会有一个类似于偏置项的h0
  • h0乘以一个w矩阵然后与输入的数据x乘以一个u矩阵得到的结果再加上偏置项然后传入激活函数得到h1
  • h1乘以一个v矩阵加上偏置项c的结果传入交叉熵激活函数,得到输出的y1
  • 依次循环下去,得到最终的yn
  • 这个yn就是结合了整个数据的特征
  • 注意:
    • 每一次训练中计算用的u,v,w,b都是一样的 ,训练完反向传播会进行更新
    • RNN结构中输入是x1, x2, .....xn,输出为y1, y2, ...yn,也就是说,输入和输出序列必须要是等长的

3.RNN的局限性

  • 当出现"我的职业是程序员,...,我最擅长的是电脑"。当需要预测最后的词"电脑"。

  • 当前的信息建议下一个词可能是一种技能,但是如果我们需要弄清楚是什么技能,需要先前提到的离当前位置很远的"职业是程序员"的上下文。

  • 这说明相关信息和当前预测位置之间的间隔就变得相当的大。

  • 在理论上,RNN绝对可以处理这样的长期依赖问题。

  • 人们可以仔细挑选参数来解决这类问题中的最初级形式,但在实践中,RNN则没法太好的学习到这些知识。

  • 这使得模型难以学习长距离依赖关系

  • 原因是:梯度会随着时间的推移不断下降减少,而当梯度值变得非常小时,就不会继续学习。

相关推荐
草堂春睡足44 分钟前
【Datawhale AI夏令营】科大讯飞AI大赛(大模型技术)/夏令营:让AI理解列车排期表
人工智能·笔记
格林威2 小时前
Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现卫星图像识别(C#代码,UI界面版)
人工智能·深度学习·数码相机·yolo·计算机视觉
Olrookie2 小时前
若依前后端分离版学习笔记(一)——本地部署
笔记·后端·开源
##echo3 小时前
嵌入式Linux裸机开发笔记9(IMX6ULL)GPIO 中断实验(1)
linux·c语言·笔记·单片机·嵌入式硬件
我爱学嵌入式6 小时前
C语言第 9 天学习笔记:数组(二维数组与字符数组)
c语言·笔记·学习
_Kayo_14 小时前
VUE2 学习笔记6 vue数据监测原理
vue.js·笔记·学习
码字的字节14 小时前
深度学习损失函数的设计哲学:从交叉熵到Huber损失的深入探索
深度学习·交叉熵·huber
凪卄121315 小时前
图像预处理 二
人工智能·python·深度学习·计算机视觉·pycharm
碳酸的唐15 小时前
Inception网络架构:深度学习视觉模型的里程碑
网络·深度学习·架构
AI赋能15 小时前
自动驾驶训练-tub详解
人工智能·深度学习·自动驾驶