Aprendizaje integrado de la serie clásica de aprendizaje automático

Hay un viejo dicho en China: "Tres títeres son iguales a Zhuge Liang". Se dice que la unión hace la fuerza, pero hay otro modismo llamado "chusma". Existe otro algoritmo en el aprendizaje automático que combina estas dos ideas y aprovecha lo mejor de ellas. Es un aprendizaje conjunto, donde los algoritmos combinan a diferentes alumnos.

En el aprendizaje en conjunto, el algoritmo no requiere el mejor desempeño de cada alumno, sino que espera que tengan diferentes puntos de vista sobre el problema, buenos pero diferentes.

Si se describe en un problema de clasificación, significa que sus capacidades de clasificación son diferentes. Para algunas muestras, el alumno puede dividir y para otras muestras, puede dividir. No es necesario que un solo alumno tenga la capacidad de dividir todas las muestras.

En términos técnicos, diferentes alumnos tienen diferentes modelos de preferencias, pero cada uno es un modelo débilmente supervisado. El aprendizaje conjunto combina múltiples modelos débilmente supervisados ​​para obtener un buen modelo fuertemente supervisado. La idea es que diferentes alumnos corrijan los errores de los demás para, en última instancia, mejorar la precisión.

El aprendizaje integrado, llamado aprendizaje en conjunto en inglés, logra el propósito de aprender integrando a varios alumnos entre sí. Los modelos finitos son principalmente combinaciones entre sí, y sus nombres a veces reciben nombres diferentes, a veces también llamados sistemas de clasificadores múltiples, aprendizaje de comités, sistemas modulares, fusión de clasificadores, combinación, agregación, etc. Estos conceptos están relacionados entre sí, pero existen algunas diferencias. La industria aún no ha llegado a una comprensión completa de la definición de los conceptos. El rendimiento de todo el algoritmo es muy sólido y es la primera opción para muchas competencias de alto nivel (descubrimiento de conocimiento y minería de datos, Kaggle).

En el aprendizaje automático, los supuestos que satisfacen el conjunto de entrenamiento pueden no funcionar igual de bien en las aplicaciones reales. Por lo tanto, el algoritmo de aprendizaje enfrenta ciertos riesgos al elegir qué hipótesis generar, y la integración de múltiples hipótesis puede reducir este riesgo (. Puede entenderse como compensar el error entre cada hipótesis y la hipótesis objetivo hasta cierto punto mediante la integración).

En "El libro de la sandía de Zhou Zhihua", se demuestra mediante la desigualdad de Hoeffding que a medida que aumenta el número de clasificadores individuales en el conjunto, la tasa de error del conjunto disminuirá exponencialmente y eventualmente se acercará a cero.

El aprendizaje integrado primero genera un grupo de "alumnos individuales" y luego los combina mediante alguna estrategia. Según si el algoritmo de aprendizaje utilizado por cada alumno individual es el mismo, se puede dividir en fusión homogénea y fusión heterogénea.

Los alumnos integrados superan a los alumnos individuales, que deben cumplir dos requisitos buenos pero diferentes:

La primera condición es más fácil de lograr. Simplemente entrenar un modelo sobre el problema actual dará mejores resultados que adivinar al azar. La segunda condición es una cuestión central en la investigación integral del aprendizaje. Cada alumno individual está aprendiendo el mismo problema, por lo que los alumnos individuales no pueden ser completamente independientes unos de otros. Piensa en cuando tu maestro te pidió que expresaras opiniones diferentes cuando eras niño. Al escribir un ensayo, piensa en encontrar puntos innovadores. Es difícil para todos hacer tal cosa, y mucho menos para un pequeño algoritmo de aprendizaje.

Si desea mejorar la diversidad de los alumnos individuales basándose en la premisa de que cada alumno es lo suficientemente bueno, puede imaginarlo intuitivamente. Todo el proceso de aprendizaje del algoritmo va desde los datos hasta el modelo y la salida.

