วิธีการคำนวณ smape ใน python
ข้อผิดพลาดค่าเฉลี่ยเปอร์เซ็นต์สัมบูรณ์แบบสมมาตร (SMAPE) ใช้เพื่อวัดความแม่นยำในการทำนายของแบบจำลอง มีการคำนวณดังนี้:
SMAPE = (1/n) * Σ(|การคาดการณ์ – จริง| / ((|จริง| + |คาดการณ์|)/2) * 100
ทอง:
- Σ – สัญลักษณ์ที่หมายถึง “ผลรวม”
- n – ขนาดตัวอย่าง
- real – มูลค่าที่แท้จริงของข้อมูล
- พยากรณ์ – ค่าที่คาดหวังของข้อมูล
บทช่วยสอนนี้จะอธิบายวิธีคำนวณ SMAPE ใน Python
วิธีการคำนวณ SMAPE ใน Python
ไม่มีฟังก์ชัน Python ในตัวสำหรับคำนวณ SMAPE แต่เราสามารถสร้างฟังก์ชันง่ายๆ เพื่อทำการคำนวณได้:
import numpy as np
def smape( a , f ):
return 1/ len (a) * np. sum (2 * np. abs (fa) / (np. abs (a) + np. abs (f))*100)
จากนั้นเราสามารถใช้ฟังก์ชันนี้เพื่อคำนวณ SMAPE สำหรับสองตาราง: ตารางที่มีค่าข้อมูลจริงและตารางที่มีค่าข้อมูลที่คาดการณ์ไว้
#define arrays of actual and forecasted data values actual = np.array([12, 13, 14, 15, 15,22, 27]) forecast = np.array([11, 13, 14, 14, 15, 16, 18]) #calculate SMAPE smape(actual, forecast) 12.45302
จากผลลัพธ์ เราจะเห็นว่าค่าความคลาดเคลื่อนเปอร์เซ็นต์สัมบูรณ์แบบสมมาตรโดยเฉลี่ยสำหรับโมเดลนี้คือ 12.45302%
แหล่งข้อมูลเพิ่มเติม
รายการ Wikipedia สำหรับ SMAPE
ความคิดของ Rob J. Hyndman เกี่ยวกับ SMAPE
วิธีการคำนวณ MAPE ใน Python
วิธีการคำนวณ MAPE ใน R
วิธีการคำนวณ MAPE ใน Excel