题目
今天来用自助法评估一下ISLR 程序包中的 Portfolio (金融资产)数据集的预测函数
相关资料
自助法(Bootstraping)是另一种模型验证(评估)的方法(之前已经介绍过单次验证和交叉验证)。其以自助采样(Bootstrap Sampling)为基础,即有放回的采样或重复采样。(注:这是一种样本内抽样的方法,即将样本看作总体并从中进行抽样。)
具体做法是:在含有 m 个样本的数据集中,每次随机挑选一个样本, 将其作为训练样本,再将此样本放回到数据集中,这样有放回地抽样 m 次,生成一个与原数据集大小相同的数据集,这个新数据集就是训练集。这样有些样本可能在训练集中出现多次,有些则可能从未出现。原数据集中大概有 36.8% 的样本不会出现在新数据集中。因此,我们把这些未出现在新数据集中的样本作为验证集。把前面的步骤重复进行多次,这样就可以训练出多个模型并得到它们的验证误差,然后取平均值,作为该模型的验证误差。
如果需要在多个不同的模型中进行选择,那么事先留出测试集,然后在剩余的数据集上用自助法验证模型,选择验证误差最小的模型作为最好的模型,然后用训练集+验证集数据按最好模型的设置训练出一个新的模型,作为最终的模型,最后用测试集测试最终的模型。
实验
为了在这个 数据集上说明自助法的使用,首先必须创建一个函数alpha. fn ()来输入数据(X,Y) , 以 及表明用哪些观测来估计 α 的向量,然后输出由入选的观测所计算得到的 α 估计的结果。
# The Bootstrap#自助法
# 两个步骤:第一,创建一个计算感兴趣的统计量的函数
# 第二,用boot库中的boot()有放回地抽取观测来执行自助法
alpha.fn=function