Tensorflow Extended: можно ли использовать цикл обучения pytorch в расширенном потоке Tensorflow

Я обучил модель классификации изображений с помощью pytorch.
Теперь я хочу переместить его из исследования в конвейер производства.
Я думаю об использовании расширенного TensorFlow. У меня нет никаких сомнений в том, что я смогу использовать свою обученную модель PyTorch в расширенном конвейере TensorFlow (я могу преобразовать обученную модель в ONNX, а затем в формат, совместимый с Tensorflow). Я не хочу переписывать и переобучать обучающую часть для TensorFlow, так как это будет большим накладным расходом. Возможно ли это или есть ли лучший способ создать модели, обученные PyTorch?

2 ответа

Вы должны иметь возможность преобразовать свою модель классификации изображений PyTorch в формат Tensorflow с помощью ONNX, если вы используете стандартные слои. Я бы порекомендовал выполнить преобразование, а затем просмотреть сводные данные по обеим моделям, чтобы убедиться, что они относительно похожи. Кроме того, проведите несколько тестов, чтобы убедиться, что преобразованная модель обрабатывает любые конкретные крайние случаи, которые у вас есть. Убедившись, что преобразованная модель работает, сохраните ее как TF. SavedModel формат, а затем вы сможете использовать его в Tensorflow Extended (TFX).

Дополнительные сведения о процессе преобразования см. В этом руководстве: https://learnopencv.com/pytorch-to-tensorflow-model-conversion/

Вы можете рассмотреть возможность использования библиотеки torchX . Я еще не использовал его, но, похоже, он упрощает развертывание моделей путем создания и запуска конвейеров моделей. Я не думаю, что у него есть те же функции проверки данных, что и у Tensorflow Extended, но, возможно, это будет добавлено в будущем.

Другие вопросы по тегам