binary_crossentropy 使ってるのに、target 値が 0/1 ではない
binary_crossentropy を loss function にして、出力層を sigmoid にしているにも関わらず、肝心の target (y_train) が 0/1 ではなく、0/0.9999... みたいな値になっていた。当然誤差が常に発生することになる。
acc が一生上がらなくて???と思っていたらこれが原因だった。
binary_crossentropy を loss function にして、出力層を sigmoid にしているにも関わらず、肝心の target (y_train) が 0/1 ではなく、0/0.9999... みたいな値になっていた。当然誤差が常に発生することになる。
acc が一生上がらなくて???と思っていたらこれが原因だった。
nvidia driver のインストールまわりで Ubuntu が起動しなくなったり操作不能になったりする。OS 再インストールを何度かしなおす必要があった。機械学習専用のマシンに Ubuntu だけインストールするのがおすすめ。
Ubuntu は最新版ではなく LTS を入れること。事例が少なくて面倒なことになる。
とりあえずサードパーティドライバをインストールしてみる
sudo apt update sudo ubuntu-drivers autoinstall sudo reboot
これで nvidia-smi はできるが古いのが入ってしまった。
ppa から nvidia-driver-* でグラボにあった最新のドライバをいれる。
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update sudo apt install nvidia-driver-430
ドライバが入ったら、tensorflow-gpu などを入れるが、各ツールキットのバージョンがうまく一致していなければ動かない。
自分でやろうとせず、余計なことをしないで Anaconda を使うのが正解。Anaconda が nvidia の外部ツールキットも含めて必要なものをすべて入れてくれる。
# これですべてが入る conda install tensorflow-gpu
$ python >> import tensorflow as tf >> tf.test.gpu_device_name()
なおドライバが古いと CUDA driver version is insufficient for CUDA runtime version と怒られる。
プリントがうまくいかなかったのかな? と思ってしまうが、実はシリコンスプレーを使うとびっくりするほどすんなり入る
KURE [ 呉工業 ] シリコンスプレ- (420ml) [ For Mechanical Maintenance ] 潤滑・離系剤 [ KURE ] [ 品番 ] 1046 cho45
2018-01-12 に beyerdynamic DT770PRO 250Ω を買ってたらしい。らしい、というか使っているのに日記に記録が残っていなかったのでメモしておく。
【国内正規品】beyerdynamic 密閉型オーバーヘッドヘッドホン レコーディングモニター用 DT 770 PRO 250 cho45
パッドが布で良さげなのを探した結果これになったと思う。
側圧が強い以外は満足