PyMCのモデル内で Pytensor.scan() を用いるときに詰まったのでメモする。 pytensor.scan() 「ひとつ前の値を用いて次の値を決める」といった処理を行う際,ループ(for文)の代わりに用いる。 例えば時系列モデルで使用する機会があるかもしれない。 なぜ詰まったか scan()に渡す関数の引数の順番を間違えていた。 「scan()に渡す関数fnの引数の順番」と「scan()に渡す引数」との対応関係が重要。 どのような順番で渡すか 下記の順番で渡す。1. sequence 繰り返し処理の対象とする配列など scanの引数ではsequencesに対応2. prior re…