ALS交替最小二乘算法
??ALS指使用交替最小二乘法求解的協(xié)同過濾算法是牢。通過觀察到的所有用戶給產(chǎn)品打分遗座,來推斷每個(gè)用戶的喜好并向用戶推薦合適的產(chǎn)品。
??具體推薦是 通過用戶評分矩陣來實(shí)現(xiàn)的,用戶評分矩陣每一行代表一個(gè)用戶建车,每一列代表一個(gè)產(chǎn)品,每一個(gè)元素代表一個(gè)用戶對某一種產(chǎn)品的打分椒惨。用戶評分矩陣通過用戶特征矩陣和物品特征矩陣得到A=U * V缤至。通過U和V來近似A。這樣算法的自由度就從O(mn)變?yōu)榱薕((m+n)*k)康谆。
??算法的目標(biāo)使得U*A盡可能近似A领斥。則算法的優(yōu)化目標(biāo)就是
其中,F(xiàn) 代表Frobenius范數(shù)沃暗。
??最小化每一個(gè)元素和 重構(gòu)之間的誤差平方和月洛。該優(yōu)化問題就是采用ALS來實(shí)現(xiàn)。
??ALS的目標(biāo)函數(shù)不是凸的孽锥,而且變量相互耦合嚼黔。如果固定用戶特征矩陣U或者產(chǎn)品特征矩陣V就可以使問題變得簡單。原問題就轉(zhuǎn)換為凸函數(shù)且可拆分惜辑。就可以使用最小二乘法求解唬涧。
這里的交替最小二乘法就是先隨機(jī)生成U,然后固定U去求解V;在固定V去求解U盛撑,這樣一直交替下去碎节,直到收斂。但由于問題本質(zhì)上是非凸的抵卫,因此ALS不保證最終可以得到全局最優(yōu)解狮荔。在實(shí)際使用中,ALS對初始點(diǎn)不是很敏感介粘,是不是全局最優(yōu)解影響不大殖氏。
最小二乘法的本質(zhì):https://www.zhihu.com/question/37031188/answer/411760828
引用:http://www.reibang.com/p/a8d095a9eb42
https://blog.csdn.net/l_15156024189/article/details/81712519