欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

java 稀疏贝叶斯算法_稀疏贝叶斯学习(SBL)算法过程推导

发布时间:2024/1/23 编程问答 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 java 稀疏贝叶斯算法_稀疏贝叶斯学习(SBL)算法过程推导 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

【直接复制word中的公式格式会出问题,为了方便,公式部分就以截图形式呈现】

首先推导贝叶斯公式:

考虑事件A和事件B:

由以上两式,即得贝叶斯公式:

求解的问题模型为:

由贝叶斯公式可得:

要估计ω可由arg

p(ω|t)求得

假定ϵ符合均值为0,方差为

的高斯分布,则可得出t符合均值为Φω,方差为

的高斯分布,即

假定ω由超参数γ产生,并符合均值为0,方差为

的高斯分布,即

由全概率公式可得:

积分部分相当于两个高斯函数的卷积,仍为高斯函数。将指数部分看作一个整体,令:

L是关于ω的二次项。对于高斯函数有以下性质:

式中A是矩阵,b是向量,C是常数。可将L表达成

的样式,f中不含变量ω 。我们可以将满足Aω+b=0的ω代入其中,即得到f。为求ω,可通过对L求导,求其一阶零点得:

将ω 代入L中,得到,

因此对全概率公式进行积分后得

由此可以看出p(t;γ) 是一个高斯分布,其均值为0,协方差矩阵Σt 满足:

可通过下面矩阵求逆公式得到:

求得:

后验概率推导:

根据贝叶斯公式,有

利用前面的结果,分母部分已求得。分子部分是两个高斯概率密度函数的乘积,其结果仍为高斯分布,再与分母部分相除,最终还是为高斯分布。将前面求得的结果分别代入, 忽略常数部分,可得:

其均值为指数部分对ω的一阶导数零点,协方差矩阵的逆为指数部分对ω的二阶导数。可令:

对ω 求导,得

对ω 求二阶导,得:

 得,

M>>N,Σω M阶,Σt N阶,Σω 的逆的复杂度远远高于Σt 的逆的复杂度,可运用矩阵和求逆公式将

转化为求

,结果如下:

最后通过EM算法更新超参数:

完毕

总结

以上是生活随笔为你收集整理的java 稀疏贝叶斯算法_稀疏贝叶斯学习(SBL)算法过程推导的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。