2016-03-03 4 views
1

Here - очень хороший учебник по обучению последовательно-последовательной модели в TensorFlow. Мне просто интересно узнать, есть ли распределенная версия , которая использует набор графических процессоров на одной машине для лучшей производительности?Распределенная (многоуровневая) реализация последовательностей-последовательностей в TensorFlow?

TensorFlow white paper было отмечено, что можно обучать большое многослойную рекуррентную нейронную сеть (см Рисунок 8 и «параллельное обучение модель» раздел), используемый в Sequence to Sequence Learning with Neural Networks. Кто-нибудь знает, будет ли текущий учебник охватывать параллельную тренировку модели? Если нет, как улучшить исходный учебник, чтобы использовать набор графических процессоров?

ответ

1

Этот пример описывает Multi-GPU обучение https://www.tensorflow.org/versions/r0.11/tutorials/deep_cnn/index.html#training-a-model-using-multiple-gpu-cards

В основном использовать несколько GPU, вы должны использовать tensorflow встроен в области видимости явно указать, какие устройства для запуска на. Вы можете запустить кучу графических процессоров параллельно, а затем использовать некоторое устройство для подведения итогов. Это связано с большим количеством обзора тензорного потока, которое должно быть явно сделано. Таким образом, чтобы использовать графический процессор 0, вы могли бы иметь вызов, похожее на это:

 with tf.device("/gpu:0"): 
      #do your calculations 

, а затем где-нибудь еще в вашем коде, вы должны сделать шаг синхронизации:

 with tf.device(aggregation_device): 
      #make your updates 

Ссылка объясняет это довольно хорошо, но надеюсь, это может получить вы начали