翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
画像の分類
このチュートリアルでは、イメージに含まれるオブジェクト、シーン、概念を分類するモデルのプロジェクトとデータセットを作成する方法を説明します。このモデルはイメージ全体を分類します。例えば、このチュートリアルに従うと、リビングルームやキッチンなどの家庭の場所を認識するようにモデルをトレーニングできます。このチュートリアルでは、モデルを使用してイメージを分析する方法も説明します。
このチュートリアルを開始する前に、「Amazon Rekognition Custom Labels について」を読むことをお勧めします。
このチュートリアルでは、ローカルコンピュータからイメージをアップロードして、トレーニングデータセットとテストデータセットを作成します。後で、トレーニングおよびテストデータセットのイメージに画像レベルのラベルを割り当てます。
作成したモデルでは、トレーニングデータセットのイメージに割り当てたイメージレベルのラベルセットに属するものとしてイメージを分類します。例えば、トレーニングデータセット内のイメージレベルのラベルのセットが、kitchen
、living_room
、patio
、および backyard
の場合、モデルは 1 つのイメージ内のそれらのイメージレベルのラベルをすべて検出できる可能性があります。
注記
イメージ上のオブジェクトの位置を調べるなど、さまざまな目的でモデルを作成できます。詳細については「モデルタイプの決定」を参照してください。
ステップ 1: イメージを集める
2 セットのイメージが必要です。1 セットはトレーニングデータセットに追加します。もう 1 つのセットはテストデータセットに追加します。イメージは、モデルが分類するオブジェクト、シーン、概念を表している必要があります。イメージは、PNG または JPEG 形式であることが必要です。詳細については「イメージの準備」を参照してください。
トレーニングデータセットには 10 枚以上、テストデータセットには 10 枚以上のイメージが必要です。
まだイメージがない場合は、[ルーム] サンプル分類プロジェクトのイメージを使用してください。プロジェクトを作成すると、トレーニングイメージとテストイメージは次の Amazon S3 バケットの場所に配置されます。
トレーニングイメージ -
s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_test_dataset/テストイメージ -
s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_test_dataset/
region
は、Amazon Rekognition Custom Labels コンソールを使用している AWS リージョンです。numbers
はコンソールがバケット名に割り当てる値です。Version number
は 1 から始まるサンプルプロジェクトのバージョン番号です。
以下の手順では、Rooms プロジェクトのイメージを、コンピュータ上の training
および test
という名前のローカルフォルダに保存します。
Rooms サンプルプロジェクトのイメージファイルをダウンロードするには
Rooms プロジェクトを作成します。詳細については「ステップ 1: プロジェクト例を選択する」を参照してください。
コマンドプロンプトを開き、次のコマンドを入力してトレーニングイメージをダウンロードします。
aws s3 cp s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_training_dataset/ training --recursiveコマンドプロンプトで、次のコマンドを入力してテストイメージをダウンロードします。
aws s3 cp s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_test_dataset/ test --recursive2 つのイメージをトレーニングフォルダから任意の別のフォルダに移動します。このイメージを使用して、トレーニングしたモデルを ステップ 9: モデルを使用してイメージを分析する で試してみます。
ステップ 2: クラスを決める
モデルで検索するクラスのリストを作成します。例えば、家の部屋を認識するようにモデルをトレーニングする場合、次のイメージを living_room
として分類できます。

