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

로스앤젤레스 고속도로의 조감도

작성자

Jacob Murel Ph.D.

Senior Technical Content Creator

Eda Kavlakoglu

Business Development + Partnerships

IBM Research

앙상블 학습은 여러 학습자를 결합하여 예측 성능을 향상시킵니다. 제한된 데이터 세트로 인한 문제에 대응하여 채택되었습니다.

앙상블 학습은 더 나은 예측을 생성하기 위해 두 개 이상의 학습자(예: 회귀 모델, 신경망)를 집계하는 머신 러닝 기술입니다. 즉, 앙상블 모델은 여러 개별 모델을 결합하여 단일 모델만 사용하는 것보다 더 정확히 예측합니다.1 경우에 따라 이 기법을 커미티 기반(committee-based) 학습이라고 부르기도 합니다. 앙상블 학습은 학습자 집단이 개별 학습자보다 전반적인 정확도가 더 높다는 원칙에 기반합니다.2 실제로 연구는 기계 학습 모델과 합성곱 신경망(CNN)을 통해 그 효능을 뒷받침합니다.

용어에 대한 참고 사항: 기본 학습자, 기본 모델, 경우에 따라 기본 추정자(estimator)는 앙상블 알고리즘에 사용되는 개별 모델을 의미하며 문헌에서는 기본 학습자를 강한 학습자와 약한 학습자로 구분하기도 합니다. 약한 모델 또는 학습자는 무작위 추측보다 성능이 조금 낮은 모델로 정의됩니다. 이진 분류 문제의 경우, 약한 분류기는 보다 공식적으로 약 50%의 정확도를 달성하는 분류기입니다. 반면, 강한 모델 또는 학습자는 우수한 예측 성능을 달성하며 이진 분류에서는 80% 이상의 정확도를 공식화합니다.3

앙상블 방법, 특히 순차 방법이 약한 학습자를 강한 학습자로 효과적으로 끌어올린다는 점을 감안할 때 일부 출처는 약한 학습자와 기본 학습자를 혼동한다는 점에 유의하십시오.4

트랙에서 굴러가는 공의 3D 디자인

최신 AI 뉴스+인사이트


주간 Think 뉴스레터에서 전문가들이 선별한 AI, 클라우드 등에 관한 인사이트와 소식을 살펴보세요. 

앙상블 학습을 사용하는 이유는 무엇입니까?

편향-분산 트레이드오프

편향-분산 상충은 머신 러닝 분야에서 잘 알려진 문제이자 많은 정규화 기법에 있어 동기가 되는 원리로서, 다음과 같이 정의할 수 있습니다.

- 편향은 예측값과 실제값의 평균 차이를 측정합니다. 편향이 증가하면 학습 데이터 세트에 대한 모델의 예측 정확도가 떨어집니다. 편향이 높다는 것은 학습 오류가 높다는 것을 의미합니다. 최적화는 편향을 줄이려는 시도를 의미합니다.

- 분산은 주어진 모델의 다양한 실현에 대한 예측 간의 차이를 측정합니다. 분산이 증가하면 보이지 않는 데이터에 대한 모델의 예측 정확도가 떨어집니다. 분산이 높다는 것은 테스트 및 유효성 검사 중 오류가 많다는 의미이며, 일반화는 분산을 줄이려는 시도를 말합니다.

따라서 편향과 분산은 각각 학습 데이터와 테스트 데이터에 대한 모델 정확도를 반비례하여 나타냅니다.5 이는 모델의 총 오류율을 구성하는 세 가지 항 중 두 가지이며, 세 번째는 줄일 수 없는 오류입니다. 이 세 번째는 데이터 세트에 내재된 무작위성으로 인해 발생하는 오류를 나타냅니다. 전체 모델 오류는 다음 공식으로 정의할 수 있습니다.6

여러 모델 대 단일 모델

하나의 모델 학습 알고리즘은 수많은 변수로 구성됩니다. 예를 들어, 학습 데이터, 하이퍼파라미터 등이 있으며, 이들은 결과 모델의 총 오류에 영향을 미칩니다. 따라서 단일 학습 알고리즘이라도 각각 고유한 편향성, 분산, 감소 불가능한 오류율을 가진 다양한 모델을 생성할 수 있습니다. 앙상블 알고리즘은 여러 다양한 모델을 결합함으로써 전체 오류율을 낮추는 동시에 특정 데이터 하위 집합에 대한 현저히 낮은 편향성과 같은 각 개별 모델의 고유한 복잡성과 이점을 유지할 수 있습니다.7

