auto_arima が out of bag エラーを計算する方法を理解できません。
私の理解が正しければ、out_of_sample_size
計算には最後のデータ ポイントが必要ですが、このデータの平均二乗誤差を手動で計算すると、別の結果が得られます。MWE を参照してください。
from pmdarima import auto_arima
from sklearn.metrics import mean_squared_error as mse
print("pmdarima version: %s" % pm.__version__)
# Load the data and split it into separate pieces
data = pm.datasets.load_wineind()
oos_size = 12
arima = auto_arima(y=data,
out_of_sample_size=oos_size,
information_criterion='oob')
in_sample_preds = arima.predict_in_sample(X=None)
print('auto_arima mse', arima.oob_)
print('computed mse', mse(data[-oos_size:], in_sample_preds[-oos_size:]))
出力
pmdarima version: 1.8.2
auto_arima mse 30562632.597773496
computed mse 31188460.514596958
2 つの MSE が異なるのはなぜですか?
(最後のバッグサンプルの後に予測を与える必要があるため、このpredict_in_sample
方法を使用しました)。predict