co-code 님의 블로그
co-code
« 2026/08 »
| 일 |
월 |
화 |
수 |
목 |
금 |
토 |
| |
|
|
|
|
|
1 |
| 2 |
3 |
4 |
5 |
6 |
7 |
8 |
| 9 |
10 |
11 |
12 |
13 |
14 |
15 |
| 16 |
17 |
18 |
19 |
20 |
21 |
22 |
| 23 |
24 |
25 |
26 |
27 |
28 |
29 |
| 30 |
31 |
|
|
|
|
|
관리 메뉴
co-code 님의 블로그
랜덤 포레스트(Random Forest) 본문
python
랜덤 포레스트(Random Forest)
co-code
2026. 5. 15. 20:30
- 랜덤 포레스트(RandomForest)
- 배깅 방식을 활용
- 데이터 샘플링 방식 + 다수결 or 평균 사용
- 사용하는 모델은 의사결정나무 고정 (랜덤포레스트 안에 의사결정나무가 하드코딩되어있음)
- 각 노드에서 분할 할때마다 모든 피치에서 일부만 무작위로 선택하여 트리간의 상관성을 낮춰준다. -> 다양성 증가
- 여러 결정 트리를 서로 다르게 학습 시킨 뒤 다수결(분류), 평균(회귀)으로 예측하는 배깅 기반의 앙상블
- 부트스트랩(중복 데이터를 허용)과 특성의 무작위 선택을 이용해 모델 간의 상관성을 낮춰서 성능과 안정성을 높이는 방법
- 고차원 데이터에서 안정성이 굉장히 높다
- 대부분의 실무에서 많이 사용이 되느 알고리즘
- paramer(매개변수)
- n_estimators
- criterion
- 분류 : gini(기본값), entropy, log_loss
- 회귀 : squared_error(기본값), absolute_error, friedman_mse, poisson
- max_depth
- bootstrap
- 기본값 : True
- 트리 학습 데이터에 부트스트랩을 사용할 것인가
- max_features
- 분류 : 'sqrt' (피쳐 개수의 루트 값)
- 회귀 : 1.0 (모든 피쳐)
- 가능한 값 : int(0.0 ~ 1.0), 'sqrt', 'log2'
- min_samples_leaf
- 기본값 : 1
- 리프 노드의 최소 샘플 수
- 값이 큰 경우, 리프가 너무 세분화 되지 않도록 방지 (과적합 방지)
- max_leaf_node
- 기본값 : None
- 트리 전체에서 리프 노드의 수를 제한
- 너무 많은 리프가 발생하면 과적합
- 너무 적은 리프가 발생하면 과소적합 (모델의 단순화 : 성능 저하)
- oob_score
- 기본값 : False
- 부트스트렙 사용 시 빠진 샘플들을 이용하여 검증 점수를 출력
- max_samples
- 기본값 : None
- 부트스트랩이 True인 경우, 각 트리가 시용할 샘플의 수 (비율)
- max_weight_fraction_leaf
- 기본값 : 0.0
- 샘플 가중치의 합이 전체 데이터에서 차지하는 비율
- 불균형 데이터 셋에서 유용하게 사용됨
- class_weight
- 데잍의 불균형에서 각각의 가중치를 부여할 수 있는 매개변수
- 'balanced' : 소수의 데이터에 가중치를 추가적으로 부여하여 데이터 불균형 문제를 완화
- 'balanced_subsample' : 각 트리에서 부트스트랩 데이터에서 데이터의 비율로 가중치를 부여
- dict형태로 클래스 별 가중치를 고정값을으로 부여
- 속성
- estimators_ : 결정 트리들의 목록
- feature_importances_ : 피쳐들의 중요도
- oob_score_ : OOB를 이용한 검증 점수
- oob_decision_function_
- 분류 모델에서 사용 가능
- OOB 데이터들의 확률 / 결정 함수
- oob_prediction_
- n_feature_in / feature_names_in
- 입력이 되는 피쳐의 개수 / 입력이 되는 피쳐들의 이름 목록
- 메서드
- fit(x, y) : 모델에 학습
- predict(x) : 모델을 통한 예측
- score(x, y) : 분류에서는 정확도, 회귀에서는 r2_score
- apply(x) : 각 샘플이 각 트리에서 도달하는 리프의 인덱스를 변환
- decision_path(x) : 트리 내의 경로