Python에서 smape를 계산하는 방법
대칭 평균 절대 백분율 오류(SMPE)는 모델의 예측 정확도를 측정하는 데 사용됩니다. 다음과 같이 계산됩니다.
SMAPE = (1/n) * Σ(|예측 – 실제| / ((|실제| + |예측|)/2) * 100
금:
- Σ – “합계”를 의미하는 기호
- n – 표본 크기
- real – 데이터의 실제 값
- 예측 – 데이터의 예상 값
이 튜토리얼에서는 Python에서 SMAPE를 계산하는 방법을 설명합니다.
Python에서 SMape를 계산하는 방법
SMape를 계산하는 내장 Python 함수는 없지만 이를 수행하는 간단한 함수를 만들 수 있습니다.
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)
그런 다음 이 함수를 사용하여 실제 데이터 값이 포함된 테이블과 예측 데이터 값이 포함된 테이블의 SMPE를 계산할 수 있습니다.
#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% 임을 알 수 있습니다.
추가 리소스
SMAP에 대한 Wikipedia 항목
SMAP에 대한 Rob J. Hyndman의 생각
Python에서 MAPE를 계산하는 방법
R에서 MAPE를 계산하는 방법
Excel에서 MAPE를 계산하는 방법