AutoML Vision を使用して画像にラベルを付ける
このクイックスタートでは、以下のプロセスを順を追って説明します。
- Cloud Storage に一連の画像をコピーする。
- 画像とその分類ラベルをリストした CSV を作成する。
- AutoML Vision を使用してデータセットを作成し、モデルをトレーニングしてデプロイする。
- カスタムラベルでトレーニングされたモデルを使用して画像を分類する。
始める前に
プロジェクトを設定する
- Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Browser-based sign-in with the gcloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Google Cloud プロジェクトを作成または選択します。
-
Google Cloud プロジェクトを作成します。
gcloud projects create PROJECT_ID
PROJECT_ID
は、作成する Google Cloud プロジェクトの名前に置き換えます。 -
作成した Google Cloud プロジェクトを選択します。
gcloud config set project PROJECT_ID
PROJECT_ID
は、実際の Google Cloud プロジェクト名に置き換えます。
-
-
Enable the AutoML and Cloud Storage APIs:
gcloud services enable storage-component.googleapis.com
automl.googleapis.com storage-api.googleapis.com - 環境変数
PROJECT_ID
をプロジェクト ID に設定します。 AutoML API 呼び出しとリソース名には、プロジェクト ID が含まれています。環境変数export PROJECT_ID=PROJECT_ID
PROJECT_ID
は、ID の指定に便利です。
Cloud Storage バケットを作成する
Google Cloud コンソール プロジェクトに接続されたブラウザベースの Linux コマンドラインである Cloud Shell を使用して Cloud Storage バケットを作成します。
Cloud Storage バケットを作成します。バケット名の形式は、
project-id-vcm
にする必要があります。次のコマンドによって、
project-id-vcm
という名前のus-central1
リージョンにストレージ バケットが作成されます。利用可能なリージョンの一覧については、バケット ロケーション ページをご覧ください。gcloud storage buckets create gs://${PROJECT_ID}-vcm/ --project=${PROJECT_ID} --location=us-central1
BUCKET 変数を設定します。
export BUCKET=${PROJECT_ID}-vcm
バケットへのサンプル画像のコピー
次に、この Tensorflow のブログ投稿で使用されている花のデータセットをコピーします。画像は公開 Cloud Storage バケットに保存されるため、そこから直接自分のバケットにコピーできます。
Cloud Shell セッションで、次のように入力します。
gcloud storage cp gs://cloud-samples-data/ai-platform/flowers/ gs://${BUCKET}/img/ --recursive
ファイルのコピーには約 20 分かかります。
画像分類 CSV ファイルの作成
サンプル データセットには、すべての画像の場所と各画像のラベルを含む CSV ファイルが含まれています。これを使用して独自の CSV ファイルを作成します。
CSV ファイルを更新して、自分のバケット内のファイルを指すようにします。
gcloud storage cat gs://${BUCKET}/img/flowers/all_data.csv | sed "s:cloud-ml-data/img/flower_photos/:${BUCKET}/img/flowers/:" > all_data.csv
バケットに CSV ファイルをコピーします。
gcloud storage cp all_data.csv gs://${BUCKET}/csv/
画像分類データセットの作成
データセットの作成とモデルのトレーニングを開始するには、AutoML Vision UI にアクセスします。
プロンプトが表示されたら、Cloud Storage バケットに使用したプロジェクトを必ず選択します。
AutoML Vision ページから、[新しいデータセット] をクリックします。
このデータセットの名前を指定します。[+] 記号をクリックして続行します。
[インポートするファイルを選択します] 画面で、[
Cloud Storage で CSV ファイルを選択] ラジオボタンをオンにします。CSV ファイルの Cloud Storage URI を指定します。このクイックスタートでは、CSV ファイルの場所は次のとおりです。gs://${PROJECT_ID}-vcm/csv/all_data.csv
PROJECT_ID
は、特定のプロジェクト ID に置き換えます。[続行] を選択して、画像のインポートを開始します。インポートには数分かかります。完了すると、次のページが表示され、データセットに対して識別されたすべての画像(ラベル付きの画像とラベルなし画像の両方)の詳細がそこに記載されます。
クラウドでホストされる AutoML Vision モデルのトレーニング
データセットが作成されて処理されたら、[トレーニング] タブを選択してモデルのトレーニングを開始します。
続行するには [トレーニングを開始] を選択してください。これにより、[新しいモデルのトレーニング] ウィンドウが開き、トレーニング オプションが表示されます。
新しいモデル トレーニング ウィンドウの [モデルを定義する] セクションで、モデル名を変更し(省略可)、[
クラウドでホスト] モデルのラジオボタンを選択します。[続行] を選択して次のセクションに進みます。[ノード時間予算の設定] セクションで、推奨されるノード予算(32 ノード時間)をそのまま使用します。
モデルのトレーニングを開始するには、[トレーニングを開始] を選択します。
モデルのトレーニングが開始されます。これには約 1 時間かかります。トレーニングは、選択したノード時間より前に停止することがあります。トレーニングが完了した後、またはエラーが発生した場合は、メールが届きます。
AutoML Vision 分類モデルのデプロイ
モデルのトレーニングが完了したら、カスタムモデルを使用して画像にラベルを付けることができます。[テストと使用] タブを選択します。
自動デプロイを選択しなかった場合は、予測を行う前にモデルのデプロイを促すメッセージが表示されます。
AutoML Vision モデルを使用した画像のラベル付け
画像をモデルに送信して画像のコンテンツ ラベルを取得する手順については、[予測] タブをクリックしてください。また、オンライン予測の作成やバッチ予測の作成などもご覧ください。
クリーンアップ
このページで使用したリソースに対して Google Cloud アカウントで課金されないようにするには、Google Cloud プロジェクトとそのリソースを削除します。
不要になったカスタムモデルやデータセットは削除できます。
Google Cloud Platform の不必要な課金を避けるため、GCP Console を使用して、不要になったプロジェクトを削除します。
モデルのデプロイ解除
モデルがデプロイされている間は料金がかかります。
- タイトルバーのすぐ下にある [テストと使用] タブを選択します。
- モデル名の下にあるバナーから [デプロイメントを削除] を選択します。デプロイ解除オプションのウィンドウが開きます。
- [デプロイメントを削除] を選択して、モデルのデプロイを解除します。
- モデルのデプロイ解除が完了すると、メールが届きます。
プロジェクトを削除する(任意)
Google Cloud Platform で不必要な課金を避けるため、Google Cloud コンソールを使用して、不要になったプロジェクトを削除します。
次のステップ
- 機械学習(ML)の詳細については、初心者向けガイドをご覧ください。
- ML 公正性については、インクルーシブ ML ガイド - AutoML をご覧ください。
- Edge デバイスモデルのクイックスタートを使用して、エクスポート可能な AutoML Vision Edge モデルをトレーニングします。
- AutoML Vision API クライアント ライブラリを使用して、選択した言語で AutoML API の使用を開始します。
- 入門ガイドで、特定のリソースの作成と管理(データセットやモデルなど)の詳細、または個々の画像や画像バッチのアノテーションの取得方法を確認します。
- チュートリアルのいずれかを行います。