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


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


用於運行 TensorFlow 操作的類。

用法

tf.compat.v1.Session(
    target='', graph=None, config=None
)

參數

  • target (可選。)要連接的執行引擎。默認使用in-process 引擎。看分布式 TensorFlow更多示例。
  • graph (可選。)要啟動的Graph(如上所述)。
  • config (可選。)帶有會話配置選項的ConfigProto 協議緩衝區。

屬性

  • graph 在此會話中啟動的圖表。
  • graph_def 底層 TensorFlow 圖的可序列化版本。
  • sess_str 此會話將連接到的 TensorFlow 進程。

遷移到 TF2

警告:這個 API 是為 TensorFlow v1 設計的。繼續閱讀有關如何從該 API 遷移到本機 TensorFlow v2 等效項的詳細信息。見TensorFlow v1 到 TensorFlow v2 遷移指南有關如何遷移其餘代碼的說明。

Session 不適用於即刻執行或 tf.function ,您不應直接調用它。要將使用會話的代碼遷移到 TF2,請在沒有會話的情況下重寫代碼。請參閱有關替換 Session.run 調用的遷移指南。

Session 對象封裝了執行Operation 對象和評估Tensor 對象的環境。例如:

tf.compat.v1.disable_eager_execution() # need to disable eager in TF2.x
# Build a graph.
a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b

# Launch the graph in a session.
sess = tf.compat.v1.Session()

# Evaluate the tensor `c`.
print(sess.run(c)) # prints 30.0

會話可能擁有資源,例如 tf.Variabletf.queue.QueueBasetf.compat.v1.ReaderBase 。當不再需要這些資源時,釋放這些資源很重要。為此,請在會話上調用tf.Session.close 方法,或將會話用作上下文管理器。下麵兩個例子是等價的:

# Using the `close()` method.
sess = tf.compat.v1.Session()
sess.run(...)
sess.close()

# Using the context manager.
with tf.compat.v1.Session() as sess:
  sess.run(...)

ConfigProto 協議緩衝區公開了會話的各種配置選項。例如,要創建使用軟約束進行設備放置的會話並記錄生成的放置決策,請按如下方式創建會話:

# Launch the graph in a session that allows soft device placement and
# logs the placement decisions.
sess = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(
    allow_soft_placement=True,
    log_device_placement=True))

相關用法


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