About me
home
Portfolio
home
💡

초기 시스템 구상

AWS S3, Lambda, SageMaker 통합

실시간 이상치 탐지 시스템을 구축

1.
S3 버킷 설정
이상치 데이터 이미지를 저장할 S3 버킷을 생성하고 AWS Management Console에 로그인하여 S3 서비스를 선택하고 새 버킷을 생성한다.
2.
SageMaker 모델 학습 및 엔드포인트 배포
SageMaker를 사용하여 Reverse Distillation 모델을 학습시키고, 실시간 추론을 위한 엔드포인트로 배포한다.
3.
Lambda 함수 생성
S3에 이상치 데이터 이미지가 업로드될 때마다 실행될 Lambda 함수를 생성한다. 이 함수는 S3의 이벤트를 감지하고, 이벤트 정보를 활용하여 SageMaker 엔드포인트를 호출한다. AWS Management Console에서 Lambda 서비스를 선택하고 새로운 함수를 생성한다. 함수 코드는 Python SDK를 사용하여 SageMaker 엔드포인트를 호출하는 내용으로 작성해야 한다.
import boto3 def lambda_handler(event, context): # S3 이벤트 정보 추출 bucket = event['Records'][0]['s3']['bucket']['name'] key = event['Records'][0]['s3']['object']['key'] # SageMaker runtime에 연결 runtime = boto3.client('sagemaker-runtime') # SageMaker 엔드포인트 호출 response = runtime.invoke_endpoint( EndpointName='Your-SageMaker-Endpoint-Name', ContentType='image/png', Body=boto3.resource('s3').Object(bucket, key).get()['Body
Python
복사
4.
S3 버킷에서 Lambda 함수로 이벤트 트리거 설정
S3 버킷을 선택하고 'Properties' 탭으로 이동한 후, 'Event Notifications'를 추가한다. 새 이벤트 알림을 생성하고, 이벤트 발생 시 호출될 Lambda 함수를 지정한다.
이 절차를 통해 AWS S3, Lambda, SageMaker가 통합된 실시간 이상치 탐지 시스템이 설정된다. 이상치 데이터 이미지가 S3 버킷에 업로드되면 Lambda 함수가 자동으로 실행되어 SageMaker 엔드포인트를 호출하고, Reverse Distillation 모델이 이미지에 대한 추론을 수행한다.