НачатьНачать бесплатно

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)
Редактировать и запускать код