神经网络中的“自由度”是什么意思?


17

在Bishop的书《模式分类和机器学习》中,它描述了一种在神经网络环境下进行正则化的技术。但是,我不理解一段描述训练过程中自由度的数量随模型复杂性而增加的段落。相关报价如下:

作为控制网络有效复杂性的一种方式,使用正规化的另一种方法是早期停止的过程。非线性网络模型的训练对应于针对一组训练数据定义的误差函数的迭代减少。对于用于网络训练的许多优化算法(例如共轭梯度),误差是迭代索引的非递增函数。但是,相对于独立数据测得的误差(通常称为验证集)通常首先显示出减小的趋势,然后随着网络开始过度拟合而增大。因此,可以相对于验证数据集在最小错误点停止训练,如图5.12所示,以便获得具有良好泛化性能的网络。在这种情况下,有时会根据网络中的有效自由度来对网络的行为进行定性解释,其中,该自由度从小开始,然后在训练过程中逐渐增加,这与有效自由度的稳定增长相对应。模型的复杂性。

它还说,参数的数量在训练过程中会增加。我假设通过“参数”来指代网络隐藏单元控制的权重数。也许我错了,因为通过正则化过程可以防止权重的大小增加,但是权重不会改变。难道是指找到大量隐藏单位的过程?

神经网络的自由度是多少?训练期间增加哪些参数?


1
命名法。参数是单个权重。参数数量的增加意味着“神经元”或“神经元之间的连接”的数量正在增加。这意味着拓扑是非恒定的。
EngrStudent-恢复莫妮卡

谢谢!但是,为什么训练会增加权重?
罗伯·史密斯

实际上,有一些训练算法可以在训练过程中操纵神经网络的结构(级联相关,NEAT等)。它们通常会不断增加重量。但是我认为主教在他的书中没有提到这一点。
alfa 2013年

@alfa有趣。我还没有读完整本书,所以我不知道它是否提到了那种算法。不过,我认为在本书的这一部分中没有提到它们。
罗伯·史密斯

Answers:


12

我怀疑这就是主教的意思:

如果您将神经网络视为将输入映射到输出的函数,那么当您首次使用较小的随机权重初始化神经网络时,该神经网络看起来很像线性函数。S形激活函数在零附近接近线性(只需进行泰勒展开),较小的输入权重将确保每个隐藏单元的有效域只是零附近的一个小区间,因此整个神经网络,无论有多少个您拥有的图层看起来非常像线性函数。因此,您可以试探性地将神经网络描述为具有少量的自由度(等于输入的维数)。在训练神经网络时,权重可以任意变大,并且神经网络可以更好地近似任意非线性函数。随着训练的进行,


谢谢您的回答。我在书中添加了相关部分作为报价,因此您可以看到上下文。不过,不确定是否可以确认您的建议。
罗伯·史密斯

是的,这确实证实了我认为Bishop的意思。
Marc Shivers

阅读几次答案后,我认为随着训练的进行和模型的过拟合,实际上可以减少模型可以近似的功能数量,因为它可以从训练数据中近似得出非常好的分数,但是其预测不会太好了,因为它不能概括为适合其他点或类似数据集。
罗伯·史密斯

4

“有时定性地解释”这句话表明他只是在对简单的线性回归进行类比。每次我们向线性回归模型添加项时,我们都会向模型添加自由度,并从与误差项相关的自由度中减去自由度。如果我们在模型中放置足够的独立项,则可以从一组随机数中完美地“预测”历史,但我们将完全无法预测未来。


3

Ye 1998 JASA中讨论了复杂的统计学习模型的自由度问题。基本上,这个想法是看复杂模型(例如神经网络)的输出对输入单位变化的响应程度。对于线性模型,该关系毫无疑问是一对一的,因此,复杂度为(回归数)的模型的自由度为ppp。对于更复杂的模型(可以认为是回归树),添加额外节点的能力提供了更大的灵活性,因为CART模型将寻找要拆分的良好变量和拆分点。这远远超出了在线性模型中添加回归变量所能做的事情,Ye发现回归树每个节点消耗约3.5-4 dfs。神经网络可能介于两者之间,但自由度肯定比单位数大,并且可能比权重大。

我认为HTF Sec提供了类似的功能7.6,尽管他们惊讶地没有提到Ye(1998)。不过,他们确实将Bishop称为特例。


