日々精進

新しく学んだことを書き留めていきます

nohup.outの名前を変更する

以下のような感じで変更出来る。

nohup some_command &> nohup2.out &

最近以下のような感じでmulti gpuマシン上で複数の実験を回しているが結構快適です。各並列で動く処理のoutputが混ざったり上書きされたりしないよう気をつけないといけないけど。

nohup python ./train.py \
--comment "備忘" \
--use-gpu-idx 1 \
--epochs 100 \
&> nohup1.out &

参考:

stackoverflow.com

YOLOを学習するとIoUなどがnanになる

学習途中で出力される評価指標がnanになることがあるが正常らしい。評価指標の計算式的に仕方ないのかも?ずっとnanが続くようだとだめだけど、学習データの中に物体のlabelが一つも含まれないような場合ではnanになるのは正常らしい。

参考: github.com

PyCharmのSSH Interpreterで実行時にファイルをアップロードしてくれない問題

PyCharmのSSH Interpreterは便利だけど、使ってるといつの間にかサーバに修正したソースコードを自動でアップロードしてくれる機能が動かなくなることがよくある。。

その原因はdefault serverの設定がなぜか外れることっぽい。アップロードされなくなったら以下の「Click the Use as Default the Use as default button to have PyCharm silently apply the current configuration in the following cases:」を参考にしてdefault serverの設定をしなおすと直る。(自分の環境では今のところ問題なさそう)

www.jetbrains.com

この問題、ずっと悩まされてたけどようやく解決できそうで嬉しい・・!

TensorBoard Debugger V2がすごい

lossがnanになっている原因など調べる場合、すごく便利そう。使い方は以下参照。このチュートリアルもよくできている。

www.tensorflow.org

ただし、 tf.debugging.experimental.enable_dump_debug_info

を実行するとkerasのsaveメソッドを実行してSavedModelを保存しようとするとエラーになるので注意。 experimental methodは恐い。。

tensorboardにアクセス出来ない問題

tensorboard --logdir=./logsのようなコマンドで起動したものの、アクセスできない・・同じマシン上からcurlでリクエストを送るとアクセスできているっぽい、という状態。

原因はtensorboard2からデフォルトでは外部のマシンからのリクエストを受け付けなくなったため。以下のようにbind_allオプションを付けるとどこからでもアクセスできるようになる。

tensorboard --logdir=d:/data --bind_all

参考:

stackoverflow.com