阿里大数据技术团队首场在线培训:21天搭建推荐系统!OSCHINA

本文介绍的内容还包括如何搭建一个个性化推荐系统所需的环境准备、基本配置和离线技术等基本功能的搭建,也有效果报表、算法优化和实时修正等高级功能的剖析。

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

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

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

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

Day1.环境准备

Day2-3.数据准备

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

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

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

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

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

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

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

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

Day6-8.推荐API集成

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

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

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

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

活动预告:为了让大家更好的了解如何在21天快速搭建推荐系统,特邀请本文作者、阿里云技术专家郑重(卢梭)开展一场线上课程。

THE END
1.现阶段最好用的培训班教务管理系统是哪个品牌?英语教师约课英语培训教务管理系统提效方便学员约课考勤,如今英语被广泛使用为国际化语言,所以很多人都去学英语,所以英语培训机构买个教务管理系统还是挺有必要的。机构学员多了,管理真的麻烦,学生约课、请假、考勤、消卡、续费、上课提醒都是人工弄,有的时候弄不过来,又浪费时间还会容易弄错。随着互联网的发展,英语培训班约课考勤https://www.163.com/dy/article/JJNI1O330552FUQR.html
2.微厦在线培训考核系统最新版微厦在线培训考核系统官方下载2、学员教师管理 学员教师信息的增删改 学员学习进度掌控 解答学员提出的疑问 微厦在线培训考试系统前台页面微厦在线培训考试系统后台管理 后台地址:域名/admin/index.ashx 管理账号:song密码1(在网站底部的“机构管理”处登录) 学员账号:13223040250 密码1 教师账号:18037155753 密码1 后台页面:下载http://www.onlinedown.net/soft/1138511.htm
3.中国研究生招生信息网中国研究生招生信息网是隶属于教育部的以考研为主题的官方网站,是全国硕士研究生招生报名和调剂指定网站,主要提供研究生网上报名及调剂、专业目录查询、在线咨询、院校信息、报考指南和考试辅导等多方面的服务和信息指导。https://yz.chsi.com.cn/
4.在线考试系统在线培训系统在线答题系统麦塔在线考试系统和在线培训系统是由大连栋科软件工程有限公司历经多年独立研发,有完全自主知识产权的在线考试系统、在线培训系统。麦塔在线答题系统、在线学习系统全面支持移动端,栋科10年教育软件开发经验,10大功能模块,365天实时跟踪服务。麦塔无纸化考试系统节省30%https://www.mtavip.com/
5.企业在线培训平台elearning培训系统在线学习管理平台北森E-learning学习云,是国内新一代智能企业在线培训平台,课程管理、考试管理、培训计划、激励体系、培训分析等丰富功能,搭建企业在线大学,改善人才培养效率及绩效表现,提升人才竞争力。https://www.beisen.com/product/elearning
6.高考志愿填报参考系统选科(6选3) 本科专科 物理 化学 生物 政治 历史 地理 分数 分 位 上方输入分数 查看适合您的院校 推荐院校 --可冲击 --较稳妥 --可保底 智能推荐大学 院校排行 高考直播 高考知道 高考真题 热门院校 换一换 热门专业 本科 专科 更多 报考专题 https://gkcx.eol.cn/
7.河北农信在线培训app下载河北农信在线培训app为河北省农村信用社内部员工打造的专业技术培训考试系统, 里面所富含的教学版块非常多,可以帮助员工全面发展,高效提升业务能力,使客户、使企业、使个人都能互利!有需要的朋友可以来下载! 官方介绍 河北农信在线培训系统手机客户端是一款学习、互动的培训平台。提供教师授课、Flash动画、录屏等多种形式https://m.itmop.com/downinfo/387671.html
8.魔学院官网企业培训云平台员工培训系统线上培训平台魔学院是面向企业的专业培训管理平台系统,包含移动学习、线上培训、在线考试、OMO课堂、海量培训课程、培训管理等。为金融、医疗、汽车、教育、餐饮的、政府等全领域提供一站式培训系统,搭建企业大学。https://www.moxueyuan.com/
9.在线教育系统在线培训美橙云课堂打造专业的在线教育系统和在线教育平台,快速实现在线教育,在线培训,PC、手机、微信,多平台支持,直播、录播、预约课程、考试测验、招生推广,全方位满足各类网校教学应用。https://www.cndns.com/cn/edu/Index.aspx
10.第三方在线客服系统在线客服系统在线客服系统企业培训_企业培训平台_企业在线培训平台_企业培训系统_员工培训平台 云计算培训_云计算培训多少钱_云计算培训课程_教育_上云培训 云原生培训_云计算培训多少钱_云计算培训哪里好_教育大数据培训大数据培训 企业培训_企业培训平台_企业在线培训平台_企业培训系统_员工培训平台 时习知 https://www.huaweicloud.com/theme/1132500-3-D-undefined
11.科莱特在线网校sap培训sap顾问培训sap系统培训莱学习,提供sap培训服务,包括sap顾问培训、sap系统培训、sap视频教程、sap培训课程、SAP学习干货等,帮助更多人进入SAP圈。http://laixuexiedu.com/
12.企业在线互动培训系统的设计与实现伴随着经济全球化与市场格局多元化,企业所面临的竞争环境日益残酷,如何保持和不断提高企业的核心竞争力成为企业关注的焦点,各种形式、各种类别的培训作为企业提高核心竞争力的重要手段成为企业的迫切需求,是企业应对错综复杂的国际经济形势和世界格局变化,迅速提高企业核心竞争力的一项重要举措。而在线培训这种迎合了网络化潮https://wap.cnki.net/touch/web/Dissertation/Article/2010075924.nh.html
13.企业在线培训平台系统线上学习考试管理平台经过培训,了解煤矿安全生产方针、政策和法律法规,增强法制观念和安全意识,掌握自救、互救和创伤急救的基本知识和操作方法; 考核合格,才具备入井实习资格。 完善的学校课程体系 根据学员的实际情况,匹配合适班型,规划学习路径,课程涵盖 幼儿,小学,初中,高中各个年龄阶段,全国2-18岁的学生都能学,排行榜和积分兑奖激励孩https://www.fengchuanba.com/entvip.html
14.Altera在线资源使用清风醉明月slpart3系统化的设计资源 2 3.1.设计实例 2 3.2.参考设计(有提供应用笔记) 3 3.3.系统建造工具相关支持 3 3.4.技术中心 3 3.5手册资料(器件信息,应用笔记,数据资料,用户指南,相关文档) 4 3.6 演示中心(两方面演示) 4 3.7 Altera 在线培训(重点推荐) 5 https://www.cnblogs.com/sleepy/archive/2011/06/28/2092365.html
15.企业培训系统平台企业线上培训员工线上培训平台【云学堂官网】是为中大型企业提供在线企业培训系统学习平台,有elearning企业学习平台搭建、企业培训课程、企业培训考试系统、绚星APP学习平台等;为企业提供专业的企业培训一站式解决方案。http://www.xuankes.cn/
16.时代光华企业数智化学习服务商企业在线学习平台企业培训平台为企业提供数字化企业学习平台解决方案,在线培训系统、企业培训SaaS软件、3000+企业培训课程、在线培训考试系统、数字化企业学习咨询,助力降本增效,提升人才效能https://www.21tb.com/
17.企业培训平台,企业在线学习系统,员工线上培训米知云数字化企业培训平台,针对中大型企业在线企业培训系统,提供员工elearning平台搭建、满足企业线上培训、新员工培训、在线培训考试、企业内训等;米知云-数10万家企业都在用的组织能力提升平台。http://zhiyan.mzyun.ren/website/index.html
18.elearning系统私有部署培训平台供应商Traingo为企业提供在线培训平台,信创学习平台,国产化学习平台,信创考试平台,国产化考试平台,干部培训平台,为您提供课程管理、考试管理、知识管理、培训计划、会议直播、社区互动、激励体系、培训分析、答疑等,改善人才培养效率及绩效表现,提https://www.traingo.cn/news/