2017-01-02 5 views
1

Я использую TensorFlow для машинного обучения на Ogg и MIDI-данных, но в PMP (с feed_dict: s) выполняется много предварительной обработки, и я хотел бы как можно больше перенести как можно больше на вычислительный граф в чтобы упростить производственное развертывание (Google Cloud ML или, возможно, самообслуживание TensorFlow). Как я могу это сделать? Существуют ли способы автоматического преобразования NumPy в TensorFlow?Как перенести обработку NumPy в граф TensorFlow?

+2

Возможно, 'tf.py_func' полезен для вас –

+3

. Чтобы сделать это, перейдите по [API] (https://www.tensorflow.org/api_docs/python/) и найдите подходящий вариант TensorFlow для каждый вызов numpy. Нет автоматического способа сделать это, но иногда API-интерфейсы тесно связаны (т. Е. Широковещательные, арифметические операции). –

+0

Операция tf.py_func() имеет следующие известные ограничения: Тело функции не будет сериализовано в GraphDef , Поэтому вам не следует использовать эту функцию, если вам необходимо сериализовать вашу модель и восстановить ее в другой среде. [[Ссылка]] (https://www.tensorflow.org/api_docs/python/script_ops/script_language_operators_#py_func) –

ответ

0

Большинство функций Numpy имеют эквивалент TensorFlow, задокументированный в array_ops. Для более математических операций взгляните на math_ops.

И, наконец, если у вас есть более конкретные запросы или вы не можете преобразовать какой-либо код в программу TensorFlow, вы всегда должны искать StackOverflow Q/A или задавать здесь вопрос. (Посмотрите на this для хорошего примера такого вопроса).


Unrelated - Если вы столкнулись с трудностями выполнения некоторых манипуляций матрицы, попытаться взглянуть на существующую Numpy Q/A на StackOverflow. Они могут быть легко применены к TensorFlow с использованием вышеприведенных API.

+0

Вручную портирование кода с одного API на другой кажется довольно плохим (и очевидным) решением. Разумеется, в конце концов появится какой-нибудь инструмент для перевода из NumPy в TensorFlow? В противном случае я мог бы на самом деле задуматься о создании такого компилятора. –

+0

@ CarlThomé, многое зависит от того, что вы хотите оставить как «тензоры» и того, что вы хотите кэшировать как «переменные». Функции Tensorflow на самом деле не эквивалентны Numpy, но они будут в некоторых случаях. В любом случае, вы можете написать свой собственный ответ здесь – martianwars

Смежные вопросы