为了账号安全,请及时绑定邮箱和手机立即绑定

CNTK Python API:加载模型后访问图层

CNTK Python API:加载模型后访问图层

一只斗牛犬 2022-03-09 20:21:39
加载模型后我无法访问图层。我创建的模型如下:def create_model(vocab_dim, hidden_dim):    input_seq_axis1 = Axis('inputAxis1')    input_sequence_before = sequence.input_variable(shape=vocab_dim, sequence_axis=input_seq_axis1, is_sparse = use_sparse)    input_sequence_after = sequence.input_variable(shape=vocab_dim, sequence_axis=input_seq_axis1, is_sparse = use_sparse)    e=Sequential([        C.layers.Embedding(hidden_dim),        Stabilizer()        ],name='Embedding')    a = Sequential([        e,          C.layers.Recurrence(C.layers.LSTM(hidden_dim//2),name='ForwardRecurrence'),        ],name='ForwardLayer')    b = Sequential([        e,          C.layers.Recurrence(C.layers.LSTM(hidden_dim//2),go_backwards=True),       ],name='BackwardLayer')    latent_vector = C.splice(a(input_sequence_before), b(input_sequence_after))    bias = C.layers.Parameter(shape = (vocab_dim, 1), init = 0, name='Bias')    weights = C.layers.Parameter(shape = (vocab_dim, hidden_dim), init = C.initializer.glorot_uniform(), name='Weights')    z = C.times_transpose(weights, latent_vector,name='Transpose') + bias    z = C.reshape(z, shape = (vocab_dim))    return z然后我加载模型:def load_my_model(vocab_dim, hidden_dim):    z=load_model("models/lm_epoch0.dnn")    input_sequence_before = z.arguments[0]    input_sequence_after = z.arguments[1]    a=z.ForwardLayer    b=z.BackwardLayer    latent_vector = C.splice(a(input_sequence_before), b(input_sequence_after))我收到一个错误:TypeError("argument ForwardRecurrence 的类型 SequenceOver[inputAxis1][Tensor[100]] 与传递的变量的类型 SequenceOver[inputAxis1][SparseTensor[50000]] 不兼容",)看起来名称引用的层 (z.ForwardLayer) 表示来自层立即输入的函数。如何计算“latent_vector”(我需要这个变量来创建交叉熵和损失函数以继续训练)?
查看完整描述

1 回答

?
HUWWW

TA贡献1874条经验 获得超12个赞

根据错误,与 ForwardLayer 的预期 (100) 相比,您的输入 seq 的尺寸太大 (5000)。

当您通过 选择节点 ForwardLayer 时z.ForwardLayer,您只能选择那个非常特定的节点/层,而不是与其连接的计算图的层/节点/其余部分。

你应该这样做a = C.combine([z.ForwardLayer.owner]),你应该没事。


查看完整回答
反对 回复 2022-03-09
  • 1 回答
  • 0 关注
  • 118 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号