我有一个简单的神经网络,无论输入如何,它都输出相同的值。在训练期间,它表现正常,训练和验证损失减少到最低值。
数据范围为 [-1000, +1000]。该模型是一维卷积网络。如果有用:
train_loss = lcategorical_crossentropy(...).mean()
net = InputLayer((None, net_z, net_x), input_var=input_var)
net = ConvLayer(net, 16, 9, pad='same' )#, flip_filters=False)
net = ConvLayer(net, 16, 9, pad='same')#, flip_filters=False)
net = DenseLayer(net, num_units=32)
net = DropoutLayer(net, p=0.5)
net = DenseLayer(net, num_units=2, nonlinearity=None)
net = NonlinearityLayer(net, softmax)
这已通过标准化[-1, 1] 中的数据得到纠正
这背后的原因是什么?我猜反向传播被卡住了,但是我在哪里可以深入了解呢?