占位符
TensorFlow提供一個占位符操作,必須在執行時提供數據。 有關更多信息,請參閱Feeding數據部分。
Tf.placeholder(dtype,shape=None,name=None)
插入一個總是需要放入數據的張量的占位符。
重要提示:如果evaluated,該張量會產生錯誤。 必須使用feed_dict可選參數為Session.run(),Tensor.eval()或Operation.run()提供其值。
創建一個占位符作為一個張量(tensor),並且只有在賦值后才可以放到節點中執行。
For example:
x = tf.placeholder(tf.float32, shape=(1024, 1024))
y = tf.matmul(x, x)
with tf.Session() as sess:
print(sess.run(y)) # ERROR: will fail because x was not fed.
rand_array = np.random.rand(1024, 1024)
print(sess.run(y, feed_dict={x: rand_array})) # Will succeed.
Args:
dtype: 要放給張量(tensor)中的元素類型
shape: 要放到張量(tensor)中的形狀(向量維數)(可選)。如果未指定形狀,則可以為任何形狀的張量
name: 操作的名稱(可選).
返回:
可以用作手段來提供值但不直接評估的張量。
tf.placeholder_with_default(input, shape, name=None)
一個占位符的操作,當它的輸出沒有被饋送時,通過input傳遞
Args:
Input:A Tensor(某一張量),當它的輸出沒有被饋送時,A的默認值將被傳送進來。 或者說當輸出沒有fed時,input通過一個占位符op
Shape:A的tf.TensorShape或者ints列表。張量(可能部分的)形狀
Name:操作的名稱(可選)
Returns:
張量. 與輸入的類型相同.一個占位符張量,如果沒有輸入則默認為輸入。
