랜덤포레스트는 의사결정트리를 이용해 만들어진 것으로 여러개의 의사결정트리를 만들고, 투표를 시켜 다수결로
결과를 결정하는 방법을 말한다.
왜 여러개의 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로 예측하였기 때문이다.
'Python +머신러닝' 카테고리의 다른 글
[ChatGPT와 자연어 처리] - ChatGPT가 똑똑한 이유 (0) | 2023.10.12 |
---|---|
인공 신경망의 기본개념과 인공 신경망 모델 종류 10가지 (0) | 2023.03.21 |
머신 러닝 모델의 평가 (0) | 2021.12.10 |
Python pip란 무엇인가? what is pip? (0) | 2021.11.02 |
[Python] - 공공 API 데이터 호출하고 엑셀파일로 만들기 (0) | 2020.08.27 |