Amazon Rekognition Custom Labels について - Rekognition

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Rekognition Custom Labels について

このセクションでは、コンソールと AWS SDK で Amazon Rekognition Custom Labels モデルをトレーニングして使用するワークフローの概要を説明します。

注記

Amazon Rekognition Custom Labels がプロジェクト内のデータセットを管理するようになりました。コンソールと AWS SDK を使用して、プロジェクトのデータセットを作成できます。以前に Amazon Rekognition Custom Labels を使用したことがある場合は、古いデータセットを新しいプロジェクトに関連付ける必要がある場合があります。詳細については、「ステップ 6: (オプション) 以前のデータセットを新しいプロジェクトに関連付ける」を参照してください。

モデルタイプの決定

まず、ビジネス目標に応じて、どのタイプのモデルをトレーニングするかを決定します。例えば、ソーシャルメディアの投稿で自社のロゴを見つけたり、店舗の棚で商品を識別したり、組立ラインで機械部品を分類したりするようにモデルをトレーニングできます。

Amazon Rekognition Custom Labels では、以下のタイプのモデルをトレーニングできます。

トレーニングするモデルのタイプを決定しやすくするために、Amazon Rekognition Custom Labels には使用できるサンプルプロジェクトが用意されています。詳細については、「Amazon Rekognition Custom Labels の開始方法」を参照してください。

オブジェクト、シーン、概念を検出する

このモデルは、イメージ全体に関連するオブジェクト、シーン、概念の分類を予測します。例えば、イメージに観光名所が含まれているかどうかを判断するモデルをトレーニングできます。サンプルプロジェクトについては、「画像分類」を参照してください。次のレイクのイメージは、オブジェクト、シーン、概念を認識できるイメージの種類の例です。

夕日や日の出の雲や山を反映したトランキルレイク。

イメージを複数のカテゴリに分類するモデルをトレーニングすることもできます。例えば、前のイメージには、空の色反射などのカテゴリが含まれている場合があります。サンプルプロジェクトについては、「マルチラベルイメージ分類」を参照してください。

オブジェクトの位置の検索

モデルはイメージ上のオブジェクトの位置を予測します。予測には、オブジェクトの位置に関する境界ボックス情報と、境界ボックス内のオブジェクトを識別するラベルが含まれます。例えば、次のイメージは、コンパレータポット抵抗など、回路基板のさまざまな部分を囲む境界ボックスを示しています。

回路基板上の IR LED、ポットレジスタ、コンパレータチップを示すコンポーネントイメージ。

オブジェクトのローカリゼーション のサンプルプロジェクトでは、Amazon Rekognition Custom Labels がラベル付き境界ボックスを使用して、オブジェクトの位置を検出するモデルをトレーニングする方法を示しています。

ブランドの所在地を探す

Amazon Rekognition Custom Labels は、イメージ上のブランドの場所 (ロゴなど) を検索するようにモデルをトレーニングできます。予測には、ブランドロケーションの境界ボックス情報と、境界ボックス内のオブジェクトを識別するラベルが含まれます。サンプルプロジェクトについては、「ブランド検出」を参照してください。次の画像は、モデルが検出できるいくつかのブランドの例です。

レコメンデーションのために Amazon Pinpoint にユーザーアクティビティをフィードする Lambda サービスを示す図。

モデルを作成する

モデルを作成する手順は、プロジェクトの作成、トレーニングデータセットとテストデータセットの作成、モデルのトレーニングです。

プロジェクトを作成する

プロジェクトとは、Amazon Rekognition Custom Labels モデルのバージョンを作成および管理するために必要なリソースのグループです。プロジェクトでは、次のものが管理されます。

  • データセット - モデルのトレーニングに使用されるイメージとイメージラベル。プロジェクトには、トレーニングデータセットとテストデータセットがあります。

  • モデル - ビジネス特有の概念、シーン、オブジェクトを検索するためのトレーニングを行うソフトウェアです。プロジェクトには、モデルの複数のバージョンを含めることができます。

回路基板上の回路基板部品を検索するなど、単一のユースケースにプロジェクトを使用することをお勧めします。

Amazon Rekognition Custom Labels コンソールと CreateProject API を使用してプロジェクトを作成できます。詳細については、「「プロジェクトの作成」」を参照してください。

トレーニングデータセットとテストデータセットの作成

データセットとは、イメージとそのイメージを説明するラベルの集合のことです。プロジェクト内で、Amazon Rekognition Custom Labels でモデルのトレーニングとテストに使用するトレーニングデータセットとテストデータセットを作成します。

ラベルは、イメージ内のオブジェクトを囲むオブジェクト、シーン、概念、または境界ボックスを識別します。ラベルはイメージ全体 (イメージレベル) に割り当てられるか、イメージ上のオブジェクトを囲む境界ボックスに割り当てられます。

重要

