การแสดงภาพความสำคัญของฟีเจอร์
ในแบบฝึกหัดนี้ จะได้ตรวจสอบว่าฟีเจอร์ใดมีพลังในการพยากรณ์มากที่สุด ตามการประเมินของ random forests regressor rf ที่ฝึกไว้ในแบบฝึกหัดก่อนหน้า
เพื่อให้เห็นภาพชัดขึ้น จะวาดแผนภูมิแท่งแนวนอนแสดงความสำคัญของฟีเจอร์ตามที่ rf ประเมินไว้ ซึ่งทำได้สะดวกผ่านความสามารถด้านการพล็อตกราฟของ pandas
เราได้สร้างออบเจกต์ pandas.Series ชื่อ importances ไว้ให้แล้ว โดยมีชื่อฟีเจอร์เป็น index และค่าความสำคัญเป็น values นอกจากนี้ยังสามารถใช้ matplotlib.pyplot ในชื่อ plt และ pandas ในชื่อ pd ได้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning with Tree-Based Models in Python
คำแนะนำการฝึกหัด
เรียกใช้เมธอด
.sort_values()บนimportancesแล้วกำหนดผลลัพธ์ให้กับimportances_sortedเรียกใช้เมธอด
.plot()บนimportances_sortedพร้อมกำหนดอาร์กิวเมนต์ดังนี้:kindเป็น'barh'colorเป็น'lightgreen'
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create a pd.Series of features importances
importances = pd.Series(data=rf.feature_importances_,
index= X_train.columns)
# Sort importances
importances_sorted = ____
# Draw a horizontal barplot of importances_sorted
____.____(____='____', ____='____')
plt.title('Features Importances')
plt.show()