본문 바로가기

Data Science/2. 기계학습

[n233]Feature Importances

■ Key words

  ㆍ특성중요도 계산

     - Drop-Column Importance

     - Permutation importance(순열 중요도) : Mean Decrease Accuracy(MDA)

     - Feature importance, etc.

  ㆍAdaBoost와 RandomForest의 차이

  ㆍGradient Boosting / xgboost

 

■ 주요내용

  ㆍ

 

■ Session note

  ㆍ결측치가 50%가 넘는 feature의 경우, 경험 혹은 도메인 지식을 바탕으로 설명력에 따라 보존하거나 drop을 하면 된다
  ㆍ중요한 feature의 결측값 : 해당 imputer 사용 / train에서 클러스터링 하여 유사한 값을 넣도록 고민해보기
  ㆍfeature 중요도는 해당 feature의 설명력 혹은 중요도(영향력)를 분석하는 방법이다
  ㆍML(black box model)은 귀납적 추론 방법이다(기존 연구는 연역적 방법)
  * 과제
     - Baseline Model 선정 근거 설명
     - 우선은 default를 이용하여 진행; CV/hyper parameter tuning은 시간 나면
  ㆍpipe.named_steps : pipeline에 있는 함수들을 확인하는 것
  ㆍsimpleimputer : 결측치를 평균값/최빈값/근접한 그 외 다양한 계산방법으로 채우기
  ㆍtest dataset의 score가 낮을 경우, 일반화가 되지 못했다고 보는 것이 맞을 것 같다.

 

■ 주요함수

  ㆍRandom Forest hyper-parameter
     - max_depth : 높은값에서 감소시키며 튜닝, 너무 깊어지면 과적합
     - n_estimators : 적을경우 과소적합, 높을경우 긴 학습시간
     - min_samples_leaf : 과적합일경우 높임
     - max_features : 줄일 수록 다양한 트리생성, 높이면 같은 특성을 사용하는 트리가 많아져 다양성이 감소
     - class_weight : imbalanced 클래스인 경우 시도

  ㆍXGBoost hyper-parameter
     - learning_rate : 높을경우 과적합 위험이 있음
     - max_depth : 낮은값에서 증가시키며 튜닝, 너무 깊어지면 과적합위험,

                         -1 설정시 제한 없이 분기, 특성이 많을 수록 깊게 설정
     - n_estimators : 너무 크게 주면 긴 학습시간, early_stopping_rounds와 같이 사용
     - scale_pos_weight : imbalanced 문제인 경우 적용시도

 

■ Reference

  ㆍBAAGing(Bootstrap AGGregating) : https://www.youtube.com/watch?v=2Mg8QD0F1dQ 

  ㆍAdaBoost : https://www.youtube.com/watch?v=LsK-xG1cLYA 

  ㆍGradient Boost : https://www.youtube.com/watch?v=3CC4N4z3GJc 

  ㆍEli5 : https://eli5.readthedocs.io/en/latest/

 

Welcome to ELI5’s documentation! — ELI5 0.11.0 documentation

© Copyright 2016-2017, Mikhail Korobov, Konstantin Lopuhin Revision b0b832a0.

eli5.readthedocs.io

  ㆍXGBoost : https://xgboost.readthedocs.io/en/latest/

 

XGBoost Documentation — xgboost 1.5.0-dev documentation

 

xgboost.readthedocs.io

 

'Data Science > 2. 기계학습' 카테고리의 다른 글

[n234]Interpreting ML Model  (0) 2021.06.25
[n232]Data Wrangling  (0) 2021.06.23
[n231]Choose Your ML Problem  (0) 2021.06.22
[n223]Evaluation Metrics for Classification  (0) 2021.06.21
[n222]Random Forests  (0) 2021.06.21