개체명 인식 - 아마존 SageMaker

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

개체명 인식

구조화되지 않은 텍스트에서 정보를 추출하여 사전 정의된 범주로 분류하려면 Amazon SageMaker Ground Truth의 명명된 개체 인식 (NER) 레이블 지정 작업을 사용하십시오. 일반적으로 텍스트 데이터를 샅샅이 뒤져 명명된 개체라고 하는 명사구를 찾은 다음 각 구문을 “사람”, “조직” 또는 “브랜드”와 같은 레이블로 분류합니다. NER 이 작업을 확장하여 더 긴 문자 영역에 레이블을 지정하고 사용자가 지정한 미리 정의된 레이블로 해당 시퀀스를 범주화할 수 있습니다.

NER 레이블 지정 작업을 수행할 때 작업자는 더 큰 텍스트 블록 내의 특정 단어나 구에 레이블을 적용합니다. 레이블을 선택한 다음 커서를 사용하여 레이블이 적용되는 텍스트 부분을 강조 표시하여 적용합니다. Ground Truth의 NER 도구는 중복 주석, 컨텍스트 내 레이블 선택, 단일 강조 표시에 대한 다중 레이블 선택을 지원합니다. 또한, 작업자는 키보드를 사용하여 레이블을 빠르게 선택할 수 있습니다.

Amazon SageMaker 콘솔의 Ground Truth 섹션 또는 작업을 사용하여 명명된 개체 인식 레이블 지정 CreateLabelingJob작업을 생성할 수 있습니다.

중요

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

개체명 인식 레이블 지정 작업 생성(콘솔)

지침에 따라 SageMaker 콘솔에서 명명된 개체 인식 레이블 지정 작업을 생성하는 레이블 지정 작업 생성(콘솔) 방법을 배울 수 있습니다. 10단계에서 작업 범주 드롭다운 메뉴에서 텍스트를 선택하고 작업 유형으로 개체명 인식을 선택합니다.

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

SageMaker 콘솔에서 명명된 개체 인식 레이블 지정 작업을 만드는 방법을 보여 주는 GIF입니다.

명명된 개체 인식 라벨링 작업 생성 (API)

작업을 사용하여 명명된 개체 인식 레이블 지정 SageMaker API 작업을 CreateLabelingJob 만들려면 이는 모두를 위한 이 작업을 API 정의합니다 AWS SDKs. 이 작업에 SDKs 지원되는 언어별 목록을 보려면 의 관련 항목 섹션을 검토하십시오. CreateLabelingJob

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

  • 이 작업 유형에 대한 주석 전 Lambda 함수는 PRE-NamedEntityRecognition로 끝납니다. 해당 지역의 사전 주석이 달린 Lambda를 찾으려면 을 참조하십시오ARN. PreHumanTaskLambdaArn

  • 이 작업 유형에 대한 주석 통합 Lambda 함수는 ACS-NamedEntityRecognition로 끝납니다. 해당 지역의 주석 통합 ARN Lambda를 찾으려면 을 참조하십시오. AnnotationConsolidationLambdaArn

  • 다음과 같은 정보를 제공해야 합니다. ARN HumanTaskUiArn

    arn:aws:sagemaker:aws-region:394669845002:human-task-ui/NamedEntityRecognition

    라벨링 작업을 생성하는 데 사용하는 AWS 지역으로 aws-region 바꾸십시오. 예를 들어 미국 서부(캘리포니아 북부)에서 레이블 지정 작업을 생성하는 경우 us-west-1을 사용합니다.

  • instructions 파라미터를 사용하여 레이블 범주 구성 파일에 작업자 지침을 제공하세요. shortInstructionfullInstruction 필드에 문자열 또는 HTML 마크업 언어를 사용할 수 있습니다. 자세한 내용은 레이블 범주 구성 파일에 작업자 지침 제공하기를 참조하세요.

    "instructions": {"shortInstruction":"<h1>Add header</h1><p>Add Instructions</p>", "fullInstruction":"<p>Add additional instructions.</p>"}

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

response = client.create_labeling_job( LabelingJobName='example-ner-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': { 'HumanTaskUiArn': 'arn:aws:sagemaker:us-east-1:394669845002:human-task-ui/NamedEntityRecognition' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-NamedEntityRecognition', 'TaskKeywords': [ 'Named entity Recognition', ], 'TaskTitle': 'Named entity Recognition task', 'TaskDescription': 'Apply the labels provided to specific words or phrases within the larger text block.', 'NumberOfHumanWorkersPerDataObject': 1, 'TaskTimeLimitInSeconds': 28800, 'TaskAvailabilityLifetimeInSeconds': 864000, 'MaxConcurrentTaskCount': 1000, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-NamedEntityRecognition' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

레이블 범주 구성 파일에 작업자 지침 제공하기

CreateLabelingJob에서 LabelCategoryConfigS3Uri 파라미터를 사용하여 식별하는 레이블 범주 구성 파일에 작업자 지침을 제공해야 합니다. 이 지침을 사용하여 작업자가 수행하고자 하는 작업에 대한 세부 정보를 제공하고 작업자가 도구를 효율적으로 사용하도록 도울 수 있습니다.

instructions 파라미터의 shortInstructionfullInstruction을 각각 사용하여 짧고 긴 지침을 제공합니다. 이러한 명령 유형에 대해 자세히 알아보려면 지침 페이지 생성을 참고하세요.

다음은 개체명 인식 레이블 지정 작업에 사용할 수 있는 지침이 포함된 레이블 범주 구성 파일의 예입니다.

{ "document-version": "2018-11-28", "labels": [ { "label": "label1", "shortDisplayName": "L1" }, { "label": "label2", "shortDisplayName": "L2" }, { "label": "label3", "shortDisplayName": "L3" }, { "label": "label4", "shortDisplayName": "L4" }, { "label": "label5", "shortDisplayName": "L5" } ], "instructions": { "shortInstruction": "<p>Enter description of the labels that workers have to choose from</p><br><p>Add examples to help workers understand the label</p>", "fullInstruction": "<ol> <li><strong>Read</strong> the text carefully.</li> <li><strong>Highlight</strong> words, phrases, or sections of the text.</li> <li><strong>Choose</strong> the label that best matches what you have highlighted.</li> <li>To <strong>change</strong> a label, choose highlighted text and select a new label.</li> <li>To <strong>remove</strong> a label from highlighted text, choose the X next to the abbreviated label name on the highlighted text.</li> <li>You can select all of a previously highlighted text, but not a portion of it.</li> </ol>" } }

개체명 인식 출력 데이터

명명된 개체 인식 레이블 지정 작업을 생성하면 출력 데이터는 콘솔의 Job overview 섹션의 출력 데이터세트 위치 필드를 사용할 때 S3OutputPath 파라미터에 지정된 Amazon S3 버킷에 위치합니다. API

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