He estado leyendo sobre los bosques aleatorios, pero realmente no puedo encontrar una respuesta definitiva sobre el problema del sobreajuste. Según el documento original de Breiman, no deberían sobreajustarse al aumentar el número de árboles en el bosque, pero parece que no hay consenso sobre esto. Esto me está creando bastante confusión sobre el tema.
Quizás alguien más experto que yo pueda darme una respuesta más concreta o señalarme en la dirección correcta para comprender mejor el problema.
machine-learning
random-forest
Markusian
fuente
fuente
Respuestas:
Cada algoritmo de ML con alta complejidad puede sobreajustar. Sin embargo, el OP pregunta si un RF no se sobreajustará al aumentar el número de árboles en el bosque.
En general, los métodos de conjunto reducen la variación de predicción a casi nada, mejorando la precisión del conjunto. Si definimos la varianza del error de generalización esperado de un modelo aleatorio individual como:
A partir de aquí , la varianza del error de generalización esperado de un conjunto corresponde a:
donde
p(x)
está el coeficiente de correlación de Pearson entre las predicciones de dos modelos aleatorizados entrenados en los mismos datos de dos semillas independientes. Si aumentamos el número de DT en la RF, mayorM
, la varianza del conjunto disminuye cuandoρ(x)<1
. Por lo tanto, la varianza de un conjunto es estrictamente menor que la varianza de un modelo individual.En pocas palabras, aumentar el número de modelos aleatorios individuales en un conjunto nunca aumentará el error de generalización.
fuente
Es posible que desee verificar la validación cruzada , un sitio web de intercambio de stachex para muchas cosas, incluido el aprendizaje automático.
En particular, esta pregunta (con exactamente el mismo título) ya ha sido respondida varias veces. Consulte estos enlaces: /stats//search?q=random+forest+overfit
Pero puedo darle la respuesta breve: sí, se sobreajusta, y a veces necesita controlar la complejidad de los árboles en su bosque, o incluso podarlos cuando crecen demasiado, pero esto depende de la biblioteca que use para construyendo el bosque. Por ejemplo, en
randomForest
R solo puedes controlar la complejidadfuente
He hecho un experimento muy simple. He generado los datos sintéticos:
He entrenado dos modelos de Random Forest:
El modelo con árboles llenos tiene un error de tren inferior pero un error de prueba mayor que el modelo con árboles podados. Las respuestas de ambos modelos:
Es una clara evidencia de sobreajuste. Luego tomé los hiperparámetros del modelo sobreajustado y verifiqué el error al agregar en cada árbol del paso 1. Tengo la siguiente trama:
Como puede ver, el error de sobreajuste no cambia al agregar más árboles, pero el modelo está sobreajustado. Aquí está el enlace para el experimento que hice.
fuente
BASE DE DATOS ESTRUCTURADA -> ERRORES OOB ENGAÑOSOS
He encontrado casos interesantes de sobreajuste de RF en mi práctica laboral. Cuando los datos están estructurados, los sobreajustes de RF en observaciones OOB.
Detalle:
Intento predecir los precios de la electricidad en el mercado spot de electricidad para cada hora (cada fila del conjunto de datos contiene parámetros de precio y sistema (carga, capacidades, etc.) para esa hora).
Los precios de la electricidad se crean en lotes (24 precios creados en el mercado de la electricidad en una sola fijación en un momento).
Entonces, los OOB obs para cada árbol son subconjuntos aleatorios de un conjunto de horas, pero si predices las próximas 24 horas, lo haces todo de una vez (en el primer momento obtienes todos los parámetros del sistema, luego predices 24 precios, entonces hay una fijación que produce esos precios), por lo que es más fácil hacer predicciones OOB, que para todo el día siguiente. Los OOB obs no están contenidos en bloques de 24 horas, sino que se dispersan de manera uniforme, ya que existe una autocorrelación de errores de predicción, es más fácil predecir el precio de una sola hora que falta para todo el bloque de horas perdidas.
más fácil de predecir en caso de autocorrelación de error:
conocido, conocido, predicción, conocido, predicción - caso OBB
más difícil:
conocido, conocido, conocido, predicción, predicción - caso de predicción del mundo real
Espero que sea interesante
fuente