15 votos

El PCA antes de la Regresión Forestal Aleatoria proporciona mejores puntuaciones de predicción para mi conjunto de datos que sólo la Regresión Forestal Aleatoria, ¿cómo explicarlo?

Tengo un conjunto de datos de regresión donde las características son del orden de ~ 400 variables y el conjunto de datos en sí es de alrededor de 300 muestras. Intenté utilizar la regresión de Random Forest (RFR) en el conjunto de datos y utilicé la puntuación fuera de bolsa (oob) o la puntuación de k-fold cv para juzgar su rendimiento. El tipo de comportamiento que veo en este momento y al que estoy tratando de dar sentido es que si utilizo directamente RFR, no importa cuántos árboles utilice o qué tipo de ajuste de parámetros incorpore, no obtendré un buen rendimiento, mientras que si incorporo un PCA antes de RFR, puedo ejecutar una búsqueda de cuadrícula para el número de PCs antes de RFR y en torno a 8 o 9 PCs, el flujo de procesamiento podría proporcionar una puntuación algo descendente. La puntuación subiría y bajaría en torno a este "número óptimo de PC" cuando barriera el número de PC.

Estoy tratando de dar sentido a este comportamiento, ya que intenté utilizar el mismo flujo de procesamiento en un par de conjuntos de datos de juguete que encontré y, por lo general, con o sin PCA no cambia mucho el rendimiento de RFR. Una de las preocupaciones que tenía es que mi conjunto de datos es un conjunto de datos muy ruidoso, y la mayoría de los métodos de regresión que he probado hasta ahora no proporcionan un buen rendimiento excepto este flujo PCA-RFR. Así que no estoy seguro de si se trata de una situación de "basura en la basura" en la que esta cosa de PCA-RFR simplemente se ajusta demasiado a mi conjunto de datos. Por otro lado, mis características son bastante colineales entre sí y no tengo muchos datos para entrenar mi modelo, por lo que tiene sentido que un preprocesamiento PCA pueda ayudar a eliminar el ruido del conjunto de datos un poco y también puede ayudar a reducir el exceso de ajuste de mi conjunto de entrenamiento con un conjunto más pequeño de "características reducidas", pero RFR es algo nuevo para mí, así que no sé si hay alguna teoría detrás de todo esto.

Si alguien ha visto esto antes y tiene una buena explicación o tiene algún documento de referencia sobre el comportamiento de PCA-RFR, por favor hágamelo saber y le estaré muy agradecido.

1 votos

PCA + algún tipo de modelo de regresión (típicamente logístico) es una vía muy utilizada. Básicamente, el PCA permite reducir el número de predictores y descorrelacionarlos. Por ello, mejora el rendimiento del modelo posterior. Aunque en el caso de la RF (en comparación, por ejemplo, con la regresión lineal o logística), las ganancias deberían ser mínimas porque, de entrada, el modelo ya trata bien los predictores correlacionados y los conjuntos de datos de alta dimensión.

0 votos

(+1) Tenemos una pregunta muy similar sobre PCA+RF stats.stackexchange.com/questions/47457 pero no veo respuestas satisfactorias allí. He votado para cerrar esta pregunta como un duplicado de un hilo general en PCA + modelo predictivo. No estoy seguro de que haya algo específico sobre la RF aquí.

0 votos

La optimización de una ecuación con 1 variable casi siempre da mejores resultados que la optimización de una ecuación con 10 variables, esa es la conocida maldición de la dimensionalidad. Cuando se hace un ACP, se reduce esencialmente la cantidad de variables, pero se siguen describiendo los mismos datos.

16voto

PolinLnd Puntos 166

El uso de Random Forest en un conjunto de datos como el que has descrito tiene dos grandes problemas:

  1. El bosque aleatorio no funciona bien cuando las características son trasnformación monótona de otras características (esto hace que los árboles del bosque sean menos independientes entre sí).

  2. Lo mismo ocurre cuando se tienen más características que muestras: el bosque aleatorio probablemente sobreajustará el conjunto de datos, y tendrá un pobre rendimiento fuera de bolsa.

Al utilizar el PCA se eliminan estos dos problemas que reducen el rendimiento de Ranfom Forest:

  1. se reduce el número de funciones.
  2. se deshace de los rasgos colineales características colineales. (todos los rasgos colineales acabarán en un único PCA componente).

8voto

Thieme Hennis Puntos 31

Creo que te acabas de responder a ti mismo. En general, la RF no es buena en entornos de alta dimensión o cuando se tienen más características que muestras, por lo que reducir las características de 400 a 8 ayudará, especialmente si tiene muchas características colineales ruidosas. En este caso, también hay menos posibilidades de sobreajustar, pero hay que tener cuidado con la doble inmersión y el sesgo de selección del modelo. Así que usted ejecuta muchos modelos y elige el mejor, que podría ser el mejor sólo por casualidad y no generalizaría en los datos no vistos.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X