이상 탐지를 위한 Amazon Lookout for Vision 교육 및 배포를 자동화합니다. - AWS 권장 가이드

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

이상 탐지를 위한 Amazon Lookout for Vision 교육 및 배포를 자동화합니다.

작성자: 마이클 월너 (AWS), 가브리엘 로드리게스 가르시아 (AWS), 캉캉 왕 (AWS), 슈크라트 코드자예프 (AWS), 산제이 아쇼크 (AWS), 야신 자푸리 (AWS), 가브리엘 질카 (AWS)

코드 리포지토리 detection-using-amazon-lookout: - 비전을 위한 automated-silicon-wafer-anomaly

환경: 프로덕션

기술: 기계 학습 및 AI, 클라우드 네이티브, DevOps

AWS 서비스: AWS, AWS CloudFormation, AWS, AWS CodeBuild, AWS CodeCommit, AWS CodePipeline Lambda, Amazon Lookout for Vision

요약

이 패턴은 시각적 검사를 위한 Amazon Lookout for Vision 기계 학습 모델의 교육 및 배포를 자동화하는 데 도움이 됩니다. 이 패턴은 실리콘 웨이퍼의 이상 감지에 중점을 두고 있지만 다양한 제품 및 산업에서 사용할 수 있도록 솔루션을 조정할 수 있습니다.

2020년, 세계 최대 반도체 제조업체 중 한 곳의 연간 생산 능력은 12인치 상당 웨이퍼 1,200만 장을 넘어섰습니다. 이러한 웨이퍼의 품질과 신뢰성을 보장하기 위한 육안 검사는 생산 공정의 필수 단계입니다. 수동 샘플링이나 통계적 측정에 의존하는 구식 레거시 도구를 사용하는 것과 같은 기존의 육안 검사 방법은 시간이 많이 걸리고 비효율적일 수 있습니다. 이 프로세스의 규모와 광범위한 반도체 산업에 미치는 중요성을 고려할 때 고급 인공 지능 (AI) 기술을 사용하여 육안 검사를 최적화하고 자동화할 수 있는 상당한 기회가 있습니다.

Lookout for Vision을 사용하면 이미지 및 개체 검사 프로세스를 간소화하여 비용이 많이 들고 일관되지 않은 수동 검사의 필요성을 줄일 수 있습니다. 이 솔루션은 품질 관리를 개선하고 정확한 결함 및 손상 평가를 촉진하며 산업 표준 준수를 보장합니다. 또한 기계 학습에 대한 전문 지식이 없어도 Lookout for Vision 검사 프로세스를 자동화할 수 있습니다.

이 솔루션을 사용하면 컴퓨터 비전 모델을 모든 시스템에 통합할 수 있습니다. 예를 들어, 사용자가 이미지를 업로드하고 이미지를 분석하여 결함이 있는지 분석할 수 있는 웹 사이트에 모델을 통합할 수 있습니다. 다음 이미지는 화학적 기계적 연마 (CMP) 공정에서 스크래치 결함이 있는 실리콘 웨이퍼의 예를 보여줍니다. Lookout for Vision을 사용하여 이러한 이상 현상을 탐지할 수 있습니다. 예를 들어, Lookout for Vision은 이 이미지에서 99.04% 신뢰도로 이상 징후를 감지했습니다.

스크래치 결함이 있는 실리콘 웨이퍼

이 솔루션은 Amazon Lookout for Vision을 사용하여 이벤트 기반 추적 솔루션 구축하기 블로그 게시물에 설명된 코드와 사용 사례를 기반으로 합니다. 이 솔루션은 CI/CD 파이프라인 자동화를 활성화하고 오픈 소스 Amazon Lookout for Vision Python SDK () 를 통합하도록 원본 코드를 수정합니다. GitHub Python SDK에 대한 자세한 내용은 Python SDK 블로그 게시물을 사용하여 Amazon Lookout for Vision 모델의 구축, 교육 및 배포를 참조하십시오.

사전 조건 및 제한 사항

사전 조건

아키텍처

대상 아키텍처

이 솔루션의 아키텍처 다이어그램

이 아키텍처는 CI/CD 파이프라인을 통한 Amazon Lookout for Vision 모델의 빌드, 교육 및 배포 자동화를 보여줍니다. 이 다이어그램은 다음 워크플로를 보여줍니다.

  1. 코드는 Amazon CodeCommit 리포지토리에 저장됩니다. 개발자는 코드를 수정하거나 입력 이미지를 변경하거나 자동화 파이프라인에 다른 단계를 추가할 수 있습니다.

  2. 솔루션을 배포하거나 CodeCommit 리포지토리의 기본 브랜치를 업데이트한 후 Amazon은 CodePipeline 자동으로 코드를 Amazon에 푸시합니다. CodeBuild

  3. CodeBuild Lookout for Vision Python SDK를 사용하여 이미지 분류 모델을 훈련하고 배포합니다. 교육에 사용되는 이미지는 Amazon Simple Storage 서비스 (Amazon S3) 버킷에 저장됩니다. CodeBuild 이러한 이미지를 자동으로 다운로드하여 저장합니다. 솔루션을 필요에 맞게 사용자 정의하기 위해 자체 이미지를 가져올 수 있습니다.

  4. Lookout for Vision 모델은 AWS Lambda를 통해 최종 사용자에게 공개됩니다. 하지만 이 접근 방식에만 국한되는 것은 아닙니다. IoT 디바이스의 엣지에 Lookout for Vision을 배포하거나 일정에 따라 배치 프로세스로 실행하여 예측을 생성할 수도 있습니다.

