深度学习day04 反向传播

在神经网络中,正向传播是将数据从前面传播到后面,正向传播的过程中会计算局部梯度(导数)存到变量里,得到预测值和真实值的损失函数,反向传播是将损失函数的梯度(导数)一步一步的从后面传播到前面的过程,就可以得到损失函数关于某一个权重的偏导数,有了这个偏导数就可以用梯度下降法求损失函数的最小值。

复合函数链式求导法则

复合函数的导数等于其内部局部函数的导数的累积
在这里插入图片描述

为什么要引入非线性激活函数

为了增加输出函数的复杂性,否则神经网络无论经过多少层变换都是线性函数(直线)。有了激活函数,就可以使神经网络逼近任意的非线性函数。
在这里插入图片描述

反向传播的数学过程

下面是单个节点的反向传播过程,运用到了复合函数的链式求导法则,Pytorch将单个节点的梯度寸在X变量里。
在这里插入图片描述

线性模型的计算图

在这里插入图片描述

Pytorch构建代码的过程

tensor用来存数据,可以存标量、矩阵、高纬数据
它包含两个重要成员:权重、损失函数对权重的导数
用Pytorch写神经网路的时候,构建模型的过程就是在构建如上所示的计算图的过程。
在这里插入图片描述
1.创建一个权重,权重是个张量并且需要进行计算梯度
在这里插入图片描述
2.正向传播时张量与一个标量相乘会自动将x转化为张量计算
在这里插入图片描述
3.
在这里插入图片描述
4.
在这里插入图片描述
5.
在这里插入图片描述
6.
在这里插入图片描述
7.
在这里插入图片描述

Pytorch构建计算图的过程

在这里插入图片描述
2.
在这里插入图片描述
3.
在这里插入图片描述

作业

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值