在weka中测试没有类标签的单个实例

use*_*712 4 classification machine-learning prediction weka

这个问题已被问到,但我不明白答案所以我再次发布问题请回复.

我有一个weka模型,例如:j48我已经为我的数据集训练了该模型,现在我必须使用单个实例来测试模型,在该实例中它应该返回类标签.怎么做?

我试过这些方法:

1)当我给我的测试实例a,b,c,课堂上课时为?它显示了评估分类器的问题.train和test不兼容

2)当我列出所有的班级标签时,我把它?对于测试实例的类标签,如下所示:

@attribute class {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27}

@data
1,2,............,?
Run Code Online (Sandbox Code Playgroud)

它没有显示任何这样的结果

=== Evaluation on test set ===
=== Summary ===

Total Number of Instances                0     
Ignored Class Unknown Instances                  1     

=== Detailed Accuracy By Class ===

               TP Rate   FP Rate   Precision   Recall  F-Measure  ROC Area  Class
                 0         0          0         0         0         ?        1
                 0         0          0         0         0         ?        2
                 0         0          0         0         0         ?        3
Weighted Avg.  NaN       NaN        NaN       NaN       NaN       NaN    
Run Code Online (Sandbox Code Playgroud)

混淆矩阵为空

该怎么办?

Sen*_*try 5

鉴于来自OP的信息不完整,可能发生了以下情况:

你用过

  1. Weka的GUI选配
  2. 选择了Weka Explorer
  3. 在" 预处理"选项卡上加载了训练数据
  4. 选择了" 分类"选项卡
  5. 选择了J48分类器
  6. 选择在测试选项下提供的测试集并提供上述测试集
  7. 点击开始

现在给你问题:

" 对测试集的评估 "应该已经放弃了,因为你正在评估分类器 - 或者更好:训练有素的模型.但是对于评估,您需要将预测的类别与您未提供的实际类别进行比较.因此,将忽略具有缺少类标签的实例.

由于您没有任何其他测试实例WITH class label,因此混淆矩阵为空.根本没有足够的信息来构建一个.(并且只是作为旁注:只有一个实例的混淆矩阵有点无价值.)

看实际预测

您必须转到更多选项...,单击输出预测旁边的选择并选择输出格式,例如PlainText,您将看到如下内容:

inst#     actual  predicted error prediction
    1        1:?        1:0       0.757 
    2        1:?        1:0       0.824 
    3        1:?        1:0       0.807 
    4        1:?        1:0       0.807 
    5        1:?        1:0       0.79 
    6        1:?        2:1       0.661 
Run Code Online (Sandbox Code Playgroud)

此输出按照它们在测试文件中出现的顺序列出分类的实例.这个例子来自Weka网站关于"做出预测"的解释.

在这种情况下,直接从测试数据集中获取所有类属性都用"?"标记,"实际"列可以忽略,只是说明每个类属于一个未知类."预测"列显示实例1到5预测为1级,其值为0,实例6预测为2级,其值为1.错误字段为空; 如果正在对标记的测试集执行预测,则预测未能与标签匹配的每个实例将包含"+".实例1实际属于0级的概率估计为0.757.