의사결정 트리와 랜덤 포레스트: 차이점은 무엇인가요?


의사결정 트리는 일련의 예측 변수와 응답 변수 간의 관계가 비선형일 때 사용되는 일종의 기계 학습 모델입니다.

의사결정 트리의 기본 아이디어는 의사결정 규칙을 사용하여 응답 변수의 값을 예측하는 일련의 예측 변수를 사용하여 “트리”를 구성하는 것입니다.

예를 들어, 예측 변수인 “경기 연수”와 “평균 홈런”을 사용하여 프로야구 선수의 연봉을 예측할 수 있습니다.

이 데이터세트를 사용하면 의사결정 트리 모델은 다음과 같습니다.

의사결정 트리 예

이 의사결정 트리를 해석하는 방법은 다음과 같습니다.

  • 4.5년 미만 선수들의 예상 연봉은 225,800달러 입니다.
  • 4.5년 이상, 평균 홈런 16.5개 미만을 기록한 선수들의 예상 연봉은 577,600달러 입니다.
  • 4.5년 이상의 경력과 평균 16.5개 이상의 홈런을 기록한 선수의 예상 연봉은 $975.6K 입니다.

의사결정 트리의 가장 큰 장점은 데이터 세트에 빠르게 적용할 수 있고 위와 같은 “트리” 다이어그램을 사용하여 최종 모델을 명확하게 시각화하고 해석할 수 있다는 것입니다.

가장 큰 단점은 의사결정 트리가 훈련 데이터 세트에 과적합되는 경향이 있다는 것입니다. 즉, 보이지 않는 데이터에서는 성능이 저하될 가능성이 높습니다. 이는 데이터 세트의 이상값에 의해 크게 영향을 받을 수도 있습니다.

의사결정 트리의 확장은 본질적으로 의사결정 트리 세트인 랜덤 포레스트(Random Forest) 로 알려진 모델입니다.

랜덤 포레스트 모델을 생성하는 데 사용하는 단계는 다음과 같습니다.

1. 원본 데이터 세트에서 부트스트랩 샘플을 가져옵니다.

2. 각 부트스트랩 표본에 대해 예측 변수의 무작위 하위 집합을 사용하여 의사결정 트리를 만듭니다.

3. 각 트리의 예측을 평균하여 최종 모델을 얻습니다.

랜덤 포레스트의 장점은 보이지 않는 데이터에 대해 의사결정 트리보다 훨씬 더 나은 성능을 발휘하는 경향이 있고 이상값이 발생할 가능성이 적다는 것입니다.

랜덤 포레스트의 단점은 최종 모델을 시각화할 방법이 없으며, 컴퓨팅 성능이 충분하지 않거나 작업 중인 데이터 세트가 매우 큰 경우 모델을 구축하는 데 오랜 시간이 걸릴 수 있다는 것입니다.

장점과 단점: 의사결정나무 vs. 랜덤 포레스트

다음 표에는 랜덤 포레스트와 비교하여 의사결정 트리의 장점과 단점이 요약되어 있습니다.

의사결정 트리와 랜덤 포레스트의 차이점을 요약한 표

다음은 테이블의 각 행에 대한 간략한 설명입니다.

1. 해석 가능성

의사결정 트리는 최종 모델을 시각화하고 이해하기 위해 트리 다이어그램을 만들 수 있기 때문에 해석하기 쉽습니다.

반대로, 우리는 랜덤 포레스트를 시각화할 수 없으며 최종 랜덤 포레스트 모델이 어떻게 결정을 내리는지 이해하기 어려울 수 있습니다.

2. 정확성

의사결정 트리는 훈련 데이터 세트에 과적합될 가능성이 높기 때문에 보이지 않는 데이터 세트에서는 성능이 저하되는 경향이 있습니다.

반대로, 랜덤 포레스트는 학습 데이터세트의 과적합을 방지하기 때문에 보이지 않는 데이터세트에서 매우 정확한 경향이 있습니다.

3. 과적합

앞서 언급했듯이 의사결정 트리는 훈련 데이터에 과적합되는 경우가 많습니다. 즉, 실제 기본 모델이 아닌 데이터세트의 “노이즈”에 적응할 가능성이 높습니다.

반대로, 랜덤 포레스트는 특정 예측 변수만 사용하여 각 개별 결정 트리를 구성하기 때문에 최종 트리가 장식되는 경향이 있습니다. 이는 랜덤 포레스트 모델이 데이터 세트에 과적합될 가능성이 낮다는 것을 의미합니다.

4. 이상치

의사결정 트리는 이상값의 영향을 받기 매우 쉽습니다.

반대로, 랜덤 포레스트 모델은 많은 개별 의사결정 트리를 구축한 다음 해당 트리에서 예측의 평균을 취하기 때문에 이상값의 영향을 받을 가능성이 훨씬 적습니다.

5. 계산

의사결정 트리는 데이터세트에 빠르게 적용될 수 있습니다.

반대로, 랜덤 포레스트는 훨씬 더 계산 집약적이며 데이터 세트의 크기에 따라 생성하는 데 오랜 시간이 걸릴 수 있습니다.

의사결정 트리 또는 랜덤 포레스트를 사용하는 경우

일반적으로:

비선형 모델을 신속하게 생성하고 모델이 결정을 내리는 방식을 쉽게 해석하려면 의사결정 트리를 사용해야 합니다.

하지만 계산 능력이 많고 모델을 어떻게 해석할지 고민하지 않고 매우 정확할 가능성이 높은 모델을 만들고 싶다면 랜덤 포레스트를 사용해야 합니다.

현실 세계에서 기계 학습 엔지니어와 데이터 과학자는 랜덤 포레스트를 사용하는 경우가 많습니다. 랜덤 포레스트는 매우 정확하고 최신 컴퓨터와 시스템은 이전에는 처리할 수 없었던 대규모 데이터 세트를 처리할 수 있는 경우가 많기 때문입니다.

추가 리소스

다음 튜토리얼에서는 의사결정 트리와 랜덤 포레스트 모델을 소개합니다.

다음 튜토리얼에서는 R에서 의사결정 트리와 랜덤 포레스트를 맞추는 방법을 설명합니다.

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다