Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(六)

呃,我觉得我的笔记稍稍有点混乱了...这周讲的依旧是线性分类器,logit为主。anyway,大家将就着看吧。

logistic regression

首先我们考虑最一般的,有K种分类的场合。依旧,我们用来代替作为观测到的分类结果,那么则有:

为最优的预测结果。这里我们希望找到一种线性的形式,还需要使用一些单调变换保证预测值在之间。因此,我们对于每个分类,假设

进一步的,我们取任意类K作为对照组,且各组相加概率之和必为1,所以有:

所以,最终得到两组之间的概率比值为:

最后求解的时候,就是直接用最大似然准则,来求解

这个最大似然函数计算起来比较麻烦,通常很多是数值解。下面以为例,来展示求解过程。

首先我们这个时候有两类,不妨记作1和0,则

则它的对数似然函数:

然后我们求导可得:

之后可以用牛顿法迭代求数值解:

其中二阶导数部分可以化简为:

经过简化之后,这里相当于加权的最小二乘法,目标函数为

所以整个算法可以写作:

0. 令或任意起始值

1. 计算矩阵.

2. 新的.

3. 重复1,2步直至收敛。

这类方法成为IRLS(不断重写的加权最小二乘法)。

LDA和logit选择

其实也没什么定论,两者均为线性,只是一般我们认为LDA需要假设联合正态且方差相等,比较强;而logit假设没有这么强,相比而言更稳定。

perceptional分类器

perceptional分类器是一类相对简单的分类算法,以两类场合为例。为了方便起见,我们假设两类为1和-1,则目标是找出一条直线可以完全分割出来两群点。这里转化成数学的语言,就是找到W使得

或者简化为:

算法也很简单:

1. 给定任意的W值,比如0. 如果,出错。

2. 令新的,重复第一步。

这里可证一个定理:如果原数据集是线性可分的(即W存在),那么在有限步内perceptional算法收敛。其实从第二步可以看出,这样的改进总是趋近于目标的:,一定是在逐步增加的。

同样的算法推广到多累场合,我们就需要引入特征向量,使得条件概率。这样我们的目标就是找到使得

同样的,从0开始,当时,,直至收敛。

不过有意思的是,实践证明,最后使用训练过程中的的平均值效果会更好,而不是最终的值。

--------笔记结束,废话开始--------

到这里,分类器吴老师已经介绍了三类:LDA,Logit和perceptional。其实我一直觉得比较好玩的是分类器和聚类方法的对比——虽然一个是有监督,一个是无监督的学习,不过有的时候我们就算有的观测值也不一定直接就去用——聚类方法某种程度上显得更加自然一些。这也是大家把模型与实际业务相结合起来的成果吧,总要更符合业务上的直觉才可以。是自然的展现群落的形态,还是给定一些条条框框只是去预测?实践中真的是,都去试试才知道那种更符合一个具体案例的需求。这也是在industry玩的比较开心的缘故,没有那么多条条框框,没有那么多“约定俗成“的规矩,需要自己去一步步挖掘这些算法的用武之地。看着一个个自己熟悉或者陌生的模型被逐渐的改造和应用,也是一件蛮开心的事情呢。

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(五)

鉴于我上周写的[笔记(四)]让很多人反映太枯燥、太无聊(全是公式...可是这就是笔记嘛,又不是写科普文),我努力让这周的笔记除了公式之外多一点直觉和应用层面的点评。

其实[笔记(一)(二)]中说了很多回归和分类器的不同了,那么在经历了线性回归方法之后,就来说说分类器好了。我原来一直觉得回归和分类器没有什么本质不同的...主要是最常用的分类器logit和probit都是我在学计量的时候学的,那个时候老师只是简单的说,这两个和OLS都是一致的,只是我们想让预测值在0~1之内所以做一下变换。而且我们那个时候也不叫他们分类器,而是叫他们“离散被解释变量模型”。前几个月的时候,看data mining的东西,看得晕晕乎乎的,就跑去问精通此类模型的同事MJ,让他跟我科普了一下午为什么这两个模型大家更经常称之为分类器...汗颜啊,那个时候我才知道原来machine learning是先分supervised learning and unsupervised learning,然后才是 regression v.s. classification, and clustering...疏通了脉络之后,再看《The Elements of Statistical Learning》这本书,就觉得顺畅多了。以前只是零零散散的接触一个个孤立的模型,没有找出一个脉络串起来过,自然也就不知道分别适用于什么场景。

