神经网络测试案例

时间:2010-05-02 15:20:27

标签: machine-learning neural-network testcase

  • 在精确神经网络的情况下增加测试用例训练数据的数量可能会导致问题(比如过度拟合)..?

  • 增加测试用例培训数据是否总是好的?这会导致转换吗?

  • 如果不是,这些案例是什么......一个例子会更好..

谢谢,

2 个答案:

答案 0 :(得分:4)

当你说“测试用例”时,我会假设你在谈论数据实例。

让我们看几个场景:

Antisotropy

假设您拥有1000个实例的培训数据集,并且彼此之间的所有非常相似,但您的资格数据集中的实例显着不同你的训练数据。例如,在尝试估计函数y = mx + b时遇到问题。

假设您的某些数据集为您提供了可帮助您估算m的样本,而其他数据集可帮助您估算b。如果您为神经网络提供了1000个样本,可以帮助您估算b,但只有5个样本可以帮助您估算m,那么在估算m时,您的神经网络的表现会非常糟糕。您将过度拟合您的神经网络并添加更多样本以帮助您估算b将无济于事。

各向同性

现在假设您的数据集中有一个比例分布(请注意我没有说相等)...并且您希望它们是比例的,因为您可能需要更多的数据实例来估算m,而不是估算b。现在您的数据相对同质,添加更多样本将为您提供更多机会,帮助您更好地估算功能。使用y = mx + b,你可以在技术上拥有无限数量的数据实例(因为这条线在两个方向都是无限的)并且它可能会有所帮助,但是有一个收益递减点。

递减收益

使用y = mx + b示例,您可以拥有无​​限数量的数据实例,但如果您可以使用1,000个实例估算函数,那么向数据集添加100,000个数据实例可能没有用。在某些时候,添加更多实例不会带来更好的适应性,从而导致收益递减。

现在假设您正在尝试估计一个类似XOR的布尔函数:

A    B   A XOR B
1    1      0
1    0      1
0    1      1
0    0      0

在这种情况下,您根本无法添加更多数据,添加更多数据也没有意义......只有四个有效的数据实例,而这就是您拥有的所有数据。在这个例子中,没有必要添加更多的数据实例。

结论

通常,添加更多数据实例将直接取决于您的问题:某些问题可能会从更多数据实例中受益,而其他问题可能会受到影响。您必须分析数据集,并且可能必须对数据集执行一些操作,以使您的样本更能代表真实数据。你必须研究你试图解决的问题,理解它的领域,理解它拥有的数据样本,你必须做出相应的计划......机器学习/人工智能中没有一个通用的解决方案。

答案 1 :(得分:0)

过度拟合问题是指构建具有多个神经元的网络,因此当您实现训练过程时,网络调整“太好”。换句话说,它喜欢拟合等级为n的多项式,而你的数据是m大小,其中n大于o近o。 由于你在功能上有这么多等级,所以合适会更好,但这并不意味着这条曲线是最好的。 NN也是如此,神经元和错误之间的关系更像是一个微笑。

没有证据表明更多数据会导致更多错误,但有些工作会对应用主要组件的数据进行预分析,以捕获更好的关系。