【深度学习】学习笔记 您所在的位置:网站首页 scikit-learn数据集越多预测准确率会 【深度学习】学习笔记

【深度学习】学习笔记

2024-04-19 15:38| 来源: 网络整理| 查看: 265

1. 训练集 acc > 测试集 acc

当训练集和测试集两个loss之间的有较大的差距时,定义为高方差,如下图所示:

根本原因在于两点:

训练集和测试集的数据分布不均;模型过拟合。1.1  训练集和测试集数据分布不均

训练集和测试集的数据分布不均。这个在于实验数据本身,可以尝试shuffle数据、重新划分数据集或者对实验数据进行扩充。

1.2 模型过拟合

模型过拟合表现为训练效果好,但是测试效果差,即模型的泛化能力差。可以通过观察模型在训练集和测试集上的损失函数值随着epoch的变化,如果是过拟合,模型在测试集上的损失函数值一般是先下降后上升。

1.3  过拟合的原因

训练数据太少,样本单一。

如果训练样本只有负样本,然后拿生成的模型去预测正样本,这肯定预测不准。所以训练样本要尽可能的全面,覆盖所有的数据类型;

存在噪声。

噪声指训练数据中的干扰数据。过多的干扰会导致记录了很多噪声特征,忽略了真实输入和输出之间的关系;

模型过于复杂, 层数太深。

模型太复杂,已经能够死记硬背记录下了训练数据的信息,但是遇到没有见过的数据的时候不能够变通,泛化能力太差。我们希望模型对不同的数据都有稳定的输出。模型太复杂是过拟合的重要因素。

1.4  过拟合解决方式

增加样本,要覆盖全部的数据类型。

数据经过清洗之后再进行模型训练,防止噪声数据干扰模型;

降低模型复杂度。

在训练和建立模型的时候,从相对简单的模型开始,不要一开始就把特征做的非常多,模型参数挑的非常复杂;

正则化。

在模型算法中添加惩罚函数来防止过拟合。常见的有L1,L2正则化。而且 L1正则还可以自动进行特征选择;

集成学习方法

bagging(如随机森林)能有效防止过拟合;

减少特征个数(不是太推荐,但也是一种方法)。

可以使用特征选择,减少特征数或使用较少的特征组合,对于按区间离散化的特征,增大划分的区间;

交叉检验

通过交叉检验得到较优的模型参数;

早停策略

本质上是交叉验证策略,选择合适的训练次数,避免训练的网络过度拟合训练数据;

DropOut策略

核心思想就是bagging,可以看作是低成本的集成学习。所谓的Dropout指的是在用前向传播算法和反向传播算法训练DNN模型时,一批数据迭代时,随机的从全连接DNN网络中去掉一部分隐藏层的神经元。 在对训练集中的一批数据进行训练时,我们随机去掉一部分隐藏层的神经元,并用去掉隐藏层的神经元的网络来拟合我们的一批训练数据。使用基于dropout的正则化比基于bagging的正则化简单,这显而易见,当然天下没有免费的午餐,由于dropout会将原始数据分批迭代,因此原始数据集最好较大,否则模型可能会欠拟合。

2. 训练 acc < 测试 acc

当训练集和测试集两个loss, 虽然都是收敛, 但是loss值都很高, 定义为高偏差;

当偏差很高,训练集和验证集的准确率都很低,很可能是欠拟合;表现为不能很好的拟合数据,训练集和测试集效果都不佳。

训练的时候,会得到测试集的准确率或者验证集的准确率高于训练集的准确率,这是什么原因造成的呢?

本质上, 因为: 模型没有很好的捕捉数据特征,不能很好地拟合数据。

2.1  欠拟合的原因

1.数据集太小。如果数据集切分的不均匀,或者说训练集和测试集的分布不均匀,如果模型能够正确捕捉到数据内部的分布模式话,这可能造成训练集的内部方差大于验证集,会造成训练集的误差更大。

训练集的数据做了一系列的增广,如旋转,仿射,模糊,添加噪点等操作;过多的增广使得训练集分布产生了变化。

这时你要重新切分数据集或者扩充数据集,使其分布一样;

2.由Dropout造成。它能基本上确保您的测试准确性最好,优于您的训练准确性。Dropout迫使你的神经网络成为一个非常大的弱分类器集合,这就意味着,一个单独的分类器没有太高的分类准确性,只有当你把他们串在一起的时候他们才会变得更强大。

因为在训练期间,Dropout将这些分类器的随机集合切掉,因此,训练准确率将受到影响。

在测试期间,Dropout将自动关闭,并允许使用神经网络中的所有弱分类器,因此,测试精度提高。

2.2 过拟合的解决方式

做特征工程,添加更多的特征项,比如特征组合、高次特征,来增大假设空间。如果欠拟合是由于特征项不够,没有足够的信息支持模型做判断;

集成学习方法boosting(如GBDT)能有效解决high bias;

增加模型复杂度。如果模型太简单,不能够应对复杂的任务。可以使用更复杂的模型。比如说可以使用SVM的核函数,增加了模型复杂度,把低维不可分的数据映射到高维空间,就可以线性可分,减小欠拟合;

减小正则化系数。

原文链接:深度学习时,训练集的精度与测试集精度之间的关系_训练精度和测试精度_mingqian_chu的博客-CSDN博客



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有