LightGBM
Posted nxf-rabbit75
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LightGBM相关的知识,希望对你有一定的参考价值。
- lightgbm:由于现在的比赛数据越来越大,想要获得一个比较高的预测精度,同时又要减少内存占用以及提升训练速度,lightgbm是一个非常不错的选择,其可达到与xgboost相似的预测效果。
- xgboost:在lightgbm出来之前,是打比赛的不二之选,现在由于需要做模型融合以提高预测精度,所以也需要使用到xgboost。
- ANN:得益于现在的计算机技术的高度发展,以及GPU性能的提高,还有Keras,tensorflow,pytorch等多重工具的使用,人工神经网络也可以作为最后模型融合的子模型之一,可以有效地提升最终的预测结果。
LightGBM是个快速的、分布式的、高性能的基于决策树算法的梯度提升框架。可用于排序、分类、回归以及很多其他的机器学习任务中。
模板:
import lightgbm as lgb
print("LGB test")
clf = lgb.LGBMClassifier(
boosting_type=‘gbdt‘, num_leaves=55, reg_alpha=0.0, reg_lambda=1,
max_depth=15, n_estimators=6000, objective=‘binary‘,
subsample=0.8, colsample_bytree=0.8, subsample_freq=1,
learning_rate=0.06, min_child_weight=1, random_state=20, n_jobs=4
)
clf.fit(X_train, y_train)
pre=clf.predict(testdata)
print("starting first testing......")
clf = lgb.LGBMClassifier(
boosting_type=‘gbdt‘, num_leaves=50, reg_alpha=0.0, reg_lambda=1,
max_depth=-1, n_estimators=1500, objective=‘binary‘,
subsample=0.7, colsample_bytree=0.7, subsample_freq=1,
learning_rate=0.05, min_child_weight=50, random_state=2018, n_jobs=100
)
clf.fit(X_train, y_train, eval_set=[(X_train, y_train)], eval_metric=‘auc‘,early_stopping_rounds=1000)
pre1=clf.predict(X_test)
以上是关于LightGBM的主要内容,如果未能解决你的问题,请参考以下文章
SHAP:shap_values 计算中的 XGBoost 和 LightGBM 差异