1. Leave-1-Out Cross Validation (LOOCV)
Leave-1-Out Cross Validation(简称 LOOCV)是一种极端的交叉验证方法,它的特点是:每次从数据集中只留出一个样本作为测试集,剩下的所有样本作为训练集。这个过程会对数据集中的每一个样本重复一次。
步骤:
- 假设数据集中有 n n n 个样本。
- 每次从数据集中选取一个样本 x i x_i xi 作为测试集,剩余的 n − 1 n-1 n−1 个样本作为训练集。
- 用训练集训练模型,然后用测试集(即被留下的那个样本)评估模型性能。
- 重复以上步骤,直到每一个样本都被当作一次测试样本。
- 将所有测试样本的误差进行平均,得到模型的总体误差。
优点:
- 无偏性:因为每次都使用了整个数据集的几乎全部样本进行训练,所以得到的模型估计较为准确。
- 高效利用数据:所有样本都在某次训练中被使用,可以最大化利用数据集中的信息。
缺点:
- 计算代价高:对于大规模数据集,LOOCV的计算代价极高。因为每个样本都需要单独进行训练和测试,因此需要训练 n n n 次模型。
- 方差较大:由于每次只使用一个样本作为测试集,因此它对测试样本的选择非常敏感,导致估计方差较大。
例子:
假设一个数据集有 5 个样本 [ A , B , C , D , E ] [A, B, C, D, E] [A,B,C,D,E]。LOOCV 的过程如下:
- 第一次:用 [ B , C , D , E ] [B, C, D, E]