【问题标题】:naivebayes Mahout 0.7naivebayes Mahout 0.7
【发布时间】:2012-10-06 06:21:20
【问题描述】:

我正在对推文进行情绪分析。 我正在使用 mahout 朴素贝叶斯分类器。我正在创建一个目录“数据”。在“数据”内部,我正在创建另外三个名为“正”、“负”、“不确定”的目录。然后我保留了 151 个文件(总共151Mb) 在这些正、负和不确定目录中的每一个上。然后我将数据目录保存在 hdfs 中。下面是我运行的一组命令来生成模型和标签索引。

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”命令对同一组数据进行测试后,我得到了混淆矩阵,如下所示:

 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 seqdirectory -i ${WORK_DIR}/data2 -o ${WORK_DIR}/data2-seq

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

使用下面给出的命令从前一组数据创建的模型/标签索引运行“testnb”:-

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

我得到这样的混淆矩阵。

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

谁能告诉我为什么会这样。我是使用正确的方法来测试模型还是 mahout 0.7 中的错误。如果不是正确的方法,请提出解决方法。

【问题讨论】:

    标签: mahout


    【解决方案1】:

    你可以试试这个:

    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”)

    【讨论】:

    • hi zhangv,我已经尝试过这个..但它也给出了相同的结果..你能给我一些测试模型的方法吗..我是否使用正确的方法来测试模型...我还在 mahout 用户邮件列表中发布了这个问题..但没有得到任何令人满意的解决方案。 permalink.gmane.org/gmane.comp.apache.mahout.user/14735
    猜你喜欢
    • 1970-01-01
    • 2013-05-07
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 2013-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多