【机器学习】循环神经网络(RNN)介绍


鑫宝Code

🌈个人主页: 鑫宝Code
🔥热门专栏: 闲话杂谈炫酷HTML | JavaScript基础
💫个人格言: "如无必要,勿增实体"


循环神经网络(RNN)介绍

什么是RNN?

循环神经网络(Recurrent Neural Network, RNN)是一种特殊类型的人工神经网络,专门设计用于处理序列数据,如文本、语音、视频等。与传统的前馈神经网络不同,RNN在隐藏层之间引入了循环连接,使得网络能够捕捉序列数据中的动态行为和时间依赖性。

在这里插入图片描述

上图展示了一个简单的RNN结构,其中 x t x_t xt 表示时间步 t t t 的输入, h t h_t ht 表示时间步 t t t 的隐藏状态, o t o_t ot 表示时间步 t t t 的输出。可以看到,隐藏状态 h t h_t ht 不仅取决于当前输入 x t x_t xt,还取决于前一时间步的隐藏状态 h t − 1 h_{t-1} ht1,这就形成了一个循环结构,使得RNN能够捕捉序列数据中的长期依赖关系。

RNN的基本原理

在这里插入图片描述

递归神经网络单元

RNN的核心是一个递归神经网络单元,它根据当前输入 x t x_t xt 和前一时间步的隐藏状态 h t − 1 h_{t-1} ht1 计算当前时间步的隐藏状态 h t h_t ht,计算公式如下:

h t = f ( x t , h t − 1 ) h_t = f(x_t, h_{t-1}) ht=f(xt,ht1)

其中, f f f 是一个非线性函数,通常使用 tanh 或 ReLU 作为激活函数。

前向传播

在前向传播过程中,RNN按照时间步骤依次计算每个时间步的隐藏状态和输出,具体过程如下:

  1. 初始化隐藏状态 h 0 h_0 h0,通常将其设置为全0向量。
  2. 对于每个时间步 t t t:
    • 计算当前时间步的隐藏状态:
评论 190
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鑫宝Code

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值