这篇博客是在自学李航老师的《统计学习方法》19章MCMC的过程中,进行简要的复述和记录,之后会在二刷三刷博客的时候增加自己对方法对口语化描述及理解,关注我一起加油吧~~
统计学习和机器学习的目的是基于数据对概率分布的特征进行判断。蒙特卡罗法要解决的问题是,假设概率分布的定义已知,通过抽样获得概率分布的随机样本,通过得到的样本对概率分布的特征进行分析,蒙特卡罗法的核心是随机抽样。
一般的蒙特卡罗法有直接抽样法、接受-拒绝抽样法、重要性抽样法等。后两种方法适合于概率密度函数复杂(如密度函数有多个变量,各变量相互不独立,密度函数形式复杂),不能直接抽样的方法。
一般的蒙特卡罗法,如直接抽样法、接受-拒绝法、重要性抽样法等,也可以直接用于数学期望估计。假设随机变量 x x x,取值 x ∈ χ x\in\chi x∈χ,其概率密度函数为 p ( x ) p(x) p(x), f ( x ) f(x) f(x)为定义在 χ \chi χ上的函数,目标是求函数 f ( x ) f(x) f(x)关于密度函数 p ( x ) p(x) p(x)的数学期望 E p ( x ) [ f ( x ) ] E_{p(x)}[f(x)] Ep(x)[f(x)].
蒙特卡罗法按照概率分布 p ( x ) p(x) p(x)独立地选取 n n n个样本 x 1 , x 2 , ⋅ ⋅ ⋅ , x n x_1,x_2,\cdot\cdot\cdot,x_n x1,x2,⋅⋅⋅,xn,比如用以上的抽样方法,计算函数 f ( x ) f(x) f(x)的样本均值 f ^ n \hat f_n f^n, f ^ n = 1 n ∑ i = 1 n f ( x i ) \hat f_n=\frac {1}{n}\sum_{i=1}^nf(x_i) f^n=n1i=1∑nf(xi)作为数学期望 E p ( x ) [ f ( x ) ] E_{p(x)}[f(x)] Ep(x)[f(x)]的近似值。根据大数定律可知,当样本容量增大时,样本均以概率1收敛于数学期望,因此得到了数学期望的近似计算方法: E p ( x ) [ f ( x ) ] ≈ 1 x = n ∑ i = 1 n f ( x i ) E_{p(x)}[f(x)]\approx \frac{1}{x=n}\sum_{i=1}^nf(x_i) Ep(x)[f(x)]≈x=n1i=1∑nf(xi)
一般的蒙特卡罗法也可以用于定积分的近似计算,称为蒙特卡罗积分。假设有一个函数 h ( x ) h(x) h(x),目标是计算该函数的积分 ∫ χ h ( x ) d x \int_\chi h(x)dx ∫χh(x)dx
如果能够将函数 h ( x ) h(x) h(x)分解成一个函数 f ( x ) f(x) f(x)和一个概率密度函数 p ( x ) p(x) p(x)的乘积的形式,那么就有 ∫ χ h ( x ) d x = ∫ χ f ( x ) p ( x ) d x = E p ( x ) [ f ( x ) ] \int_\chi h(x)dx=\int_\chi f(x)p(x)dx=E_{p(x)}[f(x)] ∫χh(x)dx=∫χf(x)p(x)dx=Ep(x)[f(x)]
于是函数 h ( x ) h(x) h(x)的积分可以表示为函数 f ( x ) f(x) f(x)关于概率密度函数 p ( x ) p(x) p(x)的数学期望。任何一个函数的积分都可以表示为某一个函数的数学期望的形式:给定一个概率密度函数 p ( x ) p(x) p(x),只要取 f ( x ) = h ( x ) p ( x ) f(x)=\frac{h(x)}{p(x)} f(x)=p(x)h(x) .函数的数学期望又可以通过函数的样本均值估计,于是就可以采用样本均值来近似计算积分。这就是蒙特卡罗积分的基本思想。
∫ χ h ( x ) d x = E p ( x ) [ f ( x ) ] ≈ 1 n ∑ i = 1 n f ( x i ) \int_\chi h(x)dx=E_{p(x)}[f(x)]\approx \frac {1}{n}\sum_{i=1}^nf(x_i) ∫χh(x)dx=Ep(x)[f(x)]≈n1i=1∑nf(xi)
马尔可夫链蒙特卡罗法也适用于概率密度函数复杂,不能直接抽样的情况,旨在解决一般的蒙特卡罗法抽样效率不高的问题。一般的蒙特卡罗法中的抽样样本是独立的,而马尔可夫链蒙特卡罗法中的抽样样本不是独立的,样本序列形成马尔可夫链。
连续状态的马尔可夫链 X = X 0 , X 1 , ⋅ ⋅ ⋅ , X t X={X_0,X_1,\cdot\cdot\cdot,X_t} X=X0,X1,⋅⋅⋅,Xt,随机变量 X t ( t = 0 , 1 , 2 , ⋅ ⋅ ⋅ ) X_t(t=0,1,2,\cdot\cdot\cdot) Xt(t=0,1,2,⋅⋅⋅)定义在连续状态空间 S S S,转移概率分布由概率转移核或转移核表示。
设 S S S是连续状态空间,对任意的 x ∈ S , A ∈ S x \in S,A \in S x∈S,A∈S,转移核 P ( x , A ) P(x,A) P(x,A)定义为 P ( x , A ) = ∫ A p ( x , y ) d y P(x,A)=\int_Ap(x,y)dy P(x,A)=∫Ap(x,y)dy 其中 p ( x , ⋅ ) p(x,\cdot) p(x,⋅)表示概率密度函数,满足 p ( x , ⋅ ) ≥ 0 , P ( x , S ) = ∫ S p ( x , y ) d y = 1 p(x,\cdot)\geq 0,P(x,S)=\int_Sp(x,y)dy=1 p(x,⋅)≥0,P(x,S)=∫Sp(x,y)dy=1。转移核 P ( x , A ) P(x,A) P(x,A)表示从 x ~ A x~A x~A的转移概率。
P ( X t = A ∣ X t − 1 = x ) = P ( x , A ) P(X_t=A|X_{t-1}=x)=P(x,A) P(Xt=A∣Xt−1=x)=P(x,A)有时也将概率密度函数 p ( x , ⋅ ) p(x,\cdot) p(x,⋅)称为转移核。
若马尔可夫链的状态空间 S S S上的概率分布 π ( x ) \pi(x) π(x)满足条件 π ( y ) = ∫ p ( x , y ) π ( x ) d x , ∀ y ∈ S \pi(y)=\int p(x,y)\pi(x)dx,\forall y\in S π(y)=∫p(x,y)π(x)dx,∀y∈S则称分布 π ( x ) \pi(x) π(x)为该马尔可夫链的平稳分布。等价地, π ( A ) = ∫ P ( x , A ) π ( x ) d x , ∀ A ⊂ S \pi(A)=\int P(x,A)\pi(x)dx,\forall A\subset S π(A)=∫P(x,A)π(x)dx,∀A⊂S或简写为 π = P π \pi=P\pi π=Pπ
不可约
非周期
正常返
遍历定理
可逆马尔可夫链
吉布斯抽样用于多元变量联合分布的抽样和估计。其基本做法是:从联合概率分布定义满条件概率分布,依次对满条件概率分布进行抽样,得到样本的序列。抽样的过程就是在马尔可夫链上的随机游走,每一个样本对应着马尔可夫链的状态,平稳分布目标的联合分布。