コンソールで API を使用して画像にラベルを付ける

このクイックスタートでは、以下のプロセスを順を追って説明します。

  • ラベル付き境界ボックスを使用して、画像のデータセットを作成する。
  • データセットを使用して、カスタムモデルをトレーニングする。

このクイックスタートでは、カスタム ユーザー インターフェース(UI)を使用して AutoML Vision API を操作します。このクイックスタートの手順はすべて AutoML API でも行うことができます。UI または API の使用方法については、入門ガイドをご覧ください。

始める前に

AutoML Vision Object Detection を使用する前に、Google Cloud プロジェクト(他の AutoML サービスで使用しないプロジェクト)を作成し、そのプロジェクトで AutoML Vision Object Detection を有効にする必要があります。

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Cloud AutoML and Storage API を有効にします。

    API を有効にする

  5. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  6. Google Cloud プロジェクトで課金が有効になっていることを確認します

  7. Cloud AutoML and Storage API を有効にします。

    API を有効にする

ベータ版の要件

  1. このベータ版では、リージョンとして us-central1 を使用する必要があります。

データセットの準備

このクイックスタートでは、Open Images Dataset V4 から作成したデータセットを使用します。一般公開されている Salads のデータセットは gs://cloud-ml-data/img/openimage/csv/salads_ml_use.csv にあります。

CSV 形式は次のとおりです。

TRAINING,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Salad,0.0,0.0954,,,0.977,0.957,,
VALIDATION,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Seafood,0.0154,0.1538,,,1.0,0.802,,
TEST,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Tomato,0.0,0.655,,,0.231,0.839,,
データセット画像の例
3916261642_0a504acd60_o.jpg

各行は、大きな画像内にローカライズされたオブジェクトに対応し、各オブジェクトはテスト、トレーニング、検証データとして指定されます。ここに含まれる 3 行は、gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg で使用可能な同じ画像内にある 3 つの異なるオブジェクトを示しています。各行には、Baked goods または Cheese ラベルを持つ他の行に加えて、SaladSeafoodTomato という異なるラベルがあります。

左上と右下の頂点で、各画像の境界ボックスが指定されます。

  • (0,0)が左上の頂点に対応します。
  • (1,1)が右下の頂点に対応します。

上記の最初の行の場合、Salad ラベル付きオブジェクトの左上の頂点の(x、y)座標は(0.0,0.0954)であり、オブジェクトの右下の頂点の座標は(0.977,0.957)です。

CSV ファイルの形式と有効なデータセットの最小要件の詳細については、トレーニング データの準備をご覧ください。


