赞
踩
1、损失(loss)和权重(w)的关系
loss表示预测值和真实值的误差,主要用于对权重w的更新。
loss通常由损失函数得到,损失函数常见的由MSE均方误差和CorssEnropy交叉熵损失函数。
MSE均方误差:
该误差(loss)使用的计算公式为MSE
下图可以看清误差是如何反向传播的:
得到loss后,可带入权重w更新的公式中:
这里使用的是SGD随机梯度下降法,此外还有Adam等权重更新方法
式中,loss为中的一部分,中的,表示参数w5对误差的贡献。n为学习率,代入loss后可对权重值w5进行更新,若loss越大,即结果和真实值差距越大,则w5变化越大。
若想理解整个过程,可参考(146条消息) 神经网络中的反向传播法算法推导及matlab代码实现_matlab反向传播算法_南极粥的博客-CSDN博客
2、激活函数的作用
经过激活函数sigmoid、Relu等非线性函数后,网络就变成了一个由许多非线性输入组成的能够近似模拟任何曲线的复杂函数,这个曲线能够近似拟合你所给的数据。
3、zero_grad清零梯度
使用在反向传播前,将上次记录的反向传播的梯度清零,否则梯度会进行叠加。
4、Batch Normalization的作用对象
在batch维度上计算相同通道上的均值和方差,再利用相同batch维度上的均值和方差做标准化。
图片来自Batch Normalization详解(原理+实验分析)_batchnormalization_macan_dct的博客-CSDN博客
nn.BatchNorm1d(channel_num):参数为输入的通道数(卷积核数目),1d对应1d卷积的输入数据格式,2d为2d卷积的输入数据格式。
维度分别为:
1d:(batch,C卷积核个数,times)
2d:(batch,C卷积核个数,times,channel(数据自身的)通道数)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。