最近,我正在研究一些基于神经网络的预测分析。
当我尝试使用一个或多个隐藏层对MLP进行一些测试时,结果表明:
据我所知,更多的隐藏层和更多的神经元应该表现得更好?
对于哪种数据集会产生这样的结果,是否有这样的原则?
或者我可能需要一些书/文章/报纸来阅读?
你有什么抽象概念(不是数学算法)给我,谢谢!
我正在开发一个欺诈检测数据集,其中包括1000个观察数据。所有的维度都是数字和标准化的..。
但是我实际上是在要求一个总体的想法,一般的想法是为不同的数据集选择算法
发布于 2016-12-20 02:52:14
更多的层/更多的神经元并不一定意味着你会得到更好的表现。如果您的数据太简单,或者观察的数量不那么多,那么添加更多的参数(更多的层/神经元)可能会导致数据的过度拟合。在培训过程中,网络将尽可能紧密地表示培训数据。当网络中有大量的单元时,网络学习到的表示将主要是对数据的总体趋势进行忠实的建模。但是,如果有太多的神经元,那么一些神经元可能只是在训练数据中建立噪声模型,而这些噪声并不是泛化为看不见的数据,从而导致性能较差。
此外,如果您使用饱和非线性作为激活函数(例如,sigmoids或tanh),那么添加太多的层可能会导致渐变消失,这将导致您的网络训练非常缓慢,或者根本没有。
设计出工作良好的神经网络并不容易,获得直觉的最好方法就是实验。要尝试的一件事是评估隐藏层的大小范围(S)。如果你使用乙状结肠或tanh作为你的激活函数,我建议你也尝试使用校正的线性单位。
https://datascience.stackexchange.com/questions/15825
复制相似问题