• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

피처 중요도 시각화

21.04.29 14:08 작성 조회수 104

0

from xgboost import plot_importance

import matplotlib.pyplot as plt

%matplotlib inline

fig,ax = plt.subplots(figsize=(10,12))

plot_importance(xgb_model, ax=ax)

--------------------------------------------

xgboost에서 피처 중요도 시각화 부분에서 질문사항이 있습니다.(교제 p.239)

이 부분에서 마지막 ax=ax로 되는 이유가 무엇인가요? ax라는 리스트로 ax를 지정해 준 것인가요? 

답변 미리 감사드립니다. 

답변 1

답변을 작성해보세요.

0

안녕하십니까,

xgboost의 plot_importance()함수는 인자로 ax 값을 요구하기 때문입니다.

matplotlib의 주요 구성요소는 figure와 ax 입니다. ax는 말그대로 '축' 이지만 실제로 matplotlib이 그림을 그리는 실제 대상입니다. figure는 ax를 포함하는 더 큰 Canvas개념 입니다. 보통은 matplotlib에 ax가 Default로 한개가 있으므로 figure에 그림을 그리면 됩니다.

plot_importance()함수는 인자로 ax를 요구하기 때문에 일반적인 plt로는 이 ax를 지정할 수 없습니다. 하지만 plt.subplots()를 하게 되면 ax을 반환 받을 수 있게 됩니다. 이렇게 반환 받은 ax를 plot_importance() 함수 인자로 넣게 되면 feature importance그림을 그릴 수 있습니다.

감사합니다.