텍스트 분류를 사용하여 텍스트 분류(다중 레이블) - Amazon SageMaker AI

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

텍스트 분류를 사용하여 텍스트 분류(다중 레이블)

기사 및 텍스트를 미리 정의된 여러 범주로 분류하려면 다중 레이블 텍스트 분류 작업 유형을 사용합니다. 예를 들어, 이 작업 유형을 사용하여 텍스트로 전달된 둘 이상의 감정을 식별할 수 있습니다. 다음 섹션에서는 콘솔 및 API에서 다중 레이블 텍스트 분류 작업을 생성하는 방법에 대한 정보를 제공합니다.

다중 레이블 텍스트 분류 작업을 수행할 때 작업자는 적용 가능한 모든 레이블을 선택해야 하며, 최소 하나 이상의 레이블은 선택해야 합니다. 이 작업 유형을 사용하여 작업을 생성할 때 최대 50개의 레이블 범주를 제공할 수 있습니다.

Amazon SageMaker Ground Truth에서는 레이블이 적용되지 않는 ‘없음’ 범주를 제공하지 않습니다. 작업자에게 이 옵션을 제공하려면 다중 레이블 텍스트 분류 작업을 생성할 때 "없음" 또는 "기타"와 유사한 레이블을 포함합니다.

작업자가 각 문서 또는 텍스트 선택에 대해 단일 레이블을 선택하도록 제한하려면 텍스트 분류로 텍스트 범주화(단일 레이블) 작업 유형을 사용합니다.

중요

입력 매니페스트 파일을 수동으로 생성하는 경우 레이블을 지정하려는 텍스트를 식별하는 데 "source"를 사용하세요. 자세한 내용은 입력 데이터 섹션을 참조하세요.

다중 레이블 텍스트 분류 레이블 지정 작업 생성(콘솔)

지침에 따라 Amazon SageMaker AI 콘솔에서 다중 레이블 텍스트 분류 레이블 지정 작업을 생성하는 방법을 레이블 지정 작업 생성(콘솔) 알아볼 수 있습니다. 10단계에서 작업 범주 드롭다운 메뉴에서 텍스트를 선택하고 작업 유형으로 텍스트 분류(다중 레이블)를 선택합니다.

Ground Truth에서는 작업에 레이블을 지정할 때 다음과 유사한 작업자 UI를 제공합니다. 콘솔을 사용하여 레이블 지정 작업을 생성할 때 작업자가 작업을 완료하는 데 도움이 되는 지침과 작업자가 선택할 수 있는 레이블을 지정합니다.

Amazon SageMaker AI 콘솔에서 다중 레이블 텍스트 분류 레이블 지정 작업을 생성하는 방법을 보여주는 Gif입니다.

다중 레이블 텍스트 분류 레이블 지정 작업 생성(API)

다중 레이블 텍스트 분류 레이블 지정 작업을 생성하려면 SageMaker API 작업 CreateLabelingJob을 사용합니다. 이 API AWS SDKs에 대해이 작업을 정의합니다. 이 작업에 지원되는 언어별 SDK 목록을 보려면 CreateLabelingJob참고 항목 섹션을 검토하세요.

레이블 지정 작업 생성(API)의 지침에 따라 요청을 구성하는 동안 다음을 수행합니다.

  • 이 작업 유형에 대한 주석 전 Lambda 함수는 PRE-TextMultiClassMultiLabel로 끝납니다. 해당 리전의 주석 전 Lambda ARN을 찾으려면 PreHumanTaskLambdaArn을 참조하세요.

  • 이 작업 유형에 대한 주석 통합 Lambda 함수는 ACS-TextMultiClassMultiLabel로 끝납니다. 해당 리전에 대한 주석 통합 Lambda ARN을 찾으려면 AnnotationConsolidationLambdaArn을 참조하세요.

다음은 미국 동부(버지니아 북부) 리전에 레이블 지정 작업을 생성하는 AWS Python SDK(Boto3) 요청의 예시입니다. 빨간색으로 된 모든 파라미터는 사양과 리소스로 대체해야 합니다.

response = client.create_labeling_job( LabelingJobName='example-multi-label-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/custom-worker-task-template.html' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda::function:PRE-TextMultiClassMultiLabel, 'TaskKeywords': [ 'Text Classification', ], 'TaskTitle': 'Multi-label text classification task', 'TaskDescription': 'Select all labels that apply to the text shown', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-TextMultiClassMultiLabel' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

다중 레이블 텍스트 분류에 대한 템플릿 생성

API를 사용하여 레이블 지정 작업을 생성하는 경우 UiTemplateS3Uri의 작업자 태스크 템플릿을 제공해야 합니다. 다음 템플릿을 복사하고 수정합니다. short-instructions, full-instructionsheader만 수정합니다.

이 템플릿을 S3에 업로드하고 UiTemplateS3Uri에서 이 파일에 대한 S3 URI를 제공합니다.

<script src="https://assets.crowd.aws/crowd-html-elements.js"></script> <crowd-form> <crowd-classifier-multi-select name="crowd-classifier-multi-select" categories="{{ task.input.labels | to_json | escape }}" header="Please identify all classes in the below 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-multi-select> </crowd-form>

사용자 지정 템플릿을 생성하는 방법은 사용자 지정 레이블 지정 워크플로 섹션을 참조하세요.

다중 레이블 텍스트 분류 출력 데이터

다중 레이블 텍스트 분류 레이블 지정 작업을 생성하면 출력 데이터는 API 사용 시 S3OutputPath 파라미터에 지정된 Amazon S3 버킷 또는 콘솔의 작업 개요 섹션의 출력 데이터세트 위치 필드에 있습니다.

Ground Truth에서 생성된 출력 매니페스트 파일 및 Ground Truth에서 출력 데이터 저장에 사용하는 파일 구조에 대한 자세한 내용은 작업 출력 데이터 레이블 지정 섹션을 참조하세요.

다중 레이블 텍스트 분류 레이블 지정 작업에 대한 출력 매니페스트 파일의 예제를 보려면 다중 레이블 분류 작업 출력 섹션을 참조하세요.