きっかけ
- AI 初心者だけど、業務上 AI 関連の仕事をすることになった。
- ひとまず AI っぽい事に触れてみようと思い画像分類の体験セミナーを受けてみた。
- セミナーの中で
TensorFlow
を使用。- 復習がてら手を動かして実践しようと思った。
TensorFlow とは
Google が開発しオープンソースで公開している、機械学習に用いるためのソフトウェアライブラリである。
機械学習や数値解析、ニューラルネットワーク(ディープラーニング)に対応しており、Google と DeepMind の各種サービスなどでも広く活用されている。
by Wikipedia
公式チュートリアル
- 公式でチュートリアルが用意されている。
-
画像分類
以外にも色々なチュートリアルが公開されている - 今回実践したチュートリアルはこちら
実践
- チュートリアルでは猫と犬の画像分類を行うモデルを作成する。
- モデル構築までの流れは以下となっている。
- データの読み込み
-データの準備
- モデル構築
- モデルの評価
-
予め機械学習をPython 実践機械学習システム 100 本ノックにて学習していたのだけど、大きな流れは同じなのだと感じた。
-
一度上記の流れで作成したモデルでは
過学習
気味な結果となったとして、データ拡張
、ドロップアウト
についても触れる事ができるシナリオだった。-
データ拡張: 学習用画像を割り増しするため、画像をランダムに回転、拡大縮小、反転させた。
-
ドロップアウト:過学習を防ぐため、学習中にランダムで出力ユニットの一部を不活性化する。
-
-
データ拡張
、ドロップアウト
を行った上で再度モデル学習を行い、精度が改善されたということを確認したところでチュートリアルは終了。
感想
-
自分のような基礎知識に乏しい者でも、チュートリアルに従うことで簡単に画像分類モデルが作成できた。
- 本チュートリアルは「犬と猫」でしたが、対象データ変えるだけでなんでもできそう。
-
チュートリアルだけであれば簡単にできたけど、実際に業務で使用するためには本質的な事柄を勉強しておきたいと感じた。
- モデル構築時のパラメータなど、今回はチュートリアル記載のままに設定しただけ。ここら辺とか意味を理解してチューニングできるようにならなければ。