Dalam pendekatan random forest, sejumlah besar pohon keputusan dibuat. Setiap pengamatan dimasukkan ke dalam setiap pohon keputusan. Hasil paling umum untuk setiap pengamatan digunakan sebagai keluaran akhir. Pengamatan baru dimasukkan ke semua pohon dan mengambil suara mayoritas untuk setiap model klasifikasi.
Perkiraan kesalahan dibuat untuk kasus-kasus yang tidak digunakan saat membangun pohon. Itu disebut perkiraan kesalahan OOB (Out-of-bag) yang disebutkan sebagai persentase.
Paket R “randomForest” digunakan untuk membuat hutan acak.
Gunakan perintah di bawah ini di konsol R untuk menginstal paket dan juga harus menginstal paket dependen jika ada.
install.packages ("randomForest)
Paket “randomForest” memiliki fungsi randomForest()
yang digunakan untuk membuat dan menganalisis forest secara acak.
Sintaks dasar untuk membuat hutan acak di R adalah :
randomForest (formula, data)
Deskripsi :
formula
adalah rumus yang mendeskripsikan variabel prediktor dan respon.
data
adalah nama kumpulan data yang digunakan.
Kita akan menggunakan set data built-in R bernama readingSkills untuk membuat pohon keputusan. Hal ini menggambarkan skor keterampilan membaca seseorang jika kita mengetahui variabel “usia”, “sepatu”, “skor”, dan apakah orang tersebut adalah penutur asli.
Berikut ini contoh datanya :
# Muat paket pesta. Ini secara otomatis akan memuat lainnya # paket yang dibutuhkan. library(party) # Mencetak beberapa catatan dari kumpulan data readingSkills. print(head(readingSkills))
Output :
nativeSpeaker age shoeSize score
1 yes 5 24.83189 32.29385
2 yes 6 25.95238 36.63105
3 no 11 30.42170 49.60593
4 yes 7 28.66450 40.28456
5 yes 11 31.88207 55.46085
6 yes 10 30.07843 52.83124
Loading required package: methods
Loading required package: grid
...............................
...............................
Contoh
Kita akan langsung menggunakan fungsi randomForest()
untuk membuat pohon keputusan dan melihat grafiknya.
# Muat paket party Ini secara otomatis akan memuat lainnya # paket yang dibutuhkan. library(party) library(randomForest) # Buat orest. output.forest <- randomForest(nativeSpeaker ~ age + shoeSize + score, data = readingSkills) # Lihat hasilnya print(output.forest) # Pentingnya setiap prediktor. print(importance(fit,type = 2))
Output :
Call:
randomForest(formula = nativeSpeaker ~ age + shoeSize + score,
data = readingSkills)
Type of random forest: classification
Number of trees: 500
No. of variables tried at each split: 1
OOB estimate of error rate: 1%
Confusion matrix:
no yes class.error
no 99 1 0.01
yes 1 99 0.01
MeanDecreaseGini
age 13.95406
shoeSize 18.91006
score 56.73051
Kesimpulan
Dari random forest yang ditunjukkan di atas kita dapat menyimpulkan bahwa shoesize dan skor adalah faktor penting yang menentukan apakah seseorang adalah native speaker atau bukan. Juga model hanya memiliki kesalahan 1% yang berarti kita dapat memprediksi dengan akurasi 99%.