公司动态
AI中的数学一
把AI计算里最核心的数学概念串起来。在AI深度学习中“积”这个概念贯穿始终。把AI中常见的“积”分成三大类来梳理基础代数积、矩阵乘法积、神经网络专用积。第一类基础代数积两个向量的运算这是最底层的定义也是AI论文里最常提到的。1. 内积Inner Product / Dot Product定义两个同长度的向量对应位置元素相乘再全部加起来。公式A⃗⋅B⃗∑iAi×BiA⋅B∑iAi×Bi几何意义衡量两个向量的“相似度”或“夹角余弦”投影长度。AI中的应用无处不在。全连接层y Wx的计算、卷积的滑动窗口计算、Transformer中的注意力分数Q·K计算本质上都是内积。2. 外积Outer Product定义两个长度可以不同的向量假设长度m和nA的每一个元素分别去乘B的每一个元素生成一个m行 × n列的矩阵。公式(A⃗⊗B⃗)ijAi×Bj(A⊗B)ijAi×Bj几何意义生成一个平面秩1矩阵。AI中的应用RNN/LSTM中的某些门控计算。低秩分解LoRA微调大模型用两个小矩阵的外积来近似一个大矩阵的更新量大幅减少参数量。在GPU底层如Tensor Core大量使用外积累加Outer Product Accumulation来并行计算矩阵乘法。第二类矩阵乘法积涉及二维数组这是AI训练和推理时的计算主体。3. 矩阵乘积Matrix Product / GEMM定义CA×BCA×B。要求A的列数等于B的行数。结果结果C中每个元素 CijCij是A的第i行与B的第j列的内积。AI中的应用全连接层、卷积层通过im2col转化后、Transformer的FFN前馈网络。AI 99%的计算量都在跑GEMM。4. 逐元素乘积Hadamard Product / Element-wise Product定义两个形状完全一样的矩阵对应位置的数字直接相乘结果形状不变。公式(A∘B)ijAij×Bij(A∘B)ijAij×BijAI中的应用注意力机制中的Mask掩码操作。残差连接中的门控机制Gating。Batch Normalization中的缩放乘以gamma和平移。第三类神经网络专用积特殊运算这些是AI独有的不再局限于纯数学定义。5. 卷积Convolution / Cross-correlation定义AI版用一个小的卷积核Kernel在大的输入矩阵上滑动每一步做对应位置的逐元素相乘然后求和即内积得到一个输出值。本质带权重共享和局部连接的滑动内积。AI中的应用处理图像CNN、音频、序列数据。6. 克罗内克积Kronecker Product定义用矩阵B去替换矩阵A中的每一个元素。如果A是m×nB是p×q结果是一个 (mp) × (nq) 的大矩阵。AI中的应用模型压缩用克罗内克积构造大矩阵减少参数量。神经正切核NTK理论分析中常用。总结一览表帮你快速回忆名称输入形状计算方式输出形状AI典型场景内积 (Dot)向量 (n,) 和 (n,)对应乘再求和一个数字标量注意力分数、全连接单神经元外积 (Outer)向量 (m,) 和 (n,)每个乘每个矩阵 (m × n)LoRA微调、底层硬件加速矩阵乘 (GEMM)矩阵 (m×k) 和 (k×n)行与列的内积矩阵 (m × n)AI计算主力全连接、FFN逐元素乘 (Hadamard)矩阵 (m×n) 和 (m×n)对应位直接乘矩阵 (m × n)注意力Mask、门控机制卷积 (Conv)矩阵和小的核滑动窗口做内积矩阵特征图图像分类、目标检测终极硬核总结划重点如果去翻NVIDIA的CUDA手册或AI框架的底层源码会发现硬件只认识“乘加MAC”无论是内积、外积、GEMM底层都是a*b c这条指令。AI训练的反向传播BP本质就是在疯狂计算雅可比矩阵Jacobian而雅可比矩阵的计算又可以被拆解成上述各种“积”的组合。所以可以这样记AI的“智能”就是通过反向传播不断调整矩阵里的数字让“内积”和“外积”的计算结果恰好符合预期。