gpt4 book ai didi

python - 如何将 catboosts 原始预测分数 (RawFormulaVal) 转换为概率?

转载 作者:行者123 更新时间:2023-11-30 09:45:01 26 4
gpt4 key购买 nike

对于 catboost 库中的某些对象(例如 python 代码导出模型 - https://tech.yandex.com/catboost/doc/dg/concepts/python-reference_catboostclassifier_save_model-docpage/ ),预测 ( https://tech.yandex.com/catboost/doc/dg/concepts/python-reference_apply_catboost_model-docpage/ ) 只会给出每个记录的所谓原始分数(参数值称为“RawFormulaVal”)。其他 API 函数还允许将预测结果作为目标类 ( https://tech.yandex.com/catboost/doc/dg/concepts/python-reference_catboostclassifier_predict-docpage/ ) 的概率 - 参数值称为“概率”。

我想知道

  1. 这与概率有何关系(在二元分类的情况下)以及
  2. 是否可以使用 python API ( https://tech.yandex.com/catboost/doc/dg/concepts/python-quickstart-docpage/ ) 将其转换为这样的 API?

最佳答案

代码行model.predict_proba(evaluation_dataset)将直接计算概率。

以下是示例代码以供理解:

from catboost import Pool, CatBoostClassifier, cv
train_dataset = Pool(data=X_train,
label=y_train,
cat_features=cat_features)
eval_dataset = Pool(data=X_valid,
label=y_valid,
cat_features=cat_features)

# Initialize CatBoostClassifier
model = CatBoostClassifier(iterations=30,
learning_rate=1,
depth=2,
loss_function='MultiClass')

# Fit model
model.fit(train_dataset)

# Get predicted classes
preds_class = model.predict(eval_dataset)

# Get predicted probabilities for each class
preds_proba = model.predict_proba(eval_dataset)

# Get predicted RawFormulaVal
preds_raw = model.predict(eval_dataset,
prediction_type='RawFormulaVal')
model.fit(train_dataset,
use_best_model=True,
eval_set=eval_dataset)
print("Count of trees in model = {}".format(model.tree_count_))

print(preds_proba)

print(preds_raw)

关于python - 如何将 catboosts 原始预测分数 (RawFormulaVal) 转换为概率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53581168/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com