gpt4 book ai didi

machine-learning - 训练集准确度随着集合大小的增加而降低

转载 作者:行者123 更新时间:2023-11-30 09:48:10 25 4
gpt4 key购买 nike

为了了解有关机器学习算法的更多信息,我正在使用自己收集的一些数据,但在与我的神经网络算法一起使用时,我出现了奇怪的行为......

我的数据集由分为 3 个不同可能类别的数据组成(假设 A 是数据集的 5%,B 是数据集的 5%,C 是数据集的 90%)。

当我尝试使用“小”训练集(约 1800 个条目)时,我的训练集准确率接近 100%(A:99% B:100% C:100% -> 相当正常),但是我的交叉验证集和测试集准确性非常差。

所以我尝试使用更大的训练集(~12000 个条目),我的训练集准确率急剧下降(A:18%,B:28%,C:99%),而测试集准确率确实是还是很糟糕。

然后我尝试使用中等训练集(~5500 个条目),正如预期的那样,训练集介于之前的结果(A:45%,B:78%,C:99%)和测试之间-设置精度显然仍然很差。

你知道造成这样结果的原因可能是什么吗?我的数据集是否缺少可以帮助区分 A、B 和 C 3 个类别的定性特征,或者是否存在其他可以解释此类结果的根本原因?

<小时/>

我当前神经网络的配置,以防它给出一些提示:

  • 隐藏层:1
  • 激活单元数量:特征数量的两倍
  • lambda :2.0

最佳答案

您对 C 类存在过度拟合,因为三个训练集的维度非常不平衡(5%、5% 和 90%)。首先,这解释了交叉验证和测试集的低准确性。然后,当训练集大小增加时,训练集精度也会下降,因为有太多 C 项,它们往往会极大地修改网络权重,即使您使用较小的学习率也是如此。

换句话说,A类和B类训练引起的权重修改基本上被网络“遗忘”了,因为C类训练引起的权重修改要显着得多。

关于machine-learning - 训练集准确度随着集合大小的增加而降低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49633409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com