BpFile(id=263, bpId=140, name=基于PAI搭建企业级个性化推荐系统, author=null, keyword=PAI,机器学习,推荐,训练,推理,CTR, description=快速从0到1实现一套高效、精准、易用、可扩展的企业级个性化推荐系统。, position=null, ossUrl=bp-MDHX281XTP3M134R.pdf, tags=null, level=null, tagList=null, products=null, productList=null, hotspot=null, oneClick=1, createTime=null, modifiedTime=null, timeConsuming=null, status=1, pdfDescription=
本方案结合阿里云PAI团队预置的基础版算法方案为例,演示如何以阿里云提供的数据、AI类产品为基础,离线部分采用Maxcompute&Dataworks&PAI的大数据&AI体系,在线服务采用推荐引擎PAI-REC、A/B测试系统PAI-A/B、在线模型服务PAI-EAS、在线数据服务Hologres,并通过PAI-REC运维与实验操作平台,利用阿里云云速搭CADT,快速从0到1搭建一套高效、精准、易用、可扩展的智能推荐系统。
, templateId=OJ9RC5SK2P6M5VOQ, freetry=null, visitTime=null, visitCount=null, video_url=, buttonName=null, buttonUrl=null, targetId=OJ9RC5SK2P6M5VOQ, partner=null, partnerUrl=null, partnerLogo=null, cooperation=, cooperationList=null)
1PAI平台搭建企业级个性化推荐系统 最佳实践
业务流程图
场景描述
PAI是阿里云推出的人工智能平台,提供一站式的
机器学习解决方案。本最佳实践利用PAI平台结合
阿里云RDSforMySQL版、对象存储OSS和云数
据库Redis版等产品构建一个高效的离线训练+在
线推理的推荐业务系统。
适用客户:
1. 互联网行业客户,MAU80万-1500万。
2. 业务为信息流、广告推荐等经典推荐场景。
3. 数据已经使用了MaxCompute或准备使用。
4. 具备1-5名有算法背景的工程人员。
5. 原有服务基于开源算法自建体系,但是受限现
推荐业务架构图
有人员和成本无法进一步提升。
解决问题
1. 利用PAI平台构建离线训练系统。
2. 利用PAI平台构建在线推理系统。
产品列表
机器学习PAI
MaxCompute
DataWorks
云数据库RDSMySQL版
对象存储OSS
云数据库Redis版
表格存储TableStore
2云服务器ECS(产品名称) 文档模板(手册名称)/文档版本信息
阿里云
企业上云实践
PAI平台搭建企业级个性化推荐
系统最佳实践
文档版本:20210624(发布日期)
文档版本:20150122(发布日期) 2
3PAI平台搭建企业级个性化推荐系统 文档版本信息
文档版本信息
文本信息
属性 内容
文档名称 PAI平台搭建企业级个性化推荐系统最佳实践
文档编号 140
文档版本 V1.6
版本日期 2021-06-24
文档状态 外部发布
制作人 敬海
审阅人 游圣、云魁
文档变更记录
版本编号 日期 作者 审核人 说明
敬海、博琰、傲海、丁静、
V1.0 2020-02-06 - 创建
仲德
V1.1 2020-02-27 敬海 云魁、游圣 修改更新
V1.2 2020-03-01 敬海 - 修改精简
V1.3 2020-03-03 筱晖 - 文档优化
V1.4 2020-03-05 敬海 - 修改名称
V1.5 2020-12-05 敬海 增加CADT部分
V1.6 2021-06-24 敬海 内容更新
文档版本:20210624(发布日期) I
4PAI平台搭建企业级个性化推荐系统 前言
前言
概述
PAI是阿里云推出的人工智能平台,提供一站式的机器学习解决方案。本最佳实践利
用PAI平台结合阿里云RDSforMySQL版、对象存储OSS和云数据库Redis版等产
品构建一个高效的离线训练+在线推理的推荐业务系统。
本最佳实践步骤较多,完全操作完成大概需要6~8小时。
应用范围
使用PAI平台构建离线训练+在线推理的推荐系统。
名词解释
机器学习:机器学习指机器通过统计学算法,对大量的历史数据进行学习从而生成
经验模型,利用经验模型指导业务。简单来讲,机器学习有两个核心的步骤,一
个是训练,一个是推理。训练是指利用大量训练样本,不断修正模型的过程。推
理是指利用训练好的模型进行预测的过程。
机器学习PAI():是阿里云推出的人工智能平台,
提供一站式的机器学习解决方案,是一个定位于服务阿里集团的机器学习平台,
致力于让AI技术更加高效、简洁、标准的被公司内部开发者使用。详见
https://help.aliyun.com/document_detail/69223.html
CTR(Click-Through-Rate):点击通过率,指网络广告的点击到达率,广告的实
际点击次数除以广告的总的展现量。CTR是衡量整个推荐业务的重要指标,也就
是说推荐业务的重点是如何提高CTR。
MaxCompute(原ODPS):是一项大数据计算服务,它能提供快速、完全托管的
PB级数据仓库解决方案,使您可以经济并高效的分析处理海量数据。详见
https://www.aliyun.com/product/odps
Dataworks:是一个提供了大数据OS能力、并以allinonebox的方式提供专业高
效、安全可靠的一站式大数据智能云研发平台。同时能满足用户对数据治理、质
量管理需求,赋予用户对外提供数据服务的能力。详见
https://data.aliyun.com/product/ide
云数据库RDSMySQL版:阿里云关系型数据库(RelationalDatabaseService,
简称RDS)是一种稳定可靠、可弹性伸缩的在线数据库服务。基于阿里云分布式
文档版本:20210624(发布日期) III
5PAI平台搭建企业级个性化推荐系统 前言
文件系统和SSD盘高性能存储,RDS支持MySQL、SQLServer、PostgreSQL、
PPAS(高度兼容 Oracle)和MariaDB引擎,并且提供了容灾、备份、恢复、监
控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。RDSMySQL版
基于阿里巴巴的MySQL源码分支,经过双十一高并发、大数据量的考验,拥有
优良的性能。RDSMySQL支持实例管理、账号管理、数据库管理、备份恢复、
白名单、透明数据加密以及数据迁移等基本功能。详见
https://www.aliyun.com/product/rds/mysql
云数据库 Redis 版:云数据库Redis版(ApsaraDBforRedis)是兼容开源Redis
协议标准、提供内存加硬盘的混合存储方式的数据库服务,基于高可靠双机热备
架构及可平滑扩展的集群架构,满足高读写性能场景及弹性变配的业务需求。详
见https://www.aliyun.com/product/kvstore
表格存储(Tablestore,原OTS):是阿里云自研的面向海量结构化数据存储的
ServerlessNoSQL多模型数据库,被广泛用于社交、物联网、人工智能、元数据
和大数据等业务场景。提供兼容HBase的WideColumn模型、消息模型Timeline
以及时空模型Timestream,可提供PB级存储、千万TPS以及毫秒级延迟的服务
能力。详见https://cn.aliyun.com/product/ots
对象存储OSS:海量、安全、低成本、高可靠的云存储服务,提供99.9999999999%
的数据可靠性。使用RESTfulAPI可以在互联网任何位置存储和访问,容量和处
理能力弹性扩展,多种存储类型供选择全面优化存储成本。详见
https://www.aliyun.com/product/oss
云架构设计工具CADT是一款为上云应用提供自助式云架构管理的产品,显著地
降低应用云上管理的难度和时间成本。本产品提供丰富的预制应用架构模板,同
时也支持自助拖拽方式定义应用云上架构;支持较多阿里云服务的配置和管理。
用户可以方便的对云上架构方案的成本、部署、运维、回收进行全生命周期的管
理。详见https://www.aliyun.com/product/developerservices/cadt
文档版本:20210624(发布日期) IV
6PAI平台搭建企业级个性化推荐系统 目录
目录
文档版本信息..................................................................................................................................................................I
.........................................................................................................................................................................
法律声明 II
前言................................................................................................................................................................................III
.................................................................................................................................................................................
目录 V
最佳实践概述.................................................................................................................................................................1
前置条件.........................................................................................................................................................................4
...................................................................................................................................................
1.推荐业务背景介绍 5
1.1.应用范围........................................................................................................................................................5
........................................................................................................................................................
1.2.总体原则 5
1.3.免责声明........................................................................................................................................................5
1.4.推荐系统........................................................................................................................................................5
...........................................................................................................................................................
2.前置依赖介绍 9
2.1.模型生产工具................................................................................................................................................9
..............................................................................................................................................
2.2.数据上云工具 10
2.3.作业调度工具..............................................................................................................................................10
2.4.线上服务工具..............................................................................................................................................11
.........................................................................................................................................................
3.业务架构介绍 13
3.1.推荐流程......................................................................................................................................................13
......................................................................................................................................................
3.2.数据说明 14
3.3.处理逻辑......................................................................................................................................................19
3.4.部署架构......................................................................................................................................................21
.........................................................................................................................................
3.5.代码包文件说明 22
4.部署基础环境.........................................................................................................................................................23
.................................................................................................................
4.1.使用CADT模板创建基础环境 23
5.基础环境配置.........................................................................................................................................................30
5.1.RDS实例配置.............................................................................................................................................30
..........................................................................................................................................
5.1.1.创建账号 30
5.1.2.创建数据库......................................................................................................................................31
..............................................................................................................................
5.1.3.设置内网白名单 32
5.1.4.申请外网地址..................................................................................................................................35
5.1.5.添加外网白名单..............................................................................................................................35
..................................................................................................................................
5.2.TableStore实例配置 37
5.3.检查OSSBucket.......................................................................................................................................41
...........................................................................................................................................
5.4.Redis实例配置 42
5.4.1.设置外网白名单..............................................................................................................................42
5.4.2.申请外网地址..................................................................................................................................43
............................................................................................................................................
5.5.检查ECS实例 44
5.6.向RDS导入示例数据...............................................................................................................................44
.............................................................................................................................................
5.7.开通PAI服务 46
5.7.1.创建AccessKey.............................................................................................................................46
5.7.2.开通大数据计算服务MaxCompute............................................................................................48
..................................................................................................................................
5.7.3.开通PAI服务 50
文档版本:20210624(发布日期) V
7PAI平台搭建企业级个性化推荐系统 目录
5.8.开通DataWorks服务................................................................................................................................53
.................................................................................................................................................
6.部署离线训练系统 57
6.1.创建工作空间..............................................................................................................................................57
..............................................................................................................................................
6.2.创建数据集成 60
6.2.1.进入数据集成..................................................................................................................................60
6.2.2.增加RDS数据源............................................................................................................................60
..........................................................................................................................
6.2.3.增加Redis数据源 63
6.2.4.增加TableStore数据源................................................................................................................65
...........................................................................................................................
6.3.导入rec-work项目源码 67
6.4.数据开发......................................................................................................................................................75
6.4.1.将数据导入MaxCompute.............................................................................................................75
..................................................................................................................................
6.4.2.导入PAI实验 84
6.4.2.1.导入两个PAI实验..............................................................................................................84
....................................................................................................................
6.4.2.2.配置OSS路径 89
6.4.3.重新加载PSSMART精排模型训练节点.....................................................................................91
6.4.4.重新加载01协同过滤召回模块节点...........................................................................................93
..............................................................................................................................
6.4.5.修改数据源配置 95
6.4.6.发布自定义计算资源和函数..........................................................................................................99
........................................................................................................................
6.4.7.修改项目周期调度 102
6.4.8.发布离线工作流............................................................................................................................105
6.4.9.验证线上工作流并补充数据........................................................................................................106
.................................................................................................
6.4.10. 运行最新一天的任务生成模型 113
6.5.离线训练系统说明...................................................................................................................................115
........................................................................................................................................
6.5.1.数据说明 115
6.5.2.协同过滤召回(CF-Recall)......................................................................................................115
6.5.3.数据特征工程................................................................................................................................116
........................................................................................................................................
6.5.4.模型训练 116
6.6.排序模型训练(PS-SMARTRANK)..................................................................................................119
........................................................................................................................................
6.6.1.样本生成 119
6.6.2.特征工程........................................................................................................................................120
6.6.3.模型训练........................................................................................................................................127
........................................................................................................................................
6.6.4.模型评估 129
6.6.5.数据同步........................................................................................................................................130
...........................................................................................................................................
6.7.代码结构说明 131
7.部署在线召回系统...............................................................................................................................................132
7.1.数据说明...................................................................................................................................................132
.......................................................................................................................
7.1.1.user-item数据说明 132
7.1.2.item-item数据说明.......................................................................................................................133
..................................................................................................................
7.2.购买PAIEAS模型在线服务 134
7.3.配置推荐召回...........................................................................................................................................135
8.线上推理...............................................................................................................................................................145
...........................................................................................................................................
8.1.部署排序模型 145
8.2.构建在线服务...........................................................................................................................................150
....................................................................................................................................................
9.Demo系统演示 152
9.1.搭建demo系统.......................................................................................................................................152
9.2.demo系统说明.........................................................................................................................................155
文档版本:20210624(发布日期) VI
8PAI平台搭建企业级个性化推荐系统 目录
10.附录.....................................................................................................................................................................158
................................................................................................................
10.1.OSS模型文件打包步骤示例 158
文档版本:20210624(发布日期) VII