當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.compat.v1.Session.run用法及代碼示例


用法

run(
    fetches, feed_dict=None, options=None, run_metadata=None
)

參數

  • fetches 單個圖形元素、圖形元素列表或字典,其值為圖形元素或圖形元素列表(如上所述)。
  • feed_dict 將圖形元素映射到值的字典(如上所述)。
  • options A [RunOptions] 協議緩衝區
  • run_metadata A [RunMetadata] 協議緩衝區

返回

  • 如果 fetches 是單個圖形元素,則為單個值;如果 fetches 是列表,則為值列表;如果是字典,則為具有與 fetches 相同鍵的字典(如上所述)。在調用內部評估 fetches 操作的順序未定義。

拋出

  • RuntimeError 如果此Session 處於無效狀態(例如已關閉)。
  • TypeError 如果 fetchesfeed_dict 鍵的類型不合適。
  • ValueError 如果 fetchesfeed_dict key 無效或引用不存在的 Tensor

fetches 中運行操作並評估張量。

此方法運行 TensorFlow 計算的 "step",通過運行必要的圖形片段來執行每個 Operation 並評估 fetches 中的每個 Tensor,用 feed_dict 中的值替換相應的輸入值。

fetches 參數可以是單個圖形元素,也可以是任意嵌套的列表、元組、命名元組、字典或在其葉子中包含圖形元素的 OrderedDict。圖形元素可以是以下類型之一:

  • 一個tf.Operation。相應的獲取值將是 None
  • 一個tf.Tensor。相應的獲取值將是一個包含該張量值的 numpy ndarray。
  • 一個tf.sparse.SparseTensor。相應的獲取值將是一個tf.compat.v1.SparseTensorValue,其中包含該稀疏張量的值。
  • get_tensor_handle 操作。相應的獲取值將是一個包含該張量句柄的 numpy ndarray。
  • string 是圖中張量或操作的名稱。

run() 返回的值與 fetches 參數具有相同的形狀,其中葉子被 TensorFlow 返回的相應值替換。

例子:

a = tf.constant([10, 20])
   b = tf.constant([1.0, 2.0])
   # 'fetches' can be a singleton
   v = session.run(a)
   # v is the numpy array [10, 20]
   # 'fetches' can be a list.
   v = session.run([a, b])
   # v is a Python list with 2 numpy arrays:the 1-D array [10, 20] and the
   # 1-D array [1.0, 2.0]
   # 'fetches' can be arbitrary lists, tuples, namedtuple, dicts:
   MyData = collections.namedtuple('MyData', ['a', 'b'])
   v = session.run({'k1':MyData(a, b), 'k2':[b, a]})
   # v is a dict with
   # v['k1'] is a MyData namedtuple with 'a' (the numpy array [10, 20]) and
   # 'b' (the numpy array [1.0, 2.0])
   # v['k2'] is a list with the numpy array [1.0, 2.0] and the numpy array
   # [10, 20].

可選的 feed_dict 參數允許調用者覆蓋圖中張量的值。 feed_dict 中的每個鍵都可以是以下類型之一:

  • 如果鍵是 tf.Tensor ,則值可能是 Python 標量、字符串、列表或 numpy ndarray,可以轉換為與該張量相同的 dtype。此外,如果鍵是 tf.compat.v1.placeholder ,則將檢查值的形狀是否與占位符兼容。
  • 如果鍵是 tf.sparse.SparseTensor ,則值應該是 tf.compat.v1.SparseTensorValue
  • 如果鍵是 TensorSparseTensor 的嵌套元組,則值應該是嵌套元組,其結構與上麵對應的值映射的結構相同。

feed_dict 中的每個值都必須可轉換為對應鍵的 dtype 的 numpy 數組。

可選的 options 參數需要一個 [ RunOptions ] 原型。這些選項允許控製此特定步驟的行為(例如打開跟蹤)。

可選的 run_metadata 參數需要一個 [ RunMetadata ] 原型。在適當的時候,該步驟的非張量輸出將在那裏收集。例如,當用戶在 options 中打開跟蹤時,已分析的信息將被收集到此參數中並傳回。

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.compat.v1.Session.run。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。