2016-04-27 94 views
0

我试图评估在WEKA中使用10倍CV的分类器的性能。我有32,000个记录分为三个不同的类,“po”,“ng”,“ne”。 po:〜950 ng:〜1200 ne:〜30000WEKA分类器评估

我应该如何分割执行CV的数据集?我是否正确地认为,对于每个班级,我应该有大致相同的记录数量,以防止对“ne”班级进行不公平的加权?

回答

2

首先,不需要你拥有相等的号码。的案例在你的课堂上。并非所有数据集均衡。是的,它可能会给出不切实际的答案。数据集中的不平衡是一个普遍的现象,但也有少数的策略来处理它 - :

1)重采样数据集

Undersampling-删除多数类的记录

Oversampling-添加记录在少数类

您可以使用SMOTE算法为您做。

2)性能度量

某些指标像卡帕(或科恩kappa)可以工作,其中的分类的精度是通过在数据的类的不平衡标准化大。

3)成本敏感分类 Weka中有CostSensitiveClassifier,它可以包含任何分类和应用自定义惩罚矩阵小姐分类。 但是这里面临的挑战是如何确定成本,因为成本应该依赖于域而不依赖于数据。

在交叉验证的情况下,我发现这个链接是有用的。 http://www.marcoaltini.com/blog/dealing-with-imbalanced-data-undersampling-oversampling-and-proper-cross-validation

希望它有帮助。