2017-09-25 3 views
0

Je publie également cette question dans le repository.MXnet: Erreur lors de la formation continue d'un modèle chargé à partir du fichier

J'essaie de charger un modèle précédemment enregistré dans des fichiers suivant le tutoriel here. J'utilise exactement la même commande comme indiqué dans le tutoriel, mais je rencontre avec le message d'erreur suivant:

Traceback (most recent call last): 
    File "test.py", line 153, in <module> 
    num_epoch=num_epoch) 
    File "/home/mypath/software/try_mxnet2/mxnet/python/mxnet/module/base_module.py", line 496, in fit 
    self.update_metric(eval_metric, data_batch.label) 
    File "/home/mypath/software/try_mxnet2/mxnet/python/mxnet/module/module.py", line 735, in update_metric 
    self._exec_group.update_metric(eval_metric, labels) 
    File "/home/mypath/software/try_mxnet2/mxnet/python/mxnet/module/executor_group.py", line 567, in update_metric 
    for label, axis in zip(labels, self.label_layouts): 
TypeError: zip argument #2 must support iteration 

Le code de chargement et de recyclage des fichiers est la suivante:

sym, arg_params, aux_params = mx.model.load_checkpoint('../model/test_mymodel', 25) 
lenet_model = mx.mod.Module(symbol=sym, context=mx.gpu(), label_names=None) 

lenet_model.bind(for_training=True, data_shapes=[('data', (batch_size,3,16,16))], 
     label_shapes=lenet_model._label_shapes) 
lenet_model.set_params(arg_params, aux_params, allow_missing=True) 
lenet_model.fit(train_iter, 
       optimizer='adam', 
       optimizer_params={'learning_rate':0.001,'wd':0.0005}, 
       eval_metric='acc', 
       batch_end_callback = mx.callback.Speedometer(batch_size, n_report), 
       epoch_end_callback = mx.callback.do_checkpoint("../model/test_mymodel", 5), 
       num_epoch=num_epoch) 

Comme je l'ai testé, lorsque je commente la ligne lenet_model.fit(...), aucune erreur n'est signalée. Il semble que le modèle chargé ne puisse pas être entraîné en continu, ou qu'il y ait quelque chose qui ne va pas avec mon code.

Je suis impatient de solutions aimables. Merci!

+0

Cela vous ennuie de partager le fichier /model/test_mymodel.py? – rgaut

+0

@rgaut. Il n'y a pas de fichier 'test_mymodel.py'. Le 'test_mymodel' est le préfixe des fichiers du modèle. C'est quelque chose comme 'test_mymodel-0000.params'. – pfc

+0

Est-il possible de le reproduire localement? – rgaut

Répondre