在数学和计算机科学中,Tensor(张量) 是一个多维数组的抽象表示。它是向量(Vector)和矩阵(Matrix)概念的推广,可以表示任意维度的数据结构。


📌 张量的基本概念

维度 名称 例子
0 标量(Scalar) 一个数字,如 5
1 向量(Vector) 一维数组,如 [1, 2, 3]
2 矩阵(Matrix) 二维数组,如 [[1, 2], [3, 4]]
3+ 张量(Tensor) 三维及以上数组,如 [[[1,2],[3,4]], [[5,6],[7,8]]]

🔁 张量的形状(Shape)

张量的 shape(形状) 描述了它在每个维度上的大小。例如:

import numpy as np

t = np.array([[[1, 2], [3, 4]],
              [[5, 6], [7, 8]]])
  • 这是一个 3阶张量(Rank-3 Tensor)
  • 它的 shape 是 (2, 2, 2),即:
    • 第一维有 2 个元素
    • 每个元素包含 2 个子元素
    • 每个子元素又包含 2 个数字

💡 在深度学习中的作用(如 TensorFlow、PyTorch)

在深度学习框架中,张量是数据的基本单位。例如:

  • 输入图像可以被转换为一个 shape 为 (height, width, channels) 的 3D 张量。
  • 一批图像则是一个 4D 张量:(batch_size, height, width, channels)
  • 所有权重和参数也都是以张量的形式存储和计算。

🧮 示例说明

标量(Scalar)

5
  • Rank: 0
  • Shape: ()

向量(Vector)

[1, 2, 3]
  • Rank: 1
  • Shape: (3,)

矩阵(Matrix)

[[1, 2],
 [3, 4]]
  • Rank: 2
  • Shape: (2, 2)

张量(Tensor)

[[[1, 2], [3, 4]],
 [[5, 6], [7, 8]]]
  • Rank: 3
  • Shape: (2, 2, 2)

✅ 总结一句话:

张量就是多维数组,用来表示高维数据结构,是深度学习中最基本的数据形式。

如果你是在学习 TensorFlowPyTorch,那么你几乎每一步操作都在处理张量。


Logo

脑启社区是一个专注类脑智能领域的开发者社区。欢迎加入社区,共建类脑智能生态。社区为开发者提供了丰富的开源类脑工具软件、类脑算法模型及数据集、类脑知识库、类脑技术培训课程以及类脑应用案例等资源。

更多推荐