강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

yonghankim7님의 프로필 이미지
yonghankim7

작성한 질문수

[개정판] 파이썬 머신러닝 완벽 가이드

XGBoost feature importance에 관한 질문

작성

·

467

0

안녕하세요. 수업 잘 듣고 있습니다.

다음은 책 240p에 있는 XGBoost 의 feature importance에 관한 내용인데, 파이썬 래퍼랑 사이킷 래퍼를 사용했을 떄 각각 중요도의 순서가 다르더라구요. 이렇게 되면 제일 중요한 feature 의 순서도가 달라지는 건데 이건 왜 그러는건가요?? 

사이킷 래퍼는 f21 , f1 , f13 순으로 중요도가 높은 반면에 파이썬 래퍼는 f13, f21 , f1순으로 중요도가 높더라구요!

 

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

python wrapper XGBoost와 사이킷런 wrapper XGBoost 생성 시에 초기화 파라미터가 조금씩 다른 것 같습니다.

물론 python wrapper xgboost의 params = { 'max_depth':3,
           'eta': 0.1,
           'objective':'binary:logistic',
           'eval_metric':'logloss',
           'early_stoppings':100
        }

사이킷런 wrapper

XGBClassifier(n_estimators=400, learning_rate=0.1, max_depth=3)

부분은 같은데, 이거 외에 Default로 설정이 되는 다른 초기화 파라미터가 다른것 같습니다.

보시면 학습 시 early stopping 이나 log loss도 약간 다릅니다. 그것 때문에 feature importance가 서로 다른 것 같습니다.

감사합니다.

yonghankim7님의 프로필 이미지
yonghankim7

작성한 질문수

질문하기