앙상블 학습법

머신 러닝 막대 통계학과 기계 학습에서 **앙상블 학습법**(ensemble learning method)은 학습 알고리즘(learning algorithm)들을 따로 쓰는 경우에 비해 더 좋은 예측 성능을 얻기 위해 다수의 학습 알고리즘을 사용하는 방법이다. 배깅(Bagging), 부스팅(Boosting), 스태킹(stacking) 방식으로 구분된다.url=https://www.proquest.com/docview/757071615?parentSessionId=kPNAasTYk6t%2FsE%2FvaQTms9yp9zOzGeHdVAhRzTzrUXk%3D&pq-origsite;=summon&accountid;=11933&sourcetype;=Scholarly%20Journalsdoi=10.1613/jair.614doi=10.1109/MCAS.2006.1688199doi=10.1007/s10462-009-9124-7url=https://scienceon.kisti.re.kr/srch/selectPORSrchArticle.do?cn=JAKO202025551105920url=https://scienceon.kisti.re.kr/srch/selectPORSrchArticle.do?cn=JAKO202406463180699 통계 역학(statistical mechanics)에서의 통계적 앙상블과 달리 기계 학습에서의 앙상블은 대체 모델들의 단단한 유한 집합을 가리키지만, 일반적으로 그러한 대체 모델 사이에 훨씬 더 유연한 구조를 허용한다.
# 개요
앙상블 학습법은 여러 학습기(모델)의 예측을 결합하여 더 정확한 결정을 내리는 방식이다. 앙상블 학습법은 단일 모델이 아닌 다양한 모델의 결과를 종합하여 각 모델의 약점을 보완하고 신뢰성이 더 높은 예측값을 얻을 수 있다. 또한 복잡한 문제를 여러 개의 하위 문제로 나누어 효율적으로 해결할 수 있다.url=https://scienceon.kisti.re.kr/srch/selectPORSrchArticle.do?cn=JAKO200907841292048 이러한 앙상블 분류기(classifier)는 단일 분류기보다 성능이 더 좋다는 것이 실험으로 증명되었다.url=https://www.proquest.com/docview/757066079?parentSessionId=rHFLnc%2BAmuYkWUFBPvcZb%2FC4ewPx5KYBXOJJl0E7qdE%3D&pq-origsite;=summon&accountid;=11933&sourcetype;=Scholarly%20Journals 질병에 걸렸을 때 여러 곳의 병원을 방문하여 여러 의사(전문가)의 진단과 처방을 들은 후 최종 결정을 내리는 것에 비유할 수 있다.url=https://scienceon.kisti.re.kr/srch/selectPORSrchArticle.do?cn=JAKO201512037125223
## 형식
형식적으로, 가설들의 집합 {h1, h2,...,hk}을 만들고 가중치의 집합 {w1, w2,...,wk}을 설정하여 H(X)=w1h1(X)+w2h2(X)(X)+...+wkhk(X)인 분류기를 만드는 것이다.url=https://scienceon.kisti.re.kr/srch/selectPORSrchArticle.do?cn=JAKO200734515919504
# 배깅
배깅 배깅 알고리즘(bagging)은 bootstrap aggregating의 줄임말로 통계적 분류와 회귀 분석에서 사용되는 기계 학습 알고리즘의 안정성과 정확도를 향상시키기 위해 고안된 앙상블 학습법의 메타 알고리즘이다. 여러 인공지능 모델이 독립적으로 학습한 후, 각 결과값을 평균하여 최종 예측값을 결정하는 방식이다. 배깅은 분산을 줄이고 과적합(overfitting)을 피하도록 해준다. 결정 트리 학습법이나 랜덤 포레스트에만 적용되는 것이 일반적이기는 하나, 그 외의 다른 방법들과 함께 사용할 수 있다.
## 결정 트리 학습법
결정 트리 학습법
## 랜덤 포레스트
랜덤 포레스트
# 부스팅
부스팅(Boosting) 알고리즘은 기계 학습에서 지도 학습의 편향과 분산을 주로 줄이기 위한 앙상블 메타 알고리즘이자 약한 학습자를 강한 학습자로 변환하는 기계 학습 알고리즘 계열이다. Schapire (1990)에 의해 취약한 학습 알고리즘을 개선시키는(boosting) 방법으로 소개되었다. 부스팅은 컨스(Kearns)와 밸리언트(Valiant, 1988, 1989)가 제기한 질문인 "약한 학습자의 집합이 하나의 강력한 학습자를 만들 수 있는가?"라는 질문을 기반으로 한다. 약한 학습자는 실제 분류와 약간만 상관관계가 있는 통계적 분류로 정의된다(무작위 추측보다 사례에 더 나은 레이블을 지정할 수 있음). 대조적으로, 강력한 학습자는 실제 분류와 임의의 상관관계가 있는 분류자이다. 컨스와 밸리언트의 질문에 대한 1990년 논문에서 로버트 샤파이어(Robert Schapire)의 긍정적인 대답은 기계 학습과 통계학에 상당한 영향을 미쳤으며 특히 부스팅의 발전으로 이어졌다.url=https://link.springer.com/article/10.1007/BF00116037 부스팅은 주어진 데이터를 모두 학습하여 모델을 생성한 후 잘 분류된 데이터는 가중치를 적게 주고 그렇지 않은 데이터는 가중치를 높게 주어, 연속적으로 새로운 모델을 형성한다. 모델들이 순서대로 학습하면서 서로의 약점을 보완하는 방식으로, 첫 번째 모델이 데이터를 학습하고 예측을 내놓으면 다음 모델이 틀린 데이터에 집중하여 이전 모델이 잘못 학습한 부분을 다음 모델이 개선하도록 학습하는 방식이다. 이는 약한 모델이 결합하여 강력한 모델을 형성하며 편향을 줄인다. 대표적인 부스팅 알고리즘으로 그라디언트 부스팅, XGBoost, LightGBM 등이 있다.
## 그라디언트 부스팅
그라디언트 부스팅
# 스태킹
스태킹(stacking)은 다수의 학습 알고리즘을 이용하여 생성된 단일 모델로부터 얻어낸 예측값을 학습 데이터로 삼아 메타모델을 생성하는 방법이다.
# 연구

