关于算法:推荐系统入门之使用ALS算法实现打分预测

28次阅读

共计 2125 个字符,预计需要花费 6 分钟才能阅读完成。

简介

场景将基于机器学习 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 对于”红豆“这首歌的评分。

开明机器学习 PAI 服务

阐明:本场景应用的机器学习 PAI 服务依赖于 MaxCompute 大数据计算服务,在运行试验时将会耗费大概 2.5 元的计算费用,请确保您的账户余额短缺。

1. 应用阿里云账号登录阿里云官网。

  1. 在顶部的导航栏,顺次将鼠标悬停到产品 > 人工智能处,而后单击机器学习平台 PAI。

  1. 在机器学习 PAI 控制台首页,单击立刻开明。

  1. 在服务开明页面,抉择要开明的机器学习 PAI 服务所在的区域,例如华东 2(上海),而后单击页面下方的立刻购买。

  1. 在订单确认页面,仔细阅读《机器学习 (PAI) 服务协定》后,勾选我已浏览并批准,最初单击立刻开明。

  1. 开明胜利后,单击返回 PAI 治理控制台。

创立 PAI Studio 我的项目

1. 在控制台左侧导航栏,单击可视化建模(Studio)。

  1. 在 PAI Studio 页面单击创立我的项目。

  1. 在右侧弹出的创立我的项目页面,MaxCompute 抉择按量付费,填入项目名称,而后单击确定。

PAI Studio 底层计算依赖 MaxCompute,如果您未开通过以后区域的 MaxCompute,请依照页面提醒去购买。

a.  单击购买。

b.  抉择步骤一开明的机器学习 PAI 服务所在区域,例如华东 2(上海),而后单击立刻购买。

c.  仔细阅读《大数据计算服务 MaxCompute(按量计算)服务协定》后,勾选我已浏览并批准,最初单击立刻开明。

d.  开明胜利后返回 PAI Studio 控制台页面,再次单击创立我的项目,在创立我的项目页面抉择 MaxCompute 付费形式为按量付费,而后填入项目名称,最初单击确认。

  1. 我的项目创立须要 1 分钟左右进行初始化,期待我的项目操作列呈现进入机器学习,示意我的项目创立实现。

创立试验

1. 单击左侧导航栏的首页。

  1. 在模板列表找到 ALS 实现音乐举荐,而后单击从模板创立。

  1. 在弹出的新建试验框,单击确定。

查看试验模板

在该模板中曾经默认配置了试验的数据源和 ALS 矩阵合成组件的参数。

1. 右键单击数据源节点,而后单击查看数据。

显示的数据如下。

该数据源蕴含 4 个字段,其中:

user:用户 ID。
item:音乐 ID。
score:user 对 item 的评分。

  1. 单击 ALS 矩阵合成 - 1 节点,右侧显示如下,能够看到字段设置已设置为与数据源中的字段统一。

  1. 单击右侧的参数设置,能够看到模板中默认的算法参数。

运行试验

1 单击左上角运行。

  1. 请急躁期待 3~5 分钟,试验运行实现如下所示。

查看试验后果

本试验中会输入 2 张表,对应 ALS 算法中的 X 矩阵和 Y 矩阵。

1. 试验运行实现后,右键单击画布中的 ALS 矩阵合成 -1,在快捷菜单,抉择查看数据 > 查看输入桩 1,即可查看矩阵 X。
2. 右键单击画布中的 ALS 矩阵合成 -1,在快捷菜单,抉择查看数据 > 查看输入桩 2,即可查看矩阵 Y。

预测评分
例如要预测 user1 对音乐 978130429 的评分,只有将下方两个向量相乘即可。

user1:[-0.14220297,0.8327106,0.5352268,0.6336995,1.2326205,0.7112976,0.9794858,0.8489773,0.330319,0.7426911]
item978130429:[0.2431642860174179,0.6019538044929504,0.4035401940345764,0.254305899143219,0.4056856632232666,0.46871861815452576,0.3701469600200653,0.3757922947406769,0.26486095786094666,0.37488409876823425]
经计算,两个向量相乘的后果为 2.7247730805432644,能够预测 user1 对音乐 978130429 的评分为 2.7247730805432644。

正文完
 0