开发者学堂课程【神经网络概览及算法详解:神经网络学习规则-2】学习笔记与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/40/detail/919
神经网络学习规则-2
内容介绍:
一、赫布法则
二、巴甫洛夫的条件反射实验
三、赫布学习规则是什么
四、赫布学习规则步骤
五、赫布学习规则距举例
一、赫布法则
赫布法则(Hebb's rule):Donald Hebb是一位生物学家,在他的一本书《The Organization of Behavior》中解释了学习过程中大脑中的神经细胞是如何改变和调整的,认为知识和学习发生在大脑主要是通过神经元间突触的形成与变化。
当细胞A的轴突足以接近以激发细胞B,并反复持续地对细胞B放电,一些生长过程或代谢变化将发生在某一个或这两个细胞内,导致A作为对B放电的细胞中的一个效率增加。通俗来讲就是两个神经细胞交流越多,它们连接的效率就越高,两个神经细胞交流越少,连接的效率就越低。
McCulloch-Pitts模型缺乏一个对人工智能而言至关重要的学习机制,M-P模型很好的简化、模拟了神经元,但是无法通过学习的方式调整、优化权重,形成有效的模型。赫布法则的出现解决了以上问题,成为神经模型的训练(学习机制)的基础性工作。
二、巴甫洛夫的条件反射实验
大家都知道薛定谔的猫,芝诺的乌龟,巴甫洛夫的狗,巴甫洛夫著名的条件反射实验:每次给狗喂食前都先响铃,时间一长,狗就会将铃声和食物联系起来。以后如果铃响但是不给食物,狗也会流口水。
赫布受此实验启发,认为在同一时间被激发的神经元间的联系会被强化。
例如,铃声响时一个神经元被激发,在同一时间食物的出现会激发附近的另一个神经元,那么这两个神经元间的联系会被强化,从而记住这两个事物之间存在着联系。相反,如果两个神经元总是不能同步激发,那么它们之间的联系将会越来越弱。
例如,每次喂狗前不摇铃而敲鼓,那么渐渐的每次喂狗再摇铃狗将不会有反应。联系变淡,赫布规则被作为无监督神经网络的学习规则,广泛应用于自组织神经网络、竞争网络中。这个在后面讲自组织神经网络、竞争网络时也会通过讲赫布法则的方式训练模型。
三、赫布学习规则是什么
赫布学习规则为前馈、无导师学习。只根据实际输入和输出调整权重。
在赫布学习规则中:
1、学习信号简单的等于神经元的输出:
中间 nat 值,代数的累加和经过激活函数 f 处理即为实际函数。这个也叫做学习信号。
2、权重向量的调整公为:
每次调整权值时的变化量就等于 η 乘上输出信号 r 再乘上输入 X 。η为常数。这个为向量表现形式。
3、权向量各个分量调整为:
分量形式更容易理解,变化的,需要调整的权向量 W 下标 i j 等于常数 η 乘输出再乘 x 下标 i 。
回想单个神经元的图,有输入有输出,x1 有自己对应的权重 w1 键,更新 w1 键权重时,实际上是用整个的输出乘一个常数,再和对应的输入乘起来,简单记作
Η 乘 o 下标 j 乘下标 i 。利用上图公式来调整权重,该公式说明权向量的调整和输入输出的乘积成正比。可以用 η 乘o下标 j 乘下标 i 来调整权向量更改的速度。
四、赫布学习规则步骤
1、初始化权值 W ,一般赋予 0 附近的随机数;
2、初始化学习率 η ;
3、对所有输入记录;
根据输入记录,更新权重值。
五、赫布学习规则例子:
如题:
阈值: T=0,学习速率: η =1(需要自己调整可接受的值),初始权值: w0)=(1,-1,0, 0.5)T ,输入样本有: x(1)=(1,-2,1.5,0)T ,使用第一个样本 x1=1 , x2=-2 , x3=1.5 , x4=0 ; x(2) = (1,-0.5,-2,-1.5)T 第二个样本同上,x(3) = (0,1,-1,1.5)T ,激活函数: f(x)=sgn(x) ,使用赫布规则训练网络。
首先代入第一个样本x(1),计算net(1)下标1。(净输出)
净输出= x1 乘 x1 的权重+ x2 乘 x2 的权重+ x3 乘 x3 的权重+ x4 乘 x4 的权重。如下图中所示:net(1)下标1 =初始权值: w0)=(1,-1,0, 0.5)T 乘 x(1)=(1,-2,1.5,0)T =3。
根据第一个样本 x(1),更新 w(0):
W(1)表示第一次更新,等于原来的值加 η 乘输出值(输出值=sgn(net(1) * x(1) )再乘x(1)。net(1)下标1的值是3,大于阈值,3 3的复合函数的取值为1,再乘x1,就得到 W 第一次更新的值。
net(1)下标1的值是3,需要激活函数进行处理为 o ,激活函数是复合函数,他的值大于0,输出结果就是1,小于0,输出结果就是-1。3大于0,故3的复合函数的取值为1。
代入第二个样本 x(2),计算 net(2)下标1。
将样本值代入,注意权重值 w(1) 是第一次更新后的值,不再是初始值,结果是-0.25。然后再根据第二个样本进行更新 w(1)。发现这个时候为-1,实际为对-0.25求 sgn ,sgn函数值为 -1 ,就得到第二次更新后的当前的权重值。
代入第三个样本 X(3),计算 net(3) 下标1。用第二次更新的权重值乘第三个样本,结果为-3,再根据第三个样本来更新w(2)的权重,值为-1,即原来的权重值加上学习率乘复合函数的结果-1再乘输入值x(3),结果为第三次更新后的权重值。
这就是赫布学习规则。