详细内容或原文请订阅后点击阅览
超越网格搜索的 3 种超参数调优技术
揭示机器学习中先进的超参数搜索方法如何工作,以及为什么它们可以更快地找到最佳模型配置。
来源:KDnuggets简介
在构建中等到高复杂度的机器学习模型时,有大量的模型参数不是从数据中学习的,而是必须由我们先验设置:这些称为超参数。随机森林集成和神经网络等模型有多种需要调整的超参数,因此每个超参数都可以采用许多不同值之一。因此,配置超参数的一小部分的可能方法几乎变得无穷无尽。这就带来了一个问题:确定这些超参数的最佳配置(即产生最佳模型性能的参数)可能会变得像大海捞针一样,甚至更糟:大海捞针。
本文建立在《精通机器学习》之前有关超参数调整艺术的指南的基础上,并采用实践方法来说明中级到高级超参数调整技术在实践中的使用。
具体来说,您将学习如何应用这三种超参数调整技术:
执行初始设置
在开始之前,我们将导入必要的库和依赖项 - 如果您遇到其中任何一个“模块未找到”错误,请务必先 pip 安装有问题的库。我们将使用 NumPy、scikit-learn 和 Optuna:
将 numpy 导入为 np
导入时间
从 sklearn.datasets 导入 load_digits从sklearn.model_selection导入train_test_split,cross_val_score从 sklearn.ensemble 导入 RandomForestClassifier导入奥图纳进口警告warnings.filterwarnings('忽略')我们还将加载三个示例中使用的数据集:修改后的国家标准与技术研究所 (MNIST),一个用于手写数字低分辨率图像分类的数据集。接下来,我们定义一个超参数搜索空间;也就是说,我们确定要尝试组合的每个参数和值子集。
