激活函数(Activation Function)主要针对学习复杂的和非线性的函数,有着十分重要的作用,尤其是在多层神经网络中,应用非常广泛,对于线性函数,我们在前面说到的线性回归和Softmax回归,有兴趣的可以先熟悉下,便于后期更加理解非线性函数的实际意义。线性回归(Linear Regression)模型的构建和实现https://blog.csdn.net/weixin_41896770/article/details/124192672

Softmax回归模型的构建和实现(Fashion-MNIST图像分类)https://blog.csdn.net/weixin_41896770/article/details/124377665

这两个模型都属于线性的,对于深度学习的多层叠加,如果是线性模型,不管叠加多少层,输出还是线性的,这对于学习复杂的非线性的函数来说,就显得没辙。所以这个时候我们引入了激活函数,使得神经网络可以逼近任何的非线性函数。
        常见的激活函数有(ReLU、Sigmoid、tanh[双曲正切]),这里主要讲解sigmoid和tanh以及它们的求导过程,本人将步骤画出来了,通过图片让大家看得更直观。

上面是数学公式的求导过程,现在我们分别来绘制出激活函数与对应的导数的图(MXNet已包含了这些函数的绘制,可以方便调用),大家也可以不通过MXNet框架提供的函数,自己绘图来检验上面的求导是否正确,想了解更多如何绘制图形可以参看:

Python画图(直方图、多张子图、二维图形、三维图形以及图中图)https://blog.csdn.net/weixin_41896770/article/details/119798960

import d2lzh as d2l
from mxnet import autograd,nd#定义一个绘图函数
def xyplot(x,y,n):d2l.set_figsize(figsize=(5,2.5))d2l.plt.plot(x.asnumpy(),y.asnumpy())d2l.plt.xlabel('x')d2l.plt.ylabel(n+'(x)')
#sigmoid函数
x=nd.arange(-10,10,0.1)
y=x.sigmoid()
xyplot(x,y,'sigmoid')

#sigmoid导数
x=nd.arange(-10,10,0.1)
x.attach_grad()
with autograd.record():y=x.sigmoid()
y.backward()
xyplot(x,x.grad,'grad of sigmoid')

#tanh函数
x=nd.arange(-10,10,0.1)
y=x.tanh()
xyplot(x,y,'tanh')

tanh函数看起来和sigmoid长的特别像,区别在于tanh函数是关于原点对称

#tanh导数
x=nd.arange(-10,10,0.1)
x.attach_grad()
with autograd.record():y=x.tanh()
y.backward()
xyplot(x,x.grad,'grad of tanh')

sigmoid和tanh激活函数与其导数的绘图详解相关推荐

  1. 激活函数、Sigmoid激活函数、tanh激活函数、ReLU激活函数、Leaky ReLU激活函数、Parametric ReLU激活函数详细介绍及其原理详解

    相关文章 梯度下降算法.随机梯度下降算法.动量随机梯度下降算法.AdaGrad算法.RMSProp算法.Adam算法详细介绍及其原理详解 反向传播算法和计算图详细介绍及其原理详解 激活函数.Sigmo ...

  2. iOS 2D绘图详解(Quartz 2D)之路径(点,直线,虚线,曲线,圆弧,椭圆,矩形)

    前言:一个路径可以包含由一个或者多个shape以及子路径subpath,quartz提供了很多方便的shape可以直接调用.例如:point,line,Arc(圆弧),Curves(曲线),Ellip ...

  3. python turtle循环图案-Python内置模块turtle绘图详解

    urtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的 ...

  4. Python Turtle 海龟绘图详解官方文档中文版

    Python Turtle 海龟绘图详解 (官方文档中文版)-安徽省太湖中学陈晓中整理 概述 海龟绘图很适合用来引导孩子学习编程. 最初来自于 Wally Feurzeig, Seymour Pape ...

  5. iOS绘图详解-多种绘图方式、裁剪、滤镜、移动、CTM

    iOS绘图详解 摘要: Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎.它提供了低级别.轻量级.高保真度的2D渲染.该框架可以用于基于路径的 绘 ...

  6. Python Matplotlib 3D绘图详解(汇总)

    Python Matplotlib 3D绘图详解(汇总) 最初开发的 Matplotlib,仅支持绘制 2d 图形,后来随着版本的不断更新, Matplotlib 在二维绘图的基础上,构建了一部分较为 ...

  7. 【Python】基金/股票 最大回撤率计算与绘图详解(附源码和数据)

    如果你想找的是求最大回撤的算法,请跳转:[Python] 使用动态规划求解最大回撤详解 [Python]基金/股票 最大回撤率计算与绘图详解(附源码和数据) 0. 起因 1. 大成沪深300指数A 5 ...

  8. Android 绘图详解-思维导图版

    绘图(101题) 版本:2018/5/15-1(18:30) 绘图(101题) 基础知识 View的绘制顺序 Canvas 图层 图层的保存(save-) 图层标志 绘制 颜色绘制(drawColor ...

  9. iOS 2D绘图详解(Quartz 2D)之概述

    原创Blog,转载请注明出处  http://blog.csdn.net/hello_hwc?viewmode=list 前言:最近在研究自定义控件,由于想要彻底的定制控件的视图还是要继承UIView ...

  10. Python matplotlib高级绘图详解

    Pyplot绘图结构 Aritists matplotlib API包含有三层: backend_bases.FigureCanvas : 图表的绘制领域 backend_bases.Renderer ...

最新文章

  1. Ogitor的编译配置全过程
  2. android线程通信方式,Android 主线程和子线程通信问题
  3. 大剑无锋之Java的深浅拷贝解释一下!
  4. dom4j xml解析 写框架必备技能(一)
  5. 优秀的代码永垂不朽!
  6. hihoCoder - 1075 开锁魔法III
  7. atitit.故障排除--- 当前命令发生了严重错误。应放弃任何可能产生的结果sql server 2008
  8. 介绍电子计算机的英文简介,写介绍电脑的英语作文
  9. python打包成exe fail to ex_使用python写的PDF转EXCEL工具,已打包exe
  10. win7升级win10正式版_Win7免费升级Win10
  11. ultravnc 设置代理_选择代理记账有何好处及注意事项
  12. 中国34个省未来发展趋势深度分析
  13. Screen Wonders for Mac (3D动态视频壁纸) v1.9.1
  14. 英语四六级翻译5:红包
  15. 类之间的继承java,Java类与类之间的继承关系
  16. 精致纯CSS打造绿色漂亮导航栏
  17. 年轻人该不该超前消费
  18. MongonDB下载、安装(Windows)、配置详解
  19. Lengend of the Fall
  20. Clipper库中文文档详解

热门文章

  1. java中的移位操作
  2. 速达软件|无法打开帐套数据库|一般性网络错误
  3. html 漂亮的星空登录模板
  4. 常用HTML登录页面模板
  5. java架构师一般多少岁,大量教程
  6. 吉安市推行“区块链+电子证照+无证办理”模式
  7. 商品管理系统数据库设计--SQL Server
  8. windows7系统安装中文语言包汉化问题
  9. iPad PPT演示录屏踩坑及后续ffmpeg处理
  10. SERC2013 J You Win!