贝叶斯统计学
统计推断中使用的三种信息:
- 总体信息:总体分布或总体所属的分布簇信息
- 样本信息:容量为 n n n的样本,以充分统计量 T ( x 1 , x 2 , . . . , x n ) T(x_1,x_2,...,x_n) T(x1,x2,...,xn)
- 先验信息:依据经验或历史资料,对参数先验所属的分布簇和相关参数做出判断。
基于以上三种信息进行统计推断的统计学称为贝叶斯统计学。贝叶斯学派最基本的观点是:任一未知量 θ \theta θ都可看作随机变量,可用概率分布去描述,这个分布称为先验分布。而频率学派的观点是位置参数为一个固定的值。两个学派之间的主要差别在于是否利用先验信息。
先验分布的确定已有一系诶较为成熟的方法,比如经常采用共轭先验分布。
共轭先验分布:设 θ \theta θ是某分布中的一个参数, π ( θ ) \pi(\theta) π(θ)使其先验分布。假如由抽样信息算得的后验分布 π ( θ ∣ x ) \pi(\theta|\bold{x}) π(θ∣x)与 π ( θ ) \pi(\theta) π(θ)同属一个分布簇,则称 π ( θ ) \pi(\theta) π(θ)为 θ \theta θ的共轭先验分布。
贝叶斯估计
依赖于参数 θ \theta θ的密度函数在经典统计学中记为 p ( x ; θ ) p(x;\theta) p(x;θ),表示参数空间 Θ \Theta Θ中不同参数 θ \theta θ对应不同分布。在贝叶斯推断中记为 p ( x ∣ θ ) p(x|\theta) p(x∣θ),表示在随机变量 θ \theta θ给定某个取值时, X X X的条件分布。根据参数 θ \theta θ的先验信息确定先验分布 π ( θ ) \pi(\theta) π(θ)。
贝叶斯方法是生成模型的代表,贝叶斯统计学的观点看,样本数据 x = ( x 1 , x 2 , . . . , x n ) \bold{x}=(x_1,x_2,...,x_n) x=(x1,x2,...,xn)由生产过程分为两步:
- 首先从参数先验分布 π ( θ ) \pi(\theta) π(θ)中产生一个参数样本 θ ′ \theta' θ′
- 然后从 p ( x ∣ θ ′ ) p(x|\theta') p(x∣θ′)中产生一个样本 x = ( x 1 , x 2 , . . . , x n ) \bold{x}=(x_1,x_2,...,x_n) x=(x1,x2,...,xn)。因此样本 x \bold{x} x的联合条件密度函数为:
p ( x ∣ θ ′ ) = ∏ i = 1 n p ( x i ∣ θ ′ ) p(\bold{x}|\theta') = \prod_{i=1}^np(x_i|\theta') p(x∣θ′)=i=1∏np(xi∣θ′)
这个联合分布综合了总体信息和样本信息,又称为似然函数。
再来考虑样本 x \bold{x} x和参数 θ \theta θ的联合分布,由以上的条件密度函数和参数的先验分布,得到样本和参数的联合分布为:
h ( x , θ ) = p ( x ∣ θ ) π ( θ ) h(\bold{x},\theta) = p(\bold{x}|\theta)\pi(\theta) h(x,θ)=p(x∣θ)π(θ)
这个联合分布综合了总体信息,样本信息和先验信息。
在没有样本信息时,我们只能依赖先验信息对 θ \theta θ作出判断,有了抽样样本后,可以利用后验分布 π ( θ ∣ x ) \pi(\theta|\bold{x}) π(θ∣x)对 θ \theta θ作出更接近真实值的推断。对联合分布作出一下分解:
h ( x , θ ) = π ( θ ∣ x ) m ( x ) h(\bold{x},\theta)=\pi(\theta|\bold{x})m(\bold{x}) h(x,θ)=π(θ∣x)m(x)
π ( θ ∣ x ) = h ( x , θ ) m ( x ) = p ( x ∣ θ ) π ( θ ) ∫ Θ x ∣ θ ) π ( θ ) d θ \pi(\theta|\bold{x})=\frac{h(\bold{x,\theta})}{m(\bold{x})}=\frac{p(\bold{x}|\theta)\pi(\theta)}{\int_{\Theta}\bold{x}|\theta)\pi(\theta)d\theta} π(θ∣x)=m(x)h(x,θ)=∫Θx∣θ)π(θ)dθp(x∣θ)π(θ)
称为参数 θ \theta θ的后验分布,所谓后验分布,指的就是在观察到抽样信息后参数的分布,它利用样本信息和总体信息,对先验分布作出了调整,是对样本信息,总体信息和先验信息的综合考虑,相对先验分布 π ( θ ) \pi(\theta) π(θ)更接近 θ \theta θ的真实情况,也就是对参数 θ \theta θ的情况掌握的更多的信息,这个信息是集中了总体、样本和先验中有关 θ \theta θ的所有信息。
一个具体的例子,抛硬币实验中,假设正面朝上的概率为 θ \theta θ,为了估计 θ \theta θ的情况,进行了 n n n次独立实验,正面朝上的次数为 x x x。
例子里的样本信息是:容量为 n n n的样本,以及充分统计量X样本正面朝上次数,记为 X = x X = x X=x;总体信息是:X 服从二项分布 X ∼ b ( n , θ ) X\sim b(n,\theta) X∼b(n,θ),下面考虑充分统计量X的分布:
p ( X = x ∣ θ ) = ( n x ) θ x ( 1 − θ ) n − x p(X=x|\theta) = (\frac{n}{x})\theta^{x}(1-\theta)^{n-x} p(X=x∣θ)=(xn)θx(1−θ)n−x
也就是似然函数(这里用充分统计量的分布代替样本分布,对于后续的分析过程效果是等价的), θ \theta θ的最大似然估计 θ M L E = x n \theta_{MLE} = \frac{x}{n} θMLE=nx。
然后加入 θ \theta θ的先验分布,假设 π ( θ ) ∼ B e ( a , b ) \pi(\theta)\sim Be(a, b) π(θ)∼Be(a,b),贝塔分布是均值和方差分别为:
E ( θ ) = a a + b E(\theta) = \frac{a}{a+b} E(θ)=a+ba
V a r ( θ ) = a b ( a + b ) 2 ( a + b + 1 ) Var(\theta) = \frac{ab}{(a+b)^2(a+b+1)} Var(θ)=(a+b)2(a+b+1)ab
假设知道其他 k 个相似硬币的 θ \theta θ 值为 θ 1 , θ 2 , . . . θ k \theta_1,\theta_2,...\theta_k θ1,θ2,...θk,则 θ ‾ = 1 k ∑ i = 1 k θ i , s 2 = 1 k − 1 ∑ i = 1 k ( θ i − x ‾ ) \overline{\theta}=\frac{1}{k}\sum_{i=1}^k\theta_i,s^2 = \frac{1}{k-1}\sum_{i=1}^k(\theta_i-\overline{x}) θ=k1∑i=1kθi,s2=k−11∑i=1k(θi−x)可以作为 E ( θ ) , V a r ( θ ) E(\theta),Var(\theta) E(θ),Var(θ)的估计值,从而可以得到 a , b a,b a,b的矩估计值 a ^ , b ^ \hat{a},\hat{b} a^,b^,估计过程如下:
E ^ ( θ ) = a ^ a ^ + b ^ = θ ‾ , V a r ^ ( θ ) = a ^ b ^ ( a ^ + b ^ ) 2 ( a ^ + b ^ + 1 ) = s 2 \hat{E}(\theta) =\frac{\hat{a}}{\hat{a}+\hat{b}}= \overline{\theta}, \hat{Var}(\theta)=\frac{\hat{a}\hat{b}}{(\hat{a}+\hat{b})^2(\hat{a}+\hat{b}+1)}=s^2 E^(θ)=a^+b^a^=θ,Var^(θ)=(a^+b^)2(a^+b^+1)a^b^=s2
得到
a ^ = θ ‾ [ ( 1 − θ ‾ ) θ ‾ s 2 − 1 ] \hat{a}=\overline{\theta}[\frac{(1-\overline{\theta})\overline{\theta}}{s^2} - 1] a^=θ[s2(1−θ)θ−1]
b ^ = ( 1 − θ ‾ ) [ ( 1 − θ ‾ ) θ ‾ s 2 − 1 ] \hat{b}=(1 - \overline{\theta})[\frac{(1-\overline{\theta})\overline{\theta}}{s^2} - 1] b^=(1−θ)[s2(1−θ)θ−1]
至此,我们得到先验分布 π ( θ ) ∼ B e ( a ^ , b ^ ) \pi(\theta) \sim Be(\hat{a},\hat{b}) π(θ)∼Be(a^,b^),下面将先验估计加入到似然函数,推导出 θ \theta θ的后验分布:
π ( θ ) = Γ ( a + b ) Γ ( a ) Γ ( b ) θ a − 1 ( 1 − θ ) b − 1 \pi(\theta)=\frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)}\theta^{a-1}(1-\theta)^{b-1} π(θ)=Γ(a)Γ(b)Γ(a+b)θa−1(1−θ)b−1
π ( θ ∣ x ) = p ( x ∣ θ ) π ( θ ) ∫ Θ p ( x ∣ θ ) π ( θ ) d θ \pi(\theta|\bold{x}) = \frac{p(x|\theta)\pi(\theta)}{\int_{\Theta}p(x|\theta)\pi(\theta)d\theta} π(θ∣x)=∫Θp(x∣θ)π(θ)dθp(x∣θ)π(θ)
= Γ ( a ^ + b ^ + n ) Γ ( a ^ + x ) Γ ( b ^ + n − x ) θ a ^ + x − 1 ( 1 − θ ) b ^ + n − x − 1 = \frac{\Gamma(\hat{a}+\hat{b}+n)}{\Gamma(\hat{a}+x)\Gamma(\hat{b}+n-x)}\theta^{\hat{a}+x-1}(1-\theta)^{\hat{b}+n-x-1} =Γ(a^+x)Γ(b^+n−x)Γ(a^+b^+n)θa^+x−1(1−θ)b^+n−x−1
可以看到后验分布综合了:
- 样本信息:抽样n次,正面向上次数x
- 总体信息: X ∼ b ( n , θ ) X \sim b(n, \theta) X∼b(n,θ)
- 先验信息: π ( θ ) ∼ B e ( a ^ , b ^ ) , a ^ = θ ‾ [ ( 1 − θ ‾ ) θ ‾ s 2 − 1 ] , b ^ = ( 1 − θ ‾ ) [ ( 1 − θ ‾ ) θ ‾ s 2 − 1 ] \pi(\theta) \sim Be(\hat{a}, \hat{b}), \hat{a}=\overline{\theta}[\frac{(1-\overline{\theta})\overline{\theta}}{s^2} - 1], \hat{b}=(1 - \overline{\theta})[\frac{(1-\overline{\theta})\overline{\theta}}{s^2} - 1] π(θ)∼Be(a^,b^),a^=θ[s2(1−θ)θ−1],b^=(1−θ)[s2(1−θ)θ−1]
利用后验分布,首先可以对参数 θ \theta θ进行参数估计,得到相应估计值 θ ^ \hat{\theta} θ^,估计的方式不同得到不同的估计值;常用方法是进行均方误差最小估计,即:
θ ^ B = a r g m i n θ ^ E θ ∼ π ( θ ∣ x ) [ ( θ ^ − θ ) 2 ] \hat{\theta}_B = argmin_{\hat{\theta}} E_{\theta\sim\pi(\theta|\bold{x})}[(\hat{\theta}-\theta)^2] θ^B=argminθ^Eθ∼π(θ∣x)[(θ^−θ)2]
后验均方误差最小估计 θ ^ B \hat{\theta}_B θ^B也称为参数 θ \theta θ的贝叶斯估计(Bayesian Estimator)。
下面来求解参数的贝叶斯估计:
E θ ∼ π ( θ ∣ x ) [ ( θ ^ − θ ) 2 ] = ∫ Θ ( θ ^ − θ ) 2 π ( θ ∣ x ) d θ E_{\theta\sim\pi(\theta|\bold{x})}[(\hat{\theta}-\theta)^2] = \int_{\Theta}(\hat{\theta}-\theta)^2\pi(\theta|\bold{x})d\theta Eθ∼π(θ∣x)[(θ^−θ)2]=∫Θ(θ^−θ)2π(θ∣x)dθ
= θ ^ 2 − 2 θ ^ ∫ Θ θ π ( θ ∣ x ) d θ + ∫ Θ θ 2 π ( θ ∣ x ) d θ =\hat{\theta}^2 - 2\hat{\theta}\int_{\Theta}\theta\pi(\theta|\bold{x})d\theta+\int_{\Theta}\theta^2\pi(\theta|\bold{x})d\theta =θ^2−2θ^∫Θθπ(θ∣x)dθ+∫Θθ2π(θ∣x)dθ
得到一个关于 θ ^ \hat{\theta} θ^的二次三项式,二次项系数为正,必然存在最小值,令倒数为零,等到最小值解:
θ ^ B = ∫ Θ θ π ( θ ∣ x ) d θ = E θ ∼ π ( θ ∣ x ) ( θ ) = E ( θ ∣ x ) \hat{\theta}_B = \int_{\Theta}\theta\pi(\theta|\bold{x})d\theta = E_{\theta\sim \pi(\theta|\bold{x})}(\theta) = E(\theta|\bold{x}) θ^B=∫Θθπ(θ∣x)dθ=Eθ∼π(θ∣x)(θ)=E(θ∣x)
可以看出 θ \theta θ 的贝叶斯估计就是 θ \theta θ 的后验期望 E ( θ ∣ x ) E(\theta|\bold{x}) E(θ∣x)。并且可以证明,此时的后验均方误差也就是 θ \theta θ的后验方差 V a r ( θ ∣ x ) Var(\theta|\bold{x}) Var(θ∣x),这里不展开。
类似可以证明,在已知后验分布 π ( θ ∣ x ) \pi(\theta|\bold{x}) π(θ∣x)的情况下,参数函数 g ( θ ) g(\theta) g(θ)在均方误差下的贝叶斯估计为:
g ^ ( θ ) B = E [ g ( θ ) ∣ x ] \hat{g}(\theta)_B = E[g(\theta)|\bold{x}] g^(θ)B=E[g(θ)∣x]
贝叶斯推断(Bayesian Inference)
考虑这样一个预测问题,给定
- 总体信息: X ∼ p ( X ∣ θ ) X \sim p(X | \theta) X∼p(X∣θ)
- 样本信息:n次独立抽样的观测值 x = ( x 1 , x 2 , . . . , x n ) \bold{x}=(x_1,x_2,...,x_n) x=(x1,x2,...,xn)
- 先验信息: θ ∼ π ( α ) \theta \sim \pi(\alpha) θ∼π(α)
预测未来 x x x的取值。
综合总体、样本和先验信息,利用贝叶斯公式,得到参数后验分布 π ( θ ∣ x ) \pi(\theta|\bold{x}) π(θ∣x)。利用贝叶斯后验分布预测未来样本取值的过程称为贝叶斯推断,一般分为以下几个步骤:
- 集中总体、样本和先验信息,得到参数贝叶斯后验分布 π ( θ ∣ x ) \pi(\theta|\bold{x}) π(θ∣x)
- 数据后验预测分布 p ( x ∣ x ) = ∫ θ p ( x ∣ θ ) π ( θ ∣ x ) d θ p(x|\bold{x}) = \int_{\theta}p(x|\theta)\pi(\theta|\bold{x})d\theta p(x∣x)=∫θp(x∣θ)π(θ∣x)dθ ,相对先验预测分布 p ( x ) = ∫ θ p ( x ∣ θ ) p ( θ ) d θ p(x) = \int_{\theta}p(x|\theta)p(\theta)d\theta p(x)=∫θp(x∣θ)p(θ)dθ,后验预测分布加入了样本信息,因此更接近真实的预测分布。
- 对后验预测分布 p ( X ∣ x ) p(X|\bold{x}) p(X∣x)做适当的提取,可得到后验预测均值 E ( X ∣ x ) = ∫ x x p ( x ∣ x ) d x E(X|\bold{x}) = \int_{x}xp(x|\bold{x})dx E(X∣x)=∫xxp(x∣x)dx和后验预测方差 V a r ( X ∣ x ) = ∫ θ ( x − E ( X ∣ x ) ) π ( θ ∣ x ) d θ Var(X|\bold{x}) = \int_{\theta}(x-E(X|\bold{x}))\pi(\theta|\bold{x})d\theta Var(X∣x)=∫θ(x−E(X∣x))π(θ∣x)dθ
下面通过一个完整的例子说明贝叶斯推断的过程:
视频推荐领域经典问题是要根据视频的历史展现次数 n n n和播放次数 k k k,估计视频的点击率。下面采用贝叶斯方式对视频点击率 θ \theta θ 进行估计,并对未来点击进行预估。考虑视频播放次数 T ( x ) = k T(\bold{x}) = k T(x)=k,为二项分布的充分统计量
-
首先假设视频点击率 θ \theta θ的先验分布 θ ∼ B e ( a , b ) \theta\sim Be(a, b) θ∼Be(a,b),并用相似视频估计参数 a , b a,b a,b,记为 a ^ , b ^ \hat{a},\hat{b} a^,b^
-
考虑正样本数量,也就是似然函数为 p ( T ( x ) = k ∣ θ ) = ( n k ) ∏ i = 1 n p ( x ∣ θ ) = ( n k ) θ k ( 1 − θ ) n − k p(T(\bold{x}) = k|\theta)=(\frac{n}{k})\prod_{i=1}^np(x|\theta)=(\frac{n}{k})\theta^k(1-\theta)^{n-k} p(T(x)=k∣θ)=(kn)∏i=1np(x∣θ)=(kn)θk(1−θ)n−k
-
综合以上信息,得到参数后验分布 π ( θ ∣ T ( x ) = k ) = p ( T ( x ) = k ∣ θ ) p ( θ ) p ( T ( x ) = k ) = p ( T ( x ) = k ∣ θ ) p ( θ ) ∫ θ p ( T ( x ) = k ∣ θ ) p ( θ ) d θ = Γ ( n + a + b ) Γ ( a + k ) Γ ( b + n − k ) θ a + k − 1 ( 1 − θ ) b + n − k − 1 \pi(\theta|T(\bold{x})=k) = \frac{p(T(\bold{x})=k|\theta)p(\theta)}{p(T(\bold{x})=k)} = \frac{p(T(\bold{x})=k|\theta)p(\theta)}{\int_{\theta}p(T(\bold{x})=k|\theta)p(\theta)d\theta} = \frac{\Gamma(n+a+b)}{\Gamma(a+k)\Gamma(b+n-k)}\theta^{a+k-1}(1-\theta)^{b+n-k-1} π(θ∣T(x)=k)=p(T(x)=k)p(T(x)=k∣θ)p(θ)=∫θp(T(x)=k∣θ)p(θ)dθp(T(x)=k∣θ)p(θ)=Γ(a+k)Γ(b+n−k)Γ(n+a+b)θa+k−1(1−θ)b+n−k−1
-
预测值似然函数 p ( x ∣ θ ) = { θ , x = 1 1 − θ , x = 0 \begin {equation} p(x|\theta)=\left\{ \begin{aligned} \theta, x=1\\ 1-\theta, x=0 \end{aligned} \right. \end{equation} p(x∣θ)={θ,x=11−θ,x=0
-
预测值后验分布 p ( x ∣ T ( x = k ) ) = ∫ θ p ( x ∣ θ ) π ( θ ∣ T ( x = k ) ) d θ p(x|T(\bold{x}=k)) = \int_{\theta} p(x|\theta)\pi(\theta|T(\bold{x}=k))d\theta p(x∣T(x=k))=∫θp(x∣θ)π(θ∣T(x=k))dθ
-
计算期望预测值期望
E ( x ∣ T ( x = k ) ) = 1 ∗ p ( x = 1 ∣ T ( x = k ) ) + 0 ∗ p ( x = 0 ∣ T ( x = k ) ) = ∫ θ p ( x = 1 ∣ θ ) π ( θ ∣ T ( x = k ) ) d θ E(x|T(\bold{x}=k))=1 * p(x=1|T(\bold{x}=k)) + 0 * p(x=0|T(\bold{x}=k)) = \int_{\theta} p(x=1|\theta)\pi(\theta|T(\bold{x}=k))d\theta E(x∣T(x=k))=1∗p(x=1∣T(x=k))+0∗p(x=0∣T(x=k))=∫θp(x=1∣θ)π(θ∣T(x=k))dθ
= ∫ θ θ π ( θ ∣ T ( x = k ) ) d θ = \int_{\theta} \theta\pi(\theta|T(\bold{x}=k))d\theta =∫θθπ(θ∣T(x=k))dθ
= a + k a + b + n =\frac{a+k}{a+b+n} =a+b+na+k