Serving Model에서
define inference를 구현한다.
handle
요청 정보를 받아 적절한 응답을 반환
- 정의된 양식으로 데이터의 입력이 왔는지 확인
- 입력값에 대한 전처리 및 모델에 입력할 수 있는 형태로 변환
- 모델추론
- 모델 반환값 후처리
- 결과 반환
model.py에 핸들러 부분이 있다.
기본적인 핸들러는 있지만
밑에 스켈레톤 코드를 작성해 보려고 한다.
핸들러의 이 부분은 데이터 인풋 값 model_input을 전처리 하고, 전처리 후의 데이터를 inference하고
나온 output 데이터를 후처리기에 넣어서 반환한다.
initialize
데이터 처리나 모델, configuration을 초기화 한다.
- Configuration 등 초기화
- (Optional) 신경망을 구성하고 초기화
- 사전 학습한 모델이나 전처리기 불러오기 ( De-serialization )
preprocess
Raw input을 전처리하고 모델 입력 가능 형태로 변환한다
- raw input의 전처리
데이터 클렌징과 학습된 모델의 학습 당시 scaling이나 처리 방식과 맞춰준다
- 모델에 입력가능한 형태로 변환
vectorization, converting to id 등의 작업
inference
입력된 값에 대한 예측/ 추론
- 각 모델의 predict 방식으로 예측 확률분포 값 반환
postprocess
모델의 예측값을 response에 맞게 후처리 작업
- 예측된 결과에 대한 후처리 작업
완벽한 값을 반환하지 않기 때문에 후처리 필요
- 모델이 반환하는 확률분포이기 때문에 reponse에서 받아야 하는 가시적인 정보로 후처리 해야 함
테스트를 진행한다
Handler가 잘 작동되는 걸 확인할 수 있다.
'AWS' 카테고리의 다른 글
Flask 기반 감성분석 API 개발 (0) | 2021.12.29 |
---|---|
Trained Model Serialization, De-serialization (0) | 2021.12.29 |
머신러닝 모델에서 사용하는 API (0) | 2021.12.28 |
AWS EC2 Putty Open ssh와 연결 (0) | 2021.12.28 |
AWS EC2 생성 (0) | 2021.12.28 |