ตรวจสอบผลลัพธ์
เมื่อได้โมเดลที่ปรับแต่งแล้ว เราจะมาตรวจสอบประสิทธิภาพของมันอย่างละเอียดขึ้น เราเคยดูคะแนน R\(^2\) ไปแล้ว แต่การพล็อตกราฟเปรียบเทียบค่าพยากรณ์กับค่าจริงก็ช่วยให้เห็นภาพได้ชัดเจนยิ่งขึ้น โดยใช้เมธอด .predict() ของโมเดล decision tree เพื่อรับค่าพยากรณ์บนชุด train และ test
ในอุดมคติ เราอยากเห็นจุดข้อมูลเรียงตัวเป็นเส้นทแยงมุมจากซ้ายล่างไปขวาบน อย่างไรก็ตาม เนื่องจาก decision tree มีความเรียบง่ายในการตัดสินใจ โมเดลของเราจึงทำได้ไม่ดีนักบนชุด test แต่จะทำได้ดีบนชุด train
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning สำหรับการเงินด้วย Python
คำแนะนำการฝึกหัด
- สร้างโมเดล
DecisionTreeRegressorชื่อว่าdecision_treeโดยกำหนดmax_depthเป็น 3 - ใช้โมเดล decision tree พยากรณ์ค่าบนชุด train และ test (
train_featuresและtest_features) - พล็อต scatter plot เปรียบเทียบค่าพยากรณ์ของชุด train และ test กับค่าเป้าหมายจริงด้วย
plt.scatter()และกำหนดอาร์กิวเมนต์labelเป็นtestสำหรับชุด test
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Use the best max_depth of 3 from last exercise to fit a decision tree
decision_tree = ____
decision_tree.fit(train_features, train_targets)
# Predict values for train and test
train_predictions = decision_tree.predict(train_features)
test_predictions = ____
# Scatter the predictions vs actual values
plt.scatter(train_predictions, train_targets, label='train')
plt.scatter(____)
plt.show()