Connect with us

์•™์ƒ๋ธ” ํ•™์Šต์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

AI 101

์•™์ƒ๋ธ” ํ•™์Šต์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

mm

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

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

간단히 말하면, 앙상블 학습은 여러 기계 학습 모델을 훈련하고 그 출력을 결합하는 과정입니다. 다양한 모델은 하나의 최적 예측 모델을 생성하기 위한 기초로 사용됩니다. 다양한 개별 기계 학습 모델의 집합을 결합하면 전체 모델의 안정성을 개선하여 더 정확한 예측을 할 수 있습니다. 앙상블 학습 모델은 개별 모델보다 더 신뢰할 수 있으며, 그 결과로 많은 기계 학습 대회에서 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์˜ ํž˜์„ ์‚ฌํšŒ์ ๅ–„์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋•๊ธฐ๋ฅผ ํฌ๋งํ•ฉ๋‹ˆ๋‹ค.