国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Tensorflow:.run()和.eval()區別

xiaoqibTn / 1450人閱讀

摘要:下面的兩個代碼片段是等價的在第二個示例中,會話充當上下文管理器,其作用是將其安裝為塊的生命周期的默認會話。上下文管理器方法可以為簡單用例比如單元測試提供更簡潔的代碼如果您的代碼處理多個圖形和會話,則可以更直接地對進行顯式調用。

Tensorflow:.run()和.eval()區別 eval() 其實就是tf.Tensor的Session.run() 的另外一種寫法,但兩者有差別

1.eval(): 將字符串string對象轉化為有效的表達式參與求值運算返回計算結果
2.eval()也是啟動計算的一種方式。基于Tensorflow的基本原理,首先需要定義圖,然后計算圖,其中計算圖的函數常見的有run()函數,如sess.run()。同樣eval()也是此類函數,
3.要注意的是,eval()只能用于tf.Tensor類對象,也就是有輸出的Operation。對于沒有輸出的Operation, 可以用.run()或者Session.run();Session.run()沒有這個限制。

Tensor.run和Tensor.eval的區別

在會話中需要運行節點,會碰到兩種方式:Session.run()和Tensor.eval()

解釋一

1.如果t是一個tf.Tensor對象,則tf.Tensor.eval是tf.Session.run的縮寫(其中sess是當前的tf.get_default_session。下面的兩個代碼片段是等價的:
2.在第二個示例中,會話充當上下文管理器,其作用是將其安裝為with塊的生命周期的默認會話。 上下文管理器方法可以為簡單用例(比如單元測試)提供更簡潔的代碼; 如果您的代碼處理多個圖形和會話,則可以更直接地對Session.run()進行顯式調用。

解釋二

如果你有一個Tensor t,在使用t.eval()時,等價于:tf.get_default_session().run(t).
舉例:

t = tf.constant(42.0)
sess = tf.Session()
with sess.as_default():   # or `with sess:` to close on exit
    assert sess is tf.get_default_session()
    assert t.eval() == sess.run(t)

這其中最主要的區別就在于你可以使用sess.run()在同一步獲取多個tensor中的值,
例如:

t = tf.constant(42.0)
u = tf.constant(37.0)
tu = tf.mul(t, u)
ut = tf.mul(u, t)
with sess.as_default():
   tu.eval()  # runs one step
   ut.eval()  # runs one step
   sess.run([tu, ut])  # evaluates both tensors in a single step

注意到:每次使用 eval 和 run時,都會執行整個計算圖,為了獲取計算的結果,將它分配給tf.Variable,然后獲取。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41846.html

相關文章

  • tensorflow上進行機器學習的“Hello World”:MNIST 手寫識別

    摘要:安裝好了安裝筆記,接下來就在他的官網指導下進行手寫數字識別實驗。實驗過程進入虛擬環境后,首先進入目錄然后進入交互終端。 安裝好了tensorflow(TensorFlow 安裝筆記),接下來就在他的官網指導下進行Mnist手寫數字識別實驗。 softmax 實驗過程 進入tfgpu虛擬環境后,首先進入目錄:/anaconda2/envs/tfgpu/lib/python2.7/site...

    garfileo 評論0 收藏0

發表評論

0條評論

xiaoqibTn

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<