其实我挺想说的是,从econometrics到data mining,远远没有想象的那么简单。数学工具上或许很顺畅,但是思维上的转变还是需要时间和实践的。真是为难坏了我这个学经济学出身的孩子(其实话说回来,我好好的不去研究经济学,好奇什么data mining呀~只能聊以一句“殊途同归”来搪塞自己,对嘛,反正都是doctor of philosophy, 只要是科学,本质的思考方式应该是相通的)。不过搞清楚之后,还是觉得很好玩的——以前是雾里看花,觉得什么都漂亮;现在渐渐的能够分清楚这些美丽之间的差异了,也算是个小进步吧。

再有个小废话...记得上小学的时候,老师问大家“长大了想做什么呀?”,我们总是会特别有出息的回答“科学家~”。那个时候有门课叫做《自然》,老师总给我们讲各种各样的发明,让我们一度觉得这个世界上的问题都被解决完了,还当什么科学家啊。然后老师就给我们讲哥德巴赫猜想,大意是世间还有那么几个悬而未决的皇冠问题,等待大家长大了去攻克。后来,越读书越发现,有那么多问题人们是不知道答案的,只是从 ambiguity -> uncertainty -> possibility -> probability -> certainty (law)一步步的走下去。有那么多问题,其实都是悬而未决的哲学问题,等待着聪明的大脑去回答。这也是越读书越觉得兴奋的缘故吧,越来越多的时候老师会被问倒,然后说“不知道”...然后好奇心就又开始勃勃生长...然后又发现更多的很好玩但没有答案的问题...周而复始,有意思的很。

-------满足大家的八卦之心之后,笔记开始-------

线性分类器

对应原书第四章。

先是来一点直觉上的东西:分类器顾名思义,就是把一堆样本归到不同的类别中去。那么这类模型的几何直觉是什么呢?很简单,空间分割嘛。最直白的,我们有一群人,组成了一个大的群体。然后现在要把大家归为男女两类,那么空间自然就是被分割为两个子空间——男和女了。

线性分类器是什么呢?分割男和女的时候,可能分割是三个一群,五个一簇的,所以非要画分割的界限的话,八成是山路十八弯的...我们以前说过,这类的模型问题就是可能复杂度比较高(比如参数的个数较多),导致就算训练误差小,测试误差不一定小。所以呢,我们希望这个分割界限是直线的(二维平面下)、或者平面的(三维空间中),或者超平面的(高位空间中),这样就比较清晰明了的感觉了。

线性分类器:logit模型(或称logistic regression)

这里也不完全是按照吴老师上课讲的东西了,因为回头再看这本书会发现书中还有一些很好玩的直觉很强的东西。错过不免可惜,一并收纳。

首先换一下记号~我们在前面都用代表被解释变量,从现在开始对于分类问题,我们改用

logit模型下,考虑最简单的分为两类,我们有

所以有

这样,分别属于这两组之间的比例就可以找到一个线性的边界了(注:log为单调变换~不影响结果)。这样变换的目的其实无非是,保证,而且两个比例之间存在着一种线性的、或者可以通过单调变换成为线性的关系。类似的当然是大名鼎鼎的probit模型,思路是类似的。

损失函数

显然线性分类器下,在有很多类的情况中,损失函数定义为OLS的残差平方和是没有多大意义的——分类取值只是一个名义量。所以,这里用0-1损失函数:如果,那么损失函数=0;否则,就是没预测准,损失函数=1。写为数学形式,就是损失函数定义为:

所以我们的目标就是,最小化损失函数的期望:

(条件期望迭代)。

LDA:linear discriminant analysis(贝叶斯意义下)

从贝叶斯的角度,我们有

为k出现的概率。

假设X服从联合正态分布,那么我们有

再假设协方差矩阵,所以我们比较两类的时候有:

这样就形成了一个x的线性方程,所以我们找到了一个超平面,实现了LDA。

实践中我们需要估计联合正态分布的参数,一般有,其中为分类k出现的样本数;,即这个样本中,x观测值的平均数;

Fisher视角下的分类器

