Я новичок в Python обучении, у меня есть вопросы о выводе XGBoost Graphviz:
******** ниже мой тестовый код ****** ********
from sklearn.model_selection import train_test_split
from pandas import DataFrame
from xgboost.sklearn import XGBClassifier
from xgboost import plot_tree
import xgboost as xgb
import matplotlib.pyplot as plt
from sklearn.datasets import load_breast_cancer
breast_cancer=load_breast_cancer()
X = breast_cancer.data
y = breast_cancer.target
X = DataFrame(X)
y = DataFrame(y)
X.columns = breast_cancer.feature_names
X.columns = ['l1','l2','l3','l4','l5','l6','l7','l8','l9','l10','l11','l12','l13','l14',
'l15','l16','l17','l18','l19','l20','l21','l22','l23','l24','l25',
'l26','l27','l28','l29','l30',]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
clf = XGBClassifier(
n_estimators=30,
learning_rate =0.3,
max_depth=3,
min_child_weight=1,
gamma=0.3,
subsample=0.8,
colsample_bytree=0.8,
objective= 'binary:logistic',
nthread=12,
scale_pos_weight=1,
reg_lambda=1,
seed=27)
model_sklearn=clf.fit(X_train, y_train)
y_sklearn= clf.predict_proba(X_test)[:,1]
plot_tree(clf, num_trees=0)
************* конец ****************
когда я запускаю последнюю строку: plot_tree (clf, num_trees = 0), выводом является график, но не ясный. затем я пытаюсь запустить приведенный ниже код:
plot_tree (clf, num_trees = 0, fmap = 'xgb.fmap')
тогда система показывает следующую ошибку :
Файл "", строка 1, в plot_tree (clf, num_trees = 0, fmap = 'xgb.fmap') Файл "C: \ ProgramData \ Anaconda3 \ lib \ site-packages \ xgboost \ plotting.py ", строка 278, в plot_tree rankdir = rankdir, ** kwargs) Файл" C: \ ProgramData \ Anaconda3 \ lib \ site-packages \ xgboost \ plotting.py ", строка 222, в to_graphviz tree = booster.get_dump (fmap = fmap) [num_trees] Файл "C: \ ProgramData \ Anaconda3 \ lib \ site-packages \ xgboost \ core.py", строка 1445, в get_dump вызывает ValueError ("Нет такого файла: {0} ". Format (fmap)) ValueError: Нет такого файла: xgb.fmap
Мои вопросы: Как я могу обновить свой тестовый код, чтобы я мог показать более четкий график (мой ОС это win7)? большое спасибо за ваши ребята !!!