【发布时间】: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))
【问题讨论】:
标签: python classification calibration yandex catboost