## 이론
이병우 외(2009)는 학습 데이터를 분할하여 다른 지역에서 전문가를 학습시키는 지역 전문가 방식의 앙상블 학습법을 제시하였다. 이는 결정 트리 학습법과 유사하나 말단 노드(Leaf Node)뿐 아니라 모든 노드에 분류기가 존재하며 서로 다른 기본 학습 알고리즘을 사용할 수 있다는 점에서 다르다.
## 실생활
소프트웨어의 발전에 따라 센서 데이터 및 이미지 처리 분야에서 알고리즘의 성능을 향상시키는 연구가 수행되고 있다. 데이터를 예측하는 데 기계학습을 이용하는 연구가 진행되고 있으며, 앙상블 학습법은 다양한 분야에서 모델의 예측 정확도를 높이기 위해 사용된다. ; 구조물 모형 국내에서는 구조물 모형의 동(動)특성에 의한 이상상태 감지 실험에 앙상블 학습법의 일종인 랜덤 포레스트 학습법을 적용한 사례url=https://scienceon.kisti.re.kr/srch/selectPORSrchArticle.do?cn=JAKO202125761265601 ; 파고 예측 해양학 분야에서 파도의 높이를 예측하는 것에 있어서, 과거에는 물리적 원리에 기반한 수치 모델을 사용하였으나 최근에는 기계 학습을 사용하여 파도 데이터를 예측한다. 가오 루빈 외(2023)은 배깅 모델과 장단기 기억 모델을 활용하였으며url=https://www.sciencedirect.com/science/article/pii/S0952197622005255, 하산 아비드 외(2024)는 부스팅 모델을 활용하여 파고를 연구하였다.url=https://doaj.org/article/694b7abfaa8e4078a560c59e9219ff4e 이원희와 이한진(2024)은 해양 관측소에서 수집된 데이터를 기반으로 파고를 예측하는 데 앙상블 학습법을 사용하여 앙상블 학습 모델 중 배깅보다 부스팅 모델의 성능이 더 우수한 것을 확인하였다. ; 표적 식별 석종원(2015)은 수중에서 수중음향 신호를 탐지하는 능동소나의 표적 인식에 배깅을 비롯한 앙상블 학습법을 사용하였다.