ANN、SVM和KNN分类器有什么区别?

我在进行遥感图像分类。我使用面向对象的方法:首先将图像分割成不同的区域,然后从这些区域中提取特征,如颜色、形状和纹理。一个区域的所有特征可能有30个,通常总共有2000个区域,我将选择5个类别,每个类别有15个样本。

总结如下:

  • 样本数据 1530
  • 测试数据 197530

我该如何选择合适的分类器?如果有三种分类器(ANN、SVM和KNN),我应该选择哪一种以获得更好的分类效果?


回答:

如果你的“样本数据”是训练集,那么它看起来非常小。我首先建议每个类别使用超过15个样本。

正如评论中所说,最好是根据问题选择算法,所以你可以简单地测试一下,看看哪个算法效果更好。但作为起点,我建议使用SVM:它在小训练集上比KNN表现更好,并且通常比ANN更容易训练,因为需要做的选择较少。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注