Ground Truth 스트리밍 레이블 지정 작업 - 아마존 SageMaker

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

Ground Truth 스트리밍 레이블 지정 작업

레이블을 지정하기 위해 새 데이터 객체를 Amazon SageMaker Ground Truth로 영구적으로 보내려면 스트리밍 레이블 지정 작업을 사용하십시오. 스트리밍 레이블 지정 작업을 통해 다음을 수행할 수 있습니다.

  • 영구 실행 중인 레이블 지정 작업을 사용하여 작업자에게 새로운 데이터 세트 객체를 실시간으로 전송합니다. 레이블 지정 작업이 활성화되어 있고 새 객체가 전송되는 한 작업자는 레이블을 지정할 새 데이터 객체를 계속 받습니다.

  • 대기열에 추가되어 레이블이 지정되기를 기다리고 있는 객체의 수를 파악할 수 있습니다. 이 정보를 사용하여 레이블 지정 작업으로 전송되는 데이터 객체의 흐름을 제어할 수 있습니다.

  • 작업자가 레이블 지정을 완료하면 개별 데이터 객체의 레이블 데이터를 실시간으로 수신합니다.

Ground Truth 스트리밍 레이블 지정 작업은 수동으로 중지하거나 10일 넘게 유휴 상태가 될 때까지 활성 상태를 유지합니다. 레이블 지정 작업이 활성화되어 있는 동안 작업자에게 새 데이터 객체를 간헐적으로 보낼 수 있습니다.

Ground Truth 스트리밍 레이블 지정 작업을 처음 사용하는 경우 작동 방식 섹션을 검토하는 것이 좋습니다.

스트리밍 레이블 지정 작업 생성을 사용하여 스트리밍 레이블 지정 작업을 생성하는 방법을 알아보세요.

참고

Ground Truth 스트리밍 레이블 지정 작업은 SageMaker API를 통해서만 지원됩니다.

작동 방식

Ground Truth 스트리밍 레이블 지정 작업을 생성하면 작업은 수동으로 중지하거나 10일 이상 유휴 상태로 유지되거나 입력 데이터 소스에 액세스할 수 없을 때까지 활성 상태를 유지합니다. 레이블 지정 작업이 활성화되어 있는 동안 작업자에게 새 데이터 객체를 간헐적으로 보낼 수 있습니다. 작업자가 현재 사용할 수 있는 총 태스크 개수가 MaxConcurrentTaskCount 값보다 작으면 작업자는 계속해서 실시간으로 새 데이터 객체를 수신할 수 있습니다. 그렇지 않으면 Ground Truth가 Amazon Simple Queue Service(Amazon SQS)에서 사용자를 대신하여 생성한 대기열로 데이터 객체를 전송하여 나중에 처리할 수 있습니다. 이러한 태스크는 작업자가 현재 사용할 수 있는 총 태스크 개수가 MaxConcurrentTaskCount 아래로 떨어지면 즉시 작업자에게 전송됩니다. 14일이 지난 후에도 데이터 객체를 작업자에게 보내지 않으면 만료됩니다. 대기열에 보류 중인 태스크 개수를 보고 레이블 지정 작업에 보내는 객체 수를 조정할 수 있습니다. 예를 들어 대기 중인 객체의 백로그가 임곗값을 초과하면 레이블 지정 작업으로 객체를 보내는 속도를 줄일 수 있습니다.

스트리밍 레이블 지정 작업으로 데이터 전송

입력 매니페스트 파일을 사용하여 레이블 지정 작업을 생성할 때 스트리밍 레이블 지정 작업에 입력 데이터를 선택적으로 한 번 제출할 수 있습니다. 레이블 지정 작업이 시작되고InProgress 상태가 되면 Amazon SNS 입력 주제 및 Amazon S3 이벤트 알림을 사용하여 레이블 지정 작업에 새 데이터 객체를 실시간으로 제출할 수 있습니다.

