转】机器学习开源框架Mahout配置与入门研究

本文介绍了Mahout的背景及特点,提供了详细的Mahout安装配置步骤,并通过一个实例展示了如何使用Mahout进行聚类分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原博文出自于:http://www.ha97.com/5803.html    感谢!

 

  PS:机器学习这两年特别火,ATB使劲开百万到几百万年薪招美国牛校的机器学习方向博士,作为一个技术控,也得折腾下,就这样来初步折腾下Mahout这个机器学习的主流开源框架。

 

 

 

 

 

一、Mahout简介

  查了Mahout的中文意思:驭象的人,再看看Mahout的logo,骑在象头上的那个Mahout。机器学习是人工智能的一个分支,它涉及通过一些技术来允许计算机根据之前的经验改善其输出。此领域与数据挖掘密切相关,并且经常需要使用各种技巧,包括统计学、概率论和模式识别等。虽然机器学习并不是一个新兴领域,但它的发展速度是毋庸置疑的。许多大型公司,包括 IBM、Google、Amazon、Yahoo! 和 Facebook,都在自己的应用程序中实现了机器学习算法。此外,还有许多公司在自己的应用程序中应用了机器学习,以便学习用户以及过去的经验,从而获得收益。

 

 

 

    Mahout 是一个很强大的数据挖掘工具,是一个分布式机器学习算法的集合,包括被称为Taste的分布式协同过滤的实现、分类、聚类等。Mahout最大的优点就是基于 hadoop实现,把很多以前运行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法可处理的数据量和处理性能。

 

 
 
 
 
 
 
 
在Mahout实现的机器学习算法:

 
算法类算法名中文名
分类算法Logistic Regression逻辑回归
Bayesian贝叶斯
SVM支持向量机
Perceptron感知器算法
Neural Network神经网络
Random Forests随机森林
Restricted Boltzmann Machines有限波尔兹曼机
聚类算法Canopy ClusteringCanopy聚类
K-means ClusteringK均值算法
Fuzzy K-means模糊K均值
Expectation MaximizationEM聚类(期望最大化聚类)
Mean Shift Clustering均值漂移聚类
Hierarchical Clustering层次聚类
Dirichlet Process Clustering狄里克雷过程聚类
Latent Dirichlet AllocationLDA聚类
Spectral Clustering谱聚类
关联规则挖掘Parallel FP Growth Algorithm并行FP Growth算法
回归Locally Weighted Linear Regression局部加权线性回归
降维/维约简Singular Value Decomposition奇异值分解
Principal Components Analysis主成分分析
Independent Component Analysis独立成分分析
Gaussian Discriminative Analysis高斯判别分析
进化算法并行化了Watchmaker框架 
推荐/协同过滤Non-distributed recommendersTaste(UserCF, ItemCF, SlopeOne)
Distributed RecommendersItemCF
向量相似度计算RowSimilarityJob计算列间相似度
VectorDistanceJob计算向量间距离
非Map-Reduce算法Hidden Markov Models隐马尔科夫模型
集合方法扩展Collections扩展了java的Collections类

 

 

 

 

 

 

 

二、Mahout安装配置(网上很多相关文档是错误的,我这个方法能成功运行)

1、下载Mahout

进入 http://archive.apache.org/dist/mahout/ 下载最新版本包
wget  http://archive.apache.org/dist/mahout/0.12.2/apache-mahout-distribution-0.12.2.tar.gz
 
2、解压
tar zxvf apache-mahout-distribution-0.12.2.tar.gz
 
3、配置环境变量(必备前提是hadoop已完全配置好并能正常使用,hadoop的部署文档很多了,我就不说了。)
 
配置Mahout环境变量
export MAHOUT_HOME=/root/apache-mahout-distribution-0.12.2
export MAHOUT_CONF_DIR=$MAHOUT_HOME/conf
export PATH=$MAHOUT_HOME/conf:$MAHOUT_HOME/bin:$PATH
 
4、验证Mahout是否安装成功
运行命令mahout,若列出一些算法就配置成功,如图:
 

 

 

 

 

 

 

三、Mahout 之入门使用
1、启动Hadoop集群
2、下载测试数据,把这个文件放在$MAHOUT_HOME/testdata目录下:
/root/apache-mahout-distribution-0.12.2
mkdir testdata
cd testdata
wget  http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data
 3、使用Mahout中的kmeans聚类算法,执行命令:
mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
大概28秒完成聚类,结果如下图: (根据集群机器的硬件配置,有人说要10分钟)
注意:当你运行上面命令看到如下的代码时以为是错的,其实不是,原因:MAHOUT_LOCAL:设置是否本地运行,如果设置该参数就不会在hadoop运行了,一旦设置这个参数那HADOOP_CONF_DIR 和HADOOP_HOME两个参数就自动失效了。
MAHOUT_LOCAL is not set, so we don’t add HADOOP_CONF_DIR to classpath.
no HADOOP_HOME set , running locally
 
 
 
4、查看聚类分析结果,结果会在根目录建立output新文件夹,如下图表示mahout配置正确且运行正常:
 

 

 

 

好了,先到这,下次再深入研究。

 : http://www.ha97.com/5803.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值