データセット内のイメージに付けるラベルによって、Amazon Rekognition Custom Labels が作成するモデルのタイプが決まります。例えば、オブジェクト、シーン、概念を検出するモデルをトレーニングするには、トレーニングデータセットとテストデータセットのイメージにイメージレベルのラベルを割り当てます。詳細については、「データセットの目的の設定」を参照してください。

イメージは PNG 形式および JPEG 形式である必要があり、入力イメージの推奨事項に従う必要があります。詳細については、「イメージの準備」を参照してください。

トレーニングデータセットとテストデータセットの作成 (コンソール)

1 つのデータセットでプロジェクトを開始することも、個別のトレーニングデータセットとテストデータセットを持つプロジェクトから始めることもできます。1 つのデータセットから始めると、Amazon Rekognition Custom Labels はトレーニング中にデータセットを分割して、プロジェクトのトレーニングデータセット (80%) とテストデータセット (20%) を作成します。Amazon Rekognition Custom Labels にトレーニングとテストに使用するイメージを決定させる場合は、1 つのデータセットから始めてください。トレーニング、テスト、パフォーマンスのチューニングを完全に制御するには、トレーニングデータセットとテストデータセットを分けてプロジェクトを開始することをお勧めします。

プロジェクトのデータセットを作成するには、次のいずれかの方法でイメージをインポートします。

  • ローカルコンピュータから画像をインポートします。

  • S3 バケットから画像をインポートします。Amazon Rekognition Custom Labels では、イメージを含むフォルダ名を使用してイメージにラベル付けすることができます。

  • Amazon SageMaker Ground Truth マニフェストファイルをインポートします。

  • 既存の Amazon Rekognition Custom Labels データセットをコピーします。

詳細については、「イメージ付きのトレーニングデータセットとテストデータセットの作成」を参照してください。

イメージのインポート元によっては、イメージにラベルが付いていない場合があります。例えば、ローカルコンピュータからインポートされたイメージにはラベルは付きません。Amazon SageMaker Ground Truth マニフェストファイルからインポートされたイメージにはラベルが付けられます。Amazon Rekognition Custom Labels コンソールを使用して、ラベルの追加、変更、割り当てを行うことができます。詳細については、「イメージにラベルを付ける」を参照してください。

コンソールでトレーニングデータセットとテストデータセットを作成するには、「イメージ付きのトレーニングデータセットとテストデータセットの作成」を参照してください。トレーニングデータセットとテストデータセットの作成を含むチュートリアルについては、「画像の分類」を参照してください。

トレーニングデータセットとテストデータセットの作成 (SDK)

トレーニングデータセットとテストデータセットを作成するには、CreateDataset API を使用します。Amazon Sagemaker 形式のマニフェストファイルを使用するか、既存の Amazon Rekognition Custom Labels をコピーして、データセットを作成できます。詳細については、「トレーニングデータセットとテストデータセットを作成する (SDK) 」を参照してください。必要に応じて、独自のマニフェストファイルを作成できます。詳細については、「マニフェストファイルの作成」を参照してください。

モデルをトレーニングする

トレーニングデータセットでモデルをトレーニングします。モデルの新しいバージョンは、トレーニングのたびに作成されます。トレーニング中、Amazon Rekognition Custom Labels はトレーニング済みモデルのパフォーマンスをテストします。その結果を使用して、モデルを評価し、改善することができます。トレーニングが完了するまでしばらく時間がかかります。モデルのトレーニングが成功した場合にのみ課金されます。詳細については、「Amazon Rekognition Custom Labels モデルをトレーニングする」を参照してください。モデルトレーニングが失敗した場合、Amazon Rekognition Custom Labels は使用できるデバッグ情報を提供します。詳細については、「失敗したモデルトレーニングのデバッグ」を参照してください。

モデルのトレーニング (コンソール)

コンソールでモデルをトレーニングする方法については、「モデルのトレーニング (コンソール)」を参照してください。

モデルのトレーニング (SDK)

Amazon Rekognition Custom Labels モデルをトレーニングするには、CreateProjectバージョン を呼び出します。詳細については、「モデルのトレーニング (SDK)」を参照してください。

モデルの改善

テスト中、Amazon Rekognition Custom Labels は、トレーニング済みモデルの改善に使用できる評価メトリクスを作成します。

モデルの評価

テスト中に作成されたパフォーマンスメトリクスを使用して、モデルのパフォーマンスを評価します。F1、適合率、再現率などのパフォーマンスメトリクスにより、トレーニングしたモデルのパフォーマンスを理解し、本稼働で使用する準備ができたかどうかを判断することができます。詳細については、「モデルを評価するためのメトリクス」を参照してください。

モデルを評価する (コンソール)

パフォーマンスメトリクスを表示するには、「評価メトリクスへのアクセス (コンソール)」を参照してください。

モデルの評価 (SDK)

