くじらにっき++スマートフォン用の表示で見るくじらにっき++2017-09-28PyStanのログ出力を消す背景PyStanでMCMCするときには標準出力に有益なログが出力されます。サンプリングの途中経過が出力されます。(Sampling)最近になって,サンプリング終了までの時間の予測も出力されるようになりました。accordingly!これらのログはMCMCによるサンプリングが正しく行えているかどうかチェックするのに非常に有用ですが,ログを出力させたくない場合もあります。samplingのための事後分布の推定にStanを使っているのですが,アームを引くたびに事後分布の推定を行う必要があり,何度もStanを呼び出すことになるのでStanのログ出力だけでコンソール出力が埋まってしまうのに悩まされていました。いうパラメータが見つかります。いう出力の頻度を調整するパラメータで,0に設定すると途中経過が出力されなくなります。このパラメータの設定によって出力が抑制されるものの,サンプリング終了時に出力される以下のようなログは表示されたままで,かなりの行数が使われてしまい邪魔だと感じてしまいます。出力を別のストリームに変更することができます。yield以下のように使います。seed=0)この方法ではPyStanの出力は抑制できません。引き継がれるわけではないからです。Issuesに「ファイルディスクリプタを書き換えれば良いよ」という書き込みがあったので試してみました。出力はそのまま表示されてほしいので,処理を若干書き換えました。os.close(save_fd)以下のように使います。seed=0)この方法でPyStanの出力を抑制することができました。(1)はてなブログをはじめよう!kujira16さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。