Побудуйте модель random forest для оренди велосипедів
У цій вправі ви знову побудуєте модель для прогнозування кількості велосипедів, орендованих за годину, як функції погоди, типу дня (свято, робочий день або вихідний) і часу доби. Ви навчатимете модель на даних за липень.
Ви використаєте пакет ranger для побудови моделі random forest. Для цієї вправи ключові аргументи виклику ranger() (docs) такі:
formuladatanum.trees: кількість дерев у лісі.respect.unordered.factors: визначає, як обробляти не впорядковані факторні змінні. Рекомендуємо встановити значення "order" для регресії.seed: оскільки алгоритм випадковий, встановіть значення seed, щоб отримати відтворювані результати
Оскільки вхідних змінних багато, для зручності ми задамо ціль і вхідні ознаки у змінних outcome і vars,
а для складання рядка, що представляє формулу моделі, скористаємося paste() (docs).
Датафрейм bikesJuly уже завантажено. У зразку коду задано назви цільової та вхідних змінних.
Ця вправа є частиною курсу
Кероване навчання в R: регресія
Інструкції до вправи
- Заповніть пропуски, щоб створити формулу
fmla, яка задаєcntяк функцію вхідних змінних. Виведіть її. - Завантажте пакет
ranger. - Використайте
ranger, щоб навчити модель на данихbikesJuly:bike_model_rf.- Перший аргумент
ranger()— формулаfmla. - Використайте 500 дерев і
respect.unordered.factors = "order". - Встановіть сид у
seedдля відтворюваних результатів. - Виведіть модель. Яке значення R-squared?
- Перший аргумент
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# bikesJuly is available
str(bikesJuly)
# Random seed to reproduce results
seed
# The outcome column
(outcome <- "cnt")
# The input variables
(vars <- c("hr", "holiday", "workingday", "weathersit", "temp", "atemp", "hum", "windspeed"))
# Create the formula string for bikes rented as a function of the inputs
(fmla <- paste(___, "~", paste(___, collapse = " + ")))
# Load the package ranger
___
# Fit and print the random forest model
(bike_model_rf <- ranger(___, # formula
___, # data
num.trees = ___,
respect.unordered.factors = ___,
seed = ___))