Python 在RFECV和GridSearchCV中得分有什么区别?
我正在尝试运行RFECV以选择最佳功能,并运行GridSearchCV以获得最佳超参数。我的代码如下所示: 参数={'estimator_uC':[1e-4,1e4]} 估计器=逻辑回归随机状态=123 选择器=RFECVestimator,步骤=1,cv=5,评分='recall' clf=GridSearchCVselector,参数,cv=5 clf.fitX_列车,y_列车 当我在GridSearchCV中包含相同的评分标准时,我会从cv_结果中获得不同的最佳特征、n_特征和参数。为什么会发生这种情况?这些方法中哪些是正确的 参数={'estimator_uC':[1e-4,1e4]} 估计器=逻辑回归随机状态=123 选择器=RFECVestimator,步骤=1,cv=5,评分='recall' clf=GridSearchCVselector,参数,cv=5,评分='recall' clf.fitX_列车,y_列车 为什么会这样 在第二种情况下,如果您没有明确指定评分,GridSearchCV将使用所用估计器的默认评分,这里是LogisticReturnal;从: 评分:字符串、可调用、列表/元组、dict或None,默认值:None [……] 如果没有,则使用估计员得分法 逻辑回归的分数是多少?再次从以下方面: 自我评分,X,y,样本重量=无 返回给定测试数据和标签的平均精度 因此,在第一种情况下,对于GridSearchCV部分,您可以获得最大化准确性的参数,而在第二种情况下,可以获得最大化召回率的参数。原则上,使这两个不同指标最大化的参数不一定是相同的,当然,它们可以是相同的,但它们很可能不是,就像这里一样 以下哪种方法是正确的 从技术上讲,这两种方法都是正确的;唯一能回答这个问题的人是你自己,这与你的业务问题的衡量标准有关 也就是说,第一种方法看起来有点奇怪——为什么您希望在RFECV和GridSearchCV期间针对两种不同的指标进行优化?至少在原则上,根据您选择的指标优化一切会更有意义Python 在RFECV和GridSearchCV中得分有什么区别?,python,machine-learning,scikit-learn,grid-search,rfe,Python,Machine Learning,Scikit Learn,Grid Search,Rfe,我正在尝试运行RFECV以选择最佳功能,并运行GridSearchCV以获得最佳超参数。我的代码如下所示: 参数={'estimator_uC':[1e-4,1e4]} 估计器=逻辑回归随机状态=123 选择器=RFECVestimator,步骤=1,cv=5,评分='recall' clf=GridSearchCVselector,参数,cv=5 clf.fitX_列车,y_列车 当我在GridSearchCV中包含相同的评分标准时,我会从cv_结果中获得不同的最佳特征、n_特征和参数。为什么
再次,请记住,所有这些技术实际上都是临时方法,没有太多的理论支持;最终的评判标准是实验。因此,如果你有兴趣,比如说,最大限度地提高最终模型的准确性,但你发现中间RFECV阶段试图最大限度地提高召回率,最终会提供更好的总体准确性,那么你很可能只是出于好奇而去做…,你有没有一个个人政策,就是不要对你的问题的答案进行投票?@desertnaut-nope,只是不知道这对人们来说很重要。谢谢你让我知道!谢谢投票是整个SO模型的核心-您可能想快速查看一下