tensor 增加一维度_Tensorflow 2.0 学习笔记(一)

tensor 增加一维度_Tensorflow 2.0 学习笔记(一)如何创建一个 Tensor 一 Tensor Tensor 即张量 多维数组 多维列表 使用阶表示张量的维数 张量可以表示 0 阶到 n 阶数组 列表 维数 阶 名字 例子 0 D 0 标量 s 1 2 3 1 D 1 向量 v 1 2 3 2 D 2 矩阵 m 1 2 3 4 5 6 7 8 9 n D n 张量

大家好,我是讯享网,很高兴认识大家。

如何创建一个Tensor

一、Tensor

Tensor 即张量/多维数组/多维列表 使用阶表示张量的维数,张量可以表示0阶到n阶数组(列表)。

维数 名字 例子
0-D 0 标量 s=1、2、3
1-D 1 向量 v=[1,2,3]
2-D 2 矩阵 m=[[1,2,3],[4,5,6],[7,8,9]]
n-D n 张量 t=[[[n个]]]
二、Tensro数据类型

√tf.int32, tf.float

tf.int32、tf.float32、tf.float64

√tf.bool

tf.constant([True, False])

√tf.string

tf.constant("Hello,world!")

三、创建一个张量
tf.constant(张量内容, dtype=数据类型(可选))

讯享网
讯享网a = tf.constant([1, 5],dtype=tf.int64)
print(a)
讯享网tf.Tensor([1 5], shape=(2,), dtype=int64)
print(a.dtype)
讯享网
# shape中的','隔开了几个数字,逗号隔开了几个数字,张量就是几维的
print(a.shape)
讯享网(2,)

上面shape括号中用逗号隔开了一个数字,说明是一维张量;数字为2,说明张量中有两个元素,即数值1和数值5。

四、将numpy的数据类型转换为Tensor数据类型
tf.convert_to_tensor(数据名, dtype=数据类型(可选))
讯享网import numpy as np
a = np.arange(0,5)
b = tf.convert_to_tensor(a, dtype=tf.int64)
讯享网print(a)
print(b)
[0 1 2 3 4]
tf.Tensor([0 1 2 3 4], shape=(5,), dtype=int64)
五、创建全为0的张量
讯享网tf.zeros(维度)
六、创建全为1的张量
tf.ones(维度)
七、创建全为指定值的张量
讯享网tf.fill(维度, 指定值)

维度:

一维:直接写个数


讯享网

二维:用[行, 列]

多维:用[n, m, j, k, ...]

a = tf.zeros([2,3])
b = tf.ones(4)
c = tf.fill([2,3], 9)
讯享网print(a)
print(b)
print(c)
tf.Tensor(
[[0. 0. 0.]
[0. 0. 0.]], shape=(2, 3), dtype=float32)
tf.Tensor([1. 1. 1. 1.], shape=(4,), dtype=float32)
tf.Tensor(
[[9 9 9]
[9 9 9]], shape=(2, 3), dtype=int32)
八、生成正态分布的随机数,默认均值为0,标准差为1
讯享网tf.random.normal(维度, mean=均值, stddev=标准差)
九、生成截断式正态分布的随机数
tf.random.truncated_normal(维度, mean=均值, stddev=标准差)

在tf.truncated_normal中,如果随机生成数据的取值在()之外,则重新进行生成,保证了生成值在均值附件。

:均值,:标准差

讯享网# 生成一个均值为0.5、标准差为1的2x2的正太分布二维数组
d = tf.random.normal([2, 2], mean=0.5, stddev=1)
print("d:\n", d)
# 生成一个均值为0.5、标准差为1的2x2的截断式正太分布二维数组
e = tf.random.truncated_normal([2, 2], mean=0.5, stddev=1)
print("e:\n", e)
d:
tf.Tensor(
[[ 0. 2. ]
[ 1. -0.]], shape=(2, 2), dtype=float32)
e:
tf.Tensor(
[[1. 0.]
[1. 0. ]], shape=(2, 2), dtype=float32)
十、生成均匀分布的随机数
讯享网tf.random.uniform(维度, minval=最小值, maxval=最大值)
# 生成一个最小值为0、最大值为1的2x2的均匀分布随机数二维数组
# 最小、最大为前闭后开区间
f = tf.random.uniform([2, 2], minval=0, maxval=1)
print("f:\n", f)
讯享网f:
tf.Tensor(
[[0. 0. ]
[0. 0.]], shape=(2, 2), dtype=float32)


d1ee8f57b9f33099a5e1986fe4469b78.png

630d8ccdf155b60d6d12801c06ae8184.gif

01.Python随笔|抓取成员头像

02.Python随笔|抓取研招网调剂信息

03.Python随笔 | Pandas入门(一)

4a503d2a0fec52becfd4f893bf262f13.png
小讯
上一篇 2025-02-28 22:36
下一篇 2025-03-22 23:43

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/31921.html