パフォーマンスメトリクスを取得するには、DescribeProjectバージョン を呼び出してテスト結果を取得します。詳細については、「Amazon Rekognition Custom Labels の評価メトリクスへのアクセス (SDK)」を参照してください。テスト結果には、分類結果の混同行列など、コンソールにはないメトリクスが含まれます。テスト結果は次の形式で返されます。

  • F1 スコア - モデルの全体的な適合率と再現率を表す単一の値。詳細については、「F1」を参照してください。

  • サマリーファイルの場所 - テストサマリーには、テストデータセット全体の集計評価メトリクスと、個々のラベルのメトリクスが含まれます。DescribeProjectVersions は、サマリーファイルの S3 バケットとフォルダの場所を返します。詳細については、「 モデル概要ファイルへのアクセス」を参照してください。

  • 評価マニフェストのスナップショットの場所 - スナップショットには、信頼度評価や誤検出などの二項分類テストの結果など、テスト結果に関する詳細が含まれています。DescribeProjectVersions は、スナップショットファイルの S3 バケットとフォルダの場所を返します。詳細については、「評価マニフェストスナップショットの解釈」を参照してください。

モデルの改善

改善が必要な場合は、トレーニングイメージを追加するか、データセットのラベル付けを改善することができます。詳細については、「Amazon Rekognition Custom Labels モデルの改善」を参照してください。モデルが作成した予測についてフィードバックを与えて、それを使用してモデルを改善することもできます。詳細については、「モデルフィードバックによるモデルの改善」を参照してください。

モデルの改善 (コンソール)

データセットにイメージを追加する方法については、「データセットへのイメージの追加」を参照してください。ラベルを追加または変更するには、「イメージにラベルを付ける」を参照してください。

モデルを再トレーニングするには、「モデルのトレーニング (コンソール)」を参照してください。

モデルの改善 (SDK)

データセットにイメージを追加したり、イメージのラベルを変更するには、UpdateDatasetEntries API を使用します。UpdateDatasetEntries は JSON 行を更新するか、マニフェストファイルに追加します。JSON の各行には、割り当てられたラベルや境界ボックスの情報など、1 つのイメージに関する情報が含まれています。詳細については、「イメージの追加 (SDK)」を参照してください。データセット内のエントリを表示するには、ListDatasetEntries API を使用します。

モデルを再トレーニングするには、「モデルのトレーニング (SDK)」を参照してください。

モデルの開始

モデルを使用する前に、Amazon Rekognition Custom Labels コンソールまたは StartProjectVersion API を使用してモデルを開始します。モデルの稼働時間に応じて課金されます。詳細については、「トレーニング済み Amazon Rekognition Custom Labels の実行」を参照してください。

モデルの開始 (コンソール)

コンソールを使用してモデルを開始する方法については、「Amazon Rekognition Custom Labels モデルの開始 (コンソール)」を参照してください。

モデルの開始

StartProjectバージョン を呼び出すモデルを開始します。詳細については、「Amazon Rekognition Custom Labels モデル (SDK) を開始します。」を参照してください。

イメージの分析

モデルを使用してイメージを分析するには、DetectCustomLabels API を使用します。ローカルイメージ、または S3 バケットに保存されているイメージを指定できます。オペレーションには、使用するモデルの Amazon リソースネーム (ARN) も必要です。

モデルでオブジェクト、シーン、概念が見つかった場合、レスポンスにはイメージに含まれるイメージレベルのラベルのリストが含まれます。例えば、次のイメージは、Rooms サンプルプロジェクトで見つかったイメージレベルのラベルを示しています。

壁には、花火、褐色のソファー、肘掛け、コーヒーテーブル、景色のアートワークを備えたリビングルーム。ドアは屋外の空間につながります。

モデルがオブジェクトの位置を検出した場合、レスポンスにはイメージ内のラベル付き境界ボックスのリストが含まれます。境界ボックスは、イメージ上のオブジェクトの位置を表します。境界ボックスの情報を使用して、オブジェクトの周囲に境界ボックスを描画できます。例えば、次のイメージは、回路基板サンプルプロジェクトを使用して見つかった回路基板部品の周囲の境界ボックスを示しています。

調整用の IR LED、光変換器、および変分光器を備えた回路基板。

詳細については、「トレーニングされたモデルによるイメージの分析」を参照してください。

モデルの停止

モデルの稼働時間に応じて課金されます。モデルを使用しなくなった場合は、Amazon Rekognition Custom Labels コンソールまたは StopProjectVersion API を使用してモデルを停止します。詳細については、「Amazon Rekognition Custom Labels モデルの停止」を参照してください。

モデルの停止する (コンソール)

コンソールを使用して実行中のモデルを停止するには、「Amazon Rekognition Custom Labels モデルの停止 (コンソール)」を参照してください。

モデルの停止 (SDK)

実行中のモデルを停止するには、StopProjectバージョン を呼び出します。詳細については、「Amazon Rekognition Custom Labels モデル (SDK) の停止」を参照してください。