편향-분산 분해의 기본 개념
여러 가설을 결합했을 때 어떤 효과가 나타나는지는 편향-분산 분해(bias-variance decomposition)라 불리는 이론적 도구를 통해 확인할 수 있습니다. 크기가 비슷한 서로 다른 학습 데이터셋을 무한개 확보할 수 있고, 이를 이용해 무한개의 분류기를 만들 수 있다고 가정해 봅시다.
하나의 테스트 인스턴스를 모든 분류기가 처리하고, 최종 답은 다수결 투표로 결정됩니다. 이런 상황에서도 오류는 필연적으로 발생하는데, 그 이유는 완벽한 학습 방식은 존재하지 않기 때문입니다. 오류율은 머신러닝 접근법이 주어진 문제에 얼마나 잘 부합하는지에 따라 달라지며, 여기에 더해 데이터 속에 포함된 노이즈(noise)의 영향도 작용합니다. 노이즈는 학습으로 제거하기 사실상 불가능한 요소입니다.
편향(Bias): 피할 수 없는 고정 오차
무한개의 독립적으로 선택된 테스트 예제에 대해 결합 분류기의 오류를 평균 내어 기대 오류율을 계산했다고 가정해 보겠습니다. 특정 학습 알고리즘의 이 오류율은 해당 학습 문제에 대한 편향(bias)이라고 하며, 학습 방법이 문제에 얼마나 잘 맞는지를 측정하는 지표입니다.
즉, 편향은 무한히 많은 학습 데이터셋을 고려하더라도 제거할 수 없는 학습 알고리즘의 '고정적인' 오류를 의미합니다. 실제 환경에서는 편향을 정확하게 계산할 수 없으며, 근사치만 추정할 수 있을 뿐입니다.
분산(Variance): 학습 데이터에 따른 변동성
학습된 모델에서 발생하는 두 번째 오류의 원천은 실제로 사용된 학습 데이터셋 자체에서 비롯됩니다. 학습 데이터셋은 반드시 유한한 크기를 가지므로, 실제 인스턴스 모집단 전체를 완벽하게 대표하지 못합니다.
주어진 크기의 가능한 모든 학습 데이터셋과 가능한 모든 테스트 집합에 대해 이 오류 요소의 기댓값을 구한 것이 바로 해당 문제에 대한 학습 방법의 분산(variance)입니다. 분류기의 전체 기대 오류는 편향과 분산의 합으로 구성되며, 이것이 바로 편향-분산 분해입니다.
분류 문제에서의 복잡성
편향-분산 분해는 제곱 오차(squared error)에 기반한 수치 예측(numeric prediction)의 맥락에서 처음 연구되었으며, 이 경우에는 널리 받아들여지는 적용 방법이 존재합니다. 그러나 분류(classification) 문제에서는 상황이 명확하지 않아, 서로 경쟁하는 여러 분해 방식들이 제안되어 왔습니다.
배깅(Bagging): 편향-분산 관점에서 본 앙상블
배깅(bagging)은 앞서 설명한 과정을 하나의 주어진 학습 데이터셋으로 시뮬레이션함으로써, 학습 방법의 불안정성을 상쇄하려고 시도합니다. 매번 새롭고 독립적인 학습 데이터셋을 추출하는 대신, 원래의 학습 데이터에서 일부 인스턴스를 제거하고 다른 일부를 복제하는 방식으로 데이터를 변형합니다. 즉, 원본 데이터셋에서 인스턴스를 복원 추출(with replacement)하여 동일한 크기의 새로운 데이터셋을 만드는 것입니다. 이러한 샘플링 과정에서 일부 인스턴스는 자연스럽게 여러 번 복제되고, 다른 일부는 제외됩니다.
재표본화(resampling)로 생성된 데이터셋들은 서로 다르지만, 하나의 원본 데이터셋에 기반하기 때문에 서로 독립적이지는 않습니다. 그럼에도 불구하고 배깅은 원본 학습 데이터로 만든 단일 모델보다 훨씬 더 좋은 성능을 보이는 결합 모델을 만들어내며, 단일 모델보다 본질적으로 나쁜 결과를 내는 경우는 없다는 사실이 밝혀져 있습니다.