기계 학습에서 부스팅이란 무엇인가요?

부스팅은 예측 데이터 분석의 오차를 줄이기 위해 기계 학습에 사용되는 방법입니다. 데이터 사이언티스트는 레이블이 지정되지 않은 데이터에 대해 추측하기 위해 레이블이 지정된 데이터에 대한 기계 학습 모델이라고 불리는 기계 학습 소프트웨어를 훈련시킵니다. 단일 기계 학습 모델은 훈련 데이터 집합의 정확도에 따라 예측 오차가 발생할 수 있습니다. 예를 들어 흰색 고양이의 이미지에 대해서만 고양이 식별 모델을 훈련한 경우, 가끔 검은색 고양이를 잘못 식별할 수 있습니다. 부스팅은 여러 모델을 순차적으로 훈련하여 전체 시스템의 정확도를 향상시킴으로써 이 문제를 극복하려고 하는 것입니다.

부스팅이 중요한 이유는 무엇인가요?

부스팅은 여러 약한 학습자를 강한 단일 학습 모델로 변환하여 기계 학습의 예측 정확도 및 성능을 개선할 수 있습니다. 기계 학습 모델은 약한 학습자나 강한 학습자일 수 있습니다.

약한 학습자

약한 학습자는 무작위 추측과 비슷할 정도로 예측 정확도가 낮습니다. 약한 학습자는 과잉 맞춤에 취약합니다. 즉, 원본 데이터 집합과 너무 많이 다른 데이터는 분류할 수 없습니다. 예를 들어 모델이 뾰족한 귀를 가진 동물인 고양이를 식별하도록 훈련시킨 경우 귀가 말린 고양이는 인식하지 못할 수 있습니다.

강한 학습자

강한 학습자는 예측 정확도가 높습니다. 부스팅을 통해 약한 학습자의 시스템을 강한 단일 학습 시스템으로 변환할 수 있습니다. 예를 들어 고양이 이미지를 식별하기 위해서는 뾰족한 귀를 추측하는 약한 학습자와 고양이 눈을 추측하는 또 다른 학습자를 결합해야 합니다. 뾰족한 귀를 지닌 동물 이미지를 분석하면 시스템은 고양이 눈에 대해 다시 한번 분석합니다. 이렇게 하면 시스템의 전체적인 정확도가 개선됩니다.

부스팅은 어떻게 작동하나요?

부스팅 작동 방식을 이해하기 위해 기계 학습 모델의 결정 방법에 대해 설명해 보겠습니다. 구현 시 많은 변형이 있기는 하지만 데이터 사이언티스트는 의사 결정 트리 알고리즘을 통해 부스팅을 사용하는 경우가 많습니다.

의사 결정 트리

의사 결정 트리는 기계 학습의 데이터 구조로서 데이터 집합을 기능에 따라 계속 더 작은 하위 집합으로 분할하여 작동합니다. 이는 의사 결정 트리가 하나의 클래스만 남을 때까지 반복적으로 데이터를 분할한다는 개념입니다. 예를 들어 트리는 일련의 예 또는 아니요 질문을 하고 데이터를 단계마다 범주별로 분할할 수 있습니다.

부스팅 앙상블 방법

부스팅을 통해 여러 약한 의사 결정 트리를 순차적으로 결합하여 앙상블 모델을 생성할 수 있습니다. 또한 개별 트리의 출력에 가중치를 할당합니다. 그러면 첫 번째 의사 결정 트리의 부정확한 분류가 영향을 미쳐 다음 트리에 더 높은 가중치 및 입력을 제공합니다. 여러 차례 주기를 마치고 나면 부스팅 방법은 이런 약한 규칙을 하나의 강력한 예측 규칙과 결합시킵니다.

부스팅과 배깅의 비교

부스팅 및 배깅은 예측 정확도를 개선하는 두 가지 일반적인 앙상블 방법입니다. 이런 학습 방법의 주요 차이점은 훈련 방법입니다. 배깅을 통해 데이터 사이언티스트는 여러 데이터 집합에서 한 번에 여러 약한 학습자를 훈련시켜 약한 학습자의 정확도를 개선합니다. 이와 달리 부스팅은 약한 학습자를 차례로 훈련시킵니다.

 

부스팅에서의 훈련은 어떻게 이뤄지나요?

훈련 방법은 부스팅 알고리즘이라고 하는 부스팅 프로세스 유형에 따라 달라집니다. 그러나 알고리즘은 다음과 같은 일반적인 단계를 따라 부스팅 모델을 훈련시킵니다.

1단계

부스팅 알고리즘은 각 데이터 샘플에 동일한 가중치를 할당합니다. 기본 알고리즘이라고 하는 첫 번째 기계 모델에 데이터를 공급합니다. 기본 알고리즘을 통해 각 데이터 샘플에 대해 예측을 할 수 있습니다.

2단계

부스팅 알고리즘은 모델 예측을 평가하고 더 심각한 오차가 있는 샘플의 가중치를 증가합니다. 또한 모델 성능에 따라 가중치를 할당합니다. 탁월한 예측을 내놓는 모델은 최종 결정에 대해 상당한 수준의 영향을 미칩니다.

3단계

알고리즘은 가중치 적용 데이터를 다음 의사 결정 트리로 이동합니다.

4단계

알고리즘은 훈련 오차 인스턴스가 특정 임계값 이하로 떨어질 때까지 2단계와 3단계를 반복합니다.

AWS 기계 학습 다음 단계