의사결정트리(Decision Tree)와 랜덤포레스트(RandomForest) 차이점

 

 랜덤포레스트는 의사결정트리를 이용해 만들어진 것으로 여러개의 의사결정트리를 만들고, 투표를 시켜 다수결로

결과를 결정하는 방법을 말한다.

 

왜 여러개의 DecisionTree를 생성할까?

그것은 각각의 트리들이 서로 다른 데이터셋과 무작위로 선택된 feature를 통해서 학습되기 때문이다.

 

 이렇게 트리들이 서로 다른 데이터와 feature를 통해 학습되기 때문에 Tree들이 다양한 시각에서

데이터를 바라볼 수 있게 된다.

 

따라서 그냥 DecisionTree를 사용하는 것보다 이러한 여러개의 DecisionTree 들을 모아서

투표를 진행하게된다.

 

그렇다면, 이 투표는 어떻게 진행될까? 말 그대로 다수결 투표이다. 간단한 예시를 통해서 이해하고 넘어가자

 

 예를 들어, 3개의 Decision Tree 모델이 있고 각각의 모델이 이진 분류(Binary Classification) 문제에서

예측한 결과가 다음과 같다고 가정한다면

Tree1 Positive (1)
Tree2 Positive (1)
Tree3 Negative (0)

이 경우, 다수결 투표를 통해 최종 예측값을 결정하면, Positive (1)으로 예측하게  된다.

왜냐하면 3개의 Tree 중에서 2개의 Tree가 Positive로 예측하였기 때문이다.