Zubnet AI学习Wiki › Matrix Multiplication
基础

Matrix Multiplication

别名:Matmul、GEMM
所有神经网络底层的基本数学运算。将权重矩阵与输入向量(或矩阵)相乘产生输出向量。每个线性层、每次注意力计算和每次嵌入查找最终都是矩阵乘法。AI硬件(GPU、TPU)的性能以其执行矩阵乘法的速度来衡量。

为什么重要

理解神经网络只是一系列矩阵乘法(中间穿插非线性变换)使整个领域变得不再神秘。它解释了为什么GPU是必需的(它们是并行矩阵乘法机器)、为什么模型大小用参数量衡量(权重矩阵中的值的数量)、以及为什么FLOPs是计算单位(它计算这些矩阵乘法中的乘加操作)。

深度解析

一个输入维度4096、输出维度4096的线性层将一个(batch_size × 4096)输入矩阵与一个(4096 × 4096)权重矩阵相乘,产生一个(batch_size × 4096)输出。每个输出元素是一个输入行与一个权重列的点积:4096次乘法和4095次加法。对于一个样本,就是4096 × 4096 ≈ 1680万次乘加运算。这只是一层。一个32层的Transformer对每层执行数十次这样的运算。

为什么是GPU

矩阵乘法是“令人尴尬的并行”:每个输出元素都可以独立计算。CPU按顺序计算(每个元素快,但串行)。GPU同时计算数千个(每个元素较慢,但大规模并行)。NVIDIA H100每秒执行约1000 TFLOP的FP16矩阵乘法——大约每秒1千万亿次乘加操作。这种并行性是深度学习变得可行的全部原因。

GEMM优化

GEMM(通用矩阵乘法)如此核心,以至于硬件厂商对其进行极致优化。CUDA核心专为矩阵乘法设计。Tensor Core(NVIDIA)在单个时钟周期内执行4×4矩阵乘法。整个内存层次(寄存器、共享内存、L1/L2缓存、HBM)都围绕保持数据流向矩阵乘法单元而组织。当人们说AI推理是“内存带宽受限”时,意思是硬件的乘法速度快于从内存读取矩阵的速度。

相关概念

← 所有术语
ESC