Я нахожусь на Tensorflow 1.10
Сейчас я не уверен, что это ошибка.
Я пытался объединить около 100 наборов данных, сгенерированных из нескольких tf.data.Dataset.from_generator.
for i in range(1, 100):
dataset = dataset.concatenate(
tf.data.Dataset.from_generator(gens[i], (tf.int8, tf.int32), output_shapes=(
(256, 256), (1))))
print(i)
print("before iterator")
iterator = dataset.make_one_shot_iterator()
print("after iterator")
запуск make_one_shot_iterator()
занимает очень много времени.
Кто-нибудь знает исправление?
EDIT:
Похоже, что _make_dataset.add_to_graph(ops.get_default_graph())
кажется, вызывается снова и снова, что приводит к нескольким миллионам вызовов функции.
(https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/data/ops/dataset_ops.py функция make_one_shot_iterator строка 162)