AI 기초

앙상블 학습이란 무엇인가?

mm
Unite.AI를 Google의 선호 소스에 추가

가장 강력한 기계 학습 기술 중 하나는 앙상블 학습입니다. 앙상블 학습은 예측의 신뢰성과 정확성을 향상시키기 위해 여러 기계 학습 모델을 사용하는 것입니다. 그러나 여러 기계 학습 모델을 사용하는 것이 어떻게 더 정확한 예측으로 이어질 수 있나요? 앙상블 학습 모델을 생성하기 위해 어떤 기술이 사용되나요? 이러한 질문에 대한 답을 찾기 위해 앙상블 모델을 사용하는 이유와 앙상블 모델을 생성하는 주요 방법을 살펴보겠습니다.

앙상블 학습이란 무엇인가?

간단히 말하면, 앙상블 학습은 여러 기계 학습 모델을 훈련하고 그 출력을 결합하여 하나의 최적의 예측 모델을 생성하는 과정입니다. 다양한 모델을 결합하면 전체 모델의 안정성을 향상시켜 더 정확한 예측을 할 수 있습니다. 앙상블 학습 모델은 개별 모델보다 더 신뢰할 수 있으며, 따라서 많은 기계 학습 대회에서 1위를 차지합니다.

앙상블 학습 모델을 생성하기 위한 다양한 기술이 있습니다. 간단한 앙상블 학습 기술에는 모델의 출력을 평균화하거나 가중 평균을 계산하는 것이 포함됩니다. 또한 여러 기초 학습자/모델의 예측을 결합하기 위한 더 복잡한 방법과 알고리즘이 개발되었습니다.

앙상블 훈련 방법을 사용하는 이유는 무엇인가?

기계 학습 모델은 여러 가지 이유로 서로 다를 수 있습니다. 다른 기계 학습 모델은 다른 샘플의 인구 데이터에서 작동할 수 있으며, 다른 모델링 기술이 사용될 수 있으며, 다른 가설이 사용될 수 있습니다.

큰 그룹과 함께 퀴즈 게임을 하는 상상을 해보세요. 만약 당신이 혼자 팀을 구성하면, 당신이 지식이 있는 주제와 지식이 없는 주제가 있을 것입니다. 이제 당신이 다른 사람들과 함께 팀을 구성한다고 가정해 보세요. 당신과 마찬가지로, 그들은 자신의 전문 분야에 대한 지식과 다른 주제에 대한 지식이 없습니다. 그러나你们의 지식을 결합하면, 더 많은 분야에 대한 더 정확한 추측을 할 수 있으며,你们 팀이 지식이 부족한 주제의 수가 줄어듭니다. 이것은 앙상블 학습의 기본 원리입니다. 즉, 여러 모델(개별 모델)의 예측을 결합하여 정확성을 향상시키고 오류를 최소화하는 것입니다.

통계학자들은 한 무리의 사람들이 주어진 질문에 대한 올바른 답을 추측할 때, 모든 답이 확률 분포를 형성한다는 것을 증명했습니다. 올바른 답을 알고 있는 사람들은 자신감을 가지고 올바른 답을 선택할 것입니다. 반면에, 잘못된 답을 선택하는 사람들은 가능한 잘못된 답 중 하나를 선택할 것입니다. 다시 퀴즈 게임의 예를 들어보면, 만약 당신과 당신의 두 친구가 올바른 답이 A라는 것을 알고 있다면, 세 사람이 모두 A를 선택할 것입니다. 반면에, 답을 모르는 세 사람이 있다면, 그들은 각각 B, C, D, 또는 E를 선택할 것입니다. 결과적으로, A는 세 票를 받고, 다른 답은 한 票 또는 두 票만 받게 됩니다.

모든 모델은 어느 정도의 오류를 가지고 있습니다. 한 모델의 오류는 다른 모델의 오류와 다를 것입니다. 오류를 살펴보면, 한 답 또는 다른 답 주변에 클러스터링되지 않고, 가능한 모든 잘못된 답에 걸쳐 분산되어 있음을 알 수 있습니다. 잘못된 추측은 본质적으로 모든 가능한 잘못된 답에 걸쳐 분산되어 취소됩니다. 반면에, 다양한 모델의 올바른 추측은 올바른 답 주변에 클러스터링됩니다. 앙상블 훈련 방법을 사용하면, 올바른 답을 더 신뢰할 수 있게 찾을 수 있습니다.

간단한 앙상블 훈련 방법

간단한 앙상블 훈련 방법은 일반적으로 통계 요약 기술의 적용을 포함합니다. 즉, 예를 들어, 모드, 평균 또는 가중 평균을 결정하는 것입니다.

모드란 집합 내에서 가장 자주 발생하는 요소를 말합니다. 모드를 얻으려면, 개별 학습 모델이 예측을 반환하고, 이러한 예측은 최종 예측에 대한 票으로 간주됩니다. 예측의 평균을 결정하려면, 예측의 산술 평균을 계산하고, 가장 가까운 정수로 반올림합니다. 마지막으로, 가중 평균을 계산하려면, 예측을 생성하는 모델에 다른 가중치를 할당할 수 있습니다. 가중치는 모델의 중요성을 나타냅니다. 클래스 예측의 숫자 표현은 0에서 1.0까지의 가중치와 함께 곱해지고, 개별 가중 예측은 합계로 계산되고, 결과는 가장 가까운 정수로 반올림됩니다.

