วิธีการคำนวณ 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

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *