基础数学:线性代数与优化理论

本篇文章简单带您复习线性代数与优化理论(主要是我发表的文章中涉及过的或相关联的)

微积分和概率与统计由此进:基础数学:微积分和概率与统计-CSDN博客

二、线性代数

1.矩阵运算

(1) 基础操作与几何意义

  • 矩阵乘法:

定义:若 ,则乘积 的元素为:

几何解释:矩阵乘法表示线性变换的组合。例如,旋转矩阵 和平移矩阵 的组合变换为

在注意力机制中,Query矩阵 与Key矩阵 相乘,计算相似度得分(即注意力权重)

示例:设 ,则:

  • 矩阵转置:

定义:

性质:

对称矩阵满足

  • 逆矩阵:

定义:若存在矩阵 ,使得 ,则 可逆

存在条件:

(2) 矩阵分解

  • 奇异值分解(SVD):

定义:任意矩阵 可分解为:

其中 是正交矩阵, 是对角矩阵(奇异值

几何意义:SVD将矩阵分解为旋转-缩放-旋转操作,奇异值表示缩放因子

应用:

降维:保留前 个奇异值,近似矩阵

量化压缩:通过低秩近似减少参数存储(如LLM.int8()中的权重压缩)

  • QR分解:

定义:将矩阵 分解为正交矩阵 和上三角矩阵 ,即

数值稳定性:QR分解常用于求解线性方程组 ,避免直接求逆的数值不稳定问题

  • 特征值分解(EVD):

定义:对方阵 ,若存在标量 和非零向量 ,满足 ,则 为特征值, 为特征向量

应用:

主成分分析(PCA):通过协方差矩阵的特征值分解降维

矩阵幂的计算:

(3) 张量与高阶运算

  • 张量的定义:

张量是多维数组的泛化,阶数(维度)成为张量的秩。例如:

标量:0阶张量

向量:1阶张量

矩阵:2阶张量

三维数组:3阶张量

  • Einstein求和约定(einsum):

规则:通过下标标记维度,自动求和重复索引

示例:计算矩阵乘法 可表示为

  • 张量压缩与分块:

Tucker分解:高阶SVD,将张量分解为核心张量与多个因子矩阵的乘积

应用:减少 Transformer 模型中的计算量(如将大矩阵分块适配GPU内存)

2.数值表示

(1) 浮点数与定点数

  • IEEE 754浮点数标准:

单精度(float32):1位符号位,8位指数位,23位尾数位

半精度(float16):1位符号位,5位指数位,10位尾数位

动态范围:浮点数的表示范围由指数位决定,例如float16的范围约为

  • 定点数表示:

定义:固定小数位数,例如8位整数部分和8位小数部分

量化公式:将浮点数 映射到整数

其中 是缩放因子

反量化:

(2) 稀疏性与压缩存储

  • 稀疏矩阵存储格式:

CSR(Compressed Sparse Row):存储非零元素的值、列索引和行偏移指针

示例:矩阵 的CSR表示为:

values = [5, 8, 3]

col_indices = [0, 1, 2]

row_ptr = [0, 1, 2, 3]

CSC(Compressed Sparse Column):类似CSR,但按列压缩存储

  • 块稀疏:

定义:将稀疏矩阵划分为固定大小的块,仅存储非零块

优势:提升GPU内存访问效率(连续内存读取)、加速矩阵乘法

3.应用场景

(1) 注意力机制中的矩阵运算:从理论到实践:Pytorch实现注意力机制到Triton优化-CSDN博客

(2) absmax量化步骤:从理论到实践:absmax、zeropoint和LLM.int8()在gpt-2的应用-CSDN博客

(3) Triton优化中的分块策略:从理论到实践:Pytorch实现注意力机制到Triton优化-CSDN博客

4.核心公式总结

矩阵乘法:

奇异值分解(SVD):

QR分解:

特征值分解(EVD):满足 ​,则 ​ 为特征值,​ 为特征向量

矩阵幂计算:

注意力权重:

三、优化理论

1.数值优化

(1) 梯度下降

  • 目标: 最小化损失函数 ,参数更新规则为:

其中 ​ 是学习率,​ 是梯度

  • **几何解释:**梯度方向是函数上升最快的方向,负梯度方向是函数下降最快的方向
  • 示例: 对二次函数 ,梯度为 ,更新规则为
  • 动量法: 引入动量项 减少震荡,加速在平坦区域的收敛:

(2) 随机梯度下降(SGD)

  • 小批量更新: 每次从数据集中随机采样一个小批量 ,计算梯度:

  • 方差分析: 小批量梯度是无偏估计,但方差为

权衡:批量越大,方差越小,但计算成本越高

(3) 约束优化

  • 拉格朗日乘数法:

目标:最小化 ​ 满足约束

构造拉格朗日函数:

通过求解 找到极值

  • 示例(量化约束):

量化要求权重 限制在整数范围

通过投影梯度下降迭代:

1.更新参数:

2.投影到约束集:

(4) 凸优化 vs. 非凸优化

  • 凸函数定义: 对任意 ,满足:

性质:凸函数的局部最小值即全局最小值

  • 非凸优化挑战:

存在多个局部极小值(如神经网络损失函数)

依赖初始化策略(如Xavier初始化)和优化器设计(如Adam)

2.应用场景

(1) 注意力机制中的优化问题

  • 计算瓶颈:标准注意力计算 需要 时间和空间
  • FlashAttention优化:

分块计算:将 分块,逐块计算并累加结果。有 从内存读写降至

(2) 量化中的约束优化

  • 对称量化: 约束缩放因子 和零点

闭式解:

  • **非对称量化:**允许零点偏移,适应非对称分布:

(3) 模型训练中的自适应优化器

  • Adam优化器:结合动力与自适应学习率:

作用:自动调整参数的学习率,适应不同方向的梯度变化

3.核心公式总结

梯度下降:

动量法:

拉格朗日函数:

相关推荐
code小毛孩5 分钟前
leetcode hot100数组:缺失的第一个正数
数据结构·算法·leetcode
说私域2 小时前
基于开源AI智能客服、AI智能名片与S2B2C商城小程序的微商服务优化及复购转介绍提升策略研究
人工智能·小程序
之歆4 小时前
Al大模型-本地私有化部署大模型-大模型微调
人工智能·pytorch·ai作画
legendary_bruce6 小时前
【22-决策树】
算法·决策树·机器学习
paid槮6 小时前
机器学习总结
人工智能·深度学习·机器学习
Hello123网站7 小时前
职得AI简历-免费AI简历生成工具
人工智能·ai工具
亚里随笔7 小时前
稳定且高效:GSPO如何革新大型语言模型的强化学习训练?
人工智能·机器学习·语言模型·自然语言处理·llm·rlhf
荼蘼7 小时前
机器学习之PCA降维
人工智能·机器学习
东方不败之鸭梨的测试笔记7 小时前
智能测试用例生成工具设计
人工智能·ai·langchain
max5006007 小时前
基于桥梁三维模型的无人机检测路径规划系统设计与实现
前端·javascript·python·算法·无人机·easyui