随机神经网络之模拟退火

一、引言

在机器学习以及优化组合问题中,最常用的方法就是梯度下降法。比如BP神经网络,多层感知器的神经元(units)越多,对应的权矩阵也就越大,每个权可视为一个自由度或者变量。我们知道自由度越高,变量越多,模型越复杂,模型的能力越强。但是模型能力越强,模型就越容易过拟合,对噪声太敏感。另一方面,使用梯度下降进行最优解搜寻时,多变量的误差曲面很像是连绵起伏的山峰一样,变量越多,山峰和山谷也越多,这就导致梯度下降法极容易陷入到局部的一个小山谷,而停止搜索。这就是常规的梯度下降法在解决多维度的优化问题中最常见的局部最优问题。究其原因是梯度下降法的搜索准则所致,按照梯度的负方向搜索,一味追求网络误差或能量函数的降低,使得搜索只具有“下山”的能力,而不具备“爬山”的能力。所谓“爬山”的能力,就是当搜索陷入局部最优时,还能具备一定的“翻山越岭”的能力,能够从局部最优中逃出来,继续搜索全局最优。如果为具有多个局部极小点的系统打一个形象的比喻。设想托盘上有一个凸凹不平的多维能量曲面,若在该曲面上放置一个小球,它在重力作用下,将滚入最邻近的一个低谷(局部最小点)而不能自拔。但该低谷不一定就是曲面上最低的那个低谷(全局最小点)。因此,
局部极小问题只能通过改进算法来解决 。一种可行的办法就是刚才所提到的让算法具有“爬山”的能力,同时还要保证当搜索进入全局最优时不会因为“爬山”而跑出全局最优的“山谷”。本文要讲解的随机神经网络:模拟退火(Simulated Annealing)与玻尔兹曼机(Boltzmann Machine)就是通过一定的概率保证搜索陷入局部最优时能够具有一定的“爬山”能力。这个形象的对比可参看下图:

随机神经网络与其他神经网络相比有两个主要区别 :① 在学习阶段 , 随机网络不像其他网络那样基于某种确定性算法调整权值,而是按某种概率分布进行修改;② 在运行阶段,随机网络不是按某种确定性的网络方程进行状态演变,而是按某种概率分布决定其状态的转移。神经元的净输入不能决定其状态取1还是取0,但能决定其状态取1还是

取0的概率。 这就是随机神经网络算法的基本概念。

本篇博文将主要介绍模拟退火。后续博文将陆续介绍玻尔兹曼机,以及基于模拟退火玻尔兹曼机解决优化组合典型问题:旅行商(TSP)问题的算法实现。

二、模拟退火

模拟退火算法是随机网络中解决能量局部极小问题的一个有效方法,其基本思想是模拟金属退火过程。金属退火过程大致是,先将物体加热至高温,使其原子处于高速运动状态, 此时物体具有较高的内能;然后,缓慢降温,随着温度的下降,原子运动速度减慢,内能下降;最后,整个物体达到内能最低的状态。模拟退火过程相当于沿水平方向晃动托盘,温度高则意味着晃动的幅度大,小球肯定会从任何低谷中跳出,而落入另一个低谷。这个低谷的高度(网络能量)可能比小球原来所在低谷的高度低(网络能量下降)
,但也可能反而比原来高(能量上升)。后一种情况的出现,从局部和当前来看,这个运动方向似乎是错误的;但从全局和发展的角度看,正是由于给小球赋予了“爬山”的本事,才使它有可能跳出局部低谷而最终落入全局低谷。当然,晃动托盘的力度要合适,并且还要由强至弱(温度逐渐下降),小球才不致于因为有了“爬山”的本领而越爬越高 。

在随机网络学习过程中,先令网络权值作随机变化,然后计算变化后的网络能量函数。网络权值的修改应遵循以下准则:若权值变化后能量变小,则接受这种变化;否则也不应完全拒绝这种变化,而是按预先选定的概率分布接受权值的这种变化。其目的在于赋予网络一定的“爬山”能力。 实现这一思想的一个有效方法就是Metropolis 等人提出的模拟退火算法。

设 X 代表某一物质体系的微观状态(一组状态变量,如粒子的速度和位置等),E(X)表示该物质在某微观状态下的内能,对于给定温度 T,如果体系处于热平衡状态,则在降温退火过程中,其处于某能量状态的概率与温度的关系遵循 Boltzmann 分布规律。分布函数为:

P(E)∝ exp(-E(X)/KT)

K为波耳兹曼常数,为了讨论方便,将K直接融入到T中进行讨论。当温度一定时,物质体系的能量越高,其处于该状态的概率就越低,因此物质体系的内能趋向于向能量降低的方向演变。如给定不同的温度,上式表示的曲线变化如下图所示:

当物体温度T较高时,P(E)对能量E的大小不敏感,因此物体处于高能或低能状态的概率相差不大;随着温度T的下降,物质处于高能状态的概率随之减小而处于低能状态的概率增加;当温度接近0时,物体处于低能状态的概率接近1。由此可见,温度参数T越高,状态越容易变化。为了使物质体系最终收敛到低温下的平衡态,应在退火开始时设置较高的温度,然后逐渐降温,最后物质体系将以相当高的概率收敛到最低能量状态。

用随机神经网络解决优化问题时,通过数学算法模拟了以上退火过程。模拟方法是,定义一个网络温度以模仿物质的退火温度,取网络能量为欲优化的目标函数。网络运行开始时温度较高,调整权值时允许目标函数偶尔向增大的方向变化,以使网络能跳出那些能量的局部极小点。随着网络温度不断下降至0,最终以概率1稳定在其能量函数的全局最小点,从而获得最优解。

