赞
踩
misclassification error(0/1错误分类):
以上就是以0/1错误分类来定义的测试误差
混淆矩阵
在预测分析中,混淆表(有时也称为混淆矩阵)是具有两行两列的表,该表报告假阳性,假阴性,真阳性和真阴性的数量。
应用这些方法来帮助我们进行诸如特征选择、学习算法、多项式次数选择、学习算法正则化参数 λ \lambda λ的选择等问题。
一个模型对训练集拟合得很好,但是未必对新样本表现得很好,这就是对新样本的泛化能力不一定好。
如果你的参数对某个数据集拟合得很好,比如训练集或者其他数据集,那么用同一数据集计算得到的误差,比如训练误差,并不能很好地估计出实际的泛化误差。
用训练集来拟合参数 θ 0 , θ 1 \theta_0,\theta_1 θ0,θ1等参数时,拟合后的模型在训练集上的效果是不能预测出假设对于新样本的泛化能力的,这是因为这些参数能够很好地拟合训练集,因此很有可能在训练集上表现得很好,但对其他样本来说,就不一定好。
把数据集分成三个部分:训练集、(交叉)验证集(Cross_Validation)、测试集
测试及只能用来最后的测试。
我们用训练集来训练模型,得到模型的参数;通过验证集对模型进行评估,从而选出针对这一具体问题的得分最高的机器学习算法及其相应的超参;再在每个训练集和验证集上重新训练模型得到最终的模型;最后测试集根据此最终的模型进行预测。
除去测试集以外的所有数据能够至少作为一次训练集,至少作为一次验证集
偏差:欠拟合
方差:过拟合
一个中等的次数会使交叉验证集的代价函数最小化。
小了欠拟合,大了过拟合。
如何选择一个合适的正则化参数 λ \lambda λ呢?
从 λ = 0 \lambda=0 λ=0,即惩罚项为0时,开始调整 λ \lambda λ的值, λ \lambda λ的增长速率为2倍。
算出每个
λ
\lambda
λ下的模型最优化情况下的参数
θ
\theta
θ的值,再用交叉验证集上的代价函数来评价每个模型的拟合情况的好坏。选取这几个模型中交叉验证集误差最小的参数
θ
\theta
θ作为最终的模型参数。
如果想知道最终模型的测试误差,可以用选出来的最终模型,观察其在测试集上的表现
小结:正则化参数 λ \lambda λ和多项式的次数 d d d都会影响欠拟合或者是过拟合的情况。
学习曲线是不同训练集大小,模型在训练集和验证集上的得分变化曲线。也就是以样本数为横坐标,训练和交叉验证集上的得分(如准确率)为纵坐标。learning curve可以帮助我们判断模型现在所处的状态:过拟合(overfiting / high variance) or 欠拟合(underfitting / high bias)
目的不是为了让训练集拟合得更好,哪怕误差大点,目的是为了让其有更好的泛化性,也就是交叉和检测集误差要小
在多项式次数一定时,训练集样本数量对
J
t
r
a
i
n
J_{train}
Jtrain和
J
c
v
J_{cv}
Jcv的影响。
比如用一个二次函数拟合一个数据集。当数据集样本较少时,拟合效果较好;但当数据集数量增多时,拟合效果逐渐下降,即
J
t
r
a
i
n
J_{train}
Jtrain逐渐下降,但是样本数量的增多会提高模型的泛化能力,即
J
c
v
J_{cv}
Jcv逐渐减少。
如果一个模型处于高偏差的情形,增加样本数量并不能提高模型的泛化效果(
J
c
v
J_{cv}
Jcv不会有明显的下降,会出现一个平台期)
如上图所示,增加了样本数量,但是得出的预测函数都是一条差不多的直线。
通过学习曲线了解模型是否处于一个高偏差的情形可以帮助我们排除因样本数量不足而导致的模型泛化效果不好的原因,不会陷入盲目增加样本数量来提高模型的泛化能力。
高方差的情形下,增加样本数量可以降低在训练集上的误差
J
c
v
J_{cv}
Jcv,提高模型的泛化能力。
如何为神经网络选择合适的结构或连接形式
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。