我在tensorflow中训练RNN。使用的功能是" rnn"来自https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/ops/rnn.py。
outputs, states = rnn.rnn(cell, inputs, initial_state=initial_state, sequence_length=seq_length)
我使用此功能的原因是因为我的数据序列长度可变。此函数需要一次加载所有数据。由于我的数据不能同时适应内存,我需要逐个加载数据。关于如何做到的任何指示都将受到高度赞赏。
谢谢
答案 0 :(得分:2)
这里的标准做法是将数据分成几块并一次处理一块。例如,如果您正在使用文本,则可能会将数据分解为句子,并将一小组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
希望有所帮助!