Extra Trees 정리

seono·2022년 11월 17일
0

1. 정의

  • 극도로 무작위화(Extremely Randomized)된 기계 학습 방법
  • 데이터 샘플 수와 특성 설정까지 랜덤
  • 랜덤 포레스트와 동일한 원리를 이용하기 때문에 많은 특성을 공유함
  • 랜덤 포레스트에 비해 속도가 빠르고 성능도 미세하게 높음
  • Bootstrap 샘플링을 사용하지 않고 전체 특성 중 일부를 랜덤하게 선택해 노드 분할에 사용 → 무작위 분할 중 가장 좋은 것을 분할 규칙으로 선택

Extra Trees - 임의 분할
Random Forest - 최적 분할

2. 주요 파라미터

  • n_estimators : int, default=100
    생성할 트리의 수

  • criterion : {“squared_error”, “absolute_error”}, default=”squared_error”
    분할 품질을 측정하는 기능. 
    평균 제곱 오류(mean squared error)에 대한 "squared_error"
    평균 절대 오류(mean absolute error)에 대한 "absolute_error"

  • max_depth : int, default=None
    트리의 최대 깊이

  • min_samples_split : int or float, default=2
    내부 노드를 분할하는 데 필요한 최소 샘플 수

  • max_features : {“sqrt”, “log2”, None}, int or float, default=1.0
    최상의 분할을 찾을 때 고려해야 할 기능의 수

3. Extra Trees Regressor

회귀 모델

# source code
class sklearn.ensemble.ExtraTreesRegressor(n_estimators=100, 
*, criterion='squared_error', max_depth=None, 
min_samples_split=2, min_samples_leaf=1, 
min_weight_fraction_leaf=0.0, max_features=1.0, 
max_leaf_nodes=None, min_impurity_decrease=0.0, 
bootstrap=False, oob_score=False, n_jobs=None, 
random_state=None, verbose=0, warm_start=False, 
ccp_alpha=0.0, max_samples=None)

4. Extra Trees Classifier

분류 모델

# source code
class sklearn.ensemble.ExtraTreesClassifier(n_estimators=100, 
*, criterion='gini', max_depth=None, min_samples_split=2, 
min_samples_leaf=1, min_weight_fraction_leaf=0.0, 
max_features='sqrt', max_leaf_nodes=None, 
min_impurity_decrease=0.0, 
bootstrap=False, oob_score=False, n_jobs=None, 
random_state=None, verbose=0, warm_start=False, 
class_weight=None, ccp_alpha=0.0, max_samples=None)

5. Random Forest와 비교

1) 공통점

  • 앙상블 학습
    둘 다 트리 알고리즘으로 여러 개의 분류기를 생성해 보다 정확한 예측을 도출
  • 동일한 원리 이용
    메인 하이퍼 파라미터 등 많은 특징을 공유
  • 최적값 선택
    분할 단계에서 최적값 선택하는지 분할 후 최적값을 선택하는지는 차이가 있음

2) 차이점

  • Bootstrap 사용 여부
    랜덤 포레스트는 Bootstrap 샘플링을 사용하지만
    엑스트라 트리는 Bootstrap=False가 기본값

  • 노드 분할 방법
    랜덤 포레스트는 최적의 분할을 선택
    엑스트라 트리는 무작위 분할 후 선택

  • 편향과 분산 차이
    엑스트라 트리는 모든 데이터를 사용하기 때문에 랜덤 포레스트에 비해 편향이 감소함
    무작위 선택의 영향으로 분산 또한 감소

  • 속도
    엑스트라 트리는 데이터를 랜덤 분할 후 선택함
    최적의 분할을 계산하지 않아서 속도가 빠름

profile
데이터분석 뽀개기

0개의 댓글