Store/Reload CNTK 训练器、模型、输入、输出

Store/Reload CNTK Trainer, Model, Inputs, Outputs

存放训练器和所有必要组件的最佳方式是什么?

1.存储:

2。重新加载:

我现在如何恢复训练器使用的误差函数中的标签输入?在下面的代码中,我标记了我认为存储后必须恢复的变量。

z = C.layers.Dense(.... )
loss = error = C.squared_error(z, **l**)
**trainer** = C.Trainer(**z**, (loss, error), [mylearner], my_tensorboard_writer)

您可以恢复您的训练器,但实际上我更喜欢只加载我的模型 m。原因很简单,创建一个全新的训练器要容易得多,因为这样你就可以更容易地改变训练器的所有其他参数。 然后你可以从加载的模型中获取输入变量(如果你的网络只有一个输入):

input_var = m.arguments[0]

那么您需要模型的输出:

output = m(input_var)

并使用目标输出定义损失函数 target_output:

C.squared_error(output, target_output)

使用您的模型和损失函数,您可以从那里重新创建您的训练器,根据需要设置学习率等