¿Cuándo querría usar AdaBoost?

14

Como he oído hablar del clasificador AdaBoost que se menciona repetidamente en el trabajo, quería tener una mejor idea de cómo funciona y cuándo uno podría usarlo. Continué y leí una serie de documentos y tutoriales que encontré en Google, pero hay aspectos del clasificador que todavía tengo problemas para entender:

  1. La mayoría de los tutoriales que he visto hablan de AdaBoost como encontrar la mejor combinación ponderada de muchos clasificadores. Esto tiene sentido para mí. Lo que no tiene sentido son las implementaciones (es decir, MALLET) donde AdaBoost parece aceptar solo un alumno débil. ¿Como tiene sentido eso? Si solo se proporciona un clasificador a AdaBoost, ¿no debería devolver ese mismo clasificador con un peso de 1? ¿Cómo produce nuevos clasificadores a partir del primer clasificador?

  2. ¿Cuándo se querría usar AdaBoost? He leído que se supone que es uno de los mejores clasificadores listos para usar, pero cuando trato de impulsar un clasificador MaxEnt obtenía f-puntuaciones de 70% +, AdaBoost lo asesina y me da f- puntajes de algo así como 15% con muy alta recuperación y muy baja precisión en su lugar. Entonces ahora estoy confundido. ¿Cuándo querría usar AdaBoost? Estoy buscando una respuesta más intuitiva en lugar de estrictamente estadística, si es posible.

YuliaPro
fuente

Respuestas:

11

Adaboost puede usar múltiples instancias del mismo clasificador con diferentes parámetros. Por lo tanto, un clasificador lineal anterior se puede combinar en clasificadores no lineales. O, como a la gente de AdaBoost le gusta decir, múltiples estudiantes débiles pueden hacer que un estudiante sea fuerte. Una buena foto se puede encontrar aquí , en la parte inferior.

Básicamente, funciona como cualquier otro algoritmo de aprendizaje: en algunos conjuntos de datos funciona, en algunos no. Seguro que hay conjuntos de datos por ahí, donde se destaca. Y quizás aún no haya elegido al alumno débil adecuado. ¿Intentaste la regresión logística? ¿Visualizaste cómo evolucionan los límites de decisión durante la adición de alumnos? Tal vez puedas decir qué va mal.

bayerj
fuente
(+1) Observación adicional: incluso si los parámetros de los alumnos débiles no difieren, el comportamiento (es decir, lo que predicen) cambia cuando cambia la estructura del conjunto de datos (como se hace al impulsar).
steffen
MaxEnt es regresión logística. Visualizar cómo evolucionan los límites de decisión en realidad sería bastante útil. ¿Cómo se puede hacer eso? Además, todavía no entiendo cómo AdaBoost todavía funciona cuando solo se le da un conjunto de características y un tipo de clasificador (como en MALLET). Para mí, esto parece completamente contra-intuitivo.
YuliaPro
Simplemente trace su conjunto de datos. Además, dibuje una cuadrícula donde elija un color para cada punto de cómo está siendo clasificado por su sistema. Esto funciona solo para 2D, supongo. Todavía podrías trazar los ejes más importantes o algo así. Si solo tiene un conjunto de características y un clasificador, se reduce a un solo clasificador. Tenía la impresión de que la entropía máxima era un paradigma y no un clasificador concreto. De todas formas.
bayerj