Weka 如何将类标签附加到测试数据集?

Posted

技术标签:

【中文标题】Weka 如何将类标签附加到测试数据集?【英文标题】:How does Weka attach class labels to a test dataset? 【发布时间】:2016-08-01 04:40:00 【问题描述】:

我想在我的源代码中使用 Weka 来构建 ID3 分类器。它应该接受测试数据集(没有类标签)并附加标签并将其写入一个新文件。这些类标签实际上是如何附加的?这是哪个类和函数?

My train dataset:
@relation data
@attribute GENDER M,F
@attribute FAMILY YES,NO
@attribute SMOKER YES,NO
@attribute PASSIVESMOKER YES,NO
@attribute CITY YES,NO
@attribute CHEMICALS YES,NO
@attribute THERAPY YES,NO
@attribute PERSISTENTCOUGH YES,NO
@attribute CLASS LOW,BAVG,AVG,AAVG,HIGH
@data
M,NO,NO,NO,NO,NO,NO,NO,LOW
M,NO,NO,NO,NO,YES,NO,NO,BAVG
M,NO,NO,NO,YES,YES,YES,YES,AAVG
M,NO,NO,YES,NO,NO,NO,NO,LOW
M,NO,NO,YES,NO,YES,NO,NO,BAVG
.....
.....
Test dataset:
@relation data
@attribute GENDER M,F
@attribute FAMILY YES,NO
@attribute SMOKER YES,NO
@attribute PASSIVESMOKER YES,NO
@attribute CITY YES,NO
@attribute CHEMICALS YES,NO
@attribute THERAPY YES,NO
@attribute PERSISTENTCOUGH YES,NO
@data
M,NO,NO,NO,NO,NO,NO,NO,?
M,NO,NO,NO,NO,YES,NO,NO,?
M,NO,NO,NO,YES,YES,YES,YES,?
M,NO,NO,YES,NO,NO,NO,NO,?

【问题讨论】:

你能分享一下你到目前为止的尝试吗? 【参考方案1】:

我认为您需要一个没有类属性的 ARFF 文件作为测试集。之后,您可以使用AddClassification 过滤器将类标签添加到使用特定分类器的所有测试集实例中。

【讨论】:

是的,没错。类标签已成功添加。我的问题是 Weka 是如何做到的?我有用户 LOW、BAVG、AVG、AAVG、HIGH 作为类标签。这是哪个类/函数?我需要知道 Weka 内部的代码流程【参考方案2】:

Weka 为每个测试集实例调用函数classifyInstance

【讨论】:

以上是关于Weka 如何将类标签附加到测试数据集?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 2 个数据集,1 个用于训练,1 个用于在 WEKA 上进行情感分析测试

如何在 Weka 中对训练和测试数据集进行分类

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

weka中如何对整个数据集进行分类

WEKA 如何评估集群?

WEKA - 分类 - 训练和测试集