AI 시스템 구축: 파이프라인 구성 – 데이터 전처리 → 학습 → 평가 → 배포
ㅁ 파이프라인 구성
ㅇ 정의:
– 머신러닝 모델 개발 전 과정을 자동화·표준화하여 데이터 수집부터 모델 배포까지 일련의 단계를 체계적으로 연결한 프로세스.
ㅇ 특징:
– 단계별 모듈화로 재사용성과 유지보수성 향상.
– 데이터 품질 관리와 모델 버전 관리 용이.
– 자동화 도구(CI/CD, MLOps)와 결합 시 효율 극대화.
ㅇ 적합한 경우:
– 반복적인 모델 개발·배포가 필요한 환경.
– 데이터 변경 주기가 빠르고 모델 재학습이 빈번한 서비스.
ㅇ 시험 함정:
– 파이프라인 구성 요소 순서를 혼동하는 문제.
– ‘배포’를 ‘평가’ 이전 단계로 잘못 표기하는 함정.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: 데이터 전처리 → 학습 → 평가 → 배포
– X: 데이터 전처리 → 평가 → 학습 → 배포
================================
1. 데이터 전처리
ㅇ 정의:
– 원천 데이터에서 결측치 처리, 이상치 제거, 스케일링, 인코딩 등 모델 학습에 적합한 형태로 가공하는 단계.
ㅇ 특징:
– 데이터 품질이 모델 성능에 직접적인 영향.
– 자동화 스크립트로 처리 시 일관성 확보.
ㅇ 적합한 경우:
– 원천 데이터가 비정형/노이즈가 많을 때.
– 다양한 데이터 소스를 통합해야 할 때.
ㅇ 시험 함정:
– 전처리와 피처 엔지니어링을 혼동.
– 전처리 없이 학습 가능하다고 잘못 기술.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: 결측치 제거는 데이터 전처리 단계에서 수행된다.
– X: 데이터 전처리는 모델 학습 후에 수행한다.
================================
2. 학습
ㅇ 정의:
– 전처리된 데이터를 이용해 알고리즘이 패턴을 학습하고 모델 파라미터를 최적화하는 단계.
ㅇ 특징:
– 하이퍼파라미터 설정, 최적화 알고리즘 선택이 중요.
– 과적합 방지를 위한 검증 데이터 활용.
ㅇ 적합한 경우:
– 충분한 양질의 학습 데이터가 확보된 경우.
ㅇ 시험 함정:
– 학습과 평가 데이터셋을 혼용.
– 학습 단계에서 테스트 데이터를 사용.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: 학습 단계에서는 검증 데이터를 활용해 과적합을 방지한다.
– X: 학습 단계에서는 테스트 데이터를 활용해 모델을 튜닝한다.
================================
3. 평가
ㅇ 정의:
– 학습된 모델의 성능을 검증 데이터 또는 테스트 데이터를 사용하여 측정하는 단계.
ㅇ 특징:
– 정확도, 정밀도, 재현율, F1-score 등 다양한 지표 사용.
– 실제 서비스 환경과 유사한 데이터로 평가 필요.
ㅇ 적합한 경우:
– 모델 배포 전 성능 검증이 필요한 경우.
ㅇ 시험 함정:
– 평가 지표의 정의와 계산 방법 혼동.
– 평가 단계 없이 바로 배포하는 흐름 제시.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: F1-score는 정밀도와 재현율의 조화평균이다.
– X: 평가 단계에서는 오직 정확도만 사용한다.
================================
4. 배포
ㅇ 정의:
– 학습 및 평가를 거친 모델을 실제 운영 환경에 적용하여 서비스하는 단계.
ㅇ 특징:
– API, 웹 서비스, 모바일 앱 등 다양한 형태로 제공 가능.
– 모니터링과 롤백 전략 필요.
ㅇ 적합한 경우:
– 모델 성능이 기준치를 충족하고 안정성이 확보된 경우.
ㅇ 시험 함정:
– 배포 후 모니터링을 생략하는 경우.
– 배포를 평가 이전에 수행한다고 기술.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: 모델 배포 후 실시간 모니터링을 통해 성능 저하를 감지한다.
– X: 모델은 평가 전에 바로 배포한다.
ㅁ 추가 학습 내용
자주 혼동되는 개념 구분
– 데이터 전처리: 원시 데이터를 분석 및 학습에 적합한 형태로 변환하는 과정. 결측치 처리, 이상치 제거, 스케일링, 정규화 등이 포함됨.
– 피처 엔지니어링: 모델 성능 향상을 위해 새로운 피처를 생성하거나 기존 피처를 변환·선택하는 과정. 도메인 지식을 활용한 피처 생성, 다항식 피처 변환, 차원 축소 등이 포함됨.
학습과 튜닝의 구분
– 학습(Training): 주어진 데이터셋을 이용해 모델이 패턴을 학습하도록 가중치를 최적화하는 과정.
– 튜닝(Tuning): 모델의 하이퍼파라미터를 조정하여 성능을 개선하는 과정. 그리드 서치, 랜덤 서치, 베이지안 최적화 등이 사용됨.
평가 지표의 종류와 사용 목적
– 분류 문제: 정확도, 정밀도, 재현율, F1 스코어, ROC-AUC 등. 모델의 분류 성능과 클래스 불균형 상황에서의 성능을 평가.
– 회귀 문제: 평균제곱오차(MSE), 평균절대오차(MAE), 결정계수(R²) 등. 예측값과 실제값의 차이를 측정.
배포 전략
– A/B 테스트: 두 가지 이상의 모델 또는 버전을 동시에 배포하여 성능을 비교하고, 더 나은 쪽을 선택하는 방식.
– Canary 배포: 새로운 버전을 일부 사용자에게만 점진적으로 배포하여 문제 발생 시 빠르게 롤백할 수 있는 방식.
MLOps 관점의 도구와 방법
– 파이프라인 자동화 도구: Kubeflow, MLflow, Airflow 등을 사용하여 데이터 수집, 전처리, 학습, 배포 과정을 자동화.
– 버전 관리: DVC(Data Version Control), Git-LFS 등을 활용하여 데이터셋과 모델 파일의 버전을 관리.
드리프트 감지 기법
– 데이터 드리프트: 입력 데이터의 분포가 시간이 지남에 따라 변하는 현상 감지. 통계적 검정(KS-test, Chi-square test), 분포 비교(KL divergence) 등을 활용.
– 모델 드리프트: 모델의 예측 성능이 시간에 따라 저하되는 현상 감지. 주기적 재평가, 성능 모니터링 지표 추적 등을 활용.