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))