您好,登錄后才能下訂單哦!
一、Mahout簡(jiǎn)介
Mahout 是 Apache Software Foundation(ASF) 旗下的一個(gè)開(kāi)源項(xiàng)目,提供一些可擴(kuò)展的機(jī)器學(xué)習(xí)領(lǐng)域經(jīng)典算法的實(shí)現(xiàn),旨在幫助開(kāi)發(fā)人員更加方便快捷地創(chuàng)建智能應(yīng)用程序。Apache Mahout項(xiàng)目已經(jīng)發(fā)展到了它的第三個(gè)年頭,目前已經(jīng)有了三個(gè)公共發(fā)行版本。Mahout包含許多實(shí)現(xiàn),包括集群、分類、推薦過(guò)濾、頻繁子項(xiàng)挖掘。此外,通過(guò)使用 Apache Hadoop 庫(kù),Mahout 可以有效地?cái)U(kuò)展到云中。
(就是他,騎在象頭上的那個(gè)Mahout)
在Mahout實(shí)現(xiàn)的機(jī)器學(xué)習(xí)算法:
算法類 | 算法名 | 中文名 |
分類算法 | Logistic Regression | 邏輯回歸 |
Bayesian | 貝葉斯 | |
SVM | 支持向量機(jī) | |
Perceptron | 感知器算法 | |
Neural Network | 神經(jīng)網(wǎng)絡(luò) | |
Random Forests | 隨機(jī)森林 | |
Restricted Boltzmann Machines | 有限波爾茲曼機(jī) | |
聚類算法 | Canopy Clustering | Canopy聚類 |
K-means Clustering | K均值算法 | |
Fuzzy K-means | 模糊K均值 | |
Expectation Maximization | EM聚類(期望最大化聚類) | |
Mean Shift Clustering | 均值漂移聚類 | |
Hierarchical Clustering | 層次聚類 | |
Dirichlet Process Clustering | 狄里克雷過(guò)程聚類 | |
Latent Dirichlet Allocation | LDA聚類 | |
Spectral Clustering | 譜聚類 | |
關(guān)聯(lián)規(guī)則挖掘 | Parallel FP Growth Algorithm | 并行FP Growth算法 |
回歸 | Locally Weighted Linear Regression | 局部加權(quán)線性回歸 |
降維/維約簡(jiǎn) | Singular Value Decomposition | 奇異值分解 |
Principal Components Analysis | 主成分分析 | |
Independent Component Analysis | 獨(dú)立成分分析 | |
Gaussian Discriminative Analysis | 高斯判別分析 | |
進(jìn)化算法 | 并行化了Watchmaker框架 | |
推薦/協(xié)同過(guò)濾 | Non-distributed recommenders | Taste(UserCF, ItemCF, SlopeOne) |
Distributed Recommenders | ItemCF | |
向量相似度計(jì)算 | RowSimilarityJob | 計(jì)算列間相似度 |
VectorDistanceJob | 計(jì)算向量間距離 | |
非Map-Reduce算法 | Hidden Markov Models | 隱馬爾科夫模型 |
集合方法擴(kuò)展 | Collections | 擴(kuò)展了java的Collections類 |
方法一、Mahout安裝、配置
一、下載Mahout
http://archive.apache.org/dist/mahout/
二、解壓
tar -zxvf mahout-distribution-0.9.tar.gz
三、配置環(huán)境變量
3.1、配置Mahout環(huán)境變量
# set mahout environment
export MAHOUT_HOME=/home/yujianxin/mahout/mahout-distribution-0.9
export MAHOUT_CONF_DIR=$MAHOUT_HOME/conf
export PATH=$MAHOUT_HOME/conf:$MAHOUT_HOME/bin:$PATH
3.2、配置Mahout所需的Hadoop環(huán)境變量
# set hadoop environment
export HADOOP_HOME=/home/yujianxin/hadoop/hadoop-1.1.2
export HADOOP_CONF_DIR=$HADOOP_HOME/conf
export PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_HOME_WARN_SUPPRESS=not_null
四、驗(yàn)證Mahout是否安裝成功
執(zhí)行命令mahout。若列出一些算法,則成功,如圖:
五、使用Mahout 之入門級(jí)使用
5.1、啟動(dòng)Hadoop
5.2、下載測(cè)試數(shù)據(jù)
http://archive.ics.uci.edu/ml/databases/synthetic_control/鏈接中的synthetic_control.data
5.3、上傳測(cè)試數(shù)據(jù)
hadoop fs -put synthetic_control.data /user/root/testdata
5.4 使用Mahout中的kmeans聚類算法,執(zhí)行命令:
mahout -core org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
花費(fèi)9分鐘左右完成聚類 。
5.5 查看聚類結(jié)果
執(zhí)行hadoop fs -ls /user/root/output,查看聚類結(jié)果。
Mahout是Hadoop的一種高級(jí)應(yīng)用。運(yùn)行Mahout需要提前安裝好Hadoop。Hadoop的安裝網(wǎng)上很多,并不復(fù)雜,這里不再講述,接下來(lái)闡述怎么安裝Mahout。
1:下載二進(jìn)制解壓安裝。
到http://labs.renren.com/apache-mirror/mahout/0.7下載,我選擇下載二進(jìn)制包,直接解壓及可。
hadoop@ubuntu:~$ tar -zxvf mahout-distribution-0.7.tar.gz
2:配置環(huán)境變量:在/etc/profile,/home/hadoop/.bashrc中添加如下紅色信息
#set java environment
MAHOUT_HOME=/home/hadoop/mahout-distribution-0.7
PIG_HOME=/home/hadoop/pig-0.9.2
HBASE_HOME=/home/hadoop/hbase-0.94.3
HIVE_HOME=/home/hadoop/hive-0.9.0
HADOOP_HOME=/home/hadoop/hadoop-1.1.1
JAVA_HOME=/home/hadoop/jdk1.7.0
PATH=$JAVA_HOME/bin:$PIG_HOME/bin:$MAHOUT_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/conf:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$HBASE_HOME/lib:$MAHOUT_HOME/lib:$PIG_HOME/lib:$HIVE_HOME/lib:$JAVA_HOME/lib/tools.jar
export MAHOUT_HOME
export PIG_HOME
export HBASE_HOME
export HADOOP_HOME
export JAVA_HOME
export HIVE_HOME
export PATH
export CLASSPATH
3:?jiǎn)?dòng)hadoop,也可以用偽分布式來(lái)測(cè)試
4:mahout --help #檢查Mahout是否安裝完好,看是否列出了一些算法
5:mahout使用準(zhǔn)備
a.下載一個(gè)文件synthetic_control.data,下載地址http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data,并把這個(gè)文件放在$MAHOUT_HOME目錄下。
b.啟動(dòng)Hadoop:$HADOOP_HOME/bin/start-all.sh
c.創(chuàng)建測(cè)試目錄testdata,并把數(shù)據(jù)導(dǎo)入到這個(gè)tastdata目錄中(這里的目錄的名字只能是testdata)
hadoop@ubuntu:~/$ hadoop fs -mkdir testdata # hadoop@ubuntu:~/$ hadoop fs -put /home/hadoop/mahout-distribution-0.7/synthetic_control.data testdata
d.使用kmeans算法(這會(huì)運(yùn)行幾分鐘左右)
hadoop@ubuntu:~/$ hadoop jar /home/hadoop/mahout-distribution-0.7/mahout-examples-0.7-job.jar org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
e.查看結(jié)果
hadoop@ubuntu:~/$ hadoop fs -lsr output
如果看到以下結(jié)果那么算法運(yùn)行成功,你的安裝也就成功了。
clusteredPoints clusters-0 clusters-1 clusters-10 clusters-2 clusters-3 clusters-4 clusters-5 clusters-6 clusters-7 clusters-8 clusters-9 data
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。