Python + TensorFlow で機械学習環境を構築してネコちゃんとワンちゃんの写真分類を動かしてみよう

はじめに

Python機械学習について興味あるけど何から手をつけて良いかわからないという人も少なくないのではと思います。まさに今の自分がそうです。

学習のためにもまずは Jupyter Notebookを利用してPython機械学習の実行環境を構築してみます。

さらに機械学習ライブラリである TensorFlow を導入し、チュートリアルに沿って、ネコちゃんとワンちゃんの画像分類を動かしてみます。

ちなみに私はネコちゃん派です。可愛いは正義!

環境

Mac OS 10.14.6

Jupyter Notebookインストール

Jupyter NotebookというOSSを利用することで、Pythonをブラウザで実行でき、データを視覚化できたりと簡単に環境が作れるので便利です。

Anaconda インストーラーを使用するのが簡単なので、こちらを使用してインストールします。

Anacondaダウンロードページから、MacOSの 「64-bit Graphical installer」を選択し、インストーラーをダウンロードします。

ダウンロードした「Anaconda3-2021.05-MacOSX-x86_64.pkg」を実行し、Anaconda をインストールします。

Jupyter Notebook起動してみる

Jupyter Notebook起動

上記でインストールした Anaconda 起動します。

アプリケーションに緑の輪のようなアイコンの 「Anaconda Navigator」というものが 追加されています。この「Anaconda Navigator」を起動します。

起動すると下記のような画面が立ち上がります。

Jupyter Notebook の欄にある「Lanch」ボタンを押下すると Jupyter Notebookが起動します。ホームディレクトリが表示されます。

ファイル作成

ファイル作成は、右端にある「New」のところをクリックし、Notebook Pythonを選択します。

そうすると、新たにブラウザが立ち上がります。

入力のところにコード書いて「実行」ボタンをクリックすれば、コードが実行できます。

作成したファイルの拡張子は「.ipynb」です。

Jupyter Notebook終了

ファイル編集画面を終了するには、必ず「Fileメニュー => 閉じて終了(Close and Halt)」で終了しましょう。

「x」でブラウザ閉じてしまうと、ゾンビプロセスが残ってしまうこともあるので、上記手順で終了します。

あとはJpyter NotebookのMain画面に戻り「終了(Quit)」をクリックすることでJupyter Notebook自体も終了します。

TensorFlow を Jupyter Notebook へ導入

TensorFlowとは、ディープラーニングアルゴリズムを実行することができるライブラリです。ニューラルネットワークモデルの作成、トレーニング実施、評価、予測などを効率よく行うことができる人気の高いディープラーニングツールです。

今回は、この TensorFlow を導入し、実際に動かしてみます。

Jupyter Notebook にはデフォルトのBase(root)環境だと TensorFlow はインストールされていないようです。なので、個別でインストールする必要があります。

新規Python環境作成

Anaconda Navigatorの「Environments」メニューの「Create」をクリックしてBase (root) とは別のPython環境を作成します。

名前はわかりやすく「TensorFlow」にしました。

この環境に TensorFlow をインストールします。

TensorFlowインストール

作成した TensorFlow 環境の実行ボタン風のところをクリックし、「Open terminal」をクリックします。

そうするとターミナルが立ち上がります。

表示されたターミナルにて、TensorFlowインストール方法方法の通り、pipコマンドで TensorFlow をインストールします。

これで TensorFlow がインストールできました。

Matplotlibインストール

Matplotlibとは、グラフ描画ライブラリです。棒グラフや散布図、画像ファイルも描画でき、学習の精度や損失から評価結果まで視覚化できるので、TensorFlow と一緒に入れておくと便利です。

新しく作成した環境では、Matplotlibも「installed」 になっていなかったのでインストールします。

All で検索すると、Matplotlib系のものが出てくるのでどちらもApplyしておきます。

 

これで実行環境は整いましたね!

いざ TensorFlow を動かすぞ!

それでは実際に TensorFlow のコードをチュートリアルを元に、TensorFlow の高レベル APIである tf.keras を使用し、事前にトレーニング済みのMobileNetV2モデル からベースモデルを作成し、cats_and_dogsデータセットを利用してネコちゃんとワンちゃんの画像分類を動かしてみましょう。

cats_and_dogs_filtered.zipファイルの中身は下記のようになっています。

入力のところに下記コードを設定し、実行します。

実行が完了すると、下記のように確認用データセットから9枚画像ファイルをピックアップして、ネコちゃんかワンちゃんかを分類した結果が表示されます。

写真とラベルを見ると、ネコちゃんかワンちゃんかが判別されていますね!

以上で、Python + TensorFlow の実行環境構築と動作確認できました。


--------------------------
システム開発のご要望・ご相談はこちらから

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です