1
谢谢。这似乎是正确的,但与神经网络训练的关系又如何呢?我在第96页的“统计学习要素”中找到了(docs.google.com/…)的了一个与自由度和协方差有关的表达式,并且我可以理解为什么更多的训练会减少误差函数并因此增加协方差,自由程度。但是,我不明白为什么方程式(书中的3.60)成立。
罗伯·史密斯

顺便说一句,这似乎也与叶文中所提到的(广义)自由度的定义有些不同。
罗伯·史密斯

1
我想您可以将协方差视为导数的粗略形式...或者反之亦然:导数(定义为步长为零时的极限)可以认为是该协方差随扰动的方差变为零。公式(3.60)不必成立,它是一个定义,所以没有什么要持有的。什么保持与DFS的线性模型,他们简单地提到下一个页面上的标准清晰度的等同性,那简直是线性模型的线性代数。Ye(1998)也必须谈论它。
StasK

3

他说“网络的有效复杂性”。他实际上是指网络权重的大小。这可以根据最小描述长度原理来理解。但是在我开始讨论之前,直觉是权重越大,您的网络可以适应的功能就越不同,因此自由度(和有效复杂性)也就越高。

在该章中,他讨论正则化,这是一种通过要求权重尽可能小来有效降低过拟合风险的技术。一般来说,

p(D|w)=np(tn|xn,w)=nexp(β2[tny(xn,w)]2)/ZD(β)
wZD(β)

p(w)=exp(α||w||22)/ZW(α)
argmaxwp(w|D)

p(w|D)=p(D|w)p(w)
Zw

argminwnβ2[tny(xn,w)]2+α2iwi2

一般而言,您有MAP估算值等于以下估算值,

wMAP=argminwlog2P(D|w)log2(w)

表达式的右侧可以解释为描述分类器所需的位数。第一项表示对网络对训练数据进行的错误进行编码所需的位数。第二个代表编码权重所需的位数。

因此,MAP估计等效于选择尽可能紧凑的表示形式。换句话说,您要寻找一组权重,这些权重应尽可能忠实地说明训练数据,并且可以用最少的位数来表示。

请注意,这是偏差/方差问题的另一种形式:权重越大,第一项越低,因为网络可以更好地拟合训练数据(过度拟合)。但是同时权重的复杂性也更高。权重越小,网络的复杂度越小,但是误差项(bias)越高。编码网络错误所需的位数越多。

希望这能使您对他所指的内容有足够的了解。

PS在进行中的讨论中添加了更长的论点,也许我误会了您。请允许我最后一次解释自己。

权重的先验表示我们对您要拟合的函数所做的假设。先验值(即权重)越大,高斯范围就越宽,即人们认为适合网络的可能配置越多。

让我们考虑回归的情况(就像我提到的论文)。低泛化误差意味着网络能够映射非常接近实际值的看不见的样本。如果拟合直线,则一阶多项式就足够了(低复杂度)。现在,您还可以使用更高阶的多项式拟合数据(让更高阶的系数不同于零)。网络的复杂度更高,因为您可以考虑振荡,从而获得更复杂的曲线。但是,如果与高阶项相对应的系数足够低,则网络可以很好地近似直线,从而获得良好的通用性。

因此,只要可以使泛化误差最小化,MDL的全部目的就是使权重尽可能小。

最后,引用您的话:“随着模型开始过拟合,其对其他函数建模的能力将会增强。我认为这令人感到困惑。我认为这是相反的,因为过拟合的模型无法推广到新模型。信息。”。是的,它可以为其他更复杂的功能建模,但是将无法正确建模现有功能。在书中的图5.12中,随着重量的增加(误差的减少),误差首先下降。直到给定点它再次开始增加(泛化减少,过度拟合)。


1
谢谢。这与Marc的想法相似,但是,我仍然发现这样一个争论,即随着模型开始过拟合,其对其他函数建模的能力将会增加。我认为这是完全相反的,因为过拟合的模型无法推广到新信息中。
罗伯·史密斯

1
Robert,我认为泛化错误的含义与网络的复杂性(即对更复杂的函数建模的能力)存在某种误解。有许多描述不同术语的论文,例如cbcl.mit.edu/projects/cbcl/publications/ps/…
jpmuc

我不认为使用“复杂性”一词会引起混淆,因为如果您有一堆带有疯狂值的权重,那么该模型将非常复杂,您可以通过结果图立即看出。另一方面,要能够管理广泛的功能,就需要一个能够从避免过度拟合而获得的数据中很好地概括化的模型。
罗伯·史密斯
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.