CatBoost 中的错误? CatBoostClassifier 不适用于 sklearn 的 CalibratedClassifierCV
Posted
技术标签:
【中文标题】CatBoost 中的错误? CatBoostClassifier 不适用于 sklearn 的 CalibratedClassifierCV【英文标题】:Bug in CatBoost? CatBoostClassifier doesn't work well with sklearn's CalibratedClassifierCV 【发布时间】:2019-10-25 08:52:55 【问题描述】:catboost 版本:0.16
当尝试使用 scikit-learn 的 CalibratedClassifierCV
校准类概率估计时,在二进制分类问题中,我得到的只是负目标的 1 和正目标的 0。如果我单独使用CatBoostClassifier
,我会得到正常的概率。这让我相信这个分类器与校准技术不兼容。有没有办法解决这个问题?
重现:
from catboost import CatBoostClassifier
from sklearn.calibration import CalibratedClassifierCV
from sklearn.datasets import make_classification
X, y = make_classification(100, 10)
cat = CatBoostClassifier(verbose=0)
calib = CalibratedClassifierCV(base_estimator=cat, method='sigmoid', cv=2)
cat.fit(X, y)
calib.fit(X, y)
print(cat.predict_proba(X))
print(calib.predict_proba(X))
【问题讨论】:
【参考方案1】:这是 CatBoost 的一个未解决问题。请检查 open issue here.
【讨论】:
以上是关于CatBoost 中的错误? CatBoostClassifier 不适用于 sklearn 的 CalibratedClassifierCV的主要内容,如果未能解决你的问题,请参考以下文章
BaggingClassifier 和具有分类特征的 CatBoost 无法正常工作
_catboost.CatBoostError: C:/Program Files (x86)/Go Agent/pipelines/BuildMaster/catboost.git/catboost
R语言安装catboost包:catboost-R-Windows-1.0.0.tgz
R语言构建catboost模型:构建catboost模型并基于网格搜索获取最优模型参数(Select hyperparameters)计算特征重要度