3- 데이터 검증 → 전처리 → 학습 → 평가 → 배포 → 모니터링까지 하나의 자동화된 흐름으로 연결된 시스템
4- 단순히 좋은 도구를 골라 쓰는 것이 아니라, 각 단계의 입력-출력 계약(contract)이 코드로 명시된 통합 체계
5- 핵심 속성: 재현 가능성(Reproducibility), 추적 가능성(Traceability), 자동 트리거(Automation)
6Why — 도구 모음(Tool Collection)은 왜 실패하는가
7- 재현 불가능성: 수동으로 Jupyter → 학습 서버 → 배포 스크립트를 실행하면, 누가 언제 어떤 파라미터로 실행했는지 추적 불가
8- 휴먼 에러 누적: Google 내부 조사에서 ML 시스템 장애의 60% 이상이 모델 코드가 아닌 데이터 파이프라인과 설정 오류에서 발생 (Sculley et al., 2015)
9- 스케일 한계: 모델 1개일 때는 수동 운영이 가능하지만, 10개 이상이면 팀 전체가 "배포 관리자"로 전락
10- Hidden Technical Debt: 실제 ML 시스템에서 모델 학습 코드는 전체의 5% 미만이고, 나머지 95%는 데이터 수집·검증·서빙·모니터링 등 주변 인프라(glue code)임 (Sculley et al., 2015)
11[여기에 다이어그램: ML 시스템의 구성 비율 — 중앙의 작은 "ML Code" 박스를 거대한 "Configuration", "Data Collection", "Feature Extraction", "Serving Infrastructure", "Monitoring" 블록이 둘러싸는 구조]
12도구 모음 vs 통합 시스템 — 결정적 차이 3가지
13- 1) 오케스트레이션
14 - 도구 모음: 사람이 "A 끝나면 B 실행" 판단 → 야간·휴일에 파이프라인 멈춤
15 - 통합 시스템: Airflow/Kubeflow가 DAG 기반으로 자동 실행·재시도·알림
16- 2) 메타데이터 연결
17 - 도구 모음: 학습 데이터 버전과 배포된 모델 버전의 연결이 스프레드시트에만 존재
18 - 통합 시스템: ML Metadata Store가 데이터셋 → 학습 실행 → 모델 아티팩트 → 서빙 엔드포인트를 자동 추적
19- 3) 실패 전파 차단
20 - 도구 모음: 데이터 검증 없이 오염된 데이터가 학습에 투입 → 성능 하락을 배포 후에야 발견
21 - 통합 시스템: 각 단계에 게이트(gate)가 있어 검증 실패 시 자동 중단
22How — 실제 사례로 보는 차이
23- 사례 1 (도구 모음 실패): 한 핀테크 스타트업이 sklearn + 수동 배포로 사기 탐지 모델 운영. 데이터 엔지니어가 퇴사하자 전처리 파이프라인의 피처 순서가 바뀌었고, 2주간 잘못된 예측이 프로덕션에 노출
24- 사례 2 (통합 시스템 성공): Google의 TFX 파이프라인은 데이터 검증(TFDV) → 변환(TFT) → 학습(Trainer) → 평가(TFMA) → 서빙(TF Serving)이 하나의 파이프라인으로 연결되어, 데이터 스키마 위반 시 학습 자체가 시작되지 않음 (Baylor et al., 2017)
25조직 역량 관점 — MLOps 성숙도와의 연결
26- Level 0: 수동 프로세스 — 데이터 과학자가 노트북에서 실험, 엔지니어가 수동 배포
27- Level 1: ML 파이프라인 자동화 — 학습은 자동이지만 파이프라인 코드 변경은 수동
28- Level 2: CI/CD + CT(Continuous Training) — 코드·데이터·모델 모두 자동화된 엔드투엔드 시스템
29- 대부분의 팀이 Level 0에서 Level 1로 가는 데 실패하는 이유: 도구를 도입하는 것과 도구를 시스템으로 통합하는 것은 완전히 다른 역량 (Amershi et al., 2019)
30핵심 정리
31- "좋은 도구를 쓰면 좋은 시스템이 된다"는 착각이 ML 프로젝트 실패의 가장 흔한 원인
32- 엔드투엔드 파이프라인의 본질은 도구 선택이 아니라 단계 간 계약(contract)의 자동 검증
33- Hidden Technical Debt 논문의 핵심 메시지: ML 시스템을 개선하려면 모델이 아니라 시스템 전체의 부채를 관리해야 한다 (Sculley et al., 2015)