AI(人工知能/ディープラーニング)

ZENKEI AIセミナーで犬猫の画像を判定する処理を実際に自分のPCで行ってみた

この記事は約3分で読めます。

38200136_2161442937218968_4194278917390991360_o.jpgAI(機械学習/ディープラーニング)の実践的な勉強会に参加した。今回は犬と猫の画像を用意して、その犬と猫を自動的に判定するという処理を行ってみる。通常、AIの処理には高速なGPUコンピュータが必要だが、無料で使える「Google Colaboratory」と「Google Drive」を活用することで、自分の非力なノートPCでも使えるという。
言語はPython(パイソン)を使う。「少ないコード量(文量)で簡単にプログラムがかける」「コードが読みやすい」といったメリットがあり、AIの業界でよく使われている。

ZENKEI AIセミナー

講師は全景の市來健吾氏

講師は全景の市來健吾氏
38200136_2161442937218968_4194278917390991360_o.jpg

まず、講師の市來氏から送られてきたメールを開く。すると、グーグルドライブで共有したファイルを開くことができる。まずは、自分のGoogle Driveにコピーをおき、以下のような画面になるので「Google Colaboratory」で開く。

Google Colaboratoryを開く

colaboratory.jpg

「ITのエンジニアでなくてもディープラーニングが学べる」というふれこみに惹かれて参加したこのセミナーだが、いきなりこの難解なコードの羅列が表示されてちょっと面くらった。

pythonsetting.jpg

パイソンのセッテイング

パイソンのセッテイング確認。

とにかく、講師のいうとおりに手続きを進めていく。

38119948_2161452887217973_4044784561949769728_n.jpg

聞き慣れない言葉が続く。コードセット、データセット、セッション開始、リストを読み込む、モデルを使う、ファイントレーニング…。セル内の実行コードは「シフト+エンター」で実行するのがおすすめということだったので、そのとおりに実行する。

最後の判定処理までたどりつくことができた

次々の実行していくと、最後の判定処理までたどりつくことができた。

38164183_2161541675768_8107821529448448_o.jpg

▼実際に自分のPCで表示されたLOSSグラフ
lossaiglf.jpg

AIの判定精度を高めるにはいろんな工夫がされているようだ。エポックを何回か回すことでロスの数値が下がっていくとよい。とくに「lr」の値をいくつにするかが重要ポイントらしい。最適値を探るためのグラフを生成したりして、10のマイナス二乗(1e-2)あたりがいいらしいことがわかった。

38164183_2161541603875768_8107079821529448448_o.jpg

最終的に多数の犬猫画像を判定した結果は、約95%の精度で正しい判定をすることができた。犬や猫の顔あたりがレインボーになっているのは、判定に重要な箇所として判断したという意味らしい。

遠田のメモ

zenkeiai20180801.jpg

当日の自分のメモ。次回以降はもっと高度な処理にチャレンジしていくことなるので復習が必須だ。

犬猫分類の精度を、上で示したものよりも上げる

      • 学習エポック数を増やしてみる
      • データセット全部使ってみる
      • 別の学習済みモデルを使ってみる(例えば Resnet34 とか)

別の分類問題に挑戦してみる、例えば

▼参考サイト
【秒速で無料GPUを使う】深層学習実践Tips on Colaboratory
https://qiita.com/tomo_makes/items/b3c60b10f7b25a0a5935