这一章的内容是模型评估与选择,断断续续看了两周时间,_第1页
这一章的内容是模型评估与选择,断断续续看了两周时间,_第2页
这一章的内容是模型评估与选择,断断续续看了两周时间,_第3页
这一章的内容是模型评估与选择,断断续续看了两周时间,_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、这一章的内容是模型评估与选择,断断续续看了两周时间,感觉比看模型还费劲。其实这一章的大部分内容我是熟悉的,包括各种模型选择的准则,交叉验证以及bootstrap,这些在实际建模的时候也经常用到,但是关于其原理确实不是很清晰。这一章给出了详尽,但是又不那么理论的阐述。经典确实是经典。闲话不多说了,开始读书笔记。对于同一个问题,比如分类问题或者预测问题,往往会有一系列的模型都可以做。那么这些模型表现的如何,如何从这些模型中选择一个合适的,最好的模型,就成为了一个问题。而这个问题在实际中是非常重要的。我们都知道,模型是建立在训练样本上的,而预测是需要在一个独立的新的样本上进行的。在训练样本上所建立的

2、模型,其在一个新的独立的样本上的表现如何进行评估,是一个非常重要的问题。这一章首先介绍了偏差(bias),方差(variance)以及模型复杂度(model complexity)。我们有一个target variable Y,以及输入向量X,以及通过训练样本得到的对于响应的估计(也就是我们的模型)f(X)。此外,我们还应该有一个损失函数L(Y,f(X)。损失函数可以有多种选择,比如平方损失,绝对值损失,这两个主要是针对定量的响应的,对于定性的响应,也有0-1损失,对数似然之类的。一般而言,损失函数中比较常用的就是这些。有了模型以及损失函数之后,首先定义test error(原谅我在这里中英混

3、杂,因为我发现用这种方法可以更好地区分几个不同的概念)。test error是损失函数在一个新的,独立的检验样本上的期望。Err=EL(Y,f(X)。这个期望的计算需要涉及到新的检测样本的联合分布。以上是test error的概念。于此对应的是training error的定义,training error是指在训练样本上的损失的平均值。err=1NNi=1L(yi,f(xi)上面的图综合的阐述了模型复杂度,偏差,方差之间的关系。从图中,我们可以看出,training error显然不是test error的一个好的估计。显然,training error都低估了test error。这个原因

4、很容易解释,training error所用的数据依然是建立模型用的数据,当然误差要小。另外,从这张图可以看出,随着模型复杂度的增加,training error是再不断减小的,而且如果模型足够复杂,是不会有training error的。这种现象,往往被称为过拟合。也就是说,拟合的太过头了。这也不是一个好现象。我们想要评估一个模型的好坏,想要知道的,肯定是test error。通常而言,我们对于解决某个问题,会有一族模型,这族模型有一个tuning parameter 。我们记这族模型为f(x)。通常这个tuning parameter是用以辨识模型复杂程度的。这一章的主要任务是估计test

5、 error曲线。而通常的模型选择和评估大致分为两个步骤,先通过training error来选择模型,然后再通过test error评估模型。对于test error的估计,通常有两种策略。一种是解析的做法,比如AIC,BIC之类的。另外一种则是用交叉验证(cross-validation)或者bootstrap来估计。这两类方法也是本书这一章的主要的内容构成。在介绍这些方法之前,有必要先看一看bias-variance分解。Err(x0)=2e+Bias2(f(x0)+Variance通常而言,模型越复杂,bias越低,而方差variance则越高。关于这一部分,在之前的一篇笔记中已经通过

6、一个图提到了,这里也不再详述。通常,training error都是小于test error的。Err在某种意义上是extra-sample error。若我们定义in-sample error,则training error对于test error的乐观估计则更好理解。in-sample error的定义是Errin=1NL(Ynewi,f(xi)。则这个估计的乐观的部分如下定义op=ErrinEy(err)而通过推到,我们可以得到(这个推到书上也没有,应该是某一系列论文中的成果,我们这里不具体推,只要知道这个结果就行)Errin=Ey(err)+2Ncov(yi,yi)这个结果揭示了一个很

7、重要的事儿,就是乐观估计的程度与估计值和真实值之间的相关性是密切相关的。写到这我也有点糊涂了,按理说,我们需要的是test error的估计,而现在,我们只需要来估计in-sample error了。作者在这里说了一句话,“In-sample error is not usually of direct interest since future values of the features are not likely to coincide with their training set value.But for comparison between models,in-sample e

8、rror is convenient and often leads to effective model selection”。那么我们就按照作者的经验,来开始对in-sample error进行估计吧。对于in-sample error的估计,有两个不同的角度可以进行,一种是估计op,然后加到err上即可。这也就是AIC,BIC的思路。另外一种就是利用重抽样,比如cross-validation或者bootstrap的策略,来估计in-sample error。下面的部分,就分别比较详细的介绍一下这些方法。Cp统计量:Errin=err+op是通用的一个式子,不同的准则有对这个式子不同的估

9、计,我们先来看最常用的Cp准则。Cp=err+2dN2e这个公式适用于加法模型,而且如果估计值是线性的情况下。AIC准则:AIC=2Loglik+2dN.当损失函数对数似然损失函数的时候,这个准则比Cp准则更加广义。其所依赖的理论是一个大样本性质,当N趋于无穷大的时候,2ElogPr(Y)2NEloglik+2dN其中loglik=logPr(yi)用AIC准则进行模型选择的时候,是选择AIC越小愈好。这一部分书中有一个简单的例子,但是很能说明问题,不在此多说了。BIC准则:BIC=2loglik+(logN)dBIC准则的得来的motivate是非常不同的,选择BIC最小的模型,事实上是在选

10、择后验概率最大的模型。BIC准则的得来,是通过bayes理论推导得到的。这里在书中也有具体的公式推导。MDL:minimum description length。这个部分,我几乎没怎么看明白,其核心是编码理论。以上是一些模型选择的准则。模型选择的准则都涉及到了模型有效参数的个数,因此,这一章也对这个问题做了一些讲解。包括7.6the effective number of parameters以及7.9的Vapnik-Chernovenkis dimension,都是主要讲了模型复杂度的度量。这两部分的内容我看的并不是很清晰,也没什么感觉。希望再读此书能有所收获。这次阅读,这部分我都略过了。

11、以上的一些准则,都是对op的一个比较解析的估计。下面介绍两种通过重抽样的策略,来估计in-sample error的方法。 cross-validation:CV=1NsumNi=1L(yi,fk(i)(xi)交叉验证,就是把训练样本大致平均地分成K分,然后每次剔除一部分,用另外的部分进行模型构建,然后用剔除的那一部分来估计误差,这样做K次,然后平均K次的误差。通常而言,都是用5-cross validation或者10-cross validation。当然还有每次剔除一个值,leave-one-out。如何选择K是一个问题,当K=N的时候,CV是预测误差的渐进无偏估计。但是方差可能会很大。当K比较小的时候,方差会比较小,但是偏差比较大,也是一个问题。作者说"over-all five or ten fold cross-validation are recommended as a good

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论