为什么将正则化项“加”到成本函数上(而不是相乘等)?


51

每当使用正则化时,通常会将其添加到成本函数中,例如以下成本函数中。 这对我来说很直观,因为将代价函数意味着同时最小化误差(左项)和最小化系数的大小(右项)(或至少平衡两个最小化)。

J(θ)=12(yθXT)(yθXT)T+αθ22

我的问题是,为什么将这个正则化项αθ22加到原始成本函数上而不是相乘,还是将正则化思想背后的动机精神保留下来?是因为如果我们仅在其上添加一个术语就足够简单并且可以使我们解析地解决这个问题,还是有更深层次的原因?


1
另一个论点是通过代表定理
jkabrg

2
拉格朗日乘数
Haitao Du

9
如果您有比观察值更多的独立变量,则可以通过几种不同的方法将12(yθXT)(yθXT)T设为零,因此乘以任何值都不会帮助区分有用的模型
亨利

Answers:


47

在贝叶斯框架中,它具有很好的直觉。考虑到给定观测值X,y,正规化成本函数J与参数配置\ theta的概率具有相似的作用。应用贝叶斯定理,我们得到:θX,y

P(θ|X,y)=P(X,y|θ)P(θ)P(X,y).

取表达式的对数可以给我们:

logP(θ|X,y)=logP(X,y|θ)+logP(θ)logP(X,y).

现在,假设为负1 log-postterior,。由于最后一项不依赖于,因此我们可以省略它而不更改最小值。您剩下两个术语:1)取决于和的似然项,以及2)仅取决于的先前项。这两项与您公式中的数据项和正则化项完全对应。J(θ)logP(θ|X,y)θlogP(X,y|θ)XylogP(θ)θ

您甚至可以进一步证明发布的损失函数与以下模型完全对应:

P(X,y|θ)=N(y|θX,σ12),
P(θ)=N(θ|0,σ22),

其中参数来自零均值高斯分布,观测值具有零均值高斯噪声。有关更多详细信息,请参见此答案θy


1负数,因为您想最大化概率但最小化成本。


5
我对此答案有点不满意,因为它只是挥舞了成本函数和对数后验之间的对应关系。如果成本不对应于对数后验,而是后验本身,则可以得出结论:正则化应该乘以非正则化成本(如OP所要求的)。-要正确地证明这个答案是正确的,您需要证明为什么它就是对数后验,即我们等于成本。(您有点像“走得更远”,但那时候您会有点手摇。)
RM

1
@RM,有效点。这是有原因的:这是因为机器学习中使用的标准损失函数对应于对数后验而不是后验本身。为什么?因为他们使用经验风险最小化;,标准损失函数通常采用,其中是一个损失函数,具有明智的解释为对数后验概率。(我怀疑您知道这一点,但我只是想为其他访客说明一下。)logP(X1,,Xn,y1,,yn|θ)=ilogP(Xi,yi|θ)if(Xi,yi,θi)f
DW

@RM如果您有一些成本,则总是可以根据重新定义问题。换句话说,无论您的成本函数是什么,它都基于定义一个分布,该分布除以使用MCMC方法时可以忽略的一些归一化常数。对于模拟退火,MCMC采样器等,您总是可以用指数重述这一事实非常重要CC=explnCexplnC
。–

例如,@ RM,请看Jun Jun的这篇论文(在Liu的MCMC书中有类似的评论),在底部的第3页上说:“让是要调查的目标概率分布(大概所有 pdf都可以这种形式编写)”(加了强调)。因此,从贝叶斯的观点来看,似然模型定义的后验部分将是该损失函数,对此答案的贝叶斯分解将是完全通用的。π(x)=cexph(x)
ely

