【问题标题】:Is there a simpler version of GridSearchCV that just optimizes a function?是否有更简单的 GridSearchCV 版本来优化功能?
【发布时间】:2017-05-10 13:43:15
【问题描述】:

scikit-learn 有一个很好的函数ParameterGrid,它创建了一个从字符串字典到序列的参数网格:

[http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.ParameterGrid.html]

GridSearchCV 使用此函数对估计器的指定参数值进行详尽搜索。 GridSearchCV 允许网格搜索的轻松并行化。这是一个链接:

http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html#sklearn.model_selection.GridSearchCV

我有一个更简单的问题:我只想在参数值上彻底搜索函数的最小值。鉴于ParameterGrid 的输出,搜索最小值很简单。但是并行化有点复杂。

我想知道是否有一个类似于GridSearchCVGridSearch 函数(末尾没有“CV”),我可以用它来解决这个更简单的问题。如果没有,有没有办法“破解”GridSearchCV,向它传递适当的参数以便它完成这项工作?

【问题讨论】:

    标签: python optimization scikit-learn


    【解决方案1】:

    您可以使用 GridSeachCV 像“无交叉验证”一样使用此 hack: GridSearchCV 的cv 参数应该是ShuffleSplit(1, test_size=0.01, n_iter=1, random_state=random_const) 而GridSearchCV 应该是这样的

    from sklearn.cross_validation import ShuffleSplit
    
    random_const = 123
    grid_cv = GridSearchCV(estimator,
                           parameters_grid,
                           cv=ShuffleSplit(1, test_size=0.01, n_iter=1, random_state=random_const),
                           verbose=0,
                           n_jobs=1)
    

    【讨论】:

      猜你喜欢
      • 2010-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-17
      • 2018-02-01
      • 2021-05-27
      • 2011-06-08
      • 1970-01-01
      相关资源
      最近更新 更多