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

衝動買いした以下の本を、写経してみる。Python2.7だけど、動くかな?


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

今回は、「第1章 深層学習超入門」

(環境その1) → 挫折
Panasonic CF-RZ4
Windows 8.1
VirutualBox 5.1.14
Ubuntu Desktop 14.04

(環境その2) → 奮闘中
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) レッツノートパソコンでtryしようとしたが、、、

(0)VirtualBoxからGPUをうまく利用する方法が分からないので、CUDAのインストールなどはしない方針とする。

(1)Chainerのインストール

pip install chainer

しようとしたら、いきなり、端末の起動方法が分からない。Linuxなので、端末くらい、すぐに分かるようにしておいてほしいというのは無理な注文だろうか。。。

Ctrl+Alt+T らしい。

image

image

まずはpipをインストールしなさいと言われるので、その通りにする。

sudo apt-get install python-pip
sudo apt-get update
sudo apt-get install python-pip
sudo apt-get install git
sudo apt-get install python-dev

ここで、順番を間違えたことに気付いた。

OpenCVのインストール

git clone https://github.com/jayrambhia/Install-OpenCV.git

image

すごく時間がかかる

image

いつまでたってもopencvがインストールできない。

image

http://d.hatena.ne.jp/taksei/20160903/1472875112

を見ながらOpenCV 2.4.13 のインストールにtryしてみる。

image

途中、

wget https://github.com/Itseez/opencv/archive/2.4.13.zip

ここでダウンロードに35分かかると言われて閉口。。。どうしよう。何をしたかったのか忘れてしまった。

—————————————

(環境その2)

(0)今回もVirtualBoxなので、CUDAはインストールしない方針。VirutualBoxへのUbuntu Desktop 14.04 のインストールは、以下のようにおこなった。

Windows7にUbuntuDesktop14.04(VirtualBox)をインストール
vagrantでbento/ubuntu-14.04をインストールしてから、sudo apt-get -y install ubuntu-d...

(1)apt-get updateと、Gitとpipのインストール

なお、Ubuntu16.04へはアップグレードしない。

Ctrl+Alt+T で、ターミナル(端末)の画面を出し、Launcherへ登録。

image

(2)OpenCVのインストール

これが最初の難関。時間がかかるし、うまくいかないことがあった。

なんだか3時間くらいかかっているようだったが、無事終わったようである。

image

OpenCV 3.2.0がインストールされたようだが、気にしない。。。

(3)Chainerのインストール

image

なんかエラー。

image

image

(3)Deelのインストール

いきなりDeelというものが出てきたが、これは、この本の作者が作成したプログラムで、chainerをより簡単に使えるようにしたソフトらしい。。。

image

image

だいぶ時間がかかりそうなので、インストールが終わるまでまた他のことをしていよう。。。

image

(4)手軽に画像認識を試す

Ubuntuの画面左側上の方にある、「ファイル」をクリックして、さらに、deel フォルダを開く。

image

deel フォルダの中で、右クリック > 「新しいドキュメント」 > 「空のドキュメント」

image

tiny.py という名前をつける。

image

image

この、tiny.py をダブルクリックして、以下のように編集する。

image

端末(ターミナル)に戻って、

python tiny.py

image

しばらく、

Converting from bvlc_alexnet.caffemodel

から、止まったままで不安になるが、数分で以下のように動きが始まる

image

あ、なんかエラー

image

tiny.py を訂正して、再度、「python tiny.py」を実行

image

image

おお!できた!結果は、上記の本とだいぶ異なっているが、まあ、よしとする。

(5)2個目の画像を用意して、test.pngで保存し、画像判定させる。

ぱくたそ
https://www.pakutaso.com/20140449106ol-8.html

から、オフィスで電話をする女性の画像をダウンロードして、test.png という名前で以下の場所に保存。

PAK13_moshimoshiOL20131019_TP_V

image

tiny2.py という名前でテキストファイルを新たに作成して、以下のように記載。

image

端末(ターミナル)に戻って、

python tiny2.py

image

また、数分くらい時間がかかる。

image

image

なんか、Windowとかtoiletとか言っているけれど、、、

一部を切り出して、test2.pngという名前で保存。

image

tiny2.py のtest.pngを、test2.pngに訂正して、再度、画像認識

python tiny2.py

image

2回目は認識にかかった時間はすごく短かった!一応、cellularが8.7%に上昇し、suitが3.4%まで出てきた。

しかし、「携帯電話を持ったスーツ姿の女性」と認識するのは困難であったか。

でも、初めて、Alexnetと、GoogLeNetを試すことができて、面白かった!
もうちょっと画像認識の精度が高いと、より面白いのだけれど、、、

(参考)

Ubuntu 14.04:「端末(ターミナル)」を起動する方法
http://did2memo.net/2015/07/14/ubuntu-open-terminal/

2016-09-03
OpenCV 2.4.13 と 3.1 を共存させる
http://d.hatena.ne.jp/taksei/20160903/1472875112

関連記事
Count per Day
    Popular Posts
    スポンサーリンク

    シェアする

    • このエントリーをはてなブックマークに追加

    フォローする