个性化推荐技术实施方案?求分享

0
推荐里面有基于人口统计学的推荐、基于内容的推荐、基于协同过滤推荐、关联推荐等等,但是前面三个算法具体的操作方案是怎样的呢?比如用hadoop集成R,R里面哪些算法可以实现上述功能?求案例及方案流程介绍
已邀请:
1

面包君 - 我爱数据分析网创始人,阿里招聘&资深数据分析,动漫爱好者 2016-03-30 回答

记得之前讲过很多啊,可以多参加我们线下的一些机器学习推荐场景的活动分析。首先就是先介绍下为什么需要个性化推荐?因为一般我们在做数据化运营的过程中,就是要做用户的拉新和活跃,通过不同的活动来刺激用户消费或者使用相应的功能和业务。而传统的数据化运营就是人工活动+审批+活动预算这样的流程,一定程度上效率很低,而且整个效果监控和后续的调整都得不到保障。
 
引入机器学习来做个性化推荐就是解决这样的矛盾,通过机器自学习的模式实现推荐的自动化+个性化,而推荐的场景就是“人+item”的模式。给什么样的人推荐什么东西,给哪一群人推荐哪一类的东西。营销的思路上就是“交叉销售”+“向上销售”。
 
好了,背景介绍完了,那来说说架构上和技术上是如何实现个性化推荐平台的。这里就简单介绍。
 
技术平台架构上:

QQ20160330-1@2x.jpg

 
算法层面上:
看你是解决什么样的问题,常见的就是预测、关联、聚类、分类等问题,常用的算法就是逻辑回归、随机森林、GBDT、KNN、协同过滤(协同过滤一般在商品比较多的情况下推荐使用),这些都是可以通过Java、python或者R包来实现的。建议自己搭建一个算法封装包,因为会经常频繁调用。
 
数据平台架构上:
重点包括开发平台、权限管理、任务调度、监控报警、算法、任务日志、数据接口、自定义函数等这些。设计上结合开发需求、流程需求、数据安全需求等。
 
case one:
之前我们线下分享过母婴网站的首页个性化排序是怎么做的。数据存储在Hadoop上做离线的计算处理,

QQ20160330-2@2x.jpg

 
实时尽量轻量化,strom的计算。
 
场景做了首页排序,用户猜你喜欢(算法上根据用户最可能购买哪类商品)。
 
细节有什么不清楚的再咨询。
 
 
 
 
 
 
1

Bob - 同程旅游大数据+BI 架构师 2016-03-29 回答

用hadoop集成R来做效率一般,我这没有这样的使用
1.如果基于协同过滤的话,那么建议你使用Mahout。其中有LoglikelihoodSimilarity/PearsonCorrelationSimilarity 等相似的算法
2.也可以使用spark的mlib来完成
推荐的一些算法都可以用spark的编程来实现。
最主要的是是spark是基于内存运算,速度比hadoop的MR快了很多倍。
 
之前有回答一个问题,里面有推荐系统的构建流程:http://www.flybi.net/question/ ... 11379
 
从以下几个方面来考虑:1.系统的并发问题
如果并发过高,则需要前端架设负载均衡。
编程语言推荐用java,因为并发量大,请求量也大,就势必会用到大数据的相关组件。
2.算法模型
算法的打样、编程变现、建立算法池。
打样可以考虑用R语言,编程变现则需要java,如果讲究时效性,则要用到spark。
3.程序架构
采用最原生态的servlet+tomcat+soa
程序层次结构一定要分清楚,因为这其中需要访问redis缓存、hbase、mongodb等nosql。
4.数据更新机制
推荐数据源的更新要做好,尤其是与nosql的结合问题。
如果有实时更新,那更需要设计合理的更新措施。
5.容灾机制
解决推荐无结果、程序异常时 的问题
6.推荐后台系统
存储推荐接口的日志信息
推荐效果呈现
推荐人工干预等等

要回复问题请先登录注册