最常用激活函数公式


如需转载,请务必标明出处及作者信息:@洋石灰儿@https://blog.csdn.net/Yshihui/article/details/80540070


(1)what and why

  • 直观的作用就是进行非线性操作,将输入信号input线性加权,再进行非线性操作。

  • 神经网络模拟生物神经元的工作原理,人工神经元的工作是将神经质传输到突出,突出将各个神经质进行进一步操作,权衡后再向下一个神经元传输神经质。可以自行查询生物神经元的工作原理

  • 激活函数的性质:

    1. 非线性——从后面的各个激活函数的公式可以明显看出。原因是:层神经网络向下一层 神经网络传递信息时,如果是线性处理,则层和层等价于一层神经网络,从而失去神经元传递的意义。非线性操作——模拟生物神经元工作原理。
    2. 可微性——进行优化时常利用梯度进行方向优化。
    3. 单调性——单调性保证单层神经网络的单调性,从而保证输入和输出之间的单调性关系(参考链式法则)。
    4. 输出范围——当激活函数输出值是 有限 的时候,基于梯度的优化方法会更加 稳定,因为特征的表示受有限权值的影响更显著;当激活函数的输出是 无限 的时候,模型的训练会更加高效,不过在这种情况小,一般需要更小的learning rate。

(2)常用激活函数

sigmoid,tanh,ReLU,LReLU,PReLU,RReLU,ELU,Cost Function,Maxout,Softplus,Softsign

1.sigmoid

sigmoid(x)=11+e−xsigmoid(x)=11+e−x

sigmoid(x)=\frac{1}{1+e^{-x}}


2.tanh

tanh(x)=ex−e−xex+e−x=e2x−1e2x+1tanh(x)=ex−e−xex+e−x=e2x−1e2x+1

tanh(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}}=\frac{e^{2x}-1}{e^{2x}+1}


3.ReLU

