本文是翻譯下面論文的一部分,本人不擁有版權,僅供學習交流。
作者所用的split Bregman方法我沒找到源碼,作者給的過程也不太清楚,難以實現,本人水平有限。
隱語義模型矩陣分解方法
Latent factor model 將評分矩陣分解爲用戶偏好矩陣和商品的屬性特徵矩陣,如圖所示
求解方法如文章中所述,爲了避免過度平滑,採用L1正則化項作約束。代價函數爲
總體思路:隨機初始化一個V矩陣,對於給定的V,可以使上式最小化,求得U;對於U又可以得到新的V,直到收斂,U和V在循環中更新。
具體方法:
1.對於給定的V,優化問題則變成
2.引入變量dU, bU, dU = U, bU = dU − U
【我不明白的是8式第一項中怎麼出現了下標m,最後一項是什麼範數,默認2範數??】
3.將上述算法分成三步,即迭代式
其中第一個可以用梯度下降法來做,α是步長
第二個式子可以通過萎縮(shrinkage)來求解
【啥叫萎縮,爲何不引用參考資料,或者給出公式,這樣讓小白一頭霧水】
然後求得U。固定U,分裂Bregman迭代方法用於求解J(V),即6式,用θV, dV, bV.替換θU, dU, bU
注意:
正則化參數λ1 ,λ2增大,user和item的特徵矩陣,即U和V變得稀疏;
引入的θU , θV徵控制在求解過程中的噪聲比,可分別設置爲β·λ1 ,β·λ2,
作者發現λ1, λ2∈ [10e-3, 10e-2], β∈[1, 2]可以取得好效果
總的方法如下:
【我試試問通信作者要點代碼,或請求給點建議,拭目以待,敬候佳音】
另外有相關問題可以加入QQ羣討論,不設微信羣
QQ羣:868373192
語音圖像視頻深度-學習羣