ตรวจสอบค่าสหสัมพันธ์
ก่อนที่จะฝึกโมเดล machine learning ตัวแรก มาดูค่าสหสัมพันธ์ระหว่าง features และ targets กันก่อน โดยทั่วไปแล้ว เราต้องการค่าสหสัมพันธ์ที่มีขนาดใหญ่ (ใกล้ 1 หรือ -1) ระหว่าง features และ targets การตรวจสอบค่าสหสัมพันธ์ช่วยให้ปรับแต่ง features เพื่อเพิ่มค่าสหสัมพันธ์ได้ (เช่น การเปลี่ยนค่าอาร์กิวเมนต์ timeperiod ในฟังก์ชันของ talib) และยังช่วยให้ตัดสิน features ที่ไม่มีความสัมพันธ์กับ target ออกได้อีกด้วย
หากต้องการพล็อต correlation matrix ได้อย่างสะดวก สามารถใช้ฟังก์ชัน heatmap() ของ seaborn ได้ โดยรับ correlation matrix เป็นอาร์กิวเมนต์แรก และมีตัวเลือกอื่น ๆ อีกมากมาย ลองดูตัวเลือก annot — ตัวเลือกนี้ช่วยเปิดใช้งานการแสดง annotations บน heatmap ได้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning สำหรับการเงินด้วย Python
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Plot heatmap of correlation matrix
sns.heatmap(____, annot= ____, annot_kws = {"size": 14})
plt.yticks(rotation=0, size = 14); plt.xticks(rotation=90, size = 14) # fix ticklabel directions and size
plt.tight_layout() # fits plot area to the plot, "tightly"
plt.____ # show the plot