y={x,0,if x≥0if x<0y={x,if x≥00,if x<0

y=\begin{cases} x, & \mbox{if }x \ge0 \\ 0, & \mbox{if }x


4.LReLU——PReLU

yi={xi,aixi,if (xi>0)if (xi≤0)yi={xi,if (xi>0)aixi,if (xi≤0)

y_i=\begin{cases} x_i, & \mbox{if }(x_i >0) \\ a_ix_i, &\mbox{if }(x_i \leq 0) \end{cases}


5.RReLU

yji={xji,ajixji,if xji≥0if xji<0aji∼U(l,u) l<u,and l,u∈[0,1)yji={xji,if xji≥0ajixji,if xji<0aji∼U(l,u)l<u,andl,u∈[0,1)

y_{ji}=\begin{cases} x_{ji}, & \mbox{if }x_{ji} \ge0 \\ a_{ji}x_{ji}, & \mbox{if }x_{ji}


6.softmax

θ(z)i=ezi∑Kk=1ezkθ(z)i=ezi∑k=1Kezk

\theta(z)_i=\frac{e^{z_i}}{\sum_{k=1}^Ke^{z_k}}


7.ELU

y={x,a(ex−1),if x≥0if x<0a>0y={x,if x≥0a(ex−1),if x<0a>0

y=\begin{cases} x, & \mbox{if }x \ge0 \\ a(e^x-1), & \mbox{if }x 0


8.Cost Function——Softmax + Cross Entropy


9.Maxout

Maxout可以看做是在深度学习网络中加入一层激活函数层,包含一个参数k.这一层相比ReLU,sigmoid等,其特殊之处在于增加了k个神经元,然后输出激活值最大的值.

我们常见的隐含层节点输出:

​ hi(x)=sigmoid(xTW…i+bi)hi(x)=sigmoid(xTW…i+bi)h_i(x)=sigmoid(x^TW_{…i}+b_i)

而在Maxout网络中,其隐含层节点的输出表达式为:

​ hi(x)=maxj∈[1,k]zijhi(x)=maxj∈[1,k]zijh_i(x)=max_{j∈[1,k]}z_{ij}

其中zij=xTW…ij+bij,W∈Rd×m×kzij=xTW…ij+bij,W∈Rd×m×kz_{ij}=x^TW_{…ij}+b_{ij},W\in R^{d×m×k}

以如下最简单的多层感知器(MLP)为例:

假设网络第i层有2个神经元x1、x2,第i+1层的神经元个数为1个.原本只有一层参数,将ReLU或sigmoid等激活函数替换掉,引入Maxout,将变成两层参数,参数个数增为k倍.与常规激活函数不同的是,它是一个可学习的分段线性函数.

然而任何一个凸函数,都可以由线性分段函数进行逼近近似。其实我们可以把以前所学到的激活函数:ReLU、abs激活函数,看成是分成两段的线性函数,如下示意图所示:

实验结果表明Maxout与Dropout组合使用可以发挥比较好的效果。

那么,前边的两种ReLU便是两种Maxout,函数图像为两条直线的拼接,f(x)=max(wT1x+b1,wT2x+b2)f(x)=max(w1Tx+b1,w2Tx+b2)f(x)=max(w^T_1x+b_1,w^T_2x+b_2).

原文: https://www.cnblogs.com/makefile/p/activation-function.html © 康行天下


10.Softplus

f(x)=log(ex+1)f(x)=log(ex+1)

f(x)=log(e^x+1)


11.Softsign

f(x)=x|x|+1f(x)=x|x|+1

f(x)=\frac{x}{|x|+1}

sigmoid,tanh,ReLU,LReLU,PReLU,RReLU,ELU,Cost Function,Maxout,Softplus,Softsign


如需转载,请务必标明出处及作者信息:@洋石灰儿@https://blog.csdn.net/Yshihui/article/details/80540070


参考:


https://zhuanlan.zhihu.com/p/26122560

https://blog.csdn.net/yshihui/article/details/80444353

https://www.jianshu.com/p/22d9720dbf1a

https://www.cnblogs.com/rgvb178/p/6055213.html

https://www.cnblogs.com/makefile/p/activation-function.html

https://zhuanlan.zhihu.com/p/22142013


最常用激活函数公式(更新中)相关推荐

  1. c语言排序常用问题,【更新中】【排序详解】解决排序问题(以C语言为例)

    [更新中][排序详解]解决排序问题(以C语言为例) [更新中][排序详解]解决排序问题(以C语言为例) 文章目录 排序的相关概念 简单排序 一.插入排序: (一)插入排序基本思想 (二)插入排序基本操 ...

  2. Docker常用命令【更新中】

    文章目录 常用命令 一.服务 1.启动docker服务 2.设置docker服务开机自启动 3.关闭docker服务 4.禁止docker服务开机自启动 二.镜像 1.查看镜像列表 2.打包镜像 3. ...

  3. oracle tabe unlock_oracle数据库管理常用语句(不断更新中)

    1.删除用户及其用户下面的所有对象 drop user branch cascade; 2.删除表空间及其表空间里的所有内容 drop tablespace center INCLUDING CONT ...

  4. 利用Matlab编程画图的常用代码(更新中)

    将MATLAB的画图参数重置 有时候我们不小心将MATLAB的画图设置全局之后,比如 set(0,'defaultFigureUnits','centimeters'); set(0,'default ...

  5. linux 查看工程用什么工具,工程师工具包-Linux常用命令及常用操作-持续更新中...

    Linux系统命令相关 系统相关 date date 查看系统时间 $date 2017年 09月 18日 星期一 18:01:06 CST date -R查看系统时间,并且在时间后面加上时区的显示 ...

  6. pandas常用函数(更新中)

    Series()    #创建序列,类似一维数组,是pandas的基本数据结构 s = pd.Series([1, 2, 3], index=['a', 'b', 'c'])    #创建一个序列s, ...

  7. SCI 论文常用词汇 持续更新中。。。

    形容词.副词: 大量地:ubiquitously,a wide spectrum of, increasingly, 可观的:considerable, 重度地:heavily, 极度:extreme ...

  8. inux常用命令-持续更新中(转载:小牛导航,super-nb)

    关机 (系统的关机.重启以及登出 ) shutdown -h now 关闭系统 init 0 reboot 重启 logout 注销 分享下我的网站,小牛导航,super-nb.com 文件和目录 c ...

  9. conda常用指令-持续更新中

    conda常用命令 激活环境 列出所有环境 激活环境 conda activate 环境名称 列出所有环境 conda info --envs

  10. 开发常用网址(持续更新中...)

    文件目录 数据结构可视化网址 Element UI组件库网址 开源分布式事务网址 Maven仓库网址 Cron生成器网址 Gitee网址 GitHub网址 正则表达式可视化工具网址 MD5编码工具网址 ...

最新文章

  1. .net C# 关于使用npoi导入excel 所遇到的问题PublicKeyToken=0df73ec7942b34e1
  2. 把阿里巴巴的核心系统搬到云上,架构上的挑战与演进是什么?
  3. MySQL分组查询—添加筛选的总结
  4. Oracle数据库管理与开发pdf
  5. 渲染终极者 finalRender R3.5 SE for 3ds max/design 2009/2010/2011 32位/64位 汉
  6. c++ mysql ctime_CTime::Format
  7. 虚拟机网络驱动(共享文件夹)不见了的解决方案-适用于win7~win10 and Windows Server 2008~Windows Server 2012R2
  8. linux中lsattr命令,在Linux中用chattr和lsattr命令管理文件和目录属性
  9. Linux-CentOS上一些快捷键的使用
  10. csol永恒python怎样施展技能_pycharm辅助学习使用debug功能
  11. java导出excel水印_java实现导出带有水印的excel
  12. 股票买卖问题-含手续费
  13. 30分钟快速了解云计算
  14. 初识c语言—学习笔记
  15. 解决win10系统文件资源管理器一直未响应的问题
  16. to_Date()用法
  17. 本源量子与德美牵头成立产业联盟,生物化学正式进入量子计算“赛道”|现场专访
  18. 影响计算机关键性能参数测试研究,【计算机病毒论文】谈灯光告警计算机测试系统设计(共3104字)...
  19. 编译64位Detours(其他vs版本同理)
  20. 2019最新Android常用开源库总结(附带github链接)

热门文章

  1. safari调试工具h5手机_iOS通过safari真机调试H5页面
  2. findfont: Font family ['DejaVu Sans'] not found. Falling back to DejaVu Sans.
  3. 为什么华为,腾讯,阿里等大公司都有外包员工?
  4. IT项目管理 第三章
  5. excel 复选框 制作动态表格
  6. VINS-Mono 代码解析二、初始化 第3部分
  7. Catia二次开发:数组,局部变量等,msgbox,背景颜色,enable属性,图片模块,vb的common dialog控件,键盘鼠标事件,text操作
  8. 首届CCF计算机职业资格认证考试题解(C++)
  9. 致加西亚的信 名言佳句
  10. matlab 图像分割_数字图像处理第三版中_冈萨雷斯【MATLAB】(推书活动第十七期)...