445
阿里云
步骤五:启用推荐业务__快速入门_推荐引擎-阿里云
推荐引擎工作的模式为:每一个调度周期内(通常为日,我们Case中为日,即每日更新一次推荐数据),使用推荐算法离线在MaxCompute中计算一次,得到的数据用来支持当前周期内的推荐,然后可以通过调用API的方式得到推荐结果。
操作步骤如下:
- 启动离线计算
- 查看离线处理结果
- 使用API实现首页推荐
- 使用API实现详情页推荐
1. 启动离线计算
以“首页推荐”的场景为例,点击“启动离线计算”:
在弹出窗口中,可以看到“数据预处理状态”为未完成,即需要先对数据进行预处理,点击“请执行数据预处理”:
在“启动数据预处理”窗口中,选择数据时间为2016年4月1日,因为本Case中,假定数据的日期为2016年4月1日(ds=’20160401’)。此处时间仅为示例,您也可以根据自己的需要更改为其他时间。
点击“启动预处理”:
数据预处理需要运行几分钟的时间,期间我们看查看它的运行状态。有两种方法查看,第一种,在“我的推荐”页中,点击“查看数据预处理日志”:
选中想要查看的作业类型、开始时间、结束时间以及推荐业务,点击“按业务查询”:
第二种,在“我的推荐”中点击“启动离线计算”:
点击“请执行数据预处理”:
选择需要查看状态的数据日期:
选中2016-04-01,看到状态为处理中:
处理成功后为:
数据预处理完成后,返回“我的推荐”页面,点击“首页推荐”后的“启动离线计算”:
在弹出页面中,设置“数据截止日期”为2016-04-01,点击“启动任务”,启动推荐算法对应的离线计算任务:
任务的状态为运行中:
该任务运行时间较长,从几分钟到几十分钟不等,视数据量大小而定,本Case大概需要运行15~20分钟。运行成功后,可以从“我的推荐”页看到执行信息:
同样的方式启动“详情页推荐推荐”的离线任务,点击“启动离线计算”:
弹出窗口中,将日期调整为2016-04-01,可以看到数据预处理状态为已完成,直接点击启动任务,启动详情页推荐的离线计算任务:
在日志列表页中,查看作业执行详情:
成功后,在“我的推荐”页,可以看到最终执行状态:
2. 查看离线处理结果
本章节为附加阅读内容,跳过不会影响本实验。
离线处理的推荐结果,会保存在在线存储中。如果您使用的自己购买的“表格存储”云产品,则可以在表格存储中看到离线产出的结果数据。登录阿里云官网(www.aliyun.com),点击“管理控制台”,进入管理控制台首页,点击“表格存储”:
可以看到我们之前创建的实例,点击进入:
可以看到有四张新创建的表:
离线计算的结果就保存在这四张表中,后续的调用都会访问这些表,得到推荐列表。如果在线调用的并发量比较大,可以调整表的读写吞吐量:
在弹出的修改界面中,调整读写吞吐量:
3. 使用API实现首页推荐
现在我们可以通过API调用来访问离线计算的结果,得到针对用户的个性化推荐的电影列表。
如果一个标识为19(movielens_user_meta:user_id=19)的40岁的男性用户(movielens_user_meta:user_id=19)正停留在首页,该用户的历史评分记录如下(movilens_user_behavior:user_id=19, movielens_item_meta):
用户 | 电影 | 评分 |
---|---|---|
19 | Fish Called Wanda,A(1988) | 4.0 |
19 | Evil DeadII(1987) | 3.0 |
19 | Indiana Jones and the Last Crusade(1989) | 3.0 |
19 | Contact(1997) | 4.0 |
19 | Scream(1996) | 3.0 |
19 | Liar Liar(1997) | 3.0 |
19 | Butch Cassidy and the Sundance Kid(1969) | 5.0 |
19 | Groundhog Day(1993) | 4.0 |
19 | MASH(1970) | 4.0 |
19 | Chasing Amy(1997) | 2.0 |
19 | Rainmaker,The(1997) | 4.0 |
19 | Titanic(1997) | 2.0 |
19 | Everyone Says I Love You(1996) | 4.0 |
19 | Crash(1996) | 4.0 |
19 | Adventures of Priscilla,Queen of the Desert,The(1994) | 3.0 |
19 | Get Shorty(1995) | 4.0 |
19 | Stand by Me(1986) | 3.0 |
19 | American President,The(1995) | 3.0 |
19 | Babe(1995) | 5.0 |
19 | Eve’s Bayou(1997) | 4.0 |
我们可以对该用户显示哪些推荐电影?
实际上是通过API接口查看“首页推荐”的结果,在“我的推荐”页面里,点击“首页推荐”的“API调试”:
输入请求参数,点击调试接口,得到推荐结果:
关联物品信息表,得到影片信息:
用户 | 电影 | 推荐得分 |
---|---|---|
19 | Don Juan DeMarco (1995) | 1.0 |
19 | Red Firecracker, Green Firecracker (1994) | 0.99 |
19 | A Chef in Love (1996) | 0.98 |
19 | Here Comes Cookie (1935) | 0.97 |
19 | Entertaining Angels: The Dorothy Day Story (1996) | 0.96 |
19 | Beautiful Thing (1996) | 0.95 |
即我们可以将上述电影的相关信息显示在首页,根据该用户的历史行为,有理由判断他对这些电影更感兴趣。
对于不同的用户,推荐引擎计算出的可推荐电影列表不同;对于不同的用户,登录首页后看到的推荐电影不同。这就是我们通常说的“千人千面”,即个性化推荐。
您可以在您的网站或者APP中调用此API接口,正确传入参数后,即可得到推荐结果。
4. 使用API实现详情页推荐
如果一个标识为19(movielens_user_meta:user_id=19)的40岁的男性用户,该用户的历史评分记录如下(movilens_user_behavior:user_id=19, movielens_item_meta):
用户 | 电影 | 评分 |
---|---|---|
19 | Fish Called Wanda,A(1988) | 4.0 |
19 | Evil DeadII(1987) | 3.0 |
19 | Indiana Jones and the Last Crusade(1989) | 3.0 |
19 | Contact(1997) | 4.0 |
19 | Scream(1996) | 3.0 |
19 | Liar Liar(1997) | 3.0 |
19 | Butch Cassidy and the Sundance Kid(1969) | 5.0 |
19 | Groundhog Day(1993) | 4.0 |
19 | MASH(1970) | 4.0 |
19 | Chasing Amy(1997) | 2.0 |
19 | Rainmaker,The(1997) | 4.0 |
19 | Titanic(1997) | 2.0 |
19 | Everyone Says I Love You(1996) | 4.0 |
19 | Crash(1996) | 4.0 |
19 | Adventures of Priscilla,Queen of the Desert,The(1994) | 3.0 |
19 | Get Shorty(1995) | 4.0 |
19 | Stand by Me(1986) | 3.0 |
19 | American President,The(1995) | 3.0 |
19 | Babe(1995) | 5.0 |
19 | Eve’s Bayou(1997) | 4.0 |
且该用户目前停留在电影《黄金眼》(GoldenEye (1995))的页面,则需要对该用户推荐哪些电影?
实际上是通过API接口查看“首页推荐”的结果,在“我的推荐”页面里,点击“详情页推荐”的“API调试”:
填写API参数,点击调试接口,得到答案:
适合推荐给他的电影依次为:
用户 | 电影 | 推荐得分 |
---|---|---|
19 | It’s a Wonderful Life (1946) | 1.84 |
19 | Three Colors: Red (1994) | 1.78 |
19 | Shawshank Redemption, The (1994) | 1.76 |
19 | Star Kid (1997) | 1.56 |
19 | Enchanted April (1991) | 1.5 |
19 | They Made Me a Criminal (1939) | 1.38 |
对于相同的用户,如果他当前停留的电影详情页的位置不同,我们提供的推荐电影也不同。即我们不但可以做到通常意义上的“千人千面”,也会结合用户当前的具体信息进行更有针对性的推荐。
您可以在您的网站或者APP中调用此API接口,正确传入参数后,即可得到推荐结果。
最后更新:2016-11-29 14:20:37
上一篇:
步骤四:配置推荐引擎__快速入门_推荐引擎-阿里云
下一篇:
数据上传到MaxCompute(原ODPS)__用户指南_推荐引擎-阿里云
DescribeRegions__LoadBalancer相关API_API 参考_负载均衡-阿里云
云服务器 ECS 故障处理 CPU跑满
查询签名密钥列表__后端签名密钥相关接口_API_API 网关-阿里云
购买实例__购买指导_移动安全-阿里云
到期__常见问题_云解析-阿里云
迁移 RDS for PPAS 数据到本地 Oracle__数据迁移_用户指南_云数据库 RDS 版-阿里云
RAM__操作事件(Event)样例_用户指南_操作审计-阿里云
查询区域运营商资源信息__资源监控接口_API 手册_CDN-阿里云
SetLoadBalancerUDPListenerAttribute__Listener相关API_API 参考_负载均衡-阿里云
SDK下载__设备端接入手册_阿里云物联网套件-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云