Task04 西瓜书

5.1 神经元模型
在生物神经网络中,每个神经元与其他神经元相连,当某个神经元兴奋时,它就会向其他相连的神经元传递化学物质,从而改变了这些神经元内的电位;如果某个神经元的电位超过了一个阈值(threshold),那么就会被激活,即兴奋起来,向其他神经元发送化学物质。

M-P神经元模型正是从生物神经网络中抽象出来的。
在M-P神经元模型中,神经元接收到其他n个神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元收到的总输入值将与神经元的阈值进行比较,然后通过激活函数(active function)处理以产生神经元的输出。

感知机学习过程:
可以看出感知机是通过逐个样本输入来更新权重:设定好权重(一般为随机),逐个地输入样本数据,若输出值与真实标记一致则继续输入下一个样本,否则更新权重,再开始重新逐个检验,直到所有的样本的输出值与真实标记一致。

感知机只有输出层神经元进行激活函数处理,即只拥有一层功能神经元,其学习能力非常有限,只能处理线性可分的问题。

对于线性可分的问题,感知机的学习过程总能收敛而求得适当的权向量w = ( w 1 ; w 2 ; . . . ; w n + 1 ) ,即感知机模型总能将训练数据(不是测试数据)的每一个样本都预测正确,但也容易产生过拟合问题。
对于线性不可分的问题(如异或问题),则需要用多层功能神经元。

5.3 误差逆传播算法
多层网络拥有比感知机更强大的学习能力,之前论述的感知机学习规则对于多层网络来说显然不够用,需要更强大的学习算法,误差逆传播(error BackPropagation,简称BP)算法就是其中的杰出代表,是迄今最成功的神经网络学习算法。
BP算法除了运用在多层前馈神经网络之外,还可以用在许多其他类型的神经网络,例如训练递归神经网络等等。
BP神经网络过拟合的缓解方法:多层前馈神经网络有强大的表示能力,只要隐层包含的神经元数量足够多,它就能以任意精度逼近任意复杂度的连续函数。
但是,如何设置隐层神经元的个数仍是个未决问题,实际应用中通常靠“试错法”(trail-by-error)调整

由于多层前馈网络的强大表示能力,经常遇到这样的情况:训练误差持续降低,但测试误差却在上升,这就是BP神经网络经常遭遇的过拟合问题。
通常,有以下两种方法缓解BP网络的过拟合:

“早停(early stopping)”:将数据分成训练集和验证集,训练集用来计算梯度,更新连接权和阈值,验证集用来估计误差。若出现过拟合现象,则停止训练,同时返回具有最小验证集误差的连接权和阈值。
“正则化(regularization)”:在误差目标函数中增加一个用于描述网络复杂度的部分,例如连接权和阈值的平方和。

浙ICP备19012682号