BLOG

Amazon SageMaker Ground Truth를 사용하여 개인 라벨링 팀의 처리량 추적
작성일: 2019-10-21

AWS re : Invent 2018에서 시작된 Amazon SageMaker Ground Truth는 머신 러닝 모델에 대한 매우 정확한 교육 데이터 세트를 신속하게 구축하는 데에 도움을 줍니다. Amazon SageMaker Ground Truth는 공개 및 개인 휴먼 라벨러에 쉽게 액세스 할 수 있으며 일반적인 라벨링 작업을 위한 내장 워크 플로우 및 인터페이스를 제공합니다. 또한 Amazon SageMaker Ground Truth는 자동 라벨링을 사용하여 라벨링 비용을 최대 70 %까지 절감 할 수 있습니다. 이 라벨링은 서비스에서 데이터를 독립적으로 라벨링 하는 방법을 학습 할 수 있도록 사람이 라벨링 한 데이터에서 Ground Truth를 훈련함으로써 작동합니다.

 

개인 작업자를 사용하여 데이터 레이블링을 수행 할 때 처리량과 효율성의 측정 및 추적이 필요합니다. Amazon SageMaker Ground Truth는 이제 작업자 이벤트 (예 : 라벨러가 작업을 시작하고 작업을 제출할 때)를 Amazon CloudWatch에 기록합니다. 또한 CloudWatch의 내장 지표 기능을 사용하여 작업 팀 전체 또는 개별 작업자의 처리량을 측정하고 추적 할 수 있습니다. 이 블로그 게시 글에서는 AWS 계정에서 작업자 이벤트 로그 및 내장 지표를 사용하는 방법을 다룹니다.

 

작업자 활동 로그를 사용하는 방법

작업자의 개인 팀을 설정하고 Amazon SageMaker Ground Truth로 라벨 작업을 실행하면 작업자 활동 로그가 자동으로 CloudWatch로 전송됩니다. 개인 팀을 구성하고 첫 번째 라벨 작업을 시작 하는 방법에 대해서는 입문 블로그 게시 글을 참조하십시오. 참고: 이전에 개인 작업 팀을 생성 한 경우 새 개인 작업 팀을 생성하여 작업 팀과 CloudWatch간에 신뢰 권한을 설정 해야 합니다. 이 개인 작업팀을 사용할 필요가 없으며 이는 일회성 설정 단계 일뿐입니다.

 

로그를 보려면 CloudWatch 콘솔을 방문 하고 왼쪽 패널 에서 로그를 클릭하십시오. 여기에 / aws / sagemaker / groundtruth / WorkerActivity 라는 로그 그룹이 표시 됩니다.

이 로그 그룹에는 Amazon SageMaker Ground Truth 라벨 작업 중에 작업자가 수락하는 각 작업에 대한 로그가 포함되어 있으며 아래에 로그 예가 포함되어 있습니다. “cognito_sub_id”필드에 작업자의 Amazon Cognito 하위 ID가 표시됩니다. Amazon Cognito를 통해 이를 직원의 정체성과 연결하는 방법을 시연합니다. 또한 “workflow_arn”에 Amazon SageMaker Ground Truth 라벨 작업에 대한 Amazon 리소스 이름 (ARN)이 표시됩니다. 이 로그에는 작업자가 작업을 시작할 때 ( “task_accepted_time”) 작업자가 작업을 반환하거나 제출할 때 ( “task_returned_time”또는 “task_submitted_time”)에 대한 타임 스탬프도 포함되어 있습니다.

 

{

     “worker_id”: “cd449a289e129409”,

     “cognito_user_pool_id”: “us-east-2_IpicJXXXX”,

     “cognito_sub_id”: “d6947aeb-0650-447a-ab5d-894db61017fd”,

     “task_accepted_time”: “Wed Aug 14 16:00:59 UTC 2019”,

     “task_submitted_time”: “Wed Aug 14 16:01:04 UTC 2019”,

     “task_returned_time”: “”,

     “workteam_arn”: “arn:aws:sagemaker:us-east-2:############:workteam/private-crowd/Sample-labeling-team”,

     “labeling_job_arn”: “arn:aws:sagemaker:us-east-2:############:labeling-job/metrics-demo”,

     “work_requester_account_id”: “############”,

     “job_reference_code”: “############”,

     “job_type”: “Private”,

     “event_type”: “TasksSubmitted”,

     “event_timestamp”: “1565798464”

}

개발자 대상 문서에서 CloudWatch Logs 사용에 대해 자세히 알아보십시오.

 

작업자 활동 메트릭스를 사용하는 방법

CloudWatch 메트릭스 기능을 사용하여 개인 근로자의 처리량에 대한 흥미로운 통계 또는 그래프를 생성 하는 경우도 있습니다. 먼저 메트릭스 탭으로 이동 한 다음 AWS / SageMaker / Workteam 이름 공간으로 이동하여 시작할 수 있습니다 .

작업자가 특정 라벨 작업에 소요 된 평균 시간을 찾고 싶다고 가정 해 봅시다. 당신은 LabelingJob, Workteam 옵션을 선택할 수 있습니다.

여기에서 통계를 계산할 수 있습니다. 아래 예시에서는 특정 라벨 작업에 대해 제출된 작업당 평균 시간을 계산합니다. 14 개의 작업이 제출되었으며, 총 2.28분, 평균 9.78 초가 걸렸습니다.

개발자 대상 문서에서 CloudWatch 메트릭스 사용에 대해 자세히 알아보십시오.

 

Amazon Cognito 하위 ID를 작업자 정보에 연결하는 방법

출력 된 Amazon Cognito 하위 ID를 사용자 이름처럼 식별 가능한 작업자 정보에 연결할 수 있습니다. 이를 위해서는 Amazon Cognito  ListUsers API를 사용하여 빠른 스크립트를 작성할 수 있습니다. 또는 다음 단계에 따라 Amazon Cognito 콘솔을 사용할 수 있습니다.

 

  1. 라벨링 작업을 실행 중인 AWS 지역에서 ‘사용자 풀 관리’로 이동합니다 .
  2. sagemaker-ground-userpool을 선택하십시오 (자신의 Amazon Cognito 사용자 풀을 Amazon SageMaker Ground Truth와 한 경우 해당 사용자 풀을 선택하십시오).
  3. 왼쪽 패널에서 사용자 및 그룹을 클릭하면 사용자 풀의 모든 사용자를 표시합니다.
  4. 사용자를 클릭하면 해당 하위 ID가 표시됩니다.

 

결론

이 게시 글에서는 CloudWatch Logs 및 메트릭스를 사용하여 개인 라벨링 팀의 처리량을 측정하고 추적하는 방법을 소개했습니다. 또한 출력된 작업자 ID를 사용자 이름과 같이 식별 가능한 작업자 정보에 연결하는 방법을 살펴보았습니다.  이 기능을 시작하려면 AWS Management Console을 방문해 주시길 바랍니다.

 

 

원문 URL: https://aws.amazon.com/ko/blogs/machine-learning/tracking-the-throughput-of-your-private-labeling-team-through-amazon-sagemaker-ground-truth/

 

** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.