การสร้างต้นไม้ที่ตัดแต่งอย่างเหมาะสม
การหยุดการเติบโตของต้นไม้ก่อนกำหนดอาจทำให้โมเดลละเลยข้อมูลบางส่วนหรือพลาดแนวโน้มสำคัญที่อาจค้นพบในภายหลัง
ด้วยการใช้ post-pruning เราสามารถปล่อยให้ต้นไม้เติบโตจนมีขนาดใหญ่และซับซ้อนก่อน จากนั้นจึงตัดแต่งให้เล็กลงและมีประสิทธิภาพมากขึ้นในภายหลัง
ในแบบฝึกหัดนี้ จะได้สร้างกราฟแสดงประสิทธิภาพของต้นไม้เทียบกับความซับซ้อน แล้วนำข้อมูลดังกล่าวมาใช้ตัดแต่งต้นไม้ให้อยู่ในระดับที่เหมาะสม
แพ็กเกจ rpart ถูกโหลดไว้ให้แล้ว พร้อมกับ loans_test และ loans_train
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Supervised Learning in R: Classification
คำแนะนำการฝึกหัด
- ใช้ตัวแปรทั้งหมดของผู้สมัครและไม่ใช้ pre-pruning เพื่อสร้างต้นไม้ที่ซับซ้อนเกินไป อย่าลืมกำหนด
cp = 0ในrpart.control()เพื่อปิดการใช้งาน pre-pruning - สร้างกราฟความซับซ้อนโดยใช้
plotcp()กับโมเดล - อิงจากกราฟความซับซ้อน ตัดแต่งต้นไม้ให้มีค่าความซับซ้อนเท่ากับ 0.0014 โดยใช้ฟังก์ชัน
prune()พร้อมระบุต้นไม้และพารามิเตอร์ความซับซ้อน - เปรียบเทียบความแม่นยำของต้นไม้ที่ตัดแต่งแล้วกับค่าความแม่นยำเดิมที่ 58.3% โดยใช้ฟังก์ชัน
predict()และmean()
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Grow an overly complex tree
loan_model <- ___
# Examine the complexity plot
plotcp(___)
# Prune the tree
loan_model_pruned <- ___(___, cp = ___)
# Compute the accuracy of the pruned tree
loans_test$pred <- ___
mean(___)