13-Validation
这讲主要讲validation, model selection, cross validation。
-
在之前的课程中Eout等于Ein加上过拟合的惩罚项。 正则化就是在估计过拟合的惩罚项, validation则是直接估计Eout。
versus -
现在估计误差估计的准确率。 对于一个点来说, 其均值方差就是一种衡量。 那么如果是一个set呢, 均值方差如何变化, 答案是均值不变, 而方差减小了K倍。 可以看出, 用更多的点来估计可以减少我们估计的误差。
point
set -
我们选择K个点作为validation set。 根据Eval的式子, K越大估计的误差越小, 但是由于K是从整个数据集的N个数据点抽离出来的, 会造成Ein变小而Eout变大!
K -
这个图清晰的展示了validation是如何做的, g是从全部数据点训练出来的, g-是从训练集训练出来的, Dval在g-上面做估计。 validation起到了模型选择的作用, 当最终确定了模型, 可以把所有的点都拿去训练。
roadmap -
test set不参与训练, 是一种无偏差的估计, 而validation set参与了训练, 是一种有偏估计。 设想有两个假设h1,h2. 本来它们的Eout都是0.5. 但是有一个在validation set的表现是小于0.5的,我们就会选择它, 这样就造成了估计的偏差。
test vs validation -
一个训练过程就是一个选择假设空间中的假设的过程, 这种选择是通过validation set来完成的: 选择表现最好的。
process -
bias有多大呢, K越大 bias当然越小了, 但是代价是模型误差非常大。
bias -
三个set的区别。
set -
K的选择另我们陷入了困境。 为了最终的模型的误差能逼近Eout, 我们希望用更少的K从而使更多的样本能参与训练; 而为了使Eval能逼近训练出来的模型的误差, 我们希望K更大。
K -
cross validatoin就是为了解决这个问题的。 其中的一种是leave one out。 每次训练选择一个点作为validation set, 训练N次, 最后取N次训练的误差的均值。如下面的例子, 选择linear还是constant呢, 最终的结果是选择constant model。
leave one out
selection -
在数字分类的实验中, 我们通过cross valiation选择有多少个多项式项。
digit -
更常用的不是leave one out。 而是将样本划分为n个partition, 如5折, 10折等等。
partition