******************************

2015-8-8

******************************

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-13 09:05:19

随机神经网络之模拟退火的相关文章

随机神经网络之玻尔兹曼机

一.引言 在机器学习以及优化组合问题中,最常用的方法就是梯度下降法.比如BP神经网络,多层感知器的神经元(units)越多,对应的权矩阵也就越大,每个权可视为一个自由度或者变量.我们知道自由度越高,变量越多,模型越复杂,模型的能力越强.但是模型能力越强,模型就越容易过拟合,对噪声太敏感.另一方面,使用梯度下降进行最优解搜寻时,多变量的误差曲面很像是连绵起伏的山峰一样,变量越多,山峰和山谷也越多,这就导致梯度下降法极容易陷入到局部的一个小山谷,而停止搜索.这就是常规的梯度下降法在解决多维度的优化问

POJ 1379 (随机算法)模拟退火

题目大意: 给定一堆点,找到一个点的位置使这个点到所有点中的最小距离最大 这里数据范围很小,精度要求也不高,我们这里可以利用模拟退火的方法,随机找到下一个点,如果下一个点比当前点优秀就更新当前点 参考:http://www.cnblogs.com/heaad/archive/2010/12/20/1911614.html http://wenku.baidu.com/view/0c6b5df5f61fb7360b4c65a9.html 1 #include <cstdio> 2 #includ

深度学习——人工神经网络再掀研究热潮

深度学习——人工神经网络再掀研究热潮 胡晓林 人工神经网络起源于上世纪40年代,到今天已经70年历史了.就像人的一生,经历了起起落落,有过辉煌,有过黯淡,有过嘈杂,有过冷清.总体说来,过去的20年中人工神经网络的研究不温不火,直到最近三五年,随着深度学习概念的提出,人工神经网络才又重新焕发生机,甚至再度掀起研究热潮.本文简述一下人工神经网络的“前世今生”,并简单展望一下它的未来. 第一个神经元模型是1943年McCulloch和Pitts提出的,称为threshold logic,它可以实现一些

MATLAB神经网络原理与实例精解视频教程

教程内容:<MATLAB神经网络原理与实例精解>随书附带源程序.rar9.随机神经网络.rar8.反馈神经网络.rar7.自组织竞争神经网络.rar6.径向基函数网络.rar5.BP神经网络.rar4.线性神经网络.rar3.单层感知器.rar2.MATLAB函数与神经网络工具箱.rar11.神经网络应用实例.rar10.用GUI设计神经网络.rar1.神经网络概述与MATLAB快速入门.rar下载地址:http://www.fu83.cn/thread-323-1-1.html

《神经网络与深度学习》(四) 受限玻尔兹曼机

转自:http://blog.csdn.net/qiao1245/article/details/50932519 谈到神经网络,就不得不提到最近非常火的深度学习.那么什么是深度学习?它与神经网络的关系是什么?深度学习的基本原理和常用算法是什么?我将在这篇中详细解答. 什么是深度学习 深度学习来源于人工神经网络,它的思想是组合低层次的特征从而构建出更加抽象的深层次特征.深度学习的概念由Hinton等人于2006年提出, 它是一个新的机器学习领域,通过更"深"层次的训练,它可以更加良好的

深度学习-常见神经网络

目录 一.深度信念网络(DBN) 玻尔兹曼机(BM) 受限玻尔兹曼机(RBM) 二.卷积神经网络(CNN) 卷积是什么 掷骰子 做馒头 做鱼 图像处理 卷积神经网络特性 卷积神经网络分层 三.生成对抗式网络(GAN) 生成器(generator) 判别器(discriminator) 四.循环神经网络(RNN) 双向RNN 深度RNN 递归RNN 五.长短期记忆网络(LSTM) 4种组成 一.深度信念网络(DBN) 2006年,"神经网络之父"Geoffrey Hinton祭出神器深度

受限波尔兹曼机

1.  概述 前面描述的神经网络模型是一种确定的结构.而波尔兹曼网络是一种随机网络.如何来描述一个随机网络呢?很多书上有大量的篇幅介绍其原理.这里把它总结为以下两点. 第一,概率分布函数.由于网络节点的取值状态是随机的,从贝叶斯网的观点来看,要描述整个网络,需要用三种概率分布来描述系统.即联合概率分布,边缘概率分布和条件概率分布.要搞清楚这三种不同的概率分布,是理解随机网络的关键,这里向大家推荐的书籍是张连文所著的<贝叶斯网引论>.很多文献上说受限波尔兹曼是一个无向图,这一点也有失偏颇.从贝叶

《Noisy Activation Function》噪声激活函数(一)

本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51736830 Noisy Activation Functions是ICML 2016年新发表的一篇关于激活函数的论文,其中对以往的激活函数进行了深入的分析,并提出了训练过程中添加噪声的新方法,效果不错,觉得很有意义,目测会在今后的深度学习领域产生比较大的影响,因此将其原论文翻译,并略作注解(计划分两篇博客来写,本文涵盖从摘要到第三节的

分类算法总结

      目前看到的比较全面的分类算法,总结的还不错.       主要分类方法介绍解决分类问题的方法很多[40-42] ,单一的分类方法主要包括:决策树.贝叶斯.人工神经网络.K-近邻.支持向量机和基于关联规则的分类等:另外还有用于组合单一分类方法的集成学习算法,如Bagging和Boosting等.      (1)决策树       决策树是用于分类和预测的主要技术之一,决策树学习是以实例为基础的归纳学习算法,它着眼于从一组无次序.无规则的实例中推理出以决策树表示的分类规则.构造决策树的