Amazon Lookout for Vision을 시작하기 - Amazon Lookout for Vision

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

Amazon Lookout for Vision을 시작하기

시작하기 지침 전에 Amazon Lookout for Vision 이해 항목을 먼저 읽어 보는 것이 좋습니다.

시작하기 지침에서는 예제 이미지 분할 모델을 만드는 방법을 보여줍니다. 예제 이미지 분류 모델을 만들려면 이미지 분류 데이터 세트을 참조하십시오.

예제 모델을 빠르게 사용해 보려는 경우 예제 훈련 이미지와 마스크 이미지를 제공합니다. 또한 이미지 분할 매니페스트 파일을 생성하는 Python 스크립트도 제공합니다. 매니페스트 파일을 사용하여 프로젝트용 데이터 세트를 만들면 데이터 세트의 이미지에 레이블을 지정할 필요가 없습니다. 자체 이미지로 모델을 만들 때는 데이터 세트의 이미지에 레이블을 지정해야 합니다. 자세한 내용은 데이터 세트를 생성합니다. 섹션을 참조하세요.

제공하는 이미지는 정상 쿠키와 비정상 쿠키입니다. 비정상 쿠키는 쿠키 모양 전체에 균열이 있습니다. 이미지를 사용하여 학습시킨 모델은 다음 예제와 같이 분류 (정상 또는 비정상)를 예측하고 비정상 쿠키의 균열 영역 (마스크)을 찾습니다.

Chocolate chip cookie with a visible crack across its surface on a green background.

1단계: 매니페스트 파일 생성 및 이미지 업로드

이 절차에서는 Amazon Lookout for Vision 설명서 리포지토리를 컴퓨터에 복제합니다. 그런 다음 Python (버전 3.7 이상) 스크립트를 사용하여 매니페스트 파일을 만들고 학습 이미지와 마스크 이미지를 지정한 Amazon S3 위치에 업로드합니다. 매니페스트 파일을 사용하여 모델을 생성합니다. 나중에 로컬 저장소의 테스트 이미지를 사용하여 모델을 시험해 볼 수 있습니다.

