`
backsnow
  • 浏览: 130967 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

mahout安装配置

 
阅读更多

http://log.medcl.net/item/2011/02/mahout_install/

 

Apache Mahout 是一个机器学习的框架,构建在hadoop上支持大规模数据集的处理,目前最新版本 0.4。

Apache Mahout 简介
http://www.ibm.com/developerworks/cn/java/j-mahout/

基于 Apache Mahout 构建社会化推荐引擎
http://www.ibm.com/developerworks/cn/java/j-lo-mahout/

Taste:
http://taste.sourceforge.net

Mahout currently has

Collaborative Filtering User and Item based recommenders K-Means, Fuzzy K-Means clustering Mean Shift clustering Dirichlet process clustering Latent Dirichlet Allocation Singular value decomposition Parallel Frequent Pattern mining Complementary Naive Bayes classifier Random forest decision tree based classifier High performance java collections (previously colt collections) A vibrant community and many more cool stuff to come by this summer thanks to Google summer of code

mahout安装(centos)

cd /usr/local
sudo mkdir mahout
sudo svn co http://svn.apache.org/repos/asf/mahout/trunk mahout

安装maven3
cd /tmp
sudo wget http://apache.etoak.com//maven/binaries/apache-maven-3.0.2-bin.tar.gz
tar vxzf apache-maven-3.0.2-bin.tar.gz
sudo mv apache-maven-3.0.2 /usr/local/maven

vi ~/.bashrc

添加如下两行
export M3_HOME=/usr/local/maven
export PATH=${M3_HOME}/bin:${PATH}

执行 . ~/.bashrc,使设置生效[或者先logout,之后再login]
查看maven版本,看是否安装成功
mvn -version

安装mahout
cd /usr/local/mahout
sudo mvn install

如果报JAVA_HOME is not set,如果是用sudo,检查root的java设置
vi /etc/profile
export JAVA_HOME=/usr/local/jdk1.6/
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
执行. /etc/profile 再执行mvn clean install -DskipTests=true //skip tests,fast build

数据准备
cd /tmp
wget http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data

hadoop fs -mkdir testdata
hadoop fs -put synthetic_control.data testdata
hadoop fs -lsr testdata

如果报HADOOP_HOME环境变量没有设置
sudo vi /etc/profile,添加
export HADOOP_HOME=/usr/lib/hadoop-0.20/

hadoop集群来执行聚类算法
cd /usr/local/mahout

bin/mahout org.apache.mahout.clustering.syntheticcontrol.canopy.Job
bin/mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
bin/mahout org.apache.mahout.clustering.syntheticcontrol.fuzzykmeans.Job
bin/mahout org.apache.mahout.clustering.syntheticcontrol.dirichlet.Job
bin/mahout org.apache.mahout.clustering.syntheticcontrol.meanshift.Job

如果执行成功,在hdfs的/user/dev/output里面应该可以看到输出结果
GroupLens Data Sets
http://www.grouplens.org/node/12 ,包括MovieLens Data Sets、Wikilens Data Set、Book-Crossing Data Set、Jester Joke Data Set、EachMovie Data Set

下载1m的rating数据

mkdir 1m_rating
wget http://www.grouplens.org/system/files/million-ml-data.tar__0.gz
tar vxzf million-ml-data.tar__0.gz
rm million-ml-data.tar__0.gz

拷贝数据到grouplens代码的目录,我们先本地测试下mahout的威力
cp *.dat /usr/local/mahout/examples/src/main/java/org/apache/mahout/cf/taste/example/grouplens

cd /usr/local/mahout/examples/
执行
mvn -q exec:java -Dexec.mainClass="org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluatorRunner"
如 果不想做上面拷贝文件的操作,则指定输入文件位置就行,如下:
mvn -q exec:java -Dexec.mainClass="org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluatorRunner" -Dexec.args="-i input——file"
上传到hdfs
hadoop fs -copyFromLocal 1m_rating/  mahout_input/1mrating

补充

mahout,svn地址:https://svn.apache.org/repos/asf/mahout/trunk

https://cwiki.apache.org/MAHOUT/creating-vectors-from-text.html

将lucene索引数据转换成文本向量,指定索引目录~/index 字段名称Name,索引临时输出文件~/dict.txt ,最终结果输出文件路径output.txt,并限制最大向量数目50
$/usr/local/mahout/bin/mahout lucene.vector --dir ~/index --field Name --dictOut ~/dict.txt --output output.txt --max 50 --norm 2

查看下dict的文件内容
$head -n dict.txt
10225
#term doc freq idx
Michale 67 0
medcl 1 1
jack 3 2
lopoo 2 3
003 2 4

由上面的数据可见,dict.txt里面是我们的指定的Name字段的索引信息

使用taste-web来快速构建基于grouplens数据集的电影推荐系统

$cd taste-web/
拷贝grouplens的推荐包到taste-web的lib目录下,如果jar包还没有,转到目录执行 mvn install即可
$ cp examples/target/grouplens.jar taste-web/lib/

taste-web]$ vi recommender.properties
取消掉这一行的注释,配置使用grouplens的 recommender,如下:
recommender.class=org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommender

启动jetty,如果一切正常,访问8080端口,可以看到有这么个webservice,http://platformb:8080 /RecommenderService.jws
mvn jetty:run-war

执行如下命令,查看推荐结果:http://platformb:8080/RecommenderServlet?userID=1
看截 图1,2,结果的第一列表示推荐的评分,第二项为电影的id,简单几步就完成了一个推荐功能,是不是很强悍啊。

彪悍的配置文件们

 

分享到:
评论

相关推荐

    mahout安装图文版

    ### Mahout 安装与配置详解 #### 一、Mahout 概述 Mahout 是一个高度可扩展的机器学习库,特别适用于大数据环境。它提供了多种数据挖掘算法的实现,如分类、聚类、推荐系统等,并且这些算法可以在 Hadoop 分布式...

    Mahout教程内含源码以及说明书可以自己运行复现.zip

    Mahout 安装配置** 安装Mahout首先需要准备Hadoop环境,因为Mahout是构建在Hadoop之上的。你需要下载并安装Hadoop,配置Hadoop环境变量,并确保集群运行正常。接着,从Apache官方网站获取Mahout的最新版本,解压后...

    [Mahout] Windows下Mahout单机安装

    Apache Mahout的Windows单机安装涉及了Java环境、Maven的配置和源码的编译。通过以上步骤,开发者可以在本地环境中快速上手Mahout,进行机器学习实验和开发。由于Mahout是基于Hadoop设计的,因此对于大数据处理和...

    9.Hadoop入门进阶课程_第9周_Mahout介绍、安装与应用案例.pdf

    通过上述步骤,不仅可以顺利完成Mahout的安装与配置,还能够深入了解Mahout的基本原理及其在实际项目中的应用。Mahout作为一款强大的机器学习工具,对于希望在大数据环境下实施智能分析的应用来说,具有不可替代的...

    Learning Apache Mahout

    - Mahout的安装指南:详细介绍了如何在不同的操作系统上安装Mahout,以及如何配置相关环境,确保Mahout可以顺利运行。 - 数据预处理:在进行机器学习之前,数据预处理是一个重要的步骤,Mahout提供了相应的工具来...

    mahout所需jar包

    1. **配置环境**:确保已经安装了Java和Hadoop,并且设置了相应的环境变量。 2. **下载Mahout**:解压提供的`mahout-distribution-0.5`压缩包到本地目录。 3. **创建输入数据**:准备要进行聚类的数据,通常是以CSV...

    maven_mahout_template-mahout-0.8

    它包含了配置文件、依赖管理和项目结构,使得开发者可以快速地搭建起一个基于Mahout的项目环境,进行机器学习的实验和开发。 在项目结构上,`maven_mahout_template-mahout-0.8`可能包括以下关键组件: 1. `pom....

    如何成功运行Apache Mahout的Taste Webapp-Mahout推荐教程-Maven3.0.5-JDK1.6-Mahout0.5

    3. Mahout的安装与配置 要成功运行Mahout Taste Webapp,需要完成一系列的安装和配置步骤。首先,从Apache官方网站或SVN代码库下载Mahout的0.5版本源码包,然后使用Maven命令编译并安装相关模块到本地仓库中。需要...

    Mahout tutorial

    为了使用Mahout,用户需要在自己的环境中进行一系列预安装设置。首先,需要安装Java,因为它是Mahout项目的主要开发语言。在安装Java之后,需要下载并安装Hadoop,这是一个用于存储和处理大型数据集的框架。为了使...

    Mahout最新基础依赖包.rar

    为了在 Eclipse 中使用 Mahout,你需要安装 Hadoop 和 Mahout 相关的插件,或者手动配置项目以包含 "Mahout 最新基础依赖包" 中的 JAR 文件。这样可以避免因缺少依赖而导致的编译错误或运行时问题。 **使用步骤** ...

    MAHOUT实战(中文版)

    4. **安装与配置**:详述如何在本地或分布式环境中设置Mahout,包括依赖库的安装、Hadoop集群的配置以及与其他大数据工具(如Hive和Pig)的集成。 5. **数据预处理**:在应用机器学习算法之前,数据清洗和转换是...

    mahout1.0编译包

    4. **配置文件**:如`.xml`文件,可能包含Hadoop和Mahout的配置信息。 5. **示例项目**:演示如何在Hadoop 2环境下运行Mahout的实例。 6. **构建脚本**:如`build.xml`(Ant)或`pom.xml`(Maven),用于构建和测试...

    大数据Mahout实践指南

    接着,将深入讲解Mahout的架构、工作原理以及安装配置方法,使读者能够搭建起自己的Mahout开发环境。 在机器学习部分,书中涵盖了多种Mahout支持的算法,如协同过滤、聚类、分类和回归等。协同过滤是推荐系统的核心...

    Mahout源码

    每个模块对应于一个Maven子项目,可以通过添加相应的依赖到自己的Maven配置中来集成Mahout的功能。例如,如果你需要使用推荐系统,只需在`pom.xml`文件中添加相关的Mahout依赖即可。 **3. Mahout 与 Hadoop** ...

    hadoop2.7.3+mahout0.9问题集

    2. **环境配置**:在安装和配置过程中,确保所有依赖项正确设置。这包括JDK、Hadoop、Mahout的路径设置,以及Hadoop集群的配置文件(如core-site.xml、hdfs-site.xml和mapred-site.xml)中的相关参数。 3. **编译与...

    mahout环境搭建

    最后,如果你打算在 Eclipse 中开发基于 Mahout 的应用程序,还需要安装 Eclipse 插件(如 m2eclipse)来支持 Maven 项目,并配置 Hadoop 和 Mahout 的相关路径。这将使得在 IDE 中编写、编译和调试 Mahout 代码变得...

    Apache Mahout Cookbook

    本书不仅涵盖了安装与配置Mahout所需的环境,还提供了丰富的示例代码,展示了如何利用Mahout进行推荐系统、分类、聚类等数据挖掘任务。 ### Mahout并非难事 章节开篇便引入了安装Java和Hadoop的基本步骤,强调了这...

Global site tag (gtag.js) - Google Analytics