テキスト分類 (単一ラベル) - Amazon SageMaker

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

テキスト分類 (単一ラベル)

記事とテキストを定義済みのカテゴリに分類するには、テキスト分類を使用します。例えば、テキスト分類を使用して、レビューで伝えられた感情や、テキストのセクションの根底にある感情を識別できます。Amazon SageMaker Ground Truth テキスト分類を使用して、ワーカーが定義したカテゴリにテキストをソートするようにします。

Amazon SageMaker コンソールの Ground Truth セクションまたは CreateLabelingJobオペレーションを使用して、テキスト分類ラベル付けジョブを作成します。

重要

入力マニフェストファイルを手動で作成する場合は、"source" を使用してラベル付けするテキストを指定します。詳細については、「入力データ」を参照してください。

テキスト分類ラベル付けジョブを作成する (コンソール)

コンソールでテキスト分類ラベル付けジョブを作成するラベル付けジョブの作成 (コンソール)方法については、 SageMaker 「」を参照してください。ステップ 10 で、[Task category] (タスクカテゴリ) ドロップダウンメニューから [Text] (テキスト) を選択し、[Text Classification] (テキスト分類 (単一ラベル)) タスクタイプを指定します。

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

テキスト分類ラベル付けジョブを作成する (API)

テキスト分類ラベル付けジョブを作成するには、 SageMaker API オペレーション を使用しますCreateLabelingJob。この API は、すべての AWS SDKsに対してこのオペレーションを定義します。このオペレーションでサポートされている言語固有の SDK のリストを確認するには、CreateLabelingJob の「以下の資料も参照してください」セクションを確認してください。

リクエストを設定する際には、「ラベル付けジョブを作成 (API)」の指示に従ったうえで、以下のことを実行してください。

  • このタスクタイプの注釈前 Lambda 関数は PRE-TextMultiClass で終わります。リージョンの注釈前 Lambda ARN を確認するには、「」を参照してくださいPreHumanTaskLambdaArn

  • このタスクタイプの注釈統合 Lambda 関数は ACS-TextMultiClass で終わります。リージョンの注釈統合 Lambda ARN を確認するには、「」を参照してくださいAnnotationConsolidationLambdaArn

以下は、米国東部 (バージニア北部) リージョンでラベル付けジョブを作成する AWS Python SDK (Boto3) リクエストの例です。赤色のすべてのパラメータを仕様とリソースに置き換えます。

response = client.create_labeling_job( LabelingJobName='example-text-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-TextMultiClass, 'TaskKeywords': [ Text classification', ], 'TaskTitle': Text classification task', 'TaskDescription': 'Carefully read and classify this text using the categories provided.', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-TextMultiClass' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

テキスト分類ラベル付けジョブ用のテンプレートの提供

API を使用してラベル付けジョブを作成する場合は、UiTemplateS3Uri でワーカータスクテンプレートを指定する必要があります。次のテンプレートをコピーして変更します。short-instructionsfull-instructionsheader のみ変更します。

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

<script src="https://assets.crowd.aws/crowd-html-elements.js"></script> <crowd-form> <crowd-classifier name="crowd-classifier" categories="{{ task.input.labels | to_json | escape }}" header="classify text" > <classification-target style="white-space: pre-wrap"> {{ task.input.taskObject }} </classification-target> <full-instructions header="Classifier instructions"> <ol><li><strong>Read</strong> the text carefully.</li> <li><strong>Read</strong> the examples to understand more about the options.</li> <li><strong>Choose</strong> the appropriate labels that best suit the text.</li></ol> </full-instructions> <short-instructions> <p>Enter description of the labels that workers have to choose from</p> <p><br></p><p><br></p><p>Add examples to help workers understand the label</p> <p><br></p><p><br></p><p><br></p><p><br></p><p><br></p> </short-instructions> </crowd-classifier> </crowd-form>

テキスト分類出力データ

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

Ground Truth によって生成される出力マニフェストファイルと、Ground Truth が出力データを保存するために使用するファイル構造の詳細については、「出力データ」を参照してください。

テキスト分類ラベル付けジョブの出力マニフェストファイルの例については、「分類ジョブの出力」を参照してください。