WEKA中的重采样滤波器 - 如何解释结果

5
我目前正在处理一个机器学习问题,需要处理大量不平衡的数据集。也就是说,有六个类别('1','2' ... '6')。不幸的是,例如对于类别'1',有150个例子/实例,对于'2'只有90个实例,而对于类别'3'只有20个。所有其他类别都无法“训练”,因为这些类别没有可用的实例。
到目前为止,我发现WEKA(我使用的机器学习工具包)提供了这个监督性的“Resample”过滤器。当我将此过滤器应用于'noReplacement'=false和'bialToUniformClass'=1.0时,结果是一个数据集,其中实例的数量很好且几乎相等(对于类别'1'..'3',其他类别保持为空)。
我的问题是:WEKA和这个过滤器是如何为不同的类别生成“新”的/额外的实例的?
非常感谢您提前提供任何提示或建议。
祝好 朱利安
3个回答

2
它并不会创造新的实例,而是对现有实例进行重新采样。如果你拥有一个class-2实例,并要求进行偏差为1.0的重新采样,你可以期望得到N个该实例的副本和每种已经有数据的其他类型实例的N个副本。

2
使用WEKA的有监督Resample过滤器可以向一个类中添加实例。这是通过将仅有少量实例的类的实例多次添加到结果数据集中来实现的。
因此,结果数据集在仅有少量样本的类方面存在强烈的偏见。

1

在预处理中尝试使用SMOTE过滤器。

它通过生成少数类的新数据来平衡您的数据集。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接