[Day 29] Random Forests
2022. 3. 3. 18:09ㆍAI/Codestates
728x90
반응형
코딩부트캠프 | 코드스테이츠 - 비전공생도 개발자가 될 수 있습니다
코딩부트캠프를 찾는다면? 개발자로 커리어 전환을 위한 책임있는 코딩 교육 기관! 서비스 기획자, 그로스 마케터, 데이터 사이언티스트 등 다양한 전문 커리어에 도전하세요. 취업 성공의 후기
www.codestates.com
Warm-up
- Random Forests
Note
- 앙상블 방법 : 한 종류의 데이터로 여러 머신러닝 학습모델을 만들어 그 모델들의 예측결과를 다수결이나 평균을 내어 예측하는 방법
- Random Forests
- 버깅 ( Bagging , Bootstrap Aggregting ) : Bootstrap으로 훈련된 데이터를 다시 합치는 과정
- 부스스트랩 ( Bootstrap ) 샘플링 : 원본 데이터에서 샘플링을 하는데 복원추출을 한다는 것
from sklearn.impute import SimpleImputer
from sklearn.pipeline import make_pipeline
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import f1_score
pipe_ord = make_pipeline(
OrdinalEncoder(),
SimpleImputer(),
RandomForestClassifier(random_state=2, n_jobs=-1, oob_score=True)
)
pipe_ord.fit(X_train, y_train)
print('검증 정확도', pipe_ord.score(X_val, y_val))
- 원핫인코딩 VS 순서형 인코딩
- OneHotEncoding : 카테고리 수에 따라 새로운 특성 생성 -> 카테고리가 많이 없고, 명목형 데이터 일 때
- OrdinalEncoding : 열 개수는 그대로 유지 ( 1개 ) 카테고리 별 중요도가 설정됨 -> 카테고리 별로 중요도가 다를 때
- 트리 기반 모델에서는 OrdinalEncoding이 좋은 이유
- 트리모델은 순서를 고려하지 않는다
- 특성 개수가 증가 하지 않는다 -> 특성 중요도를 위해 분할하지 않아야 한다.
Review
더보기
새로운 인코딩들에 대해서 알아보고 F1-Score의 차이를 알 수 있었다.
참고
728x90
반응형
'AI > Codestates' 카테고리의 다른 글
[Day 31] Model Selection (0) | 2022.03.08 |
---|---|
[Day 30] Evaluation Metrics for Classification (0) | 2022.03.04 |
[Day 28] Decision Trees (0) | 2022.03.03 |
[Day 27] Sprint Review (0) | 2022.02.28 |
[Day 26] Logistic Regression (0) | 2022.02.28 |