【问题标题】:Ordering of training dataset in wekaweka中训练数据集的排序
【发布时间】:2014-10-22 06:38:49
【问题描述】:

我是 weka 的新手,我目前正在创建的数据集上运行一些分类算法。

数据集包含一个类 {player1,player2,player3},其样本按玩家的顺序排序。

例如:

2,748.564,384.103,1.389,0.395,2354.950,0,1858.400,0.353,5,Player_1 1,729.143,391.086,1.479,0.378,2677.350,0,1496.900,0.333,3,Player_1 2,719.765,391.824,1.295,0.469,2659.625,0,1889.429,0.250,2,Player_1 1,726.515,388.121,1.506,0.360,2236.200,0,1431.800,0.364,4,Player_2 2,733.667,387.000,1.241,0.405,2612.450,0,2322.400,0.444,5,Player_2 1,744.343,380.000,1.516,0.366,2461.500,0,1455.050,0.417,3,Player_2 2,729.500,387.167,1.336,0.422,2150.167,0,2092.000,0.429,1,Player_3 1,734.100,398.700,1.522,0.311,2403.500,0,1497.550,0.214,3,Player_3

我发现如果我随机更改这个顺序,

例如: 1,734.100,398.700,1.522,0.311,2403.500,0,1497.550,0.214,3,Player_3 2,748.564,384.103,1.389,0.395,2354.950,0,1858.400,0.353,5,Player_1 1,726.515,388.121,1.506,0.360,2236.200,0,1431.800,0.364,4,Player_2 2,733.667,387.000,1.241,0.405,2612.450,0,2322.400,0.444,5,Player_2 2,742.300,394.600,1.514,0.388,2530.833,0,1454.000,1.000,1,Player_3 .....

它通常会影响分类器的性能。有人能解释一下为什么会这样吗?我使用 NaiveBayes、RandomForest 和 LMT 作为分类器。

提前致谢, 拿破仑

【问题讨论】:

  • 能否请您更详细地解释一下场景
  • 当然可以。我从不同的玩家那里得到了一些数据,我想建立一个模型并对其进行测试(即预测类 Player)。最初,训练数据集包含按 Player 类排序的数据。然后,我使用分类器并运行 10 CV 以输出性能和预测。但是,如果我在训练数据集中混合上述数据(即制作一个未按类 Player 排序的数据集),则会影响分类器的性能。
  • 按照 Player 类排序的数据意味着 Player_1 行将首先呈现,然后 Player_2 行紧随其后,最后 Player_3 行呈现。如果我混合如下行:一些 Player_1 行,一些 Player_3 行,一些 Player_1 等,它会影响预测的准确性。

标签: weka


【解决方案1】:

更改 CV 折叠参数、CV 随机种子或数据顺序将影响分类器的准确性。

在训练分类器之前,您的数据会根据交叉验证算法随机分配到训练集或测试集。出于这个原因,改变 CV Folds 会给训练提供更多或更少的数据,从而导致不同的结果。每次提供不同的值时,更改种子将给出不同的数据分配。同样,如果您对数据重新排序并保留种子,则相同的行索引将用于训练,但数据的顺序会不同,从而导致不同的结果。

【讨论】:

    猜你喜欢
    • 2013-01-21
    • 1970-01-01
    • 2016-11-12
    • 2011-05-13
    • 2016-04-04
    • 1970-01-01
    • 2012-12-04
    • 2013-12-06
    • 2013-03-23
    相关资源
    最近更新 更多