Machine Learning-模型评估与调参 ——网格搜索

机器学习系列专栏

选自 Python-Machine-Learning-Book On GitHub

作者:Sebastian Raschka

翻译&整理 By Sam

C罗和梅西在机场等了几天总算等到了内马尔。

Machine Learning-模型评估与调参 ——网格搜索_第1张图片

网格搜索(grid search),作为调参很常用的方法,这边还是要简单介绍一下。

在我们的机器学习算法中,有一类参数,需要人工进行设定,我们称之为“超参”,也就是算法中的参数,比如学习率、正则项系数或者决策树的深度等。

网格搜索就是要找到一个最优的参数,从而使得模型的效果最佳,而它实现的原理其实就是暴力搜索;即我们事先为每个参数设定一组值,然后穷举各种参数组合,找到最好的那一组。

1. 两层for循环暴力检索:

网格搜索的结果获得了指定的最优参数值,c为100,gamma为0.001


2. 构建字典暴力检索:

网格搜索的结果获得了指定的最优参数值,c为1


GridSearchCV中param_grid参数是字典构成的列表。对于线性SVM,我们只评估参数C;对于RBF核SVM,我们评估C和gamma。最后, 我们通过best_parmas_得到最优参数组合。

接着,我们直接利用最优参数建模(best_estimator_):


网格搜索虽然不错,但是穷举过于耗时,sklearn中还实现了随机搜索,使用 RandomizedSearchCV类,随机采样出不同的参数组合。

3. 参考文献

1. Python机器学习库sklearn网格搜索与交叉验证

https://blog.csdn.net/cymy001/article/details/78578665

2. python机器学习库sklearn——参数优化(网格搜索GridSearchCV、随机搜索RandomizedSearchCV、hyperopt)

https://blog.csdn.net/luanpeng825485697/article/details/79831703

你可能感兴趣的:(Machine Learning-模型评估与调参 ——网格搜索)