머신러닝의 배깅 소개
일련의 예측 변수와 반응 변수 간의 관계가 선형인 경우 다중 선형 회귀 와 같은 방법을 사용하여 변수 간의 관계를 모델링할 수 있습니다.
그러나 관계가 더욱 복잡해지면 비선형 방법을 사용해야 하는 경우가 많습니다.
그러한 방법 중 하나는 예측 변수 세트를 사용하여 반응 변수의 값을 예측하는 의사 결정 트리를 생성하는 분류 및 회귀 트리 (종종 CART로 약칭)입니다.

그러나 CART 모델의 단점은 높은 분산 으로 인해 어려움을 겪는 경향이 있다는 것입니다. 즉, 데이터 세트를 두 부분으로 나누고 두 부분 모두에 의사 결정 트리를 적용하면 결과가 매우 다를 수 있습니다.
CART 모델의 분산을 줄이기 위해 사용할 수 있는 한 가지 방법은 배깅(Bagging) , 때로는 부트스트랩 집계(Bootstrap Aggregation) 라고도 합니다.
배깅이란 무엇입니까?
단일 의사결정 트리를 만들 때 모델을 구축하는 데 하나의 훈련 데이터 세트만 사용합니다.
그러나 배깅에서는 다음 방법을 사용합니다.
1. 원본 데이터 세트에서 b 부트스트랩 샘플을 가져옵니다.
- 부트스트랩 표본은 교체를 통해 관측치가 취해진 원본 데이터 세트의 표본이라는 점을 기억하세요.
2. 각 부트스트랩 샘플에 대한 의사결정 트리를 만듭니다.
3. 각 트리의 예측을 평균하여 최종 모델을 얻습니다.
- 회귀 트리의 경우 B 트리의 예측 평균을 취합니다.
- 분류 트리의 경우 B- 트리에 의해 수행된 가장 일반적인 예측을 사용합니다.
배깅은 모든 기계 학습 알고리즘과 함께 사용할 수 있지만 본질적으로 분산이 크고 배깅을 통해 분산을 크게 줄여 테스트 오류를 줄일 수 있기 때문에 의사결정 트리에 특히 유용합니다.
의사결정 트리에 배깅을 적용하기 위해 개별 트리를 가지치기 없이 깊이 성장시킵니다 . 이로 인해 분산은 높지만 편향은 낮은 개별 트리가 생성됩니다. 그런 다음 이 트리에서 평균 예측을 수행하면 분산을 줄일 수 있습니다.
실제로 최적의 성능은 일반적으로 50~500그루의 나무에서 달성되지만, 최종 모델을 생성하기 위해 수천 그루의 나무를 맞추는 것도 가능합니다.
더 많은 트리를 맞추려면 더 많은 컴퓨팅 성능이 필요하며 이는 데이터 세트의 크기에 따라 문제가 될 수도 있고 그렇지 않을 수도 있다는 점을 명심하세요.
Out-of-bag 오류 추정
k-겹 교차 검증 에 의존하지 않고 배깅 모델의 테스트 오류를 계산할 수 있다는 것이 밝혀졌습니다.
그 이유는 각 부트스트랩 샘플이 원래 데이터 세트의 관측치 중 약 2/3를 포함하는 것으로 표시될 수 있기 때문입니다. 배깅 트리를 맞추는 데 사용되지 않은 나머지 1/3의 관측치를 OOB(Out-of-bag) 관측치 라고 합니다.
관측값이 OOB인 각 트리에서 평균 예측을 취하여 원본 데이터세트의 i번째 관측값을 예측할 수 있습니다.
이 접근 방식을 사용하여 원본 데이터 세트의 모든 n개 관측값에 대해 예측을 수행하고 테스트 오류의 유효한 추정치인 오류율을 계산할 수 있습니다.
테스트 오류를 추정하기 위해 이 접근 방식을 사용하면 특히 데이터 세트가 큰 경우 k-겹 교차 검증보다 훨씬 빠르다는 장점이 있습니다.
예측 변수의 중요성 이해
의사결정나무의 장점 중 하나는 해석과 시각화가 쉽다는 점을 기억하세요.
대신 배깅을 사용하면 최종 배깅 모델은 다양한 트리의 평균을 구한 결과이므로 더 이상 개별 트리를 해석하거나 시각화할 수 없습니다. 해석 가능성을 희생하여 예측 정확도를 얻습니다.
그러나 모든 B- 트리에 대해 평균을 낸 특정 예측 변수에 대한 분포로 인한 RSS(잔차 제곱합)의 총 감소를 계산하여 각 예측 변수의 중요성을 여전히 이해할 수 있습니다. 값이 클수록 예측 변수가 더 중요해집니다.

마찬가지로 분류 모델의 경우 주어진 예측 변수에 대한 분포로 인한 총 지니 지수 감소를 모든 B 트리에 대한 평균으로 계산할 수 있습니다. 값이 클수록 예측 변수가 더 중요해집니다.
따라서 최종 전체 모델을 정확하게 해석할 수는 없지만 반응을 예측할 때 각 예측 변수가 얼마나 중요한지에 대한 아이디어는 얻을 수 있습니다.
배깅 그 이상
배깅의 장점은 일반적으로 단일 결정 트리에 비해 테스트 오류율이 향상된다는 것입니다.
단점은 데이터 세트에 매우 강력한 예측 변수가 있는 경우 배깅 트리 수집의 예측이 높은 상관 관계를 가질 수 있다는 것입니다.
이 경우 배깅된 트리의 대부분 또는 전부는 첫 번째 분할에 이 예측자를 사용하므로 서로 유사하고 높은 상관 예측을 갖는 트리가 생성됩니다.
이 문제를 해결하는 한 가지 방법은 배깅과 유사한 방법을 사용하지만 장식된 트리를 생성할 수 있는 랜덤 포레스트를 사용하는 것입니다. 이는 종종 테스트 오류율을 낮추게 됩니다.
여기에서 Random Forest에 대한 간단한 소개를 읽을 수 있습니다.