卷积神经网络学习--**函数

这篇学习笔记主要参考和综合了两个帖子的内容,详见参考文档,感谢两位大神。

 

1 什么是**函数?

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

目前知道的**函数有如下几个:sigmoid,tanh,ReLu,softmax。 

simoid函数也称S曲线:f(x)=11+e−x

tanh:f(x)=tanh(x)

ReLUf(x)=max(x,0)

softmax:f(x)=log(1+exp(x))

2 神经网络中为什么要使用**函数?

 

  • **函数是用来加入非线性因素的,因为线性模型的表达力不够

 

这句话字面的意思很容易理解,但是在具体处理图像的时候是什么情况呢?我们知道在神经网络中,对于图像,我们主要采用了卷积的方式来处理,也就是对每个像素点赋予一个权值,这个操作显然就是线性的。但是对于我们样本来说,不一定是线性可分的,为了解决这个问题,我们可以进行线性变化,或者我们引入非线性因素,解决线性模型所不能解决的问题。

这里插一句,来比较一下上面的那些**函数,因为神经网络的数学基础是处处可微的,所以选取的**函数要能保证数据输入与输出也是可微的,运算特征是不断进行循环计算,所以在每代循环过程中,每个神经元的值也是在不断变化的。

这就导致了tanh特征相差明显时的效果会很好,在循环过程中会不断扩大特征效果显示出来,但有是,在特征相差比较复杂或是相差不是特别大时,需要更细微的分类判断的时候,sigmoid效果就好了。

还有一个东西要注意,sigmoid 和 tanh作为**函数的话,一定要注意一定要对 input 进行归一话,否则**后的值都会进入平坦区,使隐层的输出全部趋同,但是 ReLU 并不需要输入归一化来防止它们达到饱和。

  • 构建稀疏矩阵,也就是稀疏性,这个特性可以去除数据中的冗余,最大可能保留数据的特征,也就是大多数为0的稀疏矩阵来表示。

其实这个特性主要是对于Relu,它就是取的max(0,x),因为神经网络是不断反复计算,实际上变成了它在尝试不断试探如何用一个大多数为0的矩阵来尝试表达数据特征,结果因为稀疏特性的存在,反而这种方法变得运算得又快效果又好了。

所以我们可以看到目前大部分的卷积神经网络中,基本上都是采用了ReLU 函数。

对于上面的理论说明,似乎还不是很直观,所以再看下知乎中lee philip举的例子吧,感觉很通俗易懂。里面有个图感觉作者画反了,所以按照我的理解进行了修改。另外,对于例子中也存在一些疑问,就是作者神经网络图中直接由第一层到第三层,这个在在cnn中没有见过。

以下,同种颜色为同类数据。

某些数据是线性可分的,意思是,可以用一条直线将数据分开。比如下图:

卷积神经网络学习--**函数

这时候你需要通过一定的机器学习的方法,比如感知机算法(perceptronlearning algorithm) 找到一个合适的线性方程。

但是有些数据不是线性可分的。比如如下数据:

卷积神经网络学习--**函数

第二组数据你就没有办法画出一条直线来将数据区分开。

这时候有两个办法,第一个办法,是做线性变换(lineartransformation),比如讲x,y变成x^2,y^2,这样可以画出圆形。如图所示:

卷积神经网络学习--**函数

如果将坐标轴从x,y变为以x^2,y^2为标准,你会发现数据经过变换后是线性可分的了。大致示意图如下:


卷积神经网络学习--**函数

另外一种方法是引入非线性函数。我们来看异或问题(xor problem)。以下是xor真值表

卷积神经网络学习--**函数

这个真值表不是线性可分的,所以不能使用线性模型,如图所示

卷积神经网络学习--**函数

我们可以设计一种神经网络,通过**函数来使得这组数据线性可分。
**函数我们选择阀值函数(threshold function),也就是大于某个值输出1(被**了),小于等于则输出0(没有**)。这个函数是非线性函数。

神经网络示意图如下:


卷积神经网络学习--**函数

其中直线上的数字为权重。圆圈中的数字为阀值。第二层,如果输入大于1.5则输出1,否则0;第三层,如果输入大于0.5,则输出1,否则0.

我们来一步步算。

第一层到第二层(阀值1.5)
卷积神经网络学习--**函数

第二层到第三层(阀值0.5)

卷积神经网络学习--**函数

可以看到第三层输出就是我们所要的xor的答案。

经过变换后的数据是线性可分的(n维,比如本例中可以用平面),如图所示:

卷积神经网络学习--**函数

总而言之,**函数可以引入非线性因素,解决线性模型所不能解决的问题。

 

 

 

1 参考文档

[1]http://blog.****.net/u014088052/article/details/50923924

[2]https://www.zhihu.com/question/22334626/answer/21036590帖子中lee philip的回答