Mahout 是机器学习和数据挖掘的一个分布式框架,区别于其他的开源数据挖掘软件,它是基于hadoop之上的; 所以Mahout的优势就是hadoop的优势。官网http://mahout.apache.org/ 上说的Scalable就是指hadoop的可扩展性。
Mahout用map-reduce实现了部分数据挖掘算法,解决了并行挖掘的问题。这里说的“解决”是一个初步的概念,很多算法由于各种原因是无法用map-reduce并行实现的。
Supported Algorithms
Classification
Logistic Regression (SGD)
Support Vector Machines (SVM)
Clustering
Pattern Mining
Dimension reduction
Singular Value Decomposition and other Dimension Reduction Techniques
Stochastic Singular Value Decomposition with PCA workflow
Independent Component Analysis
Gaussian Discriminative Analysis
Recommenders / Collaborative Filtering
Non-distributed recommenders ("Taste")
Distributed Item-Based Collaborative Filtering
Collaborative Filtering using a parallel matrix factorization
Install and use
下载Mahout(http://www.apache.org/dyn/closer.cgi/mahout/ ), 解压;
在MAHOUT_HOME/bin目录下,在mahout中添加:
export JAVA_HOME=XXXX
export HADOOP_HOME=XXXX
export HADOOP_CONF_DIR=XXXX
HADOOP_CONF_DIR如果没设置,会默认为HADOOP_HOME/conf
编译:MAHOUT_HOME目录下,执行mvn clean && mvn compile && mvn -DskipTests install
好了, 提示SUCCESS则OK
how to use
在MAHOUT_HOME/bin目录下,执行./mahout --help 可以看到mahout目前拥有的算法
也可以在MAHOUT_HOME/src/conf/driver.classes.props文件中查看各个算法的入口,如果要添加新的算法,也可以在这个文件中注册。
算法的执行:
例如执行贝叶斯分类 (训练过程)
MAHOUT_HOME/bin目录下 执行./mahout trainclassifier -h 查看参数
reference
参考https://cwiki.apache.org/MAHOUT/quickstart.html
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于Hadoop的机器学习开源项目 - Python技术站