Lesson-11
模型选择
训练误差和泛化误差: 训练误差是在训练集上的误差,泛化误差是在新数据集上的误差 验证数据集和测试数据集:
- 验证数据集用来评估模型的好坏,可以用多次,例如从训练集里面取出来50%,不要把它和训练集混淆在一起,但是结果可能会虚高
- 测试数据集:只能用一次,不能用来调整超参数
这里说的直白一些就是,我们通常用训练集来训练,然后用验证数据集作评估,然后根据验证数据集的结果修改超参数而实现更好的效果,这里修改超参数的操作在某种程度上也是模型在验证数据集进行了一定的学习。但是,测试数据集仅仅做一次测试,并不能在其上调参数,从而最能反映模型的泛化能力。
k则交叉验证 当数据集不是特别大的时候通常使用,步骤如下: * 将数据打乱并分为\(k\)块 * 循环依次使用第\(i(i = 1,2,...,n)\)作为验证数据集,剩下的块作为训练数据集 * 将\(k\)次分别求得的误差求评价作为误差的平均
过拟合和欠拟合
泛化误差和训练误差之间的gap是衡量模型是否过拟合的要素之一。 深度学习核心是首先模型容量得够大,然后进行调整来防止过拟合。 模型容量的两大核心要素: 参数的取值范围、参数的个数 VC维: VC维等于一个最大数据集的大小,无论如何标号,都存在可以将其分类出来的模型。 比如:二维输入的感知机的VC维是3,表示其可以分类任何三个点,但无法分类四个。 推广: 支持N维输入的感知机的VC维是N+1,复杂度为\(O(N\log N)\)
本页面最近更新:,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:OI-wiki
本页面的全部内容在 协议之条款下提供,附加条款亦可能应用