제퍼넷 로고

Amazon SageMaker 지리 공간 기능 및 맞춤형 SageMaker 모델을 사용한 손상 평가

시간

이 게시물에서는 자연 재해 피해를 교육, 배포 및 예측하는 방법을 보여줍니다. 지리 공간 기능을 갖춘 Amazon SageMaker. 새로운 SageMaker 지리 공간 기능을 사용하여 모델을 테스트하기 위한 새로운 추론 데이터를 생성합니다. 많은 정부 및 인도주의 단체는 재난이 닥쳤을 때 빠르고 정확한 상황 인식이 필요합니다. 손상의 심각성, 원인 및 위치를 알면 최초 대응자의 대응 전략 및 의사 결정에 도움이 될 수 있습니다. 정확하고 시의적절한 정보의 부족은 구호 활동이 불완전하거나 잘못 지시될 수 있습니다.

자연재해의 빈도와 심각성이 증가함에 따라 의사 결정자와 최초 대응자에게 빠르고 정확한 피해 평가를 제공하는 것이 중요합니다. 이 예에서는 지형 공간 이미지를 사용하여 자연 재해 피해를 예측합니다. 지형 공간 데이터는 건물, 도로 또는 기타 중요한 기반 시설의 손상을 신속하게 식별하기 위해 자연 재해 직후에 사용할 수 있습니다. 이 게시물에서는 재해 피해 분류에 사용할 지리 공간 분할 모델을 교육하고 배포하는 방법을 보여줍니다. 애플리케이션을 모델 교육, 모델 배포 및 추론의 세 가지 주제로 분류합니다.

모델 훈련

이 사용 사례에서는 다음을 사용하여 맞춤형 PyTorch 모델을 구축했습니다. 아마존 세이지 메이커 건물 손상의 이미지 분할을 위해. SageMaker의 지형 공간 기능에는 활용할 수 있는 훈련된 모델이 포함되어 있습니다. 이러한 기본 제공 모델에는 구름 세분화 및 제거, 토지 덮개 세분화가 포함됩니다. 이 게시물에서는 손상 분할을 위한 사용자 지정 모델을 훈련합니다. 우리는 먼저 xView2 대회의 데이터에 대해 SegFormer 모델을 교육했습니다. SegFormer는 2021년 논문에서 소개된 트랜스포머 기반 아키텍처입니다. SegFormer: 변환기를 사용한 시맨틱 분할을 위한 간단하고 효율적인 설계. 자연어 처리 워크로드에 널리 사용되는 변환기 아키텍처를 기반으로 합니다. 그러나 SegFormer 아키텍처는 시맨틱 분할을 위해 구축되었습니다. 변압기 기반 인코더와 경량 디코더를 결합합니다. 이것은 이전 방법보다 훨씬 더 작은 모델 크기를 제공하면서 이전 방법보다 더 나은 성능을 허용합니다. 사전 훈련된 SegFormer 모델과 훈련되지 않은 SegFormer 모델 모두 인기 있는 Hugging Face 변환기 라이브러리에서 사용할 수 있습니다. 이 사용 사례에서는 사전 교육된 SegFormer 아키텍처를 다운로드하고 새 데이터 세트에서 교육합니다.

이 예에서 사용된 데이터 세트는 xView2 데이터 과학 대회. 이번 대회에서 공개한 xBD 데이터 세트, 자연 재해 전후의 건물 위치 및 손상 점수(등급)가 주석으로 추가된 고해상도 위성 이미지의 공개적으로 사용 가능한 가장 크고 높은 품질의 데이터 세트 중 하나입니다. 이 데이터 세트에는 15가지 유형의 재해(지진/쓰나미, 홍수, 화산 폭발, 산불, 바람)를 포함한 6개국의 데이터가 포함되어 있으며 850,736km^45,362의 이미지에 걸쳐 2개의 건물 주석이 포함된 지리 공간 데이터가 포함되어 있습니다. 다음 이미지는 데이터 세트의 예를 보여줍니다. 이 이미지는 건물 손상 분할 마스크가 오버레이된 재해 후 이미지를 보여줍니다. 각 이미지에는 재해 전 위성 이미지, 재해 전 건물 분할 마스크, 재해 후 위성 이미지 및 피해 등급이 있는 재해 후 건물 분할 마스크가 포함됩니다.

건물 손상 분할 마스크가 오버레이된 재해 후 이미지

