1. 程式人生 > >tensorflow根據輸入更改tensor shape

tensorflow根據輸入更改tensor shape

涉及隨機數以及類RNN的網路構建常常需要根據輸入shape,決定中間變數的shape或步長。
tf.shape函式不同於tensor.shape.as_list()函式,後者返回的是常值list,而前者返回的是tensor。使用tf.shape函式可以使得中間變數的tensor形狀隨輸入變化,不需要在構建Graph的時候指定。但對於tf.Variable,因為需要提前分配固定空間,其shape無法通過上訴方法設定。
例項程式碼如下:

a = tf.placeholder(tf.float32,[None,])
b = tf.random_normal(tf.concat([tf.shape
(a),[2,]],axis=0))