Light GBM
XGBoost와 함께 부스팅 계열 알고리즘에서 가장 각광 받고 있다.
LightGBM의 가장 큰 장점은 XGBoost보다 학습에 걸리는 시간이 훨씬 적다.
또한 메모리 사용량도 상대적으로 적다.
LightGBM과 XGBoost의 예측 성능은 별 차이가 없다.
한 가지 단점으로 알려진 것은 적은 데이터세트에서(약 10,000건이하)는 과적합이 발생하기 쉽다.(공식문서에 기술)
GBM계열의 트리 분할 방법과 다르게 리프 중심 트리 분할(Leaf Wise)을 사용.
기존의 대부분 트리 기반 알고리즘은 트리의 깊이를 효과적으로 줄이기 위한 균형 트리 분할(Level Wise)방식을 사용
Level Wise : 균형 잡힌 트리 생성 -> 오버피팅에 강함, 균형 맞추는 시간이 필요
Leaf Wise : 최대 손실값을 가지는 리프노드 분할 -> 트리가 깊어짐 -> 예측 오류 손실 최소화
LightGBM의 XGBoost 대비 장점
더 빠른 학습과 예측 수행 시간
더 작은 메모리 사용량
카테고리 형 피처의 자동 변환과 최적 분할(원-핫 인코딩 등을 사용하기 안혹도 카테고리형 피처를 최적으로 변환하고 이에 따른 노드 분할 수행)
GPU 지원
앙상블 계열 알고리즘에서 하이퍼 파라미터 튜닝으로 성능 수치 개선이 급격하게 되는 경우는 많지 않다. 앙상블 계열 알고리즘이 과적합이나 잡음에 기본적으로 뛰어난 알고리즘이기 때문.
오버 샘플링, 언더 샘플링
오버 샘플링이 예측 성능상 더 유리한 경우기 많다.
언더 샘플링
많은 레이블을 가진 데이터 세트를 적은 레이블을 가진 데이터 세트 수준으로 감소
오버 샘플링
적은 레이블을 가진 데이터 세트를 많은 레이블을 가진 데이터 세트 수준으로 증식
STOME(Synthetic Minority Over-samping Technique) 활용
SMOTE는 적은 데이터 세트에 있는 개별 데이터들의 K 최근접 이웃(K Nearest Neighbor)을 찾아 이 데이터와 K개 이웃들의 차이를 일정 값으로 만들어서 기존 데이터와 약간 차이가 나는 새로운 데이터들을 생성하는 방식
SMOTE 수행 절차
원본 데이터 -> K 최근접 이웃으로 데이터 신규 증식 대상 설정 -> 신규 증식하여 오버 샘플링 완료
데이터 일차 가공 및 모델 학습예측/평가
stratified 방식 테스트로 데이터 세트 추출하여 학습 데이터와 테스트 데이터 세트의 레이블 값 분포도를 서로 동일하게 만든다.
'AI > ML(지도학습)' 카테고리의 다른 글
[파이썬 머신러닝 완벽가이드 - 회귀(Regression)] (0) | 2021.07.13 |
---|---|
[파이썬 머신러닝 완벽가이드 - 분류(Classifier)] 샘플링(Sampling) (0) | 2021.07.13 |
[파이썬 머신러닝 완벽가이드 - 분류(Classifier)] XGBoost(eXtra Gradient Boost) (0) | 2021.07.11 |
[파이썬 머신러닝 완벽가이드 - 분류(Classifier)] 랜덤 포레스트(Random Forest), GBM(Gradient Boost Machine) (0) | 2021.07.11 |
[분류(Classifier)] 보팅 분류기(Voting Classifier) (0) | 2021.07.11 |