一、标量(Scalar)

定义

标量是只有大小(数值)而没有方向的量,是最基础的数据类型。

特点
  • 维度:0 维(无方向)。
  • 表示:通常用单个数值表示,如整数、浮点数。
  • 运算:遵循基本算术运算(加、减、乘、除)。
示例
  • 温度(25℃)、质量(10kg)、时间(5 秒)、价格(100 元)。
  • 数学中的常数 π、3.14 等。
应用场景
  • 日常数据记录(如身高、体重)。
  • 编程中的基础变量(如整数、浮点数类型)。

二、向量(Vector)

定义

向量是由一组有序数值组成的量,既有大小又有方向,可理解为 “数值的有序列表”。

特点
  • 维度:1 维(有方向,可用箭头表示)。
  • 表示
    • 数学中常用括号或箭头表示,如 v=(v1​,v2​,v3​) 或 ​abc​​。
    • 编程中常用数组、列表表示(如 Python 中的 [1, 2, 3])。
  • 运算
    • 加法:对应元素相加(如 (1,2)+(3,4)=(4,6))。
    • 数乘:数值与每个元素相乘(如 2×(1,2)=(2,4))。
    • 点积(内积):a⋅b=a1​b1​+a2​b2​,结果为标量。
    • 叉积(外积):仅适用于 3 维向量,结果为新向量,垂直于原向量所在平面。
示例
  • 物理中的速度(30m/s,方向向东)、力(10N,方向垂直向上)。
  • 机器学习中的特征向量(如图片像素值组成的列表)。
应用场景
  • 几何计算(如向量方向、距离)。
  • 自然语言处理(词向量表示语义)。
  • 物理力学分析(力、位移的合成与分解)。

三、张量(Tensor)

定义

张量是向量在高维空间的推广,可理解为 “多维数组”,其维度数量称为阶(Rank)

特点
  • 维度:n 维(n≥0,n=0 时为标量,n=1 时为向量)。
  • 表示
    • 0 阶张量:标量(如 5)。
    • 1 阶张量:向量(如 [1,2,3])。
    • 2 阶张量:矩阵(如 (13​24​))。
    • 3 阶及以上张量:多维数组(如视频数据可表示为 [帧号,高度,宽度,通道])。
  • 运算
    • 矩阵运算(如矩阵乘法、转置)是 2 阶张量的典型运算。
    • 高维张量支持切片、降维(如池化)、升维(如扩展维度)等操作。
示例
  • 2 阶张量:图像像素矩阵([高度,宽度,通道数])。
  • 3 阶张量:视频数据([时间帧,高度,宽度,通道数])。
  • 4 阶张量:批量视频数据([批量大小,时间帧,高度,宽度,通道数])。
应用场景
  • 深度学习:神经网络的输入、权重、输出均为张量(如卷积神经网络处理图像时使用 4 阶张量)。
  • 物理与工程:弹性力学中的应力张量、相对论中的时空张量。
  • 数据科学:多维度数据分析(如用户 - 商品 - 时间的三维交互数据)。

四、三者对比总结

类型 维度 表示示例 典型应用
标量 0 维 5、3.14 温度、质量、基础变量
向量 1 维 (1,2,3) 特征表示、力的方向
张量 n 维(n≥0) 矩阵、多维数组 图像 / 视频处理、深度学习、物理场

五、延伸理解:从标量到张量的拓展

  • 标量是张量的特例:0 阶张量即标量,1 阶张量即向量,2 阶张量即矩阵。
  • 张量的维度语义:高维张量的每个维度可对应不同的物理或逻辑意义(如批量、时间、空间等)。
  • 编程实现:在 Python 中,NumPy 库用 ndarray 表示张量,PyTorch/TensorFlow 等框架则提供更高效的张量运算支持。
Logo

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

更多推荐