各クラスはイメージレベルのラベルにマップされます。後で、トレーニングおよびテストデータセットのイメージに画像レベルのラベルを割り当てます。
Rooms サンプルプロジェクトのイメージを使用している場合、イメージレベルのラベルは、裏庭、浴室、寝室、クローゼット、entry_way、floor_plan、front_yard、kitchen、living_space、および パティオです。
ステップ 3: プロジェクトを作成する
データセットとモデルを管理するには、プロジェクトを作成します。プロジェクトごとに、家の中の部屋を認識するなど、単一のユースケースに対応する必要があります。
プロジェクトを作成するには (コンソール)
まだ追加していない場合には、Amazon Rekognition Custom Labels コンソールを設定します。詳細については「Amazon Rekognition Custom Labels のセットアップ」を参照してください。
AWS Management Console にサインインし、https://console.aws.amazon.com/rekognition/
で Amazon Rekognition コンソールを開きます。 左側のペインで、[カスタムラベルを使用] を選択します。Amazon Rekognition Custom Labels のランディングページが表示されます。
Amazon Rekognition Custom Labels のランディングページで、[開始方法] を選択します。
左側のナビゲーションペインで、[プロジェクト] を選択します。
[プロジェクト] ページで、[プロジェクトを作成] を選択します。
[プロジェクト名] にプロジェクトの名前を入力します。
[プロジェクトを作成] を選択してプロジェクトを作成します。
ステップ 4: トレーニングデータセットおよびテストデータセットを作成する
このステップでは、ローカルコンピュータからイメージをアップロードして、トレーニングデータセットとテストデータセットを作成します。同時にアップロードできるイメージは、30 枚までです。アップロードするイメージがたくさんある場合は、Amazon S3 バケットからイメージをインポートしてデータセットを作成することを検討してください。詳細については「Amazon S3 バケットからの画像のインポート」を参照してください。
データセットの詳細については、「データセットの管理」を参照してください。
ローカルコンピュータ上の画像を使用してデータセットを作成するには (コンソール)
-
プロジェクトの詳細ページで、データセットを作成] を選択します。
-
[設定の開始] セクションで、[トレーニングデータセットとテストデータセットで開始する] を選択します。
[トレーニングデータセット詳細] セクションで、[コンピュータから画像をアップロード] を選択します。
-
[テストデータセット詳細] セクションで、[コンピュータから画像をアップロード] を選択します。
[データセットを作成] を選択します。
データセットページが表示され、それぞれのデータセットの[トレーニング] タブと[テスト] タブが表示されます。
[データセット] ページで [トレーニング] タブを選択します。
[アクション] を選択し、[トレーニングデータセットに画像を追加] をクリックします。
[トレーニングデータセットに画像を追加] ダイアログボックスで、[ファイルを選択] を選択します。
データセットにアップロードする画像を選択します。同時にアップロードできるイメージは、30 枚までです。
[画像をアップロード] を選択します。Amazon Rekognition Custom Labels がデータセットにイメージを追加するまでに数秒かかることがあります。
トレーニングデータセットに追加するイメージが他にもある場合は、ステップ 9~12 を繰り返します。
[テスト] タブを選択します。
-
ステップ 8~12 を繰り返して、テストデータセットにイメージを追加します。ステップ 8 で、[アクション] を選択します。[テストデータセットに画像を追加] をクリックします。
ステップ 5: ラベルをプロジェクトに追加する
このステップでは、ステップ ステップ 2: クラスを決める で特定した各クラスのラベルをプロジェクトに追加します。
新しいラベルを追加するには (コンソール)
データセットギャラリーページで、[ラベル付けを開始] を選択してラベル付けモードに入ります。
データセットギャラリーの [ラベル] セクションで、[ラベルを編集] を選択し、[ラベルを管理] ダイアログボックスを開きます。
編集ボックスに新しいラベル名を入力します。
[新しいラベルを追加] を選択します。
必要なラベルがすべて作成されるまで、ステップ 3 と 4 を繰り返します。
[保存] を選択して、追加したラベルを保存します。
ステップ 6: トレーニングデータセットとテストデータセットに画像レベルのラベルを割り当てる
このステップでは、トレーニングデータセットとテストデータセットの各イメージに 1 つのイメージレベルを割り当てます。イメージレベルのラベルは、各イメージが表すクラスです。
画像レベルのラベルを画像に割り当てるには (コンソール)
[データセット] ページで [トレーニング] タブを選択します。
[ラベル付けを開始] を選択してラベル付けモードに入ります。
ラベルを追加するイメージを 1 つ以上選択します。一度に選択できるのは 1 ページのイメージのみです。1 ページの連続した範囲のイメージを選択するには
最初のイメージを選択します。
Shift キーを押したままにします。
2 つ目のイメージを選択します。最初のイメージと 2 番目のイメージ間のイメージも選択されます。
Shift キーを放します。
[画像レベルのラベルを割り当てる] を選択します。
[画像レベルのラベルを選択した画像に割り当てる] ダイアログボックスで、1 つ以上のイメージに割り当てるラベルを選択します。
[割り当てる] を選択して、イメージにラベルを割り当てます。
すべてのイメージに必要なラベルが付けられるまで、ラベル付けを繰り返します。
[テスト] タブを選択します。
ステップを繰り返して、テストデータセットのイメージにイメージレベルのラベルを割り当てます。
ステップ 7: モデルのトレーニング
以下のステップに従って、モデルをトレーニングします。詳細については「Amazon Rekognition Custom Labels モデルをトレーニングする」を参照してください。
モデルをトレーニングするには (コンソール)
[データセット] ページで [モデルをトレーニング] を選択します。
[モデルをトレーニング] ページで、[モデルをトレーニング] を選択します。プロジェクトの Amazon リソースネーム (ARN) は、[プロジェクトを選択] 編集ボックスにあります。
In the Do you want to train your model? dialog box, choose Train model.
プロジェクトページの [モデル] セクションには、トレーニングが進行中であることが表示されます。モデルバージョンの
Model Status
列を表示して、現在のステータスを確認できます。モデルのトレーニングは、完了までに時間がかかります。トレーニングが完了したら、モデル名を選択します。モデルのステータスが [TRAINING_COMPLETED] になったらトレーニングは終了します。
[評価] ボタンを選択すると、評価結果が表示されます。モデルの評価の詳細については、「トレーニング済み Amazon Rekognition Custom Labels の改善」を参照してください。
[テスト結果を表示] を選択すると、個々のテストイメージの結果が表示されます。詳細については「モデルを評価するためのメトリクス」を参照してください。
テスト結果を確認したら、モデル名を選択してモデルページに戻ります。
ステップ 8: モデルをスタートする
このステップではモデルを開始します。モデルの開始後、モデルを使用してイメージを分析できます。
モデルの稼働時間に応じて課金されます。イメージを分析する必要がない場合は、モデルを停止してください。モデルは後で再起動できます。詳細については「トレーニング済み Amazon Rekognition Custom Labels の実行」を参照してください。
モデルを開始するには
モデルページで [モデルを使用] タブを選択します。
[モデルの開始または停止] セクションで、次の操作を行います。
[開始] を選択します。
[モデルを開始] ダイアログボックスで、[開始] を選択します。
モデルが実行されるまで待ちます。[モデルの開始または停止] セクションのステータスが [実行中] の場合、モデルは実行中です。
ステップ 9: モデルを使用してイメージを分析する
イメージを分析するには、DetectCustomLabels API を呼び出します。このステップでは、detect-custom-labels
AWS Command Line Interface (AWS CLI) コマンドを使用してサンプルイメージを分析します。AWS CLI コマンドは Amazon Rekognition Custom Labels コンソールから取得します。コンソールはモデルを使用するように AWS CLI コマンドを設定します。Amazon S3 バケットに保存されているイメージを指定するだけです。
注記
コンソールには Python サンプルコードも用意されています。
detect-custom-labels
からの出力には、イメージ内のラベルのリスト、境界ボックス (モデルがオブジェクトの位置を検出した場合)、予測の精度に対するモデルの信頼度が含まれます。
詳細については「トレーニングされたモデルによるイメージの分析」を参照してください。
イメージを分析するには (コンソール)
-
まだセットアップしていない場合は、AWS CLI をセットアップしてください。手順については、ステップ 4: AWS CLI と AWS SDKsを設定する を参照してください。
-
[モデルを使用] タブを選択し、[API コード] を選択します。
[AWS CLI コマンド] を選択します。
-
[画像を分析する] セクションで、
detect-custom-labels
を呼び出す AWS CLI コマンドをコピーします。 -
Amazon S3 バケットにイメージをアップロードします。手順については、Amazon Simple Storage Service ユーザーガイドの「Amazon S3 へのオブジェクトのアップロード」を参照してください。Rooms プロジェクトのイメージを使用している場合は、ステップ 1: イメージを集める 内の別のフォルダに移動したイメージの 1 つを使用してください。
-
コマンドプロンプトで、前のステップでコピーした AWS CLI コマンドを入力します。次の例のようになります。
--project-version-arn
の値は、モデルの Amazon リソースネーム (ARN) になるはずです。--region
の値は、モデルを作成した AWS リージョンであるはずです。MY_BUCKET
とPATH_TO_MY_IMAGE
を前のステップで使用した Amazon S3 バケットとイメージに変更します。custom-labels-access プロファイルを使用して認証情報を取得する場合は、
--profile custom-labels-access
パラメータを追加します。aws rekognition detect-custom-labels \ --project-version-arn "
model_arn
" \ --image '{"S3Object": {"Bucket": "MY_BUCKET
","Name": "PATH_TO_MY_IMAGE
"}}' \ --regionus-east-1
\ --profile custom-labels-accessAWS CLI コマンドの JSON 出力は次のようになります。
Name
はモデルが見つけたイメージレベルのラベルの名前です。Confidence
(0-100) は予測の精度に対するモデルの信頼度です。{ "CustomLabels": [ { "Name": "living_space", "Confidence": 83.41299819946289 } ] }
-
引き続きモデルを使用して他のイメージを分析してください。使用しなくなったモデルは停止してください。
ステップ 10: モデルを停止する
このステップではモデルの実行を停止します。モデルの稼働時間に応じて課金されます。モデルの使用を終了した場合は、停止する必要があります。
モデルを停止するには
-
[モデルの開始または停止] セクションで、[停止] を選択します。
-
[モデルを停止] ダイアログボックスで、[停止] と入力し、モデルを停止することを確認します。
-
[停止] を選択してモデルを停止します。[モデルの開始または停止] セクションのステータスが [停止済み] になると、モデルは停止します。