专栏首页小胡学编程PyTorch6:nn.Linear&常用激活函数

PyTorch6:nn.Linear&常用激活函数

1. nn.Linear


线性连接层又叫全连接层(fully connected layer),是通过矩阵的乘法将前一层的矩阵变换为下一层矩阵。

W 被称为全连接层的权重weightsb 被称为全连接层的偏置bias。通常为了演示方便,我们忽略 bias。layer1 如果是一个(m*n)的矩阵,W是一个(n*k)的矩阵,那么下一层 layer2 就是一个(m*k)的矩阵。n 称为输入特征数(input size),k 称为输出特征数(output size),那么这个线性连接层可以被这样初始化:

fc = nn.Linear(input_size, output_size)

2. 激活函数


激活函数就是非线性连接层,通过非线性函数将一层转换为另一层。

常用的激活函数有:sigmoidtanhrelu及其变种。

虽然 torch.nn 有激活函数层,因为激活函数比较轻量级,使用 torch.nn.functional 里的函数功能就足够了。通常我们将 torch.nn.functional 写成 F

import torch.nn.functional as F

2.1 F.sigmoid


sigmoid 又叫做 logistic,公式为:

sigmoid 的值域为 (0,1),所以通常用于二分类问题:大于0.5为一类,小于0.5为另一类。

sigmoid 的导数公式为:

导数的值域为(0,0.25)。sigmoid 函数的特点为:

  1. 函数的值在(0,1)之间,符合概率分布;
  2. 导数的值域为(0,0.25) ,容易造成梯度消失;
  3. 输出为非对称正值,破坏数据分布。

2.2 F.tanh


tanh 是正切函数,公式为:

tanh 的值域为(-1,1) ,对称分布。它的导数公式为:

导数的值域为(0,1) 。tanh 的特点为:

  1. 函数值域为(-1,1) ,对称分布;
  2. 导数值域为(0,1) ,容易造成梯度消失。

2.3 F.relu


relu缓解了上述两个激活函数容易产生梯度消失的问题。它实际上是一个分段函数:

relu的优点在于求导非常方便,而且非常稳定:

缺点在于:

  1. 当x<0时导数为 0,神经元“死亡”,即不再更新;
  2. 虽然没有梯度消失的问题,但有梯度爆炸的问题。

2.4 F.leakyrelu


为了解决relu“死神经元”的问题,对其稍加改动成为了leakyrelu

阿尔法是一个很小的数,通常是 0.01。这样它的导数就变成了:

原文链接:https://mp.weixin.qq.com/s/RnqYDjkRycysH8XybJ8rrQ

我来说两句

0 条评论
登录 后参与评论

相关文章

  • PyTorch7:torch.nn.init

    梯度爆炸指的是误差梯度在更新中累积得到一个非常大的梯度,这样的梯度会大幅度更新网络参数,进而导致网络不稳定。

    小胡胡说
  • PyTorch2:张量的运算

    可以看出,torch.Tensor()没有保留数值类型,其它三个都保留了。这是因为torch.Tensor()实际上是一个类,传入的数据需要“初始化”;其它三个...

    小胡胡说
  • 读书笔记:第一章绪论

    深度学习问题,是指从有限样例中通过算法总结出一般性的规律,并可以应用到新的未知数据上。

    小胡胡说
  • vue v-for

    用户5760343
  • DNS上线之路(三)——远程控制

    rndc -c /etc/rndc.conf flush (-c 可以省略)

    江小白
  • 斯坦福大学密码学-数论简介 10

    感觉明天就可以结束了。。。。加油!!!!!!!学校什么时候解封,要疯了。。。。。。。

    静怡
  • 云开发校园技术布道师----云常工:基于云数据库的高校信息发布网

    想要在一个小程序里就能看到学校校内举办的所有活动;最好是能官网的和社团的都能看到,以及一些周边发起的好玩活动

    用户6935401
  • Python将图片处理为九宫格 不只是九宫格哦

    这两天在朋友圈又看到朋友在发九宫格类的图片,于是今天上网查了一下,发现网上这类应用很多,而且有的软件已经把这个功能集成。本部分主要是讲一下自己在九宫格图上的一些...

    啤酒单恋小龙虾
  • 基于web页面开发串口程序界面---效果

    我们看一下基于modobus协议的读取操作,01 03表示读,10 00表示起始位,00 27 表示读取字节数,10 01 表示crc校验码。

    MiaoGIS
  • Windows 10 和Cent OS 7 查看本地ip地址

    用户5040284

扫码关注云+社区

领取腾讯云代金券