Как использовать модель керас внутри другой модели в ТПУ - PullRequest
0 голосов
/ 18 февраля 2019

Я пытаюсь преобразовать модель keras в модель ТПУ в Google Colab, но внутри этой модели есть другая модель.

Взгляните на код: https://colab.research.google.com/drive/1EmIrheKnrNYNNHPp0J7EBjw2WjsPXFVJ

Этомодифицированная версия одного из примеров в документации Google TPU: https://colab.research.google.com/github/tensorflow/tpu/blob/master/tools/colab/fashion_mnist.ipynb

Если sub_model конвертируется и используется напрямую, он работает, но если подмодель находится внутри другой модели, она не работает.Мне нужна сеть подмоделей типа, потому что я пытаюсь обучить сеть GAN, в которой есть 2 сети (gan = generator + дискриминатор), поэтому, если этот тест работает, вероятно, он будет работать и с gan.

Iперепробовал несколько вещей:

  • Конвертировать в tpu модель без преобразования подмодели, в этом случае, когда начинается обучение, выдается сообщение об ошибке, связанное со входами подмодели.
  • Преобразуйте модель и подмодель в tpu, в этом случае при преобразовании «родительской» модели выдается ошибка, исключение говорит только в конце «слои».
  • Преобразование только подмодели в tpu,в этом случае ошибка не выдается, но процессинг не ускоряет процесс обучения, и он очень медленный, как если бы вообще не было выполнено преобразование в процессор.
  • Использование фиксированного размера пакета или нет, оба имеют одинаковый результат, модель не работает.

Есть идеи?Большое спасибо.

...