首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >神经网络:为什么当你给它更多的神经元时,它的效果会变得更差?

神经网络:为什么当你给它更多的神经元时,它的效果会变得更差?
EN

Stack Overflow用户
提问于 2018-08-13 01:35:38
回答 1查看 357关注 0票数 0

我刚刚编写了我的第一个神经网络代码,并对其进行了一些实验...它的任务非常简单:它基本上应该输出四舍五入的数字。它由一个输入神经元和一个输出神经元组成,其中1个隐层由2个隐层神经元组成。首先,我给了它大约2000个随机生成的训练数据集。

当我给它由10个隐藏神经元组成的3个隐藏层时。结果开始变得更糟,即使在10000个训练集之后,它仍然输出许多错误的答案。具有2个隐藏神经元的神经网络工作得更好。

这一切为什么要发生?我认为一个神经网络的神经元越多,它就越好。

那么如何找到神经元和隐藏层的最佳数量呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-13 09:29:24

如果你说的“更差”是指测试集上的准确性较低,那么问题很可能是过度拟合。

一般来说,我可以告诉你:更多的层将适合更复杂的数据函数。也许你的数据很像一条直线,所以一个简单的线性函数就可以做得很好。但想象一下,你尝试对数据拟合一个6次多项式。正如你可能知道的,高阶偶数函数非常快地达到无穷大(+-),所以这个高阶模型在极端情况下会预测太大的值。

总而言之,您的问题很可能是过拟合(高方差)。你可以在图中的某个地方查看一些关于偏差-方差权衡的更直观的解释。

谷歌快速搜索:https://en.wikipedia.org/wiki/Bias%E2%80%93variance_tradeoff

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51811267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档