ALS算法的基本思想

SparkALS算法基本思想

ALS算法是基于模型的推荐算法。起基本思想是对稀疏矩阵进行模型分解,评估出缺失项的值,以此来得到一个基本的训练模型。然后依照此模型可以针对新的用户和物品数据进行评估。ALS是采用交替的最小二乘法来算出缺失项的。交替的最小二乘法是在最小二乘法的基础上发展而来的。由于本人数学有限,就大体的介绍下最小二乘法的思想

最小二乘法

以下是用户A、B、C对物品A、B、C的打分

用户\物品 物品A(id=1) 物品B(id=7)) 物品C(id=9)
用户A(id=4) 5 ? 4
用户B(id=2) ? ? 3
用户C(id=3) 1 3 5

上图的矩阵可以按照(用户id,物品id)=评分的方式,在一个X/Y轴的一个点,只不过这些点有的有具体的值,有的没有,那么我们可以根据已经有值的点计算出一个函数F,使得这个函数F的曲线近似的穿插这些点,并使这些点的真值(表中的评分)与函数F测算值的方差之和最小(可以认为方差之和为0)。这样就可以获得一个方差函数FF,针对方差函数FF求偏导,就可以计算出函数F。
描述的不太清楚,可以参见博客http://blog.csdn.net/yauphy1/article/details/43735763

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章