Chaque fois que vous recherchez un livre d'introduction à l'analyse de séries chronologiques, vous trouverez toujours "Bases de l'analyse des séries temporelles et des modèles d'espace d'état: théorie et implémentation apprises avec R et Stan", ce qu'on appelle Hayashimoto. Dans ce livre, «l'analyse de séries temporelles comme le modèle AR et le modèle MA», le «modèle d'espace d'états linéaire gaussien» et le «modèle d'espace d'états par estimation bayésienne» sont expliqués de manière très détaillée. ** Les langages R et stan sont utilisés dans le livre, ce qui est un peu pénible pour quelqu'un comme moi qui ne peut utiliser que python. ** **
Cependant, vous pouvez également utiliser stan avec python, afin de pouvoir implémenter la même chose que celle présentée dans le livre. ** Par conséquent, je vais introduire l'estimation bayésienne par stan de Hayashimoto, qui a été en fait implémentée en utilisant python. ** **
La mise en œuvre se fait à l'aide de google colab. Dans google colab, il ne peut être utilisé que par importation par pystan. En d'autres termes, aucun réglage initial n'est requis, ce qui est très pratique. ** Cliquez-ici pour le code. ** ** https://github.com/nakanakana12/hayabusa-bon
En ce qui concerne le code, reportez-vous à github, mais ici je ne présenterai brièvement que les résultats.
Le résultat de l'estimation de l'espace d'états du modèle de niveau local (marche aléatoire avec bruit ajouté) est le suivant.
Le bleu est l'état et l'orange la valeur observée. La section à 95% de l'état estimée à l'aide de stan est un filet bleu. Comparé au graphique du livre, il semble être correctement implémenté.
Dans le chapitre suivant, nous modéliserons une équation légèrement plus complexe. La ligne bleue correspond à la valeur observée et la ligne orange correspond à la valeur en l'absence d'erreur de processus. Ceci est également mis en œuvre correctement.
J'espère que cela vous aide même un peu.
Recommended Posts