我正在Weka中开展一项分类任务,并且遇到了我的班级预测有一个非常频繁的值(约85%)的问题。这导致许多学习算法只是为新数据集预测此类的频繁值。
我该如何处理这个问题?这只是意味着我找不到能够更好地预测更好的功能的功能吗?或者我可以采取哪些具体措施来解决这个问题?
我想这是一个非常常见的问题,但我无法在这里找到解决方案。
答案 0 :(得分:1)
您需要“SMOTE”您的数据。首先要弄清楚你需要多少少数案例。在我的情况下,我想要达到50/50的比例,所以我需要超过1300%的样本。如果您使用的是GUI,本教程将有所帮助:http://www.youtube.com/watch?v=w14ha2Fmg6U如果您是使用Weka从命令行执行此操作,则以下命令将帮助您:
#Weka 3.7.7
java weka.Run -no-scan weka.filters.supervised.instance.SMOTE \
-c last -K 25 -P 1300.0 -S 1 -i input.arff -o output.arff
-K选项是在抽取数据时要考虑的邻居数。默认值为5,但25对我的数据集最有效。