问题标签 [catboostregressor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
43 浏览

python - CatboostRegressor 可以接收什么样的数据集?

我一直在尝试一个我感兴趣的代码项目。我的数据集来自外汇市场,有 10 个特征,超过 70000 个属性,并且已经被分成一个训练集和测试集,但是我的 CatboostRegressor 一直出现这个错误。我需要对我的数据集做什么才能使回归器工作?或者是别的什么??

错误:

0 投票
0 回答
207 浏览

python - 在顺序特征选择器中使用 CatBoostRegressor 时出现自定义记录器错误

我在其他笔记本中使用 CatBoostClassifier 运行了以下代码。但是,当我使用 CatBoostRegressor 使用相同的参数重复相同的过程时,我收到有关自定义记录器的错误。任何帮助,将不胜感激。

0 投票
1 回答
90 浏览

clickhouse - 在 ClickHouse 中训练 catboost 模型

就我在docs中看到的而言。在 ClickHouse 中使用预训练的 CatBoost 模型是唯一的选择。但是,是否有任何解决方法可以直接在 ClickHouse 中训练 CatBoost 模型?

0 投票
0 回答
17 浏览

python - 多回归的导出失败,“不支持将多分类模型导出到 cpp”

catboost 版本:0.25.1 操作系统:Windows

当我尝试导出我的多重回归模型时,它失败并显示“不支持将多重分类模型导出到 cpp”。在文档中,它也只说“当前不支持多分类模型”。所以我希望能够导出模型。现在有两种可能性,要么我要转储以使用导出功能,要么不支持导出。(我不希望...)。

我已经多次检查了模型的类型,上面写着“catboost.core.CatBoost:Regressor”,所以我认为这不是问题所在。

我希望有人能提供帮助。

亲切的问候

编辑 1:我可以将其导出到 JSON 但不能导出到 python(同样的错误)

0 投票
0 回答
28 浏览

catboost - 将目标编码值传递给 CatBoost

假设我们有一个二元分类器 CatBoost 模型,该模型在分类特征上使用目标编码。例如,假设我们有一个特征“fruit”,其训练值在集合 [“apple”、“orange”] 中。在训练期间,CatBoost 将这些与编码值相匹配,例如 ["apple": 0.1,"orange": 0.5]。

现在我有了一个新的特征值:fruit:"banana",这是 CatBoost 以前从未见过的。我不想将其传递给 CatBoost(它将自动推断出一个值),而是手动计算“香蕉”的目标编码值(比如说 0.9),然后我想将其传递给 CatBoost。这可以直接通过 CatBoost 的 API 完成吗?

我认为否则我将不得不使用 sklearn 的 CatBoost 编码器首先对预处理中的所有特征进行目标编码,然后在这些特征之上训练 CatBoost(用它们代替数字特征)。我不喜欢这条路线的原因是我不确定它是否可以直接与 CatBoost 的训练例程分离(这可能会产生更差的模型?)。

0 投票
2 回答
1530 浏览

visual-studio-code - VS 代码显示错误:每次将 catboost 与 gpu 一起使用后,会话无法生成请求

我一直在尝试使用我的 Nvidia Geforce GTX 1650 GPU 来训练 catboost 回归器。它运行良好,但完成训练后,它会杀死内核并需要重新启动 vs 代码

这是代码: -

这运行良好,但每次我尝试运行下一个单元格时都会显示此错误:

我已经使用 pip-review 更新了我的所有软件包,更新了 jupyter 扩展,并且 xgboost 使用 tree_method = 'gpu_hist' 工作正常。

操作系统 - Windows

库达版本 - 11.2

英伟达驱动程序 - 462

0 投票
0 回答
28 浏览

catboost - 在 catboost 回归模型中提取有关单个树的信息

有没有办法在 catboost 回归模型中获取有关单个树的信息?特别是,我想知道每棵树有多深。

我可以用 plot_tree 绘制树以查看它们的深度,但是有没有办法直接提取这些信息?

0 投票
0 回答
131 浏览

python - CatBoostRegressor 树中叶值的比例是多少?

谜题

我无法解释树叶中的值CatBoostRegressor。拟合模型正确地捕获了数据集的逻辑,但是当我绘制树时值的比例与实际数据集的比例不匹配。

在这个例子中,我们预测size,它的值在 15-30 左右,具体取决于观察的colorage

在此处输入图像描述

该模型在正确的值(大约 50)处分裂age,并且它正确地了解到红色和蓝色的观察结果与绿色和黄色的观察结果不同。叶子中的值排序正确(例如,50 以下的红色/蓝色观测值是最小的),但比例完全不同。

predict()函数返回原始数据集规模的值。

我试过的

我想知道是否有某种简单的标准化正在进行,但显然不是这样。例如,年龄 < 50 的红色观察值在树中被指定为 -3.418,这与真实值的 z 分数(约 15)相去甚远。

这篇文章提出了一个关于 XGBoost 的类似问题。接受的答案解释说这些值都应该添加到base_score参数中;但是,如果 中有类似的参数CatBoost,我找不到它。(如果参数在 中使用不同的名称CatBoost,我不知道它叫什么。)此外,CatBoost树中的值不只是与原始数据集相差某个常数;最大和最小叶节点之间的差异约为 7,而size原始数据集中的最大值和最小值之间的差异约为 15。

我浏览了CatBoost文档但没有成功。“模型值”部分表示回归的值是“应用模型产生的数字”,这表明它们应该在原始数据集的范围内。(对于 的输出也是如此predict(),所以我不清楚本节是否适用于绘制的决策树。)

0 投票
0 回答
35 浏览

catboost - 具有单调约束的分位数回归

尝试对某些功能使用带有单调约束的分位数回归时,我在 CatBoost 中遇到了问题。

分位数损失使用“Exact”作为叶子估计方法,但单调约束不能与此方法一起使用。

我尝试使用“梯度”方法,但它似乎在分位数回归中效果不佳(即使没有单调约束)。

我如何将分位数回归与单调约束结合起来?

0 投票
1 回答
105 浏览

c - 将 float32 的 Go 切片作为 C float[] 传递给 CGo

我正在尝试使用 catboost 来预测一组浮点数。

CalcModelPredictionSingle它的文档中作为参数"floatFeatures - array of float features"https ://github.com/catboost/catboost/blob/master/catboost/libs/model_interface/c_api.h#L175

但是,当我尝试传递浮点数组时,出现此错误:

Cannot use type []*_Ctype_float as *_Ctype_float in assignment.

表示它期待一个浮动。我使用了错误的功能吗?

我正在使用 cgo,这是我的代码的一部分: