我想校准我的 CNN 分类模型的概率。我有一个自定义的交叉验证,在每次交叉验证运行中,我都会执行以下操作:
from sklearn.calibration import CalibratedClassifierCV
my_model.fit(X_train, y_train)
my_cccv = CalibratedClassifierCV(my_model, cv='prefit')
my_cccv.fit(X_train, y_train)
my_cccv.predict_proba(X_test)
如果我这样做,是不是和下面的一样?
from sklearn.isotonic import IsotonicRegression
my_model.fit(X_train, y_train)
ir = IsotonicRegression()
ir.fit(my_model.predict_proba(X_train),y_true)
ir.predict(X_test)