Я использую TensorFlow для создания модели глубокого обучения. И новый для TensorFlow.Как обновить параметры модели с накопленными градиентами?
По какой-то причине моя модель имеет ограниченный размер партии, тогда этот ограниченный размер партии сделает модель высокой дисперсией.
Итак, я хочу использовать некоторый трюк, чтобы сделать размер партии более крупным. Моя идея состоит в том, чтобы сохранить градиенты каждой мини-партии, например 64 мини-пакета, а затем суммировать градиенты вместе, использовать средние градиенты этих 64 мини-партий учебных данных для обновления параметров модели.
Это означает, что для первых 63 мини-пакетов не обновляйте параметры, а после 64-разрядной партии обновите параметры модели только один раз.
Но поскольку TensorFlow основан на графике, кто-нибудь знает, как реализовать эту функцию?
Большое спасибо.
Является [оптимизатором синхронизации реплик] (https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/training/sync_replicas_optimizer.py), что вы ищете? –
Кажется, я мог бы сохранить все средние градиенты, а затем вычислить среднее значение градиентов, а затем обновить параметры модели. – weixsong
Оптимизатор синхронизации реплик, похоже, работает для нескольких параллельных тренировок с графическим процессором. Я посмотрю, посмотрим, смогу ли я использовать его. – weixsong