1. 程式人生 > >TensorFlow的常量值張量和序列

TensorFlow的常量值張量和序列

常量值張量(Constant Value Tensors)TensorFlow提供了多種方式生成常量值的張量。與變數不同,常量在執行前不再需要顯式初始化。tf.constant這一個最為常見。定義如下:tf.constant(value, dtype=None, shape=None, name='Const', verify_shape=False)value為常量值或者列表,dtype為型別,shape為張量形狀,name為名稱、verify_shape為用於驗證值的形狀,預設False。
tensor = tf.constant([1, 2, 3, 4, 5, 6, 7]) # tensor的輸出值是 [1 2 3 4 5 6 7]
tensor = tf.constant(-1.0, shape=[2, 3]) #tensor的輸出值是[[-1. -1. -1.],[-1. -1. -1.]]
tf.zeros tf.zeros_liketf.zeros(shape, dtype=tf.float32, name=None)建立一個所有元素都設定為零的張量。shape為張量形狀,dtype為型別,name為名稱。
z = tf.zeros([3, 4], tf.int32)  # z的值是[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
tf.zeros_like(tensor, dtype=None, name=None, optimize=True)給定一個張量(tensor),該操作返回與給定的張量相同型別和形狀的張量,該返回張量的所有元素會被設定為零。或者使用dtype指定返回張量的新型別。tensor為給定的張量,dtype為型別,name為名稱,optimize為優化項,如果為true,則嘗試靜態確定“張量”的形狀並將其編碼為常量。
tensor = tf.constant([[1, 2, 3], [4, 5, 6]])
a = tf.zeros_like(tensor)  # a的值是[[0, 0, 0], [0, 0, 0]]
tf.ones tf.ones_like與tf.zeros()和tf.zeros_like()類似tf.filltf.fill(dims, value, name=None)tf.zeros()和tf.ones()是以0和1填充張量,而tf.fill()則可以指定要填充的值。引數dims表示輸出張量的形狀。value為要填充的值。name為名稱。
f = tf.fill([2, 3], 9)   #f的值為[[9,9,9],[9,9,9]]
序列(Sequences)與變數不同,序列在執行前不再需要顯式初始化。tf.linspacetf.linspace(start, stop, num, name=None)
產生一個等差數列一維向量,初始值是start、結束值是stop,個數是num。這個數列每次的增量是(stop - start)/(num-1)。
l = tf.linspace(10.0, 12.0, 3, name="linspace") # l的值是 [ 10.0, 11.0,  12.0], 每次增長(12-10)/(3-1) = 1
k = tf.linspace(10.0, 12.0, 5") # k的值是 [ 10.0, 10.5,  11.0, 11.5,  12.0], 每次增長(12-10)/(5-1) = 0.5
j = tf.linspace(10.0, 8.0, 3") # j的值是 [10.0, 9.0, 8.0], 值往小增長。
tf.rangetf.range(limit, delta=1, dtype=None, name='range')tf.range(start, limit, delta=1, dtype=None, name='range')產生一個等差數列的一維向量,初始值是start,增量是delta,結束值小於limit。start是初始值,如果不指定,預設是0;delta是增量,預設是1。limit是這個數列的最大值,但不包括在內,也就是說這個數列的最大值不能大於或者等於limit;dtype為型別;name為名稱。
start = 3
limit = 18
delta = 3
r = tf.range(start, limit, delta)  # r = [3, 6, 9, 12, 15],數列從3開始,每次向上增長3,但最大不超過18
limit = 5
r2 = tf.range(limit)  #r2 = [0, 1, 2, 3, 4],數列從0開始,增量是1,一直增長到4

參考文件: