稀疏贝叶斯学习(sparse bayesian learning,SBL)是稀疏信号重构的方法之一,其性能相当于重加权的ℓ1范数恢复方法,并且不需要设置正则化参数,在目标定位,生物医学信号提取等方面被广泛应用。 设计知识包括高斯函数、最大似然估计、向量求导、贝叶斯估计、EM算法。
先考虑对一个变量的观测,假设有观测矩阵 Φ ∈ C N × M \bm{\Phi}\in C^{N\times M} Φ∈CN×M,对未知变量 ω ∈ C M × 1 \bm{\omega}\in C^{M\times1} ω∈CM×1进行观测,记为
t = Φ ω + ϵ ( 1 ) \bm{t}=\bm{\Phi}\bm{\omega}+\bm{\epsilon}\qquad(1) t=Φω+ϵ(1)
式中 t ∈ C N × 1 t\in C^{N\times1} t∈CN×1,观测矩阵也称为过完备基,这里假定 ω \bm{\omega} ω是稀疏变量,即 ω \bm{\omega} ω的大部分元素都为0, ϵ \epsilon ϵ为观测噪声。SBL要解决的问题是根据已知的 t \bm{t} t和 Φ \bm{\Phi} Φ估计出 ω \bm{\omega} ω,其实就是稀疏信号的重构。
贝叶斯公式:
p ( ω ∣ t ) = p ( t ∣ ω ) p ( ω ) p ( t ) p(\omega|t)=\frac{p(t|\omega)p(\omega)}{p(t)}\qquad p(ω∣t)=p(t)p(t∣ω)p(ω)
p ( ω ) {p(\omega)} p(ω)称之为先验概率,表示在观测之前的概率, p ( ω ∣ t ) p(\omega|t) p(ω∣t)称之为后验概率,是观测之后的概率, p ( t ∣ ω ) p(t|\omega) p(t∣ω)是似然概率,在求最大似然估计的时候就是使用的该概率形式, p ( t ) p(t) p(t)表示证据。很多情况下,我们要估计 ω \bm{\omega} ω可由 a r g m a x ω p ( ω ∣ t ) argmax_\omega p(\omega|t) argmaxωp(ω∣t)求得,但上述后验概率不易求得。因证据p(t)与ω无关,上述后验概率最大化可由贝叶斯公式转化为似然概率和先验概率的乘积的最大化求得,即 a r g m a x ω p ( x ∣ ω ) p ( ω ) argmax_\omega p(x|\omega)p(\omega) argmaxωp(x∣ω)p(ω)。
SBL采用了神经网络里常用的自动相关决策理论(Automatic Relevance Determination)来获取稀疏解。首先假定 ϵ \bm{\epsilon} ϵ符合均值为0,方差为 σ 2 I N \sigma^2\bm{I}_N σ2IN的高斯分布,则可得出 t t t 符合均值为 Φ ω \bm{\Phi}\bm{\omega} Φω,方差为 σ 2 I N \sigma^2\bm{I}_N σ2IN的高斯分布,即:
p ( t ∣ ω ) = ( 2 π σ 2 ) − N / 2 e x p [ − 1 2 σ 2 ( t − Φ ω ) H ( t − Φ ω ) ] ( 2 ) p(\bm{t}|\bm{\omega})=(2\pi\sigma^2)^{-N/2}exp[-\frac{1}{2\sigma^2}(\bm{t}-\bm{\Phi\omega})^H(\bm{t}-\bm{\Phi\omega})]\qquad(2) p(t∣ω)=(2πσ2)−N/2exp[−2σ21(t−Φω)H(t−Φω)](2)
据ARD,其假定 ω \bm\omega ω由超参数 γ \bm{\gamma} γ产生,假定其 ω i \omega_i ωi由 γ i \gamma_i γi控制,并符合均值为0,方差为 γ i \gamma_i γi的高斯分布,即
p ( ω ; γ ) = ( 2 π ) − M 2 ∣ Γ ∣ − 1 2 e − 1 2 ω H Γ − 1 ω ( 3 ) p(\bm{\omega};\bm{\gamma})=(2\pi)^{\frac{-M}{2}}\left|\bm{\Gamma}\right|^{-\frac{1}{2}}e^{-\frac{1}{2}\bm{\omega}^H\bm{\Gamma^{-1}\omega}}\qquad(3) p(ω;γ)=(2π)2−M∣Γ∣−21e−21ωHΓ−1ω(3)
式中 Γ = d i a g ( γ ) \bm{\Gamma}=diag(\bm{\gamma}) Γ=diag(γ)。
利用全概率公式即可得第二类似然函数为
p ( t ; γ ) = ∫ ω p ( t ∣ ω ) p ( ω ; γ ) d ω p(\bm{t};\bm{\gamma})=\int _{\bm{\omega}}{p(\bm{t}|\bm{\omega})p(\bm{\omega};\bm{\gamma})d\bm{\omega}} p(t;γ)=∫ωp(t∣ω)p(ω;γ)dω
将(2)和(3)代入到(4)中,可得
p ( t ; γ ) = ∫ ω ( 2 π σ 2 ) − N / 2 ( 2 π ) − M / 2 ∣ Γ ∣ − 1 2 e x p [ − 1 2 σ 2 ( t − Φ ω ) H ( t − Φ ω ) − 1 2 ω H Γ − 1 ω ] d ω p(\bm{t};\bm{\gamma})=\int_{\bm{\omega}}(2\pi\sigma^2)^{-N/2}(2\pi)^{-M/2}\left|\bm{\Gamma}\right|^{-\frac{1}{2}}exp[-\frac{1}{2\sigma^2}(\bm{t}-\bm{\Phi\omega})^H(\bm{t}-\bm{\Phi\omega})-\frac{1}{2}\bm{\omega}^H\bm{\Gamma^{-1}\omega}]d\bm{\omega} p(t;γ)=∫ω(2πσ2)−N/2(2π)−M/2∣Γ∣−21exp[−2σ21(t−Φω)H(t−Φω)−21ωHΓ−1ω]dω
其实该式可以看成两个高斯函数进行卷积,根据高斯函数性质知,两个高斯函数卷积的结果仍为高斯函数。所以只需要求得卷积后的高斯函数的均值和期望,就相当于求出上式的积分了。
取其指数,令
L = − 1 2 σ 2 ( t − Φ ω ) H ( t − Φ ω ) − 1 2 ω H Γ − 1 ω ( 5 ) L=-\frac{1}{2\sigma^2}(\bm{t}-\bm{\Phi\omega})^H(\bm{t}-\bm{\Phi\omega})-\frac{1}{2}\bm{\omega}^H\bm{\Gamma^{-1}\omega} \qquad(5) L=−2σ21(t−Φω)H(t−Φω)−21ωHΓ−1ω(5)
则进一步,可以得到:
L = − 1 2 σ 2 [ ω H ( Φ H Φ + σ 2 Γ − 1 ) ω − t H Φ ω − ω H Φ H t + t H t ] L=-\frac{1}{2\sigma^2}[\bm{\omega}^H(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})\bm{\omega}-\bm{t}^H\bm{\Phi}\bm{\omega}-\bm{\omega}^H\bm{\Phi}^H\bm{t}+\bm{t}^H\bm{t}] L=−2σ21[ωH(ΦHΦ+σ2Γ−1)ω−tHΦω−ωHΦHt+tHt]
L L L是关于 ω \bm{\omega} ω的二次项。这里求解上述积分要用到高斯函数的以下性质:
∫ ω e − ( A ω + b ) 2 d ω = C \int_{\bm{\omega}}e^{-(\bm{A\omega}+\bm{b})^2}d\bm{\omega}=C ∫ωe−(Aω+b)2dω=C
式中 A \bm{A} A是矩阵, b \bm{b} b是向量,其维数应满足上式的乘法规则。 C C C是常数,具体是多少,我们可以不关注,感兴趣的话可以自己推导或查阅相关文献。我们需要关注的是似然函数对 ω \bm{\omega} ω积分后 t \bm{t} t项和 σ \bm{\sigma} σ项。现在的问题是我们需要将 L \bm{L} L表达成 − ( A ω + b ) 2 + f ( t , σ 2 ) -(\bm{A\omega}+\bm{b})^2+f(t,\sigma^2) −(Aω+b)2+f(t,σ2)的样式,并求得 f ( t , σ 2 ) f(t,\sigma^2) f(t,σ2)。显然,我们将满足 A ω + b = 0 \bm{A\omega}+\bm{b}=\bm{0} Aω+b=0的 ω \bm{\omega} ω代入其中,即得到 f ( t , σ 2 ) f(t,\sigma^2) f(t,σ2)。先求 ω \bm{\omega} ω,下面通过求导完成。
d L d ω = 1 σ 2 [ ( Φ H Φ + σ 2 Γ − 1 ) ω − Φ H t ] \frac{dL}{d\bm{\omega}}=\frac{1}{\sigma^2}[(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})\bm{\omega}-\bm{\Phi}^H\bm{t}] dωdL=σ21[(ΦHΦ+σ2Γ−1)ω−ΦHt]
令 d L d ω = 0 \frac{dL}{d\bm{\omega}}=0 dωdL=0可得
ω = ( Φ H Φ + σ 2 Γ − 1 ) − 1 Φ H t ( 6 ) \bm{\omega}=(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})^{-1}\bm{\Phi}^H\bm{t}\qquad(6) ω=(ΦHΦ+σ2Γ−1)−1ΦHt(6)
将(6)代入(5)中,得到
L = − 1 2 σ 2 t H [ I − Φ ( Φ H Φ + σ 2 Γ − 1 ) − 1 Φ H ] t L=-\frac{1}{2\sigma^2}\bm{t}^H[\bm{I}-\bm{\Phi}(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})^{-1}\bm{\Phi}^H]\bm{t} L=−2σ21tH[I−Φ(ΦHΦ+σ2Γ−1)−1ΦH]t
因此全概率公式积分后得
p ( t ; γ ) = C e x p { − 1 2 σ 2 t H [ I − Φ ( Φ H Φ + σ 2 Γ − 1 ) − 1 Φ H ] t } p(\bm{t};\bm{\gamma})=Cexp\{-\frac{1}{2\sigma^2}\bm{t}^H[\bm{I}-\bm{\Phi}(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})^{-1}\bm{\Phi}^H]\bm{t}\} p(t;γ)=Cexp{−2σ21tH[I−Φ(ΦHΦ+σ2Γ−1)−1ΦH]t}
现在可以看出 p ( t ; γ ) p(\bm{t};\bm{\gamma}) p(t;γ)是一个高斯分布,其均值为 0 0 0,协方差矩阵 Σ t \Sigma_t Σt满足 Σ t − 1 = 1 σ 2 [ I − Φ ( Φ H Φ + σ 2 Γ − 1 ) − 1 Φ H ] \Sigma_t^{-1}=\frac{1}{\sigma^2}[\bm{I}-\bm{\Phi}(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})^{-1}\bm{\Phi}^H] Σt−1=σ21[I−Φ(ΦHΦ+σ2Γ−1)−1ΦH]
Σ t \Sigma_t Σt可由矩阵求逆公式得到,如下:
Σ t = σ 2 I + Φ Γ Φ H \Sigma_t=\sigma^2 \bm{I}+\bm{\Phi\Gamma\Phi}^H Σt=σ2I+ΦΓΦH
到此,我们完成了证据或者叫第二类似然函数的概率分布的推导。
( A + U B V ) − 1 = A − 1 − A − 1 U B ( I + V A − 1 U B ) − 1 V A − 1 (A+UBV)^{-1}=A^{-1}-A^{-1}UB(I+VA^{-1}UB)^{-1}VA^{-1} (A+UBV)−1=A−1−A−1UB(I+VA−1UB)−1VA−1
下面继续完成后验概率的推导,根据贝叶斯公式,有
p ( ω ∣ t ; γ ) = p ( t ∣ ω ) p ( ω ; γ ) p ( t ; γ ) ( 7 ) p(\bm{\omega}|\bm{t};\bm{\gamma})=\frac{p(\bm{t}|\bm{\omega})p(\bm{\omega};\bm{\gamma})}{p(\bm{t};\bm{\gamma})} \qquad(7) p(ω∣t;γ)=p(t;γ)p(t∣ω)p(ω;γ)(7)
其实利用前面的结果,该式大部分都求得差不多了。证据(分母部分)已求得。分子部分是两个高斯概率密度函数的乘积,其结果仍为高斯分布。再与分母部分相除,最终还是为高斯分布。将前面求得的结果分别代入到(7), 忽略常数部分,得
p ( ω ∣ t ; γ ) = e x p { − 1 2 σ 2 [ ω H ( Φ H Φ + σ 2 Γ − 1 ) ω − t H Φ ω − ω H Φ H t + t H t ] + 1 2 t H Σ − 1 t } p(\bm{\omega}|\bm{t};\bm{\gamma})=exp\{-\frac{1}{2\sigma^2}[\bm{\omega}^H(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})\bm{\omega}-\bm{t}^H\bm{\Phi}\bm{\omega}-\bm{\omega}^H\bm{\Phi}^H\bm{t}+\bm{t}^H\bm{t}]+\frac{1}{2}\bm{t}^H\bm{\Sigma}^{-1}\bm{t}\} p(ω∣t;γ)=exp{−2σ21[ωH(ΦHΦ+σ2Γ−1)ω−tHΦω−ωHΦHt+tHt]+21tHΣ−1t}
其均值为指数部分对 ω \bm{\omega} ω的一阶导数零点,协方差矩阵的逆为指数部分对 ω \bm{\omega} ω的二阶导数。
故
Σ ω − 1 = 1 σ 2 Φ H Φ + Γ − 1 \Sigma_{\omega}^{-1}=\frac{1}{\sigma^2}\bm{\Phi}^H\bm{\Phi}+\bm{\Gamma}^{-1} Σω−1=σ21ΦHΦ+Γ−1
μ ω = ( Φ H Φ + σ 2 Γ − 1 ) − 1 Φ H t \bm{\mu_{\omega}}=(\bm{\Phi}^H\bm{\Phi}+\sigma^2\bm{\Gamma}^{-1})^{-1}\bm{\Phi}^H\bm{t} μω=(ΦHΦ+σ2Γ−1)−1ΦHt
一般来说, M M M远远大于 N N N,所以求 Σ ω \bm{\Sigma_{\omega}} Σω的逆的复杂度远远高于 Σ t \bm{\Sigma_t} Σt的逆的复杂度,所以运用矩阵和求逆公式将 Σ ω − 1 \bm{\Sigma_{\omega}^{-1}} Σω−1转化为求 Σ t − 1 \bm{\Sigma_t^{-1}} Σt−1.结果如下:
Σ ω = Γ − Γ Φ H Σ t − 1 Φ Γ \Sigma_{\omega}=\bm{\Gamma}-\bm{\Gamma\Phi}^H\bm{\Sigma}_t^{-1}\bm{\Phi\Gamma} Σω=Γ−ΓΦHΣt−1ΦΓ
μ ω = Γ Φ H Σ t − 1 t \bm{\mu_{\omega}}=\bm{\Gamma\Phi}^H\bm{\Sigma}_t^{-1}\bm{t} μω=ΓΦHΣt−1t
其中均值变换参考【Sparse Signal Recovery With Temporally Correlated Source Vectors Using Sparse Bayesian Learning(2011 Zhilin Zhang)】文中公式6
EM算法更新参数
至此,关于稀疏贝叶斯算法中的证据和后验概率的推导解释完毕,对于多测量模式下(Multiple Mearsure Vector)的推导可以直接拓展过来。