연구에 따르면 일반적으로 결합된 모델 간의 다양성이 클수록 결과 앙상블 모델이 더 정확합니다. 따라서 앙상블 학습은 모델 편향을 포기하지 않고 과적합과 같은 회귀 문제를 해결할 수 있습니다. 실제로, 연구에 따르면 다양한 과소 정규화 모델(즉, 훈련 데이터에 과도하게 적합한 모델)로 구성된 앙상블이 단일 정규화 모델보다 성능이 우수합니다.8 더욱이, 앙상블 학습 기법은 고차원 데이터에서 비롯된 문제를 해결하는 데 도움이 될 수 있으며, 따라서 차원 축소의 대안으로 효과적으로 작용할 수 있습니다.

앙상블 모델 유형

문헌에서는 머신 러닝의 앙상블 학습 방법을 크게 병렬과 순차의 두 가지로 분류합니다.

- 병렬 방법은 각 기본 학습자를 다른 학습자와 구별하여 훈련시킵니다. 따라서 병렬 앙상블은 그 이름에서 알 수 있듯이 기본 학습자를 병렬로 서로 독립적으로 훈련시킵니다.

- 순차적 방법은 이전 단계에서 학습된 모델에서 발생한 오류를 최소화하도록 새로운 기본 학습자를 훈련합니다. 즉, 순차적 방법은 기본 모델을 단계적으로 순차적으로 구성합니다.9

병렬 방법은 동종 방법과 이종 방법으로 추가로 구분됩니다. 동종 병렬 앙상블은 동일한 기본 학습 알고리즘을 사용하여 모든 구성 요소 기본 학습기를 생성합니다. 이종 병렬 앙상블은 서로 다른 알고리즘을 사용하여 기본 학습기를 생성합니다.10

투표