Considere primero las aportaciones. Si cada alumno aprende de diferentes muestras, entonces se podrán aprender alumnos individuales relativamente diferentes. Entonces la pregunta ahora es cómo dividir las muestras de entrenamiento. Puede seleccionarlos al azar o capacitar a diferentes alumnos individuales con diferentes subconjuntos de atributos.

En segundo lugar, considere el modelo. Si los modelos de los estudiantes básicos son diferentes, se pueden entrenar diferentes estudiantes individuales.

Finalmente, considerando el resultado, si se divide según las características de las etiquetas, también se pueden obtener diferentes alumnos individuales.

Con base en los tres conceptos anteriores, existen cinco métodos principales:

Generar diferentes subconjuntos de muestras a partir de las muestras de capacitación originales y luego usar diferentes subconjuntos de muestras para capacitar a diferentes estudiantes individuales. Los ejemplos incluyen el muestreo de autoservicio utilizado en el embolsado y el muestreo secuencial utilizado en el impulso.

Este método de entrenamiento de perturbaciones de muestras es simple y eficiente, pero solo es efectivo para estudiantes básicos inestables, como árboles de decisión y redes neuronales. Para los estudiantes básicos estables, como los estudiantes lineales, las máquinas de vectores de soporte, Bayes ingenuos y K-NN, el efecto no es obvio. La razón de este problema es que la "flexibilidad" de los estudiantes básicos estables no es muy fuerte.

Hablando de Bagging y Boosting, aquí hay una introducción detallada a estos dos métodos clásicos: el aprendizaje integrado se divide en métodos de serialización: Boosting, este método tiene una fuerte autocorrelación y debe serializarse. método: embolsado, este método no tiene dependencias fuertes y se puede generar al mismo tiempo.

El método de implementación específico es: primero, asigne el mismo peso a cada muestra de entrenamiento, luego entrene el primer clasificador básico y utilícelo para probar el conjunto de entrenamiento, y aumente el peso de aquellas muestras de prueba que están clasificadas incorrectamente ( en la práctica, el algoritmo reduce el peso de las muestras clasificadas correctamente), luego entrena un segundo clasificador básico con el conjunto de entrenamiento ponderado ajustado y luego repite este proceso hasta que finalmente obtenga un alumno lo suficientemente bueno.

El algoritmo más famoso en Boosting es AdaBoost (Adaptive Boosting) propuesto por Yoav Freund en 1997. La siguiente imagen es el resultado de la búsqueda académica de Bing de artículos de AdaBoost:

Este artículo toma el proceso de deducción del "Libro de la sandía de Zhou Zhihua" como ejemplo y utiliza el "modelo aditivo" para analizar:

Estudiante básico La combinación lineal se expresa de la siguiente manera:

La función de pérdida de todo el alumno se define como una función de pérdida exponencial, y se espera que la función de pérdida exponencial se minimice:

donde es una función real que representa la distribución de peso de la muestra (el peso de las muestras incorrectas es mayor y el peso de las muestras correctas es menor. Todas las muestras sumadas equivalen a una distribución).

Si la combinación lineal del alumno básico puede minimizar la función de pérdida exponencial, el método general es encontrar la derivada parcial, igualarla a cero y luego resolverla. Debido a que solo hay dos valores, el resultado después de la derivada parcial es el siguiente:

Supongamos que su derivada parcial es 0, la solución es:

Tenemos:

Esto significa que si se minimiza la función de pérdida exponencial, también se minimizará la tasa de error de clasificación. Muestra que la función de pérdida exponencial es una función sustituta de la tarea original, pero debido a que es continuamente diferenciable, se utiliza para reemplazar la función de pérdida 0/1 como objetivo de optimización. Gran parte de lo anterior significa que esta función de pérdida exponencial continua se utiliza para procesamiento posterior.

