Aprendizaje supervisado con eventos "raros", cuando la rareza se debe a la gran cantidad de eventos contrafactuales


13

Suponga que puede observar "coincidencias" entre compradores y vendedores en un mercado. También puede observar las características de los compradores y vendedores que le gustaría utilizar para predecir futuras coincidencias y hacer recomendaciones a ambos lados del mercado.

Para simplificar, suponga que hay N compradores y N vendedores y que cada uno encuentra una coincidencia. Hay N coincidencias y (N-1) (N-1) no coincidencias. El conjunto de datos de entrenamiento todo incluido tiene observaciones N + (N-1) * (N-1), que pueden ser prohibitivamente grandes. Parecería que el muestreo aleatorio de las no coincidencias (N-1) (N-1) y el entrenamiento de un algoritmo sobre esos datos reducidos podría ser más eficiente. Mis preguntas son:

(1) ¿El muestreo de los no partidos para construir un conjunto de datos de entrenamiento es una forma razonable de abordar este problema?

(2) Si (1) es cierto, ¿hay una manera rigurosa de decidir qué tan grande de un pedazo de (N-1) (N-1) incluir?

Respuestas:


11

Si entiendo correctamente, tiene un problema de clasificación de dos clases, donde la clase positiva (coincidencias) es rara. Muchos clasificadores luchan con ese desequilibrio de clase, y es una práctica común submuestrear la clase mayoritaria para obtener un mejor rendimiento, por lo que la respuesta a la primera pregunta es "sí". Sin embargo, si submuestrea demasiado, terminará con un clasificador que predice en exceso la clase positiva minoritaria, por lo que lo mejor que puede hacer es elegir la ración de submuestreo para maximizar el rendimiento, tal vez minimizando el cruce. error de validación donde los datos de la prueba no han sido submuestreados para que obtenga una buena indicación del rendimiento operativo.

Si tiene un clasificador probabilístico, que le da una estimación de la probabilidad de memebership de clase, puede mejorar y postprocesar la salida para compensar la diferencia entre las frecuencias de clase en el conjunto de entrenamiento y en operación. Sospecho que para algunos clasificadores, el enfoque óptimo es optimizar tanto la relación de submuestreo como la corrección a la salida optimizando el error de validación cruzada.

En lugar de submuestreo, para algunos clasificadores (por ejemplo, SVM) puede asignar diferentes pesos a los patrones positivos y negativos. Prefiero esto al submuestreo, ya que significa que no hay variabilidad en los resultados debido a la submuestra particular utilizada. Cuando esto no sea posible, use bootstrapping para hacer un clasificador en bolsas, donde se usa una submuestra diferente de la clase mayoritaria en cada iteración.

La otra cosa que diría es que, comúnmente, donde hay un gran desequilibrio de clase, los errores falsos negativos y los errores falsos positivos no son igualmente malos, y es una buena idea incorporar esto en el diseño del clasificador (que se puede lograr por sub -muestreo o patrones de ponderación pertenecientes a cada clase).


3
(+1), sin embargo, creo que uno tiene que distinguirse entre el objetivo de la clasificación (medida: AUC) y la separación de las dos clases (medida: precisión). En el primer caso, dado un clasista probabilístico como Naive Bayes, supongo que el desequilibrio juega un papel menor. ¿O debería preocuparse también en este caso? Otra pregunta: ¿Qué quiere decir con "postprocesar la salida"? ¿Convertir puntajes en probabilidades reales?
steffen

@Steffen Mi intuición es que el problema del desequilibrio de clase no es un problema para la clasificación, pero que no desaparecerá por completo (estoy trabajando en un documento sobre este problema, por lo que es algo que vale la pena resolver). Por postprocesamiento, me refería a multiplicar los resultados por la proporción de las frecuencias de la clase de conjunto operativo y de entrenamiento y luego normalizar de nuevo para que las probabilidades de todos los resultados posibles sumen uno. Sin embargo, en la práctica, es probable que el factor de escala óptimo real sea algo diferente, por lo tanto, optimice con XVAL (pero aún así se normalice).
Dikran Marsupial

1

En cuanto a (1). Necesita mantener observaciones positivas y negativas si desea resultados significativos.
(2) No existe un método más inteligente de submuestreo que la distribución uniforme si no tiene a priori sus datos.


Gracias Ugo, de acuerdo, definitivamente debe haber tanto partidos como no partidos en los datos de entrenamiento. La pregunta es sobre cuántas de las (N-1) (N-1) no coincide son necesarias. Para la parte (2), definitivamente tomaría una muestra con igual peso sobre todas las observaciones.
John Horton

Bueno, si no tiene a priori sus datos, no hay una forma razonable de probarlos. Por lo tanto, debe realizar un muestreo uniforme y, en este caso, cuanto más tome, mejor será. Sin embargo, puede estimar el error introducido por el muestreo, pero aquí nos falta información para ayudarlo en este punto.
Ugo

Me parece que el error dependerá del tipo de clasificador utilizado. De todos modos, siempre puede intentar predecir a una frecuencia de muestreo diferente y fijar un umbral donde cree que el error introducido es satisfactorio.
Ugo
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.