7 votos

regresión no lineal: Gráficos de residuos y RMSE de la variable objetivo en bruto y logarítmica

Tengo los precios de alquiler de las casas, la distribución es un poco sesgada (1,84 por scipy.stats.skew).

Fig. 1: Image1

Ejecuto XGBRegressor con datos no transformados (1.) y con la variable objetivo transformada logarítmicamente (2.). En 2. también exponencio la variable objetivo (llevándola a la escala bruta) para comparar los gráficos de residuos.

  1. Ejecuto XGBRegressor en datos no transformados y obtengo RMSE de prueba: 177 y el siguiente gráfico de residuos y precios predichos frente a precios reales. El gráfico muestra que los datos sufren de heteroscedasticidad.

Fig. 2: Image2

  1. Si ejecuto XGBRegressor en datos log tranformados, obtengo RMSE de prueba: 180,5 (si exponencio hacia atrás) y el siguiente gráfico de residuos y precios predichos frente a reales (en datos log).

Fig.3 Image3 Si exponetiate la variable objetivo log y predicciones de 2. Obtengo siguientes parcelas. Se ven casi como los gráficos de 1. y muestra el mismo problema con heteroscedasticidad. Por lo tanto, no obtuve ninguna mejora.

Fig.4: Image4

Mis preguntas son:

  1. Por lo que veo, la transformación logarítmica resolvió la asimetría, pero no mejoró el RMSE (supongo que es porque utilizo un algoritmo no lineal, por lo que el algoritmo no se ve afectado por la asimetría). Eso significa que no debería transformarlo logarítmicamente y no prestar atención a los gráficos de residuos. ¿Es correcto?

  2. ¿Debería preocuparme por la asimetría cuando utilizo regresores no lineales y debería hacer una transformación logarítmica? Si no es así, pero sigo observando una mejora en las métricas (RMSE) en los datos logarítmicos, ¿puedo decir: "Lo registré porque me proporcionó la mejora en mis métricas" (lo cual suena a argumentación muy débil)? ¿Cuál es la explicación de este comportamiento? ¿Se debe a la convergencia del algoritmo de optimización?

  3. Además, ¿sigue siendo un buen diagnóstico un gráfico de residuos cuando utilizo un regresor no lineal?

  4. Cuando utilizo un regresor lineal y mis datos están sesgados, pero el RMSE de los datos no transformados es inferior al de los datos transformados logarítmicamente, ¿qué debo hacer y qué significa (o por qué sucede)?

0 votos

¿Los datos residuales y ajustados frente a los previstos proceden de datos fuera de la muestra o de los mismos datos en los que se ha ajustado el modelo?

0 votos

Que re del conjunto de pruebas

7voto

EdM Puntos 5716

Aunque su pregunta parece basarse en el uso de un algoritmo de árbol de regresión potenciada (XGBRegressor, con el que no tengo experiencia), sus problemas parecen ser algunos que también se enfrentan en la regresión lineal estándar, en la que baso gran parte de mi respuesta. La forma de proceder depende de lo que intente conseguir. Para empezar, es necesario aclarar algunas cuestiones.

En primer lugar, un modelo de regresión suele considerarse lineal si es lineal en los parámetros . En esta terminología, las transformaciones no lineales de las variables predictoras o de las variables resultado/objetivo no hacen por sí mismas que un modelo sea no lineal. Como es evidente que está utilizando árboles de regresión potenciados en lugar de una regresión lineal clásica, no está claro que la distinción lineal/no lineal sea realmente aplicable.

En segundo lugar, no es necesario que la variable objetivo tenga una distribución simétrica en la regresión lineal estándar, aunque esto puede ayudar con los árboles de regresión. Como indica su enfoque adecuado en los gráficos de residuos, la distribución de los residuos es importante.

En tercer lugar, el RMSE de todo el conjunto de datos (que es lo que parece estar mostrando) podría no ser la mejor medida de la calidad de su modelo. Sobre todo si pretende utilizar el modelo para predicciones sobre nuevos casos, la validación cruzada o el bootstrapping podrían proporcionar estimaciones mucho mejores de ese rendimiento futuro.

