表示张量流中的时间序列输入/输出

时间:2016-09-18 01:39:55

标签: python tensorflow

我一直在使用TensorFlow文档(仍在学习),我无法弄清楚如何表示输入/输出序列数据。我的输入是20个8项矢量的序列,形成8x20xN矩阵,其中N是实例数。我希望最终通过LSTM传递这些序列以进行序列学习。我知道我需要一个3D矢量,但我不确定哪个尺寸是哪个。

指向正确文档的RTFM非常感谢。我觉得这很明显,我只是错过了它。

1 个答案:

答案 0 :(得分:1)

WildML的优秀博客文章所述,正确的方法是使用格式tf.SequenceExample()将您的示例保存在TFRecord中。使用TFRecords可以提供以下优势:

  • 您可以将数据拆分为多个文件,然后将它们分别加载到不同的GPU上。
  • 您可以使用Tensorflow实用程序加载数据(例如使用Queues按需加载数据。
  • 您的模型代码将与您的数据集处理分开(这是一个好习惯)。
  • 只需将新数据放入此格式即可将新数据添加到模型中。

TFRecords使用protobuf或协议缓冲区作为格式化数据的方式。可以找到其文档here。基本思路是你有一个数据格式(在这种情况下,格式为tf.SequenceExample)将它保存到TFRecord并使用相同的数据定义加载它。可以在this ipython notebook上找到此模式的代码。

由于我的回答主要是总结关于此主题的WildML博客文章,我建议您检查一下,再次找到here