

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

# ラベルイメージ
<a name="sms-label-images"></a>

Ground Truth を使用してイメージにラベル付けします。次の組み込みタスクタイプのいずれかを選択して、そのタスクタイプの詳細を確認します。各ページには、そのタスクタイプを使用してラベル付けジョブを作成する手順が記載されています。

**ヒント**  
サポートされているファイルタイプと入力データクォータの詳細については、「[入力データ](sms-data-input.md)」を参照してください。

**Topics**
+ [境界ボックスを使用してイメージオブジェクトを分類する](sms-bounding-box.md)
+ [セマンティックセグメンテーションを使用して画像コンテンツを識別する](sms-semantic-segmentation.md)
+ [自動セグメンテーションツール](sms-auto-segmentation.md)
+ [イメージ分類ジョブを作成する (単一ラベル)](sms-image-classification.md)
+ [イメージ分類ジョブを作成する (マルチラベル)](sms-image-classification-multilabel.md)
+ [イメージラベルの検証](sms-label-verification.md)

# 境界ボックスを使用してイメージオブジェクトを分類する
<a name="sms-bounding-box"></a>

通常、機械学習モデルのトレーニングに使用するイメージ内には複数のオブジェクトがあります。イメージ内の 1 つ以上のオブジェクトを分類およびローカライズするには、タスクタイプとして Amazon SageMaker Ground Truth 境界ボックスのラベル付けジョブを使用します。ここでのローカライズとは、境界ボックスのピクセル位置を意味します。境界ボックスラベル付けジョブを作成するには、Amazon SageMaker AI コンソールの Ground Truth セクションまたは [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) オペレーションを使用します。

**重要**  
このタスクタイプでは、独自のマニフェストファイルを作成する場合、`"source-ref"` を使用して、ラベル付けする Amazon S3 内の各イメージファイルの場所を特定します。詳細については、「[入力データ](sms-data-input.md)」を参照してください。

## 境界ボックスラベル付けジョブの作成 (コンソール)
<a name="sms-creating-bounding-box-labeling-job-console"></a>

SageMaker AI コンソールで境界ボックスラベルリングジョブを作成する方法については、「[ラベル付けジョブの作成 (コンソール)](sms-create-labeling-job-console.md)」で手順を説明しています。ステップ 10 で、**[Task category]** (タスクカテゴリ) ドロップダウンメニューから **[Image]** (イメージ) を選択し、**[Boundary box]** (境界ボックス) タスクタイプを選択します。

Ground Truth には、ラベル付けタスク用の次のようなワーカー UI が用意されています。コンソールでラベル付けジョブを作成するときは、ワーカーがジョブを実行できる手順と、ワーカーが選択できるラベルを最大 50 個指定します。

![\[カテゴリのオブジェクトの周りにボックスを描画する画面の GIF。\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/sms/gifs/bb-sample.gif)


## 境界ボックスラベル付けジョブの作成 (API)
<a name="sms-creating-bounding-box-labeling-job-api"></a>

境界ボックスラベル付けジョブを作成するには、SageMaker API オペレーション `CreateLabelingJob` を使用します。この API は、すべての AWS SDKsに対してこのオペレーションを定義します。このオペレーションでサポートされている言語固有の SDK のリストを確認するには、[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) の「**以下の資料も参照してください**」セクションを確認してください。

リクエストを設定する際には、「[ラベル付けジョブを作成 (API)](sms-create-labeling-job-api.md)」の指示に従ったうえで、以下のことを実行してください。
+ このタスクタイプの注釈前 Lambda 関数は `PRE-BoundingBox` で終わります。リージョンの注釈前 Lambda ARN を検索するには、「[PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn)」 を参照してください。
+ このタスクタイプの注釈統合 Lambda 関数は `ACS-BoundingBox` で終わります。リージョンの注釈統合 Lambda ARN を確認するには、「[AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn)」を参照してください。

以下は、米国東部 (バージニア北部) リージョンでラベル付けジョブを作成する [AWS Python SDK (Boto3) リクエスト](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job)の例です。赤色のすべてのパラメータを仕様とリソースに置き換えます。

```
response = client.create_labeling_job(
    LabelingJobName='example-bounding-box-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-BoundingBox',
        'TaskKeywords': [
            'Bounding Box',
        ],
        'TaskTitle': 'Bounding Box task',
        'TaskDescription': 'Draw bounding boxes around objects in an image',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-BoundingBox'
          }
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### 境界ボックスラベル付けジョブのテンプレートの提供
<a name="sms-create-labeling-job-bounding-box-api-template"></a>

API を使用してラベル付けジョブを作成する場合は、`UiTemplateS3Uri` でワーカータスクテンプレートを指定する必要があります。次のテンプレートをコピーして変更します。[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions)、[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions)、`header` のみ変更します。このテンプレートを S3 にアップロードし、このファイルの S3 URI を `UiTemplateS3Uri` で指定します。

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-bounding-box
    name="boundingBox"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="please draw box"
    labels="{{ task.input.labels | to_json | escape }}"
  >

    <full-instructions header="Bounding box instructions">
      <ol><li><strong>Inspect</strong> the image</li><li><strong>Determine</strong> 
      if the specified label is/are visible in the picture.</li>
      <li><strong>Outline</strong> each instance of the specified label in the image using the provided “Box” tool.</li></ol>
      <ul><li>Boxes should fit tight around each object</li>
      <li>Do not include parts of the object are overlapping or that cannot be seen, even though you think you can interpolate the whole shape.</li>
      <li>Avoid including shadows.</li>
      <li>If the target is off screen, draw the box up to the edge of the image.</li>    
    </full-instructions>
  
    <short-instructions>
      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
      <p>Enter description of a correct bounding box label and add images</p>
      <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3>
      <p>Enter description of an incorrect bounding box label and add images</p>
    </short-instructions>
  
  </crowd-bounding-box>
</crowd-form>
```

## 境界ボックス出力データ
<a name="sms-bounding-box-output-data"></a>

境界ボックスラベル付けジョブを作成すると、出力データは、APIを使用するときに `S3OutputPath` パラメータで指定された Amazon S3 バケット、またはコンソールの **[Job overview]** (ジョブの概要) セクションの **[Output dataset location]** (出力データセットの場所) フィールドに配置されます。

例えば、正常に完了した単一クラスの境界ボックスタスクの出力マニフェストファイルには、次のものが含まれます。

```
[
  {
    "boundingBox": {
      "boundingBoxes": [
        {
          "height": 2832,
          "label": "bird",
          "left": 681,
          "top": 599,
          "width": 1364
        }
      ],
      "inputImageProperties": {
        "height": 3726,
        "width": 2662
      }
    }
  }
]
```

`boundingBoxes` パラメータは、「bird」として識別されたオブジェクトを囲むように描画した境界ボックスの位置を特定します。これは、イメージの左上隅のピクセル座標 (0,0) を基準とした相対位置です。前の例で、**`left`** と **`top`** は、イメージの左上隅を基準とした、境界ボックスの左上隅のピクセル位置を特定します。境界ボックスのサイズは、**`height`** と **`width`** で特定します。`inputImageProperties` パラメータは、元の入力イメージのピクセルサイズを指定します。

境界ボックスタスクタイプを使用すると、単一クラスおよびマルチクラスの境界ボックスラベル付けジョブを作成できます。正常に完了したマルチクラス境界ボックスの出力マニフェストファイルには、次のものが含まれます。

```
[
  {
    "boundingBox": {
      "boundingBoxes": [
        {
          "height": 938,
          "label": "squirrel",
          "left": 316,
          "top": 218,
          "width": 785
        },
        {
          "height": 825,
          "label": "rabbit",
          "left": 1930,
          "top": 2265,
          "width": 540
        },
        {
          "height": 1174,
          "label": "bird",
          "left": 748,
          "top": 2113,
          "width": 927
        },
        {
          "height": 893,
          "label": "bird",
          "left": 1333,
          "top": 847,
          "width": 736
        }
      ],
      "inputImageProperties": {
        "height": 3726,
        "width": 2662
      }
    }
  }
]
```

境界ボックスのラベル付けジョブによって生成される出力マニフェストファイルの詳細については、「[境界ボックスジョブの出力](sms-data-output.md#sms-output-box)」を参照してください。

Ground Truth によって生成される出力マニフェストファイルと、Ground Truth が出力データを保存するために使用するファイル構造の詳細については、「[ラベル付けジョブの出力データ](sms-data-output.md)」を参照してください。

# セマンティックセグメンテーションを使用して画像コンテンツを識別する
<a name="sms-semantic-segmentation"></a>

ピクセルレベルでイメージの内容を識別するには、Amazon SageMaker Ground Truth セマンティックセグメンテーションのラベル付けタスクを使用します。セマンティックセグメンテーションのラベル付けジョブが指定されると、ワーカーはイメージ内のピクセルを定義済みのラベルまたはクラスのセットに分類します。Ground Truth は、単一および複数クラスのセマンティックセグメンテーションのラベル付けジョブをサポートします。Amazon SageMaker AI コンソールの Ground Truth セクションまたは [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) オペレーションを使用して、セマンティックセグメンテーションラベル付けジョブを作成します。

セグメント化する必要のある多数のオブジェクトを含むイメージでは、セグメント化にさらに時間がかかります。ワーカー (自社またはベンダーのスタッフ) がこれらのオブジェクトにより短時間、高精度でラベル付けできるように、Ground Truth には AI 支援の自動セグメンテーションツールが用意されています。詳細については、「[自動セグメンテーションツール](sms-auto-segmentation.md)」を参照してください。

**重要**  
このタスクタイプでは、独自のマニフェストファイルを作成する場合、`"source-ref"` を使用して、ラベル付けする Amazon S3 内の各イメージファイルの場所を特定します。詳細については、「[入力データ](sms-data-input.md)」を参照してください。

## セマンティックセグメンテーションラベル付けジョブを作成する (コンソール)
<a name="sms-creating-ss-labeling-job-console"></a>

SageMaker AI コンソールで セマンティックセグメンテーションラベル付けジョブを作成する方法については、「[ラベル付けジョブの作成 (コンソール)](sms-create-labeling-job-console.md)」の指示に従います。ステップ 10 で、**[Task category]** (タスクカテゴリ) ドロップダウンメニューから **[Image]** (イメージ) を選択し、**[Semantic segmentation]** (セマンティックセグメンテーション) タスクタイプを選択します。

Ground Truth には、ラベル付けタスク用の次のようなワーカー UI が用意されています。コンソールでラベル付けジョブを作成するときは、ワーカーがジョブを実行できる手順と、ワーカーが選択できるラベルを指定します。

![\[SageMaker AI コンソールでセマンティックセグメンテーションラベル付けジョブを作成する方法の例を示す GIF。\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/semantic_segmentation_sample.gif)


## セマンティックセグメンテーションラベル付けジョブを作成する (API)
<a name="sms-creating-ss-labeling-job-api"></a>

セマンティックセグメンテーションラベル付けジョブを作成するには、SageMaker API オペレーション `CreateLabelingJob` を使用します。この API は、すべての AWS SDKsに対してこのオペレーションを定義します。このオペレーションでサポートされている言語固有の SDK のリストを確認するには、[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) の「**以下の資料も参照してください**」セクションを確認してください。

リクエストを設定する際には、「[ラベル付けジョブを作成 (API)](sms-create-labeling-job-api.md)」の指示に従ったうえで、以下のことを実行してください。
+ このタスクタイプの注釈前 Lambda 関数は `PRE-SemanticSegmentation` で終わります。リージョンの注釈前 Lambda ARN を検索するには、「[PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn)」 を参照してください。
+ このタスクタイプの注釈統合 Lambda 関数は `ACS-SemanticSegmentation` で終わります。リージョンの注釈統合 Lambda ARN を確認するには、「[AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn)」を参照してください。

以下は、米国東部 (バージニア北部) リージョンでラベル付けジョブを作成する [AWS Python SDK (Boto3) リクエスト](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job)の例です。赤色のすべてのパラメータを仕様とリソースに置き換えます。

```
response = client.create_labeling_job(
    LabelingJobName='example-semantic-segmentation-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-SemanticSegmentation,
        'TaskKeywords': [
            'Semantic Segmentation',
        ],
        'TaskTitle': 'Semantic segmentation task',
        'TaskDescription': 'For each category provided, segment out each relevant object using the color associated with that category',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-SemanticSegmentation'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### セマンティックセグメンテーションラベル付けジョブのテンプレートの提供
<a name="sms-create-labeling-job-ss-api-template"></a>

API を使用してラベル付けジョブを作成する場合は、`UiTemplateS3Uri` でワーカータスクテンプレートを指定する必要があります。次のテンプレートをコピーして変更します。[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions)、[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions)、`header` のみ変更します。

このテンプレートを S3 にアップロードし、このファイルの S3 URI を `UiTemplateS3Uri` で指定します。

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-semantic-segmentation
    name="crowd-semantic-segmentation"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Please segment out all pedestrians."
    labels="{{ task.input.labels | to_json | escape }}"
  >
    <full-instructions header="Segmentation instructions">
      <ol><li><strong>Read</strong> the task carefully and inspect the image.</li>
      <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
      <li><strong>Choose</strong> the appropriate label that best suits an object and paint that object using the tools provided.</li></ol>
    </full-instructions>
    <short-instructions>
      <h2><span style="color: rgb(0, 138, 0);">Good example</span></h2>
      <p>Enter description to explain a correctly done segmentation</p>
      <p><br></p><h2><span style="color: rgb(230, 0, 0);">Bad example</span></h2>
      <p>Enter description of an incorrectly done segmentation</p>
    </short-instructions>
  </crowd-semantic-segmentation>
</crowd-form>
```

## セマンティックセグメンテーション出力データ
<a name="sms-ss-ouput-data"></a>

セマンティックセグメンテーションを作成すると、出力データは、APIを使用するときに `S3OutputPath` パラメータで指定された Amazon S3 バケット、またはコンソールの **[Job overview]** (ジョブの概要)セクションの **[Output dataset location]** (出力データセットの場所) フィールドに配置されます。

Ground Truth によって生成される出力マニフェストファイルと、Ground Truth が出力データを保存するために使用するファイル構造の詳細については、「[ラベル付けジョブの出力データ](sms-data-output.md)」を参照してください。

セマンティックセグメンテーションラベル付けジョブの出力マニフェストファイルの例については、「[3D 点群セマンティックセグメンテーションの出力](sms-data-output.md#sms-output-point-cloud-segmentation)」を参照してください。

# 自動セグメンテーションツール
<a name="sms-auto-segmentation"></a>

イメージのセグメンテーションは、イメージを複数のセグメント、またはラベル付きピクセルのセットに分割するプロセスです。Amazon SageMaker Ground Truth では、特定のラベルに該当するすべてのピクセルを識別するプロセスに、それらのピクセルへの色付きフィラーつまり「マスク」の適用が含まれます。一部のラベル付けジョブタスクには、セグメント化する必要のある多数のオブジェクトからなるイメージが含まれます。ワーカーがより短時間で正確にこれらのオブジェクトにラベル付けできるように、Ground Truth には、プライベートワークフォースとベンダーワークフォースに割り当てられるセグメンテーションタスク向けに自動セグメンテーションツールが用意されています。このツールでは、機械学習モデルを使用して、ワーカーからの最小限の入力により、イメージ内の個々のオブジェクトが自動的にセグメント化されます。ワーカーは、ワーカーコンソールにあるその他のツールを使用して、自動セグメンテーションツールによって生成されたマスクを絞り込むことができます。これにより、ワーカーはイメージセグメンテーションタスクをより迅速かつ正確に完了することができ、その結果、コストが削減され、ラベル品質が向上します。次のページでは、ツールとその使用について説明します。

**注記**  
自動セグメンテーションツールは、プライベートワークフォースまたはベンダーワークフォースに送信されるセグメンテーションタスクに使用できます。パブリックワークフォース (Amazon Mechanical Turk) に送信されるタスクには使用できません。

## ツールのプレビュー
<a name="sms-auto-segment-tool-preview"></a>

自動セグメンテーションツールを提供するラベル付けジョブがワーカーに割り当てられると、ツールの使用方法に関する詳細な手順が表示されます。例えば、ワーカーコンソールには以下のように表示されます。

![\[ワーカーコンソールでのツール使用方法の説明が付いた UI の例。\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/sms/gifs/semantic-segmentation.gif)


ワーカーは **[View full instructions]** (手順をすべて表示) を使用して、ツールの使用方法を理解できます。ワーカーは目的のオブジェクトの 4 つの端点 (最上部、最下部、左端、右端のポイント) にポイントを配置する必要があり、ツールによってオブジェクトのマスクが自動的に生成されます。ワーカーは、提供されるその他のツールを使用するか、またはオブジェクトの処理されなかった小さい部分に対して自動セグメンテーションツールを使用して、マスクをさらに絞り込むことができます。

## 利用可能なツール
<a name="sms-auto-segment-tool-availability"></a>

Amazon SageMaker AI コンソールを使用してセマンティックセグメンテーションラベル付けジョブを作成する場合、自動セグメンテーションツールがワーカーのコンソールに自動的に表示されます。SageMaker AI コンソールでセマンティックセグメンテーションジョブを作成している間、ワーカーの手順を作成しながらツールをプレビューできます。SageMaker AI コンソールでセマンティックセグメンテーションラベル付けジョブを作成する方法については、「[開始方法: Ground Truth を使用して境界ボックスラベル付けジョブを作成する](sms-getting-started.md)」を参照してください。

SageMaker AI コンソールでカスタムインスタンスセグメンテーションラベル付けジョブを作成する場合や、Ground Truth API を使用してインスタンスまたはセマンティックセグメンテーションラベル付けジョブを作成する場合は、ワーカーのコンソールと手順を設計するためのカスタムタスクテンプレートを作成する必要があります。ワーカーコンソールに自動セグメンテーションツールを含めるには、カスタムタスクテンプレートで以下の条件が満たされていることを確認します。
+ API を使用して作成されたセマンティックセグメンテーションラベル付けジョブの場合、`<crowd-semantic-segmentation>` がタスクテンプレートにある。カスタムインスタンスセグメンテーションラベル付けジョブの場合、`<crowd-instance-segmentation>` タグがタスクテンプレートにある。
+ タスクがプライベートワークフォースまたはベンダーワークフォースに割り当てられている。
+ ラベルを付けるイメージは、ワーカーがアクセスできるように事前に署名されたAmazon Simple Storage Service (Amazon S3) オブジェクトである。これは、タスクテンプレートに `grant_read_access` フィルターが含まれている場合に当てはまります。`grant_read_access` フィルターの詳細については、「[Liquid を使用してオートメーションを追加する](sms-custom-templates-step2-automate.md)」を参照してください。

以下に示しているのは、カスタムインスタンスセグメンテーションラベル付けジョブのカスタムタスクテンプレートの例です。このテンプレートには、`<crowd-instance-segmentation/>` タグと `grant_read_access` Liquid フィルターが含まれています。

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-instance-segmentation
    name="crowd-instance-segmentation"
    src="{{ task.input.taskObject | grant_read_access }}"
    labels="['Car','Road']"
   <full-instructions header="Segmentation instructions">
      Segment each instance of each class of objects in the image. 
    </full-instructions>

    <short-instructions>
      <p>Segment each instance of each class of objects in the image.</p>

      <h3 style="color: green">GOOD EXAMPLES</h3>
      <img src="path/to/image.jpg" style="width: 100%">
      <p>Good because A, B, C.</p>

      <h3 style="color: red">BAD EXAMPLES</h3>
      <img src="path/to/image.jpg" style="width: 100%">
      <p>Bad because X, Y, Z.</p>
    </short-instructions>
  </crowd-instance-segmentation>
</crowd-form>
```

# イメージ分類ジョブを作成する (単一ラベル)
<a name="sms-image-classification"></a>

指定した定義済みのラベルを使用してワーカーがイメージを分類する必要がある場合は、Amazon SageMaker Ground Truth イメージ分類のラベル付けタスクを使用します。ワーカーにはイメージが表示され、イメージごとに 1 つのラベルを選択するように求められます。イメージ分類ラベル付けジョブを作成するには、Amazon SageMaker AI コンソールの Ground Truth セクションまたは [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) オペレーションを使用します。

**重要**  
このタスクタイプでは、独自のマニフェストファイルを作成する場合、`"source-ref"` を使用して、ラベル付けする Amazon S3 内の各イメージファイルの場所を特定します。詳細については、「[入力データ](sms-data-input.md)」を参照してください。

## イメージ分類ラベル付けジョブを作成する (コンソール)
<a name="sms-creating-image-classification-console"></a>

SageMaker AI コンソールでイメージ分類ラベルリングジョブを作成する方法については、「[ラベル付けジョブの作成 (コンソール)](sms-create-labeling-job-console.md)」で手順を説明しています。ステップ 10 で、**[Task category]** (タスクカテゴリ) ドロップダウンメニューから **[Image]** (イメージ) を選択し、**[Image Classification]** (イメージ分類 (単一ラベル)) タスクタイプを指定します。

Ground Truth には、ラベル付けタスク用の次のようなワーカー UI が用意されています。コンソールでラベル付けジョブを作成するときは、ワーカーがジョブを実行できる手順と、ワーカーが選択できるラベルを指定します。

![\[Ground Truth のラベル付けタスクのワーカー UI の例。\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/image-classification-example.png)


## イメージ分類ラベル付けジョブを作成する (API)
<a name="sms-creating-image-classification-api"></a>

イメージ分類ラベル付けジョブを作成するには、SageMaker API オペレーション `CreateLabelingJob` を使用します。この API は、すべての AWS SDKsに対してこのオペレーションを定義します。このオペレーションでサポートされている言語固有の SDK のリストを確認するには、[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) の「**以下の資料も参照してください**」セクションを確認してください。

リクエストを設定する際には、「[ラベル付けジョブを作成 (API)](sms-create-labeling-job-api.md)」の指示に従ったうえで、以下のことを実行してください。
+ このタスクタイプの注釈前 Lambda 関数は `PRE-ImageMultiClass` で終わります。リージョンの注釈前 Lambda ARN を検索するには、「[PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn)」 を参照してください。
+ このタスクタイプの注釈統合 Lambda 関数は `ACS-ImageMultiClass` で終わります。リージョンの注釈統合 Lambda ARN を確認するには、「[AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn)」を参照してください。

以下は、米国東部 (バージニア北部) リージョンでラベル付けジョブを作成する [AWS Python SDK (Boto3) リクエスト](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job)の例です。赤色のすべてのパラメータを仕様とリソースに置き換えます。

```
response = client.create_labeling_job(
    LabelingJobName='example-image-classification-labeling-job',
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-ImageMultiClass,
        'TaskKeywords': [
            Image classification',
        ],
        'TaskTitle': Image classification task',
        'TaskDescription': 'Carefully inspect the image and classify it by selecting one label from the categories provided.',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-ImageMultiClass'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### イメージ分類ラベル付けジョブ用のテンプレートの提供
<a name="worker-template-image-classification"></a>

API を使用してラベル付けジョブを作成する場合は、`UiTemplateS3Uri` でワーカータスクテンプレートを指定する必要があります。次のテンプレートをコピーして変更します。[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions)、[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions)、`header` のみ変更します。

このテンプレートを S3 にアップロードし、このファイルの S3 URI を `UiTemplateS3Uri` で指定します。

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-image-classifier
    name="crowd-image-classifier"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="please classify"
    categories="{{ task.input.labels | to_json | escape }}"
  >
    <full-instructions header="Image classification instructions">
      <ol><li><strong>Read</strong> the task carefully and inspect the image.</li>
      <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
      <li><strong>Choose</strong> the appropriate label that best suits the image.</li></ol>
    </full-instructions>
    <short-instructions>
      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
      <p>Enter description to explain the correct label to the workers</p>
      <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3><p>Enter description of an incorrect label</p>
    </short-instructions>
  </crowd-image-classifier>
</crowd-form>
```

## イメージ分類出力データ
<a name="sms-image-classification-output-data"></a>

イメージ分類ラベル付けジョブを作成すると、出力データは、APIを使用するときに `S3OutputPath` パラメータで指定された Amazon S3 バケット、またはコンソールの **[Job overview]** (ジョブの概要)セクションの **[Output dataset location]** (出力データセットの場所) フィールドに配置されます。

Ground Truth によって生成される出力マニフェストファイルと、Ground Truth が出力データを保存するために使用するファイル構造の詳細については、「[ラベル付けジョブの出力データ](sms-data-output.md)」を参照してください。

イメージ分類ラベル付けジョブの出力マニフェストファイルの例については、「[分類ジョブの出力](sms-data-output.md#sms-output-class)」を参照してください。

# イメージ分類ジョブを作成する (マルチラベル)
<a name="sms-image-classification-multilabel"></a>

ワーカーがイメージ内の複数のオブジェクトを分類する必要がある場合は、Amazon SageMaker Ground Truth マルチラベルのイメージ分類ラベル付けタスクを使用します。例えば、次のイメージは、犬と猫を示しています。マルチラベルイメージ分類を使用して、「dog」と「cat」というラベルをこのイメージに関連付けることができます。次のページでは、イメージ分類ジョブの作成について説明します。

![\[Unsplash の Anusha Barwa による写真\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/dog-cat-photo.jpg)


マルチラベルのイメージ分類タスクで作業する場合、ワーカーは適用可能なすべてのラベルを選択するべきですが、少なくとも 1 つは必ず選択する必要があります。このタスクタイプを使用してジョブを作成する場合、最大 50 のラベルカテゴリを指定できます。

コンソールでラベル付けジョブを作成する場合、Ground Truth には、どのラベルもイメージに適用されない場合のための「none」カテゴリがありません。このオプションをワーカーに提供するには、マルチラベルのイメージ分類ジョブを作成するときに「none」または「other」に似たラベルを含めます。

各イメージに対して 1 つのラベルを選択するようにワーカーを制限するには、[イメージ分類ジョブを作成する (単一ラベル)](sms-image-classification.md) タスクタイプを使用します。

**重要**  
このタスクタイプでは、独自のマニフェストファイルを作成する場合、`"source-ref"` を使用して、ラベル付けする Amazon S3 内の各イメージファイルの場所を特定します。詳細については、「[入力データ](sms-data-input.md)」を参照してください。

## マルチラベルのイメージ分類ラベル付けジョブを作成する (コンソール)
<a name="sms-creating-multilabel-image-classification-console"></a>

SageMaker AI コンソールでマルチラベルのイメージ分類ラベル付けジョブを作成する方法については、「[ラベル付けジョブの作成 (コンソール)](sms-create-labeling-job-console.md)」で手順を説明しています。ステップ 10 で、**[Task category]** (タスクカテゴリ) ドロップダウンメニューから **[Image]** (イメージ) を選択し、**[Image Classification]** (イメージ分類 (マルチラベル)) タスクタイプを指定します。

Ground Truth には、ラベル付けタスク用の次のようなワーカー UI が用意されています。コンソールでラベル付けジョブを作成するときは、ワーカーがジョブを実行できる手順と、ワーカーが選択できるラベルを指定します。

![\[Ground Truth のラベル付けタスクのワーカー UI の例。\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/image-classification-multilabel-example.png)


## マルチラベルのイメージ分類ラベル付けジョブ (API) を作成する
<a name="sms-create-multi-select-image-classification-job-api"></a>

マルチラベルのイメージ分類ラベル付けジョブを作成するには、SageMaker API オペレーション `CreateLabelingJob` を使用します。この API は、すべての AWS SDKsに対してこのオペレーションを定義します。このオペレーションでサポートされている言語固有の SDK のリストを確認するには、[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) の「**以下の資料も参照してください**」セクションを確認してください。

リクエストを設定する際には、「[ラベル付けジョブを作成 (API)](sms-create-labeling-job-api.md)」の指示に従ったうえで、以下のことを実行してください。
+ このタスクタイプの注釈前 Lambda 関数は `PRE-ImageMultiClassMultiLabel` で終わります。リージョンの注釈前 Lambda ARN を検索するには、「[PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn)」 を参照してください。
+ このタスクタイプの注釈統合 Lambda 関数は `ACS-ImageMultiClassMultiLabel` で終わります。リージョンの注釈統合 Lambda ARN を確認するには、「[AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn)」を参照してください。

以下は、米国東部 (バージニア北部) リージョンでラベル付けジョブを作成する [AWS Python SDK (Boto3) リクエスト](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job)の例です。赤色のすべてのパラメータを仕様とリソースに置き換えます。

```
response = client.create_labeling_job(
    LabelingJobName='example-multi-label-image-classification-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-ImageMultiClassMultiLabel',
        'TaskKeywords': [
            'Image Classification',
        ],
        'TaskTitle': 'Multi-label image classification task',
        'TaskDescription': 'Select all labels that apply to the images shown',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-ImageMultiClassMultiLabel'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### マルチラベルのイメージ分類用のテンプレートを提供する
<a name="sms-custom-template-multi-image-label-classification"></a>

API を使用してラベル付けジョブを作成する場合は、`UiTemplateS3Uri` でワーカータスクテンプレートを指定する必要があります。次のテンプレートをコピーして変更します。[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions)、[https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions)、`header` のみ変更します。

このテンプレートを S3 にアップロードし、このファイルの S3 URI を `UiTemplateS3Uri` で指定します。

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-image-classifier-multi-select
    name="crowd-image-classifier-multi-select"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Please identify all classes in image"
    categories="{{ task.input.labels | to_json | escape }}"
  >
    <full-instructions header="Multi Label Image classification instructions">
      <ol><li><strong>Read</strong> the task carefully and inspect the image.</li>
      <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
       <li><strong>Choose</strong> the appropriate labels that best suit the image.</li></ol>
    </full-instructions>
    <short-instructions>
      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
      <p>Enter description to explain the correct label to the workers</p>
      <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3>
      <p>Enter description of an incorrect label</p>
   </short-instructions>
  </crowd-image-classifier-multi-select>
</crowd-form>
```

## マルチラベルのイメージ分類出力データ
<a name="sms-image-classification-multi-output-data"></a>

マルチラベルイメージ分類のラベル付けジョブを作成すると、出力データは、APIを使用するときに `S3OutputPath` パラメータで指定された Amazon S3 バケット、またはコンソールの **[Job overview]** (ジョブの概要)セクションの **[Output dataset location]** (出力データセットの場所) フィールドに配置されます。

Ground Truth によって生成される出力マニフェストファイルと、Ground Truth が出力データを保存するために使用するファイル構造の詳細については、「[ラベル付けジョブの出力データ](sms-data-output.md)」を参照してください。

マルチラベルのイメージ分類ラベル付けジョブの出力マニフェストファイルの例については、「[マルチラベル分類ジョブの出力](sms-data-output.md#sms-output-multi-label-classification)」を参照してください。

# イメージラベルの検証
<a name="sms-label-verification"></a>

機械学習 (ML) アルゴリズム用の高精度のトレーニングデータセットの構築は反復プロセスです。通常、ラベルがグランドトゥルース (実世界で直接観察できるもの) を正確に表すようになるまで、ラベルを確認し、継続的に調整します。Amazon SageMaker Ground Truth イメージラベル検証タスクを使用して、ワーカーに、データセットのラベルを確認し、ラベルの精度を向上させるように指示できます。ワーカーは、既存のラベルが正しいかどうかを示したり、ラベルの品質を評価したりできます。推論を説明するコメントを追加することもできます。Amazon SageMaker Ground Truth は、[境界ボックスを使用してイメージオブジェクトを分類する](sms-bounding-box.md) と [セマンティックセグメンテーションを使用して画像コンテンツを識別する](sms-semantic-segmentation.md) のラベルのラベル検証をサポートしています。イメージラベル検証ラベル付けジョブを作成するには、Amazon SageMaker AI コンソールの Ground Truth セクションまたは [CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) オペレーションを使用します。

Ground Truth には、ラベル付けタスク用の次のようなワーカーコンソール が用意されています。コンソールを使用してラベル付けジョブを作成する場合は、表示されるイメージとコンテンツを変更できます。Ground Truth コンソールを使用してラベル付けジョブを作成する方法については、「[ラベル付けジョブの作成 (コンソール)](sms-create-labeling-job-console.md)」を参照してください。

![\[Ground Truth のラベル付けタスクのワーカーコンソールの例。\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/label-verification-example.png)


SageMaker AI コンソールまたは API を使用して、ラベル検証ラベル付けジョブを作成できます。Ground Truth API オペレーション `CreateLabelingJob` を使用してラベル付けジョブを作成する方法については、「[ラベル付けジョブを作成 (API)](sms-create-labeling-job-api.md)」を参照してください。