【问题标题】:Question About Using Weka, the machine learning tool关于使用机器学习工具 Weka 的问题
【发布时间】:2010-12-20 21:07:06
【问题描述】:

我正在使用 Weka 的资源管理器功能进行分类。

所以我有我的 .arff 文件,具有 NUMERIC 值的 2 个特征,我的类是二进制 0 或 1(例如 {0,1})。

示例:

@RELATION summary
@ATTRIBUTE feature1 NUMERIC
@ATTRIBUTE feature2 NUMERIC
@ATTRIBUTE class {1,0}

@DATA
23,11,0
20,100,1
2,36,0
98,8,1
.....

我加载这个 .arff 文件,使用 10 倍交叉验证(无测试文件),然后选择 NaiveBayes,然后我对数据进行分类,它给了我:5 个错误标记,100 个正确标记。到目前为止一切顺利。

现在,我对我的 .arff 文件进行了重大更改(为我的特征属性提供完全随机的值)。重复上述操作,我在分类时得到完全相同的统计数据。

我尝试对我的 .arff 文件进行更多更改,使用不同的分类算法。尽管如此,无论我给我的 .arff 文件赋予什么值,完全相同的统计数据(在相同的算法中)。

我在这里做错了吗?

【问题讨论】:

  • 既然这个问题已经解决了,能否更新一下标题,更具体一些?

标签: machine-learning data-mining classification weka


【解决方案1】:

没有更多信息很难说,但我有两个建议:

  1. 这两个类别的相对比例是多少?是5到100吗?许多算法不适用于高度偏斜的类标签分布。

  2. 只是一种预感,但请尝试将您的类标签从数字更改为字符串(例如“class1”和“class2”)。 Weka 称这些为“名义”属性,因此可能不允许使用数字。

【讨论】:

    【解决方案2】:

    另外:请记住,交叉验证在 UI 中非常可怕,因为无论如何它们只会向您显示原始树(在它们折叠其他数据之前)。如果要生成最终的树,则需要编程 API。我建议使用拆分训练/测试数据集。

    【讨论】:

      【解决方案3】:

      你有没有尝试过改变

      @ATTRIBUTE class {1,0} 
      

      @ATTRIBUTE class {yes,no} 
      

      【讨论】:

        猜你喜欢
        • 2014-04-21
        • 1970-01-01
        • 2014-10-21
        • 1970-01-01
        • 2012-01-27
        • 2020-06-28
        • 2019-06-07
        • 2012-03-25
        • 2020-07-29
        相关资源
        最近更新 更多