玻尔兹曼机网络
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Boltzmann 机网络
1. 网络结构
伯尔兹曼机网络(Boltzmann machines ,BM )在网络结构方面与Hopfield 神经网络类似,网络采取有教师的学习方法,每一个神经元之间对称的反馈互联,即各对神经元之间的传输权重系数是对称的:ji ij w w =,0=ii w 。但是,两者之间在运行原理方面有根本区别。
(1)Hopfield 网络的神经元的结构功能,及其在网络中的地位是一样的。BM 中一部分神经元与外部相连,可以起到网络的输入、输出功能,或者严格的说可以受到外部条件的约束;而另一部分神经元则不与外部相连,因而属于隐单元;BM 是具有隐单元的反馈互联网络。
(2)神经元的状态为0或1的概率取决于相应的输入。
(3)学习与工作原理有其独特之处。
BM 网络的神经元特性取概率阈值模型,如图1所示。对于第i 号神经元,它的全部输入信号的总和为i I ,可表示如下
i N i j j j ij i x w I θ-=∑-≠=1
,0 (1)
或者
∑-≠==1
,0N i j j j ij i x w I (2)
神经元i 的输出为i x ,i x 只能取1或0,i x 取1的概率i p 由下式决定 ()()T I i j e x p /111-+== (3) ()()==-==110i i x p x p ()T I T I j j e e //1--+ (4) 式(3)就是我们熟悉的Sigmoid 形式,但是前面分析中常用的参数0u 改用了字母T ,并且称之为温度,这与在BM 的分析中将与热力学类比有关,在不同的温度下i p 随i I 的变化如图2所示,温度参数T 在BM 神经网络的搜索过程中起重要的作用。
图1 BM 神经元结构
图2 BM 神经元的特性
2.训练方法
2.1 状态更新算法
(1)网络初始化
给初始状态赋[-1,1]之间的随机数,设定起始温度0T 和目标温度值final T 。
(2)求解内部状态
从N 个神经元中随机选取一个神经元,根据下式求解出神经元的输入总和,即内部状态。
()()j j N
i j j ij i b t u w t H +=∑≠=,1 (5)
()j j n
j ij i b v w t u +=∑=1 (6)
(3)更新神经元状态
根据下面的公式更新神经元的状态:
()[]()()
T t H t v P i i /ex p 1111-+=
=+ (7) 1v
v i
v 1-200.90.80.750-5-100.10.20.3
0.40.50.6-150151020
()()()
T t u i i e t v P -+==+11
11 (8)
(4) 除i 外的神经元的输出状态保持不变,即除i 外的神经元的状态由下面
公式求解得出:()()t v t v j j =+1 i j N j ≠⋅⋅⋅=;,,2,1 。 (9)
(5) 令 1+=t t ,按照下式计算出新的温度参数:
()()
1log 10+=+t T t T (10) (6) 第(5)步计算出的温度参数是否小于目标温度,小于目标温度则算法结束,否则返回(2),进入下一轮计算。
2.2 注意事项
(1)概率阀值的确定方法
在网络初始化时按经验确定,或在运行过程中选取一个[0,0.5]之间均匀分布的随机数。
(2)网络权值的确定方法
(3)在每一温度下达到热平衡的条件
(4)降温方法
通常采用指数降温,即
()()
1log 10+=+t T t T 为加快网络收敛速度,也可采用一个倍乘小于1的降温系数的办法。
3.相关问题算法
BM 神经元网络的运行:最佳解的模拟退火法搜索
模拟退火算法是最优化处理理论和方法的一个方面,并不是在BM 网络中所专有的,恰恰相反,正是由于上述的网络概率状态对参数T 的强烈依赖使我们自然地想到,在网络的运行过程中T 应先高后低以便能够在搜索速度和搜索精度两个方面得到好处,快熟而又精确地获得全局最优解。就像在所有的自适应运算中对迭代步长α的处理那样。而作为热处理工艺的模拟退火方法也将工件高温加热,然后慢慢冷却,所追求的物理目的就是将工件的微观物质结构在高温下进行充分的扰动、而在降温的进程中生成微观晶格有序化的低能量状态,共同的理论思想使二者走到了一起,也是热力学理论引入信息处理领域的最初尝试和成功范例。
模拟退火算法(Simulated Annealing ,SA )它由Metropolis 于1953年提出,是最优化处理算法中的一种改进的蒙特—卡罗方法、包括Metropolis 算法和退火过程(Annealing Procedure ,AP )组成。S Kirkpatrick (1983)和V Cerny (1985)进一步发展和应用了这一方法。方法的概要是,首先在高温下进行搜索,由于此时各状态出现概率相差不大,系统可以很快进入“热平衡状态”,是一种快速找到系统概率的低能区的“粗搜索”过程。随着温度逐渐降低,各状态出现概率的差距逐渐被扩大,搜索精度不断提高。最后以一较高置信度达到网络能量函数的
全局最小点。简要说明如下。
(1)Metropolis 抽样过程
Metropolis 算法是模拟退火算法的基础。它假定随机变量在某一时刻的状态为i v ,在另一时刻状态为j v 。假设这种状态的转移满足对称条件()()i j j i v v p v v p ||=。令i E ∆表示系统从状态i v 转移至状态j v 所引起的能量差。
如果i E ∆<0,即转移就导致了状态能量的降低,则兑现这种转移。新状态将作为算法下一步的起点。
如果i E ∆>0,算法按概率操作结果随机决定兑现或放弃这一转移。概率操作的方法很多,其中取随机数的方法很简单。随机生成一个在[0,1]区间内均匀分布的随机数ξ,如果T E i e /∆-<ξ。则兑现这种转移,否则拒绝这种转移。反复迭代,达到系统当前温度下的热平衡(能量最小)。
这个过程称作Metropolis 抽样过程。
(2)退火过程
退火过程就是降温过程。即在Metropolis 抽样过程中将温度T 缓慢降低,通过参数T 的变化使系统状态收敛于全局最小能量处。T 参数的选择对于算法最后的结果有很大的影响。初始温度和终止温度设置的过低或过高都会延长搜索时间。降温步骤太快,往往会漏掉全局最优点,使算法收敛至局部最优点。叫我降温步骤太慢,则会大大延迟搜索全局最优点的计算时间,从而难以实际应用。
模拟退火的算法,得到许多研究者从不同角度和方面进行大量的研究,得到了广泛的应用。在BM 网络中为了达到最优搜索结果,更是对模拟退火算法的应用与实现进行了充分的研究,而其中的一个重要问题就是温度降低策略。Kirkpatrick 等进行了大量的研究,并给出了一些有用的原则。
①初始温度:选取足够高的0T ,保证存在所有可能的转移状态。
②温度下降策略:有不同降温策略,例如
()()⋅⋅⋅==+2,1,1k k T k T λ
此处λ是一小于却接近与1的常数。例如可在0.8至0.99之间取值。另外如
()()
⋅⋅⋅=+=+2,1,1lg 10k k T k T ③终止温度:如果在连续的若干个温度下没有可接受的新状态,算法结束。 BM 网络的运行采用了模拟退火算法,具体步骤如下:
设BM 网络具有N 个神经元,其中P 个为显见神经元,Q 个为隐见神经元;j i ,号神经元的连接权值为()N j i w ,,2,1,ij ⋅⋅⋅=。请特别注意,这里讨论的是网络工作阶段的运行问题。ij w 是已训练的最优权值。