朴素神经网络原理抛砖引玉

● 每周一言

经验不一定是真理,但通常都很管用。

导语

人工神经网络(ANN)作为机器学习当下最热门的模型,在图像识别、语音识别以及各种分类问题中,带来的效果与收益有目共睹。那么,神经网络模型具体是如何起作用的?如何直观感受神经网络的内部工作原理?

抛砖引玉

为了方便理解与表达,我们假设所有的输入值与标签非1即0,01的表示方式正好也能拿来描述神经元的激活状态。首先,我们从单层神经网络开始聊起。单层神经网络类似下图所示:

fig1

假设有二维数据(x1, x2 -> y),有(0, 1 -> 1)、(1, 0 -> 1)、(0, 0 -> 0)、(1, 1 -> 0),可知这是一组抑或操作的结果,而在一个二维空间内是没法用一条直线来划分01类别的,因此需要空间变换。比如,可以将二维的输入数据转化成另一个二维空间的数据(0.5, 0 -> 1)、(0.5, 0 -> 1)、(0, 0 -> 0)、(1, 1 -> 0),规则是第一个神经元取x1、x2的平均值,而第二个神经元则将x1、x2相乘。此时,我们就可以用一条直线将01两类区分开来了。

因此,单层神经网络相当于从一个空间映射到另一个空间的过程。那么单层神经网络是不是就能解决所有问题了?答案是否定的,比如一个高维分类问题,如果使用单层神经网络,当神经元的个数增加到一定数量,也就是转化到某个高维度时,一定可以找到一个平面来完美切分转化后的数据。但是,得到的模型通常由于过拟合,使得泛化能力比较低。而且,单层模型由于只经过了一层线性变换,模型的分类能力也较为有限。因此,多层神经网络便出现了。

fig2

多层神经网络,一般又叫深度神经网络,其实也是从一个空间映射到另一个空间的过程,与单层神经网络的差别是经过了多次线性变换,这多次线性变换使得模型具有了强大的非线性分类能力。不过,对于深度神经网络的直观解释,小斗还没有想出来,欢迎各位留言交流。敬请期待下节内容。

结语

感谢各位的耐心阅读,后续文章于每周日奉上,敬请期待。欢迎大家关注小斗公众号 对半独白

face

发布了91 篇原创文章 · 获赞 113 · 访问量 27万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章