2017-06-19 16 views
3

我有興趣在Tensorflow中實現遞歸神經網絡,就像在How can I implement a recursive neural network in TensorFlow?中所做的一樣。當並行執行時,Tensorflow的tf.while_loop是否自動捕獲依賴關係?

但是,在他的實施中,tf.while_loop聲明的parallel_iterations被固定爲1.我擔心這可能太慢。由於我要進入張量流的樹有一些不相互依賴的部分,我希望我可以將parallel_iterations設置爲更高的值。然而,在我作爲tensorflow輸入的樹中需要一些所需的依賴關係是不可避免的,我擔心將它設置爲更高的值可能會破壞依賴屬性。

所以我的問題是,如果Tensorflow的tf.while_loop已經自動捕獲了依賴關係,爲了只在並行上使用不相互依賴的並行性?

的tensorflow文檔說以下內容:

對於正確的程序,while_loop應該返回相同的結果對於任何 parallel_iterations> 0

但我不知道他們所說的「正確的節目「。

回答

-1

你可以。

根據本issue,OPS將並行運行一次所有它們的輸入節點被計算:

while_loop實現非嚴格語義。一旦這個迭代的一個操作就緒(即,它的所有輸入都可用),迭代就可以開始執行。因此,while_loop可以輕鬆地並行運行多個迭代。例如,對於掃描,即使累計值在一個步驟中不可用,該步驟仍然可以啓動並執行任何不依賴於累計值的操作。

所以你不應該遇到任何問題。

+0

儘管此鏈接可能會回答問題,但最好在此處包含答案的重要部分並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 - [來自評論](/ review/low-quality-posts/17937859) – the4kman

+0

@ the4kman肯定 - 修正。 – guy

相關問題