tf.Variable和tensor的區別(轉)


刷課過程中思考到Variable和Tensor之間的區別,嘗試發現在如下代碼中: a = tf.Variable(tf.ones(1)) b = tf.add(a,tf.ones(1)) 1 2 a是Variable,而b是Tensor。發現自己對Variable和Tensor之間的區分了解不多,所以搜索了一下,記錄自己的思考,歡迎指教。 Variable是可更改的(mutable),而Tensor是不可更改的。一個直接的例子就是Tensor不具有assign函數,而Variable含有。 python和其他語言的API以及實現方式存在差異,本文只探討general以及python方面的內容。 Variable用於存儲網絡中的權重矩陣等變量,而Tensor更多的是中間結果等。 Variable是會顯示分配內存空間的(既可以是內存,也可以是顯存),需要初始化操作(assign一個tensor),由Session管理,可以進行存儲、讀取、更改等操作。相反地,諸如Const, Zeros等操作創造的Tensor,是記錄在Graph中,所以沒有單獨的內存空間;而其他未知的由其他Tensor操作得來的Tensor則是只會在程序運行中間出現。 Tensor可以使用的地方,幾乎都可以使用Variable。 參考資料: https://stackoverflow.com/questions/37849322/how-to-understand-the-term-tensor-in-tensorflow https://stackoverflow.com/questions/40866675/implementation-difference-between-tensorflow-variable-and-tensorflow-tensor https://stackoverflow.com/questions/38556078/in-tensorflow-what-is-the-difference-between-a-variable-and-a-tensor https://www.tensorflow.org/programmers_guide/variables https://www.tensorflow.org/api_docs/python/tf/Variable --------------------- 作者:silent56_th 來源:CSDN 原文:https://blog.csdn.net/silent56_th/article/details/75577974?utm_source=copy 版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM