วิธีการคำนวณ smape ใน r
ข้อผิดพลาดค่าเฉลี่ยเปอร์เซ็นต์สัมบูรณ์แบบสมมาตร (SMAPE) ใช้เพื่อวัดความแม่นยำในการทำนายของแบบจำลอง มีการคำนวณดังนี้:
SMAPE = (1/n) * Σ(|การคาดการณ์ – จริง| / ((|จริง| + |คาดการณ์|)/2) * 100
ทอง:
- Σ – สัญลักษณ์ที่หมายถึง “ผลรวม”
- n – ขนาดตัวอย่าง
- real – มูลค่าที่แท้จริงของข้อมูล
- พยากรณ์ – ค่าที่คาดหวังของข้อมูล
ยิ่งค่าของ SMAPE น้อยเท่าใด ความแม่นยำในการทำนายของแบบจำลองที่กำหนดก็จะยิ่งดีขึ้นเท่านั้น
บทช่วยสอนนี้จะอธิบายสองวิธีที่แตกต่างกันที่คุณสามารถใช้เพื่อคำนวณ SMAPE ใน R
วิธีที่ 1: ใช้ smape() จากแพ็คเกจ Metrics
วิธีหนึ่งในการคำนวณ SMAPE ใน R คือการใช้ฟังก์ชัน smape() จากแพ็คเกจ Metrics :
library (Metrics) #define actual values actual <- c(12, 13, 14, 15, 15, 22, 27) #define forecasted values forecast <- c(11, 13, 14, 14, 15, 16, 18) #calculate SMAPE smape(actual, forecast) [1] 0.1245302
เราจะเห็นว่าค่าความคลาดเคลื่อนเปอร์เซ็นต์เฉลี่ยสัมบูรณ์แบบสมมาตรสำหรับแบบจำลองนี้คือ 12.45%
วิธีที่ 2: เขียนฟังก์ชันของคุณเอง
อีกวิธีหนึ่งในการคำนวณ STAPE คือการสร้างฟังก์ชันของเราเองดังนี้:
find_smape <- function (a, f) { return ( 1 /length(a) * sum( 2 *abs(fa) / (abs(a)+abs(f))* 100 )) }
จากนั้นเราสามารถใช้ฟังก์ชันนี้เพื่อคำนวณ SMAPE ระหว่างเวกเตอร์ของค่าจริงและค่าที่ทำนายได้:
#define actual values actual <- c(12, 13, 14, 15, 15,22, 27) #define forecasted values forecast <- c(11, 13, 14, 14, 15, 16, 18) #calculate SMAPE find_smape(actual, forecast) [1] 12.45302
เป็นอีกครั้งที่ SMEPE กลายเป็น 12.45% ซึ่งตรงกับผลลัพธ์ของตัวอย่างก่อนหน้านี้
แหล่งข้อมูลเพิ่มเติม
วิธีการคำนวณ MAPE ใน R
วิธีการคำนวณ MAD ใน R
วิธีการคำนวณ MAE ใน R
วิธีการคำนวณ RMSE ใน R
วิธีการคำนวณ MSE ใน R