1

我試圖運行使用Mxnet library在python中的this image classification example以及預先訓練的深度學習模型Inception-BN。執行罰球和錯誤在這條線:prob = model.predict(batch)[0]出現錯誤消息:在Python上運行使用Mxnet庫的深度學習圖像分類示例的錯誤

MXNetError: InferShape Error in ch_concat_3c_chconcat: [14:35:56] src/operator/./concat-inl.h:152: Check failed: (dshape[j]) == (tmp[j]) Incorrect shape[2]: (1,320,15,15). (first input shape: (1,576,14,14)) 

我試圖重新下載盜夢空間-BN模型,以確保它是最新的,但它並沒有發揮作用。我懷疑問題可能在線:model = mx.model.FeedForward.load(prefix, num_round, ctx=mx.gpu(), numpy_batch_size=1)我必須更改gpu對於cpu因爲我的服務器沒有配備gpu。儘管如此,這個錯誤似乎並沒有指向這個方向。

任何想法如何解決它?使用cpu而不是gpu是性能較低的問題嗎?

最後這裏是完整的錯誤信息:

--------------------------------------------------------------------------- 
MXNetError        Traceback (most recent call last) 
<ipython-input-7-98e51e4226e1> in <module>() 
     1 # Get prediction probability of 1000 classes from model 
----> 2 prob = model.predict(batch)[0] 
     3 # Argsort, get prediction index from largest prob to lowest 
     4 pred = np.argsort(prob)[::-1] 
     5 # Get top1 label 

/users/CREATE/olb/mxnet/python/mxnet/model.pyc in predict(self, X, num_batch, return_data, reset) 
    589   data_shapes = X.provide_data 
    590   data_names = [x[0] for x in data_shapes] 
--> 591   self._init_predictor(data_shapes) 
    592   batch_size = X.batch_size 
    593   data_arrays = [self._pred_exec.arg_dict[name] for name in data_names] 

/users/CREATE/olb/mxnet/python/mxnet/model.pyc in _init_predictor(self, input_shapes) 
    520   # for now only use the first device 
    521   pred_exec = self.symbol.simple_bind(
--> 522    self.ctx[0], grad_req='null', **dict(input_shapes)) 
    523   pred_exec.copy_params_from(self.arg_params, self.aux_params) 
    524 

/users/CREATE/olb/mxnet/python/mxnet/symbol.pyc in simple_bind(self, ctx, grad_req, type_dict, **kwargs) 
    623   if type_dict is None: 
    624    type_dict = {k: mx_real_t for k in self.list_arguments()} 
--> 625   arg_shapes, _, aux_shapes = self.infer_shape(**kwargs) 
    626   arg_types, _, aux_types = self.infer_type(**type_dict) 
    627   if arg_shapes == None or arg_types == None: 

/users/CREATE/olb/mxnet/python/mxnet/symbol.pyc in infer_shape(self, *args, **kwargs) 
    410    The order is in the same order as list_auxiliary() 
    411   """ 
--> 412   return self._infer_shape_impl(False, *args, **kwargs) 
    413 
    414  def infer_shape_partial(self, *args, **kwargs): 

/users/CREATE/olb/mxnet/python/mxnet/symbol.pyc in _infer_shape_impl(self, partial, *args, **kwargs) 
    470    ctypes.byref(aux_shape_ndim), 
    471    ctypes.byref(aux_shape_data), 
--> 472    ctypes.byref(complete))) 
    473   if complete.value != 0: 
    474    arg_shapes = [ 

/users/CREATE/olb/mxnet/python/mxnet/base.pyc in check_call(ret) 
    75  """ 
    76  if ret != 0: 
---> 77   raise MXNetError(py_str(_LIB.MXGetLastError())) 
    78 
    79 def c_str(string): 

MXNetError: InferShape Error in ch_concat_3c_chconcat: [14:35:56] src/operator/./concat-inl.h:152: Check failed: (dshape[j]) == (tmp[j]) Incorrect shape[2]: (1,320,15,15). (first input shape: (1,576,14,14)) 

回答

1

所提到的筆記本電腦移動到notebooks repository。我今天試圖運行它,並能夠成功運行教程。 該問題出現在舊模型中,因爲界面的變化破壞了向後兼容性。看起來他們已經上傳了新的訓練成熟的BN模型。

發佈此信息如果別人也有這個錯誤,只需下載新的型號here

相關問題