机器学习调参方法

机器学习工程实践中4种常用的调参方法

  1. 手动调参
  2. 网格搜索(Grid Search)
  3. 随机搜索
  4. 贝叶斯调优

各种方法的对比

参考:Gridsearchcv vs Bayesian optimization

特点

  • Grid search穷举所有参数的组合,以在所给的参数空间中寻找全局最优,而Bayesian optimization避免尝试所有的组合。这正是二者各自的特点,也是各自的优点。
  • Grid search的参数搜索是离散的值,Bayesian的参数搜索是连续的区间。

如何选择?

  • 如果计算机有足够的计算力,且不在意时间的消耗,那么选择Grid Search;如果参数搜索空间太大,选择Bayesian optimization。
  • 另有一说:在确定参数的最佳组合的保证和计算时间之间总是存在权衡。如果超参数空间(超参数个数)非常大,则使用随机搜索找到超参数的潜在组合,然后在该局部使用网格搜索(超参数的潜在组合)选择最优特征。

Python调参库

from sklearn.model_selection import GridSearchCV
from sklearn.model_selection import RandomizedSearchCV
# 下面两个包可以做贝叶斯搜索,选用其一即可
from bayes_opt import BayesianOptimization    # 安装:pip install bayesian-optimization
from skopt import BayesSearchCV    # 安装:pip install scikit-optimize
import hyperopt # pip install hyperopt
import skopt # pip install scikit-optimize

Reference

  1. Gridsearchcv vs Bayesian optimization
  2. 用贝叶斯优化进行超参数调优
  3. 机器学习4个常用超参数调试方法!
  4. 机器学习模型评估与调参,超全一万字总结!
posted @ 2020-01-03 10:26  AI征途  阅读(243)  评论(0编辑  收藏  举报