`

用mahout进行20news的分类

 
阅读更多

首先,下载数据集20news-bydate.tar.gz,在$MAHOUT_HOME下的 examples/bin/下建立work文件夹(mkdir /home/hadoop/mahout-distribution-0.4 /examples/bin/work/)将下载的数据集解压tar 20news-bydate.tar.gz,之后放到work文件夹下。

其次,产生Input数据集,即对训练数据集进行预处理,数据准备阶段,将各类中的数据进行分词处理,去掉标点及副词等,同时将各类中的文件读入到一个大文件中,使得每类最后只有一个文件包含起初所有的文件,mahout下处理的文件必须是SequenceFile格式的,还需要把txtfile转换成 sequenceFile。等处理完看结果时就明白了,

命令为:mahout org.apache.mahout.classifier.bayes.PrepareTwentyNewsgroups -p /home/hadoop/mahout-distribution-0.4/examples/bin/work/20news-bydate-train  -o /home/hadoop/mahout-distribution-0.4/examples/bin/work/bayes-train-input -a org.apache.mahout.vectorizer.DefaultAnalyzer -c UTF-8

完毕后将work 下的bayes-train-input放到hadoop的分布式文件系统上的 20news-input,输入命令 hadoop dfs -put /home/hadoop/mahout-distribution-0.4/examples/bin/work/bayes-train-input 20news-input

第三,用处理好的训练数据集进行训练得出分类模型即中间结果,模型保存在分布式文件系统上,在mahout的目录下输入命令 mahout trainclassifier -i 20news-input -o newsmodel -type bayes -ng 3 -source hdfs

或者输入命令:hadoop jar $MAHOUT_HOME/mahout-examples-0.5-job.jar org.apache.mahout.classifier.bayes.TrainClassifier -i 20news-input -o newsmodel -type bayes -ng 3 -source hdfs

当然可以查看newsmodel里的内容时,先查看其里面都有什么,命令:hadoop fs -lsr /user/hadoop/newsmodel

将其导入到本地txt格式,进行查看,例如命令:mahout seqdumper -s /user/hadoop/newsmodel/trainer-tfIdf//trainer-tfIdf/part-00000 -o /home/hadoop/out/part-1

最后,用模型进行测试,输入命令:mahout testclassifier -m newsmodel -d 20news-input -type bayes -ng 3 -source hdfs  -method mapreduce

 

转自:http://hi.baidu.com/bjwyl66/blog/item/32f0820d25ecfbf2ab6457f3.html

分享到:
评论

相关推荐

    【甘道夫】通过Mahout构建贝叶斯文本分类器案例详解 -- 配套源码

    在本教程中,我们将深入探讨如何使用Apache Mahout框架构建一个贝叶斯文本分类器。Apache Mahout是一个基于Hadoop的机器学习库,它提供了一系列的算法,包括聚类、分类和协同过滤,用于大数据分析。贝叶斯分类器是...

    mahout源码

    首先,使用jieba对新闻文本进行分词,然后将分词结果转化为Mahout的向量表示,接着利用训练好的朴素贝叶斯模型进行分类。通过对大量新闻数据的处理和学习,系统能够自动识别出新闻的主题类别,提高信息检索和推荐的...

    【甘道夫】通过Mahout构建贝叶斯文本分类器案例详解--配套代码

    在本案例中,我们将深入探讨如何使用Apache Mahout框架构建一个基于贝叶斯的文本分类器。Mahout是一个开源的机器学习库,它为开发者提供了大量先进的数据挖掘和机器学习算法,包括分类、聚类和协同过滤等。贝叶斯...

    [Mahout] Windows下Mahout单机安装

    首先,你需要将数据导入到Hadoop的HDFS(如果你在Windows上安装了Hadoop),然后使用Mahout的命令行工具进行处理。这通常包括数据预处理、训练模型和生成推荐结果等步骤。 总结 Apache Mahout的Windows单机安装涉及...

    Mahout tutorial

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

    mahout所需jar包

    4. **预处理数据**:如果需要,可以使用Mahout的工具对数据进行预处理,例如规范化或归一化。 5. **运行K-Means**:使用Mahout提供的命令行接口,指定输入数据、K值(预定义的群组数量)、迭代次数和其他参数。 6. *...

    Mahout最新基础依赖包.rar

    - **分类**:使用 Mahout 进行文本分类,例如新闻分类或垃圾邮件过滤。它可以训练模型以自动将新文本分配到预定义类别中。 - **聚类**:K-means 算法是 Mahout 中常用的聚类方法,可用于将数据集划分为不同的组或簇...

    Mahout源码

    Apache Mahout是一个基于Java的开源机器学习库,它提供了丰富的算法和工具,用于构建智能应用程序,特别是推荐系统、分类和聚类。这个压缩包文件"Mahout"很可能包含了Mahout项目的源代码,允许开发者深入理解其内部...

    Apache Mahout Cookbook

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

    spring-mahout-demo

    另一方面,Apache Mahout作为一个机器学习库,为开发者提供了丰富的算法,用于推荐系统、分类和聚类等任务。当Spring与Mahout结合时,可以构建出高效且灵活的数据分析和预测应用。下面我们将深入探讨"spring-mahout-...

    Mahout in Action 2012

    这本书详细介绍了如何使用Apache Mahout进行数据挖掘和机器学习,并提供了大量的实践案例和代码示例,帮助读者快速上手Mahout,并且能够将其应用到实际的项目中去。本书不仅适合数据科学家、机器学习工程师,同样...

    MAHOUT实战(中文版)

    书中会讨论如何使用Mahout进行数据预处理,包括特征选择、标准化和归一化。 6. **模型训练与评估**:介绍如何使用Mahout训练模型,以及如何通过交叉验证和性能指标(如准确率、召回率和F1分数)来评估模型的性能。 ...

    Mahout贝叶斯分类不含标签数据

    Mahout 贝叶斯算法根据模型分类无标签数据,具体参考http://blog.csdn.net/fansy1990/article/details/37991447

    maven_mahout_template-mahout-0.8

    Mahout的目标是创建易于使用的、可扩展的、并行的机器学习库,使得开发者能够轻松地实现推荐系统、分类和聚类等复杂任务。 `maven_mahout_template-mahout-0.8`这个项目模板,是为使用Maven构建的Mahout项目提供的...

    大数据Mahout实践指南

    这本书不仅介绍了大数据的基础知识,还详细讲解了如何使用Mahout进行数据挖掘和预测分析。 在大数据领域,数据量的增长速度远远超过了传统的数据处理能力。因此,大数据技术如Hadoop和Spark等应运而生,它们能够...

    mahout 实例

    在实践中,我们可以使用Mahout的maven_mahout_template项目作为起点。这个模板项目包含了Mahout的基本配置和样例代码,适合初学者快速搭建开发环境。通过阅读和修改这些代码,学习者可以深入理解算法的工作流程,并...

Global site tag (gtag.js) - Google Analytics