如何在 GridSearchCV 中输入预定义的 k 折叠
Posted
技术标签:
【中文标题】如何在 GridSearchCV 中输入预定义的 k 折叠【英文标题】:How to feed predefined k-folds in GridSearchCV 【发布时间】:2018-08-07 02:38:02 【问题描述】:我想使用 GridSearchCV 对我拥有的 10 个预定义的选定数据折叠进行参数调整和评估(作为数据索引列表的列表)。
有谁知道如何在 scikit 中为 GridSearchCV 提供 10 个预定义的测试折叠列表?
splits=[ [0,10,9,1,2,..] ,[3,5,7,..],[23,4,34,..]]
#len(split)=10
greed_search = GridSearchCV(estimator, param_grid=parameters, cv=splits,scoring=scoring, refit=score, error_score=0, n_jobs=n_jobs)
【问题讨论】:
【参考方案1】:我认为你需要像这样预处理你的折叠:
new_splits = []
for i in range(len(splits)):
train = [j for i in splits[:i] + splits[i + 1:] for j in i]
test = splits[i]
new_splits.append([train, test])
不仅要获得可迭代的测试部分,还要训练部分
【讨论】:
以上是关于如何在 GridSearchCV 中输入预定义的 k 折叠的主要内容,如果未能解决你的问题,请参考以下文章
在 GridSearchCV 和 RandomizedSearchCV 中获取单个模型和自定义分数 [重复]
如何从 Scikit-Learn 的详细输出中估计 GridSearchCV 的进度?