Relu优点:

1、可以使网络训练更快。

相比于sigmoid、tanh,导数更加好求,反向传播就是不断的更新参数的过程,因为其导数不复杂形式简单。

2、增加网络的非线性。

本身为非线性函数,加入到神经网络中可以是网格拟合非线性映射。

3、防止梯度消失。

当数值过大或者过小,sigmoid,tanh的导数接近于0,relu为非饱和激活函数不存在这种现象。

4、使网格具有稀疏性。

由于小于0部分为0,大于0部分才有值,所以可以减少过拟合。

softmax作用:

将神经网络的输出变为概率分布。

1、数据之和为1.

2、负数变为正数。

cross entropy

衡量两个概率分布的距离。

1、值越小,距离越近。

2、值越大,距离越远。

AlexNet优点:

(1)成功使用relu作为cnn的激活函数,并验证其效果在较深的网络超过sigmoid,成功解决了sigmoid在网络较深时的梯度弥散问题。

(2)训练时使用Dropout随机忽略一部分神经元,以避免模型过拟合。dropout虽有单独的论文论述。但是AlexNet将其实用化。通过实践证实了它的效果。在AlexNet中主要是最后几个全连接层使用了Dropout。

(3)在cnn中使用重叠的最大池化,此前cnn中普遍使用平均池化。AlexNet全部使用最大池化。避免平均池化的模糊化效果。并且让步长比池化核的尺寸小。这样池化的输出之间会有重叠和覆盖。提升了特征的丰富性。

(4)提出了LRN层,对局部神经元的活动创建竞争机制,使得其中相应比较大的值变得相对更大。并抑制其他反馈较小的神经元,增强模型的泛化能力。

(5)使用CUDA加深深度卷积网络的训练,利用GPU强大的并行计算能力。处理神经网络训练时大量的矩阵运算。AlexNet使用了两块GTX 580 GPU进行训练。同时AlexNet的设计让Gpu之间的通信只在网络的某些层进行,控制了通信的性能损耗。

(6)数据增强。随机地从256*256的原始图像中截取224*224大小的区域(以及水平旋转的镜像)对图像的RGB数据进行PCA处理,并对主成分做一个标准差为0,1高斯扰动,增加 一些噪声。

Relu激活函数的优点的更多相关文章

  1. RELU 激活函数及其他相关的函数

    RELU 激活函数及其他相关的函数 转载 2016年07月21日 20:51:17 45778 本博客仅为作者记录笔记之用,不免有很多细节不对之处. 还望各位看官能够见谅,欢迎批评指正. 更多相关博客 ...

  2. tensorflow Relu激活函数

    1.Relu激活函数 Relu激活函数(The Rectified Linear Unit)表达式为:f(x)=max(0,x). 2.tensorflow实现 #!/usr/bin/env pyth ...

  3. MINST手写数字识别(三)—— 使用antirectifier替换ReLU激活函数

    这是一个来自官网的示例:https://github.com/keras-team/keras/blob/master/examples/antirectifier.py 与之前的MINST手写数字识 ...

  4. ReLU激活函数:简单之美

    出自 http://blog.csdn.net/cherrylvlei/article/details/53149381 导语 在深度神经网络中,通常使用一种叫修正线性单元(Rectified lin ...

  5. ReLU激活函数

    参考:https://blog.csdn.net/cherrylvlei/article/details/53149381 首先,我们来看一下ReLU激活函数的形式,如下图: 单侧抑制,当模型增加N层 ...

  6. 深度学习基础系列(三)| sigmoid、tanh和relu激活函数的直观解释

    常见的激活函数有sigmoid.tanh和relu三种非线性函数,其数学表达式分别为: sigmoid: y = 1/(1 + e-x) tanh: y = (ex - e-x)/(ex + e-x) ...

  7. ReLU激活函数的缺点

    训练的时候很”脆弱”,很容易就”die”了,训练过程该函数不适应较大梯度输入,因为在参数更新以后,ReLU的神经元不会再有激活的功能,导致梯度永远都是零. 例如,一个非常大的梯度流过一个 ReLU 神 ...

  8. tf.nn.relu 激活函数

    tf.nn.relu(features, name = None) 计算校正线性:max(features, 0) 参数: features:一个Tensor.必须是下列类型之一:float32,fl ...

  9. 深度学习的激活函数 :sigmoid、tanh、ReLU 、Leaky Relu、RReLU、softsign 、softplus、GELU

    深度学习的激活函数  :sigmoid.tanh.ReLU .Leaky Relu.RReLU.softsign .softplus.GELU 2019-05-06 17:56:43 wamg潇潇 阅 ...

随机推荐

  1. Jquery制作插件---内容切换

    //需求:点击左右导航箭头,实现内容的切换 //代码如下 <!DOCTYPE html> <html lang="en"> <head> < ...

  2. 在 Rolling Update 中使用 Health Check【转】

    上一节讨论了 Health Check 在 Scale Up 中的应用,Health Check 另一个重要的应用场景是 Rolling Update.试想一下下面的情况: 现有一个正常运行的多副本应 ...

  3. SpringCloud实战——(1)创建SpringCloud项目

    首先创建一个SpirngCloud工程,并添加公用依赖. <?xml version="1.0" encoding="UTF-8"?> <pr ...

  4. docker中mysql数据库

    在docker中安装mysql数据库,直接上代码,pull 并run 补充20190809=============== 如果要挂载数据库实现数据持久化到本地的时候,会出现权限问题,这个原因是: 在执 ...

  5. 使用gulp 进行ES6开发

    使用gulp 进行ES6开发 一.新建项目 项目结构如下: /app -- /js -- /css /dist -- /js -- /css -- index.html gulpfile.js 我们的 ...

  6. 04.swoole学习笔记--webSocket服务器

    <?php //创建webSocket服务器 $serv=); //获取请求 //on //open 建立连接 $serv:服务器 $request:客户端信息 $serv->on('op ...

  7. springboot 中单机 redis 实现分布式锁

    在微服务中经常需要使用分布式锁,来执行一些任务.例如定期删除过期数据,在多个服务中只需要一个去执行即可. 以下说明非严格意义的分布式锁,因为 redis 实现严格意义的分布式锁还是比较复杂的,对于日常 ...

  8. 二次urldecode注入

    原理大多数web程序都会对输入字符进行转换,例如addslashes(),mysql_real_escape_string(),mysql_escape_string(),也就是对单引号',双引号&q ...

  9. CentOS7安装Jenkins与配置

    安装 将Jenkins存储库添加到yum repos,并从此安装Jenkins. sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenki ...

  10. jQuery获取display为none的隐藏元素的宽度和高度的解决方案

    1.利用给元素添加行内样式:visibility:hidden;display:block 2.让隐藏元素变成有物理尺寸存在,但不可见,获取元素宽高 3.再给它还原成display为none,去除vi ...