まずは蝋の翼から。

学んだことを書きながら確認・整理するためのメモブログ。こういうことなのかな?といったことをふわっと書いたりしていますが、理解が浅いゆえに的はずれなことも多々あると思うのでツッコミ歓迎

状態空間モデルをstanでやりたかった② パネルデータに対する状態空間モデル(階層ベイズ)

前回では以下のようなModelを考えた。

tが閉店日の場合、  SalesObserve_t = 0
それ以外の場合、
 SalesObserve_t = SalesState_t + Week_t + PromotionEffect_t + \sigma_{SalesObserve}
 SalesState_t = 2\mu_{t-1} - \mu_{t-2} + \sigma_{SalesState}
 Week_t = s_t + d_{1,t} b_1 (s_{日,t} - s_t) + d_{2,t} (b_2 (s_{金,t} - s_t) + b_3 (s_{土,t} - s_t))
 PromotionEffect_t = C_{promo} * PromotionFlg_t

knknkn.hatenablog.com

だが、結果としてsamplingがおこなわなかった。そのため、今回もプロットは無しで理屈のみ。。。

前回のモデルと今回のモデルの差

前回のモデルは「ある1店舗」の時系列を考えた。今回は、「全店舗」について考えたい。

店舗についての情報として、

  • StoreType(店舗タイプ)
  • Assortment(装飾のレベル)

などがある。
StoreTypeとAssortmentをかけ合わせたStoreTypeAssortmentを用いて、「StoreTypeAssortmentが同じ店舗の動きは似ているだろう」という仮設を入れた階層ベイズモデルを作成する。

このとき、以下のようなモデルとなる(id=店舗id、SA = StoreTypeAssortment) 。

 \mu_{id, SA, t} = SalesState_{id, SA, t} + Week_{id, SA, t} + PromotionEffect_{id, SA, t}
 SalesObserve_{id, SA, t} =  \mu_{id, SA, t} + \sigma_{SalesObserve_{SA}}
  \mu_{id, SA, t} = \mu_{共通, t} + \sigma_{SalesState_{共通}}
 \sigma_{SalesObserve_{SA}} = \sigma_{SalesObserve_{共通}} + \sigma_{SalesState_{共通}}

参考

階層ベイズと状態空間モデルで広告効果を推定したい - 統計コンサルの議事メモ

状態空間モデルのれんしゅう(レストランの来客予測) - rmizutaの日記