我写信是为了询问如何将大型训练数据提供给张量流模型的原理。我的训练数据托管在csv文件中,基本上我使用下面的代码在队列中加载数据。
filename_queue = tf.train.string_input_producer([...])
reader = tf.TextLineReader()
_, line = reader.read(filename_queue)
line = tf.decode_csv(line, record_defaults=default)
label_batch, feature_batch = tf.train.shuffle_batch([label, feature], batch_size=batch_size, capacity=512, min_after_dequeue=256, num_threads=8)
我的实验如下:
我认为在#2中将数据加载到队列中是瓶颈,但我已经使用8个线程来加载数据。虽然训练数据中的样本与224 * 224 * 3的功能一样大,但我认为只需将其中的512个加载到16GB内存中就应该这么慢。
任何人都可以点亮它吗?接下来我该怎么办?将csv转换为二进制?