直接估计模型MSE的两种方法(Cross-validation和Bootstrap),以及超参数的选取

Cross-validation称为交叉验证;Bootstrap称为自助法。其实这两种方法都是重采样的思想,可以以此来估计我们模型的MSE。

1、CV交叉验证

k折交叉验证,就是将样本均分为k块,首先拿第一块作为test,剩下的作为train训练模型,得到test的MSE;接着拿第二块作为test,剩下的作为train;... ;以此类推,直到最后一块作为test,前面的作为train。

这样我们就可以得到k个MSE,最终取平均就能得到这个模型的MSE的估计值。

remark:注意做交叉验证的k次过程中的模型其实是一样的,比如说都是一元线性模型,进行一次k折交叉验证后,最终得到的就是这个一元线性模型的MSE的估计值。然后更换模型比如为三元线性模型,也能得到这个三元线性模型的MSE估计值。        目的就在于比较这两个模型的MSE的大小,哪个小选哪个。所以使用CV交叉验证不是为了估计某个模型的参数,而是为了选择是哪一种模型的MSE最小!(这是很重要的一点,我之前就没想通。现在才明白!)

2、Bootstrap

这个很好理解,假设我们最初有n个样本X1,...,Xn,Bootstrap就是从这n个样本中进行有放回的抽取n个,得到我们新的样本,用这个新的样本来训练模型,计算MSE。这个过程可以进行很多次,最后所有的MSE取平均也能得到我们模型的MSE估计值。

3、超参数的选取

我们这两种方法呢,就可以用于模型超参数的选取,比如一个模型是Y = X\beta + \lambda,这里\beta是模型参数,但\lambda是一个超参数,我们该怎样选取\lambda呢?

就可以使用CV交叉验证或者Bootstrap,选取不同的\lambda,来进行一次交叉验证或bootstrap,得到这个\lambda下模型的MSE,最终选取MSE最小的\lambda来作为我们这个模型的超参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值