当前位置:
文档之家› 2.10_Boltzmann神经网络模型与学习算法
2.10_Boltzmann神经网络模型与学习算法
因此相应于各极小点的状态出现的概率就大 于周围状态出现的概率,进而全局最小点出现的 概率就大于局部极小点出现的概率。
P E E E E 0 1 P P P
BM网络状态演变的能量特征
另一方面,温度T对网络的状态影响很大。在高温下, 即使Δ Ei值有较大变化,神经元状态概率差别较小。反之, 在低温下神经元状态对Δ Ei的变化更加敏感。显然,如果温 度参数T低到趋于0,则每一个神经元不再具有随机性,输入 -输出接近硬限幅函数关系,这时BM神经网络退化为HNN.
确定目标(终止)温度值Tfinal
主要根据经验选取,若在连续若干温度下网络状态保 持不变,也可认为已达到终止温度。
注意事项
概率阀值的确定方法
在网络初始化时按经验确定,或在运行过程 中选取一个[0,0.5]之间均匀分布的随机数。 网络权值的确定方法 在每一温度下达到热平衡的条件 降温方法
P(v j 1)
u j 越大,则 v j 取1的概率越大,而取0的概率越小
2.10.1 Boltzmann机的网络结构
神经元的全部输入信号的总和由下式给出
ui wij v j bi
j 1
n
bi为神经元的阈值,并将其看作连接权值为1的输 入,可以归并到总的加权和中去,即得到下式
2.10.2 Boltzmann机学习算法
(4)除i外的神经元的输出状态保持 不变,即除i外的神经元的状态由下面公 式求解得出:j (t 1) v j (t ) j 1,2,, N ; j i v (5)令t t பைடு நூலகம் 1,按照下式计算出新的 温度参数: T
T (t 1)
j
图中vj表示神经元 j 的输出
2.10.1 Boltzmann机的网络结构
Boltzmann机神经元模型 每个神经元的兴奋或抑制具有随机性, 其概率取决于神经元的输入
v1
v2
wi1 wi 2
wij
ui bi
vj
pi
vi
vn
win
图中vi表示神经元i的输出
v1
v2
wi1 wi 2
wij
2.10.2 Boltzmann机学习算法
状态更新算法
(1)网络初始化
给初始状态赋[-1,1]之间的随机数,设定起始温度T0 和目标温度值Tfinal。
(2)求解内部状态
从N个神经元中随机选取一个神经元,根据下式求解出 神经元的输入总和,即内部状态。
H i (t )
j 1, j i
2.10.1 Boltzmann机的网络结构
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -20 T-0.25 T-1 T-4
-15
-10
-5
0
5
10
15
20
横坐标表示神经元的输入总和,纵坐标表示概率
网络能量函数
与Hopfield神经网络一样, BM神经网络用能 量函数作为描述网络状态的函数,能量函数采用与 Hopfield网络相同形式 n 1 T 1 n n E wij vi v j vi I i 或 E V WV 2 2 i 1 j 1 i 1 由上式可以看出,如果相应于具有相同状态的元 vi和vj之间权值wij大多取正值,而具有相反状态wij大 多取负值,E才会具有最低的值;反之,E就相对较 高。显然低能量的网络状态表达着网络的更加有序性, 这与热力学系统是完全对应的,也是与Hebb规则相 呼应的。E降至其全局最小点时,网络即达到其最佳 状态,这就是我们要搜索的最优解。
2.10.2 Boltzmann机学习算法
算法原理 Boltzmann机可视为一动力系统,其能量函 数的极小值对应系统的稳定平衡点 将待求解优化问题的目标函数与网络的能量 函数相对应,神经网络的稳定状态就对应优 化目标的极小值 算法分类 状态更新算法
用于解决优化组合问题
联想记忆算法
用于解决依照一定概率重现记忆的问题
ui bi
vj
pi
vi
vn
n j 1
win
H i (t )
n
j 1, j i
N
wij u j (t ) b j
ui wij v j bi
ui (t ) wij v j bi
j 1
2.10.1 Boltzmann机的网络结构
神经元的全部输入信号的总和由下式给出 n
n j 1
N
wij u j (t ) b j
ui (t ) wij v j bi
2.10.2 Boltzmann机学习算法
状态更新算法
ui (t ) wij v j bi
(3)更新神经元状态
根据下面公式更新神经元的状态:
j 1
n
1 P[vi (t 1) 1] 1 exp( H i (t ) / T ) 1 P(vi (t 1) 1) u (t ) i 1 e T
因此T很高时,各状态出现概率的差异大大减小,网络 不会陷在某个极小点中摆脱不出来,它能越过位能壁垒进入 其它极小点;当温度比较低时,微小的能量差异使相应状态 出现概率的差距被加大,由于网络在全局最小点状态的能量 远小于各局部最小点的能量,则网络在搜索结束时停留在全 局最小点的概率将远大于局部最小点。
BM网络状态演变的能量特征
若Δ Ei>0,说明网络在其第i号神经元取1时的能量 小于取0时的能量,这时可计算出
P(vi 1) P(vi 0)
即在下一个时刻xi取1的概率当然高于取0的概率。 反之,则可计算出
P(vi 1) P(vi 0)
BM网络状态演变的能量特征
可见,网络运行过程总是以更大的概率朝能 量下降的方向演化。不过,这是概率事件,完全 存在朝能量上升方向演化的可能。而从概率的角 度来看,如果Δ Ei越是一个大正数,xi取1的概率 越大, Δ Ei越是一个大负数,xi取0的概率越大。 这样我们就把(1)(2)转换成网络状态出现概 率与兑现这种状态时网络能量的变化,以及它们 对温度T的依赖联系在一起
ui wij v j
j 0
n
2.10.1 Boltzmann机的网络结构
神经元的输出依概率取1或0:
P(v j 1) 1 1 e
ui T
ui T
(1)
P(vi 0) 1 P(vi 1) e
1 1 e
u i T
e
ui T
P(vi 1) (2)
u j wij vi b j
i
b j 为神经元的阈值,并将其看作连接权值为1的输 入,可以归并到总的加权和中去,即得到下式
u j wij vi
i 0 n
神经元的输出依概率取1或0:
P(v j 1) 1/(1 e
u j / T
)
u j /T
P(v j 0) 1 P(v j 1) e
E
E E
P e T P 这就是著名的Boltzmann分布,也是BM网络名称的由来。
E E
BM网络状态演变的能量特征
由此式可见,对网络进行足够多次迭代搜索 后,BM神经网络处于哪一种状态的概率,即取决 于该网络在此状态下的能量,也取决于温度参数T。 显然非常重要的一点是能量低的状态出现的概率 大,例如
Pa kpi K 1 e
Ei T
BM网络状态演变的能量特征
则
Pb k (1 pi ) Ke
Ei T Ei T
1 e
i a b Pa 式中K为一个常数。于是 e T e T Pb 上式关系是普遍的,稍加推导即可证明,若网络 中任意两个状态α和β出现的概率为Pα和Pβ ,它们 的能量为Eα和Eβ ,如下关系总是成立
ui 越大,则 vi 取1的概率越大,而取0的
概率越小
2.10.1 Boltzmann机的网络结构
温度T的作用
如图所示,T越高时,曲线越平滑,即使ui有很大变动,也不 会对vi取1的概率变化造成很大的影响;反之,T越低时,曲线 越陡峭,当uj有稍许变动时就会使概率有很大差异,当T趋向于 0时,每个神经元不再具有随机特性,激励函数变为阶跃函数, 这时Boltzmann机演变为Hopfield网络
P(vi 1)
1 1 e
Ei T
BM网络状态演变的能量特征
这样,随着逐次调整,系统的总能量总是呈 下降趋势,直至达到一个稳定点。
我们可以计算出BM神经网络处于不同状态的 概率。假设BM神经网络中有vi=1和vi=0的a、b两种 状态,在这两种状态下所有其它神经元的取值相 同。设a状态的出现概率是Pa, b状态的出现概率 是Pb,假设Pa可以表示为
其命名来源于Boltzmann在统计热力学中的早 期工作和网络本身的动态分布行为
Boltzmann机结合BP网络和Hopfield网络在网 络结构、学习算法和动态运行机制的优点,是 建立在Hopfield网基础上的,具有学习能力, 能够通过一个模拟退火过程寻求解答。不过, 其训练时间比BP网络要长。
1
横坐标 表示神 经元的 输入总 和,纵 坐标表 示概率
0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -20 T-0.25 T-1 T-4
-15
-10
-5
0
5
10
15
20
2.10.1 Boltzmann机的网络结构
温度T的作用 如图所示,T越高时,曲线越平滑,即使 uj有很大变动,也不会对vj取1的概率变化造 成很大的影响;反之,T越低时,曲线越陡 峭,当uj有稍许变动时就会使概率有很大差 异,当T趋向于0时,每个神经元不再具有 随机特性,激励函数变为阶跃函数,这时 Boltzmann机演变为Hopfield网络