Hola, estoy estudiando técnicas de regresión.
Mis datos tienen 15 características y 60 millones de ejemplos (tarea de regresión).
Cuando probé muchas técnicas de regresión conocidas (árbol impulsado por gradiente, regresión de árbol de decisión, AdaBoostRegressor, etc.), la regresión lineal funcionó muy bien.
Anotó casi mejor entre esos algoritmos.
¿Cuál puede ser la razón de esto? Debido a que mis datos tienen muchos ejemplos, el método basado en DT puede encajar bien.
- cresta de regresión lineal regularizada, el lazo se desempeñó peor
¿Alguien puede decirme acerca de otros algoritmos de regresión con buen rendimiento?
- ¿Es la máquina de factorización y la regresión de vectores de soporte una buena técnica de regresión para probar?
regression
modeling
deep-learning
model
cart
aflicción
fuente
fuente
Respuestas:
Usted debe no sólo tirar los datos a diferentes algoritmos y vistazo a la calidad de las predicciones. Debe comprender mejor sus datos, y la forma de hacerlo es, primero, visualizar sus datos (las distribuciones marginales). Incluso si finalmente está interesado en las predicciones, estará en una mejor posición para hacer mejores modelos si comprende mejor los datos. Entonces, primero, intente comprender mejor los datos (y los modelos simples ajustados a los datos), y luego estará en una posición mucho mejor para crear modelos más complejos y, con suerte, mejores.
Luego, ajuste los modelos de regresión lineal, con sus 15 variables como factores determinantes (más adelante puede ver las posibles interacciones). Luego, calcule los residuos de ese ajuste, es decir,
Para saber qué verificar, debe comprender los supuestos detrás de la regresión lineal, consulte ¿Qué es una lista completa de los supuestos habituales para la regresión lineal?
Una suposición habitual es la homocedasticidad, es decir, la varianza constante. Para verificar eso, trace los residuosryo contra los valores predichos, Y^yo . Para comprender este procedimiento, ver: ¿Por qué se construyen gráficas residuales usando los residuales frente a los valores predichos? .
Otros supuestos es la linealidad . Para verificarlos, trace los residuos contra cada uno de los predictores en el modelo. Si ve alguna curiosidad en esas parcelas, eso es evidencia contra la linealidad. Si encuentra no linealidad, puede intentar algunas transformaciones o (enfoque más moderno) incluir ese predictor no lineal en el modelo de una manera no lineal, tal vez usando splines (¡tiene 60 millones de ejemplos, así que debería ser bastante factible! )
Luego debe verificar las posibles interacciones. Las ideas anteriores se pueden usar también para variables que no están en el modelo ajustado . Como se ajusta a un modelo sin interacciones, eso incluye variables de interacción, como el productoXyo⋅zyo para dos variables X , z . Entonces, grafica los residuos contra todas estas variables de interacción. Una publicación de blog con muchas parcelas de ejemplo es http://docs.statwing.com/interpreting-residual-plots-to-improve-your-regression/
Un tratamiento de larga duración es R Dennis Cook y Sanford Weisberg: "Residuos e influencia en la regresión", Chapman y Hall. Un tratamiento más moderno de duración de libro es Frank Harrell: "Estrategias de modelado de regresión".
Y, volviendo a la pregunta en el título: "¿Puede la regresión basada en árbol funcionar peor que la regresión lineal simple?" Sí, por supuesto que puede. Los modelos basados en árboles tienen como función de regresión una función de paso muy compleja. Si los datos realmente provienen (se comportan como simulados) de un modelo lineal, entonces las funciones de paso pueden ser una mala aproximación. Y, como se muestra en los ejemplos de la otra respuesta, los modelos basados en árboles podrían extrapolar mal fuera del rango de los predictores observados. También puedes probar randomforrest y ver cuánto mejor es eso que un solo árbol.
fuente
Peter Ellis tiene un ejemplo muy simple
donde la regresión lineal funciona mejor que los árboles de regresión, extrapolando más allá de los valores observados en la muestra.
En esta imagen, los puntos negros son los valores observados, y los puntos coloreados son los valores predichos. Los datos reales se generan de acuerdo con una línea simple con algo de ruido, por lo que la regresión lineal y la red neuronal hacen un buen trabajo extrapolando más allá de los datos observados. Los modelos basados en árboles no.
Ahora, con 60 millones de puntos de datos, es posible que no esté preocupado por esto. (¡Aunque el futuro siempre me sorprende!) Pero es una ilustración intuitiva de una situación en la que los árboles fallarán.
fuente
Es un hecho bien conocido que los árboles no son adecuados para modelar relaciones verdaderamente lineales. Aquí hay una ilustración (Fig. 8.7) del libro ISLR :
Fila superior: un ejemplo de clasificación bidimensional en el que el límite de decisión real es lineal y se indica mediante las regiones sombreadas. Un enfoque clásico que asume un límite lineal (izquierda) superará a un árbol de decisión que realiza divisiones paralelas a los ejes (derecha).
Entonces, si su variable dependiente depende de los regresores de una manera más o menos lineal, esperaría que la "regresión lineal funcione muy bien".
fuente
Cualquier enfoque basado en el árbol de decisión (CART, C5.0, bosques aleatorios, árboles de regresión potenciada, etc.) identifica áreas homogéneas en sus datos y asigna el valor medio de los datos contenidos en esa región a la 'licencia' correspondiente. Por lo tanto, son granulares y luego, deben mostrar una serie de pasos en las salidas. Aquellos basados en 'bosques' no muestran ese fenómeno de manera pronunciada, pero todavía está allí. La agregación de una gran cantidad de árboles lo matiza. Cuando un valor dado está fuera del rango original, el dato se asigna a la 'licencia' que incluye la condición extrema encontrada en el conjunto de datos de entrenamiento y, en consecuencia, la salida es el valor medio de los valores contenidos en esa licencia. Por lo tanto, no es posible la extrapolación. Por cierto, los ANN son pobres extrapoladores. Puedes comprobar: Pichaid Varoonchotikul - Pronóstico de inundaciones usando Neural Artificial y Hettiarachchi et al. La extrapolación de las redes neuronales artificiales para el modelado de la lluvia y las relaciones de escorrentía son muy ilustrativas y fáciles de encontrar en la red. ¡Buena suerte!
fuente