12.3 从多种学习算法中选择最佳模型
问题描述
通过搜索一系列学习算法及其超参数来选择最佳模型。
解决方案
为候选的学习算法及其超参数创建一个字典:

讨论
在前两节中,我们通过搜索学习算法的候选超参数值找到了最佳模型。
但是,如果不知道应该使用哪种学习算法该怎么办呢?最新版本的scikit-learn允许将学习算法作为搜索空间的一部分。在本节的解决方案中,我们定义了一个包含两种学习算法的搜索空间:逻辑回归和随机森林。每种学习算法都有自己的超参数,并且我们采用classifier__[hyperparameter_name]这种格式定义超参数的候选值。例如,对于逻辑回归,为了定义正则化超参数空间C以及可能的正则化惩罚penalty的候选值集合,创建如下字典:

对于随机森林的超参数,我们也创建了一个类似的字典:

在搜索完成之后,可以使用best_estimator_来查看最佳模型及其超参数:

和前面两节一样,完成模型选择之后就可以使用这个最佳模型进行预测:




本书评论