人工神经网络的生物原型是大脑,人脑中的神经网络是一个非常复杂的组织,其基本组成单位是神经元(神经细胞),成人的大脑中估计有1000亿个神经元之多。十九世纪末二十世纪初,在解剖学家、生物学家、医学家的共同努力下,神经元的组成结构便被研究清楚,一个神经元主要由四部分构成:
- 细胞体:它是神经元的本体,内有细胞核和细胞质,完成普通细胞的生存功能。
- 树突:它有大量的分枝,多达数量级,长度较短(通常不超过1毫米),用以接收来自其它神经元的信号。
- 轴突:它用以输出信号,有些较长(可达1米以上),轴突的远端也有分枝,可与多个神经元相连。
- 突触:它是一个神经元与另一个神经元相联系的特殊部位,通常是一个神经元轴突的端部靠化学接触或电接触将信号传递给下一个神经元的树突或细胞体。
神经元怎么发挥作用呢?其实神经元是个信号处理单元,它有两种状态:兴奋和抑制。平时处于抑制状态的神经元,当接收到其它神经元经由突触传来的冲击信号时,多个输入在神经元中以代数和的方式叠加。如果叠加总量超过某个阈值,神经元就会被激发进入兴奋状态,发出输出脉冲,并由轴突的突触传递给其它神经元。神经元被触发后有一个不应期,在此期间内不能被触发,然后阈值逐渐下降,恢复原来状态。
神经元模型便是模拟大脑神经元的运行过程,其包含输入,输出与计算功能,输入可以类比为神经元的树突,而输出可以类比为神经元的轴突,计算则可以类比为细胞核。下图是一个典型的神经元模型:包含有个输入,1个输出,以及2个计算功能:
输入信号来自外部或别的处理单元的输出,在数学上表示为行向量,其中为第个输入的激励电平,表示输入数目。
连接到结点的加权表示为加权向量,其中表示从结点(或第个输入点)到结点的加权,或称与结点之间的连接强度。
计算功能的主要作用是对每个输入信号进行处理以确定其强度(加权);确定所有输入信号的组合效果(求和);然后确定其输出(转移特性)。
考虑到内部阈值,用的固定偏置输入点表示,其连接强度取。于是,可得输入的加权和为:
处理单元的激励电平通过一个转移函数,得到处理单元的最后输出值:
转移函数也称激励函数、传输函数或限幅函数,其作用就是将可能的无限域变换到一指定的有限范围内输出,这类似于生物神经元具有的非线性转移特性。常用的转移函数有线性函数、斜坡函数、阶跃函数、符号函数、Sigmoid函数、双曲正切函数、ReLU函数等。具体的可参考博客深度学习常用**函数。
神经元模型的使用可以这样理解:假设有一个新的数据样本,其有多个属性,其中个属性已知,1个属性未知。此时需要做的就是通过个已知属性预测未知属性。通常情况下已知的属性称之为特征,未知的属性称之为目标。若已经得到表示特征与目标之间关系的权值,,,,那么就可以通过神经元模型预测新样本的目标。可见,一个神经元的功能是求得输入向量与权向量的内积后,经一个非线性传递函数得到一个标量结果。
参考资料
- https://wenku.baidu.com/view/601de31452d380eb62946d7b.html 05神经网络原理及应用
- https://item.jd.com/11867803.html 《机器学习》 周志华
- http://www.cnblogs.com/subconscious/p/5058741.html#second 神经网络浅讲:从神经元到深度学习