답변

76

내가 설명하려는 시도를 취할 것입니다 :

는 M 기능을 가지고 있습니다 (또는 속성 또는 변수) 우리의 훈련 데이터 세트가 T 및 가정 해 데이터 집합으로 표현하자. RF의

T = {(X1,y1), (X2,y2), ... (Xn, yn)}

Xi is input vector {xi1, xi2, ... xiM} 

yi is the label (or output or class). 

요약 : - 포기할

  • 랜덤 서브 스페이스 m

    • 랜덤 포레스트 알고리즘은 주로 두 가지 방법에 기초한 분류이다 ethod.

    생각에는 우리는 우리가 처음 (각 데이터 세트에 대한 n 번) S와-교체 T 데이터의 임의 리샘플링에서 생성 "same size as original"의 데이터 세트를 만들 우리의 숲에서 나무의 S 수를 가지고 결정한다. 그러면 {T1, T2, ... TS} 데이터 세트가 생성됩니다. 이들 각각을 부트 스트랩 데이터 세트라고합니다. "교체"로 인해 모든 데이터 세트 Ti은 중복 데이터 레코드를 가질 수 있으며 Ti는 원래 데이터 세트의 여러 데이터 레코드를 누락 될 수 있습니다. 이를 Bootstrapping이라고합니다. (en.wikipedia.org/wiki/Bootstrapping_(statistics))

    bagging은 부트 스트랩을 취하는 과정으로 &은 각 부트 스트랩에서 학습 된 모델을 집계합니다.

    지금, RF는 S 나무를 생성하고 트리를 만들 M 가능한 기능 중 m (=sqrt(M) or =floor(lnM+1)) 임의의 하위 기능을 사용합니다. 이를 무작위 부분 공간 방법이라고합니다.

    따라서 각 Ti 부트 스트랩 데이터 세트에 대해 Ki 트리를 만듭니다. 일부 입력 데이터를 분류하려는 경우 Y = {y1, y2, ..., ys}으로 표시 할 수있는 각 트리를 통과시키고 S 출력 (각 트리에 하나씩)을 생성합니다. 최종 예측은이 집합에 대한 다수결 투표입니다.

    아웃 - 오브 - 백 에러 :

    일본어 훈련 각 (Xi,yi)위한 분류기 (S 나무)를 생성 한 후, 즉 T, (Xi,yi)을 포함하지 않는 모든 Tk를 선택 세트. 주의해야 할 부분 집합은 원본 데이터 집합의 특정 레코드를 포함하지 않는 부스트랩 데이터 집합입니다. 이 집합을 가방 밖에서의 예제라고합니다. 이러한 하위 집합 (원본 데이터 집합 T의 각 데이터 레코드 당 하나)은 n입니다.OOB 분류자는 Tk 이상의 투표 수를 합산하여 (xi,yi)을 포함하지 않습니다.

    일반화 오류에 대한 Out-of-Bag 견적은 훈련 세트의 Out-of-Bag 분류기의 오류율입니다 (알려진 yi과 비교하십시오).

    왜 중요한가요? Breiman [1996b]에서 bagged 분류기의 오류 추정에 대한 연구는 out-of-bag 추정치가 훈련 세트와 동일한 크기의 테스트 세트를 사용하는 것만 큼 정확하다는 것을 보여주는 경험적 증거를 제공합니다. 따라서, 아웃백 백 (out-of-bag) 오차 추정치를 사용하면 세트 대용 시험 세트의 필요성이 제거된다.

    은 (수정 주셔서 감사합니다 @Rudolf. 그의 아래에 설명.)

  • +2

    원더풀 설명 @Manoj Awasthi –

    +0

    감사합니다 @RushdiShams –

    +2

    좋은 explantion, 짧은 경우 더 좋을 것입니다. – bourneli

    28

    무작위 숲 알고리즘의 Breiman의 원래 구현에서 각 트리는 총 교육 데이터의 약 2/3에서 학습됩니다. 포레스트가 빌드됨에 따라 각 트리는 해당 트리를 구축하는 데 사용되지 않은 샘플에 대해 테스트 할 수 있습니다 (교차 검증과 동일하게 남겨 둡니다). 이것은 가방 밖의 오류 추정치 - 생성되는 임의의 포리스트에 대한 내부 오류 추정치입니다.

    +1

    에 질문을 게시 할 수없는 경우에는 주셔서 감사합니다 간결하고 명확한 대답. – ays0110

    관련 문제