non-saturated function in AlexNet

来源:互联网 发布:英文域名注册查询 编辑:程序博客网 时间:2024/04/30 20:38

              温故而知新,再看AlexNet的《AlexNet-ImageNet Classification with Deep Convolutional Neural Networks》 的时候出现了non-saturated function,不知所云,所以查找了这篇博客,mark一下。


   最近在看机器学习的书籍时,经常会发现saturate这个术语。saturate这个词的直译是“浸透、饱和”,那么在机器学习里面应该怎样去理解saturate这个词呢?


一、什么是saturated model?

   一个saturated model就是说:这个模型需要估计的参数,跟数据集的个数一样多(或者更多)。根据定义来说,这样的模型可以很好的fit所有的数据,但这样的模型在统计学的角度上讲并不是特别有用,因为它没有数据去estimate variance了。例如,用一个5阶的polynomial去fit 6个点的数据,就可以得到一个saturated model(one parameter for each of the 5 powers of your independent variable plus one for the constant term)。

   总之,saturated model会得到high-variance的预测模型,受noise的影响也更多。但不是说saturated总是一无是处的。在human cognition、image compression and reconstruction(图像压缩和重建)等领域它也会有所应用。


二、什么是saturating activation function(激活函数)

    一个saturating激活函数squeeze the input(对输入数据进行压缩)。那么non-saturating的含义是什么呢。


   例如修正线性函数( Rectified Linear Unit (ReLU))就是non-saturating的激活函数,而sigmoid和tanh函数就是saturating的激活函数。原因如下图所示




   如图所示sigmoid和tanh分布把数据压缩在了[0,1]和[-1,1]之间,因而属于saturating激活函数。


三、saturate

  saturate的充分条件是:输出接近0或1,而且gradient vanish。例如下文这一段黄色标记部分是:当(1-2y)z负的非常多的时候,这个函数J才会saturate。其中softplus函数图如段落后的图所示,我们可以看出当x负的非常多的时候,这个函数的输出接近为0,即saturate。



另外,对于AlexNet的理解,可以参考:

【1】论文翻译:http://blog.csdn.net/motianchi/article/details/50851074

【2】AlexNet神经网络的解释:http://www.cnblogs.com/gongxijun/p/6027747.html

【3】saturated function的解释:http://blog.csdn.net/whu_paprika/article/details/54085670



0 0
原创粉丝点击