Ry0 Note

技術系SONEノート

これまでのCaffeの記事のまとめと補足

やっとここまで来ました!

Caffeの記事のまとめです

今までいろいろCaffeを使ってDeep Learningに関する記事をいろいろ書いたのですが、情報がバラバラになってしまったのと、補足の情報を追加したかったので書きました。
これらの記事を順に見て作業を行っていただければ、独自のデータセットを使った学習が行えるようになります。 また識別結果を可視化するためのPythonのプログラムも紹介しています。

CUDAとcuDNNをインストール

NVIDIAのグラボがPCに入っているならこれらの2つのライブラリは入れといたほうがいいと思います。

Ubuntu 14.04にCUDA 7.0とcuDNNを導入する

最近、CUDA 7.5がリリースされました。 私もapt-getのupgradeで不意にアップデートしてしまい、一応Caffeをコンパイルし直しました。 ちゃんと使おうと思えば、CUDA 7.0を使ったほうがいいと思います。 どうしてもCUDA 7.5を使う場合でも、CUDA 7.0のlibcudart.so.7.0が必要だそうです。 バージョンアップする前にコピーをとっておくといいです。

あとcuDNNも7.0が最新版としてリリースされています。 https://developer.nvidia.com/cudnn
これを使う場合、以下のようにします。

1
2
3
4
tar -zxf cudnn-7.0-linux-x64-v3.0-prod.tgz
cd cuda
sudo cp ./lib64/* /usr/local/cuda/lib64/
sudo cp ./include/cudnn.h /usr/local/cuda/include/

CUDAとcuDNN、どちらの場合でも現時点での最新版を使って動作をしたことを少しだけ確認しましたが、どこで動作がおかしくなるのかわからないので、公式のドキュメントが指定しているライブラリのバージョンを使用したほうがいいと思います。

NVIDIA DIGITS 2.0 RCをlinuxで使う

Caffeのインストール

この回でCaffeをインストールしました。記事投稿時ではこの方法でインストールできています。

UbuntuにCaffeをインストールする

データセット作り

大量に写真データを用意して顔の部分だけ切り出したデータを作成し、データセットを作成します。

Caffeを使ってDeep Learningするためのデータセット作り

実際に少女時代のメンバーの顔を識別してみる

一生懸命作成したデータセットを使って学習を行います。

Caffeを使って自分で作ったデータセットを学習させる(少女時代編)その1

Caffeを使って自分で作ったデータセットを学習させる(少女時代編)その2

中間層の可視化 IPython Notebook

学習の結果を可視化するためにIPython Notebookに書いています。 これも記事で用いているリポジトリのsnsd_classify/ipynb/に置いています。

ipynb リンクはこちらです。

おわりに

最近はあまりCaffeを使わなくなったのですが(飽きた、これを使う講義が終わった)、忘れてしまう前にやったことを記録しておこうと思いたくさん記事を書きました。
もしかしたら情報が変わりしだい追記を行っていくかもしれません。 ここがおかしいぞっていう箇所がありましたらコメントをどうぞ。
最後まで閲覧していただきありがとうございました。