나는 앙상블 학습에 대해 약간 혼란스러워합니다. 간단히 말해서, k 모델을 실행하고 이러한 k 모델의 평균을 얻습니다. k 모델의 평균이 다른 모델보다 우수하다는 것을 어떻게 보장 할 수 있습니까? 편견이 "확산"또는 "평균화"되었음을 이해합니다. 그러나 앙상블에 두 개의 모델 (예 : k = 2)이 있고 그 중 하나가 다른 것보다 나쁘면 앙상블이 더 나은 모델보다 나쁘지 않습니까?
나는 앙상블 학습에 대해 약간 혼란스러워합니다. 간단히 말해서, k 모델을 실행하고 이러한 k 모델의 평균을 얻습니다. k 모델의 평균이 다른 모델보다 우수하다는 것을 어떻게 보장 할 수 있습니까? 편견이 "확산"또는 "평균화"되었음을 이해합니다. 그러나 앙상블에 두 개의 모델 (예 : k = 2)이 있고 그 중 하나가 다른 것보다 나쁘면 앙상블이 더 나은 모델보다 나쁘지 않습니까?
답변:
보장되지 않습니다. 말했듯이 앙상블은 개별 모델보다 나쁠 수 있습니다. 예를 들어, 실제 모델과 불량 모델의 평균을 취하면 상당히 나쁜 모델이됩니다.
모델 의 평균은 모델이 (어떤) 서로 독립적 인 경우에만 개선됩니다. 예를 들어, 배깅에서 각 모델은 데이터의 임의의 하위 집합을 기반으로 구축되므로 일부 독립성이 내장되어 있습니다. 또는 서로 다른 기능 조합을 사용하여 모델을 구축 한 다음 평균화를 통해 모델을 결합 할 수 있습니다.
또한 모델 평균은 개별 모델의 분산이 높은 경우에만 잘 작동합니다. 그렇기 때문에 매우 큰 나무를 사용하여 임의의 숲을 만듭니다. 반면에 선형 회귀 모델을 평균하면 선형 모델이 제공되므로 시작한 모델보다 나을 가능성이 적습니다 (시도하십시오!).
부스팅 및 블렌딩과 같은 다른 앙상블 방법은 개별 모델의 출력을 훈련 데이터와 함께 더 큰 모델의 입력으로 가져와 작동합니다. 이 경우 실제로 더 복잡하고 여전히 훈련 데이터를 사용하기 때문에 개별 모델보다 더 잘 작동한다는 것은 놀라운 일이 아닙니다.
나는이 맥락에서 거의 논의되지 않은 것을 던지기를 원하며, 그것은 당신에게 생각의 음식을 줄 것입니다.
앙상블은 또한 인간과 함께 작동합니다!
사람의 예측을 평균하면 개별 예측보다 더 나은 예측을하는 것으로 관찰되었습니다. 이것은 군중의 지혜로 알려져 있습니다.
이제는 일부 사람들이 다른 정보를 가지고 있기 때문에 정보를 효과적으로 평균화하고 있다고 주장 할 수 있습니다. 그러나 아니오, 이것은 단지의 콩 수를 추측하는 것과 같은 작업에서도 마찬가지입니다.
이것에 관한 많은 책과 실험이 있으며,이 현상은 여전히 연구원들을 혼란스럽게합니다.
@Flounderer가 지적했듯이, 실제 이익은 의사 결정 트리와 같은 소위 불안정한 모델에서 비롯되며 각 관측치가 일반적으로 결정 경계에 영향을 미칩니다. 리샘플링은 일반적으로 지원 벡터에 큰 영향을 미치지 않기 때문에 SVM과 같은보다 안정적인 것들은 많이 얻지 못합니다.
그렇습니다. 그러나 앙상블의 아이디어는 다른 앙상블에서 데이터의 다른 특성을 캡처하면서 과도한 피팅을 피하기 위해 더 간단한 모델을 훈련시키는 것입니다. 물론 동일한 훈련 데이터로 훈련하는 동안 단일 모델보다 우수한 앙상블 모델을 보장 할 수는 없습니다. 앙상블 모델과 부스팅 (예 : AdaBoost)을 결합하여 성능을 향상시킬 수 있습니다. 강화하면 각 데이터 포인트에 가중치를 할당하고 오류에 따라 업데이트하여 다음 각 Ensemle 모델을 훈련시킵니다. 따라서 좌표 하강 알고리즘으로 생각하면 일정한 평균 모델 복잡성을 유지하면서 각 반복마다 훈련 오류를 줄일 수 있습니다. 전반적으로 이것은 성능에 영향을 미칩니다. 많이있다