Vertex AIの画像分類モデルをつくってみたので、その方法を書き記しておきます。
なおVertex AIはGoogle Cloudのコンソールから設定できます。
モデルの種類をえらぶ
はじめに、どんなモデルをつくりたいのか。
その種類を選びます。
4種類のデータタイプから目標を選べます。
今回は画像データセットから、画像分類(単一ラベル)を目標に設定します。
データセットを指定する
つぎにデータセットをつくります。
データセットとはVertex AIに学習させる画像群のことです。
画像のインポート方法は3種類あって、今回はチュートリアルとして用意された画像URIとラベルのファイルをつかっていきますので「インポートファイルをCloud Storageから選択」を選び続行します。
画像のインポート
画像のインポートが行われると、結果が表示されます。
数枚の画像がエラーになりましたが概ね取り込めました。各画像の下には読み込ませたラベルが表示されています。
今回はおよそ3700枚の画像をインポートしました。
機械学習のトレーニングにはこれくらいの枚数が必要になるんですねー。自分で独自のモデルをつくるのはそれなりに準備が必要ですね。
モデルをつくる
画像とCSVのデータセットを取り込んだら次に画像検知用のモデルをつくります。
Model Registry画面から作成。 このあたりの流れはとても直感的でわかりやすいですね。
モデルの設定
モデルの設定をしていきます。
トレーニングにつかうデータセット(画像群)はデフォルトでランダムに8:1:1に分割されます。
検証用に1割(370枚程度)、最終テスト用に1割が使われるため、画像枚数は多いほうが良さそうですね。
費用の設定
コンピューティングと料金の設定。
約4,000枚の画像処理に対して8ノード時間との見積もりが表示される。 8×3.465ドル×145円 ≒ 4,000円かかりそうです。
トレーニングの開始
モデル作成の設定を完了するとトレーニングがはじまります。
トレーニングの完了
トレーニングの完了。
見積もりどおりに8ノード時間でした。
モデル作成にかかる費用感がつかめたので良かったです。みなさまの参考になればと思います。
モデルのデプロイ
モデルのトレーニングを終えたのでエンドポイントにデプロイしていきます。
「デプロイとテスト」から「エンドポイントにデプロイ」をクリックします。
デプロイの完了
デプロイの完了まで待ちます。
モデルのテスト
完成したモデルをテストしてみました。
Unsplash(Tiffany Nguyen)の画像をテストしてみたところ、95.3%の信頼度で薔薇と認識してます。
これでVertex AIのモデル作成フローをひととおり回せました🙂
おまけ
Vertex AIでのモデル作成の一連の流れを試してみました。
基本的なことではありますが画像の収集が重要になりそうです。
さいごのおまけとして、今回作ったモデルではなくTensorFlow liteで用意された物体検知モデルをFlutterから実行した動画をおいておきます。
Flutter×TensorFlow liteでもこのあたりまではできるんですねー。