https://www.bilibili.com/video/av9770302/?p=11

Relu

Leaky Relu

Parametric Relu就是把leaky部分的斜率学出来,而不是指定

还有一种变体是,Randomized Relu,就是说这个斜率是每次随机的

Exponential Linear Unit (ELU)

Scaled ELU

Scaled就是都乘上一个lamda

并且这里给出了alpha和lamda的取值,

这个是推导出来的

这里如果我们假设所有输入的a的分布为,mean=0, variance=1

所有参数w的分为也是,mean=0, variance=1/K (这个取值上面算出来的,为了保证z的variance为1)

就能得到z的分布也符合mean=0,variance=1

虽然这里对于a1...aK的分布没有假设,但是我们可以假设z的分布式是符合高斯分布的,根据中心极限定理

现在的问题是对于z经过SELU得到a,如果还要保证mean=0,variance=1,求alpha,lamda参数,求出来的值就是上面给出的

看这个推导有两个用处,

1. 知道使用Selu的前提假设,是有假设的,视频里面demo,在不满足假设的情况下,Selu没效果的

假设就是输入和参数的初始化必须要满足前面的分布假设

这里参数的初始化可以用lecun_normal,虽然参数后面会不断调整,但初始化还是很关键

2. 可以看出SELU让输出的分布满足mean=0, variance=1,这就可以达到BathNormalization的效果

可以看到作者的比较,SELU NN比用BatchNorm的效果要好,loss更低,而且也更平滑

因为BatchNorm,每次是用batch的mean和var,所以用局部代表全局,会有波动,因为每个batch可能有较大的差异

Scaled Exponential Linear Unit的更多相关文章

  1. 修正线性单元(Rectified linear unit,ReLU)

    修正线性单元(Rectified linear unit,ReLU) Rectified linear unit 在神经网络中,常用到的激活函数有sigmoid函数f(x)=11+exp(−x).双曲 ...

  2. Deep Learning基础--26种神经网络激活函数可视化

    在神经网络中,激活函数决定来自给定输入集的节点的输出,其中非线性激活函数允许网络复制复杂的非线性行为.正如绝大多数神经网络借助某种形式的梯度下降进行优化,激活函数需要是可微分(或者至少是几乎完全可微分 ...

  3. 基于C#的机器学习--微基准测试和激活功能

    本章我们将学习以下内容: l  什么是微基准测试 l  如何将它应用到代码中 l  什么是激活函数 l  如何绘制和基准测试激活函数 每个开发人员都需要有一个好的基准测试工具.质量基准无处不在;你们每 ...

  4. Batch Norm、Layer Norm、Weight Norm与SELU

    加速网络收敛——BN.LN.WN与selu 自Batch Norm出现之后,Layer Norm和Weight Norm作为Batch Norm的变体相继出现.最近又出来一个很”简单”的激活函数Sel ...

  5. 大规模视觉识别挑战赛ILSVRC2015各团队结果和方法 Large Scale Visual Recognition Challenge 2015

    Large Scale Visual Recognition Challenge 2015 (ILSVRC2015) Legend: Yellow background = winner in thi ...

  6. [Deep Learning] 常用的Active functions & Optimizers

    深度学习的基本原理是基于人工神经网络,输入信号经过非线性的active function,传入到下一层神经元:再经过下一层神经元的activate,继续往下传递,如此循环往复,直到输出层.正是因为这些 ...

  7. 激活函数(ReLU, Swish, Maxout)

    神经网络中使用激活函数来加入非线性因素,提高模型的表达能力. ReLU(Rectified Linear Unit,修正线性单元) 形式如下: \[ \begin{equation} f(x)= \b ...

  8. 【机器学习】激活函数(Activation Function)

    https://blog.csdn.net/ChenVast/article/details/81382795 激活函数是模型整个结构中的非线性扭曲力 神经网络的每层都会有一个激活函数 1.逻辑函数( ...

  9. 【机器学习】激活函数(ReLU, Swish, Maxout)

    https://blog.csdn.net/ChenVast/article/details/81382939 神经网络中使用激活函数来加入非线性因素,提高模型的表达能力. ReLU(Rectifie ...

随机推荐

  1. 获取当前网页的绝对URL地址

    通过创建一个虚拟的<a></a>元素,将它的href指定为相对URL,再读取它的href就会得到绝对URL. var getAbsoluteUrl = (function() ...

  2. java mqtt

    代码: package cc.gongchang.mqtt; import java.net.URISyntaxException; import org.fusesource.hawtdispatc ...

  3. centos mysql密码忘记了如何修改

    # /etc/init.d/mysql stop# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &# mysq ...

  4. 一目了然了解JAVA集合体系

    在编程中,常常需要集中存放多个数据.从传统意义上讲,数组是我们的一个很好的选择,前提是我们事先已经明确知道我们将要保存的对象的数量.一旦在数组初始化时指定了这个数组长度,这个数组长度就是不可变的,如果 ...

  5. Android Studio打包过程和应用安装过程

    三个部分,检查项目和读取基本配置,Gradle Build,Apk Install和LaunchActivity. 应用安装到手机,会复制APK安装包到data/app目录下,解压并扫描安装包,把de ...

  6. css世界的学习笔记

    1.+选择器div+p:选择紧接在div后的所有p元素: 2.导航的样式:(注意:不给a设置width:100%;只是需要display:block;利用流布居:) <h4>无宽度,借助流 ...

  7. maven添加jetty插件,同时运行多个实例

    <plugins> <!-- jetty插件 --> <plugin> <groupId>org.eclipse.jetty</groupId&g ...

  8. JQuery DataTables Selected Row

    获取单行选中的值 $('#MonitoringTypeTable tbody').on('click', 'tr', function () { if ($(this).hasClass('selec ...

  9. 在BootStrap的modal中使用Select2

      bootstrap 3 $.fn.modal.Constructor.prototype.enforceFocus = function() {}; bootstrap4 $.fn.modal.C ...

  10. python 记录linux网速到文件。

    import timefrom app.utils_ydf import LogManager logger = LogManager('network_monitor').get_logger_an ...