首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >naivebayes Mahout 0.7

naivebayes Mahout 0.7
EN

Stack Overflow用户
提问于 2012-10-16 15:45:28
回答 1查看 1.5K关注 0票数 2

我正在做推文的情感分析。我使用了mahout朴素贝叶斯分类器,我创建了一个目录" data ".Inside "data“我创建了另外三个目录,分别命名为" positive ","negative"," uncertain "..Then我在每个正的,负的和不确定的数据目录上保存了151个文件(总计151Mb)我将数据目录保存在hdfs..below中是我运行的一组命令来生成模型和标签索引。

代码语言:javascript
复制
bin/mahout seqdirectory -i ${WORK_DIR}/data -o ${WORK_DIR}/data-seq

bin/mahout seq2sparse -i ${WORK_DIR}/data-seq -o ${WORK_DIR}/data-vectors -lnorm -nv -wttfidf

bin/mahout split -i ${WORK_DIR}/data-vectors/tfidf-vectors --trainingOutput ${WORK_DIR}/data-train-vectors --testOutput ${WORK_DIR}/data-test-vectors --randomSelectionPct 40 --overwrite --sequenceFiles -xm sequential

bin/mahout trainnb -i ${WORK_DIR}/data-train-vectors -el -o ${WORK_DIR}/model -li ${WORK_DIR}/labelindex -ow $c

在使用"testnb“命令对相同的数据集进行测试后,我得到了混淆矩阵,如下所示:

代码语言:javascript
复制
 bin/mahout testnb -i ${WORK_DIR}/data-train-vectors -m ${WORK_DIR}/model -l ${WORK_DIR}/labelindex -ow -o ${WORK_DIR}/data-testing $c

Confusion Matrix
-------------------------------------------------------
a           b        c       <--Classified as
151         0        0   |  151         a     = negative
0           151      0   |  151         b     = positive
0           0       151  |  151         c     = uncertain

然后我以同样的方式创建了一个目录"data2“,并将一些随机数据(这是训练数据的子集(30个文件(每个文件总大小为30MB) )放在其中的正、负、不确定目录中。我使用下面给出的"seq2sparse”命令创建了一个向量:-

bin/mahout seq目录-i ${WORK_DIR}/data2 -o ${WORK_DIR}/data2-seq

bin/mahout seq2sparse -i ${WORK_DIR}/data2- -o ${WORK_DIR}/data2-vectors -lnorm -nv -wttfidf

在使用由前一组数据创建的model/lablelindex运行"testnb“时,使用下面给出的命令:-

代码语言:javascript
复制
bin/mahout testnb -i ${WORK_DIR}/data2-vectors/tfidf-vectors/part-r-00000 -m ${WORK_DIR}/model -l ${WORK_DIR}/labelindex -ow -o ${WORK_DIR}/data2-testing $c

我得到了像这样的混淆矩阵。

代码语言:javascript
复制
Confusion Matrix
-------------------------------------------------------
a       b       c           <--Classified as
0      30       0       |  30       a     = negative
0      30       0       |  30       b     = positive
0      30       0       |  30       c     = uncertain

谁能告诉我为什么这是coming.Am,我使用正确的方法来测试模型,或者这是mahout 0.7中的错误。如果这不是正确的方法,请建议一种解决方法。

EN

回答 1

Stack Overflow用户

发布于 2012-10-24 21:47:13

你能试试这个吗:

代码语言:javascript
复制
bin/mahout testnb -i ${WORK_DIR}/data2-vectors/tfidf-vectors -m ${WORK_DIR}/model -l ${WORK_DIR}/labelindex -ow -o ${WORK_DIR}/data2-testing $c

(去掉"part-r-00000")

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12909818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档