레이블 지정 작업 시작 시 데이터 객체 제출(1회):

  • 입력 매니페스트 파일 사용 - 스트리밍 레이블 지정 작업을 생성할 때 ManifestS3Uri에서 입력 매니페스트 파일 Amazon S3 URI를 선택적으로 지정할 수 있습니다. Ground Truth는 레이블 지정 작업이 시작되는 즉시 레이블 지정을 위해 작업자에게 매니페스트 파일의 각 데이터 객체를 보냅니다. 자세한 내용은 매니페스트 파일 생성(선택 사항) 단원을 참조하세요.

    스트리밍 레이블 지정 작업 생성 요청을 제출하면 Initializing 상태가 됩니다. 레이블 지정 작업이 활성화되면 상태가 InProgress로 변경되고 시작할 때 실시간 옵션을 사용하면 레이블 지정을 위한 추가 데이터 객체를 제출할 수 있습니다.

실시간 데이터 객체 제출:

  • Amazon SNS 메시지를 사용하여 데이터 객체 전송 - Amazon SNS 메시지를 전송하여 레이블을 지정할 Ground Truth의 새 데이터 객체를 보낼 수 있습니다. 스트리밍 레이블 지정 작업을 생성할 때 생성하고 지정하는 Amazon SNS 입력 주제에 이 메시지를 전송합니다. 자세한 정보는 Amazon SNS를 사용하여 데이터 객체 전송을 참조하세요.

  • Amazon S3 버킷에 데이터 객체를 배치하여 전송 - Amazon S3 버킷에 새 데이터 객체를 추가할 때마다 Ground Truth에 해당 객체를 처리하여 레이블을 지정하라는 메시지를 표시할 수 있습니다. 이렇게 하려면 버킷에 이벤트 알림을 추가하여 해당 버킷에 새 객체가 추가(또는 생성)될 때마다 Amazon SNS 입력 주제에 알림을 보내도록 합니다. 자세한 정보는 Amazon S3를 사용하여 데이터 객체 전송을 참조하세요. 텍스트 분류 및 명명된 주체 인식과 같은 텍스트 기반 레이블 지정 작업에는 이 옵션을 사용할 수 없습니다.

    중요

    Amazon S3 구성을 사용하는 경우 입력 데이터 구성 및 출력 데이터에 동일한 Amazon S3 위치를 사용하지 마세요. 레이블 지정 작업을 생성할 때 출력 데이터의 S3 접두사를 지정합니다.

Amazon SNS를 사용하여 데이터 객체 전송

Amazon Simple Notification Service(Amazon SNS)를 사용하여 스트리밍 레이블 지정 작업에 데이터 객체를 보낼 수 있습니다. Amazon SNS는 엔드포인트와 주고받는 메시지 전송을 조정하고 관리하는 웹 서비스입니다 (예: 이메일 주소 또는 AWS Lambda 기능). Amazon SNS 주제는 둘 이상의 엔드포인트 간 통신 채널 역할을 합니다. Amazon SNS를 사용하여 InputConfigCreateLabelingJob 변수 SnsTopicArn에 지정된 주제에 새로운 데이터 객체를 전송 또는 게시합니다. 이러한 메시지의 형식은 입력 매니페스트 파일의 한 줄과 동일합니다.

예를 들어, 텍스트를 입력 주제에 게시하여 활성 텍스트 분류 레이블 지정 작업에 텍스트를 보낼 수 있습니다. 게시된 메시지는 다음과 유사할 수 있습니다.

{"source": "Lorem ipsum dolor sit amet"}

새 이미지 객체를 이미지 분류 레이블 지정 작업에 보내려면 메시지가 다음과 비슷할 수 있습니다.

{"source-ref": "s3://awsexamplebucket/example-image.jpg"}
참고

Amazon SNS 메시지에 사용자 지정 중복 제거 ID와 중복 제거 키를 포함할 수도 있습니다. 자세한 내용은 중복 메시지 처리 단원을 참조하세요.

Ground Truth가 스트리밍 레이블 지정 작업을 생성하면 이는 Amazon SNS 입력 주제를 구독합니다.

Amazon S3를 사용하여 데이터 객체 전송

Amazon SNS 이벤트 알림으로 구성된 Amazon S3 버킷에 새 데이터 객체를 배치하여 스트리밍 레이블 지정 작업에 새 데이터 객체를 하나 이상 전송할 수 있습니다. 버킷에 새 객체가 생성될 때마다 Amazon SNS 입력 주제에 알리도록 이벤트를 설정할 수 있습니다. InputConfigCreateLabelingJob 파라미터 SnsTopicArn에 동일한 Amazon SNS 입력 주제를 지정해야 합니다.

