一、概念

激活函数顾名思义,就是一种可以给神经网络注入灵魂的一种方法,也可以称之为激活层。其计算就是将线性的函数转变为非线性函数的过程,只有这样,我们制作的深层神经网络才能无限逼近真实值。
自神经网络发展到目前为止,已经出现了很多种激活函数。应用多的包括ReLU,Sigmoid,Tanh,Softmax等,都有各自的优缺点,Sigmoid和Tanh都存在梯度爆炸和梯度消失的问题,RELU的收敛速度快,但是存在Dead ReLU Problem,我们可以再pytorch官网去查看详细的介绍,这里就不做过多介绍,只用简单的例子做下demo。




Softmax的公式:

二、Pytorch示例

import torch
import torchvision.datasets
from torch import nn
from torch.nn import ReLU, Sigmoid, Tanh, Softmax
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriterdataset = torchvision.datasets.CIFAR10("../dataset", train=False, download=True,transform=torchvision.transforms.ToTensor())
dataloader = DataLoader(dataset, batch_size=64)class Wzh(nn.Module):def __init__(self):super(Wzh, self).__init__()self.relu1 = ReLU()self.sigmoid1 = Sigmoid()self.tanh1 = Tanh()self.Softmax1 = Softmax()def forward(self, input):output = self.Softmax1(input)return outputwzh = Wzh()
w = SummaryWriter("Softmax")
i = 0
for data in dataloader:imgs, targets = dataoutput1 = wzh(imgs)w.add_images("input", imgs, i)w.add_images("output", output1, i)i = i + 1w.close()

运行上面的小demo,我们可以分别得到不同的激活函数的图像效果。
原图:

Relu: 目前使用最多的激活函数,可以看出来,和原图没有变化。

sigmond: 由于输出在[0,1] 之间,所以图像整体会变暗。

tanh: 会稍微变暗。

softmax: 经过激活函数变换,只能看出轮廓。

Pytorch基础(六)——激活函数相关推荐

  1. PyTorch基础之激活函数模块中Sigmoid、Tanh、ReLU、LeakyReLU函数讲解(附源码)

    需要源码请点赞关注收藏后评论区留言私信~~~ 激活函数是神经网络中的重要组成部分.在多层神经网络中,上层节点的输出和下层节点的输入之间有一个函数关系.如果这个函数我们设置为非线性函数,深层网络的表达能 ...

  2. pyTorch——基础学习笔记

    pytorch基础学习笔记博文,在整理的时候借鉴的大量的网上资料,存在和一部分图片定义的直接复制黏贴,在本博文的最后将会表明所有的参考链接.由于参考的内容众多,所以博文的更新是一个长久的过程,如果大佬 ...

  3. PyTorch基础(part3)

    学习笔记,仅供参考,有错必纠 文章目录 PyTorch 基础 线性回归 常用代码 导包 生成数据 构建神经网络模型 非线性回归 生成数据 构建神经网络模型 PyTorch 基础 线性回归 常用代码 # ...

  4. PyTorch学习笔记(四):PyTorch基础实战

    PyTorch实战:以FashionMNIST时装分类为例: 往期学习资料推荐: 1.Pytorch实战笔记_GoAI的博客-CSDN博客 2.Pytorch入门教程_GoAI的博客-CSDN博客 本 ...

  5. 第1周学习笔记:深度学习和pytorch基础

    目录 一 视频学习 1.绪论 2.深度学习概述 二 代码学习 1.Pytorch基础练习 2.螺旋数据分类 一 视频学习 1.绪论 人工智能(Artificial Intelligence):使一部机 ...

  6. 07组第二次作业 深度学习和pytorch基础

    07组第二次作业 深度学习和pytorch基础 1.视频学习 20020007118 张泽峰 1.1绪论 人工智能的前景比较广阔,人才缺口比较大. 专家系统 早期的人工智能依赖于专家系统 通过一些专家 ...

  7. OUC暑期培训(深度学习)——第一周学习记录:深度学习和pytorch基础

    第一周学习:深度学习和pytorch基础 目录 第一周学习:深度学习和pytorch基础 Part 1:视频学习: 1. 绪论: 2. 深度学习概述: Part 2:代码练习: 1. pytorch基 ...

  8. 第1周学习:深度学习和pytorch基础

    第1周学习:深度学习和pytorch基础 一.概念学习 1.1关于一些基本问题的思考 1.2深度学习基础 二.代码练习 pytorch 基础练习 螺旋数据分类问题 一.概念学习 1.1关于一些基本问题 ...

  9. 《深度学习之pytorch实战计算机视觉》第6章 PyTorch基础(代码可跑通)

    上一篇文章<深度学习之pytorch实战计算机视觉>第5章 Python基础讲了Python基础.接下来看看第6章 PyTorch基础. 目录 6.1 PyTorch中的Tensor 6. ...

  10. 深入浅出Pytorch:02 PyTorch基础知识

    深入浅出Pytorch 02 PyTorch基础知识 内容属性:深度学习(实践)专题 航路开辟者:李嘉骐.牛志康.刘洋.陈安东 领航员:叶志雄 航海士:李嘉骐.牛志康.刘洋.陈安东 开源内容:http ...

最新文章

  1. 2021年2月程序员工资统计,又拖后腿了……
  2. S2SH整合所需jar包及其详解
  3. maven 不编译jasper文件_第一个SpringBoot项目、核心配置文件properties(yml、yaml)、集成jsp...
  4. kube-controller-manager 配置参数解读
  5. java程序设计实用教程答案_Java程序设计实用教程(课本习题解答).doc
  6. 手机局域网html,手机遥控电脑开机神器!局域网唤醒App
  7. Linux 命令(140)—— tree 命令
  8. 2015湖南省选集训DAY5——work(BZOJ4177)
  9. php 时间类型int类型,mysql 查询 int类型日期转换成datetime类型
  10. matlab2c使用c++实现matlab函数系列教程-factorial函数
  11. C++/Qt获取屏幕尺寸和放大比例
  12. 《华为研发》读书笔记与读后感范文3300字
  13. 《东周列国志》第二十三回 卫懿公好鹤亡国 齐桓公兴兵伐楚
  14. python-基础杂集
  15. 九种电脑变慢的常见症状、原因、以及解决办法。
  16. 谈谈大学两年的学习经历
  17. 解决服务器报错java.nio.file.AccessDeniedException: /opt/jeecg-boot/upload
  18. 洛谷P4233 射命丸文的笔记 【多项式求逆】
  19. Android 自动化测试——monkey的使用
  20. 两个总体方差的F检验

热门文章

  1. StartActivityForResult
  2. [Ruby]$: 是什么意思?
  3. Hashtable.ContainsKey跟Hashtable.Contains的区别
  4. 前端 crypto-js aes 加解密
  5. npm升级package.json依赖包
  6. Chrome 控制台的console用法收集
  7. 修改输入框placeholder的默认样式
  8. Chrome浏览器12px问题-webkit-text-size-adjust: none 已失效的解决方案
  9. input标签用法解读
  10. nodejs实现文件上传