지도학습은 레이블, 즉 명시적인 정답이 있는 데이터가 주어진 상태에서 학습하는 머신러닝 방식이다. 지도학습의 대표적인 유형인 분류는 **학습 데이터로 주어진 데이터의 피처와 레이블값(결정값, 클래스 값)**을 머신러닝 알고리즘으로 학습해 모델을 생성하고, 이렇게 생성된 모델에 새로운 데이터 값이 주어졌을 때 미지의 레이블 값을 예측하는 것이다. 즉 기존 데이터가 어떤 레이블에 속하는지 패턴을 알고리즘으로 인지한 뒤 새롭게 관측된 데이터에 대한 레이블을 판별하는 것이다.
분류는 다양한 머신러닝 알고리즘으로 구현할 수 있다.
다양한 알고리즘들 중 앙상블을 집중적으로 공부해보겠다. 앙상블은 서로 다른 또는 같은 알고리즘을 단순히 결합한 형태도 있으나 일반적으로 배깅과 부스팅 방식으로 나뉜다. 배깅 방식의 대표인 랜덤 포레스트는 뛰어난 예측 성능, 상대적으로 빠른 수행시간, 유연성 등으로 애용하는 사람 이 많다. 하지만 근래의 앙상블 방법은 부스팅 방식으로 지속해서 발전하고 있다. 그래디언트 부스팅의 경우 뛰어난 예측 성능을 가지고 있지만 수행 시간이 너무 오래 걸리는 단점으로 인해 최적화 모델 튜닝이 어려웠다. 하지만 XGBoost
와 LightGBM
등 기존 그래드언트 부스팅의 예측 성능을 한 단계 발전 시키면서도 수행 시간을 단축시킨 알고리즘이 계속 등장하며서 정형 데이터의 분류 영역에서 가장 활용도가 높은 알고리즘을 자리잡았다.
앙상블의 기본 알고리즘으로 일반적으로 사용하는 것은 결정트리이다. 또한 데이터의 스케일링이나 정규화 등의 사전 가공의 영향이 매우 적다. 하지만 예측 성능을 향상시키기 위해 복잡한 규칙 구조를 가져야 하며, 이로 인한 과적합이 발생해 반대로 예측 성능이 저하될 수 있다는 단점이 있다. 하지만 이런 단점이 앙상블 기번에서는 오히려 장점으로 작용한다. 앙상블은 매우 많은 여러개의 약한 학습기를 결합해 확률적 보완과 오류가 발생한 부분에 대한 가중치를 계속 업데이트 하면서 예측 성능을 향상시키는데 결정트리가 좋은 약한 학습기가 되기 때문이다.