from sklearn.tree import DecisionTreeClassifier # 디시젼트리 불러오기
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split # 학습, 에측 불러오기
# 워닝 무시
import warnings
warnings.filterwarnings('ignore')
디시젼트리 그래프비즈로 시각화
from sklearn.tree import export_graphviz
# export_graphviz()의 호출 결과로 out_file로 지정된 tree.dot 파일을 생성함.
export_graphviz(dt_clf, out_file="tree.dot", class_names=iris_data.target_names, \
feature_names = iris_data.feature_names, impurity=True, filled=True)
import graphviz
# 위에서 생성된 tree.dot 파일을 Graphviz 읽어서 Jupyter Notebook상에서 시각화
# with open : "파일을 읽겠다"
with open("tree.dot") as f:
dot_graph = f.read()
# graphviz.Source 메소드로 dot_graph 읽기
graphviz.Source(dot_graph)
디시젼트리의 피처중요도 확인
- 변수.feature_names : (변수) 데이터의 피처 확인
- 변수.feature_importances_ : 피처에 대한 각각의 피쳐의 결정값 중요도 확인
- sns.barplot(x= , y= ) : 결정값 중요도를 컬럼별로 시각화 (차트)
디시젼트리 과적합
- 예제 참고
'파이썬 (쥬피터) [2021.04.22] > 9일차' 카테고리의 다른 글
파이썬 9일차 - 머신러닝 예제 (결정트리) (0) | 2021.05.07 |
---|---|
파이썬 9일차 -머신러닝 예제 (피마 인디언 당뇨병 예측) (0) | 2021.05.07 |