
224
살아 움직이는 머신러닝 파이프라인 설계
8.14
추론 요청 배치 처리
추론 요청 배치 처리는 텐서플로 서빙의 강력한 피처입니다. 모델 학습 중에 배치 처리는 학습
샘플을 병렬로 계산해서 학습을 가속합니다. 이와 동시에 배치의 메모리 요구 사항을
GPU
의
가용 메모리와 일치시키면 계산 하드웨어도 효율적으로 사용할 수 있습니다.
[그림
8
-
3
]과 같이 배치 처리 기능을 활성화하지 않은 상태에서 텐서플로 서빙을 실행하면 모
든 클라이언트 요청을 각각 순차적으로 처리합니다. 예를 들어 이미지를 분류할 때 첫 번째 요
청은 두 번째, 세 번째 요청을 분류하기 전에
CPU
나
GPU
에서 모델을 추론합니다. 이렇게 하
면
CPU
나
GPU
의 가용 메모리를 충분히 활용하지 못합니다.
[그림
8
-
4
]와 같이 여러 클라이언트가 모델 예측을 요청할 수 있으며, 모델 서버는 서로 다른
클라이언트 요청을 하나의 ‘배치
batch
’로 묶어 계산합니다. 배치 처리 단계를 통해 유추된 각 요
청은 시간 초과나 배치 처리 제한 때문에 단일 요청보다 약간 더 오래 걸릴 수 있습니다. 그러
나 학습 단계와 마찬가지로 배치 계산을 병렬로 처리하고 계산이 완료된 후 모든 클라이언트에
게 결과를 반환할 수 있습니다. 이렇게 하면 단일 샘플 요청보다 하드웨어를 더 효율적으로 활
용합니다.