使用Optuna进行超参数调整
模型超参数是模型外部的配置,无法从数据中估计其值。我们无法知道给定问题上模型超参数的最佳值。我们可能会使用经验法则,复制用于其他问题的值或通过反复试验来寻找最佳值。我们调整模型的超参数以发现能够进行最熟练的预测的模型参数。超参数是:
支持向量机中使用的'C'和'??'超参数
用于规范化的'??'超参数
但是为什么我们担心超参数呢?这是因为这些参数直接控制训练算法的行为。这些对模型性能有重大影响。选择超参数可以使您的算法大放异彩!
超参数优化器
现在,让我们看看超参数优化器在学习算法的整个过程中的地位。
超参数调优
从上图[1]可以看出,超参数调谐器在模型外部,并且在模型训练之前进行了调整。调整过程的结果是超参数的最佳值,然后将其输入模型训练阶段。现在让我介绍Optuna,它是Python中的优化库,可用于超参数优化。
奥图纳
Optuna是用于自动化这些超参数优化过程的软件框架。它通过使用不同的采样器(例如网格搜索,随机,贝叶斯和演化算法)自动查找最佳超参数值。让我首先简要介绍一下optuna中可用的不同采样器。
网格搜索:离散每个超参数的搜索空间。优化器针对每种超参数配置启动学习,并在最后选择最佳方法。
随机:对搜索空间进行随机采样,直到满足停止条件为止。
贝叶斯:基于概率模型的方法来寻找最佳超参数
进化算法:?元启发式方法,利用适应度函数的值来找到最佳超参数。
为什么选择奥图纳?optuna的以下功能鼓励我将其用于超参数调整,以解决我要解决的问题&