是否可以将 Keras 模型对象与 sklearn.calibration 的 CalibratedClassifierCV 一起使用? 或者有没有另一种方法可以在 sklearn/其他 python 包中执行等渗回归,而不必向其传递模型对象。
我尝试使用 Keras 的 sklearn 包装器,但它不起作用。 这是 CallibratedClassifierCV 类的文档。
您可以在预测后训练后验等渗回归。让我们'file1'
是一个 csv,其中包含您的预测pred
和obs
数据子集上的真实观察到的事件。理想情况下,这个子集以前从未使用过(甚至在 Keras 训练中也没有)。让file2
包含要校准的预测(测试集的 Keras 预测)。
import pandas as pd
from sklearn.isotonic import IsotonicRegression
never_seen=pd.read_csv('file1')
uncalibrated=pd.read_csv('file2')
ir = IsotonicRegression( out_of_bounds = 'clip' )
ir.fit( never_seen.pred,never_seen.obs )
p_calibrated = ir.transform( uncalibrated.pred )