당신이 사용할 수 AWS Snowball 엣지 감시, 안면 인식 및 산업 검사와 같은 광범위한 기계 학습(ML) 애플리케이션을 위한 네트워크 연결이 제한되어 있는 유람선, 석유 굴착 장치 및 공장 바닥과 같은 위치에 있는 장치. 그러나 이러한 장치의 원격 및 연결이 끊긴 특성을 고려할 때 에지에서 ML 모델을 배포하고 관리하는 것은 어려운 경우가 많습니다. 와 함께 AWS IoT 그린그래스 와 Amazon SageMaker Edge 관리자, 클라우드 훈련된 ML 모델을 사용하여 Snowball Edge 디바이스에서 로컬로 생성된 데이터에 대해 ML 추론을 수행할 수 있습니다. 로컬 추론 실행의 짧은 지연 시간과 비용 절감의 이점을 얻을 수 있을 뿐만 아니라 ML 모델을 프로덕션으로 가져오는 데 필요한 시간과 노력을 줄일 수 있습니다. Snowball Edge 디바이스 플릿 전체에서 모델 품질을 지속적으로 모니터링하고 개선하면서 이 모든 작업을 수행할 수 있습니다.
이 게시물에서는 AWS IoT Greengrass 버전 2.0 이상 및 Edge Manager를 사용하여 간단한 TensorFlow 분류 모델을 최적화, 보호, 모니터링 및 유지 관리하여 선적 컨테이너(connex)와 사람을 분류하는 방법에 대해 설명합니다.
시작하기
시작하려면 Snowball Edge 장치를 주문하십시오(자세한 내용은 AWS Snowball Edge 작업 생성). AWS IoT Greengrass 검증 AMI가 있는 Snowball Edge 디바이스를 주문할 수 있습니다.
장치를 받은 후 사용할 수 있습니다. AWS 옵스허브 눈 가족 또는 Snowball Edge 클라이언트 장치의 잠금을 해제합니다. 당신은 시작할 수 있습니다 아마존 엘라스틱 컴퓨트 클라우드 (Amazon EC2) 최신 AWS IoT Greengrass가 설치된 인스턴스 또는 Snow Family용 AWS OpsHub에서 명령을 사용합니다.
다음 요구 사항으로 AMI를 시작 및 설치하거나 주문하기 전에 Snowball 콘솔에서 AMI 참조를 제공하면 AMI의 모든 라이브러리 및 데이터와 함께 배송됩니다.
- TensorFlow, PyTorch 또는 MXNet과 같은 원하는 ML 프레임워크
- Docker(사용하려는 경우)
- AWS IoT 그린그래스
- 필요한 기타 라이브러리
AWS Snow Family 콘솔에서 Snowball Edge 디바이스를 주문할 때 AMI를 준비합니다. 지침은 다음을 참조하십시오. Amazon EC2 컴퓨팅 인스턴스 사용. 또한 다음과 같은 옵션이 있습니다. Snowball이 엣지 로케이션에 배포된 후 AMI 업데이트.
Snowball Edge에 최신 AWS IoT Greengrass 설치
디바이스에 AWS IoT Greengrass를 설치하려면 다음 단계를 완료하십시오.
- 최신 AWS IoT Greengrass 설치 Snowball Edge 장치에서. 확실하게하다
dev_tools=True
가지도록 설정되어 있습니다ggv2 cli
다음 코드를 참조하십시오.
우리는 참조 --thing-name
Edge Manager를 설정할 때 여기를 선택했습니다.
- 다음 명령을 실행하여 설치를 테스트합니다.
- AWS IoT 콘솔에서 AWS IoT Greengrass 계정으로 성공적으로 등록된 Snowball Edge 디바이스를 검증합니다.
Edge Manager로 ML 모델 최적화
Edge Manger를 사용하여 Snowball Edge에서 모델을 배포하고 관리합니다.
- 최신 AWS IoT Greengrass를 사용하여 Snowball Edge에 Edge Manager 에이전트를 설치합니다.
- ML 모델을 학습하고 저장합니다.
선택한 프레임워크를 사용하여 ML 모델을 학습하고 아마존 단순 스토리지 서비스 (Amazon S3) 버킷. 다음 스크린샷에서는 TensorFlow를 사용하여 이미지에서 connex와 사람을 분류하기 위해 다중 레이블 모델을 훈련합니다. 여기에 사용된 모델은 먼저 .tar 파일을 생성하여 S3 버킷에 저장됩니다.
모델이 저장된 후(이 경우 TensorFlow Lite) 다음을 시작할 수 있습니다. 아마존 세이지 메이커 네오 모델의 컴파일 작업 및 Snowball Edge Compute(SBE_C
).
- SageMaker 콘솔의 추론 탐색 창에서 컴파일 작업.
- 왼쪽 메뉴에서 컴파일 작업 만들기.
- 작업에 이름을 지정하고 기존 역할을 만들거나 사용합니다.
새로 생성하는 경우 AWS 자격 증명 및 액세스 관리 (IAM) 역할에서 SageMaker가 모델이 저장된 버킷에 액세스할 수 있는지 확인합니다.
- . 입력 구성 섹션 모델 아티팩트의 위치, 경로를 입력
model.tar.gz
파일을 저장한 위치(이 경우s3://feidemo/tfconnexmodel/connexmodel.tar.gz
). - 럭셔리 데이터 입력 구성, ML 모델의 입력 레이어(이름 및 모양)를 입력합니다. 이 경우 라고 합니다.
keras_layer_input
모양은 [1,224,224,3]이므로 다음을 입력합니다.{“keras_layer_input”:[1,224,224,3]}
.
- 럭셔리 기계 학습 프레임 워크선택한다. TFLite.
- 럭셔리 대상 장치선택한다. sbe_c.
- 휴가 컴파일러 옵션
- 럭셔리 S3 출력 위치, 접두사(폴더)를 사용하여 모델이 저장된 위치와 동일한 위치를 입력하십시오.
output
. 예를 들어, 우리는s3://feidemo/tfconnexmodel/output
.
- 왼쪽 메뉴에서 문의하기 컴파일 작업을 시작합니다.
이제 Edge Manager에서 사용할 모델 배포 패키지를 생성합니다.
- SageMaker 콘솔의 에지 관리자선택한다. 엣지 패키징 작업.
- 왼쪽 메뉴에서 Edge 패키징 작업 생성.
- . 작업 속성 섹션에서 작업 세부 정보를 입력합니다.
- . 모델 소스 섹션 컴파일 작업 이름, Neo 컴파일 작업에 대해 제공한 이름을 입력합니다..
- 왼쪽 메뉴에서 다음 보기.
- . 출력 구성 섹션 S3 버킷 URI, Amazon S3에서 패키지를 저장할 위치를 입력합니다.
- 럭셔리 구성 요소 이름, AWS IoT Greengrass 구성 요소의 이름을 입력합니다.
이 단계에서는 Amazon S3에서 모델을 다운로드하고 Snowball Edge의 로컬 스토리지에 압축 해제하는 AWS IoT Greengrass 모델 구성 요소를 생성합니다.
- 디바이스 그룹을 생성하여 디바이스 그룹을 관리합니다(이 경우에는 단 하나(SBE)).
- 럭셔리 IAM 역할¸ 이전에 AWS IoT Greengrass에서 생성한 역할(–tes-role-name)을 입력합니다.
IAM 콘솔로 이동하여 역할을 검색하고 필요한 정책을 추가하여 필요한 권한이 있는지 확인하십시오.
- 생성한 집합에 Snowball Edge 디바이스를 등록합니다.
- . 장치 소스 섹션에 장치 이름을 입력합니다. IoT 이름은 이전에 사용한 이름(이 경우 –thing-name MyGreengrassCore)과 일치해야 합니다.
SageMaker 콘솔에 추가 Snowball 장치를 등록하여 장치 집합에 추가하면 이러한 장치를 함께 그룹화하고 관리할 수 있습니다.
AWS IoT Greengrass를 사용하여 Snowball Edge에 ML 모델 배포
이전 섹션에서는 Snowball Edge 디바이스의 잠금을 해제하고 구성했습니다. 이제 ML 모델이 Snowball Edge의 성능에 맞게 컴파일 및 최적화되었습니다. Edge Manager 패키지는 컴파일된 모델로 생성되고 Snowball 디바이스는 집합에 등록됩니다. 이 섹션에서는 최신 AWS IoT Greengrass를 사용하여 Snowball Edge에 추론을 위한 ML 모델을 배포하는 단계를 살펴봅니다.
구성 요소들
AWS IoT Greengrass를 사용하면 구성 요소 및 관련 아티팩트의 조합으로 엣지 디바이스에 배포할 수 있습니다. 구성 요소는 메타데이터, 수명 주기, 배포 시기 및 설치 대상이 포함된 JSON 문서입니다. 또한 구성 요소는 사용할 운영 체제와 다른 OS 옵션에서 실행할 때 사용할 아티팩트를 정의합니다.
유물
아티팩트는 코드 파일, 모델 또는 컨테이너 이미지일 수 있습니다. 예를 들어 pandas Python 라이브러리를 설치하고 데이터를 변환할 코드 파일을 실행하거나 TensorFlow 라이브러리를 설치하고 추론을 위해 모델을 실행하도록 구성 요소를 정의할 수 있습니다. 다음은 추론 애플리케이션 배포에 필요한 예시 아티팩트입니다.
- gRPC proto 및 Python 스텁(모델 및 프레임워크에 따라 다를 수 있음)
- 모델을 로드하고 추론을 수행하는 Python 코드
이 두 항목은 S3 버킷에 업로드됩니다.
구성 요소 배포
배포에는 다음 구성 요소가 필요합니다.
- Edge Manager 에이전트(GA의 공개 구성 요소에서 사용 가능)
- 모델
- 어플리케이션
구성 요소를 배포하려면 다음 단계를 완료하십시오.
- AWS IoT 콘솔에서 녹색 풀선택한다. 구성 요소들, 응용 프로그램 구성 요소를 만듭니다.
- 공개 구성 요소 목록에서 Edge Manager 에이전트 구성 요소를 찾아 배포합니다.
- 애플리케이션 구성 요소에서 종속성으로 사용되는 Edge Manager에서 생성된 모델 구성 요소를 배포합니다.
- AWS IoT Greengrass 배포 목록으로 이동하고 새 배포를 생성하여 애플리케이션 구성 요소를 엣지 디바이스에 배포합니다.
기존 배포가 있는 경우 이를 수정하여 애플리케이션 구성 요소를 추가할 수 있습니다.
이제 구성 요소를 테스트할 수 있습니다.
- 애플리케이션 구성 요소와 함께 배포된 예측 또는 추론 코드에서 Snowball Edge 디바이스(예: 수신 폴더)에서 로컬로 파일에 액세스하고 예측 또는 처리된 파일을 처리된 폴더로 이동하도록 로직을 코딩합니다.
- 예측이 이루어졌는지 확인하려면 장치에 로그인하십시오.
- 루프에서 실행되도록 코드를 설정하고 들어오는 폴더에서 새 파일을 확인하고 파일을 처리하고 처리된 폴더로 이동합니다.
다음 스크린샷은 Snowball Edge 내부에 배포하기 전 파일 설정의 예입니다.
배포 후 모든 테스트 이미지에는 관심 클래스가 있으므로 처리된 폴더로 이동됩니다.
정리
모든 것을 정리하거나 이 솔루션을 처음부터 다시 구현하려면 다음을 호출하여 모든 EC2 인스턴스를 중지하십시오. TerminateInstance
Snowball Edge 디바이스에서 실행되는 EC2 호환 엔드포인트에 대한 API입니다. Snowball Edge 장치를 반품하려면 다음을 참조하십시오. Snowball Edge 전원 끄기 와 Snowball Edge 장치 반품.
결론
이 게시물에서는 선택한 AMI로 Snowball Edge 디바이스를 주문하는 방법을 안내했습니다. 그런 다음 SageMaker를 사용하여 엣지에 대한 모델을 컴파일하고, Edge Manager를 사용하여 해당 모델을 패키징하고, 최신 AWS IoT Greengrass를 사용하여 Snowball Edge에서 ML 추론을 수행하는 아티팩트가 있는 구성 요소를 생성 및 실행합니다. Edge Manager를 사용하면 Snowball Edge 디바이스 집합에 ML 모델을 배포 및 업데이트하고 Amazon S3에 저장된 입력 및 예측 데이터를 사용하여 엣지에서 성능을 모니터링할 수 있습니다. 이러한 구성 요소를 장기 실행으로 실행할 수도 있습니다. AWS 람다 모델을 가동하고 데이터가 추론을 수행할 때까지 기다릴 수 있는 함수입니다.
AWS IoT Greengrass의 여러 기능을 결합하여 MQTT 클라이언트를 생성하고 게시/구독 모델을 사용하여 다른 서비스 또는 마이크로서비스를 호출합니다. 가능성은 무한합니다.
Edge Manager 및 AWS IoT Greengrass를 사용하여 Snowball Edge에서 ML 추론을 실행하면 Snowball Edge 디바이스 집합에서 ML 모델을 최적화, 보호, 모니터링 및 유지 관리할 수 있습니다. 읽어주셔서 감사합니다. 주저하지 말고 댓글 섹션에 질문이나 의견을 남겨주세요.
AWS Snow Family, AWS IoT Greengrass 및 Edge Manager에 대해 자세히 알아보려면 다음을 확인하십시오.
저자에 관하여
라지 카디얄라 AWS WWPS 파트너 조직의 AI / ML 기술 비즈니스 개발 관리자입니다. Raj는 머신 러닝 분야에서 12 년 이상의 경험을 쌓았으며 실제 일상적인 솔루션을위한 머신 러닝을 탐색하고 콜로라도의 대자연에서 활동적인 시간을 보내는 것을 좋아합니다.
이다 베이그 그녀는 AWS Snow Family 팀에서 일하는 Amazon Web Services의 수석 제품 관리자 – 기술입니다. 그녀는 고객의 요구를 이해하고 소비자 제품을 제공하기 위해 변혁적 사고의 지휘자로 기술을 사용하는 데 열정적입니다. 일 외에도 그녀는 여행, 하이킹, 달리기를 즐깁니다.
- 100
- 9
- ACCESS
- 계정
- 활동적인
- 추가
- All
- 아마존
- Amazon EC2
- 아마존 세이지 메이커
- Amazon Web Services
- API를
- 어플리케이션
- 어플리케이션
- AWS
- 사업
- 확인
- 분류
- 암호
- 콜로라도
- 댓글
- 구성 요소
- 계산
- 지휘자
- 입/출력 라인
- 소비자
- 소비재
- 컨테이너
- 용기
- 만들기
- 순항
- 데이터
- 일
- 개발
- 디바이스
- 서류
- Edge
- 경험
- 얼굴 인식
- 공장
- 가족
- 특징
- 먼저,
- 함대
- 층
- 뼈대
- 무료
- 큰
- 대자연
- 그룹
- 여기에서 지금 확인해 보세요.
- 하이킹
- 방법
- How To
- HTTPS
- IAM
- 통합 인증
- 영상
- 산업
- 정보
- 관심
- 참여
- IOT
- IT
- 자바
- 일
- 최근
- 배우다
- 배우기
- 도서관
- 제한된
- 명부
- 하중
- 지방의
- 장소 상에서
- 위치
- 기계 학습
- 경기
- ML
- 모델
- 모니터링
- 카테고리
- NEO
- 네트워크
- 기름
- 운영
- 운영 체제
- 선택권
- 옵션
- 주문
- 기타
- 야외에서
- 포장
- 파트너
- 사람들
- 성능
- 정책
- 예측
- 예측
- 프로덕트
- 생산
- 제품
- 공개
- Python
- 파이 토치
- 품질
- 범위
- 읽기
- 감소
- 요구조건 니즈
- 달리기
- 달리는
- 현자
- 서비스
- 세트
- 배송
- 배송
- 단순, 간단, 편리
- 눈
- So
- 솔루션
- 지출
- 회전
- 스타트
- 시작
- 저장
- 저장
- 감시
- 체계
- 기술
- Technology
- 텐서 흐름
- test
- 사고력
- 시간
- 업데이트
- 기다리다
- 웹
- 웹 서비스
- 작업
- 일
- 년