机器学习中参数和超参数的区别
机器学习中的模型参数和模型超参数在功能和来源上是不同的,模型超参数往往被称为模型参数,容易让初学者混淆。本文给出并比较了模型参数和模型超参数的定义,指出了两者的本质区别:模型参数是模型内部的配置变量,模型参数的值可以通过数据来估计;模型超参数是模型外部的配置,参数值必须手动设置。
我们做研究的时候,会碰到很多术语。有时,在不同的研究领域会出现名称相同的术语。比如统计学和经济学中经常用到的“模型参数”和“模型超参数”也存在于机器学习中。
机器学习领域的“模型参数”和“模型超参数”的作用和来源是不同的。如果初学者对它们没有清晰的理解,他们通常会很难学习,尤其是那些来自统计学和经济学领域的知识。
为了让大家在应用机器学习时对“参数模型”和“超参数模型”有一个清晰的定义,我们将在本文中详细讨论这两个术语。
首先,我们来看看什么是“参数”。
作为从历史训练数据中学习出来的模型的一部分,参数是机器学习算法的关键。
统计中的“参数”:
在统计学中,你可以假设一个变量的分布,比如高斯分布。高斯分布的两个参数分别是均值(μ)和标准差(sigma)。这在机器学习中是有效的,这些参数可以通过数据来估计,并用作预测模型的一部分。
编程中的“参数”:
在编程中,参数可以传递给函数。在这种情况下,该参数是一个函数参数,可以有一个取值范围。在机器学习中,你正在使用的特定模型是一个函数,你需要参数来预测新的数据。
「参数」和「模型」是什么关系?
根据经典的机器学习文献,模型可以看作是一个假设,参数是根据特定的数据集对假设进行的特定调整。
一个模型的参数数量是固定的还是可变的,决定了该模型是“参数”模型还是“非参数”模型。
什么是模型参数?
简单来说,模型参数是模型内部的配置变量,其值可以通过数据来估计。
具体而言,模型参数具有以下特征:
模型预测需要模型参数。
模型参数值可以定义模型函数。
模型参数通过数据估计或数据学习获得。
模型参数通常不由从业者手动设置。
模型参数通常保存为学习模型的一部分。
优化算法通常用于估计模型参数,优化算法是对参数可能值的有效搜索。
模型参数的一些示例包括:
人工神经网络中的权重。
支持向量机中的支持向量。
线性回归或逻辑回归中的系数。
什么是模型超参数?
模型超参数是模型之外的配置,其值无法从数据中估计。
具体特点是:
在估计模型参数的过程中经常使用模型超参数。
模型超参数通常被从业者直接引用。
模型超参数通常可以通过启发式方法设置。
模型超参数通常根据给定的预测建模问题进行调整。
如何得到它的最优值:对于给定的问题,我们无法知道模型超参数的最优值。但是我们可以用经验法则找到它的最优值,或者复制其他问题中使用的值,或者通过试错法。
模型超参数的一些例子包括:
训练神经网络的学习速率。
支持向量机的c和sigma超参数。
在k的邻域内。
“模型参数”和“模型超参数”
两者之间的联系:
在针对特定问题调整机器学习算法时,比如使用网格搜索或随机搜索,你会调整模型或命令的超参数,找到一个能让模型预测最熟练的模型参数。许多模型中的重要参数不能从数据中直接估计出来。例如,在K最近邻分类模型中...这种类型的模型参数称为调整参数,因为没有可用的分析公式来计算合适的值。
区分:
模型超参数通常称为模型参数,容易被误解。解决这个问题的一个好的经验法则如下:如果你必须手工指定一个“模型参数”,它可能是一个模型超参数。
摘要
看完这篇文章,我们就能明白模型参数和模型超参数的明确定义和区别了。
总之,模型参数是根据数据自动估计的,而模型超参数是手动设置的,并在估计模型参数的过程中使用。