Bangun model random forest untuk penyewaan sepeda
Dalam latihan ini, Anda akan kembali membangun model untuk memprediksi jumlah sepeda yang disewa dalam satu jam sebagai fungsi dari cuaca, jenis hari (hari libur, hari kerja, atau akhir pekan), dan waktu pada hari tersebut. Anda akan melatih model menggunakan data dari bulan Juli.
Anda akan menggunakan paket ranger untuk menyesuaikan model random forest. Untuk latihan ini, argumen kunci pada pemanggilan ranger() (docs) adalah:
formuladatanum.trees: jumlah pohon dalam hutan.respect.unordered.factors: Menentukan cara memperlakukan variabel faktor tak berurutan. Kami merekomendasikan menetapkannya ke "order" untuk regresi.seed: karena ini adalah algoritma acak, Anda akan menetapkan seed agar hasil dapat direproduksi
Karena ada banyak variabel input, demi kemudahan kita akan menentukan hasil dan input dalam variabel outcome dan vars,
dan menggunakan paste() (docs) untuk menyusun string yang merepresentasikan formula model.
Data frame bikesJuly telah dimuat sebelumnya. Kode contoh telah menetapkan nama variabel hasil dan input.
Latihan ini adalah bagian dari kursus
Supervised Learning di R: Regresi
Petunjuk latihan
- Lengkapi bagian kosong untuk membuat formula
fmlayang menyatakancntsebagai fungsi dari input. Cetak hasilnya. - Muat paket
ranger. - Gunakan
rangeruntuk menyesuaikan model pada databikesJuly:bike_model_rf.- Argumen pertama untuk
ranger()adalah formula,fmla. - Gunakan 500 pohon dan
respect.unordered.factors = "order". - Tetapkan seed ke
seedagar hasil dapat direproduksi. - Cetak modelnya. Berapa nilai R-squared?
- Argumen pertama untuk
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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 = ___))