使用大型数据集训练 tensorflow RNN

Training tensorflow RNN with large datasets

我正在 tensorflow 中训练 RNN。使用的函数是 https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/ops/rnn.py 中的 "rnn"。

outputs, states = rnn.rnn(cell, inputs, initial_state=initial_state, sequence_length=seq_length)

我使用这个函数的原因是因为我的数据序列是可变长度的。此函数需要一次加载所有数据。由于我的数据不能一次全部装入内存,因此我需要逐条加载数据。任何有关如何完成的指示都将不胜感激。

谢谢

这里的标准做法是将数据分成块,一次处理一个块。例如,如果您正在处理文本,您可以将数据分解为句子,并将 10s-100s 句子的小批量一次一个地传递给训练过程。

有关如何执行此操作的示例,请查看此 RNN 教程。

https://www.tensorflow.org/versions/r0.9/tutorials/recurrent/index.html

教程文本本身并未详细描述分块,但请查看 github 中的相关代码,了解它如何加载输入数据并对其进行批处理以进行训练。

https://github.com/tensorflow/tensorflow/tree/master/tensorflow/models/rnn/ptb

希望对您有所帮助!