lightGBM和XGBoost使用方法总结

论坛 期权论坛 脚本     
匿名技术用户   2020-12-27 01:22   736   0

1.直接import lightgbm as lgt 和import XGBoost as lgt

这种方式在做训练的时候需要把数据转换成模型所能处理的格式,刚入手的人容易犯错

lightGBM为Dataset格式:
lgb_train = lgb.Dataset(train_X, train_y, free_raw_data=False)
lgb_eval = lgb.Dataset(test_X, test_y, reference=lgb_train,free_raw_data=False)
bst=lgb.cv(param,lgb_train, num_boost_round=1000, nfold=6, early_stopping_rounds=100)

XGBoost为DMatrix格式
dtrain = xgb.DMatrix( train_X, label=train_y)
dtest = xgb.DMatrix( test_X, label=test_y)
bst = xgb.train( params, dtrain, num_round )

estimators = lgb.train(param,lgb_train,num_boost_round=len(bst['auc-mean']))

2.利用和Sklearn类似包处理,较简洁,与其他Sklearn一样的使用方法

如XGBoost
clf = xgb.XGBClassifier(params)
clf.fit(X_train, y_train, early_stopping_rounds=10, eval_metric="auc",
eval_set=[(X_test, y_test)])

如lightGBM
estimator=lgb.LGBMRegressor(n_estimators=100,boosting_type='gbdt', objective='regression')
estimator.fit(train_X, train_y)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP