No todos los modelos de aprendizaje automático ofrecen resultados satisfactorios de inmediato. Aunque en muchos casos la formación y la aplicación pueden llevarse a cabo rápidamente, el precio que hay que pagar por ello es la correspondiente falta de precisión. Esto puede dar lugar a errores, sobre todo en el análisis predictivo de datos. Por tanto, se necesitan métodos que se acerquen a la simplicidad y generalizabilidad de estos "aprendices débiles", pero que al mismo tiempo permitan aumentar el rendimiento. Un método muy extendido consiste en combinar varios modelos entre sí, lo que se denomina Aprendizaje por conjuntos.
Las soluciones individuales de la bolsa de trucos de la IA se reparten predominantemente entre los conceptos de bagging, stacking y boosting, cada uno de los cuales comprende diferentes métodos de aprendizaje. Lo que todos tienen en común es que utilizan técnicas combinadas para formar "aprendices fuertes", que juntos reducen significativamente la probabilidad de error en el sentido de la inteligencia de enjambre.
Boosting se caracteriza, en comparación con los demás métodos de ensemble, por el hecho de que los modelos individuales son uno tras otro formados y normalmente en alta distorsión y baja varianza se pueden aplicar. El refuerzo adaptativo (abreviado AdaBoost) es especialmente popular y potente, y promete una precisión inigualable para los clasificadores.
Leíste una versión traducida automáticamente del post original en alemán.
Refuerzo adaptativo: definición y conceptos básicos
AdaBoost es un algoritmo de aprendizaje ensemble que se basa en procedimientos de entrenamiento secuencial de varios Árboles de decisión o clasificadores similares. Por tanto, la tecnología presenta similitudes con Bosque aleatorioen el que los modelos aprenden en paralelo mediante bagging. AdaBoost, en cambio, entrena aprendices débiles individuales, uno tras otro, como es habitual en boosting. Éstos pueden ser relativamente sencillos, hasta Decisión Stumpsque sólo predicen clases binarias debido a su naturaleza de un solo nivel. AdaBoost utiliza un proceso de aprendizaje supervisado (aprendizaje supervisado), que se define por la naturaleza estructurada de los datos de entrenamiento preparados.
Aprender de los datos, minimizar los errores y tomar decisiones fundamentadas son los principios básicos del aprendizaje automático.
Esto se consigue entrenando a cada clasificador con los mismos datos, con la diferencia de que los errores cometidos en cada caso se ponderan más en el futuro. En el orden secuencial, cada aprendiz débil aprende de las imprecisiones de su predecesor, de modo que el resultado final es una clasificación, decisión o predicción lo más precisa posible. Es especialmente importante la repetición iterativa de este proceso hasta alcanzar la precisión de predicción deseada.
Cómo funciona AdaBoost
Como es habitual en el aprendizaje automático, la adaptación de los pesos (neuronales) desempeña un papel clave en la modelización de un proceso de aprendizaje. La concatenación de distintos modelos permite a AdaBoost ampliar este principio otorgando a los clasificadores individuales distinta relevancia para la predicción global. Esto se conoce como votación suave. Para lograr la ponderación óptima, primero deben llevarse a cabo algunos pasos individuales. Un requisito previo es la preparación de un conjunto de datos adecuado.
- Establecer el algoritmo básico
Inicialmente, se requiere un aprendiz débil adecuado que pueda proporcionar predicciones sencillas sobre los puntos de datos. Los árboles de decisión de un solo nivel son especialmente comunes. Dividen el conjunto de datos en nodos de decisión individuales. La comparación de los Coeficientes de Gini en aplicación a un único (binario) Característica ayuda a identificar el muñón con el mejor rendimiento. Esto constituye ahora el algoritmo básico del modelo de conjunto, al que siguen otros.
- Cálculo de errores
A continuación, se introducen ponderaciones para cada instancia del conjunto de datos, de modo que puedan tomarse muestras y determinar en cada caso la corrección de la variable objetivo clasificada. De este modo, los puntos de datos incorrectos determinados de este modo pueden recibir una ponderación mayor para el proceso posterior.
- Ponderación del clasificador
AdaBoost puede utilizar la tasa de error para calcular la nueva importancia de los clasificadores individuales para el modelo de conjunto. Cuanto mayor sea la precisión o menor el número de errores, mayor será la "importancia" de la predicción global. Esto también constituye una base matemática importante para el siguiente paso.
- Actualizar las ponderaciones de las muestras
Las ponderaciones de las muestras, originalmente equilibradas, también sufren ahora un ajuste basado en los puntos de datos incorrectos del primer clasificador. Éstos reciben una mayor consideración en el procedimiento posterior, mientras que las predicciones correctas reciben una ponderación menor y, por tanto, también intensifican el efecto de entrenamiento y minimizan cada vez más la función de error.
- Iteración
Utilizando un clasificador optimizado por esta minimización del error y/o un conjunto de datos revisado utilizando los pesos de la muestra, los pasos pueden repetirse varias veces. De este modo se obtienen modelos cada vez más eficaces y de mayor precisión, que finalmente se agregan en un modelo ensemble, teniendo en cuenta sus ponderaciones o el derecho a participar. AdaBoost puede ahora aplicar esto a nuevos tipos de datos y clasificar así puntos de datos hasta ahora desconocidos.
Ejemplo según el esquema
Definición del problema: En este ejemplo, los modelos de IA se representan como un conjunto de modelos {h1, h2, h3, h4} y sus predicciones como un conjunto de rectángulos. El tamaño de los rectángulos (predicciones) es proporcional a sus pesos correspondientes (es decir, a su importancia).
Así funciona AdaBoost en este ejemplo: h1 realiza una serie de predicciones. Los errores de h1 (por errores entendemos las predicciones que se desvían de la verdad) tienen mayor peso. h2 debe entonces concentrarse más en predecir correctamente los errores de h1. (y así sucesivamente para h3, h4...)
Al final, hay 4 modelos de IA que se corrigen mutuamente sus errores. El clasificador conjunto final se denomina "h".
Antecedentes matemáticos
La dificultad matemática de AdaBoost reside principalmente en el ajuste de los pesos, que inicialmente se fijan igual al número N para todos los puntos de datos.
El valor corresponde a la probabilidad de que este punto de datos se extraiga para una muestra. Así se crea el conjunto de entrenamiento utilizado para cada iteración.
Para calcular el error se utiliza una función de pérdida exponencial, que produce un gráfico convexo y crece exponencialmente para valores negativos.
Modela la diferencia entre los valores previstos y los deseados, lo que refleja la inexactitud del modelo. El objetivo tanto del aprendizaje automático como del boosting es siempre minimizar esta función. Aquí, el error determinado, que debe entenderse como la suma de los pesos muestrales de todos los puntos de datos predichos incorrectamente, también ayuda a priorizar los árboles de decisión individuales, es decir, su influencia en el modelo global. Toma valores entre 0 y 1.
La reponderación de las muestras también se basa en las (in)precisiones detectadas, que, sin embargo, son el resultado de predicciones incorrectas por sí solas en lugar de cálculos complejos. Para cada muestra clasificada incorrectamente, AdaBoost multiplica su peso por el número de Euler, que se eleva a la potencia del clasificador: Peso de la muestra nueva = Peso de la muestra antigua x e^(say). Para cada muestra correcta, el Diga negativo usado.
Ejemplo: El say de un muñón de decisión es 0,96 al principio con un total de 8 muestras, que es por tanto 1/N=⅛=0,125 ponderarse. Se tomó una muestra equivocado Clasificado. Cuyo Nuevo peso es por lo tanto 0,125 x e^(0,96) ≈ 0,33. Es decir más alto que antes.
Para un clasificado correctamente muestra, en cambio, el derecho de codeterminación negativo da lugar a un Nuevo peso de alrededor de 0,05. Esto significa que AdaBoost aprende de los errores cometidos, mientras que las previsiones correctas se descuidan cada vez más.
Variantes de AdaBoost
Existen sutiles diferencias entre las distintas versiones de AdaBoost debido al enfoque matemático individual.
- AdaBoost real se caracteriza por el uso de árboles de decisión con probabilidad de clase como salida y la aplicación del error de mínimos cuadrados ponderados.
- AdaBoost suave es un desarrollo posterior que utiliza un tamaño de paso limitado para regular las oscilaciones del algoritmo.
- AdaBoostRegressorAdemás AdaBoost.R2, aplica varias regresiones al conjunto de datos original, que se ajustan después de cada cálculo de error.
- Logitboost difiere en que se minimiza la pérdida logística en lugar de la exponencial.
Retos y soluciones
A pesar de su gran precisión, AdaBoost tampoco es un modelo ideal. Debido al entrenamiento intensivo en puntos de datos erróneos y al manejo por tanto seguro de clases infrarrepresentadas, es muy adecuado para datos distorsionados. Sin embargo, esta capacidad sólo llega hasta cierto punto.
Baja calidad de los datos
Si hay un fuerte desequilibrio en la distribución de la muestra, incluso el boosting adaptativo realmente robusto puede tender al sobreajuste. Desde un punto de vista matemático, esto se debe a la función de pérdida utilizada, que es susceptible a los valores atípicos debido a su sensibilidad exponencial a los valores negativos. Los "datos ruidosos" también pueden convertirse en un problema si la información adicional sin sentido influye en las previsiones.
Enfoque de la solución: Ingeniería de funciones
Muchos puntos débiles de los datos utilizados pueden eliminarse incluso antes de ejecutar AdaBoost. La ingeniería de características es un término genérico para este tipo de optimizaciones e incluye diversas técnicas destinadas a estructurar las clases y las características de la forma más sensata posible. Esto aumenta el rendimiento posterior del modelo de aprendizaje automático, pero requiere un alto nivel de conocimientos.
Alumnos demasiado débiles
También pueden producirse errores si se seleccionan clasificadores con un rendimiento demasiado bajo, por ejemplo si no se tiene en cuenta el coeficiente de Gini. El uso de a similares Los aprendices débiles pueden reducir la precisión del conjunto. En última instancia, esto depende de las decisiones diversificadas de los participantes individuales.
Enfoque de la solución: Poda
Puede considerarse como un cortasetos para árboles de decisión. Esta técnica permite reducir partes débiles o incluso árboles enteros si su rendimiento cae por debajo de un valor umbral crítico. En algunos casos, esto reduce inicialmente la precisión de los datos de entrenamiento; sin embargo, lo mismo ocurre con el posible sobreajuste, de modo que la predicción posterior de puntos de datos desconocidos aumenta en calidad.
Aplicación y desarrollo
En principio, Adaptive Boosting puede aplicarse como método de ensemble a diversos modelos de aprendizaje automático, tales como Bayes ingenuo aplicar. Los árboles de decisión son la opción más habitual porque, incluso para aplicaciones complejas, basta con una probabilidad de error de los aprendices débiles ligeramente inferior a 50%. Las clasificaciones automatizadas desempeñan un papel en muchos procesos de análisis, pero también en aplicaciones finales.
Reconocimiento facial
AdaBoost se utilizó por primera vez para el reconocimiento facial en 2001, pocos años después de su creación. Sin embargo, esto sólo se refiere a la decisión binaria de si una cara es reconocible o no. Para identificar a las personas se necesitan tecnologías mucho más complejas, pero AdaBoost podría al menos presentarles las caras reconocidas. Lo importante aquí es una Fase de pruebalo que puede dar lugar a nuevas iteraciones hasta alcanzar la altísima precisión requerida.
Bioinformática
Adaptive Boosting también aporta sus pronunciados puntos fuertes en clasificación precisa en áreas interdisciplinares, incluso con una base de datos distorsionada: determinar la localización subcelular de las proteínas, por ejemplo, es una tarea que requiere un nivel de precisión tan elevado. Con este fin, los investigadores Fan y Wang (2011) ampliaron el algoritmo para incluir una característica multiclase y lo combinaron con la composición de pseudoaminoácidos, que hasta entonces había sido el método de cálculo estándar. El resultado: un aumento significativo de la precisión de la predicción.
Potenciación y aprendizaje profundo
Los últimos avances en IA se centran principalmente en el aprendizaje profundo, una subárea del aprendizaje automático que se define por el uso de redes neuronales multicapa. Por supuesto, también se está intentando mejorar las técnicas existentes. Esto también se aplica al boosting adaptativo. Mientras tanto, en lugar de árboles de decisión, la aplicación a Redes neuronales convolucionales posible. Esto permite escalar a conjuntos de datos muy grandes, de modo que las ventajas de ambos enfoques para big data y IA empresarial se vuelven utilizables. Esto se debe a que ahora la economía siempre refleja el último estado de desarrollo de la IA, que es visible incluso en procesos empresariales singulares:
El conjunto para una gestión documental inteligente
La agregación de un conjunto potente no sólo funciona para modelos de boosting sencillos. Puede ampliarse a tecnologías de gama alta basadas en ella, cada una de las cuales puede beneficiarse de AdaBoost. La prueba: Konfuzio. Este software para la gestión inteligente de documentos comprende tecnologías de IA con enfoques técnicos muy diferentes. Sólo mediante su aplicación combinada se puede lograr una solución holística. Comprensión de documentos hasta el último detalle:
- Visión por ordenador: Esta tecnología de IA utiliza el aprendizaje automático y profundo para permitir el análisis automático de contenidos visuales. Esto se aplica a la información de imagen y diseño de los documentos. AdaBoost puede ayudar con Clasificación de imágenes Ayuda.
- Reconocimiento óptico de caracteres: Como sistema de reconocimiento óptico de caracteres, se encarga de reconocer texto. El hecho de que ese texto exista es una predicción que AdaBoost puede optimizar.
- Procesamiento del lenguaje natural: Lo ideal sería que el texto extraído también pudiera ser entendido por una máquina para tomar otras decisiones. La mejor manera de lograrlo es utilizar PNL basado en redes neuronales. Estas redes pueden enlazarse secuencialmente con AdaBoost para aumentar la precisión.
Conclusión
Una vez más, queda claro cómo la inteligencia artificial utiliza principios fundamentales de la realidad humana: cuatro ojos ven más que dos. Cinco clasificadores toman mejores decisiones que uno solo. De este modo, los métodos de conjunto, como el boosting adaptativo, han logrado mantener su pertinencia durante décadas. Especialmente valiosa es la capacidad de aprender secuencialmente de las imprecisiones detectadas y de minimizar estos errores de forma iterativa. De este modo, AdaBoost convierte aprendices débiles como los árboles de decisión en potentes modelos que resultan incluso útiles en el reconocimiento facial o la bioinformática.
Aún no se vislumbra el final de los avances. Los avances en el aprendizaje profundo son demasiado rápidos, lo que hace que el refuerzo adaptativo sea aplicable a grandes cantidades de datos en la economía. Además, el suministro y la calidad de estos datos desempeñan un papel importante en la precisión del modelo. Por lo tanto, la ingeniería de características y la ciencia de datos son también influencias muy relevantes, que a su vez se entrelazan con los avances en el procesamiento de documentos. Debido a esta multifactorialidad, merece la pena echar un vistazo al boosting adaptativo en el futuro y familiarizarse con las últimas posibilidades.
¿Quiere saber más sobre el potencial de la agregación de clasificadores y otras técnicas de IA? No dude en enviarnos un mensaje.