ลองใช้ tune length ที่ยาวขึ้น
จากที่ได้เรียนในวิดีโอ โมเดล random forest มีพารามิเตอร์หลักสำหรับการปรับแต่งคือ mtry ซึ่งควบคุมจำนวนตัวแปรที่เปิดให้อัลกอริทึมค้นหาเพื่อแบ่งสาขาในแต่ละครั้ง ตัวอย่างเช่น หากต้นไม้มีการแบ่งทั้งหมด 10 ครั้ง และ mtry = 2 หมายความว่าแต่ละครั้งที่ประเมินการแบ่งสาขา จะสุ่มเลือกตัวทำนาย 2 ตัวจากทั้งหมด
คราวนี้ให้ใช้กริดการปรับแต่งที่ใหญ่ขึ้น แต่ยังคงใช้ค่าดีฟอลต์ที่ฟังก์ชัน train() กำหนดไว้ ลองตั้ง tuneLength เป็น 3 แทนที่จะเป็น 1 เพื่อสำรวจโมเดลที่เป็นไปได้เพิ่มเติม แล้วพล็อตโมเดลที่ได้ด้วยฟังก์ชัน plot
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning ด้วย caret ใน R
คำแนะนำการฝึกหัด
- เทรนโมเดล random forest ชื่อ
modelโดยใช้ชุดข้อมูลwineโดยมีqualityเป็นตัวแปรเป้าหมาย และใช้ตัวแปรอื่นทั้งหมดเป็นตัวแปรอธิบาย (การรันอาจใช้เวลาสักครู่ โปรดรอสักครู่) - ใช้
method = "ranger" - เปลี่ยน
tuneLengthเป็น 3 - ใช้ CV จำนวน 5 fold
- แสดงผล
modelที่คอนโซล - พล็อตโมเดลหลังจากฟิตเสร็จแล้ว
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Fit random forest: model
model <- train(
___,
tuneLength = 1,
data = ___,
method = ___,
trControl = trainControl(
method = "cv",
number = ___,
verboseIter = TRUE
)
)
# Print model to console
# Plot model