PCA в tidymodels
С точки зрения построения моделей, PCA позволяет создавать модели с меньшим числом признаков, при этом сохраняя большую часть информации из исходных данных. Однако, как вы уже видели, недостаток PCA — сложность интерпретации модели. В этом упражнении вы сосредоточитесь на построении модели линейной регрессии на подмножестве данных о продажах домов. Целевая переменная — price.
Модель, построенная непосредственно по данным без извлечения главных компонент, имеет RMSE равный $236 461,4. Вы применените PCA с помощью tidymodels и сравните новое значение RMSE. Помните: чем ниже RMSE, тем лучше.
Пакеты tidyverse и tidymodels уже загружены.
Это упражнение является частью курса
Снижение размерности в R
Инструкции к упражнению
- Постройте рецепт PCA на основе
trainдля извлечения пяти главных компонент. - Обучите рабочий процесс с моделью по умолчанию
linear_reg(). - Создайте фрейм данных с прогнозами на основе
test, содержащий фактические и предсказанные значения. - Вычислите RMSE для модели линейной регрессии с уменьшением размерности через PCA.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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)