1.tf.constant
tf.constant(value, dtype=None, shape=None, name='Const')
參數:
value: 第一個值value是必須的,可以是一個數值,也可以是一個列表。dtype: 所要創建的tensor的數據類型shape: 所要創建的tensor的shapename:(可選)一個該操作的別名.
value可以是一個數,也可以是一個list。 如果是一個數,那么這個tensor中所有值的按該數來賦值; 如果是list, 那么value的長度一定要小於等於shape展開后的長度。賦值時,先將value中的值逐個存入。不夠的部分,則全部存入value的最后一個值。
舉例:
import tensorflow as tf
# import numpy as np
a = tf.constant(2,shape=[2]) #一個長為2的list
b = tf.constant(2,shape=[2,2]) #元素都是2的2*2的矩陣
c = tf.constant([1,2,3],shape=[6]) # 后面的元素用3填充
d = tf.constant([1,2,3],shape=[3,2])
sess = tf.Session()
sess.run(tf.global_variables_initializer())
print('a')
print(sess.run(a),)
print('b')
print(sess.run(b))
print('c')
print(sess.run(c))
print('d')
print(sess.run(d))

2.tf.zeros
tf.zeros(shape, dtype=tf.float32, name=None)
參數:
shape:用於表示維度,通常為一個int32類型數組,或者一個一維(1-D)的tf.int32數字。注意不能直接使用數字dtype:所要創建的tensor對象的數據類型name:(可選)一個該操作的別名
返回:所有參數都為0的tensor對象。
這個操作會返回一個類型為dtype,並且維度為shape的tensor,並且所有的參數均為0。
舉例:
import tensorflow as tf
a = tf.zeros([2])
b = tf.zeros([2, 3], dtype=tf.int32)
sess = tf.Session()
sess.run(tf.global_variables_initializer())
print('a')
print(sess.run(a))
print("b")
print(sess.run(b))

3.tf.zeros_like
tf.zeros_like(tensor, dtype=None, name=None)
參數:
- tensor: tensor對象
- dtype: 返回的tensor對象類型,不設置(為空時)時返回類型同參數tensor一致。該參數必須為如下tensorflow類型: float32, float64, int8, int16, int32, int64, uint8以及complex64.
- name: (可選)該操作別名.
返回:所有參數為0的tensor對象
舉例:
import tensorflow as tf
a = tf.constant([1, 2, 3, 4, 5, 6], shape=[2, 3])
b = tf.zeros_like(a)
sess = tf.Session()
sess.run(tf.global_variables_initializer())
print('a')
print(sess.run(a))
print('b')
print(sess.run(b))

4.tf.ones
tf.ones()與tf.ones_like()和tf.zeros()與tf.zeros_like()類似,故不再贅述
tf.ones(shape, dtype=tf.float32, name=None)
5.tf.ones_like
tf.ones_like(tensor, dtype=None, name=None)
6.tf.fill
tf.fill(dims, value, name=None)
參數:
- dims: 類型為int32的tensor對象,用於表示輸出的維度(1-D, n-D),通常為一個int32數組,如:[1], [2,3]等
- value: 常量值(字符串,數字等),該參數用於設置到最終返回的tensor對象值中
- name: (可選)當前操作別名
返回:tensor對象,類型和value一致
舉例:
import tensorflow as tf
a = tf.fill([10], 0)
b = tf.fill([2, 3, 4], 5)
sess = tf.Session()
sess.run(tf.global_variables_initializer())
print('a')
print(sess.run(a),)
print('b')
print(sess.run(b))

參考文獻:
【1】Tensorlow 中的常量值函數:tf.zeros()、tf.ones()、tf.fill()和tf.constant()_上帝是個娘們的博客-CSDN博客
