AI基础系列(1)| 向量、矩阵、张量在AI中分别扮演什么角色?

开头:为什么要写这篇文章

在人工智能和深度学习的入门阶段,很多人都会被"向量、矩阵、张量"这几个词反复包围。它们频繁出现在论文、代码、框架文档和课程讲义中,看似只是数学概念,却决定了数据如何表示、模型如何计算、参数如何更新。

写这篇文章的原因很直接:如果不理解这三类数据结构的本质和分工,就很难真正看懂一个神经网络在做什么。本文将从实际应用出发,讲清向量、矩阵、张量在AI中的具体角色,并给出表格、示意和常见问题解答,帮助读者建立"形状思维"。


一、基本层级:从标量到张量

在AI系统中,数据通常被组织为不同维度的数字容器。标量、向量、矩阵、张量之间的关系,可以用下表概括:

张量是向量和矩阵的推广:向量是1维张量,矩阵是2维张量,标量是0维张量。下图可以直观展示这种层级关系:

text

标量:3.7

向量:0.2, 0.8, 0.1

矩阵:\[0.2, 0.8,

0.1, 0.5\]

张量:\[\[0.2, 0.8],

\[0.1\], \[0.5\]\]

标量、向量、矩阵、张量的维度关系

理解这个层级,是理解后续所有内容的前提。


二、向量:AI中最小的完整信息单元

向量在AI中通常表示一个样本、一个词、一个输出结果或一组偏置。

2.1 特征表示

一个样本往往被编码为一个向量。例如房价预测中,一套房子可以表示为:

text

面积, 卧室数, 房龄, 到地铁距离\] = \[98, 3, 10, 0.5

这个向量就是模型的输入。

2.2 词嵌入与语义表示

自然语言处理中,每个词或token会被映射为一个稠密向量,称为词嵌入。例如"猫"可能表示为:

text

0.12, -0.45, 0.78, ...

语义相近的词,其向量距离更近。这种向量表示让语言变得可计算。

2.3 输出与预测

分类模型的输出通常是一个向量,表示每个类别的概率或logits。例如三分类问题:

text

0.1, 0.7, 0.2 → 预测为第2类

2.4 偏置与梯度

神经网络每一层的偏置项b是一个向量;反向传播时,每个参数的梯度也是同形状的向量。向量因此贯穿前向与反向计算。


三、矩阵:模型参数与批量计算的核心

矩阵在AI中承担着更复杂的角色,尤其是权重存储和批量数据处理。

3.1 权重矩阵

全连接层或线性层本质上是一个矩阵乘法:

text

y = xW + b

其中:

  • x:输入向量,形状 d_in
  • W:权重矩阵,形状 d_in, d_out
  • b:偏置向量,形状 d_out
  • y:输出向量,形状 d_out

权重矩阵是模型可学习的核心参数,训练过程就是不断更新这些矩阵。

3.2 批量数据

实际训练时,通常一次处理多个样本,形成矩阵:

text

X.shape = batch_size, d_in

每一行是一个样本向量。这种批量矩阵运算可以充分利用GPU并行能力。

3.3 注意力矩阵

在Transformer中,注意力机制会计算一个矩阵:

text

Attention(Q,K,V) = softmax(QKᵀ / √d_k)V

其中QKᵀ得到一个 T,T 的矩阵,表示序列中任意两个token之间的相关性。矩阵因此成为捕捉上下文关系的核心结构。

3.4 嵌入表

词嵌入层通常用一个矩阵存储所有词的向量:

text

Embedding矩阵形状 = vocab_size, embedding_dim

查表操作就是从矩阵中取出一行。矩阵在这里是"词典"与"向量"之间的桥梁。


四、张量:高维数据的天然容器

当数据超过二维时,就需要张量来组织。

4.1 图像与视频数据

图像是天然的三维张量:高度 × 宽度 × 通道。批量图像则是四维张量:

text

batch_size, channels, height, width

例如32张RGB的224×224图像:

text

32, 3, 224, 224

视频则是五维张量:

text

batch_size, frames, channels, height, width

批量图像张量的形状示意

4.2 卷积核与特征图

卷积神经网络中的卷积核是四维张量:

text

out_channels, in_channels, kernel_height, kernel_width

特征图也是四维张量,经过多层卷积后形状不断变化。张量让局部特征提取在数学上变得统一。

4.3 序列数据与NLP

在Transformer中,一个批量的token序列经过嵌入后变成三维张量:

text

batch_size, sequence_length, embedding_dim

例如:

text

16, 128, 768 → 16句话,每句128个token,每个token 768维

4.4 多头注意力中的张量

多头注意力会将嵌入维度拆成多个头,形成四维张量:

text

batch_size, num_heads, seq_len, head_dim

这样可以在不同子空间并行计算注意力,提升模型表达能力。


五、张量运算:AI计算的基石

AI模型的前向传播和反向传播,本质上是一系列张量运算的组合:

在PyTorch、TensorFlow、JAX等框架中,张量是核心数据结构。所有输入、输出、参数、梯度都用张量表示,并且支持GPU/TPU并行加速。自动微分系统会跟踪张量运算,自动计算梯度。可以说,掌握张量的形状变化,就掌握了深度学习工程的一半。


六、总结与AI未来展望

总结来看,向量、矩阵、张量在AI中的分工非常明确:

它们是AI的"语言":数据用它们表示,模型参数用它们存储,计算用它们完成。

展望未来,随着大模型、多模态和科学计算的发展,张量的角色还会继续扩展。更高维度的张量将用于表示视频、点云、分子结构、气象场等复杂数据;稀疏张量和低精度张量会帮助降低训练成本;自动形状推导和编译优化会让张量运算更高效。与此同时,张量计算与硬件架构的协同设计,也将成为AI系统演进的重要方向。理解向量、矩阵、张量,依然是进入AI世界的必要入口。


FAQ

1. 标量、向量、矩阵、张量到底有什么区别?

标量是单个数字,向量是一维数组,矩阵是二维数组,张量是任意维数组。它们在AI中分别用于表示不同复杂度的数据:损失值是标量,样本特征是向量,权重是矩阵,批量图像是高维张量。

2. 为什么图像在深度学习里通常是4维张量?

单张彩色图像是高×宽×通道的三维张量。为了批量训练,需要把多张图像堆叠起来,增加一个批量维度,形成 batch_size, channels, height, width 的四维张量,便于GPU并行计算。

3. 神经网络中的权重矩阵具体起什么作用?

权重矩阵存储线性变换的参数。输入向量与权重矩阵相乘,再叠加偏置,就得到输出向量。训练的目标就是通过梯度下降不断调整权重矩阵,使模型预测更准确。

4. 词嵌入矩阵是如何表示语言信息的?

词嵌入矩阵形状为 词表大小, 嵌入维度,每一行对应一个词的向量。语义相近的词,其向量在空间中更接近。模型通过查表获取词向量,再将它们送入后续网络处理。

5. 学习AI必须精通张量运算吗?

不必先成为数学专家,但必须理解张量形状和基本运算。实际开发中,框架会自动完成大部分数学计算,但数据维度不匹配、形状错误是常见问题。掌握形状思维比手算张量更重要。

相关推荐
通问AI1 小时前
人形机器人量产技术笔记:从5500台出货看规模化路径
人工智能
无凭1 小时前
字节Agent框架 DeerFlow 的可观测性(二):运行中的中间事件是怎样到达前端的?
人工智能
doitnow20001 小时前
2026淘宝运营机构课程体系怎么比较?
大数据·人工智能
网渡科技2 小时前
大模型推理成本优化实战:vLLM 与 KV Cache 调优指南
人工智能
土豆12502 小时前
半年 20 万 Star 的「反 Vibe Coding」:Matt Pocock 是如何用一套 Skill 驯服 AI 编程代理的
人工智能·ai编程
yuhulkjv3352 小时前
Gemini鸿蒙版导出word格式的终极解法:AI 导出鸭如何重构AI内容落地链路
人工智能·ai·word·harmonyos·ai导出鸭
雪的季节2 小时前
OPENCV学习(补充1)
人工智能·opencv·学习
9i编程2 小时前
四大准则也还是不靠谱啊:定好了铁律,AI 照样偷懒给你看
人工智能·openai·ai编程
狂僧2 小时前
从 Markdown、Wiki 到 AI 知识库:本体与知识图谱到底处在哪一层?
人工智能