앙상블 방법은 어떻게 기본 학습기를 최종 학습기로 결합합니까? 일부 기술(예:스태킹 - 별도의 머신 러닝 알고리즘을 사용하여 기본 학습자로부터 앙상블 학습자를 훈련시킵니다. 그러나 기본 학습자 예측을 통합하는 일반적인 방법 중 하나는 투표, 더 정확하게는 다수결 투표입니다.

과반수 투표(Majority voting)는 주어진 데이터 인스턴스에 대한 각 기본 학습자의 예측을 고려하고 대다수의 학습자가 예측하는 것으로 결정되는 최종 예측을 출력합니다. 예를 들어, 이진 분류 문제에서 과반수 투표는 주어진 데이터 인스턴스에 대한 각 기본 분류자에서 예측을 가져와서 과반수 예측을 최종 예측으로 사용합니다. 가중 과반수 투표는 이 기법의 확장으로, 특정 학습자의 예측에 다른 학습자보다 더 큰 가중치를 부여합니다.11

앙상블 학습 기법

가장 인기 있는 앙상블 학습 기법 세 가지는 아마도 배깅, 부스팅, 스태킹일 것입니다. 실제로 이들은 순차적, 병렬, 동종 및 이질적 유형의 앙상블 방법을 구분하는 예시입니다.

이 개요에는 블렌딩 및 가중 평균 앙상블과 같은 몇 가지 추가 앙상블 방법이 있습니다. 이것은 단지 문헌에서 가장 두드러진 몇 가지 방법을 조사하기 위한 것입니다.

배깅

배깅부트스트랩 집계라고도 불리는 동질 병렬 방법입니다. 주어진 학습 데이터 세트의 수정된 복제본을 사용하여 동일한 학습 알고리즘으로 여러 기본 학습자를 학습합니다.12 Python의 Scikit-learn 앙상블 모듈에는 배깅을 구현하기 위한 함수가 포함되어 있습니다(예: BaggingClassifier).

좀 더 구체적으로 말하자면, 배깅은 여러 기본 학습자를 훈련시키기 위해 부트스트랩 리샘플링(bootstrap resampling)이라는 기술을 사용하여 하나의 초기 훈련 데이터 세트에서 여러 개의 새로운 데이터 세트를 파생합니다. 작동 방법이 궁금하신가요? 훈련 데이터 세트에 n개의 훈련 예제가 포함되어 있다고 가정해 보겠습니다. 부트스트랩 리샘플링은 해당 세트의 n개 데이터 인스턴스를 새로운 하위 샘플 데이터 세트로 복사하며, 일부 초기 인스턴스는 두 번 이상 나타나고 다른 인스턴스는 완전히 제외됩니다. 이것들은 부트 스트랩 샘플입니다. 이 프로세스를 x번 반복하면 원래 데이터 세트의 x회 반복이 생성되며, 각 데이터 세트에는 초기 세트의 n개 샘플이 포함됩니다. 그런 다음 초기 세트의 각 반복을 사용하여 동일한 학습 알고리즘으로 별도의 기본 학습자를 훈련시킵니다.13

랜덤 포레스트는 배깅의 확장으로, 무작위 의사 결정 트리(Decision Trees)의 앙상블을 구성하기 위해 배깅을 사용하는 것을 구체적으로 나타냅니다. 이는 표준 의사 결정 트리와 다르며, 후자는 분할에 가장 적합한 것을 식별하기 위해 모든 기능을 샘플링합니다. 대조적으로, 랜덤 포레스트는 기능의 무작위 하위 집합을 반복적으로 샘플링하여 결정 노드를 만듭니다.14

스태킹

스태킹 또는 스택 일반화15는 메타 학습으로 알려진 것을 예시하는 이질적인 병렬 방법입니다. 메타 학습은 여러 기본 학습자의 출력에서 메타 학습자를 훈련시키는 것으로 구성됩니다. 스태킹은 각 학습자에 대해 다른 훈련 알고리즘을 사용하여 동일한 데이터 세트에서 여러 기본 학습자를 구체적으로 훈련시킵니다. 각 기본 학습자는 보이지 않는 데이터 세트에 대해 예측을 하고, 그런 다음 이러한 첫 번째 모델 예측을 컴파일하여 메타 모델인 최종 모델을 훈련하는 데 사용합니다.16

기본 학습자를 훈련시키기 위해 사용되는 데이터 세트와 다른 데이터 세트를 사용하여 메타 학습자를 훈련시키는 것이 중요합니다. 동일한 데이터 세트를 사용하여 기본 학습자와 메타 학습자를 훈련시키면 과적합이 발생할 수 있기 때문에 이를 방지하기 위해서는 기본 학습자 교육 데이터에서 데이터 인스턴스를 제외하여 테스트 세트 데이터로 사용하고, 이는 메타 학습자의 학습 데이터가 됩니다. 문헌에서는 이러한 데이터 세트가 겹치지 않도록 교차 검증과 같은 기술을 권장하는 경우가 많습니다.17

배깅과 마찬가지로 Python의 sklearn.ensemble 모듈은 스태킹 기술을 구현하기 위한 다양한 함수를 제공합니다.

부스팅

부스팅 알고리즘은 순차적 앙상블 방법입니다. 부스팅에는 많은 변형이 있지만 모두 동일한 일반 절차를 따릅니다. 부스팅은 일부 초기 데이터 세트 d에 대해 학습자 훈련합니다. 결과 학습자는 일반적으로 약하여 데이터 세트의 많은 샘플을 잘못 분류합니다. 배깅과 마찬가지로 부스팅은 초기 데이터 세트에서 인스턴스를 샘플링하여 새 데이터 세트(d2)를 만듭니다. 그러나 배깅과 달리 부스팅은 첫 번째 모델 또는 학습자에서 잘못 분류된 데이터 인스턴스의 우선 순위를 지정합니다. 새로운 학습자는 이 새로운 데이터 세트d2에 대해 훈련됩니다. 그런 다음 d1d2에서 세 번째 데이터 세트(d3)를 컴파일하고 두 번째 학습자의 잘못 분류 된 샘플과 d1d2가 일치하지 않는 인스턴스의 우선 순위를 지정합니다. 이 프로세스는 n번 반복되어 n명의 학습자를 생성합니다. 그런 다음 부스팅은 모든 학습자를 결합하고 가중치를 부여하여 최종 예측을 생성합니다.18

부스팅 알고리즘은 새 데이터 세트를 생성할 때 잘못 예측된 데이터 인스턴스의 우선순위를 지정하는 방법에 따라 크게 다릅니다. 가장 눈에 띄는 두 가지 부스팅 방법을 예로 들 수 있습니다.

- 적응형 부스팅(AdaBoost)은 모델 오류에 가중치를 둡니다. 즉, 다음 학습자를 훈련하기 위해 데이터 세트의 새로운 반복(Iteration)을 생성할 때 AdaBoost는 이전 학습자의 잘못 분류된 샘플에 가중치를 추가하여 다음 학습자가 잘못 분류된 샘플의 우선 순위를 정하도록 합니다.

- 그래디언트 부스팅은 새로운 학습자를 교육할 때 잔여 오류를 사용합니다. 그래디언트 부스팅은 잘못 분류된 샘플에 가중치를 부여하는 대신 이전 모델이 남긴 오류를 사용하여 다음 모델에 대한 목표 예측을 설정합니다. 이러한 방식을 통해 한 모델이 남긴 오류 격차를 좁힙니다.19

안타깝게도 sklearn에는 부스팅을 구현하기 위한 사전 정의된 함수가 없습니다. 익스트림 그라디언트 부스팅(XGBoost) 오픈 소스 라이브러리는 Python에서 그래디언트 부스팅을 구현하기 위한 코드를 제공합니다.

최근 연구

학습자 훈련을 위한 대규모의 공정 사용 라벨이 지정된 데이터 세트를 확보하는 것이 어렵기 때문에 앙상블 학습은 적은 데이터로 학습자의 성과를 개선하려는 시도로 많이 활용되고 있습니다. 예를 들어, 최근 여러 연구에서 데이터 세트20의 서로 다른 표현으로 여러 모델을 훈련하거나 편향된 여러 모델을 결합하는 등 컴퓨터 비전 작업에서 앙상블 방법을 사용하여 모델 일반화 가능성을 개선하는 데 유망한 결과를 보여주었습니다.21

앙상블 방법은 일반화 가능성을 향상시킬 수 있지만, 그럼에도 불구하고 불공정성 문제가 발생할 수 있습니다. 머신 러닝에서 공정성은 자동화 시스템에서 알고리즘 편향(종종 소수 집단에 대한 편향)을 완화하려는 시도로서, 일반적으로 민감한 데이터로 학습한 학습자에 인해 발생합니다. 몇몇 연구에서는 앙상블 모델의 공정성을 개선하기 위한 메트릭, 전처리 및 후처리 기술을 제안합니다.22 AI에서 공정성과 윤리적 관행을 개선하기 위한 지속적인 노력은 미래 연구에 매우 필요한 분야로 남아 있습니다.

Mixture of Experts | 8월 28일, 에피소드 70

AI 디코딩: 주간 뉴스 요약

세계적인 수준의 엔지니어, 연구원, 제품 리더 등으로 구성된 패널과 함께 불필요한 AI 잡음을 차단하고 실질적인 AI 최신 소식과 인사이트를 확인해 보세요.

관련 솔루션
IBM® watsonx.ai

AI 빌더를 위한 차세대 엔터프라이즈 스튜디오인 IBM watsonx.ai로 생성형 AI, 파운데이션 모델 및 머신 러닝 기능을 학습, 검증, 조정 및 배포하세요. 적은 데이터로 짧은 시간 내에 AI 애플리케이션을 구축하세요.

watsonx.ai 살펴보기
인공 지능 솔루션

업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.

AI 솔루션 살펴보기
인공 지능(AI) 컨설팅 및 서비스

IBM Consulting AI 서비스는 기업이 AI 활용 방식을 재구상하여 혁신을 달성하도록 지원합니다.

AI 서비스 살펴보기
다음 단계 안내

AI 개발 라이프사이클 전반에 걸친 기능에 원스톱으로 액세스하세요. 사용자 친화적인 인터페이스, 워크플로, 업계 표준 API 및 SDK에 대한 액세스를 통해 강력한 AI 솔루션을 제작할 수 있습니다.

watsonx.ai 살펴보기 라이브 데모 예약
각주

1 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012년.

2 Gavin Brown, “Ensemble Learning,” Encyclopedia of Machine Learning and Data Mining, Springer, 2017.

3 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023년. Lior Rokach, Pattern Classification Using Ensemble Methods, World Scientific Publishing Company, 2010년.

4 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012년.

5 Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani 및 Jonathan Taylor, An Introduction to Statistical Learning with Applications in Python, Springer, 2023년.

6 George Kyriakides 및 Konstantinos G. Margaritis, Hands-On Ensemble Learning with Python, Packt Publishing, 2019년.

7 Zhi-Hua Zhou, Machine Learning(번역: Shaowu Liu), Springer, 2021년. George Kyriakides 및 Konstantinos G. Margaritis, Hands-On Ensemble Learning with Python, Packt Publishing, 2019년.

8 Peter Sollich and Anders Krogh, "Learning with ensembles: How overfitting can be useful," Advances in Neural Information Processing Systems, Vol. 8, 1995년, https://papers.nips.cc/paper_files/paper/1995/hash/1019c8091693ef5c5f55970346633f92-Abstract.html.

9 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023.

10 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012년.

11 Ibomoiye Domor Mienye 및 Yanxia Sun, “A Survey of Ensemble Learning: Concepts, Algorithms, Applications, and Prospects,” IEEE Access, Vol. 10, 2022년, pp. 99129-99149, https://ieeexplore.ieee.org/document/9893798. Lior Rokach, “Ensemble-based Classifiers,” Artificial Intelligence Review, Vol. 33, 2010년, pp. 1-39, https://link.springer.com/article/10.1007/s10462-009-9124-7.

12 M. Galar, A. Fernandez, E. Barrenechea, H. Bustince 및 F. Herrera, "A Review on Ensembles for the Class Imbalance Problem: Bagging-, Boosting-, and Hybrid-Based Approaches," IEEE Transactions on Systems, Man, and Cybernetics, Vol. 42, No. 4, 2012년, pp. 463-484, https://ieeexplore.ieee.org/document/5978225.

13 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012년.

14 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023년.

15 Robi Palikar, “Ensemble Learning,” Ensemble Machine Learning: Methods and Applications, Springer, 2012.

16 Ibomoiye Domor Mienye 및 Yanxia Sun, “A Survey of Ensemble Learning: Concepts, Algorithms, Applications, and Prospects,” IEEE Access, Vol. 10, 2022년, pp. 99129-99149, https://ieeexplore.ieee.org/document/9893798.

17 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012년. Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023년.

18 Robi Palikar, “Ensemble Learning,” Ensemble Machine Learning: Methods and Applications, Springer, 2012년. Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012년.

19 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023년.

20 Devesh Walawalkar, Zhiqiang Shen 및 Marios Savvides, "Online Ensemble Model Compression Using Knowledge Distillation," 2020년, pp. 18-35, https://link.springer.com/chapter/10.1007/978-3-030-58529-7_2.

21 Xinzhe Han, Shuhui Wang, Chi Su, Qingming Huang 및 Qi Tian, "Greedy Gradient Ensemble for Robust Visual Question Answering," Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), 2021년, pp. 1584-1593, https://openaccess.thecvf.com/content/ICCV2021/html/Han_Greedy_Gradient_Ensemble_for_Robust_Visual_Question_Answering_ICCV_2021_paper.html.

22 Usman Gohar, Sumon Biswas 및 Hridesh Rajan, "Towards Understanding Fairness and its Composition in Ensemble Machine Learning," 2023 IEEE/ACM 45th International Conference on Software Engineering (ICSE), 2023년, pp. 1533-1545, https://ieeexplore.ieee.org/abstract/document/10172501. Khaled Badran, Pierre-Olivier Côté, Amanda Kolopanis, Rached Bouchoucha, Antonio Collante, Diego Elias Costa, Emad Shihab 및 Foutse Khomh, "Can Ensembling Preprocessing Algorithms Lead to Better Machine Learning Fairness?" Computer, Vol. 56, No. 4, 2023년, pp. 71-79, https://ieeexplore.ieee.org/abstract/document/10098174. Swanand Kadhe, Anisa Halimi, Ambrish Rawat 및 Nathalie Baracaldo, "FairSISA: Ensemble Post-Processing to Improve Fairness of Unlearning in LLMs," Socially Responsible Language Modelling Research Workshop, 2023년, https://neurips.cc/virtual/2023/78908.