고급 앙상블 훈련 방법

세 가지 주요 고급 앙상블 훈련 기술이 있으며, 각 기술은 특정 기계 학습 문제를 처리하도록 설계되었습니다. “배깅” 기술은 모델의 예측의 분산을 줄이는 데 사용됩니다. 여기서 분산은 예측 결과가 동일한 관찰을 기반으로 할 때 얼마나 다르하는지를 나타냅니다. “부스팅” 기술은 모델의 편향을 극복하는 데 사용됩니다. 마지막으로, “스태킹”은 일반적으로 예측을 개선하는 데 사용됩니다.

앙상블 학습 방법은 일반적으로 순차적 방법과 병렬 앙상블 방법의 두 가지 그룹으로 나눌 수 있습니다.

순차적 앙상블 방법은 기초 학습자가 순차적으로 생성되기 때문에 “순차적”이라는 이름이 붙었습니다. 순차적 방법의 경우, 기초 학습자 간의 의존성을 활용하여 더 정확한 예측을 얻는 것이 핵심 아이디어입니다. 잘못 레이블링된 예제의 가중치는 조정되고, 올바르게 레이블링된 예제의 가중치는 동일하게 유지됩니다. 새로운 학습자가 생성될 때마다 가중치가 변경되고 정확도가 개선됩니다.

순차적 앙상블 모델과 대조적으로, 병렬 앙상블 방법은 기초 학습자를 병렬로 생성합니다. 병렬 앙상블 학습을 수행할 때, 기초 학습자가 독립적이라는 사실을 활용하여 개별 학습자의 예측을 평균화함으로써 일반 오류율을 줄일 수 있다는 아이디어입니다.

앙상블 훈련 방법은 동종 또는 이종의 성격을 가질 수 있습니다. 대부분의 앙상블 학습 방법은 동종이며, 즉 단일 유형의 기초 학습 모델/알고리즘을 사용합니다. 반면에, 이종 앙상블은 다양한 학습 알고리즘을 사용하여 다이버시티를 보장하고 정확도를 높입니다.

앙상블 학습 알고리즘의 예

앙상블 부스팅의 시각화. 사진: Sirakorn via Wikimedia Commons, CC BY SA 4.0, (https://commons.wikimedia.org/wiki/File:Ensemble_Boosting.svg)

순차적 앙상블 방법의 예로는 AdaBoost, XGBoost, 및 Gradient tree boosting이 있습니다. 이러한 모든 모델은 부스팅 모델입니다. 이러한 부스팅 모델의 목표는 약한 학습자를 더 강력한 학습자로 변환하는 것입니다. AdaBoost 및 XGBoost와 같은 모델은 약한 학습자로 시작하여 약간의 랜덤한 추측보다 조금 더 나은 성능을 보입니다. 훈련이 진행됨에 따라 데이터에 가중치가 적용되고 조정됩니다. 이전 훈련 라운드에서 잘못 분류된 예제는 더 많은 가중치를 받습니다. 원하는 수의 훈련 라운드가 반복된 후, 예측은 회귀 작업의 경우 가중 합으로, 분류 작업의 경우 가중 票으로 결합됩니다.

배깅 학습 과정. 사진: SeattleDataGuy via Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Bagging.png)

병렬 앙상블 모델의 예로는 랜덤 포레스트 분류기가 있습니다. 랜덤 포레스트는 또한 배깅 기술의 예입니다. “배깅”이라는 용어는 “부트스트랩 집계”에서 유래했습니다. 샘플은 총 데이터 세트에서 부트스트랩 샘플링이라는 샘플링 기술을 사용하여 추출되며, 이러한 샘플은 기초 학습자가 예측을 생성하는 데 사용됩니다. 분류 작업의 경우, 기초 모델의 출력은 票으로 집계되고, 회귀 작업의 경우 평균화됩니다. 랜덤 포레스트는 개별 결정 트리를 기초 학습자로 사용하며, 각 트리는 데이터 세트의 다른 샘플을 사용하여 생성됩니다. 또한 트리를 생성하기 위해 특징의 임의의 하위 집합이 사용됩니다. 이는 개별 결정 트리가 매우 랜덤화되어 결합하여 신뢰할 수 있는 예측을 제공합니다.

앙상블 스택킹의 시각화. 사진: Supun Setunga via Wikimedia Commons, CC BY S.A 4.0 (https://commons.wikimedia.org/wiki/File:Stacking.png)

스태킹 앙상블 기술의 경우, 여러 회귀 또는 분류 모델이 더 높은 수준의 메타 모델을 통해 결합됩니다. 하위 수준의 기초 모델은 전체 데이터 세트를 사용하여 훈련됩니다. 기초 모델의 출력은 메타 모델을 훈련하는 데 사용되는 특징으로 사용됩니다. 스택킹 앙상블 모델은 종종 이종의 성격을 가집니다.

블로거이자 프로그래머로 Machine Learning Deep Learning 주제에 전문가입니다. 다니엘은 다른 사람들이 AI의 힘을 사회적善으로 사용하는 것을 돕기를 희망합니다.