0

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

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

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

4

0 回答 0