Нативный формат сериализации для графика потоков данных TensorFlow использует protocol buffers, которые имеют привязки на разных языках. Вы можете сгенерировать код, который должен иметь возможность анализировать двоичные данные из двух схем сообщений: tensorflow.GraphDef
(представление более низкого уровня) и tensorflow.MetaGraphDef
(представление более высокого уровня, которое содержит GraphDef
и другую информацию о том, как интерпретировать некоторые из узлов на графике).
Если для вашего целевого языка не существует реализации буфера протокола, вы можете сгенерировать JSON из объекта буфера протокола Python. Например, следующий генерирует строку, содержащую представление JSON из в GraphDef
:
import tensorflow as tf
from google.protobuf import json_format
with tf.Graph().as_default() as graph:
# Add nodes to the graph...
graph_def = graph.as_graph_def()
json_string = json_format.MessageToJson(graph_def)
Не работает для меня, если я не сделал «с tf.Graph() as_default() в графе:» –
Спасибо за коррекция! Я обновил ответ, чтобы его отразить. – mrry
Можете ли вы вернуться назад? JSON в Protobuf? –