이 예에서는 재해 후 피해 분류(분할 마스크)를 예측하기 위해 재해 전후 이미지만 사용합니다. 재해 전 건물 분할 마스크를 사용하지 않습니다. 이 접근 방식은 단순성을 위해 선택되었습니다. 이 데이터 세트에 접근하기 위한 다른 옵션이 있습니다. xView2 경쟁에서 우승한 여러 접근 방식은 XNUMX단계 솔루션을 사용했습니다. 첫째, 재해 전 건물 윤곽 분할 마스크를 예측합니다. 건물 윤곽과 손상 후 이미지는 손상 분류를 예측하기 위한 입력으로 사용됩니다. 분류 및 감지 성능을 개선하기 위한 다른 모델링 접근 방식을 탐색하려면 독자에게 맡기십시오.

사전 훈련된 SegFormer 아키텍처는 단일 2색 채널 이미지를 입력으로 받아들이고 분할 마스크를 출력하도록 구축되었습니다. 사전 및 사후 위성 이미지를 모두 입력으로 받아들이도록 모델을 수정할 수 있는 여러 가지 방법이 있지만 간단한 스태킹 기술을 사용하여 두 이미지를 함께 1024색 채널 이미지로 쌓았습니다. 재해 후 세분화 마스크를 예측하기 위해 xView512 교육 데이터 세트에서 표준 증강 기술을 사용하여 모델을 교육했습니다. 모든 입력 이미지의 크기를 3.2픽셀에서 XNUMX픽셀로 조정했습니다. 이것은 훈련 데이터의 공간 해상도를 더 줄이기 위한 것이었습니다. 이 모델은 단일 pXNUMXxlarge GPU 기반 인스턴스를 사용하여 SageMaker로 훈련되었습니다. 학습된 모델 출력의 예는 다음 그림에 나와 있습니다. 이미지의 첫 번째 세트는 검증 세트의 사전 및 사후 손상 이미지입니다.
유효성 검사 세트의 사전 및 사후 손상 이미지

다음 그림은 예상 피해 마스크와 실측 피해 마스크를 보여줍니다.
다음 그림은 예상 피해 마스크와 실측 피해 마스크를 보여줍니다.

언뜻 보기에 모델이 실측 데이터와 비교했을 때 성능이 좋지 않은 것처럼 보입니다. 많은 건물이 잘못 분류되어 경미한 손상이 손상되지 않은 것으로 혼동하고 단일 건물 윤곽에 대해 여러 분류를 표시합니다. 그러나 모델 성능을 검토할 때 한 가지 흥미로운 사실은 건물 손상 분류를 현지화하는 방법을 학습한 것으로 보인다는 것입니다. 각 건물은 다음과 같이 분류할 수 있습니다. No Damage, Minor Damage, Major DamageDestroyed. 예측된 손상 마스크는 모델이 중간에 있는 큰 건물을 대부분 다음과 같이 분류했음을 보여줍니다. No Damage, 그러나 오른쪽 상단 모서리는 다음과 같이 분류됩니다. Destroyed. 이 하위 건물 손상 현지화는 건물당 국지화된 손상을 표시하여 대응자를 추가로 지원할 수 있습니다.

모델 배포

훈련된 모델은 비동기식 SageMaker 추론 엔드포인트에 배포되었습니다. 더 긴 추론 시간, 더 큰 페이로드 입력 크기, 사용하지 않을 때 엔드포인트를 인스턴스 XNUMX개(요금 없음)로 축소할 수 있는 기능을 허용하기 위해 비동기식 엔드포인트를 선택했습니다. 다음 그림은 비동기 엔드포인트 배포를 위한 고급 코드를 보여줍니다. 먼저 저장된 PyTorch 상태 사전을 압축하고 압축된 모델 아티팩트를 아마존 단순 스토리지 서비스 (아마존 S3). 추론 코드 및 모델 아티팩트를 가리키는 SageMaker PyTorch 모델을 생성합니다. 모델을 로드하고 제공하려면 추론 코드가 필요합니다. SageMaker PyTorch 모델에 필요한 사용자 지정 추론 코드에 대한 자세한 내용은 다음을 참조하십시오. SageMaker Python SDK와 함께 PyTorch 사용.
비동기 끝점 배포를 위한 상위 수준 코드

다음 그림은 비동기 추론 엔드포인트에 대한 Auto Scaling 정책의 코드를 보여줍니다.
다음 그림은 비동기 추론 엔드포인트에 대한 Auto Scaling 정책의 코드를 보여줍니다.

