【问题标题】:Dimension error in LSTM Tensorflow, how to proceed?LSTM Tensorflow中的尺寸错误,如何进行?
【发布时间】:2017-02-05 14:43:41
【问题描述】:

我有一个句子形式为:

P ∈ d×P

地点:

  • d 是词嵌入的维度。
  • P 没有。句子中的标记。

我正在尝试使用 LSTM 获取 P 的隐藏表示

H ∈ l×P

地点:

  • l 是隐藏向量的维数

我尝试了以下

H_para = tf.placeholder('int32', shape=[N, P ], name='para')

嵌入维度为 [A, V ] 和 BasicLSTMCell(l) l 的张量是隐藏单元。

我收到尺寸错误:

with tf.variable_scope('Para'):
    para_list = tf.unpack(tf.transpose(H_para))
    para_embed = [tf.nn.embedding_lookup(embedding, w) for w in para_list]
    Para, para_state = tf.nn.dynamic_rnn(cell, para_embed,dtype = tf.float32) 

请给点建议。

【问题讨论】:

  • 您能否发布 (1) 最小复制(即任何人都可以运行的 sn-p)和 (2) 实际错误消息和堆栈跟踪?
  • 我想我已经解决了这个问题。@AllenLavoie

标签: python tensorflow lstm


【解决方案1】:

您的编译器可能会抱怨变量的可见性范围。如您所见,“para_”被添加到您引用的错误报告中的变量名称中。这很可能不是您想要的。

如果您提供完整的错误消息和代码的最小(非)工作示例,我可能会告诉您更多信息。

【讨论】:

  • 你好@Szczypawka 这与范围无关。实际上 tf.nn.rnn 工作正常,但 tf.nn.dynamic_rnn 它给出了一个错误。如果您想更改变量/范围名称,我对此没有问题。
猜你喜欢
  • 2016-03-09
  • 2018-09-18
  • 1970-01-01
  • 2018-09-18
  • 2021-10-17
  • 1970-01-01
  • 2019-06-05
  • 1970-01-01
  • 2021-06-04
相关资源
最近更新 更多