实验简介

实验后您将收获到

  • 如何使用ALS算法实现用户音乐打分预测

相关产品

本场景将基于机器学习PAI平台,指导您如何使用ALS算法实现用户音乐打分预测。

背景知识

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

从协同过滤的分类来说,ALS算法属于User-Item CF,也叫做混合CF,它同时考虑了User和Item两个方面。

在本次用户音乐打分场景中,首先拿到的原始数据是每个听众对每首歌的评分矩阵A,这个评分可能是非常稀疏的,因为不是每个用户都听过所有的歌,也不是每个用户都会对每首歌评分。

ALS矩阵分解会把矩阵A分解成两个矩阵的相乘,分别是X矩阵和Y矩阵。

矩阵A=矩阵X和矩阵Y的转秩的乘积

x的列表示和Y的横表示可以称之为ALS中的因子,这个因子是有隐含定义的,这里假设有3个因子,分别是性格、教育程度、爱好。A矩阵经过ALS分解出的X、Y矩阵可以分别表示成如下所示。

X矩阵:

Y矩阵:

数据经过这样的拆解就很容易做用户对音乐的评分预测。比如有听众6,他从没听过“红豆“这首歌,但是我们可以拿到听众6在矩阵分解中X矩阵的向量M,这时候只有把向量M和”红豆“在Y矩阵中的对应向量N相乘,就能预测出听众6对于”红豆“这首歌的评分。