提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
一、直接创建
- tf.zeros([ ]) 方括号里填张量的形状,创建的张量每个元素值都为0
- tf.ones([ ]) 方括号里填张量的形状,创建的张量每个元素值都为1
import tensorflow as tf
a = tf.zeros([2, 3]) #创建一个元素全为0的2行3列的张量
b = tf.zeros([3]) #创建一个元素全为0的1行3列的张量
c = tf.zeros([]) #创建一个标量,值为0
d = tf,ones(a.shape)
print(a)
print(b)
print(c)
print(d)

tf.ones([]) 的用法类似,不多赘述。 并且这两个函数 默认会生成float型的数据
- tf.fill(形状,指定值) 这个函数就更灵活一点,根据你传入的形状用指定值初始化该张量
x = tf.fill(a.shape, 2.8)
y = tf.fill([2, 4], 4)
print(x)
print(y)

- tf.randaom.uniform(shape, minval,maxval) 从给定的最小值到最大值之间均匀采样生成数据值
p = tf.random.uniform(a.shape, minval=0, maxval=1)
print(p)

- tf.random.normal(shape, mean, stddev) 指定mean为均值,stddev为方差
- tf.constant() 里面直接写数据
q = tf.constant(1) #生成一个标量
w = tf.constant([2, 3]) #生成一个一行两列的向量
e = tf.constant([[3, 4], [5, 6]]) #生成一个两行两列的矩阵
print(q)
print(w)
print(e)

- tf.range(上限) 返回从0到不包含该上限的整型一维向量
t = tf.range(9)
print(t)

将该一维向量转化成onehot编码格式
t = tf.range(9)
print(t)
t = tf.one_hot(t, depth=10)
print(t)

二、间接创建
- tf.zeros_like(张量) 该函数只需要传进去一个张量参数即可,会自动根据传进去的张量的形状生成一个形状相同的新的张量并且值全为0
- tf.ones_like(张量) 作用类似
代码如下(示例):
aa = tf.ones([2, 5])
bb = tf.zeros_like(aa)
print(bb)


被折叠的 条评论
为什么被折叠?



