PCA en tidymodels
Desde la perspectiva de construcción de modelos, PCA te permite crear modelos con menos variables, pero que aún capturan la mayor parte de la información de los datos originales. Sin embargo, como has visto, una desventaja de PCA es la dificultad de interpretar el modelo. En este ejercicio, te centrarás en construir un modelo de regresión lineal usando un subconjunto del conjunto de datos de ventas de casas. La variable objetivo es price.
Un modelo construido directamente a partir de los datos sin extraer componentes principales tiene un RMSE de $236,461.4. Aplicarás PCA con tidymodels y compararás el nuevo RMSE. Recuerda: cuanto menor sea el RMSE, mejor.
Los paquetes tidyverse y tidymodels ya están cargados.
Este ejercicio forma parte del curso
Reducción de la dimensionalidad en R
Instrucciones del ejercicio
- Crea una receta de PCA usando
trainpara extraer cinco componentes principales. - Ajusta un flujo de trabajo con una especificación de modelo
linear_reg()por defecto. - Crea un data frame de predicciones de prueba usando
testque contenga los valores reales y los predichos. - Calcula el RMSE para el modelo de regresión lineal reducido con PCA.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Build a PCA recipe
pca_recipe <- ___(___ ~ ___ , data = ___) %>%
___(___()) %>%
___(___(), num_comp = ___)
# Fit a workflow with a default linear_reg() model spec
house_sales_fit <- ___(preprocessor = ___, spec = ___()) %>%
___(___)
# Create prediction df for the test set
house_sales_pred_df <- ___(___, test) %>%
___(test %>% select(___))
# Calculate the RMSE
___(house_sales_pred_df, ___, .pred)