在Python中,tf.placeholder函數(shù)用于定義一個(gè)可占位的tensor,可以在TensorFlow的計(jì)算圖中作為輸入節(jié)點(diǎn)。當(dāng)執(zhí)行計(jì)算圖時(shí),可以通過(guò)傳入具體的值來(lái)填充這個(gè)占位符。
tf.placeholder函數(shù)的用法如下:
tf.placeholder(
dtype,
shape=None,
name=None
)
參數(shù)說(shuō)明:
示例代碼:
import tensorflow as tf
# 定義一個(gè)占位符
x = tf.placeholder(dtype=tf.float32, shape=(None, 2), name='input')
# 創(chuàng)建一個(gè)計(jì)算圖
y = tf.reduce_sum(x, axis=1)
# 創(chuàng)建一個(gè)會(huì)話(huà)
with tf.Session() as sess:
# 使用feed_dict參數(shù)傳入具體的值來(lái)填充占位符
result = sess.run(y, feed_dict={x: [[1, 2], [3, 4], [5, 6]]})
print(result) # 輸出[3. 7. 11.]
在上述代碼中,首先通過(guò)tf.placeholder
定義了一個(gè)占位符x
,數(shù)據(jù)類(lèi)型為tf.float32
,形狀為(None, 2)
,表示可以接受任意行、2列的輸入。然后,在計(jì)算圖中使用了這個(gè)占位符x
,通過(guò)tf.reduce_sum
對(duì)x
的第二個(gè)維度進(jìn)行求和操作。最后,在會(huì)話(huà)中使用sess.run
執(zhí)行計(jì)算圖時(shí),通過(guò)feed_dict
參數(shù)將具體的值[[1, 2], [3, 4], [5, 6]]
傳入占位符x
,計(jì)算得到結(jié)果[3. 7. 11.]
。