Comment utiliser un filtre de mots vides personnalisé dans l'API Java Weka?

8

J'utilise l'API Java Weka pour construire un modèle de classification. Je peux utiliser le filtre intégré de mots vides. Cependant, je dois utiliser un filtre personnalisé pour mon problème. Je ne sais pas comment utiliser un filtre de mots vides personnalisé dans l'API Java Weka.

Radia Karim
la source

Réponses:

7

Vous pouvez essayer le code suivant.

import weka.core.converters.ConverterUtils.DataSource;
import weka.filters.unsupervised.attribute.StringToWordVector;
import weka.core.Instances;

Instances data = DataSource.read(".../document.txt"); //Your document .
filter.setInputFormat(data);
StringToWordVector filter = new StringToWordVector();
filter.setStopwords(new File(".../stopwords.txt")); //stop words file.
Instances data = Filter.useFilter(data,filter);

Vous pouvez également lire le document suivant pour une meilleure compréhension de l'API Weka pour Java. http://weka.sourceforge.net/doc.stable/

Howa Begum
la source
J'apprécie votre aide. Merci beaucoup. Votre code et le lien du document m'aident beaucoup.
Radia Karim
7

Tout d'abord, vous devez préparer un fichier texte pour vos mots d'arrêt personnalisés. Ensuite, vous pouvez utiliser le code suivant:

import weka.filters.unsupervised.attribute.StringToWordVector;

StringToWordVector filter = new StringToWordVector(10000);
filter.setStopwords(new File(".../stopwords.txt"));

J'espère que cela vous aidera.

Rejaul Karim
la source
J'apprécie votre aide.
Radia Karim
Je suis très nouveau dans la programmation Java weka-api. Je ne comprends pas clairement. Je vous prie de me donner une réponse un peu plus élaborée. Merci d'avance pour ton soutien.
Radia Karim
Veuillez nous indiquer quelle partie ne comprenez-vous pas?
Rejaul Karim