矩阵分解应用
00:00
矩阵分解在机器学习中的应用,包括PCA主成分分析、推荐系统中的矩阵分解、图像压缩与SVD、线性判别分析。
1. 主成分分析(PCA)
1.1 问题背景
给定 个 维数据点 ,希望找到数据的低维表示,保留尽可能多的信息。
1.2 数学模型
-
中心化:,
-
构造数据矩阵:()
-
协方差矩阵:( 实对称半正定矩阵)
-
对 进行特征值分解:
-
选择前 个最大特征值对应的特征向量,构成投影矩阵
-
低维表示:
1.3 与 SVD 的关系
对 进行 SVD:
则
PCA 的主成分方向就是 的列向量,主成分的方差为 。
1.4 方差解释比
前 个主成分解释的方差比例为:
通常选择 使 (或 )。
1.5 PCA 的优缺点
优点:
- 降维去相关
- 保留最大方差
- 无参数方法
缺点:
- 线性方法,无法处理非线性结构
- 主成分可能缺乏可解释性
- 对异常值敏感
2. 推荐系统中的矩阵分解
2.1 问题背景
用户-物品评分矩阵 ()大部分元素缺失,需要预测缺失的评分。
2.2 基本模型
将评分矩阵分解为两个低秩矩阵的乘积:
其中 为 (用户隐因子矩阵), 为 (物品隐因子矩阵),。
2.3 目标函数
其中 为已观测评分的集合, 为正则化参数。
2.4 求解方法
随机梯度下降(SGD):
其中 , 为学习率。
交替最小二乘(ALS):
固定 ,求解 ;固定 ,求解 。交替进行直到收敛。
2.5 SVD 与推荐系统
截断 SVD 可以用于推荐系统,但需要处理缺失值。常用方法:
- 用均值填充缺失值后做 SVD
- 使用 SVD 的变体(如 SVD++)
- 直接优化低秩近似
2.6 实际应用
- Netflix Prize 竞赛中,矩阵分解方法是获胜算法的核心
- Amazon、淘宝等电商的推荐系统
- 音乐、视频推荐
3. 图像压缩
3.1 基本原理
灰度图像可以表示为矩阵 (),对 进行 SVD:
保留前 个奇异值:
3.2 压缩比
原始存储: 个数
压缩后存储: 个数( 个 , 个 , 个 )
压缩比:
3.3 压缩质量
保留的奇异值越多,压缩质量越高:
3.4 示例
对于 的图像,取 :
- 原始: 个数
- 压缩后: 个数
- 压缩比:约
4. 线性判别分析(LDA)
4.1 问题
给定带标签的数据,找到投影方向使类间距离最大、类内距离最小。
4.2 数学模型
设 为类间散布矩阵, 为类内散布矩阵,优化目标:
4.3 求解
广义特征值问题:
若 可逆:
对 进行特征值分解,取前 个最大特征值对应的特征向量。
4.4 与 PCA 的比较
| 特点 | PCA | LDA |
|---|---|---|
| 类型 | 无监督 | 有监督 |
| 目标 | 最大化方差 | 最大化类间/类内比 |
| 适用场景 | 无标签数据 | 有标签数据 |
| 投影方向数 | 最多 | 最多 ( 为类别数) |
5. 其他应用
5.1 自然语言处理
- 潜在语义分析(LSA):对词-文档矩阵做 SVD,发现潜在语义结构
- 词嵌入:基于矩阵分解的词向量学习方法
5.2 信号处理
- 降噪:截断小奇异值去除噪声
- 信号分离:利用 SVD 分离混合信号
5.3 数值计算
- 矩阵低秩近似:Eckart-Young 定理保证 SVD 给出最优低秩近似
- 条件数估计:
- 有效秩:根据奇异值分布确定矩阵的”有效秩”
5.4 系统理论
- 模型降阶:用低秩近似简化高阶系统
- 可控性与可观测性:通过矩阵的秩分析系统性质