机器学习中的超参数详解
为了改进机器学习的学习模型,机器学习中提供了各种概念。超参数就是这样一种重要的概念,用于改进学习模型。它们通常被归类为模型超参数,在将机器拟合到训练集时不包含在内,因为它们指的是模型选择任务。在深度学习和机器学习中,超参数是在将学习算法应用于数据集之前需要应用或设置的变量。
什么是超参数?
超参数是由用户专门定义的,以改进学习模型并控制机器训练过程的参数。它们在机器学习中被明确使用,以便在应用模型的学习过程之前设置它们的值。这简单地意味着在机器学习训练期间无法更改这些值。超参数使学习过程能够轻松控制训练集的过拟合。超参数提供了控制学习过程的最佳或最优方法。
超参数被外部应用于训练过程,并且它们的值在训练过程中不能更改。大多数情况下,人们会混淆学习过程中使用的参数和超参数。但是参数和超参数在各个方面都不同。让我们在下面一节中简要了解参数和超参数之间的区别。
参数与超参数
这些术语通常被用户误解。但是超参数和参数彼此之间有很大区别。您将在下面了解这些区别 -
模型参数是由模型本身从训练数据中学习到的变量。另一方面,超参数是在训练模型之前由用户设置的。
模型参数的值在训练过程中学习,而超参数的值在学习过程中不能学习或更改。
顾名思义,模型参数具有固定数量的参数,而超参数不是训练模型的一部分,因此超参数的值不会被保存。
超参数的分类
超参数主要分为两类。它们解释如下 -
用于优化的超参数
用于增强学习模型的超参数称为用于优化的超参数。最重要的优化超参数如下 -
学习率 - 学习率超参数决定了它如何覆盖数据集中先前可用的数据。如果学习率超参数具有较高的优化值,则学习模型将无法正确优化,这将导致超参数可能跳过最小值的可能性。或者,如果学习率超参数具有非常低的优化值,则收敛也将非常缓慢,这可能会在确定学习模型的交叉检查时引发问题。
批大小 - 学习模型的优化取决于不同的超参数。批大小就是这些超参数之一。可以使用批处理方法提高学习过程的速度。此方法涉及通过将超参数划分为不同的批次来加快数据集的学习过程。为了调整所有超参数的值,获取了批处理方法。在这种方法中,训练模型遵循创建小批次、训练它们以及评估以调整所有超参数的不同值的程序。批大小会影响许多因素,如内存、时间等。如果增加批次的大小,则需要更长的学习时间,并且还需要更多内存来处理计算。同样,批次的大小越小,超参数的性能越低,这会导致误差计算中出现更多噪声。
时期数 - 机器学习中的时期是一种超参数,它指定训练数据的一个完整周期。时期数是训练数据的主要超参数。时期数始终是一个整数,在每个周期之后表示。时期在学习过程中起着重要作用,在学习过程中需要重复尝试和错误的过程。可以通过增加时期数来控制验证错误。时期也被称为提前停止超参数。
特定模型的超参数
隐藏单元数 - 深度学习模型中隐藏着各种神经网络。必须定义这些神经网络才能了解模型的学习能力。用于查找这些神经网络数量的超参数称为隐藏单元数。隐藏单元数是为关键功能定义的,它不应过度拟合学习模型。
层数 - 使用更多层的超参数可以提供比层数少的超参数更好的性能。它有助于性能增强,因为它使训练模型更可靠且无错误。
结论
超参数是由机器学习工程师外部定义的参数,用于改进学习模型。
超参数控制机器的训练过程。
参数和超参数听起来很相似,但它们在本质和性能上完全不同。
参数是在学习过程中可以更改的变量,但超参数是外部应用于训练过程的,并且它们的值在训练过程中不能更改。
各种方法被分类为不同类型的超参数,这些超参数可以增强学习模型的性能,并且还可以创建无错误的学习模型。