本文基于非对称指数幂分布(AEPD),采用MCMC中的M-H算法进行贝叶斯参数估计,针对后验密度的复杂性,采取随机游走链的建议分布为中心对称分布。通过数值模拟,在M个大样本下进行N次迭代,模拟结果显示,该算法对具有非对称指数幂分布的贝叶斯参数估计具有实用性。 In this paper, based on the asymmetric exponential power distribution (AEPD), the M-H algorithm in MCMC is used to estimate the Bayesian parameters. For the complexity of the posterior density, the recommended distribution of the random walk chain is the center symmetric distribution. Through numerical simulation, N iterations are performed under M large samples. The simulation results show that the algorithm is practical for Bayesian parameter estimation with asymmetric exponential power distribution.
李东升1,吴有富2*
1贵州民族大学,数据科学与信息工程学院,贵州 贵阳
2贵州交通职业技术学院,贵州 贵阳
收稿日期:2020年7月13日;录用日期:2020年7月27日;发布日期:2020年8月4日
本文基于非对称指数幂分布(AEPD),采用MCMC中的M-H算法进行贝叶斯参数估计,针对后验密度的复杂性,采取随机游走链的建议分布为中心对称分布。通过数值模拟,在M个大样本下进行N次迭代,模拟结果显示,该算法对具有非对称指数幂分布的贝叶斯参数估计具有实用性。
关键词 :非对称指数幂分布,贝叶斯参数估计,Metropolis-Hastings算法
Copyright © 2020 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
随着社会的发展,数据的复杂性越来越大。在经济领域,已经很难找到服从正态分布的数据集,基于正态分布所建立的一些模型方法也不再适用于对复杂数据的分析。2009年由Zhu Dongming [
基于此,针对AEPD的贝叶斯参数估计采用MCMC中的M-H算法作进一步探讨。首先,1995年Chib [
本文以非对称指数幂分布为基础,利用MCMC中的M-H算法思想,对此进行贝叶斯参数估计。
在统计领域中主要有两大计算方法,一种是极大似然估计计算,另一种是Bayes计算。在Bayes计算中,最重要的算法就是Markov chain Monte Carlo (MCMC)中的Metropolis-Hastings和Gibbs算法。在本文中主要研究Metropolis-Hastings在贝叶斯参数估计的应用。
在统计学中,对连续变量求数学期望,公式如下:
其中,X是连续随机变量, p ( x ) 为随机变量X的密度函数。
假设我们要计算某分布函数 F ( x ) 关于概率密度函数 π ( x ) 的数学期望,根据公式(1)可得:
E ( F ) = ∫ X F ( x ) π ( x ) d x (2)
其中 F ( x ) 和 π ( x ) 较为简单,可以由上式求出。但是,在实践中,由分布函数或概率密度函数推出的后验分布或后验密度函数都是复杂、高维且非标准形式的,对此就要进行MCMC计算。
在实际中,假设 π ( x ) 是未知的,我们可以计算归一化常数范围内的密度来替换 π ( x ) ,公式如下:
π ( x ) = C g ( x ) C = 1 / ∫ X g ( x ) d x (3)
其中, g ( x ) 是先验分布乘以似然函数,C是归一化常数。
在贝叶斯统计中,Metropolis-Hastings是最常用的算法。假设X的分布依赖我们想要估计的参数 ϑ ,对于 F ( x ) ≥ 0 ,该分布的似然函数为 L ( x | ϑ ) ,根据(1)、(2)可知,则数学期望为:
E ( F ( X ) ) = ∫ L ( x | ϑ ) F ( X ) d x (4)
在贝叶斯推断中,统计模型的观测值和参数变量都是随机的。给定样本数据 X = ( x 1 , x 2 , ⋯ , x n ) 、统计模型参数 ϑ 和先验分布
p ( ϑ | x ) = L ( x | ϑ ) p ( ϑ ) ∫ L ( x | s ) p ( s ) d s = C X L ( x | ϑ ) p ( ϑ ) (5)
其中, L ( x | ϑ ) 为统计模型的似然函数, C X 依赖于X的归一化常数,在M-H算法中,可以不用计算 C X ,则该参数联合后验密度可表示为:
p ( ϑ | x ) = L ( x | ϑ ) p ( ϑ ) (6)
在M-H算法中,选择一个建议分布函数对(6)进行参数更新,建议分布如下:
q ( ϑ , x ) = π ( x ) (7)
q ( ϑ , y ) 是与目标分布 p ( ϑ | x ) 较接近的已知分布,该建议分布称为备选生成密度,应满足:
∫ q ( ϑ , x ) d x = 1 (8)
在进行M = H算法时,应选择一个接受概率 α ( ϑ , ϑ ′ ) 使相应的 q ( ϑ , y ) 以 p ( ϑ | x ) 为其平稳分布,最常用的选择是:
α ( ϑ , ϑ ′ ) = min { p ( ϑ ′ | x ) q ( ϑ ′ , x ) p ( ϑ | x ) q ( ϑ , x ) , 1 } (9)
在经济领域,很难找到服从正态分布的数据,往往都是尾重或者带有偏度的数据。如果采取假设正态分布的方法进行研究,那么对数据的分析就会稍差一些,很难完全解读数据带给我们的信息。2009年Zhu Dongming [
f AEP ( y | μ , σ , α , p 1 , p 2 ) = { 1 σ exp ( − | y − μ α σ / Γ ( 1 + p 1 ) | p 1 ) , y ≤ μ 1 σ exp ( − | y − μ ( 1 − α ) σ / Γ ( 1 + p 2 ) | p 2 ) , y > μ (10)
其中, Γ ( x ) 为gamma函数, 0 < α < 1 为偏度参数, σ > 0 为尺度参数, p 1 > 0 和 p 2 > 0 分别控制左尾和
右尾参数, − ∞ < μ < + ∞ 为位置参数。当 α = 1 2 和 p 1 = p 2 时,AEPD分布为对称的指数幂分布;当 α = 1 2
和 p 1 = p 2 = 2 时,AEPD分布为标准的正态分布;当 p 1 = p 2 = 1 时便是ALD分布; p 1 ( p 2 ) 值越小,则左尾(右尾)越厚, α 值越大,则分布呈现为左偏。
图1给出了非对称指数幂分布(AEPD)在参数
图1. 随 α 变化的AEPD概率密度函数图
图2给出了非对称指数幂分布在参数 μ = 0 , σ = 1 , α = 0.5 , p 2 = 2 下随着 p 1 变化的图像。可以看到当 p 1 不断减小时,该分布呈现左尾厚重现象。当 p 1 = 2 时,该分布呈现正态分布现象。
图2. 随 p 1 变化的AEPD概率密度函数图
图3给出了非对称指数幂分布在参数 μ = 0 , σ = 1 , α = 0.5 , p 1 = 2 下随着 p 2 变化的图像。可以看到当 p 2 不断减小时,该分布呈现右尾厚重现象。当 p 2 = 2 时,该分布呈现正态分布现象。
假设总体的密度函数为 f AEP ( y , ϑ ) ,其中 ϑ = ( μ , σ , α , p 1 , p 2 ) 为未知参数向量, y i ( i = 1 , 2 , ⋯ , n ) 是来自该总体的样本,由(10)可得,该密度函数的似然函数为:
L ( y | ϑ ) = ∏ i n 1 σ [ exp ( − ( ( μ − y i ) Γ ( 1 + 1 / p 1 ) α σ ) p 1 ) + exp ( − ( ( y i − μ ) Γ ( 1 + 1 / p 2 ) ( 1 − α ) σ ) p 2 ) ] (11)
图3. 随 p 2 变化的AEPD概率密度函数图
对数似然函数为:
ln L ( y | ϑ ) = − n ln σ − ∑ i n ( Γ ( 1 + 1 p 1 ) ( μ − y i ) α σ ) p 1 I ( y i ≤ μ ) − ∑ i n ( Γ ( 1 + 1 p 2 ) ( y i − μ ) ( 1 − α ) σ ) p 2 I ( y i > μ ) (12)
在贝叶斯推断中,选择无信息先验分布 p ( ϑ ) ∝ 1 。根据(6)可得联合后验分布为:
p ( ϑ | y ) ∝ L ( y | ϑ ) p ( ϑ ) ∝ 1 σ n [ exp ( − ( ∑ i n ( μ − y i ) Γ ( 1 + 1 / p 1 ) α σ ) p 1 ) + exp ( − ( ∑ i n ( y i − μ ) Γ ( 1 + 1 / p 2 ) ( 1 − α ) σ ) p 2 ) ] (13)
其中, y = y 1 , ⋯ , y n 为观测值。由于联合后验分布的复杂性,要想对参数进行贝叶斯估计,采用MCMC方法进行模拟。MCMC方法的思想就是构造一个平稳分布对目标分布进行后验抽样。根据(7)、(8)、(9)进行M-H算法,对参数进行贝叶斯估计。
非对称指数幂分布是一个新的分布族,随着参数的变化,呈现出不同的分布,比如正态分布、均匀分布都是该分布的一个特例。对此,利用随机模拟生成1000个服从正态分布的数据,即 y i ~ N ( 0 , 10 ) 。利用这些模拟数据来进行非对称指数幂分布的贝叶斯参数估计。在进行贝叶斯参数估计的过程中,用到MCMC中的M-H算法,具体步骤如下:
对于M-H算法中的建议分布,针对非对称指数幂分布,采用正态分布作为建议分布,在R语言中将从建议分布中产生的第一个值设为初始化链条的
a) 选择建议分布 q ( ϑ , y i ) 为正态分布的密度,设 i = 2 ,迭代b、c、d步;
b) 从建议分布 N ( ϑ i − 1 , 2 ) 为中生成 ϑ ′ i ;
c) 令 ϑ ′ i 的接受概率为公式(9),其中,选择 q ( ϑ , y ) = q ( ϑ ′ , y ) 为随机游走的M算法;
d) 产生一个服从均分布 U ( 0 , 1 ) 的随机数u,令 ϑ i + 1 = { ϑ i , u ≤ α ( ϑ , ϑ ′ ) ϑ 1 , u > α ( ϑ , ϑ ′ ) ;
e) 令 i = i + 1 ,返回a步。
表1给出了采用MCMC中的随机游走M-H算法,将1000个数据样本进行10,000次迭代,剔除前1000个样本后的后验均值及95%的置信区间,这表明M-H算法在贝叶斯估计中的良好表现,解决了贝叶斯估计中高维数据处理困难的问题。从表中可以看到在不同的分位点每个待估参数不同的模拟估计值,随着分位点的增大,模拟的估计值也在逼近真值,例如在分位点 α = 0.95 时,待估参数的真值为: μ = 0 , σ = 1 , p 1 = 0.5 , p 2 = 2 ,相对应的贝叶斯参数估计模拟值为: μ = 0.002295 , σ = 1.002321 , α = 0.948325 , p 1 = 0.502165 , p 2 = 2.001092 。在表中也可以看到每个待估参数在各个分位点的95%的置信区间。
图4、图5、图6、图7和图8中给出了每个待估参数的模拟轨迹图、参数模拟值直方图、不同分位点轨迹图和自相关图。例如,图4中给出了 μ 相关的轨迹图和检验收敛图,从左往右依次为:剔除前1000个样本估计值的轨迹图,图中可以看到,均值 μ 的马尔科夫链收敛;第二个图为参数模拟值的直方图,可以看到抽到的估计值基本都在真值周围;第三个图为在0.025、0.5和0.975分位数下的轨迹图,从图中可以看到在样本1500以后都趋于收敛,其中上下两条虚线分别代表0.025和0.975分位数线的变化,实线代表0.5分位数的变化;第四个图为链的等价自相关函数图,从图中可以看到,最终的自相关度都趋于收敛。
分位点 | 参数 | 真值 | 估计值 | 95%置信区间 |
---|---|---|---|---|
0.25 | μ | 0 | 0.004406 | [−0.004110, 0.035680] |
σ | 1 | 1.004956 | [0.997341, 1.036673] | |
α | 0.25 | 0.252058 | [0.243971, 0.270394] | |
p 1 | 0.5 | 0.503658 | [0.495862, 0.528231] | |
p 2 | 2 | 1.998420 | [1.988583, 2.002509] | |
0.5 | μ | 0 | 0.003578 | [−0.00395, 0.028775] |
σ | 1 | 1.004006 | [0.997315, 1.030708] | |
α | 0.5 | 0.501049 | [0.493321, 0.514576] | |
p 1 | 0.5 | 0.502986 | [0.495943, 0.523567] | |
p 2 | 2 | 1.998543 | [1.988976, 2.002540] | |
0.75 | μ | 0 | 0.002511 | [−0.003582, 0.021775] |
σ | 1 | 1.002804 | [0.997192, 1.022655] | |
α | 0.75 | 0.749676 | [0.741728, 0.756592] | |
p 1 | 0.5 | 0.502118 | [0.496191, 0.518529] | |
p 2 | 2 | 1.999064 | [1.990346, 2.004054] | |
0.95 | μ | 0 | 0.002295 | [−0.003853, 0.019605] |
σ | 1 | 1.002321 | [0.996092, 1.021065] | |
α | 0.95 | 0.948325 | [0.939183, 0.950101] | |
p 1 | 0.5 | 0.502165 | [0.496074, 0.518774] | |
p 2 | 2 | 2.001092 | [1.993687, 2.013658] |
表1. AEP分布在不同分位点的贝叶斯参数模拟估计值
图4. μ 参数贝叶斯估计值MCMC相关图像
图5. σ 参数贝叶斯估计值MCMC相关图像
图6. α 参数贝叶斯估计值MCMC相关图像
图7. p 1 参数贝叶斯估计值MCMC相关图像
图8. p 2 参数贝叶斯估计值MCMC相关图像
本文针对非对称指数幂分布后验密度的复杂性,采用MCMC中的M-H算法对参数后验密度进行抽取。对AEP分布进行贝叶斯参数估计,假定先验分布为无信息先验,利用随机游动的M-H算法,对待估参数进行后验密度抽取,从MCMC模拟结果可以看到,各个分位点待估参数估计值的MCMC迭代轨迹图均收敛,这表明随机游动M-H算法很好的模拟了非对称指数幂分布的后验密度;得到的待估参数估计值与真值非常接近,说明该算法对具有非对称指数幂分布的数据集来说非常适用。
李东升,吴有富. 一种基于AEPD的贝叶斯参数估计方法A Technique of Bayesian Parameter Estimation Based on AEPD[J]. 统计学与应用, 2020, 09(04): 537-545. https://doi.org/10.12677/SA.2020.94058