매니페스트 파일을 생성하고 이미지를 업로드하려면
  1. Amazon Lookout for Vision 설정의 지침에 따라 Amazon Lookout for Vision을 설정하십시오. AWSPython용 SDK를 설치해야 합니다.

  2. Lookout for Vision을 사용하려는 AWS 지역에서 S3 버킷을 생성합니다.

  3. Amazon S3 버킷에서 이름이 getting-started폴더를 생성합니다.

  4. Amazon S3 URI와 Amazon 리소스 이름 (ARN)을 폴더에 기록해 둡니다. 이를 사용하여 권한을 설정하고 스크립트를 실행할 수 있습니다.

  5. 스크립트를 호출하는 사용자에게 s3:PutObject 작업을 호출할 수 있는 권한이 있는지 확인하십시오. 다음 정책을 사용할 수 있습니다. 권한을 할당하려면 권한 할당 항목을 참조하세요.

    { "Version": "2012-10-17", "Statement": [{ "Sid": "Statement1", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3::: ARN for S3 folder in step 4/*" ] }] }
  6. 이름이 lookoutvision-access로 지정된 로컬 프로필이 있고 프로필 사용자에게 이전 단계의 권한이 있는지 확인하십시오. 자세한 내용은 로컬 컴퓨터에서 프로필 사용 섹션을 참조하세요.

  7. zip 파일인 getting-started.zip를 다운로드하십시오. zip 파일에는 시작 데이터세트와 설정 스크립트가 포함되어 있습니다.

  8. getting-started.zip 파일의 압축을 풉니다.

  9. 명령 프롬프트에서 다음을 실행합니다.

    1. getting-started 폴더로 이동합니다.

    2. 다음 명령을 실행하여 매니페스트 파일을 생성하고 학습 이미지와 이미지 마스크를 4단계에서 기록한 Amazon S3 경로에 업로드합니다.

      python getting_started.py S3-URI-from-step-4
    3. 스크립트가 완료되면 스크립트가 Create dataset using manifest file: 다음에 표시하는 train.manifest 파일의 경로를 기록해 둡니다. 경로는 s3://path to getting started folder/manifests/train.manifest과 유사해야 합니다.

2단계:모델 생성

이 절차에서는 이전에 Amazon S3 버킷에 업로드한 이미지와 매니페스트 파일을 사용하여 프로젝트와 데이터 세트를 생성합니다. 그런 다음 모델을 생성하고 모델 학습의 평가 결과를 확인합니다.

시작하기 매니페스트 파일에서 데이터 세트를 생성하므로 데이터 세트 이미지에 레이블을 지정할 필요가 없습니다. 자체 이미지로 데이터 세트를 만들 때는 이미지에 레이블을 지정해야 합니다. 자세한 내용은 이미지 레이블 지정 섹션을 참조하세요.

중요

모델을 성공적으로 학습시키는 데에만 비용이 부과됩니다.

모델을 생성하는 방법
  1. https://console.aws.amazon.com/lookoutvision/에서 Amazon Lookout for Vision을 엽니다.

  2. 1단계: 매니페스트 파일 생성 및 이미지 업로드에 Amazon S3 버킷을 생성한 동일한 AWS 지역에서 작업 중인지 확인합니다. 지역을 변경하려면 탐색바에서 현재 표시된 지역의 이름을 선택합니다. 그런 다음 전환하려는 지역을 선택합니다.

  3. 시작하기를 선택합니다.

    Amazon Lookout for Vision service description and Get started button highlighted.
  4. 프로젝트 섹션에서 프로젝트 만들기를 선택합니다.

    Dashboard overview with empty statistics and a "Create project" button highlighted.
  5. 프로젝트 생성 페이지에서 다음을 수행합니다.

    1. 프로젝트 이름getting-started을 입력합니다.

    2. 프로젝트 만들기를 선택합니다.

    Project creation interface for anomaly detection model with project name input field.
  6. 프로젝트 페이지의 작동 방식 섹션에서 데이터 세트 생성을 선택합니다.

    Getting-started info page showing steps to prepare dataset and train model.
  7. 데이터베이스 생성 페이지에서 다음을 수행합니다.

    1. 단일 데이터 세트 만들기를 선택합니다.

    2. 이미지 원본 구성 섹션에서 SageMaker Ground Truth로 레이블이 지정된 이미지 가져오기를 선택합니다.

    3. .manifest 파일 위치에는 1단계: 매니페스트 파일 생성 및 이미지 업로드의 6.c단계에서 기록해 둔 매니페스트 파일의 Amazon S3 위치를 입력합니다. Amazon S3 위치는 s3://path to getting started folder/manifests/train.manifest과 비슷해야 합니다.

    4. 데이터 세트 생성을 선택합니다.

    Dataset configuration options with single dataset creation selected and image import methods.
  8. 프로젝트 세부 정보 페이지의 이미지 섹션에서 데이터 세트 이미지를 확인합니다. 각 데이터세트 이미지에 대한 분류 및 이미지 분할 정보 (마스크 및 예외 항목 레이블)를 볼 수 있습니다. 이미지를 검색하거나, 레이블 지정 상태 (레이블 지정/레이블 없음) 별로 이미지를 필터링하거나, 이미지에 할당된 예외 항목 레이블을 기준으로 이미지를 필터링할 수도 있습니다.

    Image labeling interface showing three chocolate chip cookies with cracks, labeled as anomalies.
  9. 프로젝트 세부 정보 페이지에서 모델 학습을 선택합니다.

    Getting-started page with instructions to prepare datasets and a Train model button.
  10. 모델 훈련 페이지에서 모델 훈련을 선택합니다.

  11. 모델을 훈련하고 싶으신가요? 대화 상자에서 모델 훈련을 선택합니다.

  12. 프로젝트 모델 페이지에서 학습이 시작된 것을 확인할 수 있습니다. 모델 버전의 상태 열을 확인하여 현재 상태를 확인하십시오. 모델 학습을 완료하는 데 최소 30분 걸립니다. 상태가 학습 완료로 변경되면 학습이 성공적으로 완료된 것입니다.

  13. 훈련이 끝나면 모델 페이지에서 모델 1을 선택합니다.

    Models page showing one model named Model 1 with Training complete status.
  14. 모델의 세부 정보 페이지에서 성능 지표 탭의 평가 결과를 확인하십시오. 다음에 사용할 수 있는 지표는 다음과 같습니다.

    • 모델에서 수행한 분류 예측에 대한 전체 모델 성능 지표 (정밀도, 재현율, F1 점수)

      Model performance metrics showing 100% precision, recall, and F1 score for 20 test images.
    • 테스트 이미지에서 발견된 예외 항목 레이블에 대한 성능 지표 (평균 IOU, F1 점수)

      Table showing performance metrics for "cracked" label with 10 test images, 86.1% F1 score, and 74.53% Average IoU.
    • 테스트 이미지에 대한 예측 (분류, 분할 마스크, 예외 항목 레이블)

      Three chocolate chip cookies on dark surfaces, two with green anomalies labeled as "cracked".

    모델 학습은 비결정적이므로 평가 결과가 이 페이지에 표시된 결과와 다를 수 있습니다. 자세한 내용은 Amazon Lookout for Vision 모델 개선 섹션을 참조하세요.

3단계: 모델 시작

이 단계에서는 이미지를 분석할 준비가 되도록 모델 호스팅을 시작합니다. 자세한 내용은 훈련된 Amazon Lookout for Vision 모델 실행 섹션을 참조하세요.

참고

모델을 실행하는 시간에 따라 요금이 청구됩니다. 5단계: 모델 중지에서 모델을 정지시키면 됩니다.

모델을 시작하려면
  1. 모델의 세부 정보 페이지에서 모델 사용을 선택한 다음 클라우드에 API 통합을 선택합니다.

    Model 1 page with "Use model" button and dropdown option "Integrate API to the cloud".
  2. AWS CLI명령 섹션에서 start-model AWS CLI 명령을 복사합니다.

    AWS CLI command to start a Lookout for Vision model with project and version details.
  3. Amazon Lookout for Vision 콘솔을 사용하는 AWS 지역과 동일한 지역에서 실행되도록 AWS CLI이 구성되어 있는지 확인하십시오. AWS CLI가 사용하는 AWS 지역을 변경하려면 SDK를 설치합니다. AWS을 참조하십시오.

  4. 명령 프롬프트에서 start-model 명령을 입력하여 모델을 시작합니다. lookoutvision 프로필을 사용하여 자격 증명을 가져오려면 --profile lookoutvision-access 매개 변수를 추가하십시오. 예:

    aws lookoutvision start-model \ --project-name getting-started \ --model-version 1 \ --min-inference-units 1 \ --profile lookoutvision-access

    직접 호출이 성공하면 다음 출력이 표시됩니다.

    { "Status": "STARTING_HOSTING" }
  5. 콘솔로 돌아가 탐색 창에서 모델을 선택합니다.

    AWSLookout for Vision console showing CLI commands to start model and detect anomalies.
  6. 상태 열의 모델 (모델 1) 상태가 호스팅됨으로 표시될 때까지 기다리십시오. 프로젝트에서 이전에 모델을 학습시킨 적이 있다면 최신 모델 버전이 완료될 때까지 기다리세요.

    Model 1 with Hosted status, 100% precision and recall, created on September 21st, 2022.

4단계: 이미지 분석

이 단계에서는 모델을 사용하여 이미지를 분석합니다. 컴퓨터의 Lookout for Vision 설명서 리포지토리에 있는 시작하기 test-images 폴더에서 사용할 수 있는 예제 이미지를 제공합니다. 자세한 내용은 이미지에서 이상 탐지 섹션을 참조하세요.

이미지를 분석하려면
  1. 모델 페이지에서 모델 1을 선택합니다.

    Models table showing Model 1 with Hosted status, creation date, and 100% precision and recall.
  2. 모델의 세부 정보 페이지에서 모델 사용을 선택한 다음 클라우드에 API 통합을 선택합니다.

    Model 1 page with "Use model" button and dropdown option "Integrate API to the cloud".
  3. AWS CLI명령 섹션에서 detect-anomalies AWS CLI 명령을 복사합니다.

    AWS CLI command for detect-anomalies with parameters for project, model version, and image file.
  4. 명령 프롬프트에서 이전 단계의 detect-anomalies 명령을 입력하여 비정상 이미지를 분석합니다. 컴퓨터의 시작하기 test-images 폴더에서 변칙 이미지를 --body 매개 변수에 지정하십시오. lookoutvision 프로필을 사용하여 자격 증명을 가져오려면 --profile lookoutvision-access 매개 변수를 추가하십시오. 예:

    aws lookoutvision detect-anomalies \ --project-name getting-started \ --model-version 1 \ --content-type image/jpeg \ --body /path/to/test-images/test-anomaly-1.jpg \ --profile lookoutvision-access

    다음과 같이 출력됩니다

    { "DetectAnomalyResult": { "Source": { "Type": "direct" }, "IsAnomalous": true, "Confidence": 0.983975887298584, "Anomalies": [ { "Name": "background", "PixelAnomaly": { "TotalPercentageArea": 0.9818974137306213, "Color": "#FFFFFF" } }, { "Name": "cracked", "PixelAnomaly": { "TotalPercentageArea": 0.018102575093507767, "Color": "#23A436" } } ], "AnomalyMask": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAMACA......" } }
  5. 다음은 이 출력에 대한 유의 사항입니다.

    • IsAnomalous은 예측된 분류에 대한 부울입니다. 이미지가 비정상이면 true를 실행하고, 그렇지 않으면 false을 실행하십시오.

    • Confidence은 Amazon Lookout for Vision이 예측에 대해 갖는 신뢰도를 나타내는 부동 소수점 값입니다. 0은 가장 낮은 신뢰도이고 1은 가장 높은 신뢰도입니다.

    • Anomalies은 이미지에서 발견된 이상 현상의 목록입니다. Name는 예외 항목 레이블입니다. PixelAnomaly은 예외 항목의 총 백분율 면적 (TotalPercentageArea) 과 예외 항목 레이블의 색상 (Color)을 포함합니다. 목록에는 이미지에서 발견된 예외 항목 이외의 영역을 포함하는 “배경” 예외 항목도 포함되어 있습니다.

    • AnomalyMask은 분석된 영상에서 비정상 현상의 위치를 보여주는 마스크 이미지입니다.

    다음 예제와 같이 응답의 정보를 사용하여 분석된 이미지와 예외 마스크를 혼합하여 표시할 수 있습니다. 예제 코드는 분류 및 세분화 정보 표시 단원을 참조하세요.

    Chocolate chip cookie with green segmentation highlighting cracked areas, labeled as anomalous.
  6. 명령 프롬프트에서 시작하기 test-images 폴더의 일반 이미지를 분석합니다. lookoutvision 프로필을 사용하여 자격 증명을 가져오려면 --profile lookoutvision-access 매개 변수를 추가하십시오. 예:

    aws lookoutvision detect-anomalies \ --project-name getting-started \ --model-version 1 \ --content-type image/jpeg \ --body /path/to/test-images/test-normal-1.jpg \ --profile lookoutvision-access

    다음과 같이 출력됩니다

    { "DetectAnomalyResult": { "Source": { "Type": "direct" }, "IsAnomalous": false, "Confidence": 0.9916400909423828, "Anomalies": [ { "Name": "background", "PixelAnomaly": { "TotalPercentageArea": 1.0, "Color": "#FFFFFF" } } ], "AnomalyMask": "iVBORw0KGgoAAAANSUhEUgAAAkAAAA....." } }
  7. 출력에서 IsAnomalousfalse 값은 이미지를 비정상이 없는 것으로 분류한다는 점에 유의하십시오. Confidence을 사용하면 분류에 대한 신뢰도를 결정하는 데 도움이 됩니다. 또한 Anomalies 배열에는 background 예외 항목 레이블만 있습니다.

5단계: 모델 중지

이 단계에서는 모델 호스팅을 중지합니다. 모델이 실행되는 시간만큼 요금이 부과됩니다. 이 모델을 사용하지 않는 경우 이를 중지해야 합니다. 다음 번에 필요할 때 모델을 다시 시작할 수 있습니다. 자세한 내용은 Amazon Lookout for Vision 모델 시작하기 섹션을 참조하세요.

모델을 중지하려면
  1. 탐색 창에서 모델을 선택합니다.

    AWSLookout for Vision console showing CLI commands to start model and detect anomalies.
  2. 모델 페이지에서 모델 1을 선택합니다.

    Models table showing Model 1 with Hosted status, creation date, and 100% precision and recall.
  3. 모델의 세부 정보 페이지에서 모델 사용을 선택한 다음 클라우드에 API 통합을 선택합니다.

    Model 1 page with "Use model" button and dropdown option "Integrate API to the cloud".
  4. AWS CLI명령 섹션에서 stop-model AWS CLI 명령을 복사합니다.

    Copy button icon next to AWS CLI command for stopping a Lookout for Vision model.
  5. 명령 프롬프트에서 이전 단계의 stop-model AWS CLI 명령을 입력하여 모델을 중지합니다. lookoutvision 프로필을 사용하여 자격 증명을 가져오려면 --profile lookoutvision-access 매개 변수를 추가하십시오. 예:

    aws lookoutvision stop-model \ --project-name getting-started \ --model-version 1 \ --profile lookoutvision-access

    직접 호출이 성공하면 다음 출력이 표시됩니다.

    { "Status": "STOPPING_HOSTING" }
  6. 콘솔로 돌아가서 왼쪽 탐색 페이지에서 모델을 선택합니다.

  7. 상태 열의 모델 상태가 학습 완료일 때 모델이 중지된 것입니다.

다음 단계

직접 만든 이미지로 모델을 만들 준비가 되면 먼저 프로젝트를 생성합니다.의 지침을 따르세요. 지침에는 Amazon Lookout for Vision 콘솔 및 AWS SDK를 사용하여 모델을 생성하는 단계가 포함되어 있습니다.

다른 예제 데이터세트를 사용해 보려면 예제 코드 및 데이터세트을 참조하십시오.