データセットを作成してトレーニング用の画像をインポートする

  1. AutoML Vision Object Detection UI を開き、タイトルバーのプルダウン リストからプロジェクトを選択します。

    AutoML Vision Object Detection UI を初めて開くときに、AutoML API が有効になっていない場合は、この API を有効にする必要があります。

  2. プロンプトが表示されたら、ポップアップ ウィンドウで [開始] を選択します。

    開始オプションを選択する

  3. データセットのリストページが表示されます。[新しいデータセット] を選択して、新しいデータセットを作成します。

    [新しいデータセットを作成] を選択する

    データセットの一意の名前を入力します。

    新しく作成するデータセットの名前を選択する

  4. 表示されたウィンドウで、インポートするトレーニング データの場所を入力します。

    [Cloud Storage で CSV ファイルを選択] テキスト ボックスに、CSV サンプル ファイルのパスを入力します(gs:// という接頭辞が自動的に追加されます)。

    cloud-ml-data/img/openimage/csv/salads_ml_use.csv

    あるいは、[参照] を選択して、Google Cloud Storage バケット内にある CSV ファイルを選択することもできます。

    このクイックスタートで使用するサンプルデータは、一般公開の Google Cloud Storage バケットにステージングされています。トレーニング データは、モデルに学習させる境界ボックスとオブジェクトのラベルが追加された JPG サンプル画像です。トレーニング データをデータセットにインポートするには、画像ファイル(JPEG、PNG、GIF、BMP または ICO)を参照する CSV ファイルを使用します。ファイルの形式と画像の指定方法については、トレーニング データの準備をご覧ください。

    CSV をアップロードするデータセットの作成画像
  5. [インポート] を選択します。

    画像のインポート中、データセットのステータスRunning:importing images になります。この処理には数分かかります。

トレーニング データが正常にインポートされると、[ステータス] 列に Success:Creating dataset が表示され、データセット(AutoML API の呼び出しで使用したデータセット)に生成された ID とインポートされた項目数が UI に表示されます。

データセット画像の一覧

画像のインポートで問題が発生した場合は、ステータスが Warning: Importing images になります。特定の画像のインポートに関するエラーを表示するには、データセット名と詳細を選択します。

インポート エラーの画像

モデルのトレーニング

データセットを作成し、トレーニング データをデータセットにインポートしたら、カスタムモデルをトレーニングできます。

  1. データセットのリストページで、データセット名をクリックします。

    データセットの一覧ページ

  2. [トレーニング] タブを選択します。すべてのラベルと、トレーニング、テスト、検証セットへの分割の内訳が表示されます。

    トレーニング、テスト、検証セットを示すトレーニング オプション

  3. [トレーニングを開始] を選択します。サイドパネルが開き、トレーニング オプションが表示されます。

    トレーニング パネル

  4. カスタム モデルの名前を入力するか、デフォルトの名前を使用します。このパネルでは、モデルの最適化(レイテンシや精度)を選択することもできます。

    [トレーニング後にモデルをノードにデプロイする] を選択して、自動デプロイをオプトインします。この選択を行わないと、トレーニング後にプロンプトが表示され、モデルをデプロイするように指示されます。モデルをデプロイしないと、予測を行うことはできません。

  5. [トレーニングを開始] を選択します。

    モデル トレーニングの開始ページ

モデルのトレーニングが完了するまで数時間かかることがあります。サンプルの標準的なトレーニング時間は約 1 時間です。

モデルのトレーニングが正常に終了したら、プログラムの登録に使用したメールアドレスにメッセージが届きます。

カスタムモデルの評価

モデルをトレーニングした後、AutoML Vision Object Detection は新しいモデルの品質と精度を評価します。モデルの評価指標を確認するには:

  1. AutoML Vision Object Detection UI を開きます。左側のナビゲーション バーで、電球のアイコンがある [モデル] タブをクリックします。

  2. 評価するモデルの名前をクリックします。

  3. 必要に応じて、タイトルバーのすぐ下にある [評価] タブをクリックします。

    モデルのトレーニングが完了すると、AutoML Vision Object Detection の評価指標が表示されます。モデル全体の適合率と再現率のほか、各オブジェクト ラベルについてはスコアしきい値と IoU(intersection over union)しきい値も表示されます。特定のオブジェクト ラベルの指標を表示するには、[ラベルをフィルタ] リストからラベルを選択します。

    モデル評価ページ

適合率再現率は、モデルがどの程度的確に情報をとらえ、どの程度の量の情報を逃しているかを評価します。適合率とは、特定のラベルのアノテーションが付いているすべてのオブジェクトに対し、そのラベルに実際に割り当てられたオブジェクトの数の割合を表します。再現率とは、特定のエンティティとして識別されるべきオブジェクトの数に対して、そのエンティティに実際に割り当てられたオブジェクトの数の割合を表します。

このデータを使用して、モデルの準備状況を評価します。

  • 適合率または再現率のスコアが低い場合、モデルのトレーニング データが不足していることを表しています。
  • 適合率または再現率が 100% の場合、データが簡単すぎて、一般化できないことを表しています。

カスタムモデルの使用

モデルのトレーニングに成功したら、次はそのモデルをもとに、カスタムモデルで画像内のオブジェクトを識別して境界ボックスとラベルを付けます。[テストと使用] タブを選択します。

自動デプロイを選択しなかった場合は、予測を行う前にモデルのデプロイを促すメッセージが表示されます。

予測を行う

モデルをデプロイしたら、[テストと使用] ページでテスト画像のパスを指定します配置します(この画像はローカルに保存されています)。AutoML Vision は、モデルを使用して画像を分析し、画像内にラベル付きオブジェクトと境界ボックスを表示します。

アップロードされた画像の予測ページ

クリーンアップ

このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の操作を行います。

不要になったカスタムモデルやデータセットは削除できます。

Google Cloud Platform の不必要な課金を避けるため、GCP Console を使用して、不要になったプロジェクトを削除します。

モデルのデプロイ解除

モデルがデプロイされている間は料金がかかります。

  1. タイトルバーのすぐ下にある [テストと使用] タブを選択します。
  2. モデル名の下にあるバナーから [デプロイメントを削除] を選択します。デプロイ解除オプションのウィンドウが開きます。

    デプロイ解除のポップアップ メニュー

  3. [デプロイメントを削除] を選択して、モデルのデプロイを解除します。

    モデルのデプロイ

  4. モデルのデプロイ解除が完了すると、メールが届きます。

プロジェクトを削除する(任意)

Google Cloud Platform で不必要な課金を避けるため、Google Cloud コンソールを使用して、不要になったプロジェクトを削除します。

次のステップ