애플리케이션에 사용할 수 있는 실시간, 배치 및 서버리스와 같은 다른 엔드포인트 옵션이 있습니다. 사용 사례에 가장 적합한 옵션을 선택하고 해당 옵션을 기억하고 싶을 것입니다. Amazon SageMaker 추론 추천자 ML(기계 학습) 끝점 구성을 권장하는 데 사용할 수 있습니다.

모델 추론

훈련된 모델이 배포되었으므로 이제 사용할 수 있습니다. SageMaker 지리 공간 기능 추론을 위해 데이터를 수집합니다. SageMaker 지리 공간 기능을 통해 여러 내장 모델을 즉시 사용할 수 있습니다. 이 예에서는 지구 관측 작업을 위해 빨간색, 녹색 및 파란색 채널을 쌓기 위해 밴드 쌓기 작업을 사용합니다. 이 작업은 Sentinel-2 데이터 세트에서 데이터를 수집합니다. 지구 관측 작업을 구성하려면 먼저 관심 위치의 좌표가 필요합니다. 둘째, 관찰의 시간 범위가 필요합니다. 이제 스태킹 기능을 사용하여 지구 관측 작업을 제출할 수 있습니다. 여기에서 빨간색, 녹색 및 파란색 밴드를 쌓아 컬러 이미지를 생성합니다. 다음 그림은 2022년 XNUMX월 중순 호주 로체스터의 홍수에서 데이터를 생성하는 데 사용된 작업 구성을 보여줍니다. 우리는 훈련된 ML 모델에 대한 입력으로 재해 전후의 이미지를 활용합니다.

작업 구성이 정의되면 작업을 제출할 수 있습니다. 작업이 완료되면 결과를 Amazon S3로 내보냅니다. 작업이 완료된 후에만 결과를 내보낼 수 있습니다. 작업 결과는 내보내기 작업 구성에서 사용자가 지정한 Amazon S3 위치로 내보낼 수 있습니다. 이제 Amazon S3의 새 데이터로 배포된 모델을 사용하여 손상 예측을 얻을 수 있습니다. 먼저 데이터를 메모리로 읽어 재난 전후 이미지를 함께 쌓습니다.
먼저 데이터를 메모리로 읽어 재난 전후 이미지를 함께 쌓습니다.

Rochester 홍수에 대한 분할 마스크의 결과는 다음 이미지에 표시됩니다. 여기에서 모델이 침수 지역 내의 위치를 ​​손상 가능성이 있는 위치로 식별했음을 볼 수 있습니다. 또한 추론 이미지의 공간 해상도는 훈련 데이터와 다릅니다. 공간 해상도를 높이면 모델 성능에 도움이 될 수 있습니다. 그러나 멀티스케일 모델 아키텍처로 인해 다른 모델의 경우와 마찬가지로 SegFormer 모델의 경우에는 문제가 되지 않습니다.

사전 사후 홍수

Rochester 홍수에 대한 세분화 마스크 결과

피해 평가

결론

이 게시물에서는 자연 재해 피해를 훈련, 배치 및 예측하는 방법을 보여주었습니다. 지리 공간 기능을 갖춘 SageMaker. 새로운 SageMaker 지리 공간 기능을 사용하여 모델을 테스트하기 위한 새로운 추론 데이터를 생성했습니다. 이 게시물의 코드는 공개되는 과정에 있으며 이 게시물은 전체 교육, 배포 및 추론 코드에 대한 링크로 업데이트됩니다. 이 애플리케이션을 사용하면 최초 대응자, 정부 및 인도주의 단체가 대응을 최적화하여 자연 재해 직후 중요한 상황 인식을 제공할 수 있습니다. 이 애플리케이션은 SageMaker와 같은 최신 ML 도구로 가능한 것의 한 예일 뿐입니다.

자체 모델을 사용하여 지금 SageMaker 지리 공간 기능을 사용해 보십시오. 우리는 당신이 다음에 무엇을 구축할지 기대합니다.


저자,

아론 셍스타켄 Amazon Web Services의 기계 학습 전문 솔루션 아키텍트입니다. Aaron은 프로덕션 머신 러닝 애플리케이션을 개발하고 배포하기 위해 모든 규모의 공공 부문 고객과 긴밀히 협력합니다. 그는 기계 학습, 기술 및 우주 탐사에 관한 모든 것에 관심이 있습니다.

spot_img

최신 인텔리전스

spot_img