Come usare SMOTE nell'API Weka Java?


8

Sto cercando di costruire un modello di classificazione utilizzando l'API Java Weka. Il mio set di dati di allenamento presenta problemi di squilibrio di classe. Per questo motivo, voglio usare SMOTE per ridurre il problema di squilibrio di classe. Ma non so come usarlo nell'API Java Weka.

Risposte:


8

Benvenuto nella community.

Puoi usare il seguente codice:

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

Grazie per il vostro sostegno. Sto cercando di applicare il tuo codice.
Sagor Ali,

Sono felice di sapere che.
Rejaul Karim,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.