Куда вы помещаете политику «mixed_precision» в моделях Keras в большой библиотеке с множеством файлов? - PullRequest
1 голос
/ 04 августа 2020

Используя Tensorflow 2.3, у меня есть модель keras с определениями функций, которые охватывают более десятка файлов. Есть один главный файл, который запускает все и выполняет настройку, но, конечно, каждый файл имеет свои собственные операторы импорта. Модель построена в build.py, скомпилирована в compile.py, а затем запускается из master.py. Я знаю, что если я хочу тренироваться со смешанной точностью, мне нужно выполнить следующее (или более длинный / короткий вариант) перед компиляцией:

from tensorflow.keras.mixed_precision import experimental as mixed_precision
policy = mixed_precision.Policy('mixed_float16')
mixed_precision.set_policy(policy)

Мой вопрос: нужно ли мне декларировать это только в файл master.py, файл, в котором модель определена (build.py), скомпилирована (compiled.py) или все файлы, которые имеют какое-либо отношение к определению модели?

1 Ответ

1 голос
/ 04 августа 2020

Вы захотите установить политику смешанной точности внутри файла, в котором строится модель, в данном случае это build.py. Причина в том, что тип данных уровня по умолчанию будет определяться из глобальной политики. Обратите внимание, что это происходит во время создания слоя. Если ваш build.py содержит функцию, которая возвращает модель, вы можете сделать как раньше или установить глобальную политику в файле, в котором вы вызываете функцию для построения модели (master.py).

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