【问题标题】:Gridsearchcv vs Bayesian optimizationGridsearchcv 与贝叶斯优化
【发布时间】:2019-09-14 21:35:19
【问题描述】:

Gridsearchcv 和贝叶斯优化中哪一个更适合优化超参数?

【问题讨论】:

    标签: python-3.x machine-learning gridsearchcv


    【解决方案1】:

    这里没有更好的方法,它们是不同的方法。

    Grid Search 中,您尝试了某些范围内所有可能的超参数组合。

    Bayesian 中,您不会尝试所有组合,而是在尝试时沿着超参数学习的空间进行搜索。这样可以避免尝试所有组合。

    所以Grid Search 的优点是你是详尽无遗的,Bayesian 的优点是你不需要,基本上如果你可以在计算能力方面去Grid Search 但如果空间Bayesian 搜索太大了。

    【讨论】:

    • 您能否详细说明为什么详尽无遗是件好事?
    • 我认为 gridsearchcv 并不详尽。因为我们不能搜索所有的组合。
    【解决方案2】:

    在理论上和实践中,网格搜索在优化超参数 [1] 方面都比随机搜索更糟糕。除非您只优化一个参数,否则切勿使用网格搜索。 另一方面,贝叶斯优化被认为在各种问题上优于随机搜索,也用于优化超参数 [2]。然而,这并没有考虑到几件事:使用这些超参数的模型的泛化能力、与简单得多的随机搜索相比使用贝叶斯优化的努力,以及并行使用随机搜索的可能性。

    因此,总而言之,我的建议是:永远不要使用网格搜索,如果您只想尝试几个超参数并且可以并行尝试(或者如果您希望超参数泛化到不同的问题),请使用随机搜索,然后使用贝叶斯优化如果你想要最好的结果并且愿意使用更高级的方法。

    [1] 超参数优化的随机搜索,Bergstra 和 Bengio 2012。

    [2] 贝叶斯优化优于随机搜索进行机器学习超参数调优:2020 年黑盒优化挑战分析,Turner 等人。 2021.

    【讨论】:

      猜你喜欢
      • 2023-01-13
      • 1970-01-01
      • 2019-09-22
      • 1970-01-01
      • 2014-02-21
      • 2019-09-26
      • 2021-06-03
      • 2019-01-12
      • 1970-01-01
      相关资源
      最近更新 更多