制作一个自适应网站,可以做高中题目的网站,做网站那家公司好,八大营销模式有哪几种同学你好#xff01;本文章于2021年末编写#xff0c;获得广泛的好评#xff01;
故在2022年末对本系列进行填充与更新#xff0c;欢迎大家订阅最新的专栏#xff0c;获取基于Pytorch1.10版本的理论代码(2023版)实现#xff0c;
Pytorch深度学习理论篇(2023版)目录地址…
同学你好本文章于2021年末编写获得广泛的好评
故在2022年末对本系列进行填充与更新欢迎大家订阅最新的专栏获取基于Pytorch1.10版本的理论代码(2023版)实现
Pytorch深度学习·理论篇(2023版)目录地址为
CSDN独家 | 全网首发 | Pytorch深度学习·理论篇(2023版)目录本专栏将通过系统的深度学习实例从可解释性的角度对深度学习的原理进行讲解与分析通过将深度学习知识与Pytorch的高效结合帮助各位新入门的读者理解深度学习各个模板之间的关系这些均是在Pytorch上实现的可以有效的结合当前各位研究生的研究方向设计人工智能的各个领域是经过一年时间打磨的精品专栏https://v9999.blog.csdn.net/article/details/127587345欢迎大家订阅(2023版)理论篇 以下为2021版原文~~~~ 1 循环神经网络结构概述
循环神经网络(Recurrent Neural Network,RNN)是一个具有记忆功能的网络模型。它可以发现样本彼此之间的相互关系。它多用于处理带有序列特征的样本数据。 1.1 生物大脑中的循环神经网络
当获得“我找你来玩游”信息后大脑的语言模型会自动预测后一个字为“戏”而不是“乐”“泳”等其他字。 每个预测的结果都会放到下个输入里面进行运算与下一次的食人鱼一起来生成下一次的结果。 链式地、有顺序地存储信息”很节省空间对于中间状态的序列大脑没有选择直接记住而是存储计算方达。当我们需要取值时直接将具体的数据输入通过计算得出相应的给果。
1.2 循环神经网络的应用领域
对于序列化的特征任务适合用循环神经网路来解决。这类任务包括情感分析、关键字提取、语音识别、机器翻译和股票分析等。
1.3 循环神经网络的正向传播过程 假设有3个时序t1t2t3如图7-26所示循环神经网络的处理过程可以分解成以下3个步骤 (1)开始时t1通过自己的输入权重和0作为输入生成了out1; (2)out1通过自己的权重生成了h1然后和t2与经过输入权重转化后一起作为输入生成了out2; (3)out2通过同样的隐藏层权重生成了h2然后和t3经过输入权重转化后一起作为输入生成了out3。使得模型的结果既有该样本之前序列的信息又含有该样本身的数据信息从而使网络具有记忆功能。 2 BP算法与BPTT算法的原理剖析
2.1 BP算法》卷积神经网络 假设有一个包含一个隐藏层的神经网络隐藏层只有一个节点。该神经网络在BP算法中具体的实现过程如下。 (1)有一个批次的数据含有3个数据A、B、C批次中每个样本有两个数(x1、x2)通过权重(w1、w2)来到隐藏层H并生成批次h如图7-27中w1和w2所在的两条直线方向。 (2)该批次的h通过隐藏层权重p1生成最终的输出结果y。 (3)y与最终的标签p比较生成输出层误差loss(y,p)。 (4)loss(y,p)与生成y的导数相乘得到DeL_y。DeL_y为输出层所需要的修改值。 (5)将h的转置与DeL_y相乘得到DeL_p1这是源于h与p1相乘得到的y(见第2步. (6)最终将该批次的DeL_p1求和并更新到p1。 (7)同理再将误差反向传递到上一层计算Del_h。得到Del_h后再计算权重(w1w2)的Del值并更新。
2.2 BPTT算法BP算法序列序列》循环神经网络 在图7-28中同样是一个批次的数据ABC按顺序进入循环神经网络。正向传播的实例是B正在进入神经网络的过程可以看到A的h参与了进来一起经过p1生成了B的y。因为C还没有进入为了清晰所以这里用灰色虚线方框来表示。
当所有块都进入之后会将p标签与输出进行Del_y的运算。由于C块中的y值是最后生成的因此我们先从C块开始对h的输出传递误差Del_h。
图7-28中的反向传播是表示C块已经反向传播完成开始B块反向传播的状态可以看到B块Del_h是由B块的Del_y和C块的Del_h(图7-28中的fur _Del_h)通过计算得来的。
2.3 对比
这就是与BP算法不同的地方在BP算法中Del_h直接与自己的Del_y相关不会与其他的值有联系)。作为一个批次的数据正向传播时是沿着4BC的顺序升当反向传播时就按照正向传播的相反顺序接照每个节点的CBA顺序挨个计算并传递梯度。
2.4 代码代补充 P149