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

Weka未将正确分类的实例显示为输出

范承望
2023-03-14

我是weka的新手。我有一个csv数据集,有5000个样本。这里有20个样本;当我将这个数据集上传到weka时,它看起来还可以,但是当我运行knn算法时,它会给出一个不应该给出的结果。这是样本数据。

a, b, c, d

74,85,123,1

73,84,122,1

72,83,121,1

70,81,119,1

70,81,119,1

69,80,118,1

70,81,119,1

70,81,119,1

76,87,125,1

76,87,125,1

82,92,146,2

74,86,140,2

68,80,134,2

64,76,130,2

64,75,132,2

83,96,152,2

72,85,141,2

71,83,141,2

69,81,139,2

65,79,137,2

以下是结果:

===交叉验证 === === 摘要===

相关系数0.6148平均绝对误差0.2442均方根误差0.4004相对绝对误差50.2313%均方根相对误差81.2078%实例总数5000

它应该给出这样的结果:正确分类的实例:69 92%错误分类的实例:6 8%

问题应该是什么?我错过了什么?我在所有其他算法中都这样做了,但它们都给出相同的输出。我使用了示例weka数据集,它们都按预期工作。

共有1个答案

曾飞雨
2023-03-14

IBk算法可用于回归(预测每个实例的数值响应值)以及分类(预测每个实例属于哪个类)。

看起来您的数据集中的class属性的所有值(CSV中的列d)都是数字。因此,当您将此数据加载到Weka中时,Weka猜测该属性应被视为数字属性,而不是名义属性。您可以看出这已经发生,因为预处理选项卡中的直方图如下所示:

而不是像这样(按类着色):

运行IBk时看到的结果是回归拟合的结果(预测每个实例的d列数值),而不是分类(为每个实例选择d列最可能的名义值)。

要获得想要的结果,需要告诉Weka将此属性视为标称属性。在“预处理”选项卡中加载csv文件时,请选中“文件”对话框窗口中的“调用选项”对话框。然后单击“打开”时,您将看到以下窗口:

字段naminalAttie tes是您可以为Weka提供哪些属性是名义属性的列表,即使它们看起来是数字的。在这里输入4将指定输入中的第四个属性(列)是名义属性。现在IBk应该按照您的预期运行。

您还可以通过将NumericToNomial无监督属性过滤器应用于已加载的数据来做到这一点,再次指定属性4,否则过滤器将应用于所有属性。

Weka样本数据集使用的ARFF格式包括一个规范,说明哪些属性是哪种类型的。如上所述导入(或过滤)数据集后,可以将其另存为ARFF,然后可以重新加载它,而无需执行相同的过程。

 类似资料:
  • 我最近开始使用weka,我正试图使用朴素贝叶斯将推特分类为正面或负面。所以我有一个训练集,上面有我给的标签,还有一个测试集,上面有所有标签都是“肯定的”。当我运行Naive Bayes时,我得到以下结果: 正确分类实例:69 92%错误分类实例:6 8% 然后,如果我将测试集中推文的标签更改为“否定”并再次运行朴素贝叶斯,结果会颠倒: 分类正确的实例:6.8%分类错误的实例:69.92% 我认为正

  • 我今天开始使用Weka。我使用一个包含虚拟信息的. arff文件。然后,我使用weka来获取结果。但是,问题是我不确定weka正在做什么来获取结果。例如,使用Heoffding Tree,我在错误分类的结果上得到了75%和25%的正确分类实例结果;75%到底是什么?weka做了什么来获得75%的正确分类结果?谢谢!

  • 在weka中。分类器。Evaluation有一个方法,它输出如下所示的混淆矩阵。 我注意到,这个输出中的类是从作为

  • 通过单击Experiment Parameters选项卡中的一个按钮(参见下面的屏幕截图),我创建并运行一个“PreviewAction”,它创建了一个新的选项卡,并用必要的组件填充它。下面是的代码。编辑:我还发布了一个自包含的最小版本,它模拟了真实项目中的条件,并展示了相同的行为。 这里至少存在两个问题: (或)根本不呈现 没有框架本身那么宽,我不知道为什么 我在挥杆方面不是很好,所以我可能错过

  • 我试图在一个有32个属性的数据集上对分类机器学习算法进行数据建模,最后一列是目标类。我将属性数从32改进为6,我觉得这对我的分类模型更有用。 我尝试执行J48和一些增量分类算法。我期望输出结构包括混淆矩阵、更正和分类错误的实例、kappa值。 但是我的结果没有给出任何关于正确和错误分类实例的信息。此外,它也没有预测混淆矩阵和Kappa值。我收到的只是这样: ===总结=== 相关系数0.9482