Fisher提出的观点为,分类器应该尽量使不同类别之间距离较远,而相同类别距其中心较近。比如我们有两群,中心分别为

,那么我们希望尽量大,同时群内方差

尽量小。通过对x进行投影到,我们可以化简的得到

。这样一来,我们的准则就是:

由于是正定阵,所以我们可以进一步写为

其中的特征向量。最终可以求的,最优的正是的最大特征向量。

说实话,我对LDA(或者QDA)的理解都非常有限...这本书里面还有一节说到LDA和logit怎么选,我也是大概看了一下没有特别的看明白...笔记只是如实记录,海涵。暂时还不知道讲到Fisher到底是想讲什么...理解力好有限,唉。

------最后的碎碎念------

除了统计学习精要,Coursera的Model Thinking也终于结课了,做完了期末考试卷,感觉心里空空的。这门课真的是开的非常深入浅出,覆盖了这么多学科、问题的各种模型,非常有助于逻辑思考和抽象。只是多少有些遗憾的,很多东西来不及细细回味,听过了视频就忘了,没有努力的去理解那些模型背后的逻辑。这也是导致最终的期末考试做的不怎么好的缘故——我不想去翻课堂视频或者笔记,只是想考验一下自己对于这些模型的理解和记忆能力。事实证明,除了那些跟经济学或者数学紧密相关的模型,其他的都多多少少记得不是那么清晰了。过阵子应该好好整理一下这门课的笔记,算作是一个良好的回顾吧。

不知道为什么,工作之后再去学这些东西,真的感觉力不从心的时刻多了很多。这半年只有这么区区两门课,就让我觉得有时候不得不强迫自己一下赶上进度,强迫的手段之一就是在落园开始写连载(大家容忍,谢谢~)。不过为了保持一个基本的生活质量,还是应该不时看看这些新东西的,要不生活都腐朽了。

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(四)

照例继续本周笔记。这次我没啥废话了...

--------------笔记开始---------------

投影矩阵与消灭矩阵

首先是上次没证的若干OLS性质。基本都是公式。我就照抄原来econometrics做的笔记了。权当复习了...对计量有兴趣的、线性代数还不错的,建议去看《Microeconometrics- Methods and Applications》(?A. Colin Cameron / Pravin K. Trivedi )。

先定义两个矩阵,这两个矩阵会在某种程度上save your life while learning econometrics...投影矩阵和消灭矩阵。

复习一下,OLS估计量是 ,然后对应的Y估计量是。所以,我们定义投影矩阵P为,这样就有了。也就是说,我们对Y进行了一次投影,然后得到了一个估计值。当然定义投影矩阵并不仅仅是写起来比那堆X简单,而是投影矩阵本身有着一系列良好的性质。

我们先来看把P投在X上会怎么样。显然,,也就是说P不会改变X的值(本来就是把一个东西投到X上嘛~自己投自己怎么会有变化的嘛)。

然后呢,对P进行转置,则,所以接下来

再定义消灭矩阵M。很简单,我们定义M为,其中I为单位阵(对角线元素为1,其他为0)。这样M又有什么性质呢?显然,也就是说M对Y的效果是得到误差项。而与此同时,M对于X的作用就是,所以称为消灭矩阵嘛。继续,进行转置,则,所以我们还有

OLS估计值的方差

再次友情提醒,X不是随机变量,所以不要跟我纠结为什么没有条件期望公式之类的东西...

扰动项服从时,或者大样本下,OLS估计量的方差为:

这里为样本方差,所以其分布为: 。这样一来,就有了一个t检验:

大样本下,就直接用正态检验好了。此外,如果我们进一步的有更多的同时检验的约束条件,那就是联合检验F。这个就不赘述了...

高斯-马尔可夫定理

顺便还证了一下高斯-马尔可夫定理...这个不像OLS,每次我可记不住他的证明,每次都是现翻书...

我就直接抄wiki了。

选择另外一个线性估计量,然后C可以写为 ,则D为k*n的非空矩阵。

那么这个估计量的期望是 :

所以,为了保证 无偏,则必有 .

继续求方差:

是一个半正定矩阵,肯定要比大~得证。

变量选择与收缩方法

为了降低测试误差(减少函数的复杂度),有时候会放弃无偏性而进行变量选择。这里首先就是Ridge OLS(岭回归)。还是算一下这个东西好了。

