![メディアチーム](/_next/image?url=https%3A%2F%2Fapi.rightcode.co.jp%2Fwp-content%2Fuploads%2F2024%2F12%2Fmedia_new_icon-150x150.png&w=64&q=75)
Windows 10 で YOLOv3 を自前画像で学習させる(環境構築編)【機械学習】
![メディアチーム](/_next/image?url=https%3A%2F%2Fapi.rightcode.co.jp%2Fwp-content%2Fuploads%2F2024%2F12%2Fmedia_new_icon-150x150.png&w=64&q=75)
IT技術
![](/_next/image?url=https%3A%2F%2Fapi.rightcode.co.jp%2Fwp-content%2Fuploads%2F2020%2F05%2F%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89.png&w=3840&q=75)
物体検出モデル YOLOv3 を自前画像で学習させよう
「YOLOv3」とは、物体検出(画像から物体の位置と種類を検出)する機械学習モデルです。
この「YOLOv3」を、Windows 10 上で動かしてみたいと思います!
どんなものができるの?
今回は、YOLOv3 を動作させる環境を構築します。
最終的に目指すのは、以下のようなイメージです。
2つの本が、別々のものとして検出されています。
「環境構築編」では、これを実現するための環境構築を目指します。
ディープラーニングの開発環境
ディープラーニングの開発環境として、Google が開発したフレームワーク「Tensorflow(テンソルフロー)」と、フロントエンドには「Keras(ケラス)」を使っていきます。
そして、物体検出のモデルは「YOLOv3」という環境になります。
環境構築の流れ
- Anaconda(Python 仮想環境)のインストール
- CUDA のインストール
- cuDNN のインストール
- Anadonda 仮想環境の作成
- Tensorflow や Keras などの必要パッケージのインストール
- MNIST で動作確認
こちらの記事もオススメ!
2020.07.28機械学習 特集知識編人工知能・機械学習でよく使われるワード徹底まとめ!機械学習の元祖「パーセプトロン」とは?【人工知能】ニューラルネ...
2020.07.17ライトコード的「やってみた!」シリーズ「やってみた!」を集めました!(株)ライトコードが今まで作ってきた「やってみた!」記事を集めてみました!※作成日が新し...
Anaconda(Python仮想環境)のインストール
初めに、Python の環境をインストールします。
Python の環境は、Python のサイトよりインストーラをダウンロードすれば、インストールすることができます。
ですが、ちょっと待ってください!!
「Anaconda」で環境を切り替える
先ほどお伝えした通り、今回は「Tensorflow 1.14.0」をインストールしていきます。
さて、バージョンアップがあったとき、そのバージョンでも作成したアプリケーションを動かしてみたくなりませんか?
例えばですが…
バージョン 1.14 をアンインストールし、バージョン 2.0 をインストールしてテスト…
終わったら、またバージョン 2.0 をアンインストールし、バージョン 1.14 をインストール…
なんてしたくないですよね(泣)
そんな時、使うのが「Anaconda」というソフトウェアです。
これは、複数の Python 環境を、OS(Windows10)に手を加えることなく、仮想環境を切り替えて使えるのです。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_02.jpg)
Anaconda のインストール
それでは、Anaconda をインストールしていきましょう。
以下のサイトから、インストーラをダウンロードします。
【Anaconda】
https://www.anaconda.com/
今回は、Windows 10 で動かすので、「Windows」をクリックしてください。
バージョンを選択しダウンロード
次に、「Python 3.7 Version」からダウンロードします。
※ 64bit 用と 32bit 用の2つのインストーラーがあります。ご自身の環境に合った方をダウンロードしてください。
インストーラを起動
ダウンロードが完了したら、インストーラを起動します。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_05.jpg)
「次へ」を繰り返せば、インストール完了です。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_06.jpg)
CUDA(クーダ)のインストール
ディープラーニングでは、CPU だけでなく GPU も使うことで、学習速度を大幅に向上させることができます。
現在は、NVIDIA 社が提供している GPU を使うことがほとんどで、ほぼ独占状態です。
その GPU を使うときに必要なソフトウェアが、CUDA(Compute Unified Device Architecture)です。
CUDA のインストール
それでは、以下のサイトから、CUDA Toolkit をダウンロードしていきます。
【CUDA Toolkit】
https://developer.nvidia.com/cuda-downloads
バージョンの選択
今回は、「Tensoeflow 1.14.0」を使いますので、最新版ではなくバージョン 10.0 を使います
インストーラを起動
ダウンロードが完了したら、インストーラを起動。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_08.jpg)
「次へ」を繰り返しクリックしていけば、インストールが完了します。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_09.jpg)
cuDNN のインストール
cuDNN(CUDA Deep Neural Network library )は、ニューラルネットワーク計算用のライブラリーです。
一言でいうと、CUDA での処理を高速化してくれます!
cuDNN のインストール
それでは、cuDNN のサイトからダウンロードしていきます。
【NVIDIA cuDNN】
https://developer.nvidia.com/cudnn
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_10.jpg)
メンバー登録
ただ、最初に、「メンバー登録」が必要になりますので、登録していきましょう。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_11.jpg)
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_12.jpg)
cuDNNをダウンロード
メンバー登録ができたら、再度「Download cuDNN」のリンクをクリックします。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_13.jpg)
バージョンを選択
「Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 10.0」から、「CUDA 10.0」対応の「cuDNN v7.6.5」をダウンロードします。
Windows 10 を使いますので、「cuDNN Library for Windows 10」を選びます。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_15.jpg)
インストール
次にインストールですが、ダウンロードした zip ファイルの中に、以下の3つのファイルがあります。
CUDA がインストールされたフォルダにコピーしてください。
- cudnn64_7.dll
- cudnn.h
- cudnn.lib
※ インストール先を変えてなければ、「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0」になります。
Anaconda 仮想環境の作成
それでは、Anaconda で仮想環境を作っていきます。
まず、スタートメニューから「Anaconda3」下の「Anaconda Prompt」を起動します。
![](https://api.rightcode.co.jp/wp-content/uploads/2020/05/learn-yolov3-image-windows10-environment-construction_16.jpg)
仮想環境の作成
「tf114」という名前の仮想環境を作っていきます。
1conda create -n tf114 python=3.7
※ conda create -n [仮想環境名] python=3.7
1Proceed ([y]/n)? y
仮想環境を起動
インストールが終わったら、早速、仮想環境を起動してみます。
1conda activate tf114
※ conda activate [仮想環境名]
Tensorflow や Keras などの必要パッケージのインストール
パッケージのインストールは、「pipコマンド」を使います。
Tensorflow のインストール
この記事を書いている時の最新バージョンは 2.1.0 です。
バージョン1系のプログラムがそのままでは動かないなど、大きく変更されています。
今回、使うのは、「Tensorflow 1.14.0」と「Keras 2.2.4」です。
まずは、Tensorflow(GPU版)をインストールします。
1(tf114)>pip install tensorflow-gpu==1.14.0
1(tf114)>pip list
2:
3:
4tensorboard 1.14.0
5tensorflow-estimator 1.14.0
6tensorflow-gpu 1.14.0
7:
1(tf114)>python -c "import tensorflow as tf;print(tf.__version__)"
2:
3:
41.14.0
※ GPUが無い場合は「pip install tensorflow==1.14.0」
Keras のインストール
次に、Keras をインストールします。
1(tf114)>pip install keras==2.2.4
1(tf114)>pip list
2:
3:
4Keras 2.2.4
5Keras-Applications 1.0.8
6Keras-Preprocessing 1.1.0
7:
1(tf114)>python -c "import keras;print(keras.__version__)"
2:
3:
42.2.4
MNIST で動作確認
Tensorflow と Keras のインストールが終わりました。
MNIST(手書き文字)を学習させて、動作テストをしてみましょう!
こちらのページに、Keras 用の MNIST 学習 Python サンプルプログラムがあります。
【GitHub】
https://github.com/keras-team/keras/blob/master/examples/mnist_cnn.py
「mnist_cnn.py」という名前で保存して、Python コマンドで実行します。
1(tf114)>python mnist_cnn.py
学習時のログの見方
実行したときに出力されるログから、ポイント抜粋します。
トレーニングデータが 60,000 個、評価用データが 10,000 個入力として扱われます。
1Train on 60000 samples, validate on 10000 samples
GPU として「Geforce GTX 1060 6GB」が認識されました。
1name: GeForce GTX 1060 6GB major: 6 minor: 1 memoryClockRate(GHz): 1.759
学習の結果
60,000個のトレーニングデータで12回目の学習が終了した結果、正解率は 0.9926(99.26%)となりました。
1Epoch 12/12
260000/60000 [==============================] - 6s 96us/step - loss: 0.0243 - acc: 0.9925 - val_loss: 0.0267 - val_acc: 0.9926
3Test loss: 0.026658646806161413
4Test accuracy: 0.9926
正解率などは、学習のたびに若干変わりますが、概ね 0.99xx になりますね!
さいごに
今回は、「事前の準備」と「MNIST」での動作確認までを解説しました。
次回は、YOLOv3 を使った物体検出を自前画像で学習させていきます。
お楽しみに!
次回の記事はこちら
こちらの記事もオススメ!
2020.07.28機械学習 特集知識編人工知能・機械学習でよく使われるワード徹底まとめ!機械学習の元祖「パーセプトロン」とは?【人工知能】ニューラルネ...
2020.07.17ライトコード的「やってみた!」シリーズ「やってみた!」を集めました!(株)ライトコードが今まで作ってきた「やってみた!」記事を集めてみました!※作成日が新し...
関連記事
ライトコードでは、エンジニアを積極採用中!
ライトコードでは、エンジニアを積極採用しています!社長と一杯しながらお話しする機会もご用意しております。そのほかカジュアル面談等もございますので、くわしくは採用情報をご確認ください。
採用情報へ
![メディアチーム](/_next/image?url=https%3A%2F%2Fapi.rightcode.co.jp%2Fwp-content%2Fuploads%2F2024%2F12%2Fmedia_new_icon-150x150.png&w=3840&q=75)
「好きを仕事にするエンジニア集団」の(株)ライトコードです! ライトコードは、福岡、東京、大阪、名古屋の4拠点で事業展開するIT企業です。 現在は、国内を代表する大手IT企業を取引先にもち、ITシステムの受託事業が中心。 いずれも直取引で、月間PV数1億を超えるWebサービスのシステム開発・運営、インフラの構築・運用に携わっています。 システム開発依頼・お見積もり大歓迎! また、現在「WEBエンジニア」「モバイルエンジニア」「営業」「WEBデザイナー」を積極採用中です! インターンや新卒採用も行っております。 以下よりご応募をお待ちしております! https://rightcode.co.jp/recruit