刘二大人——反向传播

非线性函数,防止全连接层转化为一个线性公式       

反向传播计算权重

刘二大人——反向传播_第1张图片

加偏置量计算权重

刘二大人——反向传播_第2张图片Pytorch 中用tensor来保存数据,可以是标量,向量,更高维的数据

Data保存权重W, Grad用来保存损失对权重的倒数

刘二大人——反向传播_第3张图片

计算梯度

 刘二大人——反向传播_第4张图片

 x*w时 x自动转化为tensor数据类型,计算loss,调用loss函数时就计算出了loss,这两个函数是构建计算图

刘二大人——反向传播_第5张图片

 backward()调用时计算图自动消失,对每个数的链式求导会保存在该数中,可用.grad.data调用,用完后将其归零.grad.data.zero(),w.grad.item()是将其梯度值变为标量,l是个张量不是标量

 

梯度下降函数,非凸函数局部最优,全局最优;鞍点切线斜率为0的连续点

刘二大人——反向传播_第6张图片

 训练集训练发散,失败,最常见原因是学习率过大 

刘二大人——反向传播_第7张图片

随机梯度下降函数,用每个样本的损失来计算,lossfunc是指所有样本,样本有噪声,用单个样本来计算权重倒数可有效跨过鞍点;从性能上来说用全样本的总损失性能低,时间低;用每个样本来计算性能高,时间高(无法运用并行计算); 通常取用折中,Batch(Min-Batch),每次用若干样本去求梯度。

刘二大人——反向传播_第8张图片

 

你可能感兴趣的:(AI,ai)