티스토리 뷰

랜덤 포레스트와 보팅 패키지의 하이퍼파라미터를 확인해보고, 실습해본다.

RandomForest  하이퍼파라미터

n_estimators: 결정 트리의 개수를 의미.

기본값은 100. 트리 수를 늘리면 성능이 향상되지만 계산 비용도 증가

 

criterion: 분할의 품질을 측정하는 기준.

분류에 사용되는 기준은 "gini"(지니 불순도) 또는 "entropy"(정보 이득). 기본값은 "gini"

 

max_depth: 트리의 최대 깊이. 너무 깊은 트리는 과적합을 일으킬 수 있음.

기본값은 None, 리프 노드가 순수하거나 min_samples_split보다 적은 샘플을 가질 때까지 확장

 

min_samples_split: 노드를 분할하기 위해 필요한 최소 샘플 수. 기본값은 2

 

min_samples_leaf: 리프 노드가 가져야 하는 최소 샘플 수. 기본값은 1

 

min_weight_fraction_leaf: 리프 노드가 가져야 하는 샘플의 최소 가중치 합의 비율. 기본값은 0

 

max_features: 각 분할에서 고려할 특성 수.

옵션은 "auto", "sqrt", "log2", None, 또는 정수. 기본값은 "auto"로, 분류에서는 sqrt(n_features), 회귀에서는 n_features

 

max_leaf_nodes: 리프 노드의 최대 수. 기본값은 None, 리프 노드 수에 제한 없음

 

min_impurity_decrease: 분할로 인한 불순도 감소량의 최소값. 기본값은 0

 

bootstrap: 부트스트랩 샘플 사용 여부. 기본값은 True

 

oob_score: 사용하지 않은 샘플로 오류 추정 여부. 기본값은 False

 

n_jobs: fit과 predict를 병렬로 실행할 작업 수. 기본값은 None, 1개의 작업 사용. -1로 설정 시 모든 프로세서 사용

 

random_state: 난수 seed 설정. 동일한 결과를 얻기 위해 사용

 

verbose: 실행 과정에서 메시지 출력 여부. 기본값은 0, 메시지 출력하지 않음

 

warm_start: 이전 호출의 솔루션을 재사용해 더 많은 추정기 학습 여부. 기본값은 False

 

class_weight: 클래스 가중치. 기본값은 None

 

VotingClassifier  하이퍼파라미터

estimators: 앙상블에 포함될 예측기(모델) 목록. (name, estimator) 쌍으로 구성된 리스트

 

voting: 보팅 유형 지정. 'hard'는 다수결 투표, 'soft'는 예측 확률의 평균 사용. 기본값: 'hard'

 

weights: 각 예측기에 대한 가중치. voting='soft'일 때만 적용, 가중치가 높을수록 해당 모델의 예측 중요도가 커짐. 기본값: None

 

n_jobs: 앙상블 병렬 학습 시 사용할 CPU 코어 수. 기본값: None, 1개의 코어 사용

 

flatten_transform: 각 예측기의 transform 결과를 2D 배열로 변환할지 여부 지정. voting='soft'일 때만 적용. 기본값: True

 

verbose: 앙상블 학습 과정에서 진행 상황 출력 여부. 기본값: False

 

VotingRegressor  하이퍼파라미터

estimators: 앙상블에 포함될 예측기(모델) 목록. (name, estimator) 쌍으로 구성된 리스트

 

weights: 각 예측기에 대한 가중치. 예측 결과에 대한 가중 평균 계산. 기본값: None

 

n_jobs: 앙상블 병렬 학습 시 사용할 CPU 코어 수. 기본값: None, 1개의 코어 사용

 

verbose: 앙상블 학습 과정에서 진행 상황 출력 여부. 기본값: False

 

 

랜덤포레스트 관련 실습 코드

 

2024_B.D.A_Data-Analysis-Modeling/Data_Analysis_Modeling/17주차 랜덤포레스트.ipynb at main · SeonHoYoo/2024_B.D.A_Data-

Contribute to SeonHoYoo/2024_B.D.A_Data-Analysis-Modeling development by creating an account on GitHub.

github.com

 

공지사항
최근에 올라온 글
Total
Today
Yesterday