您好,登錄后才能下訂單哦!
這篇文章給大家介紹Tensorflow中執行順序和控制依賴的關系是什么,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
Tensorflow不會立即運行已定義的操作,而是會在圖形中創建相應的節點,并使用Session.run()方法對其進行計算。這使的Tensorflow在運行時可以進行優化,確定以最佳的執行順序并盡可能修剪未使用的節點。如下例子,這里我們創建3個張量,兩個常量張量和另一個存儲加法結果的張量。在這里我們是不能覆蓋張量的值,如果要修改張量值,我們必須創建一個新的張量然后再賦值給它。運行結果是3。
注意:如果圖中只有tf.Tensors,我們是不需要擔心依賴關系的,但是我們有可能會用到tf.Variables,tf.Variables會讓依賴關系變得更加復雜。所以我們盡量使用張量,只有張量不能工作時才讓Variables來做。
與張量不同,變量是可更新的。如何我們使用變量來做上面同樣的事情
張量c在這里會出現不確定性值,這個值可能是3或7,取決于相加操作和賦值操作哪個先執行。
在代碼中定義的操作順序與Tensorflow運行是無關的。唯一需要關注的是控制依賴關系。張量的控制依賴性很簡單,每次在一個操作中使用張量時,該操作都會定義該張量的隱式依賴關系。當處理變量時,需要使用tf.control_dependencies()按如下方式顯式定義依賴關系。
關于Tensorflow中執行順序和控制依賴的關系是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。