2017-06-15 5 views
1

私はresnet50を微調整することによってイメージ回帰(4つのラベル)を行うためにmxnetを使用します。Mxnet lro_labelsのバインドエラーとイメージ回帰のデータ

  1. Iは
  2. シンボルにLinearRegressionOutputとSoftmaxOutputを変更私が代わりにトレーニングACCの()メトリック= mx.metric.MSEを用い数
  3. に画像ラベルを変更しました。

シンボルは最後のレイヤーに似ています。

{ 
"op": "FullyConnected", 
"name": "fc", 
"attr": {"num_hidden": "4"}, 
"inputs": [[430, 0, 0], [431, 0, 0], [432, 0, 0]] 
}, 
{ 
"op": "null", 
"name": "lro_label", 
"inputs": [] 
}, 
{ 
"op": "LinearRegressionOutput", 
"name": "lro", 
"inputs": [[433, 0, 0], [434, 0, 0]] 
} 
], 

しかし、コードを実行すると、simple_bindエラーのようなエラーが発生します。

simple_bindエラー。引数: lro_label:(36) データ:(36、3、227、227) トレースバック(最新の呼び出しの最後): ファイル "finetune.py"、59行、 for_training =真) ファイルで " /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/module/module.py "、行388、バインド内 state_names = self._state_names) ファイル"/usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/module/executor_group.py"、行214、init self.bind_exec(data_shapes、label_shapes 、shared_group) ファイル "/usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/module/executor_group.py"、310行目、bind_exec shared_group) ) ファイル "/ usr/local/lib/p "/ usr/local/bin/mxnet/module/executor_group.py"、行582、_bind_ith_exec shared_buffer = shared_data_arrays、** input_shapes) ファイル "/ usr/local//lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/symbol.py "、1375行目、simple_bind raise RuntimeError( 'simple_bind failed') RuntimeError:simple_bindが失敗しました

エラーが

mod = mx.module.Module(symbol=new_sym, context=ctx, data_names=('data',), label_names=('lro_label',)) 
mod.bind(data_shapes=[('data', (batch_size, 3, 227, 227))], label_shapes=[('lro_label', (batch_size,))], for_training=True) 

入力で起こったと出力が同じではないようですが、私はソフトマックスを使用する場合、そのような問題はありません。 何が起こったのですか?

答えて

1

私は2つの間違った部分だった:

  • num_classは、1の代わりに、分類ラベル
  • lro_labelする必要があります(36)lro_labelする必要があります:(36、1、)
関連する問題