从这一篇开始,我们将进入神经网络学习中。
一、起源
说到神经网络,必然先从生物神经元的结构说起:
左边细胞主体(cell body),它的周围有许多突触(dendrites),突触(dendrites)与周围的神经元相连,所有实际上这个神经元周围还有很多的神经元,突触(dendrites)就是与其他神经元相互连接 的桥梁。看图中的蓝色箭头,从突触(dendrites)开始输入,进入神经元,然后通过轴突(axon),用来传递输出。所以一般这个神经元接受输入,如果同时有很多个神经元在工作,这个神经元可以阻断一些信号,选择一个信号传递给轴突(axon),图中的轴突有两个分叉,可以连接到其他的神经元上,其他神经元的树突连接到这个轴突上。总的来说,这个神经元处于一个神经网络中,树突是神经元的输入,轴突是神经元的输出。
二、引入
下面,我们再来看一个数学神经元结构,和这个差不多:
X0是来自其他神经元的轴突(axon),每一个突触(dendrite)都有一个属于它自己的权重,用来表达两个神经元的相似度。轴突携带X0与突触进行交流,然后用这个粗糙的模型进行乘法,所以我们得到W0*X0传向细胞主体(cell body),细胞主体在这里执行了一个操作,把所有输入求和再加上偏置,在后面的轴突上有一个激活方程(activation function),数据经过激活方程,得到这个神经元的输出。在生物学模型中,历史上人们习惯用sigmoid函数作为激活方程,因为经过sigmoid函数得到的结果是介于[0,1]之间的数,我们可以理解为这个是神经元对于某个输入的处理比率,所以激活函数得到的是一个比率值。如果这个神经元在上一个神经元的输出中找到了它喜欢的东西,那么比率值就会很大。

三、一些细节
我们看一下相应的Python伪代码:
<

本文介绍了神经网络的基本概念,包括生物神经元的工作原理、数学模型、激活函数等,并通过Python伪代码展示了神经元及神经网络的实现过程。
最低0.47元/天 解锁文章
1072

被折叠的 条评论
为什么被折叠?



