본문 바로가기
Make the Learning Curve/Data Science

[Random Forest 개요]

by 에이도 2021. 6. 4.

Random Forest 

 

1. Random Forest 설명

Decision Tree에 bagging과 random feature selection을 사용한 기술이다. 

- 다수(복수)의 decision tree를 이용하여 많이 선택 된 클래스 예측을 선택한다. 
다시 말해서, 여러개의 decision tree의 조합으로 의사결정을 하는 것이다. (앙상블 모형)

- 이때, forest = 많은 tree (여러개의 dicision trees) 를 의미한다.

- data noise에 대해 견고하다. 

 

1-1 Decision  Tree의 장점

- 의사 결정 과정의 이해가 쉽다.
(설명력이 좋다.)

- 구현이 쉽다.

 

1-2 Decision  Tree의 단점

 - Recursive partitioing이 항상 최선은 아니다.
   -> Data의 불확실성을 낮추는데 사용되지만 greedy 알고리즘을 따르기 때문에 local optimum에 빠지기 쉽다. 
   -> 따라서, 각 partitioing에 있어 최선의 선택이기 때문에 최종 결정에서 Global optimal solution이 아니다.

  - Non-Linear data에 대해서는 적절하지 않다. (Linear data의 사용성이 더 좋다.)

 : 이러한 한계점을 극복하기 위한 방법으로 Random Forest가 제안되었다.  

 

2. Main Concepts 

- 여러개의 decision tree를 학습하기 위해 무작위의 feature selection이 이루어진다.

- Bagging 기법 사용.

  -> 자료의 샘플링 기법이며, 복원추출을 통한 샘플 데이터 셋을 구성한다. 

  -> 위의 샘플 데이터셋은 해당 데이터내의 feature를 무작위 조합을 선택하여 구성하므로 많은 feature 조합을 만들 수 있다. 

  -> 변수를 줄이고 과적합(오버피팅)을 피하도록 한다.

  ->  model averaging approach이다. 

 

3. Random forest 훈련 과정 

- 1) bagging과 random features를 사용한 training data set를 준비한다.

- 2) 각 훈련 데이터 셋을 decision trees를 이용해 각각 학습 시킨다. (output - class는 동일하다)

- 3) 위에서 예측한 분류의 voting(다수의 decision tree가 선택한 분류 결과)을 통해  Majortiy voting class를 최종 결정한다. 

 

댓글