본문 바로가기
ML

# 3 앙상블 기법 랜덤 포레스트(Random Forest)

by Kwonys 2023. 9. 21.
728x90
반응형

Random Forest

여러 개의 결정 트리(Decision Tree)가 모여 랜덤 포레스트(Random Forest)를 구성

한 개의 결정 트리만을 이용하여 머신러닝을 하면 오버피팅 되는 단점이 있는데 랜덤 포레스트로 이 단점을 해결 가능

서로 다른 방향으로 과대적합된 트리를 많이 만들면 그 결과를 평균냄으로써 과대적합된 양을 줄일 수 있음

  • 각각의 트리는 타깃 예측을 잘 해야하고 다른 트리와는 구별되어야 한다.
  • 앙상블의 다양성 확보를 위한 두 가지 장치
    • Bagging
    • Random subspace method
  • 특징: 개별 의사결정 나무에 대한 가지치기를 수행하지 않음

 

파라미터

중요 매개변수는 n_estimators, max_features이고 max_depth 같은 사전 가지치기 옵션이 있다.

n_estimators는 클수록 좋다. 더 많은 트리를 평군하면 과대 적합을 줄여 안정적인 모델을 만둘 수 있다. (메모리와 훈련시간은 증가한다.)

n_estimators: 랜덤 포레스트 안의 결정 트리 갯수

max_features: 각 트리가 얼마나 무작위가 될지를 결정, 작은 max_features는 과대적합을 줄인다. 일반적으로는 기본값을 쓰면된다.

max_depth:트리의 최대 깊이

 

변수의 중요도

  • 랜덤 포레스트는 다중선령 회귀분석/로지스틱 회귀분석과는 달리 개별 변수가 통계적으로 얼마나 유의한지에 대한 정보를 제공하지 않음
  • 대신 랜덤 포레스트는 다음과 같은 간접적인 방식으로 변수의 중요도를 추정함
    • 1단계: 원래 데이터 집합에 대해 OOB Error를 구함
    • 2단계: 특정 변수값을 임의로 섞은(Random permulation) 데이터 집합에 대해 OOB Error를 구함
    • 3단계: 개별 변수의 중요도는 2단계와 1단계 OOB Error의 평균과 분산을 고려하여 추정
728x90
반응형