岭回归就是对估计量另外加一个约束条件,所以很自然的想到拉格朗日乘子法。ridge regression的目标函数为,

可以重写为

这样我们就得到两个一阶条件:

,所以有:

这里还可以看出,的取值都是对应的。

Lasso则是把改成,已经没有解析解了...

至于为什么叫收缩方法,可以将X进行奇异值分解,然后可以得出的方差将变小...我就不写证明了,感觉这一块儿讲的也不是很透彻。

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(三)

照例文章第一段跑题,先附上个段子(转载的哦~):

I hate CS people. They don't know linear algebra but want to teach projective geometry. They don't know any probability but want to use graphical models. They don't understand stats at all but still do machine learning like crazy.

喵,最近被问了好几次machine learning 和statistical learning的区别在哪里,我觉得大致如上吧。这也是为什么,对后面这个词我的好感稍稍好于前面那个的原因...科学总是有意义的嘛,不能总是依靠强力乱猜是不是嘛。

免责声明:以下个人见解部分局限于我个人的见识和思考范围,不适用于所有场景。请大家弃糟粕取精华,不可一言全信之。

-------------笔记+随想开始------------

高维空间问题

这一段主要是说大名鼎鼎的"维数灾难"。我们都知道有两个数字决定着OLS中X矩阵的大小,这就是 观测数目N 和观测变量的个数p 。一般说来,我们都喜欢N比较大,这样可以很容易的应用大数定律什么的。然而对于p,却是既爱又恨—我们当然喜欢可以观察到个体的很多个特征,但是所谓"乱花渐欲迷人眼",特征越多噪音也越多,搞不好预测的时候就会有麻烦(关于变量的选择问题,应该是下一节课的内容。心急的可以先看看我以前的一篇自学笔记)。

为什么维数增多的时候会麻烦呢?这里主要是随着维数增多带来的高维空间数据稀疏化问题。简单地说:

  • p=1,则单位球(简化为正值的情况)变为一条[0,1]之间的直线。如果我们有N个点,则在均匀分布的情况下,两点之间的距离为1/N。其实平均分布和完全随机分布的两两点之间平均距离这个概念大致是等价的,大家可稍微想象一下这个过程。
  • p=2,单位球则是边长为1的正方形,如果还是只有N个点 ,则两点之间的平均距离为。换言之,如果我们还想维持两点之间平均距离为1/N,那么则需个点。
  • 以此类题,在p维空间,N个点两两之间的平均距离为,或者需要个点来维持1/N的平均距离。

由此可见,高维空间使得数据变得更加稀疏。这里有一个重要的定理:N个点在p为单位球内随机分布,则随着p的增大,这些点会越来越远离单位球的中心,转而往外缘分散。这个定理源于各点距单位球中心距离的中间值计算公式:

时,。(很显然,当N变大时,这个距离趋近于0。直观的理解就是,想象我们有一堆气体分子,p变大使得空间变大,所以这些分子开始远离彼此;而N变大意味着有更多气体分子进来,所以两两之间难免更挤一些。看过《三体》的,大概会觉得这个很熟悉的感觉吧...四维空间下的"水滴"再也不完美的无懈可击,而一张一维的纸片就毁灭了整个地球呢。)

这个距离公式的推导就暂时不写了,好麻烦...大致是利用了各个点独立同分布的特性(完全随机情况下),把median距离变为以1/2概率大于中位数的概率集合公式,再进一步展开为单点距离累乘公式。

比如当p=10, N=500的时候,约为0.52,也就意味着有一半多的点离中心的距离大于1/2。

高维问题为什么是问题呢?回顾一下K近邻算法,我们用x的邻居来代替x,这样就希望他的邻居们不要离他太远。显然高维空间使得点和点之间越来越远。所以说,knn更适合小p大N即低维多观测量的情况,而在高维空间下可能会变得很麻烦。

这样,statistical learning的主要两个问题就总结完了:

  • 过拟合:为了控制预测误差,我们要选择适合的函数类。
  • 高维空间:随着维数的增多,我们面临着维数灾难。这对很多算法都有波及,主要体现在高维数据稀疏化。

回归的线性方法

这里主要是一些linear regression的东西,作为被计量经济学折磨了这么多年的孩子,我表示很淡定...此外还加上我们俗称的generalized linear models,即GLM。一些线性变换而已,无伤大雅。

