Comment utiliser SMOTE dans l'API Java Weka?


8

J'essaie de construire un modèle de classification à l'aide de l'API Java Weka. Mon ensemble de données d'entraînement présente des problèmes de déséquilibre de classe. Pour cette raison, je veux utiliser SMOTE pour réduire le problème de déséquilibre de classe. Mais, je ne sais pas comment l'utiliser dans l'API Java Weka.

Réponses:


8

Bienvenue dans la communauté.

Vous pouvez utiliser le code suivant:

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

Merci pour votre aide. J'essaie d'appliquer votre code.
Sagor Ali

Je suis heureux d'entendre cela.
Rejaul Karim
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.