2016-03-03 22 views
1

Here是在TensorFlow中訓練序列到序列模型的非常好的教程。我只是有興趣知道是否有分佈式版本哪些槓桿一套GPU在單臺機器獲得更好的性能?TensorFlow中的序列到序列模型的分佈式(多設備)實現?

TensorFlow white paper已經提到,它是可能的培養大量多層迴歸神經網絡(參見圖8和「模型平行訓練」部分),如Sequence to Sequence Learning with Neural Networks使用。有人知道目前的教程是否涵蓋了模型並行訓練? 如果不是,如何改進原始教程以利用一組GPU?

回答

1

這個例子包括多GPU訓練https://www.tensorflow.org/versions/r0.11/tutorials/deep_cnn/index.html#training-a-model-using-multiple-gpu-cards

基本上使用多個GPU的,你必須使用tensorflow內置的範圍界定明確地告訴它運行在其上的設備。你可以有一堆GPU並行運行,然後使用一些設備來總結結果。這涉及大量的張量流量範圍,必須明確完成。因此,要利用GPU 0,你可以有一個類似的電話:

 with tf.device("/gpu:0"): 
      #do your calculations 
在你的代碼

,然後在其他地方你有一個同步步驟:

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

的鏈接解釋了這個相當好,但希望這可以讓你開始