如何在 Java Weka API 中使用 SMOTE?

数据挖掘 机器学习 爪哇 威卡
2021-10-01 11:23:14

我正在尝试使用 Java Weka API 构建分类模型。我的训练数据集存在类不平衡问题。出于这个原因,我想使用 SMOTE 来减少类不平衡问题。但是,我不知道如何在 Java Weka API 中使用它。

1个回答

欢迎来到社区。

您可以使用以下代码:

import weka.filters.supervised.instance.SMOTE;
import weka.core.Instances;
import weka.core.converters.ConverterUtils.DataSource;
import weka.filters.Filter;

Instances data = DataSource.read(".../file.arff"); //Dataset 

SMOTE smote=new SMOTE();  //create object of SMOTE
smote.setInputFormat(data);
Instances data_smote = Filter.useFilter(data, smote); //Apply SMOTE on Dataset