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

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 本场景介绍如何使用ALS算法实现用户音乐打分预测。

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


1. 开通机器学习PAI服务

说明:本场景使用的机器学习PAI服务依赖于MaxCompute大数据计算服务,在运行实验时将会消耗大约2.5元的计算费用,请确保您的账户余额充足。

1.  使用您的阿里云账号登录阿里云官网

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

3.  在机器学习PAI控制台首页,单击立即开通

4.  在服务开通页面,选择要开通的机器学习PAI服务所在的区域,例如华东2(上海),然后单击页面下方的立即购买

5.  在订单确认页面,仔细阅读《机器学习(PAI)服务协议》后,勾选我已阅读并同意,最后单击立即开通

6.  开通成功后,单击前往PAI管理控制台

2. 创建PAI Studio项目

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

2.  在PAI Studio页面单击创建项目

3.  在右侧弹出的创建项目页面,MaxCompute选择按量付费,填入项目名称,然后单击确定。

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

   a.  单击购买

   b.  选择步骤一开通的机器学习PAI服务所在区域,例如华东2(上海),然后单击立即购买

   c.  仔细阅读《大数据计算服务MaxCompute(按量计算)服务协议》后,勾选我已阅读并同意,最后单击立即开通

   d.  开通成功后返回PAI Studio控制台页面,再次单击创建项目,在创建项目页面选择MaxCompute付费方式为按量付费,然后填入项目名称,最后单击确认

4.  项目创建需要1分钟左右进行初始化,等待项目操作列出现进入机器学习,表示项目创建完成。

3. 创建实验

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

2.  在模板列表找到ALS实现音乐推荐,然后单击从模板创建

3.  在弹出的新建实验框,单击确定

4. 查看实验模板

在该模板中已经默认配置了实验的数据源和ALS矩阵分解组件的参数。

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

显示的数据如下。

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

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

2.  单击ALS矩阵分解-1节点,右侧显示如下,可以看到字段设置已设置为与数据源中的字段一致。

3.  单击右侧的参数设置,可以看到模板中默认的算法参数。

5. 运行实验

1.  单击左上角运行。

2.  请耐心等待3~5分钟,实验运行完成如下所示。

6. 查看实验结果

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

1.  实验运行完成后,右键单击画布中的ALS矩阵分解-1,在快捷菜单,选择查看数据 > 查看输出桩1,即可查看矩阵X。

2.  右键单击画布中的ALS矩阵分解-1,在快捷菜单,选择查看数据 > 查看输出桩2,即可查看矩阵Y。

7. 预测评分

例如要预测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。

实验链接:https://developer.aliyun.com/adc/scenario/c62ae139fc4c40e4aceaef0e8cca8eed

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
1月前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
|
1月前
|
机器学习/深度学习 存储 缓存
数据结构从入门到精通——算法的时间复杂度和空间复杂度
算法的时间复杂度和空间复杂度是评估算法性能的两个重要指标。时间复杂度主要关注算法执行过程中所需的时间随输入规模的变化情况,而空间复杂度则关注算法执行过程中所需的最大存储空间或内存空间。
71 0
|
1月前
|
搜索推荐 算法 C语言
C语言选择排序算法,从入门到精通只需1秒!
C语言选择排序算法,从入门到精通只需1秒!
|
1月前
|
算法 前端开发
|
1天前
|
算法 索引
数据结构与算法-最小生成树入门
数据结构与算法-最小生成树入门
6 0
|
1天前
|
算法
数据结构与算法-AVL树入门
数据结构与算法-AVL树入门
5 0
|
1天前
|
算法 索引
数据结构与算法-三种队列基础入门
数据结构与算法-三种队列基础入门
5 0
|
28天前
|
存储 算法 JavaScript
Java入门高频考查算法逻辑基础知识3-编程篇(超详细18题1.8万字参考编程实现)
解决这类问题时,建议采取下面的步骤: 理解数学原理:确保你懂得基本的数学公式和法则,这对于制定解决方案至关重要。 优化算法:了解时间复杂度和空间复杂度,并寻找优化的机会。特别注意避免不必要的重复计算。 代码实践:多编写实践代码,并确保你的代码是高效、清晰且稳健的。 错误检查和测试:要为你的代码编写测试案例,测试标准的、边缘情况以及异常输入。 进行复杂问题简化:面对复杂的问题时,先尝试简化问题,然后逐步分析和解决。 沟通和解释:在编写代码的时候清晰地沟通你的思路,不仅要写出正确的代码,还要能向面试官解释你的
33 0
|
1月前
|
存储 算法 JavaScript
【C++ 泛型编程 入门篇】 C++ 中的泛型算法 STL(sort,find)(二)
【C++ 泛型编程 入门篇】 C++ 中的泛型算法 STL(sort,find)
28 0
|
1月前
|
算法 搜索推荐 程序员
【C++ 泛型编程 入门篇】 C++ 中的泛型算法 STL(sort,find)(一)
【C++ 泛型编程 入门篇】 C++ 中的泛型算法 STL(sort,find)
35 0

热门文章

最新文章