感谢您的回答!我试图在您文章的开头理解“它”:您声称贝叶斯框架内的直觉到底是什么?罚款增加的基本原因是好的估计?还是人们使用这些累加估算器的历史(和非统计)原因?(正如我试图让我的措词建议的那样,我认为您的回答是
出于

34

JanCagdas给出了很好的贝叶斯理由,将正则化器解释为先验。这是一些非贝叶斯的:

  • 如果未规范化的目标是凸的,并且添加了凸正则化器,则总目标仍将是凸的。如果您将其相乘或采用其他大多数组合方法,则情况并非如此。相比非凸优化,凸优化确实非常好。如果凸公式有效,那么这样做会更好。

  • 有时,它会导致一个非常简单的封闭形式,因为wpof提到了岭回归的情况。

  • 如果您真的想将问题视为具有严格约束 的问题 则其Lagrange对偶就是问题 尽管您不必使用拉格朗日对偶性,但对此很多了解。

    minθ:c(θ)0J(θ),
    minθJ(θ)+λc(θ).
  • ogogmad所述表示定理适用于加法罚分的情况:如果要在函数的整个再生内核Hilbert空间上优化,那么我们知道在整个空间 位于许多损失的简单有限维子空间中;我不知道这是否适合乘法正则化器(尽管可能)。这是内核SVM的基础。fH

    minfHJ(f)+λfH2
    J
  • 如果您正在进行深度学习或任何非凸的操作:加性损失会给出简单的加性梯度。对于您给出的简单的正则化器,它变成非常简单的权重衰减。但是,即使对于更复杂的正则化程序,也可以说WGAN-GP的损失 当只需要考虑损耗和复杂的正则化器之和(分别考虑)时,反向传播更容易计算梯度。做产品规则。L2

    x,yfθ(x)fθ(y)the loss+λE^αUniform(0,1)(fθ(αx+(1α)y)1)2the regularizer,
  • 附加损失也适用于流行的ADMM优化算法和其他基于“分解”的算法。

这些规则都不一成不变的规则,实际上有时乘(或其他)正则化器可能会更好(如ogogmad所指出)。(实际上,前几天我提交了一篇论文,介绍了您可以将其解释为乘法正则化器比上面的WGAN-GP加法器更好的方法!)但是希望这有助于解释为什么加法正则器是“默认值”。


2
+1。祝您提交[大概是NIPS]顺利!
变形虫说恢复莫妮卡

13

您要最小化目标函数中的两个项。因此,您需要解耦条款。如果您乘以项,则可以有一个大而另一个则很低。因此,最终结果仍然是目标函数的值较低,但结果却不理想。

您可能会得到一个模型,该模型的最大变量接近于零而没有预测能力。

在此处输入图片说明 在此处输入图片说明

目标函数是要最小化的函数,可以构造为成本函数和正则项的总和。

如果两者相互独立,则可以得到第一个图中所示的物镜值。您会看到在总和的情况下,只有一个最小值为(0,0)。如果是产品,您会有歧义。您有一个在(x = 0或y = 0)处等于零的超曲面。因此,根据您的初始化,优化算法可能会终止于任何地方。而且它无法决定哪种解决方案更好。


10

您可以尝试其他二进制操作(),并查看它们之间的比较。max,min,×

这个问题和是,如果误差为,则正则罚最终会被。这使模型过拟合。min×00

的问题在于,您最终会最小化两个惩罚(训练错误或正则化)中的“较难者”,而不是另一个。max

相反,很简单并且可以正常工作。+

您可能会问为什么不执行其他二进制操作?没有论据可以排除他们,那为什么不呢?


8

我认为您有一个有效的问题。为了给您正确的答案,您将必须了解问题的概率性质。

通常,我们要解决的问题如下:给定数据,解释该数据的假设分布是什么。当我们说假设时,我们指的是PDF(至少在这种情况下)。假设的分布是PDF的PDF,即。Dp(H|D)

  1. p(H|D)是给定假设的分布。如果能够找到这一点,则可以从这些假设中选择一个,例如概率最高的假设,或者我们可以选择对所有假设取平均值。一种比较简单的方法是使用贝叶斯定理从另一个方向解决问题。D

    p(H|D)=p(D|H)×p(H)p(D)
  2. p(D|H)是假设之一,也称为似然性。是在观察数据之前假设在我们的假设宇宙中的分布。观察数据后,我们更新了信念。p(H)

  3. p(D)是我们更新信念之前假设的平均值。

现在,如果我们使用贝叶斯方程两边的,我们将得到:log

log[p(H|D)]=log[p(D|H)]log[p(H)]+log[p(D)]

通常难以计算。好消息是它不会影响结果。它只是一个标准化常数。p(D)

现在,例如,假设我们的假设集合是一堆具有的高斯,而我们不知道,假设知道(或至少假设它是一个常数),并且假设本身以形式分布为高斯分布然后插入上面的所有内容看起来像:p(D|H)p(y|X,θ)N(θX,σ)θσp(H)=p(θ)N(0,α1I)

log[p(H|D)]=bunch of constants+12(yθX)2+12α||θ||2+constant

现在,如果使该表达式最小化,我们将找到概率最高的假设。常数不影响最小化。这是您问题中的表达方式。

我们使用高斯公式的事实并不会改变正则化项是附加事实。它必须是加性的(对数形式或概率乘性),没有其他选择。如果我们使用其他分布,将会改变的是附加组件。您提供的成本/损失函数对于特定的高斯场景是最佳的。


嘿Cagdas,谢谢您的解释。我不明白RHS中最后一个方程式的转换。您能否指出一些资源让我更清楚地了解这一部分
Itachi,

7

Ridge是一种非常方便的公式。与概率答案相反,该答案没有给出估计的任何解释,而是解释了为什么ridge是一个古老而明显的表述。

在线性回归中,法线方程给出 θ^=(XTX)1XTy

但是,矩阵有时是不可逆的。调整它的一种方法是通过添加一个小的元件对角:。XTXXTX+αI

这给出了解决方案:;那么不会解决原始问题,而是解决岭问题。θ~=(XTX+αI)1XTyθ~


3
请指定您要参考的答案。随着选票的累积,顺序将四处移动,因此“以上”本质上是模棱两可的。
gung-恢复莫妮卡

1

对于我们为什么不能乘以正则项,我认为有一个更直观的原因。

让我们将惩罚函数乘以规则惩罚函数乘以您建议的正则化项。

J(θ)=(12(yθXT)(yθXT)T)αθ22

在这里,我们创建惩罚函数的全局最小值,其中。在这种情况下,我们的模型可能会在预测和数据之间产生较高的误差,但这并不重要,如果模型参数权重全部为零,则惩罚函数为零。αθ22=0J(θ=0)=0

由于除非我们的模型是完全完美的,否则项永远不会为零(存在集合θ的概率为了使我们的模型“完美”对于实际数据可以忽略不计),那么我们的模型应始终趋向于朝向解θ= 0训练。(12(yθXT)(yθXT)T)

这是它将返回的结果,除非它陷入某个地方的局部最小值中。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.