跳转到内容

并行退火

维基百科,自由的百科全书

并行退火(Parallel tempering),也称作replica exchange MCMC sampling,是一种用于动态改进蒙特卡罗方法的模拟算法。该算法用于模拟物理过程。同时更普遍地应用于蒙特卡罗马可夫链(Markov chain Monte Carlo,MCMC)抽样方法。[1] Sugita和Okamoto数学定义了一种分子动力学描述的并行退火算法:[2]通常被称为replica-exchange molecular dynamics(REMD)。

原理

[编辑]

一般的蒙特卡洛模拟使用Metropolis抽样,即接受概率,相同高度的势垒,温度越低越难以逾越,使得模拟需要相当长的模拟步长才能达到平衡,统计抽样满足各态历经。为了提高性能,采取如下策略:同时模拟一系列仅有温度不同的系统,在某些时刻随机选取相邻两个温度的系统,按如下接受概率置换两系统的温度:

其中,Ei和Ej是两个系统的总能量,Ti,Tj是温度,kB是玻尔兹曼因子。温度置换的过程是非物理的,但只要在一步中选择普通Metropolis抽样和温度置换分别以一定概率择其一,此过程仍然遵守细致平衡[3]

推广

[编辑]

并行退火可以用于温度以外的变量以改进抽样。例如,巨正则系综下蒙特卡罗模拟兰纳-琼斯势粒子的气液相平衡时,如果系统条件远离临界温度,密度的涨落很小,模拟中难以观测相变。而同时模拟多个化学势的系统,并按相似的接受法则置换系统的化学势:

其中i,j是两个超额化学势(相对理想气体)分别为的系统,它们的粒子个数分别为,内能分别为. 此模拟得到的密度概率函数能准确地反映气相和液相两个峰。[4]

神经网络

[编辑]

并行退火在训练神经网络时也有相似的应用。将一个系统运行在N个不同温度的条件下,并根据Metropolis法则页面存档备份,存于互联网档案馆)交换不同温度下的状态,因而可以用高温环境的参数去模拟低温环境,反之亦然。并行退火算法可用于人工神经网络训练,改进MCMC,虽然增加了计算复杂度,但提供了更快的马尔科夫链混合(mixing,指收敛)速度和更高的准确性。神经元之间的参数交换被描述为不同温度下分子状态的交换,随机交换的概率由Metropolis法则给出。尤其用于约束波茨曼机训练。[5]

参考

[编辑]
  1. ^ David J. Earl and Michael W. Deem (2005) "Parallel tempering: Theory, applications, and new perspectives"页面存档备份,存于互联网档案馆), Phys. Chem. Chem. Phys., 7, 3910
  2. ^ Y. Sugita and Y. Okamoto. Replica-exchange molecular dynamics method for protein folding. Chemical Physics Letters. 1999, 314: 141–151. doi:10.1016/S0009-2614(99)01123-9. 
  3. ^ Radford M. Neal. Sampling from multimodal distributions using tempered transitions. Statistics and Computing. 1996, 6 (4): 353–366. doi:10.1007/BF00143556. 
  4. ^ Frenkel, D. & Smit, B. Understanding Molecular Simulation. Academic Press. 2010: 395. ISBN 978-981-272509-7. 
  5. ^ Parallel Tempering for Training of Restricted Boltzmann Machine.页面存档备份,存于互联网档案馆) R.Salakhutdinov, 2009.