我最近发现了this answer关于选择一个好的神经网络结构的问题,特别是关于隐藏层及其神经元的问题。答案给出了一个通用公式,它为网络产生了一个非最佳但良好的起点。
Nh = (Ns)/(a * (Ni + No))
其中:
Ni = number of input neurons.
No = number of output neurons.
Ns = number of samples in training data set.
a = an arbitrary scaling factor usually 2-10.
那么,如果我有8个输入,8个输出(回归模式)和3700万个示例的训练集,这意味着什么呢?插入比例因子为10的数字超过230,000个隐藏神经元,减少该比例因子只会导致它上升。当然这太多了?
为了澄清,训练集是股票市场烛台数据,我正在尝试训练网络,以预测下一个蜡烛在给定当前蜡烛的情况下可能会是什么样子(也可能是之前几个蜡烛)。我计划使用反向传播,我知道这是非常耗费资源的,所以我肯定不需要隐藏层中的数十万个神经元来使网络有效,是吗?