Тензор потока обучить сеть и сохранить как функцию - PullRequest
0 голосов
/ 12 июля 2019

Я хочу обучить сеть, а затем использовать эту сеть в качестве экстрактора функций; поэтому я хочу сохранить это как функцию.

Я знаю, как сохранить обученную модель и повторно использовать модель I, но я хочу использовать эту обученную модель как часть моего нового графика, как функцию, см. Структуру ниже.

Наверное, мне нужно добавить новый граф к графу старой модели и зафиксировать параметры старой модели. Кто-нибудь может дать мне несколько идей о том, как это сделать? Спасибо.

# define a graph and train a model called mdl in a session
# this mdl will be fixed used in the new graph 

# start a new graph
cae_in = tf.placeholder(tf.float32,(None,a,b,1))
cae_out = tf.placeholder(tf.float32,(None,a,b,1))

# use this model to process my input
loss = mdl(cae_in) - cae_out


with tf.Session() as sess:
  # run this sess

1 Ответ

0 голосов
/ 13 июля 2019

Я думаю, что может выполнить следующие шаги:

  • Вы, вероятно, можете создать модель TF или Keras с необходимыми слоями и гиперпараметрами.Я настаиваю на использовании TF Keras, поскольку он может сохранить модель в виде отдельного файла .h5.

  • После сохранения модели создайте новый класс с именем mdl или дажеметод.

  • Загрузите модель в этом методе и подайте входные данные (заданные в качестве аргументов метода) в модель.

  • Makeвывод, обработать и изменить его, а затем вернуть результат из метода.

Следовательно, вы можете инкапсулировать модель в метод или класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...