[免费]手把手,阿里算法专家教你21天搭建推荐系统

【线上活动报名】

活动:21天快速搭建推荐系统

讲师:阿里云技术专家郑重(卢梭)

时间:6月16日晚20:00

报名方式:
(一)长按上图二维码,扫码报名

群定位:阿里系云计算、大数据、人工智能等技术讨论

群中会有专人指导大家完成注册并提供如下群友福利:

(1)实战技术培训干货(在线培训、培训文章、PDF等)放送

(2)阿里云计算、大数据等产品意见、建议反馈

(3)不定期专家讲座答疑

(4)受邀成为社区专家,共同策划技术选题

(5)各种福利早知道,比如云主机优惠券、课程通知、新品试用等

◆ ◆ ◆

推荐系统的搭建是个复杂工程,涉及到实时计算、离线计算,以及各种数据采集、流转等,对自建推荐系统来说,1人年是跑不掉的。本文介绍如何搭建一个个性化推荐系统所需的环境准备、基本配置和离线技术等基本功能的搭建,也有效果报表、算法优化和实时修正等高级功能的剖析。

大数据有三个非常经典的应用:计算广告、搜索、推荐。每一种应用最核心的地方都离不开三个字——个性化。广告不用说了,计算广告的基本要求就是要精准,为广告选择对其感兴趣的目标受众;搜索可以理解为对搜索关键词的个性化;而推荐,则需要在用户和物品之间建立兴趣关系。推荐的业态比较复杂,有类似淘宝天猫这样的真正意义上大数据场景,也有很多中小网站、应用,数据量其实并不是很大。阿里云推荐引擎(https://data.aliyun.com/product/re)的初衷,是为了帮助阿里云的客户、创业者、中小网站,让他们能够更好的运营自己的产品或网站。

推荐系统一般包括展现子系统、日志子系统和算法子系统三个部分,三者互为一体。

“展现”部分不仅要负担展现,还是数据采集的窗口,用户在展现系统的所有行为通过日志录入,采集到的数据经过算法子系统的计算,可以得到用户的偏好或者个性化兴趣,然后回过头来指导“展现”部分怎样做的更聚焦。

阿里云推荐引擎(RecEng)是推荐系统的一部分,主要实现的是算法子系统,需要和其他子系统配合工作。使用阿里云推荐引擎分为两大阶段

◆ ◆ ◆

第一阶段:基本功能的搭建

Day1. 环境准备

环境准备分为两部分。图中左侧为云上资源的准备,我们需要拥有阿里公有云账号,然后开通云监控服务(可选)和阿里云数加服务(必选);开通数加账号后,大数据计算服务(MaxCompute,原名ODPS)和大数据开发Data IDE就默认开通了(Data IDE相当于MaxCompute的可视化包装),最后开通推荐引擎。未来客户在推荐引擎中用到的数据,以及相关离线计算,都在客户自己的MaxCompute项目中完成。右侧为客户侧的准备,前端的展现,以及日志的采集和管理都需要客户自己完成,通过推荐引擎提供的API与推荐引擎进行交互。通常情况下,客户侧的后台相关功能会集中在推荐服务器中实现,这也是阿里云推荐引擎墙裂建议的方案。推荐服务器可以是客户自己的物理机,也可以是阿里云的虚拟机ECS,都是可以的。

Day2-3. 数据准备

DT时代的基本要求是数据要能够“存、通、用”。采集日志,并将其上传到公共云实现了数据“存”的过程;推荐引擎负责解决数据的“通”和“用”。“用”比较好理解,“通”则指的是所有进入推荐引擎的数据必须满足推荐引擎所定义的格式规范。推荐有三类数据:用户数据、物品数据和行为数据,我们定义了这三种表的格式规范,比较简单,具体细节可以参考https://help.aliyun.com/document_detail/shujia/RE/dataspec/datauploadspec.html。

那么,如何把数据传到公共云上来呢?目前主要有两种方法,一是利用集成在MaxCompute console中的Tunnel命令,该命令的缺点只能上传文本格式数据;另一种方法是定制DataX上传,DataX作为连接各种数据库中间的节点,它除了可以作为文本上传,还可以把各种数据库打通。DataX的缺点是目前只能在Linux环境下运行。

当然,未必每一个业务的数据都满足规范的要求,所以还需要做一些格式转换。Data IDE提供了比较友好的格式转换界面,还可以把配置好的任务设置为定时任务,每天定时调度;也可以在MaxCompute console下直接执行格式转换的SQL脚本,再利用系统的crontab命令实现定时任务。

Day4-5. 基本配置和离线计算

环境和数据都准备好了之后,接下来需要进入阿里云推荐引擎产品,真正开始使用推荐引擎了。不过在此之前,还需要对产品中的一些关键概念进行必要的说明。

第一个概念是业务。在阿里云推荐引擎中,业务指的是一组可被用来进行推荐算法计算的完备数据集,包括物品表、行为表、用户表这三张表。也可以简单的认为这三张表就构成了一个业务。

第二个概念是场景,所谓场景就是推荐的上下文。换句话说,就是在进行推荐时有哪些可用的参数。比如在进行首页推荐的时候,可用的参数只有用户的ID;在进行详情页推荐的时候,可用的参数除了用户ID,还可以由详情页上展示的物品ID,这样首页推荐和详情页推荐就是两个推荐的场景。一个业务可以包括多个场景。

第三个概念是算法流程,算法流程指的是数据端到端的处理流程,从客户的输入数据开始,到产出最终结果为止。推荐算法流程从属于场景,一个场景可以包含多个算法流程。每个推荐算法流程都包括两部分,离线计算流程和在线计算流程。离线计算流程负责从原始的业务数据(用户、物品、行为)开始,计算用户对物品的兴趣,输出本场景下用户可能会感兴趣的物品集合;在线计算流程实时接受推荐请求,从离线计算流程得到的物品集合中根据业务规则挑选出最合适的若干个物品返回给请求方。一个场景包含多个推荐算法流程这种设定使得我们在做效果对比变的比较容易,后面会介绍A/B Testing,在A/B Testing中,每个推荐算法流程都是一个可被效果指标度量的最小单元。在做完A/B Testing之后,通常只会在一个场景下保留一个效果最好的推荐算法流程。

产品里的配置都比较简单,配置业务基本信息、配置业务依赖的云资源、配置业务数据表,接着配置场景、配置API参数,最后配置算法流程,阿里云推荐引擎提供了两个默认的推荐算法流程模板,分别针对首页场景和详细页场景,图为首页场景的离线计算流程模板,图中每一个节点就是一个算法,最终产出离线计算结果。

Day6-8. 推荐API集成

到了这一步,云端推荐引擎里的推荐算法逻辑已经配置完成,剩下的事情就是把系统串起来,让推荐引擎和日志、展示两个子系统结合起来,成为推荐系统。阿里云推荐引擎提供了一组API,这里要做的就是把这些API集成到推荐服务器中。

首先需要把离线数据传上来,可以用前面提到的方法,Tunnel啊,DataX啊,都可以,但是一定要是定时任务,我们总不能每天都去手工执行数据上传。上传完成之后首先调用数据预处理API,对数据做一些预处理;然后调用离线计算API,启动离线计算。待离线计算完成后,通过推荐API就可以实时获取用户的推荐结果了。在离线计算的过程中,还可以通过查看计算任务状态API实时获取计算任务的状态,便于及时发现异常。

上图也展示了我们对推荐服务器的一些基本建议。诸如数据上传、启动离线计算这些功能建议由一个相对独立的数据管理组件来负责;而实时性要求比较高的推荐结果获取建议由专门的推荐管理组件来负责。推荐管理组件和数据管理组件为什么要有一个交互呢?这是因为从推荐引擎返回的结果中可能只包括了物品的ID,展示时不能只展示一个ID,还有很多材料,这些东西可以放在推荐服务器中,由数据管理模块负责管理。UI可以提供人工管理数据的界面,比如新录入了一个物品,或者某个物品卖完了要下线,需要做实时修正时就可以用到了。

这些工作都完成之后,一个具备最基本功能的推荐系统就可以运行起来了。

◆ ◆ ◆

第二阶段:高级功能的搭建

将在6月16日晚20:00,由阿里算法专家线上分享,报名方式参见文章开篇说明。

原文发布时间为:2016-06-07

时间: 2024-11-02 18:47:44

[免费]手把手,阿里算法专家教你21天搭建推荐系统的相关文章

【直播回顾】21天搭建推荐系统:实现“千人千面”个性化推荐(含视频)

在4月27日2016云栖大会南京峰会上,阿里云算法专家.阿里云推荐引擎技术负责人郑重(卢梭)为大家分享了<21天搭建推荐系统>议题,这次分享得到了大家的积极反馈.因此,邀请卢梭做客,在6月16日晚8点在线再次分享<21天搭建推荐系统>.本次活动已经顺利结束,持续近2个小时,在此感谢大家的支持和关注. 下面是本次活动视频.幻灯及内容整理. 点击图片看视频回顾 PDF下载地址:https://oss-cn-hangzhou.aliyuncs.com/yqfiles/48f666836f

《21天搭建推荐系统》观众定向打折优惠

感谢大家报名参加<21天搭建推荐系统>的技术交流,为答谢观众的支持,阿里云推荐引擎为本次活动的报名观众提供折扣优惠. 产品版本及原价: 1.体验版:新客户首月1元体验,总调用量1000万 2.标准版:2500元/月(调用量3000万/月).5000元/月(调用量2亿/月).10000元/月(调用量12亿/月) 3.定制版: [3个场景.6个算法]客户任意指定3个业务场景,比如:首页推荐--猜你喜欢,详情页推荐--买了又买等场景,阿里云算法专家团队为您提供6个定制化的算法,3个离线推荐,3个实时

【直播回顾】21天搭建推荐系统:帮你减少90%代码量

下期预告:<NoSQL.RDS.Big Data异构融合实战>,重点介绍PostgreSQL FDW原理,并结合金融报文处理.物联网数据整合.企业并购重组场景下的案例,展现"SQL Everything"的理念如何提高开发效率.查看详情. <21天搭建推荐系统>活动已在6月16日晚上顺利结束.在此,感谢本次活动嘉宾--阿里云技术专家郑重(卢梭). 本次内容主要介绍了推荐系统基本原理,并以阿里云推荐引擎为基础,展示如何快速搭建推荐系统.整个搭建系统,包括基本功能设

阿里云告别1人年,教你21天搭建推荐系统

报名地址(务必收藏!):http://click.aliyun.com/m/4895/ 时间:6月16日晚20点直播. 本文作者为阿里云技术专家郑重(卢梭),主要分享内容是如何在21天内快速搭建推荐系统.推荐系统的搭建是个复杂工程,涉及到实时计算.离线计算,以及各种数据采集.流转等,对自建推荐系统来说,1人年是跑不掉的. 本文介绍的内容还包括如何搭建一个个性化推荐系统所需的环境准备.基本配置和离线技术等基本功能的搭建,也有效果报表.算法优化和实时修正等高级功能的剖析. 大数据有三个非常经典的应用

告别1人年,教你21天搭建推荐系统!

免费开通大数据服务:https://www.aliyun.com/product/odps 活动预告:为了让大家更好的了解如何在21天快速搭建推荐系统,特邀请本文作者.阿里云技术专家郑重(卢梭)开展一场线上课程,报名地址:https://yq.aliyun.com/webinar/join/14,时间6月16日晚20点直播. 本文作者为阿里云技术专家郑重(卢梭),主要分享内容是如何在21天内快速搭建推荐系统.推荐系统的搭建是个复杂工程,涉及到实时计算.离线计算,以及各种数据采集.流转等,对自建推

安全专家教你如何利用Uber系统漏洞无限制的免费乘坐?

本文讲的是安全专家教你如何利用Uber系统漏洞无限制的免费乘坐?,近日,根据外媒报道,美国一名安全研究人员发现Uber上存在一处安全漏洞,允许发现这一漏洞的任何用户在全球范围内免费享受Uber乘车服务.据悉,这一漏洞首次发现于2016年8月,但是直到本周才被发现者公诸于众.   去年8月,来自印度班加罗尔的Anand Prakash率先发现了该漏洞,并将其告知Uber公司.Uber公司在获悉该情况后,立即组织安全专家在美国和印度两地对该漏洞展开测试.测试结果正如预期:利用该漏洞,Prakash成

专家教你如何保护网络隐私

随着互联网的高速发展,市民在享受网络带来的便利的同时,也承受着网络安全威胁.如今,市民个人信息遭泄露.网络电信精准诈骗.网银被盗取等网络安全问题无时无刻不在侵蚀着市民的财产和信息安全.每年9月的第三周是国家网络安全周,记者就市民关心的网络安全问题采访了市公安局网络安全保卫支队一大队大队长王冰,以此提醒市民如何安全上网,更好地保护个人隐私和财产安全. 使用公共场所无线网要谨慎 "市民所接触的网络安全主要包括网站安全.信息系统安全.无线和有线传输安全三类."王冰介绍,在日常互联网使用中,最

《留美秘籍:专家教你上美国名校》一一、大学排名背后的“故事”

一.大学排名背后的"故事" 留美秘籍:专家教你上美国名校 1.大学排名的由来 美国大学排名始于1983年,当时大学排名的开山鼻祖<美国新闻和世界报道>(US News & World Report),就本科生教育的质量和声誉对美国1 308所四年制大学的校长进行了问卷调查,请他们列出自己心目中不同类别大学的前5名,被调查的校长中有662名校长回复了问卷.<美国新闻和世界报道>根据他们的反馈,在那一年的11月份发布了调查结果,按照每所学校被提名的次数排序,

《留美秘籍:专家教你上美国名校》一二、选择最适合自己的学校

二.选择最适合自己的学校 留美秘籍:专家教你上美国名校 1.自知之明是择校的关键 每一所学校都有自己的特点,即使排名相近的学校也有可能在某些方面有很大的区别.哈佛大学最具领袖风范,斯坦福则最具创新思想,普林斯顿充满贵族气息,麻省理工则富有钻研精神--我曾经在网上看到一个挺有意思的说法:斯坦福人有了一个高科技的新创意,哈佛人就利用它投资开公司当了CEO,并找来麻省理工和加州理工的人把创意转变成产品,耶鲁人毛遂自荐包揽了公司的法律业务,普林斯顿人则承担了公司的统计分析,而宾夕法尼亚大学沃顿商学院的人