当前位置: 首页 > 知识库问答 >
问题:

WEKA实例预测和混淆矩阵结果之间的区别?

费子濯
2023-03-14

我对数据挖掘并不陌生,所以我完全被WEKA结果难倒了。希望得到一些帮助。提前谢谢!

我有一个具有二分类(S, H)的数值向量数据集。我在省略交叉验证中训练了一个朴素贝叶斯模型(尽管方法真的无关紧要)。结果如下:

    === Predictions on test data ===
 inst#     actual  predicted error distribution
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        2:S   +   0,*1
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *1,0
     1        1:H        1:H       *0.997,0.003
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1 
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1 
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        1:H   +   *1,0
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        2:S       0,*1
     1        2:S        1:H   +   *1,0

=== Stratified cross-validation ===
=== Summary ===

Total Number of Instances               66

=== Confusion Matrix ===

  a  b   <-- classified as
 14  1 |  a = H
  2 49 |  b = S

如您所见,输出和混淆矩阵都有三个错误。然后,我使用具有相同属性和相同两个类的独立数据集重新评估模型。结果如下:

=== Re-evaluation on test set ===

User supplied test set
Relation:     FCBC_New.TagProt
Instances:     unknown (yet). Reading incrementally
Attributes:   355

=== Predictions on user test set ===

 inst#     actual  predicted error distribution
     1        1:S        2:H   +   0,*1
     2        1:S        1:S       *1,0
     3        1:S        2:H   +   0,*1
     4        2:H        1:S   +   *1,0
     5        2:H        2:H       0,*1
     6        1:S        2:H   +   0,*1
     7        1:S        2:H   +   0,*1
     8        2:H        2:H       0,*1
     9        1:S        1:S       *1,0
    10        1:S        2:H   +   0,*1
    11        1:S        2:H   +   0,*1
    12        2:H        1:S   +   *1,0
    13        2:H        2:H       0,*1
    14        1:S        2:H   +   0,*1
    15        1:S        2:H   +   0,*1
    16        1:S        2:H   +   0,*1
    17        2:H        2:H       0,*1
    18        2:H        2:H       0,*1
    19        1:S        2:H   +   0,*1
    20        1:S        2:H   +   0,*1
    21        1:S        2:H   +   0,*1
    22        1:S        1:S       *1,0
    23        1:S        2:H   +   0,*1
    24        1:S        2:H   +   0,*1
    25        2:H        1:S   +   *1,0
    26        1:S        2:H   +   0,*1
    27        1:S        1:S       *1,0
    28        1:S        2:H   +   0,*1
    29        1:S        2:H   +   0,*1
    30        1:S        2:H   +   0,*1
    31        1:S        2:H   +   0,*1
    32        1:S        2:H   +   0,*1
    33        1:S        2:H   +   0,*1
    34        1:S        1:S       *1,0
    35        2:H        1:S   +   *1,0
    36        1:S        2:H   +   0,*1
    37        1:S        1:S       *1,0
    38        1:S        1:S       *1,0
    39        2:H        1:S   +   *1,0
    40        1:S        2:H   +   0,*1
    41        1:S        2:H   +   0,*1
    42        1:S        2:H   +   0,*1
    43        1:S        2:H   +   0,*1
    44        1:S        2:H   +   0,*1
    45        1:S        2:H   +   0,*1
    46        1:S        2:H   +   0,*1
    47        2:H        1:S   +   *1,0
    48        1:S        2:H   +   0,*1
    49        2:H        1:S   +   *1,0
    50        2:H        1:S   +   *1,0
    51        1:S        2:H   +   0,*1
    52        1:S        2:H   +   0,*1
    53        2:H        1:S   +   *1,0
    54        1:S        2:H   +   0,*1
    55        1:S        2:H   +   0,*1
    56        1:S        2:H   +   0,*1

=== Summary ===

Correctly Classified Instances          44               78.5714 %
Incorrectly Classified Instances        12               21.4286 %
Kappa statistic                          0.4545
Mean absolute error                      0.2143
Root mean squared error                  0.4629
Coverage of cases (0.95 level)          78.5714 %
Total Number of Instances               56

=== Detailed Accuracy By Class ===

                 TP Rate  FP Rate  Precision  Recall   F-Measure  MCC      ROC Area  PRC Area  Class
                 0.643    0.167    0.563      0.643    0.600      0.456    0.828     0.566     H
                 0.833    0.357    0.875      0.833    0.854      0.456    0.804     0.891     S
Weighted Avg.    0.786    0.310    0.797      0.786    0.790      0.456    0.810     0.810

=== Confusion Matrix ===

  a  b   <-- classified as
  9  5 |  a = H
  7 35 |  b = S

这就是我的问题所在。输出清楚地显示有很多错误。事实上,有44个。另一方面,混淆矩阵和结果摘要表明有12个错误。现在,如果预测类颠倒,混淆矩阵将为真。所以现在,我查看分数的分布,我看到在交叉验证结果中,逗号之前的值代表H类,第二个值是S类(因此值1,0表示H预测)。然而,在测试结果中,这些被颠倒,值1,0表示S预测。所以,如果我采用分数分布,混淆矩阵是正确的。如果我采用预测(H或S),混淆矩阵是错误的。我尝试将所有测试文件类更改为H或S。这不会改变输出结果或混淆矩阵总数:在混淆矩阵中,16个实例总是被预测为a(H),40个实例总是b(S),即使纯文本输出实际上是16 b(S)和40 a(H)。有什么想法吗?这一定是一件简单的事情,但我完全不知所措...

共有1个答案

方承弼
2023-03-14

如果你能看看这个关于实例分类的weka教程会更好http://preciselyconcise.com/apis_and_installations/training_a_weka_classifier_in_java.php希望它能有所帮助。本教程还涉及二分类(正、负)。

 类似资料:
  • 如何分析Weka中的混淆矩阵,以获得准确度?我们知道,由于数据集不平衡,精度不准确。混淆矩阵如何“确认”准确性? 示例:a)准确率96.1728% b) 准确率:96.8% 等...

  • 我想在weka中进行分类。我正在使用一些方法(随机树、随机森林、决策表、随机子空间...),但它们会给出如下结果。 然而,我希望结果作为准确度和混淆矩阵。我怎样才能得到这样的结果? 注意:当我使用小数据集时,它会以混淆矩阵的形式给出结果。它可以与数据集的大小相关吗?

  • 原始数据集如上图所示。CO(ppm)是因变量。 对于上面显示的二进制分类问题,我试图获得混淆矩阵。我有由y_pred和y_test生成的数组,数据类型不匹配,因为y_pred输出的值范围为0到1(sigmoid激活函数),而y_test的数组仅由0和1组成。 如果有人能帮我找到一种绘制混淆矩阵的方法,我将不胜感激。 非常感谢。

  • 对不起,我是新来WEKA,刚刚学习。 在我的决策树(J48)分类器输出中,有一个混淆矩阵: 我如何读取这个矩阵?

  • 我一直在使用Weka的J48决策树将RSS提要中的关键字频率分类为目标类别。我想我可能在协调生成的决策树与报告的正确分类的实例数以及混淆矩阵中的实例数方面存在问题。 例如,我的一个. arff文件包含以下数据摘录: 以此类推:总共有64个关键字(列)和570行,其中每一行都包含一天提要中关键字的频率。在这种情况下,10天内有57条feed,总共有570条记录需要分类。每个关键字都以代理项编号作为前