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

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

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

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

약한 학습자

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

강한 학습자

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

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

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

의사 결정 트리

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

부스팅 앙상블 방법

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

부스팅과 배깅의 비교

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

 

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

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

1단계

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

2단계

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

3단계

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

4단계

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

AWS는 부스팅으로 어떤 도움을 줄 수 있나요?

AWS 네트워킹 서비스는 기업에 다음을 제공하도록 설계되었습니다.

Amazon SageMaker

Amazon SageMaker는 기계 학습을 위해 구축된 광범위한 기능들을 하나로 모았습니다. 이를 사용하면 고품질의 기계 학습 모델을 빠르게 준비, 구축, 훈련 및 배포할 수 있습니다.

Amazon SageMaker Canvas

Amazon SageMaker Canvas는 기계 학습 모델을 구축하는 과도한 작업을 없애고, 데이터를 기반으로 모델을 자동으로 구축하고 훈련시킬 수 있도록 도와줍니다. SageMaker Canvas를 사용하는 경우, 테이블 형식의 데이터세트를 제공하고 예측 대상 열(숫자 또는 범주)을 선택합니다. SageMaker Autopilot은 여러 솔루션을 자동으로 탐색하여 최상의 모델을 찾습니다. 그런 다음 한 번의 클릭으로 모델을 프로덕션에 직접 배포하거나, Amazon SageMaker Studio에서 권장된 솔루션에 대해 반복하여 모델 품질을 더 개선할 수 있습니다.

Amazon SageMaker 모델 훈련

Amazon SageMaker 모델 훈련을 사용하면 훈련 지표를 실시간으로 캡처하고 오류가 감지될 때 알림을 전송하여 기계 학습 모델을 쉽게 최적화할 수 있습니다. 이렇게 하면 이미지의 잘못된 식별 등의 부정확한 모델 예측을 즉시 바로잡을 수 있습니다.

Amazon SageMaker는 대규모 딥 러닝 모델 및 데이터세트를 훈련할 수 있는 빠르고 쉬운 방법을 제공합니다. SageMaker 분산 훈련 라이브러리를 사용하면 대용량 데이터세트를 더 빠르게 훈련시킬 수 있습니다.

지금 AWS 계정을 생성하여 Amazon SageMaker를 시작하세요.

AWS 인공 지능 다음 단계