スポンサーリンク

Windows7で、「はじめての深層学習プログラミング」を写経してみる(1-2)第1章後半

前回は、第1章前半を写経してみた。(全部はできなかったが)

http://twosquirrel.mints.ne.jp/?p=17706


清水 亮  (著)
はじめての深層学習(ディープラーニング)プログラミング Kindle版
技術評論社 (2016/12/7) 2,462円

今回は、「第1章 深層学習超入門」後半を写経してみる。

(環境)
Dell XPS 8700
Core i7-4770 3.40 GHz
RAM 32GB
GPU NVIDIA GeForce GTX 660
Windows 7 Pro 64bit
VirutualBox 5.1.22
Ubuntu Desktop 14.04

(1) ~/deel/tiny.py をコピーして、opencv.pyを、以下のように作成。

image

自分のパソコンにはWebカメラはついていないので、こちらのスクリプトは実行できず。
コピーして、opencv3.py という名前で、以下のように保存。

image

自分のスマホで3秒ほどのマグカップの動画を撮影し、test.mp4という名前をつけて、Ubuntuにメールで送信し、~/deel/ フォルダの中に保存。

image

端末(ターミナル)を開いて、

cd deel
python opencv3.py

image

おお!すごい!coffee 89.5%, cup 8.0 % 素晴らしい!自分が持ってきた動画や画像を、すぐに判定してくれるのは、これは面白い!

ちなみに、正しいスクリプトは、以下であった。

image

(2)画像の学習の準備

ここで、突然、Ubuntu14.04に、Visual Studio Codeをインストールする。

image

image

image

インストールには10分くらいかかりそう。。。

image

端末(ターミナル)で、

code

と入れると、おなじみの画面が出てくる。少しほっとした。

image

端末画面を出すのに、Linux版では、Ctrl+@は使えないらしく、右下の青いバーの上の方をドラッグしたら、希望していた「端末」画面が出てきた。

cd data
./getCaltech101.sh

image

最初のダウンロードに、5分くらいかかる。

さらに、解凍?に数分かかった。

image

deel/data/labels.txt の中身

image

上記の本の筆者によると、

画像を学習させるなどのタスクの場合は、CaffenoBVLC事前学習モデルを流用するか、自分で学習させたい場合は、NVIDIA Digits や、CSLAIERなどのGUI環境を使って学習させ、

学習結果を使いたいときだけ、DeelやChainerなどでプログラミングするのが効率的らしい。

(3)深層学習のためのGUI環境CSLAIERのインストール

CSLAIERとは、ソニーCSLと株式会社UEIが共同開発したChainerベースのGUI環境とのこと。
Python 2.7であり、Python3に対応していないところが、私にとってはつらいところ。
すごく使いやすそうなので、ぜひ、Python3と、Tensorflow1.0に対応してほしいところ。(本来なら、こういうソフトは有料なのかな。。。)

https://github.com/SonyCSL/CSLAIER
image

cd ~/deel
git clone https://github.com/SonyCSL/CSLAIER.git
cd CSLAIER
./setup.sh
pip install -r requirements.txt
./run.sh

image

途中で、sqlite3コマンドが見つかりませんと出るので、

sudo apt-get install sqlite3 libsqlite3-dev

image

image

なんかwarningがたくさん出てきて、インストールに何十分か時間がかかりそうな予感。。。

image

なんか最後に赤いエラーが出ており、だめだったかのかもしれない。

だめだったので、公式github(https://github.com/SonyCSL/CSLAIER)を見て以下のコマンドを入力。

$ sudo apt-get install python-pip
$ sudo apt-get install python-dev
$ sudo apt-get install libhdf5-dev
$ sudo apt-get install python-opencv
$ sudo apt-get install sqlite3
$ sudo apt-get install python-matplotlib
$ sudo apt-get install nkf

image

$ ./setup.sh # setting up database
$ pip install -r requirements.txt # install python dependenceis
$ ./run.sh # run server

これはさっき来た道、、、

何かいろいろダウンロードしている。

image

image

なんかまた赤いエラー。

このあと、2時間くらい悪戦苦闘したが、なぜか、scipyがインストールできないとかで、どうしても、CSLAIERをインストールすることができなかった。。。

image

CSLAIER以外にも、NVIDIAの、DIGITSというソフトがあるらしい。。。(CSLAIERの方が画面がかっこいいのでそっちを使いたいが、、、)

とそのころ、、、

https://www.scipy.org/install.html

sudo apt-get install python-scipy

image

どうやっても入らなかったscipyがインストールできた。

./run.sh

おそるおそる、Firefoxで、localhost:8080 を開いてみると、、、

image

やったー!カッコイイのキター!

環境構築に半日かかりました。疲れた。

ちゃんと、GPUないですと言われています。。。VirtualBoxから、ホストマシン(Windows7)のGPUが使えないものか、、、

とりあえず使ってみる。

ZIPファイルの作成

image

image

CSLAIERで、Datasetの追加

image

image

image

image

image

image

っていうか、CSLAIERかっこいい!これは私好みである。Python3であれば、、、もっとインストールが簡単だったら、、、Windowsに直接インストールできたら、、、

(4)学習をさせてみる

Model の、 +New をクリック

image

Choose Network templateのところで、nin.pyを選択し、下の方にあるCreate ボタンをクリック。

image

本当はGPUが欲しいところだが、無しのままで、Start Train をクリック。

image

image

image

ありゃ、Processingで3分くらい待った後、In Progress 画面になった。

image

エポックは10にしたが、何日かかるのかな?時間がかかりすぎるようであれば、途中でストップするつもりである。

30分待ったが、全く動く気配がない。端末を見てみると

image

とりあえず、Terminateボタンをクリックして、学習をストップ

image

なんか中止するだけでも10分くらいかかりそうな感じ。

少しだけでもいいのでグラフを見たかったが、、、なんかCSLAIERはうまくいかなかった。GPU必須と思われた。しかし、何万円もするパソコンに仮想環境ではなく、直にUbuntuを入れるなんて私にはそんな資金的余裕はない。まあ、仕方ない。

一晩走らせた後、中断したところ、以下のようにほんの少しだけ、学習してくれたらしい。。。

image

(参考)

https://stackoverflow.com/questions/21093002/error-could-not-create-usr-local-lib-python2-7-dist-packages-virtualenv-suppo

https://stackoverflow.com/questions/26575587/cant-install-scipy-through-pip

http://pongsuke.hatenadiary.jp/entry/2017/03/15/160657

http://www.utali.io/entry/2016/09/27/233623

https://www.scipy.org/install.html

スポンサーリンク