En la parte 2 de este documento se presentaron los resultados de modelos de regresión lineal simple (en función de una sola variable independiente) haciendo uso de los conjuntos de datos Train (para establecimiento de las regresiones) y Test (para la evaluación de los modelos. Para los modelos a continuación se trabaja con los mismos conjuntos de datos a fin de que sea coherente la comparación de los resultados del RMSE.
Los modelos desarrollados se enfocan en el uso de al menos dos variables independientes en el mismo modelo. Las variables seleccionadas para estos se hacen de acuerdo a los resultados de los coeficientes de correlación expuestos en la parte 1 del documento.
##
## Call:
## lm(formula = medv ~ ., data = Train)
##
## Residuals:
## Min 1Q Median 3Q Max
## -13.0424 -2.7112 -0.6845 1.8242 25.6878
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 54.409176 6.578588 8.271 2.19e-15 ***
## crim -0.122637 0.034473 -3.557 0.000421 ***
## zn 0.066662 0.016126 4.134 4.38e-05 ***
## indus 0.023657 0.072949 0.324 0.745891
## chas0 -2.566918 0.973069 -2.638 0.008679 **
## nox -21.028399 4.425251 -4.752 2.85e-06 ***
## rm 3.119220 0.477061 6.538 1.98e-10 ***
## age 0.006570 0.015723 0.418 0.676273
## dis -1.647456 0.234950 -7.012 1.06e-11 ***
## rad6 -5.868911 1.731259 -3.390 0.000771 ***
## rad5 -4.399052 1.608495 -2.735 0.006529 **
## rad3 -2.526707 1.900659 -1.329 0.184508
## rad4 -4.481274 1.528840 -2.931 0.003578 **
## rad8 -2.287668 1.889068 -1.211 0.226637
## rad1 -7.526110 2.055828 -3.661 0.000286 ***
## rad2 -5.254370 2.163016 -2.429 0.015590 *
## rad7 -1.948033 2.007174 -0.971 0.332389
## tax -0.009754 0.004301 -2.268 0.023893 *
## ptratio -0.978826 0.169021 -5.791 1.45e-08 ***
## lstat -0.547313 0.056910 -9.617 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.875 on 385 degrees of freedom
## Multiple R-squared: 0.7437, Adjusted R-squared: 0.731
## F-statistic: 58.8 on 19 and 385 DF, p-value: < 2.2e-16
El modelo expuesto explica alrededor de un 73% la variabilidad de medv, con un error estándar residual de 4.88 miles de dólares frente a los valores reales. No todos los estimadores de la pendiente de cada una de las 12 variables independientes podrían considerarse diferentes a cero, al verificar los p-valores, se concluye que es posible excluir las variables age e indus, esto sin que se presenten cambios relevantes en el nivel de variabilidad explicado y el error estándar residual, escenario que se verificará en el próximo modelo a evaluar.
Uno aspecto importante a resaltar es el modelo incluye dos variables categóricas:
chas: toma dos niveles, 1 y 0. En el modelo se incluye la variables chas0
rad: toma nueve niveles, 24, 8, 7, 6, 5, 4, 3, 2, 1. El modelo incluye las variables rad1 a rad8. De estas, rad3, rad7 y rad8, presentan p-valores altos por lo que las mismas se pueden excluir del modelo definitivo
En este orden de ideas, el modelo con la exclusión de las variables ya mencionadas sería:
##
## Call:
## lm(formula = medv ~ ., data = Train_mod)
##
## Residuals:
## Min 1Q Median 3Q Max
## -13.0205 -2.7284 -0.6838 1.7049 26.2262
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 49.812709 5.675052 8.777 < 2e-16 ***
## crim -0.112512 0.033276 -3.381 0.000795 ***
## zn 0.067027 0.015661 4.280 2.36e-05 ***
## chas0 -2.642505 0.959870 -2.753 0.006182 **
## nox -19.592431 4.040413 -4.849 1.79e-06 ***
## rm 3.178922 0.462186 6.878 2.42e-11 ***
## dis -1.694070 0.213429 -7.937 2.22e-14 ***
## rad6 -4.194159 1.214973 -3.452 0.000617 ***
## rad5 -2.495676 0.823792 -3.029 0.002613 **
## rad4 -2.668780 0.741735 -3.598 0.000362 ***
## rad1 -5.536821 1.433064 -3.864 0.000131 ***
## rad2 -2.917763 1.293621 -2.256 0.024655 *
## tax -0.005308 0.002569 -2.066 0.039450 *
## ptratio -0.927350 0.163939 -5.657 2.99e-08 ***
## lstat -0.538813 0.053375 -10.095 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.856 on 390 degrees of freedom
## Multiple R-squared: 0.7424, Adjusted R-squared: 0.7331
## F-statistic: 80.26 on 14 and 390 DF, p-value: < 2.2e-16
La exclusión de las variables no presenta cambios relevantes en el error estándar residual ni en el coeficiente de R cuadrado ajustado. Con los coeficientes definitivos, la predicción de la variable dependiente medv para el conjunto de datos Test comparados con los valores reales se verían de la siguiente manera
La diferencia más relevante en el la regresión lineal múltiple (que incluye las 10 variables independientes por la exclusión de 2 de estas dados los p-valores) se observa para valores reales de medv que son superiores a 29, ya que en este rango el modelo tiende a predecir valores menores que lo datos reales. Para los demás rangos de datos los resultados de la predicción tienden a mantenerse cerca de los valores reales, aunque se presentan algunas rachas, en especial, por encima de los valores reales (para valores medv reales entre 23.3 y 24.5).
Cabe resaltar que el modelo lineal no es posible presentarlo gráficamente debido a la cantidad de variables.
##
## Call:
## lm(formula = medv ~ rm + lstat, data = Train)
##
## Residuals:
## Min 1Q Median 3Q Max
## -17.292 -3.603 -1.164 2.072 27.397
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.36638 3.65373 0.374 0.709
## rm 4.70460 0.51000 9.225 <2e-16 ***
## lstat -0.65792 0.05038 -13.058 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 5.753 on 402 degrees of freedom
## Multiple R-squared: 0.6273, Adjusted R-squared: 0.6254
## F-statistic: 338.3 on 2 and 402 DF, p-value: < 2.2e-16
En el planteamiento del modelo de regresión con dos variables, se observa un dato un poco mayor del 62% de representación de la variabilidad de medv y un error estándar residual de 5.75 miles de dólares. De acuerdo a los resultados en la estimación de los coeficientes, la ecuación del modelo sería así:
\[ medv = 4.70460*rm - 0.65792*lstat + 1.36638 \]
Una vez realizada la predicción de datos con el modelo anterior, los resultados reales frente a los de predicción presentados como dispersión en un espacio XYZ se observan así:
Como se ha observado hasta el momento, para cada una de las regresiones lineales, los modelos presentan dificultades en la predicción de valores de medv que tienen valores reales altos, en la gráfica se pueden detectar que los valores medv reales superiores a 41 tienen predicciones inferiores, esto es, valores alrededor de 10 por debajo del real.
La comparación de los dos modelos planteados en esta parte del documento se observa en la siguiente gráfica
Los dos modelos no reflejan diferencias significativas en su predicción, sin embargo, en cuanto al modelo de dos variables parece tener un mejor desempeño en las predicciones para valores reales de medv menores a 37 mientras que las predicciones superiores a este valor tienen resultados ligeramente más alejados de los valores reales en comparación con el modelo que incluye todas las variables. Cabe resaltar que estas conclusiones se soportan en la percepción visual que brinda la gráfica. La cuantificación de la “calidad” en las predicciones se presentará con el cálculo del RMSE.
Se calculan tres valores de RMSE, uno para cada expuesto, que a su vez se compararán con los ya calculados para los modelos de regresión lineal simple de la parte 2 de este documento.
El RMSE del modelo todas las variables se calcula en 4.32 y el de 2 variables en 4.63. Estos resultados permiten concluir que los modelos con más variables presentan predicciones más cercanas a los valores reales. La diferencia en el RMSE entre los dos modelos es alrededor de 310 dólares, valor que podría no ser significativo. Se resalta que si se observa una diferencia importante con los modelos de regresión lineal simple pues la diferencia entre RMSE está en torno a los mil dólares.