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)算法过程推导的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java方法和变量修饰符有哪些_死磕Ja
- 下一篇: java xfire webservic