【问题标题】:Tensorflow: Split a placeholder BEFORE input has been fed?Tensorflow:在输入输入之前拆分占位符?
【发布时间】:2016-03-07 16:38:00
【问题描述】:

我的模型通过提要接收输入序列,然后必须通过模型内的定界符分割该序列。然而,由于 Tensorflow 的图表要求我们事先放置占位符,我不知道如何进行这项工作。问题是在我实际输入输入之前,我不知道输入序列将被分成多少块。

有没有办法创建一个可以处理模型中张量数量和形状变化的模型?

【问题讨论】:

  • 可以通过队列更改号码。改变形状更难——队列缓冲区的空间是提前分配的,所以它需要知道你的张量有多大。也许使用队列并将您的输入填充到相同的形状?

标签: tensorflow


【解决方案1】:

您是否尝试使用 RNN?如果是这样,请使用 parse_single_sequence_example 读取数据,结合 PaddingFIFOQueue 和 dynamic_rnn 在其上运行 RNN。您必须将数据存储为 tensorflow.SequenceExample 原型。或者,您需要一个 TF 操作来读取字符串、以逗号分隔并输出值的向量张量。

【讨论】:

  • 感谢您的帮助,尤金。我不清楚的一件事:只要我的批量大小为 1,我还能使用常规 rnn(而不是 dynamic_rnn)吗?
  • 如果您的序列长度因示例而异,则不会。也就是说,dynamic_rnn 与常规 rnn 一样快,并且使用更少的内存;我们正在考虑在这一点上弃用 rnn() 函数。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-24
  • 2017-01-02
  • 1970-01-01
  • 2023-03-08
  • 2013-01-12
  • 2021-11-20
相关资源
最近更新 更多