基於概率的矩陣分解原理詳解(PMF)
上一篇部落格講到了推薦系統中常用的矩陣分解方法,
若使用者
同理:專案V的特徵矩陣滿足如下等式:
其中
假設真實值
那麼評分矩陣
這裡
為什麼要轉換為這種形式呢?這還要從極大似然估計(
最大似然估計:假設觀察資料滿足
服從引數為
仔細想想,當前樣本資料已知,未知引數只有
求極大似然估計(MLE)的一般步驟是:
由總體分佈匯出樣本的聯合概率函式 (或聯合密度);
把樣本聯合概率函式(或聯合密度)中自變數看成已知常數,而把引數 看作自變數,得到似然函式L(
θ - 求似然函式L(
θ θ) 的最大值點(常常轉化為求ln L(θ θ)的最大值點) ,即θ θ的MLE; - 在最大值點的表示式中, 用樣本值代入就得引數的極大似然估計值 .
似然函式:
通常取對數(對數似然),以便將乘化為加:
這樣,待估計引數就可以表示為如下形式:
同理若待估計引數有兩個,比如樣本服從高斯分佈,如下式,可以通過求偏導數得到估計值。
這樣,PMF為何要轉換為
最大後驗概率:
最大後驗估計,融入了要估計量的先驗分佈在其中,也就是說待估計量θ本身也滿足某概率分佈g(θ)(已知), 稱為先驗分佈。這樣根據貝葉斯理論,似然函式有如下表示:(這裡f(θ|x)等價l(θ|x)是似然函式,表示已知樣本資料x集合,來評估θ的值(條件概率),但後面的等式就只關乎密度函式f了)。
貝葉斯公式大家都懂,這裡我就說說分母為啥寫成這個形式。此f是關於和θ和x的聯合分佈密度,不是我麼理解的事件ABC,同時發生等。正常來說分母應該是f(x),表示只考慮x這一影響因素,要消除θ的影響,那麼我麼是通過對θ積分來消除θ,分母的結果最終是等於f(x)的,分子是等於f(θ,x)的。最終,待估參數列達為:
分母的積分結果得到關於f(x)的密度函式,已知的對不。這樣,最大後驗概率的待估引數就是在最大似然估計的結果後面多乘了個待估引數的先驗分佈。寫到這,大家就該懂了為啥等式右邊是那種形式了,在最大似然估計的基礎上要新增
將
最大化後驗概率U和V(最大可能性),等價於求下式的最小值:
其中:
解傳統矩陣分解可以採用各種優化方法,對於概率分解,由於最後求的是引數U和V的最大似然估計,因此可以用最大期望法(EM)和馬爾可夫鏈蒙特卡羅演算法(MCMC)。這裡就不多說了。
PMF也有改進的地方,它沒有考慮到評分過程中使用者的個人資訊,比如有的使用者就是喜歡打低分,有的專案(電影)質量就是不高,分肯定高不了等,這樣可以採用加入偏置的概率矩陣分解(貝葉斯概率矩陣分解BPMF),將在後面的部落格中寫出,會給出連結。
補充:聯合分佈f(x,y),其中x和y無必然聯絡,x可以理解為老師課講得好,y理解為課開在週六,那麼f表示這節課選課的人數的概率密度,聯合分佈的概率跟f(x)一樣,也是通過積分來求,f(x)求面積,而f(x,y)是求體積。
最大似然估計和最大後驗概率是參考了這兩篇篇部落格:
http://blog.csdn.net/upon_the_yun/article/details/8915283
http://wiki.mbalib.com/wiki/%E6%9C%80%E5%A4%A7%E4%BC%BC%E7%84%B6%E4%BC%B0%E8%AE%A1
相關文章
- 推薦系統-矩陣分解原理詳解矩陣
- 矩陣分解--超詳細解讀矩陣
- 矩陣分解矩陣
- 基於矩陣分解的協同過濾演算法矩陣演算法
- 矩陣分解(MF)方法及程式碼矩陣
- POJ 3744 概率dp+矩陣矩陣
- 基於勝率矩陣的PageRank排序矩陣排序
- SVD矩陣分解考慮時間因素矩陣
- 矩陣的奇異值分解(SVD)及其應用矩陣
- python輸入詳解(陣列、矩陣)Python陣列矩陣
- ML.NET 示例:推薦之矩陣分解矩陣
- 文字主題模型之非負矩陣分解(NMF)模型矩陣
- 手把手教你將矩陣&概率畫成圖矩陣
- 強大的矩陣奇異值分解(SVD)及其應用矩陣
- 矩陣鍵盤原理剖析矩陣
- 基於51微控制器的矩陣按鍵矩陣
- 第?課——基於矩陣快速冪的遞推解法矩陣
- 用Spark學習矩陣分解推薦演算法Spark矩陣演算法
- ML.NET 示例:推薦之One Class 矩陣分解矩陣
- 基於機率判斷矩陣A*B是否等於C矩陣
- 人工智慧-機器學習-演算法:非負矩陣分解(NMF)人工智慧機器學習演算法矩陣
- NMF 非負矩陣分解(Non-negative Matrix Factorization)實踐矩陣
- POJ3744 Scout YYF I (概率DP + 矩陣優化)矩陣優化
- 轉移概率矩陣------3Q大戰背後的數學矩陣
- 巨大的矩陣(矩陣加速)矩陣
- 概率論12 矩與矩生成函式函式
- 【scipy 基礎】--稀疏矩陣矩陣
- 基向量 變換矩陣矩陣
- 推薦系統實踐 0x0b 矩陣分解矩陣
- 詳細講解矩陣求逆的快速演算法(轉)矩陣演算法
- 資料結構:陣列,稀疏矩陣,矩陣的壓縮。應用:矩陣的轉置,矩陣相乘資料結構陣列矩陣
- 【矩陣求導】關於點乘 (哈達瑪積)的矩陣求導矩陣求導點乘
- 3D圖形:矩陣的行列式,矩陣的逆、正交矩陣、齊次矩陣3D矩陣
- 矩陣分解在協同過濾推薦演算法中的應用矩陣演算法
- 矩陣中最大的二維矩陣矩陣
- 求任意矩陣的伴隨矩陣矩陣
- TRIZ培訓小解 | 基於衝突矩陣的專利挖掘流程矩陣
- “機會潛在利潤一企業成功概率”矩陣(轉載)矩陣