tf.train.string_input_producer() 中的参数 "capacity" 是什么

what is the argument "capacity" for in tf.train.string_input_producer()

函数 tf.train.string_input_producer(string_tensor, num_epochs=None, shuffle=True, seed=None, capacity=32, shared_name=None, name=None)capacity 参数对我来说相当模糊。

这里设置参数capacity是什么意思,跟参数长度string_tensor有关系吗? 一个例子会很棒。 非常感谢。

容量是队列的大小,因此在您的示例中,队列运行器默认最多可以将 32 个字符串排入队列

string_input_producer 的容量是队列在任何给定时间可以容纳的最大元素数。您应该将数字设置得足够高,这样您的模型就不会因数据不足而饿死。但是如果你将它设置得太高,队列会消耗太多内存。

最佳数字因型号而异,您可以通过反复试验找到它。从一个相当小的数字开始,然后检查队列为空的频率。增加缓冲区直到看不到空队列。