Amazon SNS에 알림을 보내도록 Amazon S3 버킷을 구성할 때마다 Ground Truth는 테스트 이벤트 "s3:TestEvent"를 게시하여 해당 주제가 존재하고 지정된 Amazon S3 버킷 소유자가 지정된 주제에 게시할 권한이 있는지 확인합니다. 스트리밍 레이블 지정 작업을 시작하기 전에 Amazon S3와 Amazon SNS를 연결하도록 설정하는 것이 좋습니다. 그렇지 않으면 이 테스트 이벤트가 데이터 객체로 등록되고 레이블을 지정하기 위해 Ground Truth로 전송될 수 있습니다.

중요

Amazon S3 구성을 사용하는 경우 입력 데이터 구성 및 출력 데이터에 동일한 Amazon S3 위치를 사용하지 마세요. 레이블 지정 작업을 생성할 때 출력 데이터의 S3 접두사를 지정합니다.

이미지 기반 레이블 지정 작업에서 Ground Truth의 경우 모든 S3 버킷에 CORS 정책이 연결되어 있어야 합니다. 자세한 내용은 CORS 권한 요구 사항 단원을 참조하세요.

Amazon S3 버킷을 구성하고 레이블 지정 작업을 생성한 후 객체를 버킷에 추가하면 Ground Truth가 해당 객체를 작업자에게 보내거나 Amazon SQS 대기열에 배치할 수 있습니다.

자세한 내용은 Amazon S3 버킷 이벤트 알림 설정 단원을 참조하세요.

중요

텍스트 분류 및 명명된 주체 인식과 같은 텍스트 기반 레이블 지정 작업에는 이 옵션을 사용할 수 없습니다.

Amazon SQS 대기열을 사용하여 레이블 지정 요청 관리

Ground Truth는 스트리밍 레이블 지정 작업을 생성할 때 레이블 지정 작업을 생성하는 데 사용된 AWS 계정에 Amazon SQS 대기열을 생성합니다. 레이블 지정 작업의 이름이 labeling_job_name일 경우 대기열 이름은 GroundTruth-labeling_job_name입니다(소문자). 레이블 지정 작업에 데이터 객체를 보내면 Ground Truth는 데이터 객체를 작업자에게 직접 보내거나 나중에 처리할 수 있도록 작업을 대기열에 배치합니다. 14일이 지난 후에도 데이터 객체를 작업자에게 보내지 않으면 만료되고 대기열에서 제거됩니다. Amazon SQS에서 경보를 설정하여 객체 만료 시기를 감지하고 이 메커니즘을 사용하여 레이블 지정 작업에 보내는 객체의 양을 제어할 수 있습니다.

중요

객체를 수정, 삭제 또는 스트리밍 레이블 지정 작업과 관련된 Amazon SQS 대기열로 직접 전송하면 작업이 실패할 수 있습니다.

스트리밍 레이블 지정 작업에서 출력 데이터 수신

Amazon S3 출력 버킷은 스트리밍 레이블 지정 작업의 새 출력 데이터를 사용하여 주기적으로 업데이트됩니다.

선택 사항으로 Amazon SNS 출력 주제를 지정할 수도 있습니다. 작업자가 레이블이 지정된 객체를 제출할 때마다 출력 데이터가 포함된 알림이 해당 주제로 전송됩니다. 엔드포인트가 SNS 출력 주제를 구독하도록 등록하여 레이블 지정 작업에서 출력 데이터를 수신할 때 알림을 받거나 이벤트를 트리거할 수 있습니다. 다른 스트리밍 작업에 실시간으로 체인화하고 작업자가 데이터 객체를 제출할 때마다 Amazon SNS 알림을 수신하려면 Amazon SNS 출력 주제를 사용합니다.

자세한 내용은 엔드포인트가 Amazon SNS 출력 주제를 구독하게 등록 단원을 참조하세요.

중복 메시지 처리

실시간으로 전송되는 데이터 객체의 경우 Ground Truth는 해당 객체를 참조하는 입력 메시지를 여러 번 수신(중복 메시지)하더라도 각 고유 객체가 레이블 지정을 위해 한 번만 전송되도록 함으로써 멱등성을 보장합니다. 이를 위해 스트리밍 레이블 지정 작업으로 전송되는 각 데이터 객체에는 중복 제거 키로 식별되는 중복 제거 ID가 할당됩니다.