Ahora a sus preguntas:

  1. Las regresiones para los precios lineales y log-transformados intentan cosas diferentes: la primera intenta minimizar el error en términos absolutos (por ejemplo, dólares), la segunda intenta minimizar el error en términos relativos/fraccionales (por ejemplo, error porcentual en el precio predicho). ¿Qué tipo de error le interesa para su aplicación? Si le importan más los errores fraccionarios, debería utilizar la transformación logarítmica y no debería preocuparse de que el error en términos absolutos parezca mayor cuando realice la retrotransformación a partir de la escala logarítmica. Sin embargo, siempre debe prestar atención a los residuos en cualquier escala que elija.

  2. La asimetría en la variable objetivo es un problema en la regresión lineal estándar siempre que algunas variables predictoras también estén adecuadamente asimétricas para que los residuos no estén asimétricos. A menudo es necesario transformar tanto las variables predictoras como las variables objetivo para cumplir los supuestos de una regresión lineal y producir residuos que se comporten correctamente. Con los enfoques de regresión basados en árboles que utilizan valores medios de las variables objetivo para elegir los límites de los árboles, se puede recomendar eliminar la asimetría de la variable objetivo; los autores de ISLR hacen una transformación logarítmica con este fin en su ejemplo de árbol de regresión (pp. 304 y siguientes). La transformación logarítmica significa que los residuos estarán en términos fraccionarios en lugar de absolutos, lo que parece tener sentido para este tipo de datos.

  3. Siempre hay que prestar atención a las parcelas residuales.

  4. Comparar el RMSE de la regresión para precios no transformados con el RMSE exponenciado de la regresión para precios transformados logarítmicamente no siempre es muy útil. En su análisis log-transformado, el caso con el mayor error absoluto en la escala log (fraccional) es también el más bajo en precio absoluto predicho. Ese caso contribuirá en gran medida al error RMSE en la escala log-transformada (al igual que otros casos de precios bajos), pero quizá contribuya muy poco al RMSE en términos absolutos en la regresión para precios no transformados. Eso podría explicar su observación.

En cuanto a cómo proceder, parece que la transformación logarítmica de los precios es útil, pero que su modelo no trata demasiado bien algunos de los precios más extremadamente bajos. Es posible que tenga que incorporar sus conocimientos sobre el tema subyacente, por ejemplo, si hay algo especial en esos casos (aparte de que no se ajustan bien) que hace que no sea apropiado incluirlos en el modelo (por ejemplo, puede que tenga que excluir todos los alquileres que se cobran entre los miembros de una familia, que podrían ser inferiores a los alquileres de mercado, o los alquileres en unidades subvencionadas, si las hay), o si las transformaciones de algunas variables predictoras podrían mejorar el rendimiento. La elección de distintos parámetros de ajuste para el refuerzo podría ayudar. Y de nuevo, debería considerar una medida de la calidad del modelo distinta del RMSE en todo el conjunto de datos.

Por último, el enfoque clásico de regresión lineal puede superar a los enfoques basados en árboles en muchas situaciones. Podría probar una regresión lineal estándar con una selección basada en el conocimiento y transformaciones adecuadas de los predictores y los valores de las variables objetivo, con validación cruzada o bootstrapping para validar su enfoque de modelado.

0 votos

Aquí muestro el RMSE de prueba y no de todo el conjunto de datos,que ya es un buen estimador del rendimiento.En ISLR hicieron la log-transformación sólo para tener una curva de campana de datos,no se menciona nada más.En cuanto a la argumentación sobre asimetría y valores medios para elegir puntos de corte,el índice de la media en variable no transformada es igual al índice de la media en log-transformada,por lo que no hay influencia de la log-transformación.

0 votos

La única razón que veo para utilizar el RMSLE es el gráfico de residuos correctos en 2. en datos logarítmicos.En cuanto al concepto de "qué minimizar",el RMSE del logaritmo de la variable objetivo (RMSLE) penalizará las diferencias grandes y pequeñas de la misma manera, las diferencias grandes pueden contribuir más al RMSE.Si obtengo un RMSLE de prueba de 0,12,¿me dice que la desviación está dentro de 1,2. veces mayor o menor que la medición real? Mientras que con un RMSE de 180, sé que el usuario debe tener en cuenta +-180 dentro del valor predicho.

0 votos

@JekaterinaKokatjuhha Como una suma en una escala logarítmica es un producto en la escala original, exponenciando +/- el error cuadrático medio en una escala logarítmica natural se obtienen los factores por los que multiplicar el valor predicho en la escala original para obtener el rango correspondiente con errores. Para valores razonables del error cuadrático medio cuadrático en una escala logarítmica natural, éstos se aproximan a los errores fraccionarios o, lo que es lo mismo, 100 veces el error cuadrático medio cuadrático se aproxima al error porcentual. Para su ejemplo con 0.12 RMSLE, exp(.12) = 1.127, exp(-0.12) = 0.886, o aproximadamente 12% de error en la escala original.

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