1

我的理解是正确的:在下面的代码中,“greed_search.fit(X,Y)”与嵌套的CV没有任何关系?这意味着无法在sklearn中使用嵌套CV获取最佳参数。使用sklearn嵌套交叉验证获得最佳参数

# inner cross_validation 
    greed_search = GridSearchCV(estimator=estimator, param_grid=parameters, cv=inner_cv, scoring=optimized_for) 
    greed_search.fit(X, optimization_label) 
    # Nested CV with parameter optimization 
    nested_score = cross_val_score(greed_search, X=X, y=Y, cv=outer_cv) 
+0

什么是inner_cv?这是一个数字吗? –

回答

1

你是对的:在代码中greed_search.fit(X, optimization_label)的是不被嵌套到下一个交叉验证执行。

要回答你的第二个问题,我问你另一个问题:什么应该是嵌套到交叉验证的网格搜索的最佳参数?第一批的?最常见的?

内部网格搜索,在外部交叉验证的每一步,根据当前步骤的训练数据选择最佳参数。因此参数可以在折叠之间改变。自己做外部交叉验证可以计算每个步骤的最佳参数,但我不认为你真的需要它。