问题描述
import xgboost as xgb
from xgboost.sklearn import XGBClassifier
from sklearn import metrics
from sklearn.model_selection import gridsearchcv
xgb_train = xgb.DMatrix(X_train,label=y_train)
xgb_model = XGBClassifier(objective='multi:softmax',n_estimators=100,learning_rate=0.3,max_depth=4,subsample=0.8,n_iter_no_change=2,verbosity=1)
xgb_param = xgb_model.get_xgb_params()
xgb_param['num_class'] = 7
cvresult = xgb.cv(xgb_param,xgb_train,num_boost_round=xgb_model.get_params()['n_estimators'],nfold=5,early_stopping_rounds=10,verbose_eval=True)
xgb.set_params(n_estimators=cvresult.shape[0])
predictions,accuracy,metrics_report = train_test_model(xgb_model,X_train,X_test,y_train,y_test)
print('accuracy: {}'.format(accuracy))
print(metrics_report)
plot_confusion_matrix(xgb_model,y_test,display_labels=labels,xticks_rotation='vertical',cmap="BuPu")
错误如下
AttributeError Traceback(最近一次调用最后一次) 在 10 xgb_param['num_class'] = 7 11 cvresult = xgb.cv(xgb_param,verbose_eval=True) ---> 12 xgb.set_params(n_estimators=cvresult.shape[0]) 13个预测,准确率,metrics_report = train_test_model(xgb_model,y_test) 14 打印('准确度:{}'.format(准确度))
属性错误:模块“xgboost”没有属性“set_params”
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)