도구

서비스

  • CodeBuildAWS는 소스 코드를 컴파일하고, 단위 테스트를 실행하고, 배포할 준비가 된 아티팩트를 생성하는 데 도움이 되는 완전관리형 빌드 서비스입니다.

  • CodeCommitAWS는 자체 소스 제어 시스템을 관리할 필요 없이 Git 리포지토리를 비공개로 저장하고 관리할 수 있는 버전 제어 서비스입니다.

  • AWS는 소프트웨어 릴리스의 여러 단계를 신속하게 모델링 및 구성하고 소프트웨어 변경 사항을 지속적으로 릴리스하는 CodePipeline 데 필요한 단계를 자동화하도록 지원합니다.

  • AWS Key Management Service(AWS KMS)를 사용하면 암호화 키를 생성하고 제어하여 데이터를 보호할 수 있습니다.

  • Lambda는 서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행할 수 있도록 도와주는 컴퓨팅 서비스입니다. 필요할 때만 코드를 실행하며 자동으로 확장이 가능하므로 사용한 컴퓨팅 시간만큼만 비용을 지불합니다.

  • Amazon Lookout for Vision은 컴퓨터 비전을 사용하여 산업용 제품의 시각적 감지 결과를 대규모로 정확하고 정확하게 찾습니다.

  • Amazon Simple Storage Service(S3)는 원하는 양의 데이터를 저장, 보호 및 검색하는 데 도움이 되는 클라우드 기반 객체 스토리지 서비스입니다.

코드 리포지토리

이 패턴의 코드는 실리콘 웨이퍼 이상 탐지 리포지토리에 대한 Amazon Lookout for Vision 교육 및 배포 GitHub 자동화에서 사용할 수 있습니다.

모범 사례

코드를 실험용으로 실행할 때는 Amazon Lookout for Vision 엔드포인트를 중지해야 합니다.

에픽

작업설명필요한 기술

GitHub 리포지토리를 복제하십시오.

실리콘 웨이퍼 이상 탐지 리포지토리를 위한 GitHub 자동 Amazon Lookout for Vision 교육을 복제하여 로컬 워크스테이션에 배포하십시오.

git clone https://github.com/aws-samples/automated-silicon-wafer-anomaly-detection-using-amazon-lookout-for-vision.git

Bash

가상 환경을 생성합니다.

다음 명령을 입력하여 로컬 워크스테이션에 가상 환경을 생성합니다.

python3 -m venv .venv
Python

종속 항목 설치

가상 환경을 만든 후 다음 명령을 입력하여 필요한 종속성을 설치합니다.

pip install -r requirements.txt
Python

(Linux 사용자만 해당) 가상 환경을 활성화합니다.

초기화가 완료되고 가상 환경이 생성되면 다음 명령을 사용하여 가상 환경을 활성화합니다.

source .venv/bin/activate
Bash

(Windows 사용자만 해당) 가상 환경을 활성화합니다.

초기화가 완료되고 가상 환경이 생성되면 다음 명령을 사용하여 가상 환경을 활성화합니다.

.venv\Scripts\activate.bat
PowerShell

스택을 배포합니다.

  1. AWS CDK CLI에서 다음 명령을 입력하여 AWS 템플릿을 합성합니다. CloudFormation

    cdk synth
  2. 다음 명령을 입력하여 스택을 배포합니다. CloudFormation

    cdk deploy --all --require-approval never

    모든 구성 요소가 한 번에 --all flag 설치되도록 합니다. --require-approval따라서 각 구성 요소 배포를 승인할 필요가 전혀 없습니다.

AWS 관리자
작업설명필요한 기술

예제 테스트 이벤트를 입력합니다.

  1. Lambda 콘솔의 함수 페이지를 엽니다.

  2. amazon-lookout-for-vision-project-lambda함수를 선택합니다.

  3. 테스트 탭을 선택합니다.

  4. 테스트 이벤트에서 새 이벤트 만들기를 선택합니다.

  5. 다음을 입력합니다.

  6. 테스트(Test)를 선택합니다.

    { "tbd": "tbd" }
  7. 테스트 결과를 확인하려면 실행 결과(Execution result)에서 세부 정보(Details)를 확장합니다.

일반 AWS

관련 리소스

AWS 설명서

AWS 블로그 게시물