"subsample": 0.01, } ops = {"num_boost_round": 2000, "early_stopping_rounds": 10} print("start training") bst = xgb.train( params.items(), dtrain, num_boost_round=ops["num_boost_round"], evals=[(dtest, "eval"), (dtrain, "train")], early_stopping_rounds=ops["early_stopping_rounds"], ) # dump model bst.dump_model("xgboost_round_%s_%s.txt" % (ops["num_boost_round"], ops["early_stopping_rounds"])) bst.save_model("xgboost_round_%s_%s.model" % (ops["num_boost_round"], ops["early_stopping_rounds"])) # load test (valid) set dtest = xgb.DMatrix(test_xs) # predict ypred = bst.predict(dtest, ntree_limit=bst.best_ntree_limit) test_ys_preds = np.array(ypred) # metrics print(multiclass_log_loss(test_ys, test_ys_preds)) print(multiclass_accuracy(test_ys, test_ys_preds)) # import ipdb; ipdb.set_trace()
bst = xgb.train(params.items(), dtrain, num_boost_round=ops['num_boost_round'], evals=[(dtest, 'eval'), (dtrain, 'train')], early_stopping_rounds=ops['early_stopping_rounds']) # load test (valid) set dtest = xgb.DMatrix(test_xs) # predict ypred = bst.predict(dtest, ntree_limit=bst.best_ntree_limit) test_ys_preds = np.array(ypred) # metrics log_loss = multiclass_log_loss(test_ys, test_ys_preds) print(log_loss) print(multiclass_accuracy(test_ys, test_ys_preds)) # dump model bst.dump_model('xgboost_sorted_round_%s_%s_%s_%s_%s_%s_%s.txt' % (ops['num_boost_round'], ops['early_stopping_rounds'], params['bst:max_depth'], params['bst:eta'], params['subsample'], params['bst:colsample_bytree'], log_loss)) bst.save_model('xgboost_sorted_round_%s_%s_%s_%s_%s_%s_%s.model' % (ops['num_boost_round'], ops['early_stopping_rounds'],