这周本来想写一篇个人笔记,关于神经网络中反向传播算法识别手写字符的实现。但是,在整理自己的思路的时候,发现本人把之前看的许多神经网络的东西都给忘了,内心很是着急啊!在看到激活函数的时候,突然不知道激活函数是干嘛用的!立马翻遍手里的纸质资料,都说的模糊不清。无奈,赶紧来网上看看!下面,我就把在网上看到的知识点,总结一下,形成读书笔记,方便大家学习!由于本人知识有限,文章有少部分参考网上,如有侵权,请告知!我会及时修改、删除!
PS:如果你觉得这篇文章看起来稍微还有些吃力,或者想要系统地学习人工智能,那么推荐你去看床长人工智能教程。非常棒的大神之作,教程不仅通俗易懂,而且很风趣幽默。点击这里可以查看教程。
我来简单的解释一下图2。在图2中,左图是一个单层的感知机结构,其中W1、W2是网络上权重,b是偏置量。左图是一个没有激活函数单层感知机,它的工作原理是:输入特征X1和特征X2,如果y>0,证明是正类;如果y<0,证明是负类。我们这里不讨论y=0的特殊情况。根据单层感知机的工作原理,我们画出右边的坐标图。 总结:不带激活函数的单层感知机是一个线性分类器,不能解决线性不可分的问题。(2)用不带激活函数的多个感知机来解决。 不带激活函数的单层感知机解决不了问题,那我们就会想到用多个感知机进行组合,获得更强的分类能力,看看能不能解决我们的线性不可分问题。如图3所示。 图3 多个感知器 图3中,我们已经得到了多感知器分类器了,那么它的分类能力能否解决我们的线性不可分的问题呢?我们来分析一下,来对y进行一个合并同类项,整理后的公式如下: y=X1(W1-11W2-1+W1-12W2-2+W1-13W2-3)+X2(W1-21W2-1+W1-22W2-2+W1-23W2-3)+W2-1b1-1+W2-2b1-2+W2-3b1-3 大家看一下,合并后的式子,还是一个关于X1和X2的线性表达式,合并后的多个感知器本质上还是一个线性分类器,还是解决不了非线性的问题。 不管是单层感知机还是多个感知器,只要不带激活函数,都只能解决线性可分的问题。解决不了我们的线性不可分问题。不信,那我们就在平面中画几条直线试试,结果发现这几条直线无论在平面中如何旋转,都不能完全正确的分开三角形和圆点。结果如图4所示。 图4:线性分类器解决不了问题 在上面的线性方程的组合过程中,我们其实类似的在做三条直线的线性组合,如图5所示。图5描述了,当我们直接用没有激活函数的分类器时,其实我们还是线性组合,最多也就是更复杂的线性组合罢了。有人在这里又要抖机灵了!我数学学的好,我记得学高等数学的时候,在不定积分那一块,有个画曲为直思想来近似求解。那么,我们可以来借鉴一下,用无数条直线去近似接近一条曲线,你很聪明啊!但是比着用非线性的激活函数来说,你这解决办法还是太低端了一些。 图5:没有激活函数的分类器 思考一个问题:抛开神经网络中神经元需不需要激活函数这点不说,如果没有激活函数,仅仅是线性函数的组合解决的问题太有限了,碰到非线性问题就束手无策了.那么加入激活函数是否能够解决呢?