(a】 (b) (c) 图1.15:这幅图说明了使用最大似然方法确定高斯分布的方差时,偏移是如何产生的。绿色曲线表示真实 的高斯分布,数据点是根据这个概率分布生成的。三条红色曲线表示对三个数据集拟合得到的高斯概率 分布,每个数据集包含两个蓝色的数据点,使用公式(1.55)和公式(1.56)给出的最大似然的结果进行 拟合。对三个数据集求平均,均值是正确的,但是方差被系统性地低估了,因为它是相对样本均值进行 测量的,而不是相对真实的均值进行测量。 稍后在本章中,以及在后续的章节中,我们要强调最大似然方法的极大的局限性。这里,我 们通过考察我们给出的一元高斯分布的最大似然参数解,来稍微说明一下这个问题。特别 地,我们会看到,最大似然方法系统化地低估了分布的方差。这是一种叫做偏移(bis)的现 象的例子,与多项式曲线拟合问题中遇到的过拟合问题相关。我们首先注意到,最大似然 解μML和σML都是数据集x1,·,xN的函数。考虑这些量关于数据集的期望。数据集里面的点来 自参数为和σ的高斯分布。很容易证明 E[μMi]=4 (1.57) EloML]= (1.58) 因此,最大似然估计的平均值将会得到正确的均值,但是将会低估方差,因子为一。这背后 的直觉在图1.15中说明。 根据公式(1.58),下面的对于方差参数的估计是无偏的。 Niu=立e-wuP (1.59) n=1 注意,当数据点的数量N增大时,最大似然解的偏移会变得不太严重,并且在极 限N→∞的情况下,方差的最大似然解与产生数据的分布的真实方差相等。在实际应用中,只 要的值不太小,那么偏移的现象不是个大问题。然而,在本书中,我们感兴趣的是带有很多 参数的复杂模型。这些模型中,最大似然的偏移问题会更加严重。实际上,我们会看到,最大 似然的偏移问题是我们在多项式曲线拟合问题中遇到的过拟合问题的核心。 1.2.5重新考察曲线拟合问题 我们已经看到,多项式曲线拟合的问题可以通过误差最小化问题来表示。这里我们回到曲线 拟合的问题,从概率的角度来考察它,并且可以更深刻地认识误差函数和正则化,并且能够让 我们完全从贝叶斯的角度来看待这个问题。 曲线拟合问题的目标是能够根据N个输入x=(x1,.·,cV)'组成的数据集和它们对应的目标 值t=(t1,.,tN)T,在给出输入变量x的新值的情况下,对目标变量t进行预测。我们可以使用 26
(a) (b) (c) 图 1.15: 这幅图说明了使⽤最⼤似然⽅法确定⾼斯分布的⽅差时,偏移是如何产⽣的。绿⾊曲线表⽰真实 的⾼斯分布,数据点是根据这个概率分布⽣成的。三条红⾊曲线表⽰对三个数据集拟合得到的⾼斯概率 分布,每个数据集包含两个蓝⾊的数据点,使⽤公式(1.55)和公式(1.56)给出的最⼤似然的结果进⾏ 拟合。对三个数据集求平均,均值是正确的,但是⽅差被系统性地低估了,因为它是相对样本均值进⾏ 测量的,⽽不是相对真实的均值进⾏测量。 稍后在本章中,以及在后续的章节中,我们要强调最⼤似然⽅法的极⼤的局限性。这⾥,我 们通过考察我们给出的⼀元⾼斯分布的最⼤似然参数解,来稍微说明⼀下这个问题。特别 地,我们会看到,最⼤似然⽅法系统化地低估了分布的⽅差。这是⼀种叫做偏移(bias)的现 象的例⼦,与多项式曲线拟合问题中遇到的过拟合问题相关。我们⾸先注意到,最⼤似然 解µML和σ 2 ML都是数据集x1, . . . , xN的函数。考虑这些量关于数据集的期望。数据集⾥⾯的点来 ⾃参数为µ和σ 2的⾼斯分布。很容易证明 E[µML] = µ (1.57) E[σ 2 ML] = ( N − 1 N ) σ 2 (1.58) 因此,最⼤似然估计的平均值将会得到正确的均值,但是将会低估⽅差,因⼦为N−1 N 。这背后 的直觉在图1.15中说明。 根据公式(1.58),下⾯的对于⽅差参数的估计是⽆偏的。 σ˜ 2 = N N − 1 σ 2 ML = 1 N − 1 ∑ N n=1 (xn − µML) 2 (1.59) 注 意, 当 数 据 点 的 数 量N增 ⼤ 时, 最 ⼤ 似 然 解 的 偏 移 会 变 得 不 太 严 重, 并 且 在 极 限N → ∞的情况下,⽅差的最⼤似然解与产⽣数据的分布的真实⽅差相等。在实际应⽤中,只 要N的值不太⼩,那么偏移的现象不是个⼤问题。然⽽,在本书中,我们感兴趣的是带有很多 参数的复杂模型。这些模型中,最⼤似然的偏移问题会更加严重。实际上,我们会看到,最⼤ 似然的偏移问题是我们在多项式曲线拟合问题中遇到的过拟合问题的核⼼。 1.2.5 重新考察曲线拟合问题 我们已经看到,多项式曲线拟合的问题可以通过误差最⼩化问题来表⽰。这⾥我们回到曲线 拟合的问题,从概率的⾓度来考察它,并且可以更深刻地认识误差函数和正则化,并且能够让 我们完全从贝叶斯的⾓度来看待这个问题。 曲线拟合问题的⽬标是能够根据N个输⼊x = (x1, . . . , xN ) T组成的数据集和它们对应的⽬标 值t = (t1, . . . , tN ) T,在给出输⼊变量x的新值的情况下,对⽬标变量t进⾏预测。我们可以使⽤ 26
y(x,W) y(x0,w) p(tlo,w,B) 图1.16:用图形说明了公式(1.60)给出的给定x的条件下t的高斯条件概率分布,其中均值为多项式函 数y(x,w),精度由参数B给出,它与方差的关系为B-1=σ2。 概率分布来表达关于目标变量的值的不确定性。为了达到这个目的,我们要假定,给定x的值, 对应的t值服从高斯分布,分布的均值为y(x,w),由公式(1.1)给出。因此,我们有 p(t z,w,B)=N(t y(,w,B-1)) (1.60 其中,为了和后续章节中的记号相同,我们定义了精度参数B,它对应于分布方差的倒数。图 1.16给出了图形化表示。 我们现在用训练数据{x,t},通过最大似然方法,来决定未知参数心和的值。如果数据假定 从分布(1.60)中抽取,那么似然函数为 p(t|x,w,3)= ΠN(tn ly(n,w),8-1) (1.61) n=1 与我们之前处理简单高斯分布时的做法一样,最大化对数似然函数是很方便的。用公式(1.46) 给出的高斯分布的形式来替换,我们可以得到对数似然函数 Inp(t Ix,w,B)=- a,w)-n2+ 、 g、 (1.62) 21 2n(2x) n=1 首先考虑确定多项式系数的最大似然解(记作wML)。这些由公式(1.62)关于w来确定。 为了达到这个目的,我们可以省略公式(1.62)右侧的最后两项,因为他们不依赖于w。并且, 我们注意到,使用一个正的常数系数来缩放对数似然函数并不会改变关于心的最大值的位置, 因此我们可以用来代替系数号。最后,我们不去最大化似然函数,而是等价地去最小化负对数 似然函数。于是我们看到,目前为止对于确定的问题来说,最大化似然函数等价于最小化由 公式(12)定义的平方和误差函数。因此,在高斯噪声的假设下,平方和误差函数是最大化似 然函数的一个自然结果。 我们也可以使用最大似然方法来确定高斯条件分布的精度参数B。关于B来最大化函数 (1.62),我们有 fy(In:WML)- (1.63) BML n=1 我们又一次首先确定控制均值的参数向量心ML,然后使用这个结果来寻找精度BML。这与 简单高斯分布时的情形相同。 已经确定了参数w和B,我么现在可以对新的x的值进行预测。由于我们现在有一个概率模 型,预测可以通过给出t的概率分布的预测分布(predictive distribution)来表示(而不仅仅是一 个点的估计)。预测分布通过把最大似然参数代入公式(1.60)给出。 p(t,wML:BML)=N(tly(x,WML),BML) (1.64) 27
t x0 x y(x0, w) 2σ y(x, w) p(t|x0, w, β) 图 1.16: ⽤图形说明了公式(1.60)给出的给定x的条件下t的⾼斯条件概率分布,其中均值为多项式函 数y(x, w),精度由参数β给出,它与⽅差的关系为β −1 = σ 2。 概率分布来表达关于⽬标变量的值的不确定性。为了达到这个⽬的,我们要假定,给定x的值, 对应的t值服从⾼斯分布,分布的均值为y(x, w),由公式(1.1)给出。因此,我们有 p(t | x, w, β) = N (t | y(x, w, β−1 )) (1.60) 其中,为了和后续章节中的记号相同,我们定义了精度参数β,它对应于分布⽅差的倒数。图 1.16给出了图形化表⽰。 我们现在⽤训练数据{x, t},通过最⼤似然⽅法,来决定未知参数w和β的值。如果数据假定 从分布(1.60)中抽取,那么似然函数为 p(t | x, w, β) = ∏ N n=1 N (tn | y(xn, w), β−1 ) (1.61) 与我们之前处理简单⾼斯分布时的做法⼀样,最⼤化对数似然函数是很⽅便的。⽤公式(1.46) 给出的⾼斯分布的形式来替换,我们可以得到对数似然函数 ln p(t | x, w, β) = − β 2 ∑ N n=1 {y(xn, w) − tn} 2 + N 2 ln β − N 2 ln(2π) (1.62) ⾸先考虑确定多项式系数的最⼤似然解(记作wML)。这些由公式(1.62)关于w来确定。 为了达到这个⽬的,我们可以省略公式(1.62)右侧的最后两项,因为他们不依赖于w。并且, 我们注意到,使⽤⼀个正的常数系数来缩放对数似然函数并不会改变关于w的最⼤值的位置, 因此我们可以⽤1 2来代替系数β 2。最后,我们不去最⼤化似然函数,⽽是等价地去最⼩化负对数 似然函数。于是我们看到,⽬前为⽌对于确定w的问题来说,最⼤化似然函数等价于最⼩化由 公式(1.2)定义的平⽅和误差函数。因此,在⾼斯噪声的假设下,平⽅和误差函数是最⼤化似 然函数的⼀个⾃然结果。 我们也可以使⽤最⼤似然⽅法来确定⾼斯条件分布的精度参数β。关于β来最⼤化函数 (1.62),我们有 1 βML = 1 N ∑ N n=1 {y(xn, wML) − tn} 2 (1.63) 我们又⼀次⾸先确定控制均值的参数向量wML,然后使⽤这个结果来寻找精度βML。这与 简单⾼斯分布时的情形相同。 已经确定了参数w和β,我么现在可以对新的x的值进⾏预测。由于我们现在有⼀个概率模 型,预测可以通过给出t的概率分布的预测分布(predictive distribution)来表⽰(⽽不仅仅是⼀ 个点的估计)。预测分布通过把最⼤似然参数代⼊公式(1.60)给出。 p(t | x, wML, βML) = N (t | y(x, wML), β−1 ML) (1.64) 27
现在让我们朝着贝叶斯的方法前进一步,引入在多项式系数心上的先验分布。简单起见,我 们考虑下面形式的高斯分布 p0a=u10.a1n=(会)9e即{-分w7} M+1 (1.65) 其中α是分布的精度,M+1是对于M阶多项式的向量如的元素的总数。像a这样控制模型参数 分布的参数,被称为超参数(hyperparameters)。使用贝叶斯定理,w的后验概率正比于先验分 布和似然函数的乘积。 p(w x,t,a,B)p(t x,w,B)p(w a) (1.66) 给定数据集,我们现在通过寻找最可能的w值(即最大化后验概率)来确定如。这种技术被称 为最大后验(maximum posterior),简称MAP。取公式(1.66)的负对数,结合公式(1.62)和 公式(1.65),我们可以看到,最大化后验概率就是最小化下式: N 2 e,四)-n2+w2u (1.67) -1 因此我们看到最大化后验概率等价于最小化正则化的平方和误差函数(之前在公式(1.4)中提 到),正则化参数为入=号。 1.2.6贝叶斯曲线拟合 虽然我们已经谈到了先验分布(w|a),但是我们目前仍然在进行w的点估计,这并不是贝 叶斯观点。在一个纯粹的贝叶斯方法中,我们应该自始至终地应用概率的加和规则和乘积规 则。我们稍后会看到,这需要对所有心值进行积分。对于模式识别来说,这种积分是贝叶斯方 法的核心。 在曲线拟合问题中,我们知道训练数据x和t,以及一个新的测试点x,我们的目标是预测的 值。因此我们想估计预测分布(t|x,x,t)。这里我们要假设参数α和B是固定的,事先知道的 (后续章节中我们会讨论这种参数如何通过贝叶斯方法从数据中推断出来)。 简单地说,贝叶斯方法就是自始至终地使用概率的加和规则和乘积规则。因此预测概率可以 写成下面的形式 p(tzxt)=p(tw)p(w xt)dw (1.68) 这里,(t|x,w)由公式(1.60)给出,并且我们省略了对于α和B的依赖,简化记号。这 里,(w|x,t)是参数的后验分布,可以通过对公式(1.66)归一化得到。我们在3.3节将看到, 对于曲线拟合这样的问题,后验分布是一个高斯分布,可以解析地求出。类似地,公式(168) 中的积分也可以解析地求解。因此,预测分布由高斯的形式给出: p(t[z,x,t)=N(t|m(z),s2(x)) (1.69) 其中,均值和方差分别为 m(c)=Bb(x)Ts∑(rn)tn (1.70) n=1 s2(x)=B-1+(x)TS(x) (1.71) 这里,矩阵S由下式给出 w S-1=aI+B∑(cn)(cn)T (1.72) m=1 其中,I是单位矩阵,向量(x)被定义为(x)=x(i=0,.,M。 我们看到,公式(1.69)的预测分布的均值和方差依赖于x。公式(1.71)的第一项表示预测 值的不确定性,这种不确定性由目标变量上的噪声造成。在最大似然的预测分布(1.64)中, 这种不确定性通过B表达。然而,第二项也对参数w的不确定性有影响。这是贝叶斯方法的 结果。图1.17说明了正弦曲线的回归问题。 28
现在让我们朝着贝叶斯的⽅法前进⼀步,引⼊在多项式系数w上的先验分布。简单起见,我 们考虑下⾯形式的⾼斯分布 p(w | α) = N (w | 0, α−1 I) = ( α 2π ) M+1 2 exp { − α 2 wT w } (1.65) 其中α是分布的精度,M + 1是对于M阶多项式的向量w的元素的总数。像α这样控制模型参数 分布的参数,被称为超参数(hyperparameters)。使⽤贝叶斯定理,w的后验概率正⽐于先验分 布和似然函数的乘积。 p(w | x, t, α, β) ∝ p(t | x, w, β)p(w | α) (1.66) 给定数据集,我们现在通过寻找最可能的w值(即最⼤化后验概率)来确定w。这种技术被称 为最⼤后验(maximum posterior),简称MAP。取公式(1.66)的负对数,结合公式(1.62)和 公式(1.65),我们可以看到,最⼤化后验概率就是最⼩化下式: β 2 ∑ N n=1 {y(xn, w) − tn} 2 + α 2 wT w (1.67) 因此我们看到最⼤化后验概率等价于最⼩化正则化的平⽅和误差函数(之前在公式(1.4)中提 到),正则化参数为λ = α β。 1.2.6 贝叶斯曲线拟合 虽然我们已经谈到了先验分布p(w | α),但是我们⽬前仍然在进⾏w的点估计,这并不是贝 叶斯观点。在⼀个纯粹的贝叶斯⽅法中,我们应该⾃始⾄终地应⽤概率的加和规则和乘积规 则。我们稍后会看到,这需要对所有w值进⾏积分。对于模式识别来说,这种积分是贝叶斯⽅ 法的核⼼。 在曲线拟合问题中,我们知道训练数据x和t,以及⼀个新的测试点x,我们的⽬标是预测t的 值。因此我们想估计预测分布p(t | x, x, t)。这⾥我们要假设参数α和β是固定的,事先知道的 (后续章节中我们会讨论这种参数如何通过贝叶斯⽅法从数据中推断出来)。 简单地说,贝叶斯⽅法就是⾃始⾄终地使⽤概率的加和规则和乘积规则。因此预测概率可以 写成下⾯的形式 p(t | x, x, t) = ∫ p(t | x, w)p(w | x, t) dw (1.68) 这 ⾥,p(t | x, w)由 公 式 (1.60) 给 出, 并 且 我 们 省 略 了 对 于α和β的 依 赖, 简 化 记 号。 这 ⾥,p(w | x, t)是参数的后验分布,可以通过对公式(1.66)归⼀化得到。我们在3.3节将看到, 对于曲线拟合这样的问题,后验分布是⼀个⾼斯分布,可以解析地求出。类似地,公式(1.68) 中的积分也可以解析地求解。因此,预测分布由⾼斯的形式给出: p(t | x, x, t) = N ( t | m(x), s2 (x) ) (1.69) 其中,均值和⽅差分别为 m(x) = βϕ(x) TS ∑ N n=1 ϕ(xn)tn (1.70) s 2 (x) = β −1 + ϕ(x) TSϕ(x) (1.71) 这⾥,矩阵S由下式给出 S −1 = αI + β ∑ N n=1 ϕ(xn)ϕ(xn) T (1.72) 其中,I是单位矩阵,向量ϕ(x)被定义为ϕi(x) = x i (i = 0, . . . , M)。 我们看到,公式(1.69)的预测分布的均值和⽅差依赖于x。公式(1.71)的第⼀项表⽰预测 值t的不确定性,这种不确定性由⽬标变量上的噪声造成。在最⼤似然的预测分布(1.64)中, 这种不确定性通过β −1 ML表达。然⽽,第⼆项也对参数w的不确定性有影响。这是贝叶斯⽅法的 结果。图1.17说明了正弦曲线的回归问题。 28
0 0 图117:用贝叶斯方法处理多项式曲线拟合问题得到的预测分布的结果。使用的多项式为M=9,超参数 被固定为a=5×10-3和3=11.1(对应于已知的噪声方差)。其中,红色曲线表示预测概率分布的均 值,红色区域对应于均值周围士1标准差的范围。 run 1 run 2 run 3 run 4 图1.18:参数为S的交叉验证方法,这里说明了S=4的情形。以能够得到的数据为输入,将其划分为S组 (最简单的情况下,等于数据的个数)。然后,S-1组数据被用于训练一组模型,然后在剩余的一组上 进行评估。然后对于所有S的可能选择重复进行这一步骤,使用剩余的一组进行评估,这里用红色标记 出来。之后,对S轮运行结果的表现得分求平均值。 1.3模型选择 在我们使用最小平方拟合多项式曲线的例子中,我们看到,存在一个最优的多项式阶数,能 够给出最好的结果。多项式的阶数控制了模型的自由参数的个数,因此控制了模型的复杂度。 通过正则化的最小平方,正则化系数入也控制了我们的模型复杂度。而对于更复杂的模型,例如 混合分布或者神经网络,可能存在多个控制模型复杂度的参数。在实际应用中,我们需要确定 这些参数的值,这么做的主要目的通常是为了在新数据上能做出最好的预测。此外,除了找到 模型中复杂度参数的合适的值之外,我们可能还希望找到一个可选的模型的范围,以便能够找 到对于特定应用的最好的模型。 我们已经看到,在最大似然方法中,由于过拟合现象,模型在训练集上的表现并不能很好地 表示模型对于未知数据的预测能力。如果数据量很大,那么模型选择很简单。使用一部分可得 到的数据,可以训练出一系列的模型,也可以得到某个给定模型的一系列复杂度的参数值。之 后在独立数据上(有时被称为验证集)比较它们,选择预测表现最好的模型即可。如果模型的 设计使用有限规模的数据集迭代很多次,那么对于验证数据会发生一定程度的过拟合,因此保 留一个第三方的测试集是很有必要的。这个测试集用来最终评估选择的模型的表现。 但是在许多实际应用中,训练数据和测试数据都是很有限的。为了建立好的模型,我们 想使用尽可能多的可得到的数据进行训练。然而,如果验证机很小,它对预测表现的估计 就会有一定的噪声。解决这种困境的一种方法是使用交叉验证(cross validation),如图1.18 所示。这种方法能够让可得到数据的S用于训练,同时使用所有的数据来评估表现。当数 据相当稀疏的时候,考虑S=N的情况很合适,其中N是数据点的总数。这种技术叫做“留一 法”(leave-one-out)。 交叉验证的一个主要的缺点是需要进行的训练的次数随着S而增加,这对于训练本身很耗时 的问题来说是个大问题。对于像交叉验证这种使用分开的数据来评估模型表现的方法来说,还 有一个问题:对于一个单一的模型,我们可能有多个复杂度参数(例如可能有若干个正则化参 29
x t 0 1 −1 0 1 图 1.17: ⽤贝叶斯⽅法处理多项式曲线拟合问题得到的预测分布的结果。使⽤的多项式为M = 9,超参数 被固定为α = 5 × 10−3和β = 11.1(对应于已知的噪声⽅差)。其中,红⾊曲线表⽰预测概率分布的均 值,红⾊区域对应于均值周围±1标准差的范围。 run 1 run 2 run 3 run 4 图 1.18: 参数为S的交叉验证⽅法,这⾥说明了S = 4的情形。以能够得到的数据为输⼊,将其划分为S组 (最简单的情况下,等于数据的个数)。然后,S − 1组数据被⽤于训练⼀组模型,然后在剩余的⼀组上 进⾏评估。然后对于所有S的可能选择重复进⾏这⼀步骤,使⽤剩余的⼀组进⾏评估,这⾥⽤红⾊标记 出来。之后,对S轮运⾏结果的表现得分求平均值。 1.3 模型选择 在我们使⽤最⼩平⽅拟合多项式曲线的例⼦中,我们看到,存在⼀个最优的多项式阶数,能 够给出最好的结果。多项式的阶数控制了模型的⾃由参数的个数,因此控制了模型的复杂度。 通过正则化的最⼩平⽅,正则化系数λ也控制了我们的模型复杂度。⽽对于更复杂的模型,例如 混合分布或者神经⽹络,可能存在多个控制模型复杂度的参数。在实际应⽤中,我们需要确定 这些参数的值,这么做的主要⽬的通常是为了在新数据上能做出最好的预测。此外,除了找到 模型中复杂度参数的合适的值之外,我们可能还希望找到⼀个可选的模型的范围,以便能够找 到对于特定应⽤的最好的模型。 我们已经看到,在最⼤似然⽅法中,由于过拟合现象,模型在训练集上的表现并不能很好地 表⽰模型对于未知数据的预测能⼒。如果数据量很⼤,那么模型选择很简单。使⽤⼀部分可得 到的数据,可以训练出⼀系列的模型,也可以得到某个给定模型的⼀系列复杂度的参数值。之 后在独⽴数据上(有时被称为验证集)⽐较它们,选择预测表现最好的模型即可。如果模型的 设计使⽤有限规模的数据集迭代很多次,那么对于验证数据会发⽣⼀定程度的过拟合,因此保 留⼀个第三⽅的测试集是很有必要的。这个测试集⽤来最终评估选择的模型的表现。 但是在许多实际应⽤中,训练数据和测试数据都是很有限的。为了建⽴好的模型,我们 想使⽤尽可能多的可得到的数据进⾏训练。然⽽,如果验证机很⼩,它对预测表现的估计 就会有⼀定的噪声。解决这种困境的⼀种⽅法是使⽤交叉验证(cross validation),如图1.18 所⽰。这种⽅法能够让可得到数据的S−1 S ⽤于训练,同时使⽤所有的数据来评估表现。当数 据相当稀疏的时候,考虑S = N的情况很合适,其中N是数据点的总数。这种技术叫做“留⼀ 法”(leave-one-out)。 交叉验证的⼀个主要的缺点是需要进⾏的训练的次数随着S⽽增加,这对于训练本⾝很耗时 的问题来说是个⼤问题。对于像交叉验证这种使⽤分开的数据来评估模型表现的⽅法来说,还 有⼀个问题:对于⼀个单⼀的模型,我们可能有多个复杂度参数(例如可能有若⼲个正则化参 29
● ● 0.5 0 0.25 0.75 图1.19:石油流数据的输入变量x6和x?的散点图,其中红色表示“同质状”类别,绿色表示“环状”类别,蓝 色表示“薄片状”类别。我们的目标是分类新的数据点,记作“×”。 数)。在最坏的情况下,探索这些参数的组合所需的训练次数可能是参数个数的指数函数。很 显然,我们需要一种更好的方法。理想情况下,模型的选择应该只依赖于训练数据,并且应该 允许在一轮训练中对比多个超参数以及模型类型。因此我们需要找到一种模型表现的度量,它 只依赖于训练数据,并且不会由于过拟合产生偏移的问题。 历史上各种各样的“信息准则”被提出来。这些“信息准则”尝试修正最大似然的偏差。修正的 方法是增加一个惩罚项来补偿过于复杂的模型造成的过拟合。例如,赤池信息准则(Akaike information criterion),或者简称为AIC(Akaike,I974),选择下面使这个量最大的模型: Inp(D WML)-M (1.73) 这里,p(D|wML)是最合适的对数似然函数,M是模型中可调节参数的数量。这个量的一种变 体,被称为贝叶斯信息准则(Bayesian information criterion),或者简称为BIC,将会在4.4.1节 讨论。但是,这种准则没有考虑模型参数的不确定性,在实际应用中它们倾向于选择过于简单 的模型。因此,我们会在3.4节中讨论完整的贝叶斯方法。我们会看到,这种方法中,复杂度的 惩罚性是如何自然地得出。 1.4维度灾难 在多项式曲线拟合的例子中,我们只有一个输入变量x。但是对于模式识别的实际应用来 说,我们不得不处理由许多输入变量组成的高维空间。正如我们现在讨论的那样,这个问题是 个很大的挑战,也是影响模式识别技术设计的重要因素。 为了说明这个问题,我们考虑一个人工合成的数据集。这个数据集中的数据表示一个管道中 石油、水、天然气各自所占的比例(Bishop and James,I993)。这三种物质在管道中的几何形 状有三种不同的配置,被称为“同质状”、“环状”和“薄片状”。三种物质各自的比例也会变化。每 个数据点由一个12维的输入向量组成。输入向量是伽马射线密度计的读数,度量了一窄束伽马 射线穿过管道后强度的衰减。数据集的详细描述见附录A。图1.19给出了数据集里的100个点, 每个点只画出了两个分量x6和x7(为了说明的方便,剩余的10个分量被忽略)。每个数据点根 据它属于的三种几何类别之一被标记。我们的目标是使用这个数据作为训练集,训练一个模 型,能够对于一个新的(x6,x7)的观测(例如图1.19中标记为“叉”的点)进行分类。我们观察 到,标记为“叉”的点周围由许多红色的点,因此我们可以猜想它属于红色类别。然而,它附近 也有很多绿色的点,因此我们也可以猜想它属于绿色类别。似乎它不太可能属于蓝色类别。直 观看来,标记为“叉”的点的类别应该与训练集中它附近的点强烈相关,与距离比较远的点的相 关性比较弱。事实上,这种直观的想法是合理的,将会在后续章节中详细证明。我们如何把这 30
x6 x7 0 0.25 0.5 0.75 1 0 0.5 1 1.5 2 图 1.19: ⽯油流数据的输⼊变量x6和x7的散点图,其中红⾊表⽰“同质状”类别,绿⾊表⽰“环状”类别,蓝 ⾊表⽰“薄⽚状”类别。我们的⽬标是分类新的数据点,记作“×”。 数)。在最坏的情况下,探索这些参数的组合所需的训练次数可能是参数个数的指数函数。很 显然,我们需要⼀种更好的⽅法。理想情况下,模型的选择应该只依赖于训练数据,并且应该 允许在⼀轮训练中对⽐多个超参数以及模型类型。因此我们需要找到⼀种模型表现的度量,它 只依赖于训练数据,并且不会由于过拟合产⽣偏移的问题。 历史上各种各样的“信息准则”被提出来。这些“信息准则”尝试修正最⼤似然的偏差。修正的 ⽅法是增加⼀个惩罚项来补偿过于复杂的模型造成的过拟合。例如,⾚池信息准则(Akaike information criterion),或者简称为AIC(Akaike, 1974),选择下⾯使这个量最⼤的模型: ln p(D | wML) − M (1.73) 这⾥,p(D | wML)是最合适的对数似然函数,M是模型中可调节参数的数量。这个量的⼀种变 体,被称为贝叶斯信息准则(Bayesian information criterion),或者简称为BIC,将会在4.4.1节 讨论。但是,这种准则没有考虑模型参数的不确定性,在实际应⽤中它们倾向于选择过于简单 的模型。因此,我们会在3.4节中讨论完整的贝叶斯⽅法。我们会看到,这种⽅法中,复杂度的 惩罚性是如何⾃然地得出。 1.4 维度灾难 在多项式曲线拟合的例⼦中,我们只有⼀个输⼊变量x。但是对于模式识别的实际应⽤来 说,我们不得不处理由许多输⼊变量组成的⾼维空间。正如我们现在讨论的那样,这个问题是 个很⼤的挑战,也是影响模式识别技术设计的重要因素。 为了说明这个问题,我们考虑⼀个⼈⼯合成的数据集。这个数据集中的数据表⽰⼀个管道中 ⽯油、⽔、天然⽓各⾃所占的⽐例(Bishop and James, 1993)。这三种物质在管道中的⼏何形 状有三种不同的配置,被称为“同质状”、“环状”和“薄⽚状”。三种物质各⾃的⽐例也会变化。每 个数据点由⼀个12维的输⼊向量组成。输⼊向量是伽马射线密度计的读数,度量了⼀窄束伽马 射线穿过管道后强度的衰减。数据集的详细描述见附录A。图1.19给出了数据集⾥的100个点, 每个点只画出了两个分量x6和x7(为了说明的⽅便,剩余的10个分量被忽略)。每个数据点根 据它属于的三种⼏何类别之⼀被标记。我们的⽬标是使⽤这个数据作为训练集,训练⼀个模 型,能够对于⼀个新的(x6, x7)的观测(例如图1.19中标记为“叉”的点)进⾏分类。我们观察 到,标记为“叉”的点周围由许多红⾊的点,因此我们可以猜想它属于红⾊类别。然⽽,它附近 也有很多绿⾊的点,因此我们也可以猜想它属于绿⾊类别。似乎它不太可能属于蓝⾊类别。直 观看来,标记为“叉”的点的类别应该与训练集中它附近的点强烈相关,与距离⽐较远的点的相 关性⽐较弱。事实上,这种直观的想法是合理的,将会在后续章节中详细证明。 我们如何把这 30