【時系列】広告効果をモデリングする ~その8 将来を予測する方法~ [時系列解析 / 需要予測]
その1からその7まではあくまでも既存のデータに対するフィットだけでした。
stanを使って将来のデータに対してどのように予測するか?
「generated quantities」を使うことで、将来を予測することができます。
例えば、
となります。
トレンドの予測が重要で、直近のトレンドから大きくトレンドが変化していると上手く予測できていません。
AirPassengersの例だと、最後3年分を予測期間とした場合、
予測のトレンド:赤色
実際のトレンド:青色
となり、予測値は実測値よりも下ぶれてしまいます。
一方、最後1年分を予測期間とした場合、
トレンドが大きく変化していないので、予測値と実測値がほぼ同じとなっていることが確認できるかと思います。
stanを使って将来のデータに対してどのように予測するか?
「generated quantities」を使うことで、将来を予測することができます。
例えば、
generated quantities{
vector[T + pred_term] mu_pred;
vector[T + pred_term] x_seasonal_pred;
mu_pred[1:T] = mu;
x_seasonal_pred[1:T] = x_seasonal;
for(i in 1:pred_term){
mu_pred[T + i] = normal_rng(2*mu_pred[T+i-1] - mu_pred[T+i-2], sd_mu);
}
for(i in 1:pred_term){
x_seasonal_pred[T + i] = normal_rng(-sum(x_seasonal_pred[(T+i-11):(T+i-1)]), sd_sea);
}
}
となります。
トレンドの予測が重要で、直近のトレンドから大きくトレンドが変化していると上手く予測できていません。
AirPassengersの例だと、最後3年分を予測期間とした場合、
予測のトレンド:赤色
実際のトレンド:青色
となり、予測値は実測値よりも下ぶれてしまいます。
一方、最後1年分を予測期間とした場合、
トレンドが大きく変化していないので、予測値と実測値がほぼ同じとなっていることが確認できるかと思います。
コメント 0