如何获得3D convnet对空间数据进行分类?

时间:2018-08-07 20:15:31

标签: python conv-neural-network mxnet

我正在尝试使用3D空间数据训练3D卷积神经网络。网络训练正常,但是当我检查其准确性时,出现以下错误:ValueError:标签的形状与预测的形状1不匹配1.我不知道为什么标签的形状为64(我的batch_size),而不仅仅是一个单一分类。我已经附加了我的代码(从mxnet 2d convnet教程中进行了稍微的修改)。如何修复网络的输出?

sqs.sendMessage()

1 个答案:

答案 0 :(得分:0)

标签的形状应为批量大小。因为您的批量大小决定了每个正向传递通过网络的数据量。您的预测形状也应该是您的批量大小。该错误似乎来自nd.argmax调用,我认为该调用正在所有数据点上而不是每个数据点上计算argmax。

您应明确指定要在其上执行argmax操作的轴,即将eval_accuracy函数中的代码更改为:

predictions = nd.argmax(output, axis=1)
label = label.reshape(predictions.shape)
acc.update(preds=predictions, labels=label)