En el algoritmo AdaBoost, el primer clasificador base se obtiene aplicando directamente el algoritmo de aprendizaje base a la distribución de datos inicial. Las sumas posteriores se generan de forma iterativa. Al generar un clasificador base basado en una distribución, los pesos del clasificador base deben minimizar la función de pérdida exponencial. Sólo dando pesos más pequeños al clasificador base incorrecto y pesos más grandes al clasificador base correcto podemos hacer juicios más precisos, minimizando así la función de pérdida exponencial.

Entre ellos, en realidad se encuentra la tasa de falsos positivos. Para obtener el peso del clasificador básico, se realiza la derivación:

Establezca la derivada en 0, podemos obtener:

Esto es equivalente a completar la adaptación. La idea adaptativa de AdaBoost aquí adopta el método de votación por mayoría ponderada. La fórmula anterior refleja el aumento en el peso de los clasificadores débiles con pequeñas tasas de error del clasificador, lo que les permite desempeñar un papel más importante en la votación. Lo contrario ocurre con tasas de error mayores.

Ahora debemos volver al procesamiento de muestras en el principio Boost. Al cambiar el peso de esta muestra, o la distribución de probabilidad, la idea intuitiva que queremos lograr es aumentar el peso de aquellas muestras que fueron mal clasificadas por la ronda anterior de clasificadores débiles y reducir el peso de aquellas muestras que fueron clasificadas correctamente. . A continuación, probemos esta fórmula:

Aquí el alumno básico lo demuestra para ver bajo qué distribución de muestra el alumno básico puede aprender a minimizar el error de clasificación.

Después de obtener AdaBoost, ajuste la distribución de la muestra para que pueda aprender cosas que los estudiantes básicos anteriores no pudieron aprender y corrija algunos errores, luego esto se puede minimizar:

Nota: La expansión de Taylor que se puede utilizar en la fórmula anterior se aproxima mediante la siguiente fórmula:

Entonces, el alumno básico ideal:

Tenga en cuenta que es una constante. Representemos una distribución:

Según la definición de expectativa matemática, equivale a dejar:

Por...,, tenemos:

Entonces la estudiante básico ideal:

Por tanto, en el caso de la distribución, lo ideal es minimizar el error de clasificación. La relación entre ¿Es un clasificador base mejor que las conjeturas aleatorias? Una vez que no se cumplen las condiciones, se abandona al alumno básico actual y se detiene el proceso de aprendizaje. Bajo tales requisitos, es posible que se incluyan en la integración muy pocos estudiantes básicos, lo que resultará en un desempeño general deficiente. El remuestreo se utiliza para procesar, es decir, en cada ronda de aprendizaje, el conjunto de entrenamiento se vuelve a muestrear de acuerdo con la distribución de la muestra, y luego el alumno básico se entrena con el conjunto de muestras remuestreado para obtener un reinicio.

Es un conocido representante de los métodos de aprendizaje conjunto paralelo. Según el muestreo de arranque, dado un conjunto de datos que contiene 10 muestras, se devuelven muestras aleatorias y, después de varias veces, se obtiene un conjunto de muestreo que contiene 10 muestras. De esta manera, aproximadamente 10 muestras del conjunto de entrenamiento inicial aparecen en el conjunto de muestreo.

De esta manera, se toma una muestra de un conjunto de muestras que contiene 10 muestras de capacitación, luego se entrena a un alumno base en función de cada conjunto de muestras y luego se combinan estos alumnos base. El embolsado suele utilizar un método de votación simple para las tareas de clasificación al predecir la producción. Utilice promedios simples para tareas de regresión.

La imagen de arriba es la distribución de muestra generada por el muestreo de autoservicio.

La perturbación de atributos de entrada generalmente extrae varios subconjuntos de atributos del conjunto de atributos inicial y luego utiliza diferentes subconjuntos de atributos para capacitar a diferentes alumnos individuales. Por ejemplo:

