2009-12-09 21 views
5

Actualmente estoy lidiando con un problema de aprendizaje automático mientras que tengo que lidiar con grandes conjuntos de datos desequilibrados. Es decir, hay seis clases ('1', '2' ... '6'). Lamentablemente, hay, por ejemplo, para la clase '1' 150 ejemplos/instancias, para '2' 90 instancias y para la clase '3' solamente 20. Todas las otras clases no pueden ser "entrenadas" ya que no hay instancias disponibles para estas clases.Volver a muestrear Filtro de WEKA - Cómo interpretar el resultado

Hasta ahora, descubrí que WEKA (el kit de herramientas de aprendizaje automático que estoy usando) proporciona este filtro supervisado de "remuestreo". Cuando aplico este filtro con 'noReplacement' = false y 'bialToUniformClass' = 1.0, esto da como resultado un conjunto de datos, donde el número de instancias es agradable y casi igual (para la clase '1' ... '3' y las demás mantente vacío).

Mi pregunta es ahora: ¿cómo WEKA y este filtro generan instancias "nuevas"/adicionales para diferentes clases.

Muchas gracias de antemano por cualquier pista o sugerencia.

Saludos Julian

Respuesta

2

Uso de filtro de remuestreo supervisada de WEKA se añaden instancias de una clase. Esto se realizó simplemente agregando instancias de la clase que tiene pocas instancias varias veces para el conjunto de datos de resultados.

Por lo tanto, el conjunto de datos resultante está muy sesgado en términos de una clase para la que solo hay algunas muestras disponibles.

1

No es así. Es remuestrear instancias existentes. Si tiene una instancia de clase 2 y solicita un remuestreo con un sesgo de 1.0, puede esperar N copias de esa instancia y N otras instancias de cada tipo para el que ya hay datos.

1

Pruebe con el filtro SMOTE en el preproceso.

Equilibra su conjunto de datos mediante la generación de nuevos datos para la clase secundaria.

Cuestiones relacionadas