지도학습
정답이 있는 데이터로 학습하는 방식
입력(X)과 정답(y, label)이 함께 주어진 상태에서 X가 들어오면 y를 잘 맞추도록 모델을 학습시키는 방식
X: 특징
y: 예측하고자 하는 값
1) 지도학습의 흐름
- 문제 정의
- 예측해야 할 y가 무엇인지
- 회귀인지 분류인지 결정
- 데이터 수집 및 라벨 확보
- 지도학습의 본질: y(label)가 반드시 필요
- 전처리(Preprocessing)
- 결측치 처리
- 이상치 처리
- 범주형 인코딩
- 스케일링(Standard/MinMax)
- 데이터 분포 확인(EDA)
- Train/Test 분리
- 일반적으로 70:30 또는 80:20
- 분류 문제는 stratify=y 추천
- 모델 학습(Fit)
- 여러 모델을 시도해보고 비교
- 성능 평가(Evaluation)
- 회귀 → RMSE, MAE, R²
- 분류 → Accuracy, Precision, Recall, F1, ROC-AUC
- 모델 개선(Hyperparameter Tuning)
- GridSearchCV, RandomizedSearchCV, Optuna 등
- 모델 해석(Feature Importance / Coef)
- 선형 회귀 계수
- 트리 기반 모델 Feature Importance
- 배포 및 모니터링(Serving)
- 실무에서는 꼭 필요
2) 지도학습의 전제 조건
- 라벨 양이 충분해야 한다
데이터가 너무 적으면 과적합. - Feature와 Target 간 관계가 존재해야 한다
아무 상관도 없는 데이터를 넣으면 모델은 절대 잘 맞출 수 없음. - Data Leakage 방지 필요
- 테스트 정보가 학습에 들어가면 절대 안 됨
- 미래 정보가 과거 예측에 포함되면 잘못된 모델 생성
- 적절한 평가 지표 선택
Accuracy만 보고 판단하면 위험 (특히 불균형 데이터)
3) 데이터 스케일링(Scaling)
스케일링이 필요한 이유
- 거리 기반 알고리즘(KNN, SVM)에서 필수
- 선형 회귀도 스케일이 다르면 회귀계수 해석이 왜곡됨
- 신경망에서는 학습 속도 향상
스케일링 방법
- StandardScaler
- MinMaxScaler
- RobustScaler
4) 지도학습의 두 가지 목적
① “예측(Prediction)” 목적 모델
목표: 정확도 최대화
예시: XGBoost, RandomForest, LightGBM
② “해석(Interpretation)” 목적 모델
목표: 변수 영향력 이해
예시: Linear Regression, Logistic Regression
- 해석이 필요하면 선형 계열
- 성능이 중요하면 트리 계열(XGBoost 등)
5) 교차검증(Cross Validation, CV)
왜 필요한가?
- 데이터가 적어도 안정적인 성능 평가 가능
- 특정 Train/Test split에 과도하게 의존하지 않음
유형:
- k-fold
- stratified k-fold (분류에서 필수)
- time-series split (시계열에서 필수)
회귀(Regression):
타깃 y가 연속적인 숫자일 때
- 집값 예측 (300,000원, 3억2천만 원 등)
- 시험 점수 예측 (0~100점)
- 온도 예측 (23.4°C)
- 매출액 예측
회귀에 사용하는 알고리즘:
- 선형 회귀(Linear Regression)
- 다항 회귀(Polynomial Regression)
- 랜덤 포레스트 회귀(RandomForestRegressor)
- XGBoost / LightGBM Regressor
- SVR (Support Vector Regression)
평가 지표: RMSE, MAE, R², MAPE
회귀의 주요 유형
- 선형 회귀: 데이터가 직선 형태로 분포한다고 가정하여 예측
- 다항 회귀: 데이터를 비선형적으로 모델링할 때 사용
- 릿지 회귀 / 라쏘 회귀: 다중 공선성 문제를 해결하기 위해 규제를 추가한 선형 회귀
- 서포트 벡터 회귀(SVR): SVM을 기반으로 연속적인 값 예측
- 결정 트리 회귀 / 랜덤 포레스트 회귀: 의사결정 트리를 기반으로 데이터를 나누어 예측
- 딥러닝 기반 회귀: 신경망을 활용하여 복잡한 관계 학습
분류(Classification):
타깃 y가 카테고리(클래스)일 때
- 이탈/유지 (0/1)
- 스팸/정상 메일
- 불량/정상
- 병 진단(양성/음성)
- 품종 A/B/C (다중 클래스)
이럴 때 쓰는 알고리즘:
- 로지스틱 회귀(Logistic Regression)
- KNN
- SVM (Support Vector Machine)
- 의사결정트리(Decision Tree)
- 랜덤포레스트(Random Forest)
- XGBoost / LightGBM
- 나이브 베이즈(Naive Bayes)
평가 지표: Accuracy, Precision, Recall, F1, ROC-AUC
분류의 주요 유형
- 이진 분류: 데이터가 두 개의 카테고리(예: "정상" 또는 "비정상")로 분류되는 경우
- 다중 분류: 데이터가 세 개 이상의 카테고리로 분류되는 경우
- 다중 레이블 분류: 하나의 데이터가 여러 개의 카테고리를 가질 수 있는 경우
비지도학습
정답(y, label)이 없는 데이터를 분석하여 데이터 간의 관계, 그룹, 패턴 등을 찾는 알고리즘
- 특징:
- 정답이 없기 때문에 정확도보다는 데이터 간의 유사성과 차이를 측정하는 데 중점.
- 주로 탐색적 데이터 분석(EDA)과 데이터 전처리 단계에서 활용.
비지도 학습의 주요 유형
1. 클러스터링(Clustering)
데이터를 유사한 그룹으로 묶는 작업
- 대표 알고리즘:
- K-Means, DBSCAN, 계층적 클러스터링.
2. 차원 축소(Dimensionality Reduction)
데이터를 더 간결하고 중요한 특징들만 남기는 작업
- 대표 알고리즘:
- PCA(주성분 분석), t-SNE, UMAP.
3. 연관 규칙 학습(Association Rule Learning)
데이터 간의 상관관계를 발견하는 작업
- 예시:
- 장바구니 분석, 사용자 행동 분석
강화 학습
보상을 통해 상은 최대화, 벌은 최소화하는 방향으로 행위를 강화하는 학습
'머신러닝' 카테고리의 다른 글
| 회귀 분석 (Regression Analysis) (0) | 2025.12.22 |
|---|---|
| 스케일링(Scaling) (0) | 2025.12.01 |
| 인코딩(Encoding) (0) | 2025.12.01 |