1. 머신러닝 개요
인공지능(AI) 분야 중 ML은 DL → LLM → Agent로 이어지는 흐름의 시작점입니다. 기계 학습은 공식 같은 절차가 존재합니다. 데이터를 보고 학습법을 선택해 절차적으로 진행(ETL)하고, 피처 엔지니어링을 수행한 뒤 모델 학습(알고리즘 선택 → 학습 → 평가 → 최적화 → 반복)을 거쳐 최종 산출물인 모델을 덤프하고, 그 결과물을 통해 모델 서빙(엔드포인트 구성)을 진행합니다.
- AWS SageMaker — ML/DL 모두 지원하는 AI 서비스(초고가). 노코드(Canvas), 코드(Jupyter Notebook) 환경 제공
- MLOps — 모델 이력 관리, 업그레이드 등을 담당. 대표적으로 MLFlow, Kubeflow
1.1 모델별 특징
- ML — 인간이 개발한 알고리즘을 학습
- DL — 인공신경망(사람의 뇌를 본떠 신경망 구조 설계)을 학습
- LLM — 인공신경망 기반 거대 랭귀지 모델. 자연어로 입력을 받고 대량으로 학습. 토큰의 양, 파라미터 상승 → 학습 비용 증가 → 메모리, GPU, 전력, 데이터센터 수요 증가 → 슈퍼사이클 발생
- NLP — 자연어 처리. 어텐션, 트랜스포머(Google이 발표) 등이 핵심. 트랜스포머는 인코더와 디코더로 구성되며, 디코더에 집중한 것이 GPT(GPT 만들던 사람이 만든 게 Anthropic)
- Agent — A2A 발전으로 실제 일을 수행할 CPU 수요가 급증
1.2 핵심 포인트
- 데이터 피처 엔지니어링 집중 — 모델 성능 향상이 목표
- 머신러닝 모델 학습 절차 — 머신러닝 전체 플로우(5~6단계), 모델 학습 전체 플로우(5~6단계)
- 모델 서빙/관리 — 엔드포인트 구성, MLFlow
모델 선택, 최적화, 블렌딩 등은 AutoML이 담당. 결국 경쟁의 핵심은 데이터와 피처 엔지니어링입니다.
2. 학습 방법
2.1 학습이란
- 머신러닝 — 알고리즘 성능에 영향을 크게 미치는 파라미터를 최적화(하이퍼파라미터 튜닝)
- 딥러닝 — 인공신경망 내부에서 신경망 연결 시 사용되는 파라미터(가중치, 편향)를 미세 조정. 오차역전파, 최적화 기법(GD, 경사하강법, ADAM 등) 적용
2.2 머신러닝 학습 방법 분류
| 분류 | 세부 분류 |
| 지도 학습 | 분류, 회귀 |
| 비지도 학습 | 군집(클러스터링), 차원 축소 |
| 준지도 학습 | — |
| 강화 학습 | 에이전트 발전, 유한게임(바둑·체스·장기 등) 상황에서 진행 |
강화 학습은 유니티 에이전트 등에서도 활용되며, 사람이 직접 참여하면 위험한 분야에서 발전하고 있습니다.
3. ML 모델 학습 절차
3.1 사전 준비 사항
- 미션 이해 — 풀려는 문제가 무엇인지
- 데이터 이해 — 어떤 데이터를 가지고 있는지
3.2 베이스라인 구축
소량의 데이터를 이용해 끝까지 한 번 진행해 보는 단계입니다.
- 프로토타입 / MVP / 베이스라인
- 목표 — 해당 데이터와 이를 학습한 모델 성능의 가늠좌 역할(기준치 설정, 방향성 설정용)
3.3 알고리즘 선택
사용 도구: scikit-learn, PySpark, TensorFlow, PyTorch, AWS SageMaker
3.3.1 지도 학습 — 모델의 최종 형태 결론
데이터에 정답(예측|판별)이 존재합니다.
분류
- 범주형 데이터로 정답 컬럼이 존재
- 모델 예측 → 암이다/암이 아니다 (정확도 98%) 진단
- 좋은 모델의 기준 — 정확도가 100%에 가까울수록
- 평가지표 — 정밀도, 재현율, 조화평균, AUC, ROC 등. 혼동행렬을 통해 식을 도출
정답의 형태
- 범주형(명목형, 순서형), 수치형(이산형)
분류 유형
- 이진 분류 — 암(악성/양성), 스팸메일(정상/비정상). 이상 탐지, 정답이 2개
- 다중 분류 — MBTI 예측(정답 16개). 정답 n개
성능평가
- 정확도, 정밀도, 재현율 등. 100에 가까울수록 성능이 좋음
알고리즘
- 베이스 모델 — 로지스틱 회귀, KNN, 나이브베이즈, 결정트리, SVM 등 (성능이 떨어짐)
- 앙상블 모델 — n개 모델을 결합. 기반 모델은 결정트리
- 보팅 — 하드보팅(다수결), 소프트보팅(지분율)
- 배깅 — 같은 모델 N개 구성 후 보팅 → 랜덤포레스트
- 부스팅 — XGBoost, LightGBM, CatBoost 등. 딥러닝과 유사한 성능을 내며 피처 엔지니어링 전략이 상이함
- 스태킹 — 메타 학습법. 1차 모델 결과값을 2차 모델의 데이터로 사용
최종 선택은 AutoML을 이용한 모델 학습 수행(모델 절차를 내부적으로 처리)이며, 보통 부스팅 모델 + 블렌딩 기법(모델의 비중을 다르게 하여 최종 모델 구성)으로 귀결됩니다. 보팅 기법도 종류 중 하나입니다.
회귀
- 수치형(연속형) 데이터가 결론
- 목표 — 정답을 정확하게 맞출 수는 없음. 근접하게 예측하는 것이 목표. 정답값과 예측값의 오차가 최소가 되도록 모델을 학습(오차값이 0에 가까울수록 예측 성능이 높음)
- 알고리즘
- 베이스 모델 — 로지스틱 회귀, KNN, 나이브베이즈, 결정트리, Lasso, Ridge, 엘라스틱넷 등 (성능은 그리 좋지 않음)
- 결론 — 앙상블 기법을 적용하고 AutoML로 최종 모델을 획득
전체 추세 — 모델 선택, 최적화, 블렌딩 등은 모두 AutoML이 담당. 데이터와 피처 엔지니어링으로 경쟁합니다(어느 정도의 양질 데이터를 모델 학습에 공급하는가).
3.3.2 비지도 학습 — 전처리
데이터에 정답(Label, Class, 종속변수)이 없습니다.
| 정답 측 | 피처 측 |
| Label, Class, 종속변수 | Feature, 컬럼, 독립변수 |
군집(Clustering)
알고리즘을 통해 학습하면 데이터별 라벨(그룹값)이 생성됩니다.
- KMeans — 거리 기반. 군집 평가는 실루엣 계수 활용
- Mean-Shift — 밀도 기반
- GMM — 확률 기반(데이터의 분포는 몇 개의 정규분포가 결합된 형태라는 가설)
- DBSCAN — 기하학적 분포 + 밀도 기반. 이상치 검출 기법 중 하나로 튀는 값 하나 찾아낼 때 유용
차원 축소
- 컬럼이 많다 → 학습 비용 상승 → 차원 축소로 압축 → 대표값 추출 → 컬럼을 줄여 비용 절감
- 알고리즘
- PCA(주성분 분석) — 데이터에 내재된 경향성 추출 전략
- LDA, SVD, NMF — NLP(자연어) 분야에서 성분 분리용으로 사용
3.4 EDA 및 피처 엔지니어링 수행
3.4.1 데이터 준비
ML 구조에 적합한 구조로 데이터를 준비합니다. 데이터의 목표는 모델의 성능을 높이는 것입니다.
3.4.2 EDA
- 시각화 → 데이터 전처리의 목표, 대상, 방식, 처리, 검증 등 진행
- 주장에 대한 객관화
3.4.3 데이터 처리 (데이터 파이프라인 구성 가능)
- 전처리, 가공, 재구성, 파생변수 생성 등
3.4.4 피처 엔지니어링(특성 공학)
- 통계 기반 정규 분포 처리
- 정규 분포
- 분포 처리 — 균등, 이항, 푸아송, 음이항, 지수 등
- 데이터가 특정 분포를 따르면 → 예측 가능 → 모델 예측 정확도를 높일 수 있음
- 피처 스케일링 — 데이터 전체 조정
- 종류 — StandardScaler, MinMaxScaler 등
- 예) 데이터를 0~1 사이로 조정 → 모델 학습에 도움
- 회귀 정답 처리 — 로그변환, 박스콕스변환, 여존슨 변환도 피처 스케일링에 해당
- 피처 인코딩 — 데이터를 수치로 변환
- 라벨 인코더 (LLM에서 자연어를 토큰으로 바꾸는 토크나이저에서 자주 사용)
- 원-핫 인코더 — 모든 요소가 0이고 하나만 1. 이웃값의 영향력을 제거하는 전략
- 순서(order) 인코더
- 그 외 다양한 서드파티 인코더 존재
- 전처리
- 피처 제거(선택) — 중요 피처, 상관관계 이용, VIF 지수 활용 등
- 결측치 처리
- 이상치 처리
- 피처 생성 — 파생 변수, 비지도 학습
- 중복 데이터 제거
- 피처 위치 조정(피처 간 배치) — 알고리즘에 따라 영향이 없을 수도 있음
3.4.5 데이터 최종 형태
| 구분 | 목적 |
| 학습용 | 모델의 성능 향상이 목표 |
| 검증용 | 모델 학습 시 과적합 방지. (층화) 교차 검증(k-Fold) |
| 테스트용 | 모델 성능 검증용 |
3.4.6 분할 비율
- 학습 : 테스트 = 75 : 25 (기본값, 절대값 아님)
- 학습 : 검증 : 테스트 = 50 : 25 : 25 (기본값, 변경 가능)
- 검증 데이터 — cv 값 세팅(fold 개수, 세트 수) → 3, 5, 7 등 홀수로 배치 → 다수결(하드보팅)
3.5 학습
3.5.1 특징
- 시간 — 데이터가 많거나 피처가 많으면 소요 시간 증가. DL에서는 자연어 데이터 처리에 실제적으로 더 많은 시간이 소요됨
3.5.2 기본 학습
모델 검증
- 과소/과대 적합 평가 용도
- 검증용 데이터 사용
- 훈련 데이터 설정 후 cv 값에 따라 양 결정
- 예) 훈련 데이터 100개, cv=5(5세트, 5분할) → 1세트당 데이터 20개
- 1회 학습 시 80개 활용, 20개는 검증 → 순환하면서 조합을 바꿔가며 진행
cv 값 폴드 개수 지정
- K-Fold — 예) 이진 분류에서 정답 1이 70%, 0이 30%라고 가정하면, 데이터를 분할했을 때 정답 비율 7:3이 유지되지 않을 수 있음 (랜덤, 의외성 조합)
- 층화 K-Fold — 같은 가정에서 어떤 세트라도 무조건 7:3 유지됨
3.5.3 DL(딥러닝) 학습
- 온라인 학습 / [v] 오프라인 학습
- 배치 학습 / [v] 미니 배치 학습
- [v] 전이 학습
- [v] 파인튜닝
- 컨텍스트 러닝
- [v] 제로샷 러닝
- 원샷 러닝
- [v] 퓨샷 러닝
- 에포크, 배치 사이즈
3.6 예측
- 한 번도 학습하지 않은 데이터로 예측
- 모델은 한 번도 만난 적 없는 데이터로 예측 → 모델에 영향을 미친 적이 없음
- 테스트 데이터 사용
- 지도학습
- 분류 모델 → 판별
- 회귀 모델 → 예측
- 비지도 학습
- 군집 모델 → 라벨링 → 새로운 피처 생성
- 차원 축소 모델 → 피처 축소 → 새로운 피처 생성
3.7 성능 평가
예측/판별 결과 해석을 위한 3가지 평가 지표 영역입니다.
- 분류
- 혼동행렬(오차행렬)을 이용해 지표 도출 — 정확도, 정밀도, 재현율, F1-Score, 조화평균
- ROC, AUC
- 대표 표현 — 정확도가 100%에 가까울수록 좋은 모델
- 회귀
- 손실함수(오차값)가 대표적 지표 — 정답에서 예측을 뺀 값으로 연산
- MSE, RMSE, MSLE 등의 함수 제공
- MSLE 지표 → 정답에 로그 변환 필수
- 군집
- 실루엣 계수
3.8 최적화 → 반복 (목표 도달까지 애자일 기법 적용)
평가 결과 모델 성능이 부족하다면 최적화를 진행합니다.
- 1순위 — 데이터 증가 (데이터가 부족한가?)
- 하이퍼파라미터 튜닝 (알고리즘 성능에 큰 영향을 미침)
- 미세 조정 → 학습 → 평가 → 미세 조정 → ... → 목표 도달 시 종료
- 도구
- 그리드 서치 — 최적화 값을 여러 개 지정하여 조합
- 랜덤 서치 — 최적화 값을 범위 지정하여 랜덤으로 조합
- 베이지안 최적화 — 하이퍼파라미터 튜닝의 정점. 최초에는 랜덤으로 서치하고 미세 조정 추가. 시간이 많이 소요되고 비용이 많이 발생
- 파이프라인
- 데이터 → 전처리(피처 엔지니어링) → 예측 → 평가
- Pipe
- AutoML — 전 과정(전처리/학습/예측/평가/최적화/반복)을 모두 자동화
3.9 서드파티 (AutoML 활용)
| 라이브러리 | 특징 | 지원 모델 | 기타 특징 |
| PyCaret | 간편한 API와 자동화된 ML 워크플로우 제공 | 회귀, 분류, 클러스터링, 이상 탐지, 시계열 분석 등 | 자동 하이퍼파라미터 튜닝, 모델 해석 기능, 다양한 데이터 전처리 |
| H2O.ai (H2O AutoML) | 분산 처리와 빠른 모델 학습, 다양한 알고리즘 지원 | 랜덤 포레스트, XGBoost, 딥러닝, GLM 등 | 분산 학습, 고급 모델 해석, 대규모 데이터 처리 적합 |
| TPOT | 유전 알고리즘을 활용한 모델 최적화 | Scikit-learn 모델(랜덤 포레스트, SVM 등) | 유전 알고리즘 기반 자동 모델 탐색, 하이퍼파라미터 튜닝 |
| Auto-sklearn | Scikit-learn 기반 AutoML, 튜닝과 모델 선택 자동화 | Scikit-learn 모델 | 베이지안 최적화 기반 튜닝, 앙상블 모델 자동 생성 |
| Google Cloud AutoML | 클라우드 기반 AutoML, 다양한 데이터 타입 지원 | 이미지, 텍스트, 비디오, 테이블 데이터 모델 | 클라우드 환경 학습·배포, 직관적 UI |
| MLJar | 간단한 사용법과 자동화된 ML 워크플로우 | 회귀, 분류 모델, 트리 기반 모델 등 | 웹 기반 결과 분석, 모델 배포·공유 용이 |
| Autogluon | 딥러닝과 전통 ML 모델 지원, 다양한 데이터 타입 | 이미지, 텍스트, 테이블 데이터 모델 | 효율적 하이퍼파라미터 튜닝, 자동 전처리 및 학습 |
| FastAI | 딥러닝 특화 AutoML, 빠르고 효율적 학습 | CNN, RNN, 텍스트 분석 등 딥러닝 모델 | PyTorch 기반, 학습 속도 빠르고 튜닝 간소화 |
3.10 모델 덤프 → S3 업로드, MLFlow 활용 자동화
- 모델 저장
- 파일 형태 → 다시 모델로 로드 가능한 형태
- joblib 사용
- 생성 후 AWS S3 업로드
- AWS SageMaker 내에서 진행 → 자동화
3.11 모델 서빙 / MLOps
- 모델 관리
- 생애주기 관리, 트래킹, 로깅, 엔드포인트(API 제공)
- MLFlow 제품 제공
4. 요약
| 단계 | 핵심 내용 |
| 사전 준비 | 미션 이해, 데이터 이해 |
| 베이스라인 구축 | 소량 데이터로 끝까지 한 번 진행, 기준치 설정 |
| 알고리즘 선택 | 지도(분류/회귀), 비지도(군집/차원 축소) |
| EDA & 피처 엔지니어링 | 스케일링, 인코딩, 전처리, 데이터 분할 |
| 학습 | 교차 검증(K-Fold, 층화 K-Fold) |
| 예측 | 테스트 데이터로 검증 |
| 성능 평가 | 분류(정확도·F1·AUC), 회귀(MSE·RMSE), 군집(실루엣 계수) |
| 최적화·반복 | 그리드/랜덤/베이지안 서치, AutoML |
| 모델 덤프 | joblib → S3, SageMaker |
| 모델 서빙/MLOps | 엔드포인트, MLFlow |
결국 ML 워크플로우의 모든 과정(전처리·학습·예측·평가·최적화)은 AutoML이 자동화해 갑니다. 그렇기에 경쟁의 핵심은 양질의 데이터 확보와 피처 엔지니어링에 있으며, 이는 DL → LLM → Agent로 이어지는 흐름에서도 동일하게 적용되는 원칙입니다.
'SK플래닛 ai활용 데이터엔지니어 과정 2기 > ML & DL' 카테고리의 다른 글
| DL 3 - CNN (0) | 2026.05.26 |
|---|---|
| DL 2 - 전이학습 (0) | 2026.05.26 |
| DL 1 - 딥러닝 개요 (0) | 2026.05.26 |
| ML 3 - 머신러닝 지도학습 (회귀) (0) | 2026.05.25 |
| ML 2 - 간단한 구현 (1) | 2026.05.21 |