У меня есть обученная модель, сохраненная в папке с 4 основными файлами (.meta, checkpoint, index, .data ...). Я хочу заморозить модель, чтобы сделать прогноз. Я использую метод convert_variables_to_constants, чтобы заморозить график и API набора данных tenorflow в tenorflow-gpu == 1.08. Моя модель нуждается в инициализации итераторов для работы, но когда я использую convert_variables_to_constants (...), я теряю все заполнители и инициализаторы итераторов. Чтобы посмотреть ближе, мой входной конвейер выглядит так:
iterator = tf.data.Iterator.from_structure(dataset.output_types,
dataset.output_shapes)
next_ = iterator.get_next(name='next_')
training_init_op =
iterator.make_initializer(dataset,name='iterator_init_op')
Операция iterator_init_op и заполнители полностью удалены из графика, поэтому я не могу запустить операцию прогнозирования. Функция convert_variables_to_constants только дает мне возможность использовать черный список переменных, но мне нужно сохранить операции и заполнители тоже. Чтобы увидеть, какая операция хранится, я использую следующий код:
for op in graph.get_operations():
print(op.name)
Я думал о создании собственного сценария замораживания, но, возможно, есть еще один более простой способ заставить мой код работать. Я надеюсь, что вы можете помочь мне, спасибо за чтение.