머신러닝 vs 딥러닝
| 구분 | 머신러닝 | 딥러닝 |
| 주요 데이터 유형 | 정형 데이터 중심 | 비정형 · 반정형 데이터 중심 |
| 정형 데이터 | 매우 적합 (테이블 형태) | 가능하지만 효율은 낮음 |
| 비정형 데이터 | 직접 사용 어려움 | 매우 적합 |
| 반정형 데이터(JSON, 로그 등) | 가공 후 사용 | 가공 최소화 후 바로 사용 가능 |
| 로그 데이터 처리 | 집계·통계·파생변수 생성 필수 | 시계열·패턴 자체 학습 가능 |
| 데이터 가공 비중 | 매우 큼 (핵심 작업) | 상대적으로 적음 |
| Feature Engineering | 필수 (사람이 설계) | 거의 불필요 (모델이 학습) |
| 원본 데이터 사용 가능성 | 낮음 | 높음 |
| 텍스트 데이터 | 벡터화(TF-IDF 등) 필요 | 임베딩부터 자동 학습 |
| 이미지 데이터 | 수치화·특징 추출 필요 | 픽셀 그대로 입력 |
| 시계열/로그 패턴 | 요약 통계 중심 | 흐름·순서까지 학습 |
| 데이터 규모 | 소~중규모 | 중~대규모 |
| 연산 자원 | CPU 중심 | GPU 필수 |
| 모델 해석력 | 높음 | 낮음 (블랙박스) |
| 실무 활용 예 | 고객 이탈 예측, 매출 분석 | 음성 인식, 이상 탐지, 로그 분석 |
| 개발 속도 | 빠름 | 상대적으로 느림 |
| 모델 안정성 | 데이터 적어도 안정적 | 데이터 적으면 불안정 |
부스팅(Boosting)이란 무엇인가
부스팅은
예측력이 약한 여러 개의 모델(weak learner)을 선형 결합하여
하나의 강한 예측 모델(strong learner)을 만드는 방법임.
- 개별 모델은 성능이 낮아도 됨
- 이전 모델의 실수를 다음 모델이 보완하는 구조
- 단계적으로 학습하면서 성능을 끌어올림
👉 배깅(Bagging) 이 여러 모델을 독립적으로 학습하는 방식이라면,
👉 부스팅(Boosting) 은 순차적으로 학습하며 오류를 보정함.
그 결과,
많은 경우 부스팅이 배깅보다 예측 오차가 더 작고 성능이 우수함
에이다부스트(AdaBoost)
: 오류 데이터에 가중치를 부여하며 학습하는 대표적인 부스팅 알고리즘
학습 흐름
- 약한 학습기로 1차 분류 수행
- 틀린 데이터에 더 큰 가중치 부여
- 다음 학습기는 오류 데이터에 집중하여 학습
- 위 과정을 반복하며 모델 결합
“틀린 데이터를 더 중요하게 보면서 점점 개선하는 방식”
GBM (Gradient Boosting Machine)
가중치 업데이트를 경사하강법 기반으로 수행하는 부스팅 방법임.
- 이전 모델의 잔차(오차) 를 다음 모델이 학습
- 오차를 줄이는 방향으로 모델을 순차적으로 추가
- 손실 함수를 직접 최소화하는 구조
경사하강법(Gradient Descent)
- 오류식을 최소화하는 방향으로
- 가중치 값을 반복적으로 업데이트하는 최적화 방법
“오차를 줄이는 방향으로 모델을 계속 추가하는 부스팅”
회귀 평가 지표 정리
회귀 문제에서는 예측값과 실제값의 차이(오차) 를 수치로 평가함.
- MAE (Mean Absolute Error)
실제값과 예측값 차이의 절댓값 평균 - MSE (Mean Squared Error)
실제값과 예측값 차이를 제곱해 평균
→ 큰 오차에 더 큰 페널티 - RMSE (Root Mean Squared Error)
MSE에 루트를 씌운 값
→ 실제 단위와 동일해 해석이 쉬움 - R² (결정계수)
실제 값의 분산 대비 예측 값이 설명하는 분산의 비율
→ 1에 가까울수록 예측 성능이 높음
머신러닝·딥러닝의 공통 목표:
: 모델의 예측값과 실제값 사이의 차이(오차)를 최소화하는 것
- 훈련 데이터의 오차만 지나치게 줄이면
- 모델이 데이터를 외워서 맞추는 상태가 됨
→ 과적합(overfitting) 발생
그래서 cost 개념이 필요함
단순히 오차만 줄이는 것이 아니라,
오차 + 모델의 복잡도까지 함께 고려한 값 을 최소화해야 함.
=> Cost Function
정규화가 포함된 cost 함수
cost = 기존 오차 + α · w²
- w : 모델의 가중치
- α(알파) : 정규화 강도 조절 파라미터
- 가중치가 커질수록 페널티 부여
왜 w를 완만하게 만들어야 하는가
- w가 클 경우
- 특정 변수에 과도하게 민감
- 작은 입력 변화에도 예측값이 크게 변함
- 과적합 위험 증가
- w가 작고 완만할 경우
- 여러 변수를 고르게 반영
- 예측 곡선이 부드러움
- 일반화 성능 향상
=> 정규화를 통해 모델이 과하게 날카롭지 않게 완만해질 필요가 있음
α(알파)의 역할
- α가 작으면
- 정규화 효과 약함
- 기존 오차 최소화에 집중
- 과적합 위험 존재
- α가 크면
- 가중치를 강하게 억제
- 과적합 감소
- 과소적합 위험 증가
=> α는 성능과 안정성 사이의 균형을 조절함
XGBoost
GBM은 성능은 뛰어나지만 다음과 같은 한계가 있었음.
- 느린 수행 시간
- 과적합 규제 부재
- 대용량 데이터 처리에 비효율적
- 하이퍼파라미터 조정이 까다로움
- 하이퍼 파라미터란 ? 학습 전에 사람이 직접 설정하고 , 학습 중에는 고정된 파라미터
- 학습률(learning rate)
- 트리 깊이(max_depth)
- 정규화 강도(α, λ)
- 부스팅 반복 횟수(n_estimators)
XG Boost는 GBM에 기반하고 있지만 이 문제들 해결
=> 장점
- 뛰어난 예측 성능
- GBM 대비 빠른 수행 시간
- 과적합 규제
- Tree pruning ( 나무 가지치기)
- 자체 내장된 교차 검증
- 결손 값 자체 처리
'LG DX DATA SCHOOL' 카테고리의 다른 글
| 0123 군집분석 (0) | 2026.01.23 |
|---|---|
| 0122 시계열 분석 (1) | 2026.01.22 |
| 01/19 결정트리부터 ... (1) | 2026.01.19 |
| 01/16 사이킷런으로 시작하는 머신러닝 (0) | 2026.01.16 |
| 01/14 (1) | 2026.01.15 |