【发布时间】:2021-10-15 22:54:41
【问题描述】:
有没有办法将当前候选模型作为输入传递给自定义评分函数?
我正在寻找类似于cross_val_score 方法的东西,其中clf 是输入之一。
将模型作为额外参数传递是行不通的,因为在评分过程中没有携带候选模型的副本。相反,我得到的是具有默认参数的未拟合模型。
【问题讨论】:
标签: python scikit-learn gridsearchcv
有没有办法将当前候选模型作为输入传递给自定义评分函数?
我正在寻找类似于cross_val_score 方法的东西,其中clf 是输入之一。
将模型作为额外参数传递是行不通的,因为在评分过程中没有携带候选模型的副本。相反,我得到的是具有默认参数的未拟合模型。
【问题讨论】:
标签: python scikit-learn gridsearchcv
是的,这就是在GridSearchCV 中评分的工作方式:scoring 参数可以是可调用的,带有签名(estimator, X, y)。搜索适合训练折叠的估计器副本,并将其与测试折叠数据一起传递给您的记分器。请参阅User Guide。
【讨论】:
make_scorer。用(estimator, X, y)传递一个简单的函数就够了?
make_scorer 是从度量函数创建这种评分函数的便捷函数,但您需要(/想要)额外的灵活性。请注意考虑一些make_scorer 选项:搜索会将较大的分数视为更好(因此,如果需要,请否定该值),您可以自行决定采用predict 或predict_proba,等等。跨度>