嵌套抽样算法是一种计算边缘似然值的新方法。该方法基于贝叶斯理论,其核心是将复杂的高维积分转化为便于数值计算的一维积分。不同于AME或HME仅在先验或后验概率空间内抽样,也不是简单地将先验与后验空间混合,嵌套抽样法在抽样的过程中由先验空间逐步过渡到后验空间,从而有效降低了从单一分布抽样引起的边缘似然值估计误差。嵌套抽样算法可以看作一种全局优化算法,因为其利用的有效参数集遍历了整个先验分布及后验分布。目前,嵌套抽样方法已经在多个领域得到推广应用,如Elsheikh(2013)等将基于Metropolis-Hasting的嵌套抽样算法(NSE-MH)应用于地下水流模型的评价与不确定性分析,验证了嵌套抽样算法的有效性;Liu(2016)等对NSE-MH中Metropolis-Hasting算法进行改进,分别应用于线性、非线性函数的边缘似然值计算,并与算术平均、调和平均及热力学积分方法的计算结果对比,验证了改进后的嵌套抽样算法的计算精度与效率。
嵌套抽样算法将复杂的高维积分问题转化为一维积分问题。在具体实施过程中,嵌套抽样算法可以分为嵌套抽样主算法和局部限制抽样子算法两部分,主算法通过有效集迭代更新的方式实现嵌套抽样,局部限制抽样负责生成每次迭代过程所需的似然值-先验分布累积(L~X)样本。局部限制抽样通常基于概率抽样方法,如Metropolis-Hasting算法等。
对于常规的基于Metropolis-Hasting算法的嵌套抽样算法原理简单,容易操作,但在应用过程中存在以下问题:①NSE-MH算法的计算效率低,所需的计算量大;②NSE-MH算法的收敛速度慢,在抽样后期MH算法需要多次迭代才能生成满足约束条件(Li+l>Li)的样本;③NSE-MH算法在参数后验分布空间内随机抽样,计算稳定性稳定性较差。因此,上述问题的存在限制了嵌套抽样算法在模型评价中应用和推广。
嵌套抽样过程是一种计算逆积分态密度$U(X)$的算法。嵌套抽样的中心过程只有两个参数:嵌套抽样产生一系列嵌套样本集,这些样本的能量根据状态密度分布。X的误差累积率由参数K设定。参数L应设置得足够大,以使相关样本来自每个样本的可能性相等。
嵌套抽样探索一系列嵌套均匀分布,构造成具有常熟分数重叠形式。因此,这些分布式计算有效的平衡和系统的病理行为,且能避免一阶相变。这使得嵌套抽样成为寻找相变的理想工具,它的微正则冷却过程应该是发现“未知的未知相变”的强大工具。
中央嵌套采样程序(或循环)的图解如图1所示,在每次迭代开始时,我们从$U(q)<U_lim$区域的均匀分布中得到$K$个配置,其中$U_lim$依赖于迭代。在每次迭代中,$U_lim$被缩减。这就是“嵌套抽样”名称的基础。
从$U(q)<U_lim$区域均匀随机抽取的样本值$X(U)$)是从$[0, x(U_lim)]$区域随机抽取的。如果考虑连续的配置空间划分成等体积的小块,并将这些小块沿着一条线排列,从高能量到低能量进行分类。线的长度与配置空间的体积相对应。也就是说,从空间中随机选择的结构对应于在直线上随机选择的一个点,如图所示
每个$X$都是从前面的$X_{i-1}$中找到的,其中且$U(X_i-1)>U(X_i)$,因此,抽样是内向进行的,朝向能量越来越低的方向。
在任意迭代i中,我们有K个构型${q1,q2,q3,…qk}$在$U(q)≤U_lim$上均匀分布。这里$U_lim=U_{i-1}$,构型能恰好对应于我们得到的$log X_{i-1}$,描述这种情况的式子是:
我们称这种分布为“有界均匀分布”。对于构型能量$U(q)≤U_lim$的构建空间均匀绘制的构型,$U$的pdf就是$Ulim$的态密度:
在这里$X_lim=X(U_lim)$,$X$和$log X$的pdf通过变量的变化与下式相关: $$ ρ(X|X_{lim})=\begin{cases} \frac{1}{X_lim},X \leq X_lim\0, Elsewhere \end{cases} $$
可知$U$与$X(U)$单调相关,因此,如果我们按$U$降序排列$K$个构型,他们也将按照$X$降序排列。
从我们的排序列表中选择第一个(最高能量)配置,t=
是一个β分布:
$$
ρ(t)=K_t^{K-1}
$$
这个pdf有平均值和标准差
$$
t=(\frac{K}{K+1}\pm\frac{1}{K+1}\sqrt{\frac{K}{K+2}})
$$
选择U值最高的构型,我们知道他对应的均值是
,标准差是
。将第i次迭代中U值最高的构型的能量记为U,将该构型存储为输出:
$$
X_{i-1}\times\frac{K}{K+1} \rightarrow X_i
$$
最后,更新了$U_i\rightarrow U_lim$,通过重复寻找$U_{i+1}$,生成了新配置。
技术方案:基于AM嵌套抽样算法的地下水模型评价方法,包括以下步骤:
(1)根据研究区的水文地质条件,建立一组可行的概念模型Mk(k=1,2,…,K)来表示实际地下水系统,K表示概念模型的数量,这些概念模型具有不同的结构;
(2)根据研究问题选择一组水文地质参数作为参数向量θ并根据相关监测资料确定其先验概率分布p(θ|Mk),先验概率分布通常为均匀分布;
(3)从先验分布p(θ|Mk)中随机生成参数向量θ的集合S={θ1,θ2,…,θN}作为有效集,并计算有效集中每个参数向量的联合似然函数L(θ|D,Mk),;
(4)确定嵌套抽样主算法的迭代次数R,在每次迭代过程中选出有效集S中最差的参数向量作为样本,并根据梯形公式计算边缘似然值的增量ΔZ;
(5)在每次迭代过程中,通过基于AM算法的局部限制抽样从先验分布p中生成新的参数向量作为候选样本,以替代有效集中最差的样本;
(6)完成R次迭代后,根据有效集S和边缘似然值的增量ΔZ,计算各个概念模型的边缘似然值Z;
(7)根据各个模型Mk(k=1,2,…,K)的边缘似然值,对各个概念模型进行评价。
进一步,步骤(3)计算联合似然函数L(θ|D,Mk):
步骤(4)对于第i(i=1,…,R)次迭代,计算有效集S中最小的参数向量θworst及其对应的似然函数Lworst,令Li=Lworst,计算先验分布累积Xi(Xi与有效集中参数向量的个数N和迭代次数i有关)、每一次迭代中的边缘似然值Zi以及边缘似然值的增量ΔZ,其中Z0=0,L0=0:
步骤(5)通过局部限制抽样从参数先验分布中生成新参数向量θnew,若L(θnew|D,M)>Lworst,则用θnew取代原有θworst;否则,继续从局部限制抽样算法中生成θnew,直至满足L(θnew|D,M)>Lworst或达到人为定义的抽样次数上限为止。
进一步,步骤(5)基于AM算法的局部限制抽样包括以下步骤:
①从有效集S中随机选择某一参数向量θ作为初始参数向量
②确定AM算法的循环次数H,对于第j(j=1,…,H)次循环,从正态分布N(Cj)中生成新样本ξ,计算对应的联合似然函数值Lξ,其中Cj为协方差矩阵;为方便计算,可以通过递归公式计算Cj+1:
③若Lξ>Lworst,则计算接受概率否则α=0;
④从均匀分布U(0,1)中生成随机数u,比较u与α的大小;若u≤α则接受否则
⑤重复步骤②-④,直至生成长度为H的马尔可夫链为止;令
进一步,步骤(6)分别计算当前有效集S中的N个参数向量θ1,θ2,…,θN对应的似然函数L1,L2,…,LN,计算得到边缘似然值z:
有益效果:本发明将嵌套抽样算法中的局部限制抽样算法改进为AM算法,将模型的边缘似然值及后验概率(权重)作为评价地下水模型表现的指标,根据贝叶斯分析理论及嵌套抽样算法,将复杂且不易直接求解的高维积分边缘似然值转化为易于计算的一维积分,在计算地下水模型边缘似然值的案例分析中,本方法通过AM的自适应更新,保证了抽样的质量与精度,与原有的NSE-MH算法相比,在计算结果的计算效率和收敛速度方面有所提高,同时也提高了计算结果的准确性和稳定性。
在本例中,确定嵌套抽样主算法的迭代次数R=250,在第i(i=1,…,250)次迭代过程中,选出有效集中的最小的参数向量θworst及其对应的似然函数Lworst,令Li=Lworst,根据公式(2)计算先验分布累积Xi,根据梯形公式(3)计算边缘似然值的增量ΔZ和每一次迭代中的边缘似然值Zi。
在第i(i=1,…,250)次迭代中,通过局部限制抽样(AM算法)从参数先验分布中生成新参数向量θnew,若L(θnew|D,M)>Lworst,则用θnew取代原有θworst;否则,继续从局部限制抽样算法中生成θnew,直至满足L(θnew|D,M)>Lworst或达到人为定义的抽样次数上限为止,本例中设置的抽样次数上限为200。
在基于AM算法的局部限制抽样中,从有效集中随机选择某一参数向量θ作为初始参数向量确定AM算法的循环次数H=100,对于第j(j=1,…,100)次循环,从正态分布N(Cj)中生成新样本ξ,根据公式(1)计算对应的联合似然函数值Lξ,其中Cj为协方差矩阵,在T0次迭代前取固定值C0,本例中T0=20,C0为单位矩阵。随后根据公式(4)和(5)自适应更新协方差矩阵;若Lξ>Lworst,则计算接受概率α,否则α=0;从均匀分布U(0,1)中生成随机数u,比较u与α的大小;若u≤α则接受否则直至生成长度为100的马尔可夫链为止;
完成250次迭代后,根据有效集和边缘似然值的增量ΔZ,计算各个概念模型的边缘似然值Z;分别计算当前有效集中的25个参数向量θ1,θ2,…,θ25对应的似然函数L1,L2,…,L25,根据公式(6)计算得到边缘似然值Z。
为验证NSE-AM算法的有效性,同时采用算术平均方法(AME)和NSE-MH算法求解。本次案例分析中算术平均方法的样本数量为50万,分别计算4个模型的边缘似然值,作为对应的参考值;NSE-MH的参数取值为:N=25,R=250,局部限制抽样算法中生成的马尔可夫链长为100。使用NSE-AM和NSE-MH对4个模型各进行似然值估计10次。由于嵌套抽样算法的各次计算结果不尽相同,本次研究中取10次计算结果的平均值作为最终结果,从而评价嵌套抽样算的综合表现。
从中可以得到以下结论:
(1)NSE-AM算法的结果准确、计算效率高,AME方法通常需要数十万次的样本数量(即地下水流模型的运行次数)才能达到稳定,需要较长的计算时间,NSE-MH算法也需要5万次以上的模型运行才能收敛,而NSE-AM算法经过大约2万次的模型运行即收敛,且最终得到的结果与AME方法较为接近;
(2)NSE-AM算法的适应性好,对于不同的概念模型都能在有限的模型运行次数中达到稳定,而AME方法对于个别与真实情况相差较大的模型,如M1经过50万次模型运行也未达到稳定,而NSE-AM算法在2万次模型运行后基本达到稳定;
(3)根据4个模型计算得到的边缘似然值,从小到大的顺序依次为:M1<M2<M4<M3,说明模型M3和M4明显优于模型M1和M2。这表明在考虑相同参数不确定性的情况下,模型的边缘似然值与模型结构概化的合理程度有关,即模型的边缘似然值越大,模型结构概化越合理,概念模型越接近于真实模型。
[1]Pártay, Livia B.,Csányi, Gábor,Bernstein, Noam. Nested sampling for materials[J]. The European Physical Journal B,2021,94(8):
[2]David MacKay. Nested sampling. Contour plot of a likehood function L(θ)
[3]文雯,文小焱,胡珊,彭斌.贝叶斯层次模型在嵌套结构调查数据中的应用研究[J].中国卫生统计,2015,32(02):190-193.




