Python で smape を計算する方法
対称平均絶対パーセント誤差 (SMAPE) は、モデルの予測精度を測定するために使用されます。次のように計算されます。
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)
次に、この関数を使用して 2 つのテーブル (実際のデータ値を含むテーブルと予測データ値を含むテーブル) の 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%であることがわかります。
追加リソース
SMAPE に関するウィキペディアの項目
ロブ・J・ハインドマンのSMAPEへの思い
Python で MAPE を計算する方法
RでMAPEを計算する方法
Excel で MAPE を計算する方法