torch_frame.gbdt.GBDT

class GBDT(task_type: TaskType, num_classes: int | None = None, metric: Metric | None = None)[source]

基础类:object

GBDT(梯度提升决策树)模型的基类,用作强基线。

Parameters:
  • task_type (TaskType) – 任务类型。

  • num_classes (int, 可选) – 如果任务是多类分类, 可以使用可选的 num_classes 来指定类的数量。 否则,我们从训练数据中推断该值。

  • metric (Metric, 可选) – 用于优化的指标,例如, Metric.MAE。如果 None,则默认为 Metric.RMSE 用于回归,Metric.ROCAUC 用于二分类, Metric.ACCURACY 用于多分类。(默认值: None).

property is_fitted: bool

GBDT是否已经拟合。

tune(tf_train: TensorFrame, tf_val: TensorFrame, num_trials: int, *args, **kwargs)[source]

通过使用Optuna进行超参数调优来拟合模型。试验次数由num_trials指定。

Parameters:
  • tf_train (TensorFrame) – 训练数据在 TensorFrame 中。

  • tf_val (TensorFrame) – 验证数据在 TensorFrame 中。

  • num_trials (int) – 执行超参数搜索的试验次数。

  • *args – 可变长度参数列表。

  • **kwargs – 任意关键字参数。

predict(tf_test: TensorFrame) Tensor[来源]

在拟合模型上预测测试数据的标签/值,并返回其预测结果。

  • TaskType.REGRESSION: 返回原始数值。

  • TaskType.BINARY_CLASSIFICATION: 返回为正类的概率。

  • TaskType.MULTICLASS_CLASSIFICATION: 返回类标签预测。

save(path: str) None[source]

保存模型。

Parameters:

path (str) – 保存调优后的GBDTs模型的路径。

load(path: str) None[source]

加载模型。

Parameters:

path (str) – 加载调优后的GBDT模型的路径。

compute_metric(target: Tensor, pred: Tensor) float[source]

计算给定目标标签Tensor和预测Tensor的评估指标。目标包含目标值或标签;预测包含调用predict()函数的预测输出。

Returns:

计算出的指标分数。

Return type:

分数 (float)