Amazon SNS 메시지를 사용하여 Amazon SNS 입력 주제를 통해 데이터 객체에 레이블을 지정하라는 요청을 직접 보내는 경우, 객체에 대한 사용자 지정 중복 제거 키와 중복 제거 ID를 선택 사항으로 고고를 수 있습니다. 자세한 정보는 Amazon SNS 메시지에 중복 제거 키 및 ID 지정을 참조하세요.

자체 중복 제거 키를 제공하지 않거나 Amazon S3 구성을 사용하여 레이블 지정 작업에 데이터 객체를 보내는 경우 Ground Truth는 중복 제거 ID로 다음 중 하나를 사용합니다.

  • Amazon SNS 입력 주제로 직접 전송된 메시지의 경우 Ground Truth는 SNS 메시지 ID를 사용합니다.

  • Amazon S3 구성을 통해 온 메시지의 경우 Ground Truth는 객체의 Amazon S3 URI를 메시지의 시퀀서 토큰과 결합하여 중복 제거 ID를 생성합니다.

Amazon SNS 메시지에 중복 제거 키 및 ID 지정

Amazon SNS 메시지를 사용하여 스트리밍 레이블 지정 작업에 데이터 객체를 보내는 경우 다음 방법 중 하나로 중복 제거 키와 중복 제거 ID를 지정할 수 있습니다. 이 모든 시나리오에서 dataset-objectid-attribute-name로 중복 제거 키를 식별합니다.

자체 중복 제거 키 및 ID 가져오기

다음과 같이 Amazon SNS 메시지를 구성하여 고유한 중복 제거 키와 중복 제거 ID를 생성합니다. byo-key를 자체 키로, UniqueId를 해당 데이터 객체용 중복 제거 ID로 교체합니다.

{ "source-ref":"s3://bucket/prefix/object1", "dataset-objectid-attribute-name":"byo-key", "byo-key":"UniqueId" }

중복 제거 키는 최대 140자입니다. 지원되는 패턴은 다음과 같습니다. "^[$a-zA-Z0-9](-*[a-zA-Z0-9])*".

중복 제거 ID는 최대 1,024자입니다. 지원되는 패턴은 다음과 같습니다. ^(https|s3)://([^/]+)/?(.*)$.

기존 키를 중복 제거 키로 사용

메시지의 기존 키를 중복 제거 키로 사용할 수 있습니다. 이렇게 하면 해당 키와 관련된 값이 중복 제거 ID에 사용됩니다.

예를 들어 다음과 같이 메시지 형식을 지정하여 source-ref 키를 중복 제거 키로 사용하도록 지정할 수 있습니다.

{ "source-ref":"s3://bucket/prefix/object1", "dataset-objectid-attribute-name":"source-ref" }

이 예제에서 Ground Truth는 중복 제거 ID로 "s3://bucket/prefix/object1"을 사용합니다.

출력 데이터에서 중복 제거 키 및 ID 확인

출력 데이터에서 중복 제거 키 및 ID를 확인할 수 있습니다. 중복 제거 키는 dataset-objectid-attribute-name로 식별됩니다.

사용자 지정 중복 제거 키를 사용하는 경우 출력에는 다음과 비슷한 내용이 포함됩니다.

"dataset-objectid-attribute-name": "byo-key", "byo-key": "UniqueId",

키를 지정하지 않으면 Ground Truth가 데이터 객체에 할당한 중복 제거 ID를 다음과 같이 확인할 수 있습니다. $label-attribute-name-object-id 매개변수는 중복 제거 ID를 식별합니다.

{ "source-ref":"s3://bucket/prefix/object1", "dataset-objectid-attribute-name":"$label-attribute-name-object-id" "label-attribute-name" :0, "label-attribute-name-metadata": {...}, "$label-attribute-name-object-id":"<service-generated-key>" }

<service-generated-key>의 경우 Amazon S3 구성을 통해 데이터 객체가 제공되면 Ground Truth는 서비스에서 사용하는 고유한 값을 추가하고 사용된 Amazon S3 시퀀서를 보여 주는 $sequencer가 키로 지정된 새 필드를 생성합니다. 객체가 SNS에 직접 공급된 경우 Ground Truth는 SNS 메시지 ID를 사용합니다.

참고

레이블 속성 이름에 $ 문자를 사용하지 마세요.