名字里有什么:超参数

机器算法验证 术语 定义 参数化 超参数
2022-02-10 08:44:22

所以在正态分布中,我们有两个参数:均值和方差在《模式识别与机器学习》一书中,误差函数的正则化项中突然出现了一个超参数μσ2λ

什么是超参数?他们为什么这样命名?它们在直觉上与一般参数有何不同?

4个回答

术语超参数非常模糊。我将使用它来引用层次结构中比其他参数更高级别的参数。例如,考虑具有已知方差的回归模型(在这种情况下为 1)

yN(Xβ,I)

然后是参数的先验,例如

βN(0,λI)

这里决定了 β 的分布,β的分布。当我只想引用时,我可以将其称为参数,而当我只想引用时,我可以将其称为超参数。λββyβλ

当参数显示在多个级别或存在更多层次级别时(并且您不想使用术语超超参数),命名会变得更加复杂。最好是作者在他们使用术语超参数或参数时明确说明其含义。

超参数只是一个完全或部分影响其他参数的参数。它们并不直接解决您面临的优化问题,而是优化可以解决问题的参数(因此hyper,因为它们不是优化问题的一部分,而是“插件”)。对于我所看到的,但我没有参考,这种关系是单向的(超参数不会受到它影响的参数的影响,因此也是hyper)。它们通常在正则化或元优化方案中引入。

例如,您的λ参数可以自由影响μσ调整正规化成本(但μσ没有影响λ)。因此,λ是一个超参数μσ. 如果您有额外的τ参数影响λ,这将是一个超参数λ, 和一个超参数μσ(但我从未见过这种命名法,但如果我看到它,我不会觉得它是错误的)。

我发现超参数概念对于交叉验证非常有用,因为它提醒您参数的层次结构,同时也提醒您,如果您仍在修改(超)参数,您仍然是交叉验证而不是泛化,所以您必须对你的结论保持谨慎(避免循环思考)。

其他的解释有点模糊;这是一个更具体的解释,应该澄清它。

参数只是模型的参数,而不是正在建模的物理过程的参数。您“人为地”引入它们以使您的模型在存在有限数据和/或有限计算时间的情况下“工作” 。如果您有无限的能力来测量或计算任何东西,那么超参数将不再存在于您的模型中,因为它们不会描述实际系统的任何物理方面。

另一方面,常规参数是描述物理系统的参数,而不仅仅是建模工件。

这不是一个精确定义的术语,所以我将继续为您提供另一个似乎与常用用法一致的定义。

超参数是机器学习算法中估计的量,不参与最终预测函数的函数形式。

让我用一个例子来解开这个问题,岭回归。在岭回归中,我们解决了以下优化问题:

β(λ)=argminβ((yXβ)t(yXβ)+λβtβ)
β=argminλ(yXβ(λ))t(yXβ(λ))

在第一个问题X,y是训练数据,在第二个X,y是一个保留数据集。模型的最终函数形式,我在预测函数上面称为

f(X)=Xβ

其中λ没有出现。这使得β参数向量,和λ一个超参数。