모델링

조은별·2025년 5월 10일
post-thumbnail



모델링 전략 및 K-Fold 교차 검증 정리

이 문서는 머신러닝 강의를 실습하면서 다양한 모델을 비교하고
K-Fold Cross Validation 기법을 활용해 최적의 모델을 선택하는 과정을 정리한 내용입니다.


1. 모델링 개요

머신러닝 프로젝트에서는 하나의 모델만 사용하는 것보다
여러 모델을 실험하고 성능을 비교하는 것이 일반적입니다.

이번 실습에서는 다음과 같은 모델들을 사용했습니다.

  • Logistic Regression
  • Random Forest
  • SVM
  • Gradient Boosting
  • XGBoost
  • LightGBM

각 모델은 동일한 전처리 과정과 피처셋을 바탕으로 학습되었고,
정확도(Accuracy)를 중심으로 비교하였습니다.


2. K-Fold Cross Validation

K-Fold 교차 검증은 데이터를 K개의 구간으로 나누고,
K번의 학습-검증을 반복하여 평균 성능을 평가하는 방식입니다.

  • 한 번의 train/test split보다 더 안정적인 평가 가능
  • 과적합 여부를 사전에 파악할 수 있음

예시 (K=5일 경우):

  • Fold1 → 검증용 / Fold2~5 → 학습용
  • Fold2 → 검증용 / Fold1,3,4,5 → 학습용
  • ...
  • 총 5번 반복 → 평균 정확도 산출

3. 모델 비교 결과

아래는 K-Fold 기반 평균 정확도를 바탕으로 정리한 모델별 성능입니다.

모델평균 정확도
Logistic Regression0.843
Random Forest0.861
LightGBM0.874
SVM0.851

가장 높은 평균 정확도를 보인 LightGBM 모델을 최종 선택하였습니다.


4. 최종 모델 학습 및 예측

최종 선택된 LightGBM 모델을 전체 학습 데이터에 학습시킨 뒤,
테스트 데이터셋에 대해 예측을 수행하였습니다.

from lightgbm import LGBMClassifier

final_model = LGBMClassifier(n_estimators=100, max_depth=5, learning_rate=0.1)
final_model.fit(X_train, y_train)
y_pred = final_model.predict(X_test)

5. 정리 및 느낀 점

  • K-Fold는 단일 검증보다 훨씬 더 신뢰성 있는 평가 방식을 제공함
  • 여러 모델을 직접 비교하면서 데이터에 어떤 모델이 더 적합한지 판단하는 감각을 익힐 수 있었다
  • 실습을 통해 모델 선택의 전 과정을 경험할 수 있었고,
    향후 프로젝트에서도 같은 방식으로 모델 비교를 진행할 계획

profile
기록과 회고를 통해 성장하는 데이터, AI 엔지니어 지망생입니다.

0개의 댓글