转载自CSDN, CReLU激活函数

CReLU 一种改进 ReLU 激活函数的文章,来自ICML2016.

1. 背景介绍

整个文章的出发点来自于下图的统计现象:

为了看懂上图。

(1)首先介绍一下余弦相似度(cos距离)的概念

cos距离的取值范围是 [-1,+1],距离越接近-1,表示两个向量的方向越相反,即呈负相关关系。


(2)再来介绍一下 pair filter的定义

一个卷积层有 \(j=1, \cdots, n\) 个卷积核(filter), 一个卷积核 \(ϕ_i\) 对应的 pairing filter 定义为

\[ϕ_i = argmin_{ϕ_j}cos<ϕ_i, ϕ_j>\]

即从所有卷积核中选择一个cos相似度最小的卷积核。

我们再回头看上图。 对所有卷积核寻找其 pair filter,并计算cos相似度得到蓝色的统计直方图。 红色的曲线,是假设随机高斯分布生成的卷积核得到的相似度统计。

现象:网络的前部,参数的分布有更强的负相关性(类似于正负对立)。随着网络变深,这种负相关性逐步减弱。
结论:网络的前部,网络倾向于同时捕获正负相位的信息,但ReLU会抹掉负响应。 这造成了卷积核会存在冗余。

2. CReLU

CReLU的定义很简单:

\[\text{CReLU(x)= Concat[ ReLU(x), ReLU(−x) ]}\]

输出维度会自动加倍。 比如

\[ [−3, 1] \rightarrow \begin{matrix}
[[0&1], \\ [3&0]] \\
\end{matrix}\]

在网络中的实现也很简单,甚至不用修改代码(通过scale层取反再经过一次ReLU)

CReLU激活函数的更多相关文章

  1. 激活函数(relu,prelu,elu,+BN)对比on cifar10

    激活函数(relu,prelu,elu,+BN)对比on cifar10   可参考上一篇: 激活函数 ReLU.LReLU.PReLU.CReLU.ELU.SELU  的定义和区别   一.理论基础 ...

  2. Difference between ReLU、LReLU、PReLU、CReLU、ELU、SELU

    激活函数 ReLU.LReLU.PReLU.CReLU.ELU.SELU  的定义和区别 ReLU tensorflow中:tf.nn.relu(features, name=None) LReLU ...

  3. 浅谈深度学习中的激活函数 - The Activation Function in Deep Learning

    原文地址:http://www.cnblogs.com/rgvb178/p/6055213.html版权声明:本文为博主原创文章,未经博主允许不得转载. 激活函数的作用 首先,激活函数不是真的要去激活 ...

  4. The Activation Function in Deep Learning 浅谈深度学习中的激活函数

    原文地址:http://www.cnblogs.com/rgvb178/p/6055213.html 版权声明:本文为博主原创文章,未经博主允许不得转载. 激活函数的作用 首先,激活函数不是真的要去激 ...

  5. 神经网络中的激活函数——加入一些非线性的激活函数,整个网络中就引入了非线性部分,sigmoid 和 tanh作为激活函数的话,一定要注意一定要对 input 进行归一话,但是 ReLU 并不需要输入归一化

    1 什么是激活函数? 激活函数,并不是去激活什么,而是指如何把“激活的神经元的特征”通过函数把特征保留并映射出来(保留特征,去除一些数据中是的冗余),这是神经网络能解决非线性问题关键. 目前知道的激活 ...

  6. ReLU、LReLU、PReLU、CReLU、ELU、SELU

    ReLU.LReLU.PReLU.CReLU.ELU.SELU 2018年01月22日 22:25:34 luxiaohai的学习专栏 阅读数 28218更多 分类专栏: 深度学习   版权声明:本文 ...

  7. ReLu(Rectified Linear Units)激活函数

    论文参考:Deep Sparse Rectifier Neural Networks (很有趣的一篇paper) 起源:传统激活函数.脑神经元激活频率研究.稀疏激活性 传统Sigmoid系激活函数 传 ...

  8. 深度神经网络(DNN)损失函数和激活函数的选择

    在深度神经网络(DNN)反向传播算法(BP)中,我们对DNN的前向反向传播算法的使用做了总结.里面使用的损失函数是均方差,而激活函数是Sigmoid.实际上DNN可以使用的损失函数和激活函数不少.这些 ...

  9. tensorflow Relu激活函数

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

随机推荐

  1. C# — Windows服务安装后自动停止问题

    今天在使用VS创建一个Windows服务时,为了得到一些提示,引用了Windows.Forms程序集,然后使用MessageBox.Show()方法渴望得到一些弹窗提示: 但是最后在安装好服务后,在任 ...

  2. Golang 入门系列(四)如何理解interface接口

    前面讲了很多Go 语言的基础知识,包括go环境的安装,go语言的语法等,感兴趣的朋友,可以先看看之前的文章.https://www.cnblogs.com/zhangweizhong/category ...

  3. Java中,尽量相信自己,使用自己写的方法,不要使用底层提供的方法。都是坑。

    Date转LocalDate时,调用toInstant()报UnsupportedOperationException异常. https://www.jianshu.com/p/11d8ed48f7a ...

  4. Zookeeper连接eclipse

    package com.bw.ZK; import java.io.IOException; import org.apache.zookeeper.CreateMode; import org.ap ...

  5. mybatis 使用接口绑定

    使用selectList,selectOne..的缺陷 刚开始学习mybatis的时候,使用selectList或者selectOne,传入要调用的mapper,如果又参数要传递的话,就需要将参数进行 ...

  6. 如何伪造IP(转)

    要明白伪装IP的原理,首先要回顾一下TCP的三次握手. 总所周知在链接初始化的阶段, 需要一次三次握手来建立链接, 之后客户端和服务端会依据初始的这个IP地址来通信. 从这个角度上来说, 想真正的伪装 ...

  7. UVA 10118 Free Candies

    https://vjudge.net/problem/UVA-10118 题目 桌上有4堆糖果,每堆有$N$($N\leqslant 40$)颗.有个熊孩子拿了个可以装5颗糖的篮子,开始玩无聊的装糖游 ...

  8. 【数学建模】day14-建立GM(1,1)预测评估模型应用

    学习建立GM(1,1)灰色预测评估模型,解决实际问题: SARS疫情对某些经济指标的影响问题 一.问题的提出 2003 年的 SARS 疫情对中国部分行业的经济发展产生了一定影响,特别是对部分 疫情较 ...

  9. BZOJ4817[Sdoi2017]树点涂色——LCT+线段树

    题目描述 Bob有一棵n个点的有根树,其中1号点是根节点.Bob在每个点上涂了颜色,并且每个点上的颜色不同.定义一条路 径的权值是:这条路径上的点(包括起点和终点)共有多少种不同的颜色.Bob可能会进 ...

  10. [十二省联考2019]字符串问题——后缀自动机+parent树优化建图+拓扑序DP+倍增

    题目链接: [十二省联考2019]字符串问题 首先考虑最暴力的做法就是对于每个$B$串存一下它是哪些$A$串的前缀,然后按每组支配关系连边,做一遍拓扑序DP即可. 但即使忽略判断前缀的时间,光是连边的 ...