Mahout学习路线图

这里写图片描述
前言


Mahout是Hadoop家族中与众不同的一个成员,是基于一个Hadoop的机器学习和数据挖掘的分布式计算框架。Mahout是一个跨学科产品,同时也是我认为Hadoop家族中,最有竞争力,最难掌握,最值得学习的一个项目之一。
Mahout为数据分析人员,解决了大数据的门槛;为算法工程师,提供基础的算法库;为Hadoop开发人员,提供了数据建模的标准;为运维人员,打通了和Hadoop连接。
Mahout就是驯象人,在Hadoop上创造新的智慧。


目录

  1. Mahout介绍
  2. Mahout学习路线图
  3. 我的学习经历
  4. Mahout的使用案例

1.Mahout介绍

Mahout是基于Hadoop的机器学习和数据挖掘的一个分布式框架。Mahout用MapReduce实现了部分数据挖掘算法,解决了并行挖掘的问题。
根据“Mahout in Action”书中介绍的,Mahout实现了三大算法,推荐(Recommendation)、聚类(Clustering)、分类(Classification)。
下文介绍的学习路线图,将以Mahout in Action书中思路展开。


2.Mahout学习路线图

这里写图片描述
Mahout的知识点,我已经列在图中,希望帮助其他人更好地理解Mahout。


3.我的学习经历

对于“Mahout in Action ”,先不急上手做什么,一遍一遍地读。直到读完3遍,心里才有把握。
从“推荐算法”开始,UserCF,ItemCF。记得第一次在公司给小组讲的时候,还设计了一份问卷,我列出了10个网站,(其中6个IT大站,2个个人blog,2个社交类社区),分别让大家去投票,0-5分,0为不知道,1-5为对网站的喜爱程度。
问卷结果格式:
user1, website1, 5
user1, website2, 2
user1, website3, 4
user2, website3, 2
user3, website3, 5
user4, website3, 0
…..

通过这个问卷来模拟尝试Mahout的推荐模型!计算的结果对大家来说,都是比较奇怪。为什么会有这样的推荐呢。 然后,深入Mahout源代码,看算法的实现,知道了相似度矩阵,距离算法,推荐算法,模型验证等,不同业务要求,不同的算法调用,对结果都是有影响的。把书中所有的的概念,关键词都整理过(可惜当时没写博客)。整整花了3个月,每天12个小时的强度,把推荐部分完整地学下来了。
然后,应用到实际业务中,我的任务是做“职位推荐”,我只有用户浏览职位,收藏职位,申请职位的行为数据。
第一次尝试,直接套用推荐模型,但结果非常之差。
出现问题的原因有2个:

  1. 职位是有时效性的,每个职位可能3个月就会过期:推荐结果包含了很多的过期职位。
  2. 大量的用户行为都是历史的,甚至是2-3年前的:推荐结果不符合用户的预期。我估计每半月用户的职位都可能有上升,所以历史行为是不能直接用于当前用户的计算的。

修改方案:

  1. 对用户行为数据集进行过滤,只计算最近半年内的用户行为。
    1. 对结果集进行过滤,排除过期的职位。
    2. 分别用不同的算法模型计算(我记得Tanimoto的Item Base结果最好)

聚类模型,我把这个算法 应用在网站用户的活跃度分析。假设一个网站,注册用户1000W,每天登陆的1W。我们想了解一下,未登陆的999W用户有什么特点!!用到Mahout的k-means和Canopy做聚类,假设1000W的用户可能可以划分为5个大的群体。


分类模型,我尝试着用Native Bayes对我的个人邮件进行垃圾分类。按机器学习的操作流程,历史数据健分词后,训练分类器,每天时时的数据通过分类器进行判断。整个自动化过程都已经完成。


4.Mahout的使用案例

  1. 用R解析Mahout用户推荐协同过滤算法(UserCF)
  2. RHadoop实践系列之三 R实现MapReduce的协同过滤算法
  3. 用Maven构建Mahout项目
  4. Mahout推荐算法API详解
  5. 从源代码剖析Mahout推荐引擎
  6. Mahout分步式程序开发 基于物品的协同过滤ItemCF
  7. Mahout分步式程序开发 聚类Kmeans
  8. 用Mahout构建职位推荐引擎
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值