《模式识别和机器学习》摘要和关键问题
ML 和 MAP
ML: argmax(p , p(x | p)) 。其中x是样本。如果参数p先验等概,于是根据Bayesian定理ML和MAP等价。
ML的方差低估(bias):
对Gaussian的参数计算ML,得到方差为sML = 1/N * sum(i, xi - uML)2
展开计算可得E(sML) = (N-1)s / N,其中s为理论方差,可见其有偏。(在2.3.4中以一般情形的multivariate gaussian做了说明)
1.2.5 Curve fitting re-visited 再论曲线拟合
1. Eq. 1.66: p(w|x,t,a,b) (posterior)正比于 p(t|x, w, b)p(w|a)(likelihood和prior的乘积) 说明:
p(t | x,w,b)是一个由gaussian(结构)和输入和目标关系(多项式结构)确定的样本参数关系。
又有w依赖于a(以a为参数的分布),即由p(w|a)确定,因此p(w,a)=p(w|a)*p(a)
可见x,w,b相互独立,因此p(t,x,w,b,a) =p(x) p(w|a) p(a) p(b) p(t|x,w,b)
因而p(w|x,t,a,b) = p(t,x,w,b,a) / p(x,t,a,b) = p(w|a) p(t|x,w,b) / intg(w, p(w|a) p(t|x,w,b))
事实上在Bayesian方法中p(x|y)=p(x,y)/intg(x,p(x,y)),可视作p(x,y)保留x的归一化。
1.2.6 Bayesian curve fitting 贝叶斯曲线拟合
完整的贝叶斯估计需要严格遵循概率乘法和加法定律,即,对预测问题:p(t | x, x, t)应当由以下式子导出
p(t | x, x, t) = intg(w, p(t|x,w) p(w|x,t) )
p(t | x,w) p(w | x, t) = 1/p(x) * p(t | x,w) * p(x,w,x,t) / p(x, t) = 1/p(x,x,t) * p(t | x,w,x,t) * p(x,w,x,t) = p(t,w | x,x,t)
因此上述等式成立。这里用到x与w无关,也与x和t无关;而p(t | x,w)=p(t | x,w,x,t)是由于t和x依赖于w,而x和t不提供额外信息。
1.5.5 Loss functions for regression
这里将Loss Matrix推广到Loss Function,然后以变分法(Caluculus of Variations)求出该目标泛函的极值作为一般方法;在另一个方法中,围绕已预计到的Et[t|x](简记作E[t|x])展开均方损失函数得到(交叉项消失,注意E[t|x]与t无关):
E[L] = intg(x, (y(x)-E[t|x])2 p(x)) + intg(x, (E[t|x]-t)2p(x)) intg{dx, dt: (E[t|x]-t)2p(x,t)} (注意这里原书有写错)
可以发现当y(x)=E[t|x]上式取得最小值,而把后一项作为“目标的噪声”。这里个人将其理解为x和目标t的松弛度结果。即如1.2.5中所述,引入beta以后x和t之间就呈现一个可盖然的松弛关系(将样本关系x~t看作是拟合曲线的一种盖然;因为既然拟合曲线是x~t的一种盖然,那么从概率观点看(即从全p.d.f.看)反之也成立(事实上,我们通常处理的样本显然是一种盖然之物,虽然这和对其进行数学盖然化处理在性质上是不同的,因为前者是一种自然(先验)的演绎,而后者是一种判别的手段)),其目的是使得最终的函数逼近某种程度的具有对诸如高阶曲线不适应的噪声的抵抗性(beta放松x~t关系,alpha则收紧w的幅度,两者共同保证这种抗噪性)。
从另一个角度看,这里过配(overfitting)的样点,在概率上看,与其是高阶多项式的匹配点,毋宁是低阶多项式的含噪点。alpha调整w的幅度,alpha取相当(大)的值,说明w的幅度期望中不应很大;beta取相当(小)的值,说明期望中样点很不精确(含噪)。
1.6 Information Theory
回到“熵”上来,我估计这本书在这里讲“熵”要比我看过的信息学相关的书讲得都透彻些,原因之一是我发现作者把Ludwig Boltzman的照片搬出来了(另两位入选者是先前的Thomas Bayes、Pierre-Simon Laplace以及信息熵创始人Claude Shannon)。
开篇的引入就很令人满意,它是从h需要满足加性而导出熵的表达式的。但这不足以证明其透彻,因为熵并没有那么简单(事实上诸多涉及到概率的问题的实质都不简单,不能想当然,这也是随机信号、模式识别这类学问的难点)。我当前对熵的认识是所谓的盖然概率的度量。如果用概率的期望这个表述不严密,因为如果是概率期望,则表达式可能是E[p(x)],显然这个不是熵。E[p(x)]是概率的期望,即信源发射样本的概率的平均值(算术平均值)。信源的重要属性在于发射一连串样本xN= x1, ..., xN时(最基本情况,各样本i.i.d.)所发生的事。设发生这一特定样本序列的概率为p{xN},显然它应该遵循乘法定律:p{xN}=PI(i=1..N, p(xi)),而平均每个样本对整个概率的贡献是p{xN}1/N,而熵就是关于PX=lim(N->Inf, p{xN}1/N)的度量(几何平均值);另一方面,p{xN}作为这一序列的概率,并将一个具体序列看成是一种“微观状态”,其极限意义上倒数S=1/p{xN}可以看作是这种微观状态的数目。这个数目越大,说明“混乱度”越大,也说明要表征这些序列的对应的“码”的个数也越大。而每个x样本对这个状态数的平均贡献就是S1/N,其极限就是1/PX。这个的一个相对严格一点的证明见诸下述红字。
概率论的极限定理应该会给出这个式子结果就是未加对数的熵(当然我对其正确性凭直觉)。这样熵反映信源每披露一个消息,对整体消息组的概率(极小)的平均的乘性新贡献(<1,由i.i.d.和极限性质决定它通过乘法进行)。这样解释似乎可行(唯一的缺憾是缺乏严密的数学论证),我们再回过来看看书中以及熵的鼻祖统计物理观点是怎么论述。
统计力学将离散化概率分布变为多个盒子,盒子容量和对应概率密度成正比,而将相当于盒子总容量的N个小球装入盒中。可以计算出总共有W=N!/PI(i, ni!)种组合。这相当于上面论述中足够多的样本的组合最终呈现概率分布要求的出现次数组合,而具体某个时刻样本是多少仍可自由选择。令Nk=N-k为安放k个小球(样本)后剩余小球数,而nk,i为此时各盒剩余容量,于是选择其中一个盒子,代表某个事件在k时刻的发生,当剩余量很大的情况下nk,i/Nk接近于p(xi)。所以可见W的前若干项接近于p(xi)的乘积,而这个在N->Inf的极限情况下,“前若干项”是起决定作用的(具体根据数学论证),因此W就代表上述PX的倒数。产生这一组合和其他组合等概,于是其倒数即对应发生概率。
【补充2009.9.6】按照微观状态数观点看熵:将信源(1,...,N)(括号内表示可取的值)的某个实际序列(A1, ..., AL)定义为一个“微态”,其中(1,...,N)的发生次数(发生分布)为:(n1, ..., nN), n1 +...+ nN =n=L,那么根据排列组合,这样的发生次数的微态共有W=n!/PI(i, ni!)种(同分布微态数),根据Stirling公式n->Inf => n!-> sqrt(2*pi*n)(n/e)n可得,n->Inf(维持n1, ..., nN比例), W1/n-> n / (n1n1/n... nNnN/n),而每个微态的发生概率:P=p1n1 ... pNnN,则这个分布微态的总概率为 PW = (P1/nW1/n)n = [(p1n1/n ... pNnN/n) / ((n1/n)n1/n... (nN/n)nN/n)]n。只有和概率分布成比例的发生分布其底数接近1,极限为1;而其余为小于1,极限为0。说明我们只要考虑与分布对应的微态数W(极大的数)对发生次数归一化值W1/n(有限的数),其极限值即1/(p1p1 ... pNpN)。熵即是对这个取对数。可见从物理上讲,熵即表征,这样一个具有大量粒子(个数n)的系统达到稳态时候(即微态呈现符合概率分布),所存在的各种微态的组合的个数。所以信息学中的独立测试空间(有点像平行宇宙)或等价的i.i.d.时序的时间点,对应统计物理的熵解释中的粒子;而信源的可能取值及其概率,对应粒子的可能的微观物理状态及其概率。当然物理学中可能不对粒子数归一化。
在信息论中,我们想象用不同符号对应每一个上述(L长,也就是n长)微态,这是一种编码,这需要W个符号。这些符号对应着等概的这些微态。如果这些符号对应成二进制值,需要log(2, W)个二进制码,而对于序列中每一个项,则平均需要log(2, W1/n)。这就对应二进制信息论中以2为底的熵定义的来由。
1 and 3.1 linear models for regression
该问题的逻辑关系是(运用ch.1的讨论结果):
t = y(x,w) + e,(e是guassian噪声),等价于p(t|x,w,beta) = N(t | y(x,w), beta-1),这表明整个问题中各量的盖然性关系。
根据1.5.5,如果采用平方损失函数,那么,对于输入x的最优预测t应当是E[t|x],在这个问题中,即y(x,w)。
而此处(线性模型)如果基函数具体形式确定,y的形式确定,根据参数w就可求出预测值。于是最终问题求w。而求w则采用对p(t|x,w,beta)求ML方法,其最终数学方法即最小二乘法(求Moore-Penrose伪逆)。
上述划去理解基本错误,t = y(x,w) + e,是对问题的建模,e是误差许可,总体的手段是对模型参数的ML求算。所以它含有ML的所有缺陷。而1.5.5则是对整个问题的理论探讨,因此其性能应优于基于ML的方法(理论上应该是最优的),详见第3章。
2.1.1 Beta distribution
p(u|m,N,a,b) 正比于p(m|u,N)p(u|a,b)。
p(u|m,N,a,b) = p(u,m,N,a,b) / p(m,N,a,b)
类似1.2.5有:p(u,m,N,a,b) = p(u|a,b)*p(a,b)*p(m|u,N)*p(N)
p(m,N,a,b) = intg(u, p(u,m,N,a,b))
p(u|m,N,a,b) = p(u|a,b)*p(m|u,N) / intg(u, p(u|a,b)*p(m|u,N))
3.2 The Bias-Variance Decomposition
这里重复一下这个美妙的推导过程:
考虑均方代价函数的期望损失:E[L] = ED[intg{dx, dt: (y(x;D)-t)2p(x,t)}] = ED,X,t[(y(x;D)-t)2]
EX,t[(y(x;D)-t)2] = EX[(y(x;D)-h(x))2] + EX,t[(h(x)-t)2]
计算ED[(y(x;D)-h(x))2] = ED[(ED[y(x;D)] – h(x))2] + ED[(y(x;D)-ED[y(x;D])2]
于是E[L] = ED,X[(ED[y(x;D)] – h(x))2] + ED,X[(y(x;D)-ED[y(x;D])2] + EX,t[(h(x)-t)2]
其中第一项为bias,它由估计方法决定;
第二项为variance,它也由估计方法决定;
第三项为noise,它由该随机系统本身性质决定。
2.3.1~2.3.3基本都在围绕向量Gaussian分布的联合分布和边缘分布变换关系进行讨论。所采用的方法是基于所有这些分布均为Gaussian的事实,运用指数中的2次项和1次项系数(矩阵)和统计量的关系进行求解。
2.3.5 Sequential Estimation中有不甚明确的地方,即z和theta的确切关系和概念。这里我理解为:
z和theta是一对随机变量,由一个未定(通常指含参)的pdf约束。一般应用中表示z可以表示为z = z(theta, par),其中par是参数系,在这个函数中还包含除theta外的随机变量,从而形成z和theta的pdf相互关系。显然,由pdf可以得到f(theta) = E[z|theta],于是这个函数形状在z = z(theta, par)语境下由par决定,从而其零点theta*也由par决定。反过来也可说某个特定的theta*也对应一个特定的par系,即对应某个z(theta, par)函数形状,亦即对应一个pdf形状。这样算法以某theta[k]作为某一步的,以此为零点通过适当的par系构造出z(theta, par)函数,然后将这个函数应用于一个观察o,用过函数定义的依赖于theta的映射,获得z值(假设这个映射为z'(o, par),又有par由theta[k]导出,可写为z'(o, theta[k])),然后用算法的演进公式theta[k+1] = theta[k] + a[k]*z'(o, theta[k])。这个算法的最终目标是在观测目标o均以一个固定的theta控制时,而最终生成的f曲线以该theta为零点。这个过程基本和示例吻合。示例中miuML为par,x = miu + zeromeangaussian为观测量,miu为theta,zeromeangaussian为内部随机量。其目标是在z=1/sigma^2(x - miuML)族中找出使得以当前变量的均值为零点的函数关系,由于这个函数是ML条件,取得0值表明对应的参数par,即miuML即ML下的均值。
W
W1/n