教学资源网站建设设计,企业官网源码免费,网站验证码文件,惠城区城乡规划建设局网站文章目录 背景参考官网信息训练调参模型保存推理 背景 想在 GPU 上使用使用闪电般快速的提升方法#xff1f;了解这个库就好了。在很多任务上#xff0c;它都比 LightGBM 和 XGBoost 快。 ThunderGBM 的主要特征如下#xff1a;
通常是其它库的 10 倍。 支持 Python#x… 文章目录 背景参考官网信息训练调参模型保存推理 背景 想在 GPU 上使用使用闪电般快速的提升方法了解这个库就好了。在很多任务上它都比 LightGBM 和 XGBoost 快。 ThunderGBM 的主要特征如下
通常是其它库的 10 倍。 支持 Pythonscikit-learn接口。 支持操作系统 Linux。 支持分类、回归和排序。
ThunderGBM 预测和训练的整体流程 ThunderGBM 主要作者包括新加坡国立大学的 Zeyi Wen 和 Qinbin Li、华南理工大学的 Jiashuai Shi 等指导教师为 NUS 的 Bingsheng He。
参考官网信息
https://gitee.com/Wyq131/thundergbm?_fromgitee_search#key-members-of-thundergbm https://github.com/Xtra-Computing/thundergbm/blob/master/docs/parameters.md
训练
clf TGBMClassifier(n_trees 170,depth 12, max_num_bin128,bagging1)class TGBMModel(depth 6, num_round 40, n_device 1, min_child_weight 1.0, lambda_tgbm 1.0, gamma 1.0, max_num_bin 255, verbose 0, column_sampling_rate 1.0, bagging 0, n_parallel_trees 1, learning_rate 1.0, objective reg:linear, num_class 1, path ../dataset/test_dataset.txt))# 模型训练
begin time.time()
# clf RandomForestClassifier(n_estimators100,
# # random_state1,
# n_jobs-1)
clf.fit(X_train,y_train)调参
参数跟随机森林类似关于参数的影响可参考随机森林 在随机森林Random Forest中不同参数的设置会对模型的性能和行为产生影响。下面是一些常见的随机森林参数及其影响 n_estimators 决策树的数量。增加树的数量可以提高模型的表达能力和稳定性但也会增加训练时间和内存消耗。 max_features 每棵树考虑的特征数。较小的值可以增加树之间的多样性减少特征间的相关性但可能会导致模型的偏差增加。较大的值可以使模型更加稳定但可能会导致过拟合。 max_depth 树的最大深度。较大的值可以增加模型的表达能力但也容易导致过拟合。较小的值可以限制模型的复杂度减少过拟合风险但可能会导致模型的偏差增加。 min_samples_split 内部节点分裂所需的最小样本数。较小的值可以使模型更加灵活但也容易过拟合。较大的值可以增加模型的保守性避免过拟合。 min_samples_leaf 叶子节点所需的最小样本数。较小的值可以使模型更加灵活但也容易过拟合。较大的值可以增加模型的保守性避免过拟合。 bootstrap 是否使用自助采样。如果设置为True则每个决策树的训练集将使用有放回抽样的方式从原始训练集中抽取。这有助于增加模型的多样性减少方差。如果设置为False则每个决策树的训练集将使用原始训练集的全部样本。 random_state 随机种子。通过设置相同的种子可以确保每次运行时随机性的一致性。 这些参数的最佳设置取决于具体的数据集和问题。通常可以通过交叉验证来评估不同参数组合的性能并选择性能最好的组合。增加树的数量、限制树的深度和节点分裂的样本数、增加特征的随机性等方法都可以用于控制模型的复杂度和泛化能力。在调整参数时需要权衡模型的准确性和计算资源之间的平衡。
(12 封私信 / 80 条消息) 随机森林Random Forests的各个参数对模型的影响 - 知乎 (zhihu.com)
模型保存 clf.save_model(“path”) 支持多种格式
clf.save_model(thundergbm.json)
clf.save_model(thundergbm.xgb)
clf.save_model(thundergbm.gbm)
clf.save_model(thundergbm.txt)推理 clf.model.load(“path”) 先实例化然后导入模型
clf TGBMClassifier()
# You should specific objective here as in training stage
clf.load_model(path/thundergbm.json)
y_pred clf.predict(X_test)推理时使用json格式比其他几种格式加粗样式时间长一点txt格式时间最短。