这里一定要强调的是,在这里我们亲爱的X居然不是随机变量!多大的一个坑啊,我就华丽丽的掉下去了还问老师为什么无偏性不需要假设均值独立什么的... X不是随机变量意味着什么呢?X是人为设定或者决定的,比如我一天浇200 ml 或者500 ml水,然后看对于植物生长的影响。当时我真的是想"一口老血喷出来",这也太舒服了吧!要知道大多数情况下X也是随机变量哇,比如身高体重什么的。如果它不是随机变量而只有扰动项是独立的随机变量的话,整个计量经济学怕是要删掉好多篇幅了呢。我想说的只有,这群搞statistical learning的好幸福...

X不是随机变量的时候,为了满足无偏性的假设,只需要扰动项不相关且期望方差存在就可以了。期望不为0不要紧,回归的时候放进去常数项就可以了。

此外,对于任意一个正定阵W,我们都可以直接在回归方程两边乘以W,从而。也就是说,我们可以给X进行加权处理,加权矩阵W之后可以进行新的OLS估计,且可能会有对应的优良性质。加权最小二乘法我就不在这里复习了,学过计量的应该很熟悉,比如处理异方差什么的。

再就是我们可以给加上一些约束条件,这样的话最小化问题后面就可以简单的使用拉格朗日乘子法来解。

这次的收获之一就是OLS估计量的计算。在实践中,我们计算OLS估计值并不是直接使用,而是会事先进行QR分解(利用特征值来算)。即,我们把X分解为化为正交(酉)矩阵Q与实(复)上三角矩阵R的乘积。这样一来,

这样可解,计算时候的稳定性比直接求逆矩阵来的好很多,因为计算机必竟有数字长度的限制,各种位数带来的精度损耗最后会累积到估计量上。

最后就是高斯-马尔科夫定理,就是我们常说的BLUE估计量。我就直接拷贝这个定理了:

在误差零均值,同方差,且互不相关的线性回归模型中,回归系数的最佳无偏线性估计(BLUE)就是最小方差估计。一般而言,任何回归系数的线性组合的最佳无偏线性估计就是它的最小方差估计。在这个线性回归模型中,误差既不需要假定正态分布,也不需要假定独立(但是需要不相关这个更弱的条件),还不需要假定同分布

进一步的,如果假设扰动项服从正态分布,比如白噪声,那么的估计值也服从正态分布,y的预测值也服从正态分布,因此可以直接做一系列基于正态分布的假设检验。特别的,在大样本情况下,就算扰动项不是正态分布,我们也还是可以利用大数定律和中心极限定理...事实上一般也是这么做的。

本节课到此结束。老师没有一一推导无偏性最小方差这些性质,我倒是觉得对回归方法感兴趣的还是直接去看计量经济学吧。这东西水还是蛮深的。

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(二)

继续一周一次的课堂笔记 昨天去晚了站着听讲,感觉好好啊,注意各种集中。想想整个教室里面就是我和老师是站着的,自豪感油然而生。

第二次课讲的东西依旧比较简单,是这本书第二章的前半部分。作为一个好久之前已经预习过的孩子,我表示万分的得意(最小二乘法难道不是三四年前就学过的?话说以后我再面人的时候,就让他推导最小二乘估计量,嘻嘻...考验一下基本功)。

------------原谅我的废话,笔记开始------------

简单预测方法:最小二乘法(以下沿用计量经济学的习惯,简称OLS)

OLS实在是太普遍了,我就不赘述细节了。OLS的思想就是,基于已有的样本信息,找出一条直线,让预测值与真实值之间的残差平方和最小,即最小。其中,为真实的样本观测值(已有样本),而是OLS的预测值。用图来讲的话,X为一维向量的时候,就是用一条直线来最好的拟合各个样本点。

这里就很明显了,首先OLS假设是一条直线。那么就是一个参数模型,即我们需要假设一个未知的参数,构成一个线性方程,然后再去估计的值。然后呢,直线会有很多条,所以我们要找到一个目标——比如这里,就是最小化残差平方和RSS。换言之,我们寻找的就是最优的向量使得RSS最小。

解这个最优化问题很简单,我就不重复了。最后解得的最优估计量为:

