1. 程式人生 > >基於概率的矩陣分解原理詳解(PMF)

基於概率的矩陣分解原理詳解(PMF)

上一篇部落格講到了推薦系統中常用的矩陣分解方法,RegularizedMF是對BasicMF的優化,而PMF是在RegularizedMF的基礎上,引入概率模型進一步優化。假設使用者U和專案V的特徵矩陣均服從高斯分佈,通過評分矩陣已知值得到UV的特徵矩陣,然後用特徵矩陣去預測評分矩陣中的未知值。

若使用者U的特徵矩陣滿足均值為0,方差為σ的高斯分佈,則有如下等式。之所以連乘,是因為U的每個觀察值Ui都是獨立同分布的。
p(U|σ2U)=Ni=1N(Ui|0,σ2UI)

同理:專案V的特徵矩陣滿足如下等式:
p(V|σ2V)=Ni=1N(Vi|0,σ2VI)

其中N(x|u,σ2)

表示變數x滿足均值為u,方差為σ2的高斯分佈。

假設真實值R和預測值R之差也符合高斯分佈,那麼有如下概率分佈表示,P(RijUTiVj|0,δ2)通過平移有P(Rij|UTiVj,δ2)那麼:

那麼評分矩陣R的條件概率如下:

P(R|U,V,σ2)=Ni=1Mj=1[N(Rij|UTiVj,σ2)]Iij

這裡UV是引數,其餘看作超引數(即作為UV的引數-引數的引數,PMF中通過人工調整超引數,後面要寫的BPMF是通過MCMC方法自動選出最優超引數的)。假設UV互相獨立,可以通過貝葉斯公式得到RUV的聯合分佈:

P(U,V|R,σ2,σ2U,σ2V)=P(R|U

,V,σ2)P(U|σ2U)P(V|σ2V) =Ni=1Mj=1[N(Rij|UTiVj,σ2)]IijNi=