#省略……
from sklearn.model_selection import train_test_split
train_x, test_x, train_y, test_y = train_test_split(feature_matrix, labels, random_state=0)
import xgboost as xgb
dtrain=xgb.DMatrix(train_x,label=train_y)
dtest=xgb.DMatrix(test_x)
params={'booster':'gbtree',
'objective': 'binary:logistic',
'eval_metric': 'auc',
'max_depth':4,
'lambda':10,
'subsample':0.75,
'colsample_bytree':0.75,
'min_child_weight':2,
'eta': 0.025,
'seed':0,
'nthread':8,
'silent':1}
watchlist = [(dtrain,'train')]
bst=xgb.train(params,dtrain,num_boost_round=100,evals=watchlist)
y_pred=bst.predict(dtest)
y_pred_binary = (ypred >= 0.5)*1
from sklearn import metrics
print 'AUC: %.4f' % metrics.roc_auc_score(test_y,y_pred)
print 'ACC: %.4f' % metrics.accuracy_score(test_y,y_pred_binary)
print 'Recall: %.4f' % metrics.recall_score(test_y,y_pred_binary)
print 'F1-score: %.4f' %metrics.f1_score(test_y,y_pred_binary)
print 'Precesion: %.4f' %metrics.precision_score(test_y,y_pred_binary)
metrics.confusion_matrix(test_y,y_pred_binary)
xgboost 的 Precesion Recall F1 AUC ACC 混淆矩阵 计算
最新推荐文章于 2024-08-13 16:47:48 发布