Как правильно использовать tf-coreml? - PullRequest
0 голосов
/ 13 июня 2019

Я хотел бы преобразовать модель тензорного потока (https://github.com/vanhuyz/CycleGAN-TensorFlow) в модель coreml, чтобы иметь возможность импортировать ее на iOS.

Я знаю, что для выполнения преобразования достаточно использоватьэтот кусок кода:

import tfcoreml as tf_converter

tf_converter.convert(tf_model_path = 'my_model.pb', 
                     mlmodel_path = 'my_model.mlmodel', 
                     output_feature_names = ['softmax:0'])

Но я понятия не имею, что добавить в третий параметр "output_feature_names". Какая-нибудь идея?

1 Ответ

0 голосов
/ 14 июня 2019

Если вы откроете файл .pb с помощью Netron и прокрутите его до конца, вы увидите, что последним слоем является EncodeJpeg, и поэтому имя выходного объекта будет EncodeJpeg:0.

Однако в Core ML нет операции «закодировать JPEG», поэтому вы не можете преобразовать весь график. Вам нужно будет найти последний тензор, который Core ML по-прежнему поддерживает.

Я бы попробовал output_feature_names=["G_7/output/Tanh:0"], но вполне возможно, что на графике есть и другие вещи, которые невозможно преобразовать.

...