
322
머신러닝 시스템 설계
모델을 평가하기 위해 결괏값을 생성할 모델을 능동적으로 선택하는 일입니다. 프로덕션에서
모니터링과 테스트의 목표는 모델 성능을 이해하고 업데이트 시기를 파악하는 것입니다. 그리
고 연속 학습의 목표는 업데이트를 안전하고 효율적으로 자동화하는 것입니다. 모니터링과 연
속 학습을 통해 변화하는 환경에 대해 유지보수적이고 적응적인
ML
시스템을 설계할 수 있죠.
이 장은 필자가 가장 들뜬 마음으로 작성한 장인 만큼 여러분도 흥미를 가지게 되길 바랍니다.
9.1
연속 학습 연속 학습
많은 분들이 ‘연속 학습’이라는 말을 들으면 모델이 프로덕션에서 들어오는 모든 샘플로 스스로
를 업데이트하는 훈련 패러다임을 생각합니다. 하지만 실제로 그렇게 하는 기업은 거의 없습니
다. 첫째, 모델이 신경망이라면 모든 입력 샘플로 학습하면 파괴적 망각
catastrophic
forgetting
에 취
약해집니다. 파괴적 망각은 신경망이 새로운 정보를 학습할 때 이전에 학습한 정보를 갑자기
그리고 완전히 잊어버리는 경향을 말합니다.
1,2
둘째, 훈련 비용이 더 많이 듭니다. 오늘날 하드웨어 백엔드는 대부분 배치 처리를 위해 설계됐
으므로 샘플을 하나씩 처리하면 연산 성능이 크게 낭비되고 데이터 병렬 처리를 활용할 수 없
기 때문이죠.
프로덕션에서 연속 학습을 사용하는 ...