hadoop下mahout bayes(贝叶斯)算法研究(1)

简介: http://blog.csdn.net/zc55803903/article/details/79331261.算法简介朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率哪个最大,就认为此待分类项属于哪个类别。

http://blog.csdn.net/zc55803903/article/details/7933126

1.算法简介

朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率哪个最大,就认为此待分类项属于哪个类别。

这二十个新闻组数据集合是收集大约20,000新闻组文档,均匀的分布在20个不同的集合。这20个新闻组集合采集最近流行的数据集合到文本程序中作为实验,根据机器学习技术。例如文本分类,文本聚集。我们将使用MahoutBayes 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的大小有300mb

可以通过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.输出结果参考:

目录
相关文章
|
13天前
|
人工智能 自然语言处理 算法
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-07(下)
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-07(下)
18 2
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-07(下)
|
13天前
|
机器学习/深度学习 人工智能 算法
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-05(下)
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-05(下)
18 1
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-05(下)
|
6天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于贝叶斯优化CNN-LSTM网络的数据分类识别算法matlab仿真
本项目展示了基于贝叶斯优化(BO)的CNN-LSTM网络在数据分类中的应用。通过MATLAB 2022a实现,优化前后效果对比明显。核心代码附带中文注释和操作视频,涵盖BO、CNN、LSTM理论,特别是BO优化CNN-LSTM网络的batchsize和学习率,显著提升模型性能。
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-19
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-19
40 2
|
13天前
|
存储 人工智能 算法
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-13(上)
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-13(上)
26 2
|
13天前
|
传感器 自然语言处理 安全
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-07(上)
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-07(上)
38 2
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-16
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-16
22 1
|
13天前
|
机器学习/深度学习 人工智能 算法
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-15
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-15
39 1
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-14
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-14
27 1
|
13天前
|
机器学习/深度学习 数据采集 算法
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-11
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-11
34 1