赞
踩
ALS(Alternating Least Squares)算法是基于矩阵分解的协同过滤算法中的一种,它已经集成到Spark的Mllib库中,使用起来比较方便。
这里的矩阵分解可以理解为,将一个m×n的矩阵A分解为一个m×k的矩阵U和n×k的矩阵V的转置的乘积的近似值,即
在开始的时候,随机初始化一个ui的值,因此上式就变成了一个关于vj的函数,问题转化为最小二乘问题,用最小二乘法求vj的最优解:
其迭代步骤是:首先随机初始化ui,利用上述方法更新得到vj,然后利用ui的表达式更新ui,直到RMSE(均方根误差)变化很小或者到达最大迭代次数为止。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。