阿里推荐引擎使用

2020/03/03 13:55
阅读数 268

一、阿里推荐引擎概述

推荐引擎(RecommendationEngine,以下简称RecEng,特指阿里云推荐引擎)是在阿里云计算环境下建立的一套推荐服务框架,目标是让广大中小互联网企业能够在这套框架上快速的搭建满足自身业务需求的推荐服务。

推荐服务通常由三部分组成:日志采集,推荐计算和产品对接。推荐服务首先需要采集产品中记录的用户行为日志到离线存储,然后在离线环境下利用推荐算法进行用户和物品的匹配计算,找出每个用户可能感兴趣的物品集合后,将这些预先计算好的结果推送到在线存储上,最终产品在有用户访问时通过在线API向推荐服务发起请求,获得该用户可能感兴趣的物品,完成推荐业务。

二、计费

推荐引擎费用:

API调用次数加1(百万次/月)则每个月增加100元费用。

大数据计算服务MaxCompute费用:


详细说明:https://help.aliyun.com/document_detail/53056.html?spm=a2c4g.11186623.6.559.FuCZc8

三、使用步骤

3.1 创建MaxCompute项目

3.2 资源管理----添加云计算资源

详细可查看:https://help.aliyun.com/document_detail/61024.html?spm=a2c4g.11186623.6.561.XaLMDs

3.3 业务列表----新建业务

此处的大数据计算资源就选择3.2添加的计算资源。

注:调用API接口时的bizCode值即是新建业务时填写的“业务code”。

 

详细步骤可查看:https://help.aliyun.com/document_detail/54456.html?spm=a2c4g.11186623.6.552.OljTzp

 

        业务列表页面展示已经添加的业务的列表。业务是推荐引擎中的基本管理单元,业务包含基本属性、数据和场景三类信息。

        业务基本属性,包含业务code、业务名称、大数据计算资源和在线存储资源。业务code是业务的唯一标识,大数据计算资源是您在资源管理中配置的大数据计算服务MaxCompute资源,在线存储资源是系统内置的在线资源或您在资源管理中配置的表格存储TableStore资源。

        数据,定义了所能使用的数据范围。例如商品推荐业务的数据范围是用户数据、商品数据和行为数据等,视频推荐业务的数据范围是用户数据、视频数据和行为数据等。在推荐业务中,数据是至关重要的一环,数据的质量决定了推荐效果的上限。

        场景,是指在您的APP或网站中使用推荐功能的模块,这些模块直接触达您的用户提供推荐服务。例如在商品推荐业务中,商品详情页的下方要提供一个相关商品推荐模块,那么场景就可以描述为”详情页商品相关推荐“。场景主要负责算法的配置和API调用,测试环境下的场景用于开发测试,线上环境下的场景用于和您的业务系统对接。

 

3.4 配置业务数据

详细说明查看:https://help.aliyun.com/document_detail/61120.html?spm=a2c4g.11186623.6.553.YxNaH8

3.5 创建推荐场景

测试没问题可发布到线上:

线上的场景也可以下线进行测试。

测试场景详细说明:https://help.aliyun.com/document_detail/61028.html?spm=a2c4g.11186623.6.555.Du3bEL

线上场景详细说明:https://help.aliyun.com/document_detail/61029.html?spm=a2c4g.11186623.6.556.sV61BW

注:调用推荐API时,参数scnCode即为此处新建场景时的“场景Code”字段。

四、数据规范

4.1 数据格式规范

推荐引擎的基础数据模型如下:

该数据模型总共包括了7张表,这些表有以下特点:

1、在MaxCompute(原来ODPS)中需要自己手工创建这些表;

2、表名没有固定要求,可以按照自己的习惯命名;

3、每张表的表结构必须符合推荐引擎的要求,列名、字段类型和分区格式需要和规范中保持一致(参考下面的表结构说明);

4、每张表中填充的数据,必须符合推荐引擎的要求;

5、 每张表中是否都有记录取决于业务场景和业务数据现状,其中以下几张表中必须有数据:用户信息表、物品信息表、用户行为表;

6、对于业务数据中无法提供的字段可以填NULL;

7、每张表都必须是分区表,以’yyyyMMdd’格式的字符型字段ds作为分区字段;

8、除了行为表需要每日上传外,其他meta表如果不发生变化可以不导,推荐引擎会自动获取最近一个有数据的分区中的meta表数据进行算法计算。

9、如果未传可推荐物品表,则将物品表全量作为可推荐物品表,继承item_info 字段;

10、推荐引擎在对数据进行离线计算时,会产生数据结果数据和中间数据。其中中间数据的数据量大小取决于所使用的离线流程中的算法复杂度。例如一个标准的协同过滤算法其中间表数据量可能是原始数据输入表数据量的5到10倍。推荐引擎默认对中间数据保留一天。

数据规范详细说明:https://help.aliyun.com/document_detail/54476.html?spm=a2c4g.11186623.6.566.MoSnfy

MaxCompute使用说明:https://help.aliyun.com/product/27797.html?spm=a2c4g.11186623.3.1.ZYs7XX

4.2 日志埋点规范

推荐引擎的日志格式为标准的JSONObject。其中对于实时行为日志,可以使用日志API这个API进行上传,将每条日志put到demo中的logs中`

日志规范详细说明:https://help.aliyun.com/document_detail/54477.html?spm=a2c4g.11186623.6.567.mzBRHi

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部