一、张量的定义
Tensor即为张量,它是Tensorflow中最基础的数据结构,可理解为n维数组或矩阵,一般将零维的张量称为标量或者常数,一维的张量可理解为向量,二维张量可理解为矩阵,三维则是三维数组。
二、张量的创建
Tensorflow提供 constant 这个函数:
constant(value, dtype=None, shape=None, name="Const", verify_shape=False)
2.1 零维张量
t = tf.constant(1, tf.float32)
2.2 一维张量
t = tf.constant([1, 2, 3, 4], tf.float32)
2.3 二维张量
t = tf.constant(
[
[1, 2, 3, 4],
[7, 8, 9, 10]
], tf.float32
)
2.4 三维张量
三维张量可以理解为多个二维张量在深度上的一个组合,
t = tf.constant(
[
[[1, 2], [3, 4]],
[[5, 6], [7, 8]],
[[9, 10],[11, 12]]
], tf.float32
)
该矩阵就相当于
[
[1, 3],
[5, 7],
[9, 11]
]
在第一个深度上,而
[
[2, 4],
[6, 8],
[10, 12]
]
在第二个深度上
2.5 四维张量
四维张量可以理解为多个三维张量
t = tf.constant(
[
# 第一个2行2列深度为2的三维张量
[
[[1, 2], [3, 4]],
[[5, 6], [7, 8]]
],
# 第二个2行2列深度为2的三维向量
[
[[9, 10], [11, 12]],
[[13, 14], [15, 16]]
]
]
)