A partir del uso de un alumno basado en un árbol de decisión para construir un conjunto de Bagging, RF introduce además atributos aleatorios en el proceso de entrenamiento del árbol de decisión. Al seleccionar atributos de partición, el árbol de decisión tradicional selecciona un atributo óptimo del conjunto de atributos del nodo actual en RF; para cada nodo del árbol de decisión base, primero se selecciona aleatoriamente una subsección que contiene 20 atributos del conjunto de atributos; el conjunto de nodos y luego seleccione un atributo óptimo de este subconjunto para la partición.

La diversidad de alumnos básicos en bosques aleatorios proviene no solo de perturbaciones de muestra, sino también de perturbaciones de atributos, de modo que el rendimiento de generalización del conjunto final se puede mejorar aún más aumentando las diferencias entre alumnos individuales.

Sin embargo, este método de perturbación de atributos de entrada solo es efectivo para conjuntos de datos con una gran cantidad de atributos redundantes y no es aplicable si el conjunto de datos solo contiene una pequeña cantidad de atributos o tiene pocos atributos redundantes. El rendimiento de Random Forest es ligeramente peor que el de Bagging debido a la introducción de perturbaciones de atributos al principio, pero a medida que aumenta el número de individuos, Random Forest generalmente converge hacia un error de generalización más bajo.

La perturbación de parámetros del algoritmo se refiere a entrenar a los alumnos con grandes diferencias individuales estableciendo aleatoriamente diferentes parámetros. La cantidad de neuronas ocultas y los pesos de conexión inicial de la red neuronal que se muestran en la siguiente figura son diferentes.

Este método es efectivo para algoritmos con más parámetros, pero para algoritmos con menos parámetros, ¿se pueden reemplazar algunos enlaces en el proceso de aprendizaje por otros métodos similares? Para lograr el propósito de perturbar. Este también puede ser un punto para publicar un artículo. Es posible que no utilice este algoritmo en el futuro, por lo que no investigaré algoritmos.

La perturbación de la etiqueta de salida consiste en cambiar ligeramente la etiqueta de categoría de la muestra de entrenamiento y transformar aleatoriamente el problema de clasificación múltiple original en múltiples problemas de clasificación binaria para capacitar al alumno básico. Un algoritmo clásico es el Código de salida de corrección de errores (ECOC).

Cada categoría corresponde a una cadena de bits binarios de longitud n (llamada palabra de código), * * * formando m palabras de código, y el mismo bit de estas palabras de código describe una función binaria. Después del aprendizaje, se obtienen N bisectrices. En la etapa de clasificación, cada bisectriz forma un vector de salida para la salida de la muestra de entrada, y luego la clasificación de la muestra de entrada se determina mediante reglas de decisión.

Este método es eficaz para conjuntos de datos con suficientes categorías, pero no es adecuado para conjuntos de datos con menos categorías.

La perturbación híbrida utiliza múltiples métodos de perturbación mencionados anteriormente simultáneamente en el mismo algoritmo de conjunto. Por ejemplo, los bosques aleatorios utilizan tanto perturbaciones de muestras de entrenamiento como perturbaciones de atributos de entrada.

Los cinco puntos anteriores analizan cómo producir estudiantes individuales buenos y diversos. ¿Cómo combinamos estas estrategias después de desarrollar estudiantes individuales excelentes y diversos? Existen principalmente métodos de promedio y métodos de votación ordinarios, que incluyen:

Resultados de salida promedio simples.

Multiplicar por el coeficiente de peso y sumar.

Es decir, si una etiqueta obtiene más de la mitad de los votos, entonces se clasifica como esa etiqueta, en caso contrario se rechaza.

Clasifica el logo con más votos si hay varios logos con más votos al mismo tiempo, uno de ellos será seleccionado aleatoriamente.

Asigne pesos a las etiquetas de clase previstas de cada alumno individual y clasifíquelas en la etiqueta con el mayor peso. El peso aquí suele ser la confianza en la clasificación (probabilidad de pertenencia a una clase) de un alumno individual.

ass="copyright">

copyright 2024 Red idiomática china All rights reserved