¿Cómo uso cualquier biblioteca en Java que implemente la selección de funciones del algoritmo RELEIFF?

He estado haciendo mi propia investigación sobre aprendizaje automático, por lo que responderé con lo que sé hasta ahora …

Supongo que está utilizando la biblioteca de aprendizaje automático java-ml en http://java-ml.sourceforge.net/

Comenzarás con algún tipo de conjunto de datos. Para esta biblioteca, querrá un archivo CSV con valores de atributo (doble) y una clase resultante (String, creo). Aquí usaré el famoso conjunto de datos Iris (UCI Machine Learning Repository: Iris Data Set). Hay cuatro columnas de valores dobles, y la clase resultante está en la quinta columna, de ahí el 4 (basado en cero) en la llamada FileHandler. Aquí está el código:

  / * Cargar el conjunto de datos de iris * /
 Datos del conjunto de datos = FileHandler.loadDataset (nuevo archivo ("iris.data"), 4, ",");

 / * Crear el algoritmo de puntuación de características * /
 ALIVIO alivio = nuevo ALIVIO ();

 / * Aplicar el algoritmo al conjunto de datos * /
 relief.build (datos);

 / * Imprime la puntuación de cada atributo * /
 for (int i = 0; i <relief.noAttributes (); i ++) {
     System.out.println (relief.score (i));
 }

¡Buena suerte!

WEKA (Data Mining with Open Source Machine Learning Software in Java) tiene una implementación RELIEVE y el código fuente también es público.