Combinación aleatoria de algoritmos de bosque
El proceso de entrenamiento de impulso es paso a paso y el entrenamiento básico de la aeronave es ordenado. Cada modelo básico aprenderá en función del modelo básico anterior y finalmente combinará los valores de predicción de todos los modelos básicos para producir el resultado de predicción final. El método de ponderación se utiliza con más frecuencia.
La superposición consiste en utilizar todos los datos para entrenar el modelo básico, y luego cada modelo básico predice cada muestra de entrenamiento, y su valor predicho se utilizará como el valor característico de la muestra de entrenamiento, y finalmente una nueva Se obtiene una muestra de entrenamiento, luego entrena el modelo en función de nuevas muestras de entrenamiento y luego obtiene el resultado de predicción final.
Entonces, ¿por qué el aprendizaje integrado es mejor que el aprendizaje único? Hay tres posibles razones:
Es posible que las muestras de capacitación no seleccionen al mejor alumno individual, así que simplemente utilícelas juntas ya que no logran seleccionar al mejor alumno.
Supongamos que se puede encontrar al mejor alumno, pero debido a las limitaciones de la operación del algoritmo, no se puede encontrar la solución óptima y solo se puede encontrar la solución subóptima. El aprendizaje en conjunto puede compensar las deficiencias. algoritmo;
Quizás el algoritmo no puede obtener la solución óptima, pero el aprendizaje conjunto puede obtener una solución aproximada. Por ejemplo, la solución óptima es una línea diagonal y los resultados obtenidos por un único árbol de decisión solo pueden ser paralelos al eje de coordenadas, pero el aprendizaje conjunto puede ajustarse a esta línea diagonal.
No todos los modelos básicos del marco de aprendizaje integrado son modelos débiles. El modelo básico en embolsado y apilamiento es un modelo fuerte (bajo sesgo, alta varianza), y el modelo básico en Boosting es un modelo débil (alto sesgo, baja varianza).
Para el ensacado, el peso de cada modelo básico es igual a 1/m, y los valores esperados son aproximadamente iguales, por lo que podemos obtener:
Con la fórmula anterior, podemos ver:
p>Aquí sabemos por qué el modelo básico en embolsado debe ser un modelo fuerte. Si Bagging utiliza un modelo débil, el sesgo de todo el modelo aumentará y la precisión disminuirá. El bosque aleatorio es un modelo clásico basado en el marco Bagging y, sobre esta base, reduce la correlación entre los modelos básicos al introducir el muestreo de características y el muestreo de muestras, y reduce significativamente el segundo término en la fórmula de varianza y aumenta ligeramente el primer término en la términos de fórmula, reduciendo así la varianza general del modelo en su conjunto.
Para Boosting, dado que los modelos básicos * * * utilizan el mismo conjunto de entrenamiento, existe una fuerte correlación entre los modelos básicos, por lo que el coeficiente de correlación entre los modelos es aproximadamente igual a 1. Para el impulso, la fórmula simplificada es:
Al observar la expresión de la varianza global, podemos encontrar fácilmente:
El modelo básico en el modelo de árbol de decisión de impulso de gradiente basado en el impulso framework También es un modelo de árbol. Al igual que Random Forrest, también podemos muestrear características aleatoriamente para reducir las correlaciones entre los modelos subyacentes y así reducir la varianza.
? Entonces hay un pequeño problema aquí. ¿Qué modelos se utilizan para Bagging y Boosting?
El bosque aleatorio es un algoritmo que integra múltiples árboles mediante la idea del aprendizaje conjunto. Su unidad básica es un árbol de decisión, que es esencialmente un método de aprendizaje integrado. El nombre de bosque aleatorio tiene dos palabras clave, una es "aleatorio" y la otra es "bosque". "Bosque" es fácil de entender. Si un árbol se llama árbol, entonces cientos de árboles se pueden llamar bosque. Esta es también la encarnación de la idea principal del pensamiento aleatorio integrado en el bosque. Sin embargo, el ensacado no utiliza un único árbol de decisión para predecir el precio. Se desconoce qué variable juega un papel importante, por lo que el ensacado mejora la precisión de la predicción pero pierde su poder explicativo.
"Bosque" es fácil de entender, está compuesto por muchos "árboles", entonces, ¿dónde se refleja la "aleatoriedad"?
(1) Seleccione aleatoriamente el conjunto de entrenamiento: si el tamaño del conjunto de entrenamiento es N, para cada árbol, se devuelven aleatoriamente N muestras de entrenamiento del conjunto de entrenamiento (este método de muestreo se denomina método de muestra de arranque) como el conjunto de entrenamiento del árbol; esto asegura que el conjunto de entrenamiento de cada árbol sea diferente, por lo que los árboles construidos también serán diferentes.
(2) Seleccionar características aleatoriamente: seleccionar M características de M características puede evitar una fuerte correlación entre una característica y el resultado de la clasificación. Si se seleccionan todas las características, todos los árboles serán muy similares y no lo suficientemente "aleatorios".
Además, cuando se utiliza el método del bosque aleatorio para construir árboles, no se requieren operaciones de poda adicionales. Comprensión personal: dado que las dos primeras operaciones "aleatorias" y el establecimiento de múltiples árboles evitan el sobreajuste, en este caso, solo necesitamos dejar que cada árbol haga lo mejor en su propio campo.
El rendimiento de predicción del algoritmo de bosque aleatorio está relacionado con dos factores:
(1) Cuanto más fuerte sea la correlación entre dos árboles cualesquiera en el bosque, peor será el rendimiento general.
(2) El rendimiento de predicción de cada árbol en el bosque, cuanto mejor sea cada árbol, mejor será el rendimiento general.
De hecho, se puede entender que exige “bueno pero diferente”. Cuanto mayor sea el número de características m, mejores serán la correlación y el rendimiento individual. Cuanto menor sea el número de características m, menores serán la correlación y el rendimiento individual. Por lo tanto, la elección de m afecta el rendimiento de predicción. bosque aleatorio.
En un conjunto de datos que contiene N muestras, se seleccionan N muestras mediante muestreo de reemplazo para formar un conjunto de datos intermedio, y luego se seleccionan aleatoriamente varias características de todas las características de este conjunto de datos intermedio como el conjunto de datos final. . Construya múltiples conjuntos de datos de la manera descrita anteriormente; para problemas de regresión generales se seleccionan todas las características y para problemas de clasificación se selecciona la raíz cuadrada de todas las características.
Utilice CART para construir un árbol de decisión completamente dividido para cada conjunto de datos sin podar y, en última instancia, obtenga múltiples árboles de decisión CART
Según los resultados de cada árbol de decisión, calcule un nuevo; El valor previsto de los datos.
Debido a las buenas características de RF en aplicaciones prácticas, existen muchas variantes de algoritmos basados en RF y se utilizan ampliamente. No solo se utilizan para clasificación y regresión, sino también para transformación de características, detección de valores atípicos. etc. El siguiente es un resumen de algoritmos representativos para estas familias de RF.
Los árboles adicionales son una variante de RF. Su principio es casi idéntico al de RF. Las diferencias son las siguientes:
Para el conjunto de entrenamiento de cada árbol de decisión, RF utiliza bootstrap de muestreo aleatorio. Para seleccionar el conjunto de muestreo como conjunto de entrenamiento para cada árbol de decisión, los árboles adicionales generalmente no usan muestreo aleatorio, es decir, cada árbol de decisión usa el conjunto de entrenamiento original.
Después de seleccionar las características divisorias, el árbol de decisión de RF seleccionará un punto de división de valor de característica óptimo según el coeficiente de Gini, el error cuadrático medio y otros principios, que es el mismo que el árbol de decisión tradicional. Pero los árboles adicionales son más radicales: seleccionan aleatoriamente un valor de característica para dividir el árbol de decisión.
Como se puede ver en el segundo punto, dado que los puntos divisorios de los valores propios se seleccionan aleatoriamente, en lugar de los puntos óptimos, el árbol de decisión generado por RF es generalmente más grande que el árbol de decisión generado por RF. Es decir, la varianza del modelo se reduce aún más en relación con RF, pero el sesgo aumenta aún más en relación con RF. En algunos casos, los árboles adicionales pueden generalizarse mejor que la RF.
La incrustación de árbol completamente aleatoria (TRTE) es un método de transformación de datos de aprendizaje no supervisado. Asigna conjuntos de datos de baja dimensión a dimensiones altas, de modo que los datos asignados a dimensiones altas se puedan utilizar mejor en modelos de regresión de clasificación. Sabemos que el método del kernel se utiliza en máquinas de vectores de soporte para asignar conjuntos de datos de baja dimensión a dimensiones altas, y TRTE proporciona otro método aquí.
TRTE también utiliza un método similar a RF en el proceso de conversión de datos para establecer un árbol de decisión T que se ajuste a los datos. Al construir un árbol de decisión, también se determina la posición del nodo hoja de cada dato en el conjunto de datos en T árboles de decisión. Por ejemplo, tenemos tres árboles de decisión, cada uno con cinco nodos de hoja. Una determinada característica de datos X se divide en el segundo nodo de hoja del primer árbol de decisión, el tercer nodo de hoja del segundo árbol de decisión y el quinto nodo de hoja del tercer árbol de decisión.
Entonces, el código de característica después del mapeo X es (0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1), con una característica de alta dimensión de 15. Aquí, se agregan espacios entre las dimensiones de las características para enfatizar los respectivos subcódigos de los tres árboles de decisión.
Después de asignar características de alta dimensión, puede continuar utilizando varios algoritmos de regresión de clasificación de aprendizaje supervisado.
Isolation Forest (en adelante, IForest) es un método de detección de valores atípicos. También utiliza un enfoque similar a RF para detectar valores atípicos.
Para el conjunto de muestras del árbol de decisión T, IForest también tomará muestras aleatorias del conjunto de entrenamiento, pero no es necesario que el número de muestras sea el mismo que el de RF. Para RF, la cantidad de muestras que se van a muestrear es igual a la cantidad de conjuntos de entrenamiento. Pero IForest no necesita probar tanto. En términos generales, ¿la cantidad de muestras es mucho menor que la cantidad de conjuntos de entrenamiento? ¿Por qué? Debido a que nuestro propósito es detectar valores atípicos, generalmente solo podemos distinguirlos a través de algunas muestras.
Para el establecimiento de cada árbol de decisión, IForest selecciona aleatoriamente una característica divisoria y selecciona aleatoriamente un umbral divisorio para la característica divisoria. Esto también es diferente de la radiofrecuencia.
Además, IForest generalmente elige una profundidad máxima de árbol de decisión relativamente pequeña, max_profundidad. Por la misma razón, un árbol de decisión tan grande generalmente no es necesario para detectar una pequeña cantidad de valores atípicos en este conjunto.
Para juzgar puntos anormales, ajuste el punto de muestra de prueba X al árbol de decisión T. Calcule la profundidad ht (x) de los nodos de las hojas de las muestras en cada árbol de decisión, de modo que se pueda calcular la altura promedio h (x). En este momento, utilizamos la siguiente fórmula para calcular la probabilidad anormal del punto de muestra X:
Donde m es el número de muestras. La expresión de c(m) es:
El rango de valores de s(x, m) es [0, 1]. Cuanto más cerca esté el valor de 1, mayor será la probabilidad de ser un valor atípico.
Las principales ventajas de RF son:
El entrenamiento puede ser altamente paralelizado, lo que es beneficioso para la velocidad de entrenamiento de muestras grandes en la era del big data.
Dado que las características de división de nodos del árbol de decisión se pueden seleccionar aleatoriamente, el modelo aún se puede entrenar de manera eficiente incluso cuando la dimensión de la característica de muestra es alta.
Después del entrenamiento, se puede dar la importancia de cada característica para el resultado.
Debido al muestreo aleatorio, el modelo entrenado tiene una pequeña varianza y una gran capacidad de generalización.
En comparación con Adaboost y GBDT de la serie Boosting, la implementación de RF es relativamente simple.
Insensible a algunas características faltantes.
Desventajas:
En algunos conjuntos de muestras ruidosos, el modelo de RF es propenso a sobreajustarse.
Las características con más divisiones de valores tienden a tener un mayor impacto en las decisiones de RF, afectando así la efectividad del modelo ajustado.
La dimensión de datos es relativamente baja (docenas de dimensiones) y los requisitos de precisión son altos.
Debido a que no requiere muchos ajustes de parámetros para lograr buenos resultados, puedes probar el bosque aleatorio primero cuando básicamente no sabes qué método usar.
sk learn . min_infinity_decrease=0.0, min_infinity_split=Ninguno, bootstrap=True, oob_score=False, n_jobs=Ninguno, random_state=Ninguno