既然加入激活函数是为了加入非线性因素,那么为什么可以使用ReLu呢?

1、max(0,x)的话在大于0的区间就是线性的,这样还能起到加入非线性元素的作用吗?
2、leaky ReLU作为ReLU的进阶版为什么并没有比ReLu常用呢?

阅读 6.8k
3 个回答

ReLu虽然在大于0的区间是线性的,在小于等于0的部分也是线性的,但是它整体不是线性的,因为不是一条直线

多个线性操作的组合也是一个线性操作,没有非线性激活,就相当于只有一个超平面去划分空间。但是ReLu是非线性的,效果类似于划分和折叠空间,组合多个(线性操作 + ReLu)就可以任意的划分空间。

clipboard.png

很多ReLU改进版:leaky relu、prelu、elu、crelu……各有各的效果和性能,都不比为relu常见:

  1. 不一定有效,例如没遇到dying relu,就没必要用leaky relu,用了也不一定会更好
  2. 更复杂、性能不如relu

参考:

  1. How Do Neural Networks Work?

同意楼上的回答,再补充一点吧:
关于线性非线性的解释:在数学中,函数是线性函数,那么这个函数就是一条直线;而剩下的所有情况都属于非线性函数。
根据以上定义,折线也不属于线性函数,而Relu就是折线的一种,所以就是非线性了。。

新手上路,请多包涵

线性是指所有变量的最高次幂最大为1, 比如3x + 5y就是线性的,3x^2 + 5y就不是线性的了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