ALS算法 (面试准备)

Posted Earendil

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ALS算法 (面试准备)相关的知识,希望对你有一定的参考价值。

ALS算法描述:

1、ALS算法用来补全用户评分矩阵。由于用户评分矩阵比较稀疏,将用户评分矩阵进行分解,变成V和U的乘积。通过求得V和U两个小的矩阵来补全用户评分矩阵。

2、ALS算法使用交替最小二乘法来进行求解。

3、ALS分为显示反馈和隐式反馈两种。显示反馈是指用户有明确的评分。对于商品推荐来说,大部分是通过用户的行为,获取隐式反馈的评分。

隐式反馈评分矩阵需要进行处理,如果有用户评分则置为1,没有则赋值为0。但是对这个处理后的评分矩阵,再有一个置信度来评价这个评分。置信度等于1+a*用户真实评分

4、ALS的代价函数是估计值和现有的评分值误差的平方和,引入了L2正则

 

ALS算法参数:

参数:
rating:由用户-物品矩阵构成的训练集
rank:隐藏因子的个数
numIterations: 迭代次数
lambda:正则项的惩罚系数
alpha: 置信参数
 

ALS交替最小二乘法求解步骤:

最小二乘法是通过最小化误差的平方和来寻找和数据最匹配的函数。

使用交替最小二乘法来求解。步骤是先设置一个X规定,然后求解另一个矩阵Y。然后再固定一个矩阵Y,求解另一个矩阵X。这就是交替二乘法的步骤。

在矩阵求解的过程中,比如固定Y,求解X的话,目标评分矩阵A。X的每一行可以独立求解,X的第i行和Y的计算得到A的第i行。

这样的话,对于每一步来说,X或者Y的行或者列都是可以独立并行求解的。这样ALS就可以进行并行化计算了。

 

以上是关于ALS算法 (面试准备)的主要内容,如果未能解决你的问题,请参考以下文章

如何准备算法面试

如何准备数据分析师面试?

面试准备排序算法之堆

IT求职中,笔试面试的算法准备

如何准备算法岗位面试?你需要知道的都在这了

如何准备机器学习工程师的面试 ?