我使用蛮力机制来确定最佳隐藏层/神经元,方法是将层/神经元增加 1 直到某个最大值,然后从性能最佳的模型中选择最佳计数。我的问题是关于这个“蛮力”过程的隐藏神经元计数的起点。有什么好的机制可以确定从哪个神经元计数开始,这样我就不会错过一些最小的最佳计数?
例如:
假设我有 8 个不是线性相关的输入。如果我将(输入数量:8)+ 1(如某些帖子所建议的那样)作为增加层内神经元数量的起点,我是否可能会错过最佳神经元数量,因为它可能少于 9 个神经元?
我使用的蛮力机制设置了每个隐藏层的最大神经元数量,所以如果我有 8 个输入,并且我从每个隐藏层 9 到 30 个神经元的范围开始,我将在第一个隐藏层中有 9 个神经元当开始使用第二个隐藏层进行测试时,它将增加到 30,然后回滚到 9:
循环 1 隐藏层 = 1 隐藏神经元 = 9 ... 隐藏层 = 1 隐藏神经元 = 30
循环 2 隐藏层 = 2 个隐藏神经元 = 9 ... 隐藏层 = 2 个隐藏神经元 = 30
循环 3 隐藏层 = 3 个隐藏神经元 = 9 ... 隐藏层 = 3 个隐藏神经元 = 30
我承认这效率低下,因为每一层可能不需要相同数量的神经元,但这篇文章的重点是尝试通过最小化需要测试以确定“最佳”的层/神经元组合的数量来改进这种机制计数。
编辑:
因此,只是为了澄清这个问题是关于确定如果使用上面概述的蛮力机制而不考虑数据域(因此输入 + 1 示例),一个好的最小起点是什么。