【发布时间】:2017-07-06 11:01:57
【问题描述】:
我编写了一个脚本,使用我用 MxNet 训练的模型对单个输入图像进行分类。为了对传入的图像进行分类,我通过网络将它们前馈。
简而言之,这就是我正在做的事情:
symbol, arg_params, aux_params = mx.model.load_checkpoint('model-prefix', 42)
model = mx.mod.Module(symbol=symbol, context=mx.cpu())
model.bind(data_shapes=[('data', (1, 3, 224, 244))], for_training=False)
model.set_params(arg_params, aux_params)
# ... loading the image & resizing ...
# img is the image to classify as numpy array of shape (3, 244, 244)
Batch = namedtuple('Batch', ['data'])
self._model.forward(Batch(data=[mx.nd.array(img)]))
probabilities = self._model.get_outputs()[0].asnumpy()
print(str(probabilities))
这工作正常,除了我收到以下警告
UserWarning: Data provided by label_shapes don't match names specified by label_names ([] vs. ['softmax_label'])
我应该改变什么以避免收到此警告?我不清楚 label_shapes 和 label_names 参数的用途,以及我期望用什么来填充它们。
注意:我找到了一些关于它们的线程,但没有一个能够让我解决问题。同样,MxNet 文档也没有提供有关这些参数是什么以及应该如何填充它们的详细信息。
【问题讨论】:
标签: python machine-learning computer-vision deep-learning mxnet