【科研-学习-pytorch】7-梯度、激活函数和loss

梯度

导数-derivate

导数是函数对变量的变化率,包含意义广泛;是一个标量;

偏微分

对某一变量的导数,多个变量时偏微分表示对指定向量的导数;

梯度

对不同变量的导数,是向量,包含方向和数值;

凸函数,用到凸优化问题;
对于不同函数,使用梯度更新思想,将对应损失函数和权重偏导梯度更新,调整学习参数;

鞍点,难以优化的函数;

如何优化

  • 初始化-initialization

初始化决定权重的初始位置,若初始化离局部极小值近则容易导致进入局部极小值;

  • learning-rate

学习率对于训练过程极其重要,若初始学习率过大,容易震荡不收敛;
先调小稳定后放大至稳定结果;

  • 动量-moment

当陷入局部极小值后难以通过梯度更新突破局部极小值,此时引入动量,类似于惯性作用,当陷入局部极小时通过梯度更新加上惯性作用能突破这个值,找到全局最优解;

激活函数

感知机

从青蛙神经元感应启发而来,分段函数,小于0为0,大于0为1;
但是不可导的分段函数,不方便求导;

sigmoid

f ( x ) = 1 1 + e − x f(x) = \frac{1}{1+e^{-x}} f(x)=1+ex1

对于sigmoid函数进行求导,可得:
f(x)的导数为:f(x)(1 - f(x))
sigmoid函数可将数值压缩到0-1之间,便于概率、像素值计算;
但缺点是对于sigmoid函数极大时得到梯度为0,即梯度无法更新,出现梯度弥散现象;
使用方式:torch.sigmoid(a)

tanh

在RNN中使用较多,也有将函数范围作用到固定范围内,便于稳定训练;

Relu

relu函数梯度值变换和其函数类似,导数连续且计算方便;保持梯度稳定;

loss

Mean Squared Error

Cross Entropy Loss

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值