机器学习算法和超参数选择的四种优化策略
作者头像
  • 2019-11-12 13:43:12 3

从智能手机到航天器,机器学习算法无处不在。这些算法能够预测天气预报、实现语言翻译,甚至推荐您接下来想看的电视剧。算法会根据数据自动调整其外部参数,但有一些参数是无法通过学习获得的,需要由专家手动配置。这些参数通常称为“超参数”。随着人工智能的应用越来越广泛,超参数对我们的生活产生了重大影响。

例如,在决策树模型中,树的深度和人工神经网络中的层数是典型的超参数。模型的效果很大程度上取决于这些超参数的选择。对于中等深度的树,决策树可能表现良好;而对于过深的树,性能可能会下降。最佳超参数的选择是一个复杂的过程,受具体问题的影响。

因为不同的算法、目标、数据类型和数据量都会导致超参数选择的不同,所以没有一种通用的超参数值适用于所有模型和所有问题。相反,必须在每个机器学习项目的上下文中优化超参数。

本文将首先回顾几种常用的优化策略,然后详细讨论这四种策略:网格搜索、随机搜索、爬山法和贝叶斯优化。

优化策略

尽管有专家的深入知识,手动优化模型的超参数仍然是一个耗时的过程。因此,我们可以采用自动方法来优化超参数。自动过程的目标是在给定项目中找到最佳超参数集,以优化特定模型。

典型的优化过程包括以下几个步骤: 1. 将数据分为训练集和测试集。 2. 迭代优化循环,直到满足条件: a) 选择一组新的超参数。 b) 使用选定的超参数在训练集上训练模型。 c) 应用模型到测试集并生成预测。 d) 使用适当的评分标准评估预测。记录与选定超参数集相对应的评分。

目标是从步骤2d到步骤2a,不断优化超参数。也就是说,如何选择下一组超参数,确保它比上一组更好。优化过程旨在逐步向合理的解决方案发展,即使它可能不是最佳解决方案。

典型的优化过程将机器学习模型视为黑盒子,只需关注模型性能的测量结果,而无需了解内部细节。接下来,我们将详细介绍四种常见的优化策略,用于为优化循环的下一次迭代确定新的超参数集。

网格搜索

这是最基础的方法。如果您不确定尝试哪些值,可以尝试所有可能的值。在网格搜索中,使用固定步长范围内所有可能的超参数值。例如,如果范围是[0, 10],步长为0.1,那么超参数值的序列将为(0、0.1、0.2、0.3……9.9、10)。这种方法的优点是简单,但计算成本较高。

随机搜索

在随机搜索中,超参数值是随机选择的。这种方法在多个超参数的情况下尤其有效,尤其是在某些超参数对最终结果影响更大的情况下。例如,在[0, 10]范围内随机生成固定数量的超参数值。随机搜索可以快速发现潜在的最佳值,但可能无法找到全局最优解。

爬山法

爬山法选择在超参数空间中向最佳方向移动。如果当前超参数值无法进一步改善目标函数,优化过程将停止。此方法考虑了之前的迭代结果,但可能陷入局部最优解。为了克服这个问题,可以从不同的初始值运行多次优化。

贝叶斯优化

贝叶斯优化是一种基于历史迭代的优化方法,类似于爬山法,但它会全局查看历史迭代,而不仅仅是最近一次。这个过程通常分为两个阶段:预热阶段和优化阶段。预热阶段随机生成超参数值,随后进入优化阶段,通过构建替代模型来寻找最佳超参数值。这种方法可以避免陷入局部最优解。

总结

训练机器学习模型时,超参数优化非常重要。手动优化耗时且需要专业知识,因此我们探讨了四种常见的自动优化策略:网格搜索、随机搜索、爬山法和贝叶斯优化。每种方法都有其优缺点,可以根据具体需求选择合适的策略。现在,您可以根据实际项目的需求尝试这些优化策略。

    本文来源:图灵汇
责任编辑: :
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
算法优化机器策略参数选择学习
    下一篇