tf.reshape(inputs, [-1,dim])的理解
生活随笔
收集整理的這篇文章主要介紹了
tf.reshape(inputs, [-1,dim])的理解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
示例:
import tensorflow as tf lenth = tf.reshape(30,shape=[-1]) #變成一維張量 lenth2 = tf.reshape(30,shape=[]) #變成標量了 lenth3 = tf.reshape([30],shape=[]) #變成標量了 with tf.Session() as sess:sess.run(tf.global_variables_initializer())a = sess.run(lenth)b = sess.run(lenth2)c = sess.run(lenth3) print(a,b,c)[30] 30 30變成一維的,但一維與標量確理解錯了;標量可以理解為0維;
標量可以用shape=[]參數定義
If one component of `shape` is the special value -1, the size of that dimensionis computed so that the total size remains constant. In particular, a `shape`of `[-1]` flattens into 1-D. At most one component of `shape` can be -1.If `shape` is 1-D or higher, then the operation returns a tensor with shape`shape` filled with the values of `tensor`. In this case, the number of elementsimplied by `shape` must be the same as the number of elements in `tensor`.For example:```# tensor 't' is [1, 2, 3, 4, 5, 6, 7, 8, 9]# tensor 't' has shape [9]reshape(t, [3, 3]) ==> [[1, 2, 3],[4, 5, 6],[7, 8, 9]]# tensor 't' is [[[1, 1], [2, 2]],# [[3, 3], [4, 4]]]# tensor 't' has shape [2, 2, 2]reshape(t, [2, 4]) ==> [[1, 1, 2, 2],[3, 3, 4, 4]]# tensor 't' is [[[1, 1, 1],# [2, 2, 2]],# [[3, 3, 3],# [4, 4, 4]],# [[5, 5, 5],# [6, 6, 6]]]# tensor 't' has shape [3, 2, 3]# pass '[-1]' to flatten 't'reshape(t, [-1]) ==> [1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6]# -1 can also be used to infer the shape# -1 is inferred to be 9:reshape(t, [2, -1]) ==> [[1, 1, 1, 2, 2, 2, 3, 3, 3],[4, 4, 4, 5, 5, 5, 6, 6, 6]]# -1 is inferred to be 2:reshape(t, [-1, 9]) ==> [[1, 1, 1, 2, 2, 2, 3, 3, 3],[4, 4, 4, 5, 5, 5, 6, 6, 6]]# -1 is inferred to be 3:reshape(t, [ 2, -1, 3]) ==> [[[1, 1, 1],[2, 2, 2],[3, 3, 3]],[[4, 4, 4],[5, 5, 5],[6, 6, 6]]]# tensor 't' is [7]# shape `[]` reshapes to a scalarreshape(t, []) ==> 7```?
總結
以上是生活随笔為你收集整理的tf.reshape(inputs, [-1,dim])的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tf.pad函数功能介绍
- 下一篇: np.nonzero()函数的解析