退火和模拟退火算法
注:梯度下降算法如果陷入局部最小值后,就没法达到全局最小值了;随机网络算法(模拟退火算法)则可以从局部最小值跳到全局最小值;上面的公式中,T表示温度,T的值越大,转移的概率就越大,同理,能量函数之间的差值E(n+1)-E(n)越小,则转移概率越大;
注:指数下降方式中,O为设置的初始值,T(n)则为上一次的温度乘以
;
注:模拟退火算法在温度较高,且退火速率较慢的情况下,一般都能达到全局最小值点,但过程十分消耗计算资源;
随机神经网络(玻尔兹曼机BM)
注:自联想型BM网络中,可见节点既是输入节点又是输出结点;异联想BM网络中,可见点中一部分是输入节点,剩下的为输出节点;
注:表示阈值,转移概率公式里的T表示温度,这两个T不是同一个意思;上图中,转移概率这样定义的话,分布是服从玻尔兹曼分布的,玻尔兹曼布是物理上是指粒子在平稳状态下的一种分布,这里用于神经网络中,神经元即表示粒子,让BM网络的神经元自由转移,从而达到玻尔兹曼分布的一个状态,也就平稳分布的一个状态;
玻尔兹曼机的训练
注:钳制输入输出节点的意思,锁定输入输出节点的状态,不让其中节点的状态发生改变;
注:1)初始化的权值是随机取的;
2)输入学习模型示例,如Hopfield的示例代码中的那样,比如做手写数字识别,分别输入0-9,总共10张数字的图片,这10张图片就是BM网络的10个学习模型,每个学习模型(如数字0的图片)在正向学习阶段和反向学习阶段都要分别走一次完整的模拟退火算法;
3)上图中,模拟退火算法达到网络热平衡方框右边的流程,就是模拟退火算法的一个完整周期;一个完整的模拟退火算法周期内,只能处理一个学习模型(即一张数字图片),另外,在根据降温方程降低温度T之前,BM网络中的所有自由节点都要更新一次自身的状态;
4)上图中的整个流程只调整权值矩阵的一个权值,要调整一次网络的所有权值,就得对整个权值矩阵的每个权值,进行一次上图中的完整流程;
5)综上所述,BP网络所需要的计算量过于庞大,到目前为止,BP网络还没有适合的应用范围,目前有应用的只有受限玻尔兹曼机;
马尔可夫性
注:上面两张图的转移矩阵P是一样的,但初始值不同,两都迭代了一定次数,下中上层的概率就不再改变,趋于一个稳定的分布了,这就是马尔可夫链的性质,当转移矩阵P的值都大于0时,无论初始值是多少,经过一定数量的迭代后,分布的概率都会趋于稳定,从而得到一个平稳分布;
受限玻尔兹曼机
注:上图的公式中,i表示可见层的神经元节点,j表示隐层的神经元节点,似然函数的参数训练开始前会初始化,因此为已知量;权值和偏置值右边的公式是求权值和可见层偏置、隐层偏置的公式;
表示概率
的数学期望,同理
表示概率
的数学期望,该项的推导过程中有一个归一化因子,因为该归一化因子的存在,该项求解几乎是不可能的,所以可以用吉布斯采样来求解近似值;
表示可见层的训练样本为t时,隐层的概率分布,
表示权值W和可见层偏置a,隐藏偏置b可知的情况下,可见层和隐层的联合分布;
吉布斯采样求解说明:可见层的节点在初始化后,偏置和权值和输入都是可知的,此时可以用可见层节点的数据去确定隐层节点的权值、偏置及输出,再用隐层的输入、权值、偏置,来重新确定可见层的权值、偏置和输出,如此反复迭代,由马尔可夫方法可知,经过一定数量的迭代后,会达到一个平稳分布,该平稳分布就是玻尔兹曼分布的一个近似;
注:(迭代一次的后得到的模型)对应上上面的
(迭代多次得到的模型),经过实验数据得到的结果,迭代一次的模型
也能得到比较好的效果,
尖括号表示里面变量的数学期望;