hadoop下mahout bayes(贝叶斯)算法研究(1)
来源:互联网 发布:mindmanager注册机mac 编辑:程序博客网 时间:2024/05/22 14:29
1.算法简介
朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率哪个最大,就认为此待分类项属于哪个类别。
这二十个新闻组数据集合是收集大约20,000新闻组文档,均匀的分布在20个不同的集合。这20个新闻组集合采集最近流行的数据集合到文本程序中作为实验,根据机器学习技术。例如文本分类,文本聚集。我们将使用Mahout的Bayes Classifier创造一个模型,它将一个新文档分类到这20个新闻组集合范例演示
2.环境要求
hadoop已经开启
mahout已经安装
3.数据的准备
下载20news-bydate.tar.gz数据包并解压缩
http://people.csail.mit.edu/jrennie/20Newsgroups/20news-bydate.tar.gz
例如:我已经把数据包放在/root/bayes下了,所以以下的命令都是在这个目录下的
原以为这么20个文件是不可以一起输出的,但事实证明是可以的
4.算法流程
5.数据输入与输出准备过程
5.1生成input的数据
mahout org.apache.mahout.classifier.bayes.PrepareTwentyNewsgroups -p/root/bayes/20news-bydate-train -o /root/bayesoutput/train -a org.apache.mahout.vectorizer.DefaultAnalyzer -c UTF-8
5.2生成test的数据
mahout org.apache.mahout.classifier.bayes.PrepareTwentyNewsgroups -p/root/bayes/20news-bydate-test -o /root/bayesoutput/test -a org.apache.mahout.vectorizer.DefaultAnalyzer -c UTF-8
6.在Hadoop中执行命令与过程
上传文件到HDFS
hadoop fs -put /root/bayesoutput/train/ bayes
7.算法执行命令与过程
下面将在hadoop运行4个map reduce工作,为了Train这个分器并且将运行一段时间如果在只有一个节点的机器上
mahout trainclassifier -i /bayes/train/ -o newsmodel -type bayes -ng 3 -source hdfs(由于hadoop集群未开,这条命令暂时没用)
mahout trainclassifier -i /root/bayesoutput/train -o newsmodel -type bayes -ng 3 –source hdfs(本地测试)
由于案例数据较多,跑了将近30分钟,新的newmodel的大小有300多mb
可以通过http://localhost:50030/jobtracker.jsp来监控job的状态
在input目录运行Test分类器
mahout testclassifier -m newsmodel -d /root/bayesoutput/test/ -type bayes -ng 3 -source hdfs -method mapreduce
8.输出结果参考:
原文:http://blog.csdn.net/zc55803903/article/details/7933126
- hadoop下mahout bayes(贝叶斯)算法研究(1)
- hadoop下mahout bayes(贝叶斯)算法研究(1)
- hadoop下mahout bayes(贝叶斯)算法研究(1)
- hadoop下mahout bayes(贝叶斯)算法研究(1)
- hadoop下mahout bayes(贝叶斯)算法研究(2)
- hadoop下mahout bayes(贝叶斯)算法研究(2)
- hadoop下mahout kmeans算法研究(1)
- hadoop下mahout kmeans算法研究(2)
- Mahout之bayes算法学习(一)
- Mahout之bayes算法学习(二)
- Mahout之bayes算法学习(三)
- Mahout之bayes算法学习(四)
- hadoop学习-mahout-Bayes分类算法示例程序
- hadoop学习-mahout-Bayes分类算法示例程序
- Mahout中分布式bayes实现(转)
- mahout测试naive Bayes算法
- Naive Bayes算法(朴素贝叶斯算法)
- 朴素贝叶斯(Bayes)分类器算法
- ZOJ 3804 YY's Minions
- Android View杂谈
- 函数指针
- hdu 5185 Equation && BestCoder Round #32
- 语言与模式-19策略模式
- hadoop下mahout bayes(贝叶斯)算法研究(1)
- 应用程序开发第六天多线程(国嵌)
- 自学java语法笔记总结
- MySql学习 - 查询/子查询/连接查询/联合查询
- 管理员必备的20个Linux系统监控工具
- HDU 3746 Cyclic Nacklace(KMP)
- 2、C#编程基础(四)——面向对象程序设计初步
- 应用程序开发第七天网络编程(国嵌笔记)
- 语言与模式-20中介者模式