機械学習

機械学習の自習を自宅でやってみる事にする。

CUDAがよく使われてるのでGTX1070と新しい電源ユニットを購入。

そんなに速くないWiMax2+の回線で色々ダウンロードしてインストールしないといけないので時間が掛かる。

TensorFlow

Windows上でTensorFlow を動かそうと試してみたけれど、うまくいかなかったので一時撤退。。

http://qiita.com/AfricaUmare/items/33d0a5edaa0a9b4b9f36

しかしDockerコンテナのダウンロードって時間が掛かるな。。

新しいSSD買ってUbuntuでやろうかな。。新しい領域での開発って基本的にWindows上では厳しいかも?Microsoftが出してるDeepLearningのソフトならサポートされてるかな。

Chainer

Chainerは色々環境変数とか設定して動かす事が出来た。

http://qiita.com/akrian/items/953082aa8f00479dbb01

https://devtalk.nvidia.com/default/topic/969047/cuda-8-vs2015-corecrt-h-error/

>python train_mnist.py --gpu 0

でデータも自動的に落として実行してくれた。

 

処理速度は --gpu を付けて実行するとそこそこ速いけどちょっぱやという感じではない。Chainerは柔軟さが売りみたいなので、お猿さんのようにmnistだけとにかく速く実行させようとは頑張ってないのかも。

https://www.oreilly.com/learning/complex-neural-networks-made-easy-by-chainer

 

コマンドプロンプト上で実行すると表示がおかしかったりするし、

Estimated time to finish: 0:00:00.

とか最後に出たりするけど、bash上で実行しないと駄目かも。というかChainerも推奨環境はUbuntuCentOSだからWindows上でやるのは良くなさそう。

 

The Microsoft Cognitive Toolkit

MicrosoftのCNTKはバイナリパッケージのファイルサイズがCPU版で144MBでGPU版は400MB以上ある。10MBくらいでなんとかならないもんだろうか…。

 

雑感

ちょっと環境構築が単なるアプリに比べると面倒くさい。ダウンロードするファイルのサイズが大きいのは、後から落とすデータセットの容量を考えると誤差みたいなものかもしれないけど。。

 

機械学習関連をちょっと試してみたい人は世界中に何百万人といるだろうし、クラウドサーバーで計算資源やデータセット等、みんな共通のものを分け合った方が資源の節約にもなるし快適なのかも。。

 

GEMM

Deep Learningでは行列積の演算がホットスポットで最適化する対象になる。

https://tkng.org/b/2016/03/06/convolution/

にきっちり纏められていて、

https://petewarden.com/2015/04/20/why-gemm-is-at-the-heart-of-deep-learning/

にもわかりやすい解説がある。

 

携帯電話用の実装

http://db-event.jpn.org/deim2016/papers/230.pdf

 

昔既に同じようなことを日記に書いたような気もするけれど、認知症っぽいので再度post。

 

 

ノイズ

同じ問題に遭遇した人がYouTubeに動画を投稿していて、コメント欄で色々情報が収集できた。

https://www.youtube.com/watch?v=Qz5-B0-Tk5Q

https://www.youtube.com/watch?v=yzVAK5Llx_M

バイスマネージャーで Intel HD graphicsを無効化して、GeForce GTX 960Mを使うようにしたらノイズが収まったような気がする。しかし今度はファンの音が上がったような。。

 

 

チップセット側の問題で他メーカーのラップトップでも現象が起きるとかコメントにあるけれど本当だろうか?KabyLake世代では直ってるのかな。。

ノイズ

ノートPCのカーソルキーを押してスクロール表示をさせている時だけ、微妙にノイズが発せられているように聞こえる。まるでHDDにアクセスしているようなカリカリ音に近いけれど、SSDなのでそんなわけもない。

電源オプションを High performance から Power saver に変えて更にACアダプタの接続を外すと同様の操作を行った場合のノイズの音が目立たなくなる。


ファンノイズなのかなぁ。。細かい事はあんまり気にしないのが良いとは思うけれども…。

 

スクロールの時等に出る音 - その他(PCパーツ・周辺機器) 締切済 | 教えて!goo

ここを見ると、電磁波ノイズがスピーカーに影響を与えている、という解答があった。

うーむむ。回路設計や基板設計の領域になるんだろうか。PCであってオーディオ製品じゃないんだし少々のノイズを気にしていたら製品のコストが上がってしまうから、今ぐらいの出来になっているのかもしれない。

 

 

VisualStudio で毎回ビルドが行われる問題

ビルドが成功したのにF5で実行するたびに再度ビルドが行われる問題が起きた。
原因は下記のファイルのタイムスタンプが未来になっていたからだった。
C:\Windows\SysWOW64\tzres.dll

ぐぐると結構色々な人が似たような問題にあたっていたようで、原因も複数あるようだ。
http://rdaemons.blogspot.jp/2011/01/visual-c-2010-up-to-date-project-always.html
http://blogs.wankuma.com/hirase/archive/2008/02/19/123838.aspx
https://blogs.msdn.microsoft.com/dsvc/2013/03/12/alwayscreate-forces-project-to-be-re-built/

Menu の Tools => Options で Options 画面を開いた後に、
Projects and Solutions の Build and Run を選んで、
MSBuild project build output verbosity を Minimal から Detailed に変えてから
再度Buildを行うとログが詳細に出力されるので、それを見てトラブルシューティングが出来る。

問題が発生したこのASUSのノートPCで今日 Windows 10 Amniversary Update を実行したんだけど、timezoneを考慮したtimestampの更新が行われなかったんじゃないだろうか…。