본문 바로가기
인공지능/머신러닝

[머신러닝] Gradient Boosting Regressor Model(학습 데이터 수가 적을 때 유용)

by 클레어몬트 2024. 11. 22.

데이터의 수가 적을 때는 머신러닝 모델 선택이 더욱 중요하다. 데이터가 충분하지 않다면 딥러닝 모델은 과적합(overfitting) 문제가 발생할 가능성이 높으며, 계산 자원이 낭비될 수 있다. 이러한 경우에는 Scikit-learn 라이브러리Gradient Boosting Regressor 모델이 효과적인 대안이 될 수 있다.

 

ㅇGradient Boosting Regressor: 부스팅(Boosting) 기법을 사용하여 여러 개의 약한 학습기(weak learners)를 조합해 강력한 학습기(strong learner)를 만들어내는 모델

기본적으로 결정 트리(Decision Tree)를 약한 학습기로 사용하며, 각 단계에서 이전 단계의 오류를 보완하면서 점진적으로 모델의 성능을 향상시킨다

  • 과적합 제어: 학습률(learning rate)최대 깊이(max depth)를 조정해 과적합을 방지할 수 있다.
  • 적은 데이터에서도 효과적: 트리 기반 모델은 데이터의 크기가 작아도 비교적 강력한 예측 성능을 보인다.
  • 해석 가능성: 변수 중요도(feature importance)를 제공해 모델의 의사결정을 설명할 수 있다.

 

[데이터가 적을 때 Gradient Boosting Regressor 모델을 사용하는 이유]

1. 데이터 수가 적어도 강력한 성능

Gradient Boosting Regressor는 데이터의 수가 적더라도 적은 트리(depth 제한된 결정 트리)를 조합하여 높은 예측 성능을 발휘한다. 딥러닝처럼 대량의 데이터를 요구하지 않으며, 과적합을 방지하기 위한 규제(regularization) 옵션도 다양하다.

 

2. 빠른 학습 속도

데이터가 적을 때는 학습 속도도 중요한 요소가 된다. Gradient Boosting Regressor는 딥러닝에 비해 훨씬 빠르게 학습을 완료할 수 있다. Scikit-learn 라이브러리를 사용하면 간단한 코드로 바로 적용 가능하다.

 

 

 

 

(활용 프로젝트)

https://github.com/drone-skynet/ML_model

 

GitHub - drone-skynet/ML_model: 머신러닝을 이용한 드론 배송 소요 시간 예측 모델

머신러닝을 이용한 드론 배송 소요 시간 예측 모델. Contribute to drone-skynet/ML_model development by creating an account on GitHub.

github.com