임의의 포리스트는 배깅 개념을 따르는 의사 결정 트리 모음입니다. 한 의사 결정 트리에서 다음 의사 결정 트리로 이동할 때 마지막 의사 결정 트리에서 학습 한 정보는 다음 의사 결정으로 어떻게 넘어 갑니까?
내 이해에 따라 모든 의사 결정 트리에 대해 생성 된 다음 다음 의사 결정 트리가 잘못 분류 된 오류로부터 학습을 시작하기 전에로드되는 훈련 된 모델과 같은 것은 없기 때문입니다.
어떻게 작동합니까?
임의의 포리스트는 배깅 개념을 따르는 의사 결정 트리 모음입니다. 한 의사 결정 트리에서 다음 의사 결정 트리로 이동할 때 마지막 의사 결정 트리에서 학습 한 정보는 다음 의사 결정으로 어떻게 넘어 갑니까?
내 이해에 따라 모든 의사 결정 트리에 대해 생성 된 다음 다음 의사 결정 트리가 잘못 분류 된 오류로부터 학습을 시작하기 전에로드되는 훈련 된 모델과 같은 것은 없기 때문입니다.
어떻게 작동합니까?
답변:
트리간에 정보가 전달되지 않습니다. 임의의 포리스트에서는 모든 트리에 대해 동일한 임의 추출 전략을 사용하여 트리가 재배되므로 모든 트리가 동일하게 분산됩니다. 먼저 데이터의 부트 스트랩 샘플을 가져온 다음 임의로 선택된 기능의 하위 집합에서 분할을 사용하여 트리를 확장하십시오. 이것은 앙상블의 다른 나무에주의를 기울이지 않고 각 나무마다 개별적으로 발생합니다. 그러나 나무는 훈련 데이터의 공통 풀에서 샘플에 대해 훈련 된 각 나무에 의해 순전히 상관됩니다. 동일한 데이터 세트의 여러 샘플이 유사한 경향이 있으므로 트리는 해당 유사성의 일부를 인코딩합니다.
고품질 텍스트에서 임의 포리스트에 대한 소개를 읽는 것이 도움이 될 수 있습니다. 하나는 Leo Breiman의 "Random Forests"입니다. Hastie et al. 의 통계 학습 요소에 장도 있습니다.
임의의 포리스트를 AdaBoost 또는 그라디언트 부스팅 트리와 같은 부스팅 방법으로 혼동했을 수 있습니다. 부스팅 방법은 이전 부스팅 라운드의 부적합에 대한 정보를 사용하여 다음 부스팅 라운드에 알리기 때문에 동일하지 않습니다. 참조 : 임의 포리스트는 증폭 알고리즘입니까?
임의 숲은 여러 의사 결정 트리의 모음입니다 서로 독립적으로 교육을받습니다 . 따라서 순차적으로 의존하는 훈련이라는 개념은 없습니다 ( 부스팅 알고리즘 의 경우 ). 결과적으로 다른 답변에서 언급했듯이 나무에 대한 병렬 훈련을 수행하는 것이 가능합니다.
임의의 숲에서 "무작위"가 어디에서 왔는지 알고 싶을 수도 있습니다. 나무를 배우는 과정에 무작위성이 주입되는 두 가지 방법이 있습니다. 첫 번째는 각 트리를 학습하는 데 사용되는 임의의 데이터 포인트 선택이고, 두 번째는 각 트리를 빌드하는 데 사용되는 기능의 임의 선택입니다. 단일 의사 결정 트리는 일반적으로 데이터에 과적 합하는 경향이 있기 때문에 이러한 방식으로 임의성을 주입하면 사용 가능한 교육 데이터의 다른 하위 집합에 대해 각 트리마다 정확도가 높고 (과도하게 적합 할 수있는) 많은 트리가 생깁니다. . 따라서 모든 나무에서 예측 한 평균을 취하면 초과 이용률이 감소 합니다 (사용 가능한 모든 데이터에 대해 하나의 단일 결정 트리를 훈련시키는 경우와 비교 ).
회귀 작업에 사용되는 경우 평균 예측을 임의 포리스트의 최종 예측으로 사용하십시오.
분류 작업에 사용되는 경우 소프트 투표 전략을 사용하십시오. 각 클래스의 트리에서 예측 한 확률의 평균을 취한 다음 평균 확률이 가장 높은 클래스를 임의 포리스트의 최종 예측으로 선언하십시오.
또한, 순차적으로 의존하는 방식으로 나무를 훈련시키는 것이 가능하며, 그래디언트 부스트 트리 알고리즘이하는 것, 즉 랜덤 포레스트와는 완전히 다른 방법입니다.
어떻게 작동합니까?
랜덤 포레스트는 의사 결정 트리의 모음입니다. 나무는 독립적으로 구성됩니다. 각 트리는 대체 기능으로 선택한 샘플의 기능 및 하위 집합에 대해 교육을받습니다.
예측할 때 분류에 대해 입력 매개 변수는 포리스트의 각 트리에 제공되고 각 트리는 분류에서 "투표"되며 대부분의 투표에서 승리합니다.
간단한 의사 결정 트리에서 임의 포리스트를 사용해야하는 이유는 무엇입니까? 바이어스 / 차이가 절충됩니다. 랜덤 포레스트는 단일 의사 결정 트리와 비교할 때 훨씬 간단한 트리로 구성됩니다. 일반적으로 임의 포리스트는 편차로 인해 오류가 크게 줄어들고 바이어스로 인해 오류가 약간 증가합니다.
위의 저자들이 말했듯이 랜덤 포레스트 알고리즘은 부스팅 알고리즘이 아니라 배깅입니다.
배깅은 다른 샘플에 맞춰진 기본 알고리즘과 그 오류가 투표에서 상호 보완되므로 분류기의 분산을 줄일 수 있습니다. 배깅은 예측 능력을 향상시키기위한 수단으로 동일한 모델의 약간 다른 버전의 평균을 의미합니다. 배깅을 적용하기 위해 B 부트 스트랩 훈련 세트를 사용하여 B 회귀 트리를 구성하고 결과 예측의 평균을 구합니다.
일반적이고 매우 성공적인 포장 적용은 랜덤 포레스트입니다
그러나 이러한 의사 결정 트리를 임의의 포리스트에 구축 할 때는 트리의 분할이 고려 될 때마다 m
p 예측 변수의 전체 집합에서 분할 후보로 임의의 예측 변수 샘플 이 선택됩니다. 스플릿은 해당 m
예측 변수 중 하나만 사용할 수 있습니다 .