You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Optuna教程中LightGBM的Dataset对应XGBoost的等效命令是什么?

XGBoost对应lgb.Dataset的等效接口

XGBoost中与LightGBM的lgb.Dataset功能完全对等的接口是xgb.DMatrix()。

xgb.DMatrix是XGBoost专门优化的内部数据存储结构,针对梯度提升树的训练过程做了内存占用和计算效率优化,功能覆盖lgb.Dataset的全部常用场景,支持传入numpy数组、pandas DataFrame、scipy稀疏矩阵、本地数据文件路径等多种类型的数据源,也支持同步指定标签、样本权重、分组字段、缺失值标记等训练所需的元信息。

等效代码示例

你之前写的LightGBM数据集构造代码:

import lightgbm as lgb
train_data = lgb.Dataset(train_x, label=train_y)

对应的XGBoost写法为:

import xgboost as xgb
train_data = xgb.DMatrix(train_x, label=train_y)

注意事项

  • 如果需要设置样本权重、缺失值标记等参数,和lgb.Dataset用法类似,直接在构造xgb.DMatrix时传入对应参数即可,示例:xgb.DMatrix(train_x, label=train_y, weight=train_weight, missing=-999)
  • 与lgb.Dataset不同的是,xgb.DMatrix实例创建完成后不支持修改内部的标签、权重等元信息,如需调整需要重新构造新的DMatrix实例
  • 构造完成的DMatrix实例可直接传入xgb.train()接口用于模型训练,用法与LightGBM的lgb.train()传入Dataset实例的逻辑一致

内容的提问来源于stack exchange,提问作者Arnold

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 13:45:09