'这'函数与从CNTK中的检查点恢复的函数不等效(同构)

时间:2017-01-21 19:34:24

标签: python restore cntk

我在CNTK中调用trainer.restore_from_checkpoint时遇到以下异常。

  

'这'函数与从检查点恢复的函数不等效(同构)。

我的恢复代码如下所示。这些与创建培训师的结构相同,并按照in this document trainer.dnn trainer.save_checkpoint("trainer.dnn")保存def evaluate(reader, model): criterion = create_criterion_function(model) criterion.replace_placeholders({criterion.placeholders[0]: Input(input_dim), criterion.placeholders[1]: Input(label_dim)}) # training config epoch_size = 34 minibatch_size = 17 # LR schedule over epochs lr_per_sample = [0.003]*4+[0.0015]*24+[0.0003] lr_per_minibatch = [x * minibatch_size for x in lr_per_sample] lr_schedule = learning_rate_schedule(lr_per_minibatch, UnitType.minibatch, epoch_size) # Momentum momentum_as_time_constant = momentum_as_time_constant_schedule(70) learner = adam_sgd(criterion.parameters, lr=lr_schedule, momentum=momentum_as_time_constant, low_memory=True, gradient_clipping_threshold_per_sample=15, gradient_clipping_with_truncation=True) trainer = Trainer(model, criterion.outputs[0], criterion.outputs[1], learner) trainer.restore_from_checkpoint("trainer.dnn") def do_test(): reader = create_reader('Test.txt', is_training=False) model = create_model() evaluate(reader, model) do_test()

entrypoint: gunicorn -b :$PORT mysite.wsgi:application

1 个答案:

答案 0 :(得分:0)

检查点有两种方式。

  1. 模型检查指向:仅检查模型,然后在恢复模型时创建新的培训师。

  2. 培训师检查指向:检查将保存模型的培训师,以及标准功能。从检查站恢复训练师。

  3. 此错误可能是因为您将标准函数传递给培训师,然后从具有不同功能的先前检查点进行恢复。

    一些相关代码here