我正在构建一个多层神经网络。我对于训练过程有疑问,我有一组带有期望输出的训练数据。我使用反向传播算法来更新连接权重。
网络应该分别训练训练数据吗?例如:网络接受一个输入,每当它找到合适的连接权重使得实际输出等于期望输出时,网络再接受另一个训练输入。
这是正确的吗?
回答:
不,无论实际输出是否等于目标输出,反向传播算法都应该移动到训练集的下一个元素。然后,在经过一定数量的训练案例后,它会更新权重/参数,这由指定的批次大小决定。并且,对于每一个经过的训练迭代,平均总误差通常应该比前一次迭代低。