将 cntk 模型 v1 转换为 cntk 模型 v2

Convert cntk model v1 to cntk model v2

我已经使用 cntk 大脑脚本训练了一个模型。然后我需要在 python 中使用我的模型。问题是使用 brainscript 保存的模型是 v1 模型,并且保存了输入节点和输出节点。另一方面,cntkpythonapi中使用的模型是v2模型

有没有办法将 v1 模型转换为 v2 模型格式?

如果没有,有没有办法从版本一格式中删除输入和输出节点,以便我可以直接将特征传递到模型中的第一层,如下所示:

mode= load_model("cntk_v1.model")
model = mode.clone(method = 'freeze' )
f = cntk.ops.sequence((input_dim))
z = model(f)

是的,有一种方法可以替换您的输入输出节点。

示例代码如下:

new_input = C.input_variable(...)
model = C.load_model(...)
nodes_replacement = {model.arguments[0]: new_input, ANY_NODE_YOU_WANT_REPLACED: NEW_NODE}
new_model = model.clone(C.CloneMethod.clone, nodes_replacement)  # done!