1 第一周 深度学习的实用层面
1.1 训练集、验证集、测试集
- 训练集
用来训练模型内参数的数据集 - 验证集
用于在训练过程中检验模型的状态、收敛情况。
验证集通常用于调整超参数,根据几组模型验证集上的表现决定哪组超参数拥有最好的性能。同时也可以用评价指标评估模型、比如准确率、召回率、平均误差。 - 测试集
用于评估模型的泛化能力
在机器学习中,我们通常将样本分成训练集,验证集和测试集三部分,数据 集规模相对较小,适用传统的划分比例,数据集规模较大的,验证集和测试集要小于数据总 量的 20%或 10%。
reference:https://zhuanlan.zhihu.com/p/35394638
1.2 偏差、方差
- 偏差
偏差是指模型的预测值期望与我们试图预测的正确值之间的差异。具有高偏差的模型很少关注训练数据并且过度简化模型。它总是导致训练和测试数据的差别很大。
- 方差
描述的是通过学习拟合出来的结果自身的不稳定性。具有高差异的模型非常注重训练数据,并且没有概括它以前从未见过的数据。结果,这些模型在训练数据上表现很好,但在测试数据上具有高错误率。
- 高方差:过拟合;高偏差:欠拟合
- 方差、偏差均衡
如果我们的模型太简单并且参数很少,那么它可能具有高偏差和低方差。另一方面,如果我们的模型具有大量参数,那么它将具有高方差和低偏差。因此,我们需要找到正确/良好的平衡,而不会过度拟合和欠拟合数据。
真实值y与预测值f(X)之间的关键词,e数据本身的噪音带来的
为误差项,符合均值为0的正态分布。
我们引入均方误差,最优化均方误差即可找到方差和偏差的最优平衡点:
为了建立一个好的模型,我们需要在偏差和方差之间找到一个很好的平衡点,以便最大限度地减少总误差。
reference:
Understanding the Bias-Variance Tradeoff
1.3 正则化
1.4 dropout正则化
1.5 数据扩增
通过扩增训练数据来解决过拟合,但扩增数 据代价高,而且有时候我们无法扩增数据,但我们可以通过添加这类图片来增加训练集。例 如,水平翻转图片,并把它添加到训练集。
1.6 early stopping
1.7 归一化输入
训练神经网络,其中一个加速训练的方法就是归一化输入。归一化需要两个步骤:
1.零均值;2.归一化方差。