在较小的数据集

时间:2016-05-03 05:24:34

标签: machine-learning neural-network azure-machine-learning-studio

所以我有一组数据,1900行和22列。 21列只是数字,但我想要训练数据的关键是3个阶段:a,b和c。

我已尝试过决策树/丛林和神经网络,无论我如何设置它,我的精度都不会超过55%。

通常它的准确度大约为50%,而我所获得的最佳准确率为55%,平均值约为70%。

我是否应该在这么小的数据集上使用NN?正如我所说,我尝试过其他ML算法,但它们没有产生更好的效果。

1 个答案:

答案 0 :(得分:1)

我认为你的问题没有明确的答案。精度得分低可能来自几个原因。我将在以下几点陈述其中一些:

  1. 当您使用决策树/神经网络时 - 低精度可能是元参数设置错误的结果(如树的最大高度或DT中的树数或错误的拓扑或NN情况下的数据准备)。我建议你使用网格或随机搜索NN和DT来寻找你的算法的最佳元参数(如果是“静态”(非顺序数据)包,例如R中的h20或Scikit-learn in Python可能做得很好)并且在神经网络案例中 - 正确地规范化您的数据(例如,减去平均值并除以数据的每x列的标准差)。
  2. 您的数据集可能不一致。如果是您的数据不具有xy之间存在功能依赖关系的属性(对于某些y = f(x)来说意味着f)那么在培训会话期间学到的是给定x的概率 - 您的示例属于某个指定的类。这种不一致可能严重损害您的准确性。在这种情况下,我建议你尝试指明是否发生这种现象,然后例如尝试细分您的数据以解决问题。
  3. 您的数据集可能太小了。在这种情况下尝试获取更多数据。