这里写成矩阵形式,比较简单。X为一维向量的时候,可以改写成形式,我个人不大喜欢,就不展开了。

简单预测方法:K近邻(k nearest neighbor)

K近邻的思想就更简单了。不就是想预测某个点x对应的y么?那么就把它的邻居都找来,平均一下好了。不是有句话叫做什么“一个人的收入就大概是他的圈子收入的平均值么?”

所以 ,这里表示点x的K近邻。至于这个近邻怎么定义嘛,嘻嘻,很简单啊,欧几里德距离就可以嘛~

评语:吴老师对于这两个算法的直观评价是,OLS呢就是勤奋的学生,预测前先做足功课,预测的时候只要知道X,噼里啪啦一下子y就估计出来了。然而knn则是一个临时抱佛脚的学生,预测的时候开始找自己的k近邻,然后把它们平均一下就好了。哈哈,大意如此,大家可以体会一下这种精神。我个人感觉呢,OLS属于以不变应万变的,而knn则是见机行事的。

统计决策理论(Statistical Decision Theory)

说了这么多,这个模型好不好到底怎么判读呢?凡事总得有个标准呢。这一系列的标准或者说准则,就是统计决策理论了。

首先呢,大致我们需要对X,Y有个分布上的描述:用记作向量的联合分布,然后为其对应的密度函数。之后为了估计Y,我们会有很多很多模型,即各种,而这些组成的函数空间记为

然后我们定义一个损失函数,比如在均方误差意义下,,这样就有了一个选择的标准——使得损失函数的期望最小:。接下来就是,到底在空间里面,哪一个最符合这个标准呢?

首先自然是把联合分布变为条件分布。这个idea显而易见——我们总是知道X的(原谅我吧,全中文确实比较难写,偶尔穿插英文一下 ^_^)。所以conditional on X,我们就有了

去解最小化问题,最终我们得到的就是在每个点X上, 。通俗的讲就是,对于每个点预测,把和它X向量取值一样的样本点都找出来,然后取他们的平均值就可以了。很直观的不是么?这里也有点最大似然的想法呢——比如预测一个男孩的身高,最保险的就是把和它同龄的其他男孩的身高平均一下,不是么?

但是说来简单啊,很多时候都是未知的,根本无法计算嘛。所以只能近似:

  • 回忆一下knn,就是放松了两点:1) 取的是x的近邻,而不一定是x; 2)用样本平均数代替了期望
  • 而OLS呢,也是最后在这里,用样本平均代替了期望。

近似嘛,自然有好的近似和不好的近似。很显然的,当样本比较大、尤其是比较密集的时候,x的邻居应该都离x很近,所以这个误差可以减小;此外,当样本很大的时候,根据大数定律,平均数收敛于期望。所以,这两种算法应该说,都在大样本下会有更好的效果。

模型选择、训练误差与测试误差、过拟合

这里讲的比较简单。模型选择就是的选择,即选择哪一类函数空间,然后再其中找/估计最优的。很显然,如果只有若干个有限的样本,我们总能把各个样本用直线或者曲线依次连起来,这样的话就有无数个f可以作为此问题的解。显然这不是我们想要的——这样的称为“不设定问题”,即可能无解、可能多个解、还可能因为一点点X的变化导致整个解的解答变化。因此我们需要先设定一个解的类别。

训练误差:预测模型估计值与训练数据集之间的误差。RSS就是一个典型的训练误差组成的残差平方和。

测试误差:用训练集以外的测试数据集带来的误差,显然我们更关心的是测试误差——训练总能训练的很好,让损失函数期望最小,然而测试集则不一定这样。一般说来,测试误差>训练误差。

过拟合:选择一个很复杂的f,使得训练误差很小,而实际的测试误差不一定小。最极端的就是刚才说的,把训练集的点一个个依次连起来...训练误差肯定是0是不是?

我们关心的自然是怎么降低测试误差。显然这东西会跟训练误差有关,但是它还跟f的复杂度有关。最最棘手的就是,f的复杂度是一个难以衡量的问题。早期的研究有用自由度来衡量这个复杂度的,但是也不是那么的靠谱...后面的有人鼓捣出来PAC(使得近似正确的概率最大——吴老师原话),还有一个VC来衡量复杂度——但几乎实践中无法计算,没几个计算出来的。嗯,水很深哇。