课程范围与三段式路线
为什么合在一起讲: 封面给出主题,组织图给出 Review、Small data、Big data 的连续路线,两页共同定义本讲边界。
Methods and tools for big data · Chapter 4
源文件: c4.pdf
统计与代数复习 → PCA / SVD / QR → Tall-and-skinny 分布式计算 → Random projection 与 randomized PCA
OVERVIEW 01
如何把高维数据压缩到更少坐标,同时保留方差、相似度、谱或两两距离等关键结构?
PCA / SVD / QR 属于确定性线性代数主线;cosine sampling 与 random projection 用随机性降低通信或计算。
Small data 可单机处理;Big data 中 X 不入内存,矩阵形状、稀疏度和分区决定速度。
能从保证、稳定性、通信和矩阵形状四个角度选择降维路线,并读懂推导与图示。
OVERVIEW 02
协方差矩阵 → 特征方向 → PCA → SVD 稳定实现 → Householder QR → 截断低秩近似。
Tall-and-skinny → Gram MapReduce → cosine sampling / tiled QR。
从 PCA 的最优子空间跳到 JL 保距,再用随机投影、QR 和小矩阵 SVD 组成 randomized PCA。
课堂面积与容量的 PCA 视觉 Example;Householder 反射把一个分量取反并逐列制造零。
OVERVIEW 03
| 单元 | 页码 | 类型 | 共同任务 | 补足 / 视觉重点 |
|---|---|---|---|---|
| U01 · 课程范围与三段式路线 | P001-P002 | 导入 | 封面给出主题,组织图给出 Review、Small data、Big data 的连续路线,两页共同定义本讲边界。 | 公式 / 算法 |
| U02 · 从抽样统计到协方差矩阵 | P003-P005 | 概念 | 传统统计策略解释为何需要数据压缩;一维统计量与二维协方差随后把“保留什么信息”写成可计算量。 | 公式 / 算法 |
| U03 · 特征分解基础与小数据入口 | P006-P009 | 复习 | 两页代数复习完成特征值到对角化的链条,随后路线分隔页和引语共同把数学结构转入可计算的小数据方法。 | 公式 / 算法 |
| U04 · 课堂数据上的 PCA 完整流程 | P010-P014 | EXAMPLE | 问题、原始散点、标准化投影、主成分坐标和三步算法是一个不可拆分的 worked example。 | 上下文补足 |
| U05 · 扰动如何暴露特征分解的不稳定性 | P015-P015 | 推导 | 该页是一段完整扰动推导,单独建立后续比较 SVD 稳定性的尺度。 | 公式 / 算法 |
| U06 · 从二维变换构造一般 SVD | P016-P019 | 推导 | 变换图、二维推导、矩形推广和稳定性结论共同完成 SVD 的几何到代数链条。 | 视觉重点 |
| U07 · Householder QR:从反射 Example 到逐列三角化 | P020-P023 | EXAMPLE | QR 定义、Householder Example、第一轮消元和完整迭代必须连续阅读,才能看清反射如何变成算法。 | 上下文补足 |
| U08 · PCA、SVD 与截断低秩近似 | P024-P025 | 模型 | 第一页证明 SVD 如何给出协方差谱,第二页紧接着比较实现路线并给出截断规则。 | 视觉重点 |
| U09 · 从单机线性代数切换到分布式矩阵 | P026-P027 | 系统 | 章节分隔页宣布 Big data,下一页马上定义矩阵形状和分区方式,两页共同改变计算模型。 | 公式 / 算法 |
| U10 · Tall-and-skinny 的 Gram 矩阵 MapReduce | P028-P030 | 算法 | 设置、把问题压成 X^\top X、以及直接 MapReduce 实现构成一个完整基线算法。 | 公式 / 算法 |
| U11 · Cosine sampling:从文档相似度到无偏 Gram 近似 | P031-P035 | 算法 | 长度偏差、余弦定义、采样算法、期望证明与参数复杂度是一条完整的动机到保证链。 | 上下文补足 |
| U12 · Tiled QR 的分布式更新顺序 | P036-P036 | 算法 | 该页独立给出 block QR 的完整阶段和依赖关系。 | 公式 / 算法 |
| U13 · Random projection 与 randomized PCA | P037-P041 | 模型 | PCA 总结提出随机替代问题,随后定义保距目标、解释随机子空间、列出边界,并组合成 randomized PCA。 | 上下文补足 |
| U14 · 五个关键问题与课程结束 | P042-P043 | 总结 | 关键点页给出完整回顾入口,结束页只关闭课程;合并后保持结尾连续。 | 公式 / 算法 |
OVERVIEW 04
| 公式 / 模型 | 变量与条件 | 用途 | 单元 / 页码 |
|---|---|---|---|
| \bar X,\ \sigma,\ \sigma_{X_i,X_j} | 均值、标准差与协方差;样本分母采用 n-1 | 描述中心、离散和变量联动 | U02 / P004-P005 |
| M=PDP^{-1} | M 可对角化;D 的对角线为特征值 | 把协方差拆成独立方向 | U03 / P006-P007 |
| Z_{i,j}=\frac{X_{i,j}-\bar X_i}{\sigma_{X_i}} | 逐属性标准化 | 消除量纲和范围主导 | U04 / P014 |
| \lVert\delta D\rVert\le\lVert P^{-1}\rVert\lVert P\rVert\lVert\delta M\rVert | 矩阵范数满足次乘性 | 评估扰动放大 | U05 / P015 |
| X=U\Sigma V^\top | 任意实矩阵;奇异值通常降序 | 稳定分解与低秩近似 | U06 / P017-P019 |
| H_u=I-\frac{2uu^\top}{u^\top u} | u 非零 | 构造 Householder 反射并消零 | U07 / P020-P023 |
| X^\top X=V\Sigma^2V^\top | X 已中心化;课件省略协方差缩放常数 | 由 SVD 读取 PCA 谱 | U08 / P024-P025 |
| \cos(d_i,d_j)=\frac{\langle d_i,d_j\rangle}{\lVert d_i\rVert\lVert d_j\rVert} | 两向量范数非零 | 比较方向而非长度 | U11 / P032 |
| X^\top X\approx DX^{\prime}D | X^{\prime} 是采样得到的列余弦矩阵 | 恢复 Gram 矩阵尺度 | U11 / P034-P035 |
| X^{\prime}=\frac{1}{\sqrt d}XR | R 的条目独立同分布、零均值 | 随机保距降维 | U13 / P038-P040 |
| QQ^\top X=Q(U_1\Sigma V^\top) | Q 张成随机候选子空间 | Randomized PCA 近似 SVD | U13 / P041 |
目标: 把矩阵拆成 A=U\Sigma V^\top。记法上,V 管输入方向,\Sigma 管缩放,U 管输出方向。
先看矩阵形状,再决定算哪一边。 固定计算 A^\top A 并不总是划算;手算时应选阶数更小的 Gram matrix。
| 矩阵形状 | 优先计算 | 先得到 | 再恢复另一边 |
|---|---|---|---|
| square: n\times n | A^\top A 或 AA^\top | V 或 U | 用映射公式恢复 |
| wide: m\times n,\ m<n | AA^\top\in\mathbb R^{m\times m} | U | v_i=A^\top u_i/\sigma_i |
| tall-and-skinny: m\times n,\ m>n | A^\top A\in\mathbb R^{n\times n} | V | u_i=Av_i/\sigma_i |
取一个非对角、满秩、对称正定矩阵:
所以 eigenvalues 是 \lambda_1=16、\lambda_2=4。分别代回线性方程并归一化:
这里为什么有 U=V: 不是所有方阵都这样。本例的 A 对称正定,它的 eigenvectors 同时是左右 singular vectors。
取 A\in\mathbb R^{2\times3}。如果硬算 A^\top A,要解 3\times3 EVD;改算 AA^\top 只需解 2\times2。
现在从左 singular vectors 恢复右 singular vectors:
v_3 对应 input nullspace,只在 full SVD 中出现。组装结果:
取 A\in\mathbb R^{4\times2}。这次 A^\top A 只有 2\times2,比 AA^\top\in\mathbb R^{4\times4} 小。
rank 是 2,所以实际计算通常采用 thin SVD:
如果题目明确要求 full SVD,再补两个左侧零空间方向:
thin 与 full 的区别: 两者重建的 A 完全相同。full SVD 多出的列只负责补成完整 orthonormal basis,不增加非零信息。
统一记法: eigenvalue 开根号得到 singular value;用 Av_i=\sigma_i u_i 和 A^\top u_i=\sigma_i v_i 在左右方向之间转换。某一对 u_i,v_i 同时乘以 -1 仍是同一个 SVD,所以答案的列符号可能不同。
设 A\in\mathbb R^{m\times n},\ m\gg n。先做 thin QR:
真正做 SVD 的对象从 m\times n 大矩阵变成 n\times n 小矩阵 R。下面复用上一个 4\times2 例子。
把两列记成 c_1=(1,1,1,1)^\top、c_2=(1,1,1,-1)^\top。为便于手算,这里用 Gram-Schmidt 写出数值;实际程序通常使用更稳定的 Householder QR 或 TSQR。
检查列关系:2q_1=c_1,q_1+\sqrt3q_2=c_2,所以 QR=A。
这里的 \widetilde U 是 R 的左 singular vectors,不是原矩阵 A 的最终左 singular vectors。
结果与直接对 A^\top A 求解完全一致。区别是 QR 先把高维行空间压进小矩阵 R,SVD 的核心分解只发生在 n\times n 上。
目标: 找到数据 variance 最大的方向,把数据投影过去,用更少维度保留主要信息。
用一个 4\times3 数据矩阵,最后选两个主方向。行是样本,列是 feature:
样本数 m=4,所以 covariance 要除以 m-1=3:
对 C 做 EVD。这个矩阵的第三个 feature 已经和前两个 feature 解耦,所以 characteristic polynomial 可以直接拆开:
对应 eigenvectors 是:
怎么判断哪个方向真正有代表: 看 eigenvalue 占总 variance 的比例。eigenvalue 越大,数据在对应 eigenvector 方向上展开得越明显,这个方向越有代表性。
如果题目要求从 3D 降到 2D,或者要求保留约 85\% 的 variance,就选前两个主方向 v_1,v_2。第三个方向 v_3 只解释约 14.3\%,所以在 2D PCA 里丢掉它。
取 k=2 时:
这个 Z 就是 4 个样本在两个主方向上的二维 PCA 坐标。它把 4\times3 的 centered data 压成 4\times2。
如果要看丢掉第三方向后损失了什么,可以重构近似:
可以看到第三个 feature 的上下波动被抹掉了,因为它对应的 v_3 是最小 variance 方向。
SVD 视角: 如果直接对 centered X 做 SVD,V 仍然给 principal directions,且 covariance eigenvalue 和 singular value 的关系是:
怎么记: 做完 EVD 后,不是“有几个 eigenvectors 就都保留”。先按 eigenvalue 从大到小排序,再看 explained variance ratio/cumulative variance。要选两个方向,就选 eigenvalue 最大的两个方向;它们在这个例子里合计解释 85.7\% 的 variance。
把降维目标转成协方差矩阵与谱分解语言。
P001-P009
模块衔接: 从传统统计压缩的局限出发,依次建立方差、协方差、特征值和对角化。
为什么合在一起讲: 封面给出主题,组织图给出 Review、Small data、Big data 的连续路线,两页共同定义本讲边界。
为什么合在一起讲: 传统统计策略解释为何需要数据压缩;一维统计量与二维协方差随后把“保留什么信息”写成可计算量。
抽样和分类本身就是两次压缩:总体被样本代表,个体又被类别代表。计算量下降了,但同类个体差异和个性化目标也被抹平。
高维数据允许更细地描述个体,却把问题转成如何在不粗暴分类的前提下压缩属性。
均值给出中心,标准差与方差给出一个变量围绕中心的离散程度。标准差与原变量同量纲,方差便于代数运算。
这些量仍是逐列统计,无法判断教室面积增加时容量是否也增加。
协方差把两个变量相对均值的偏差相乘并累加:同号偏差贡献正值,异号偏差贡献负值。协方差为正意味着二者倾向同向变化。
把所有变量对的协方差排成矩阵后,对角线是方差,非对角线是联动。该矩阵实对称,因而能用正交特征向量分解成互不耦合的变化方向。
只看每列方差会遗漏变量之间的重复信息。两个属性各自方差都很大,却可能几乎沿同一方向变化;若把它们都当作独立信息,就会高估数据的有效维数。协方差矩阵把这一重复性显式放在非对角元素中。
协方差公式先对每个观测减去各自变量均值,再将同一观测上的两个偏差相乘。样本同时高于各自均值或同时低于均值时乘积为正;一高一低时为负。跨样本求和后,符号和大小概括总体联动。
协方差受量纲影响:面积用平方米、容量用人数时,数值尺度不同。PCA Example 会先标准化,使每列以自身标准差为单位。这样协方差矩阵更接近相关系数矩阵,主方向不会被大单位变量自动占据。
矩阵对称性意味着第 i 个变量对第 j 个变量的协方差与反向相同。实对称矩阵具有正交特征向量,因此后面得到的新坐标方向可以彼此垂直,数据在这些方向上的协方差为零。
协方差为零只说明没有线性共同变化,不能一般地推出两个变量统计独立。PCA 只利用二阶线性结构,因此它擅长寻找拉长的线性点云方向,却可能看不到弯曲流形或更高阶依赖。
从本单元到下一单元的逻辑很具体:既然协方差矩阵承载了要保留的结构,就需要找一组方向把它变成对角形式。特征值和特征向量正是完成这一换基的工具。
U01 提出在保留结构的同时压缩数据。
把“结构”落实为中心、方差和协方差。
P003 给动机,P004 建一维统计,P005 推到多维。
需要特征值工具读取协方差矩阵的方向。
原页逐句翻译: 统计策略。大数据时代之前:从大总体抽取样本,例如电话调查;基于样本推导总体测量结果;按照这些测量结果对总体分类;依据给定目标作出决策。限制:同一类别中的人并不都会以相似方式行动;目标必须是一般性的,不能个性化。
本页解释: 这页给出降维的动机背景:传统策略先压缩总体为样本,再压缩个体为类别。它能降低处理规模,却会牺牲个体差异;现代高维数据允许保留更多细节,但又引出存储和计算压力。
原页逐句翻译: 统计复习。给定数据集 X=[X_1,\ldots,X_n],中位数对应“中间”值;均值为 \bar X=\sum_{i=1}^{n}\frac{X_i}{n}。标准差是 X_i 与 \bar X 之间的平均距离,表示数据集的离散程度,并由 \sigma=\sqrt{\frac{\sum_{i=1}^{n}(X_i-\bar X)^2}{n-1}} 给出。方差同样衡量离散程度,等于 \sigma^2。这些测量都是一维的。
本页解释: 均值描述中心,标准差与方差描述围绕中心的展开程度。分母 n-1 对应课件采用的样本标准差写法。最后一句指出缺口:这些量单独处理每个变量,尚不能表达两个属性是否共同变化。
原页逐句翻译: 统计复习。给定数据集 [X_1,X_2]=[[X_{1,1},\ldots,X_{1,n}],[X_{2,1},\ldots,X_{2,n}]],协方差为
它满足 \sigma_{X_1,X_2}=\sigma_{X_2,X_1} 与 \sigma_{X,X}=\sigma^2;它评估两个维度相对各自均值如何共同变化,并说明二者是否“共同增加”。给定 n 个变量 X_1,\ldots,X_n,协方差矩阵由 (\sigma_{X_i,X_j})_{1\le i,j\le n} 给出。
本页解释: 协方差矩阵把每一对变量的联动关系排成一个对称矩阵,对角线就是各变量方差。PCA 后面会对这个矩阵做谱分解:大特征值对应数据变化最强的方向。
本单元页间主线: P003 给动机,P004 建一维统计,P005 推到多维。
为什么合在一起讲: 两页代数复习完成特征值到对角化的链条,随后路线分隔页和引语共同把数学结构转入可计算的小数据方法。
对线性变换 M,若非零向量 X 满足 MX=\lambda X,这个方向在变换后不转向,只按 \lambda 缩放。课件把“秩为 n”与“有 n 个非零特征值”相连:满秩意味着矩阵可逆,所以 0 不能是特征值;按代数重数计,全部 n 个特征值都非零。反过来,只要有零特征值,就存在非零向量被送到零向量,矩阵必不满秩。
若 M 有 n 个两两不同的特征值,对应特征向量必线性无关,因而自动组成一组基。这是可对角化的充分条件,不是必要条件:重复特征值也可能拥有足够多的独立特征向量。
设原坐标基为 B,特征向量基为 B^{\prime}。课件把 P 定义为从 B^{\prime} 到 B 的过渡矩阵,因此 P 的列是在基 B 中写出的特征向量。计算 P^{-1}x 先把原坐标改写成特征坐标,D 在每个特征坐标上独立缩放,最后 P 把结果送回原坐标,所以 M=PDP^{-1}。
这一方向约定也解释了矩阵幂:相邻的 P^{-1}P=I 抵消,于是 M^k=(PDP^{-1})^k=PD^kP^{-1}。复杂的反复矩阵乘法变成对角线上各特征值的 k 次幂。
特征值也可由 \chi_M(\lambda)=\det(M-\lambda I_n) 的根找到,因为行列式为零恰好说明 M-\lambda I_n 有非零零空间。课件说多项式在 \mathbb K 上分裂,是指它能在该数域中完全分解为一次因子;若不分裂,就缺少足够的本域特征值。
分裂仍不够。对每个特征值 \lambda,特征空间 \ker(M-\lambda I_n) 的维数是几何重数,而它作为特征多项式根出现的次数是代数重数。只有每个特征值的几何重数都达到对应代数重数,全部特征空间合起来才提供 n 个独立特征向量,矩阵才可对角化。不可逆矩阵称为 singular matrix;等价地,它的行列式为零,并含零特征值。
PCA 面对的是协方差矩阵。它是实对称矩阵,因此不仅可对角化,还能选取正交归一的特征向量基;这排除了“一般方阵可能没有完整特征基”的障碍。每个特征向量给出一个新坐标轴,对应特征值给出数据沿该轴的方差。按特征值从大到小排序并截断,就得到后续 PCA 的降维规则。
不过,存在分解不等于适合通过展开行列式来计算。特征多项式把理论条件讲清楚,实际算法还要考虑舍入误差、稳定性和矩阵尺寸。P008 把路线切到 Small data,P009 的引语则把问题从“数学上存在”推到“怎样可靠计算”;下一组页面因此先用可视化 Example 建立 PCA,再比较 eigen decomposition、SVD 与 QR。
U02 得到对称协方差矩阵。
提供读取协方差谱的代数语言。
P006 定义特征对,P007 给条件,P008-P009 转入算法。
用课堂数据 Example 直观看 PCA。
原页逐句翻译: 代数复习。令 B 是向量空间 V 的一组基。对 M\in\mathcal M_n(\mathbb K),当且仅当存在特征向量 X\in\mathcal M_{n,1}(\mathbb K) 使 MX=\lambda X 时,\lambda\in\mathbb K 是 M 的特征值。重要性质:若 M 的秩为 n,则它有 n 个非零特征值;若它有两两不同的 n 个特征值,则可对角化;M 可对角化当且仅当其特征向量构成一组基 B^{\prime};M=PDP^{-1},其中 D 的对角线放置特征值,P 是从 B^{\prime} 到 B 的过渡矩阵;任意 k\in\mathbb N 都有 M^k=PD^kP^{-1}。
本页解释: 特征向量是线性变换只缩放、不改变方向的方向。对角化把一般矩阵运算转成对角元素上的独立运算,这正是协方差矩阵能按主方向拆开的代数基础。
原页逐句翻译: 代数复习。M 的特征多项式定义为映射 \chi_M:\mathbb K\to\mathbb K,\lambda\mapsto\det(M-\lambda I_n)。性质:若 \lambda 是 M 的特征值,则它是 \chi_M 的根;M 可对角化,当且仅当 \chi_M 在 \mathbb K 上分裂,且每个特征值 \lambda 的特征空间维数等于其重数。一般说明:并非所有方阵都可对角化;任何对称矩阵都可对角化;行列式通常“难以”计算;不可逆矩阵称为奇异矩阵(singular matrix)。
本页解释: 协方差矩阵是实对称矩阵,所以这里最关键的保证是它可以正交对角化。课件同时提醒,直接通过行列式求根并不适合大规模数值计算;后续 SVD 与 QR 提供更稳定、可实现的路线。
原页逐句翻译: 章节组织:中心主题是“降维”,分支为“复习”“小数据”“大数据”;本页高亮“小数据”。
本页解释: 这一分隔页表示先把刚才的统计量和特征分解用于能在单机内存中处理的数据,核心是 PCA 以及支撑它的 SVD、QR。
原页逐句翻译: “我钦佩你计算方法的优雅;骑着真正数学的骏马穿过这些田野一定很好,而像我们这样的人却不得不费力地徒步前行。”——Albert Einstein。
本页解释: 引语在内容上充当过渡:漂亮的数学结构需要落到可计算的方法。后续不只写出分解存在性,还比较稳定性、计算顺序和矩阵形状。
本单元页间主线: P006 定义特征对,P007 给条件,P008-P009 转入算法。
问题: page6,7 翻译成中文详细解释。
设 \mathcal B 是向量空间 V 的一组基。对矩阵 M\in M_n(\mathbb K),如果存在一个特征向量 X\in M_{n,1}(\mathbb K),使得 MX=\lambda X,那么 \lambda\in\mathbb K 是 M 的一个特征值。
矩阵 M 的特征多项式定义为:\chi_M:\mathbb K\rightarrow\mathbb K,把 \lambda 映射到 \det(M-\lambda I_n)。
和本章主线的关系: P006-P007 不是抽象代数复习而已。它们解释 PCA 为什么能找“方向”:covariance matrix 对称,所以可对角化;它的 eigenvectors 给出主方向,eigenvalues 表示这些方向上的 variance 大小。
问题: 可对角化难道不是 \operatorname{rank}(M)=n 就行了吗,为什么要 eigenvectors form \mathcal B^{\prime}?
回答: 不是。\operatorname{rank}(M)=n 只说明 M 可逆,也就是 0 不是特征值;它不保证有足够多的特征向量。可对角化要求存在可逆矩阵 P,使得 M=PDP^{-1}。而 P 的列就是一组特征向量。P 要可逆,这些特征向量就必须线性无关并组成一组基 \mathcal B^{\prime}。
反例: 令
它的 determinant 是 1,所以 \operatorname{rank}(M)=2,满秩、可逆。但它只有一个特征值 \lambda=1,并且 (M-I)X=0 只给出一条特征向量方向 \operatorname{span}((1,0))。二维空间需要两个线性无关的特征向量才能成基;这里只有一个方向,所以不可对角化。
一句话: 满秩回答“有没有把空间压扁”;可对角化回答“有没有足够多的不变方向”。PCA 关心后者,因为 principal directions 本质上就是 covariance matrix 的 eigenvector basis。
问题: 但是 X 不是都在 \mathcal B^{\prime} 里了吗?PDP^{-1}X 难道不是 \mathcal B 映射到 \mathcal B^{\prime}?为什么是先乘 P^{-1}?
回答: 公式 M=PDP^{-1} 默认在原基 \mathcal B 里表示同一个线性变换。输入向量写成列向量 x 时,默认它也是原基坐标 [x]_{\mathcal B},不是特征基坐标。
问题: 可对角化说“特征向量足够多,能组成一组基 \mathcal B^{\\prime}”。但是特征向量难道不是可以组成一个 \mathcal B^{\\prime} 吗?
回答: 不一定。特征向量当然可以收集成一个集合,但“集合”不等于“基”。一组基必须同时满足两个条件:线性无关,并且能 span 整个空间。对 n 维空间来说,就是要能挑出 n 个线性无关的特征向量。
一句话: 特征向量“存在”不够;特征向量必须“够多且线性无关”,才叫能组成 \mathcal B^{\\prime}。
问题: 特征向量难道不是可以组成一个 \mathcal B^{\prime} 吗?那难道 x 不是 \mathcal B^{\prime} 的?
回答: 向量 x 属于向量空间 V,不属于某个基。基只是写坐标的尺子。同一个抽象向量可以用原基 \mathcal B 写,也可以用特征向量基 \mathcal B^{\prime} 写;换基后,向量没变,坐标列变了。
一句话: \mathcal B^{\prime} 是新坐标系,x 是向量本身;向量可以用这个坐标系表示,但不能说向量“就是”这个坐标系的。
问题: EVD 应该怎么求?
回答: EVD 是 eigenvalue decomposition。对一个可对角化的方阵 A,目标是找到一组特征向量,把矩阵写成 A=PDP^{-1}。如果 A 是对称矩阵,可以写成更好的正交形式 A=Q\Lambda Q^\top。
小例子: 令 A=\begin{pmatrix}2&1\\1&2\end{pmatrix}。特征方程是 \det(A-\lambda I)=(2-\lambda)^2-1=0,所以特征值是 \lambda=3 和 \lambda=1。对应特征向量可以取 (1,1)^\top 和 (1,-1)^\top。单位化后放进 Q,对角线上放 3,1,得到 A=Q\Lambda Q^\top。
和 PCA 的关系: PCA 不是随便对原始数据矩阵做 EVD,而是通常对 covariance matrix 或 X^\top X 做 EVD。最大的 eigenvalues 对应最大 variance 的方向;这些 eigenvectors 就是 principal components。
问题: P009 · Einstein quote 是什么意思?
回答: 这句话不是在讲 Einstein 本人, 而是在给本章定调: 好的数学方法能把复杂计算变成更省力的路径。quote 里“骑着真正数学的马”指用结构化的数学工具前进; “步行”指没有这些工具时, 只能在原始数据和繁琐计算里硬走。
放到 Chapter 4, 它是在引出 dimensionality reduction: 高维数据直接算很笨重, 但 covariance、eigenvector、PCA、SVD 这些工具能抓住主要方向, 用更低维的表示保留主要结构。后面讲 PCA/SVD/random projection, 都是在回答同一个问题: 怎么用数学结构少走路。
图谱读法: 这是一张累计总图, 不是 P009 的孤立小图。P009 先接到“为什么要降维”和“统计/代数前置”; 后续问题会继续挂到同一张图的相关概念上。
在单机条件下完成 PCA Example、稳定 SVD 和 Householder QR。
P010-P025
模块衔接: 用复习中的协方差谱解释 PCA,再以稳定性推动 SVD 和 QR。
为什么合在一起讲: 问题、原始散点、标准化投影、主成分坐标和三步算法是一个不可拆分的 worked example。
教室面积、容量、黑板数和电脑数构成原始属性。目标是找出有用、无用或冗余属性,但 PCA 不直接按列删除,而是构造新的线性组合。
P011 的散点沿对角方向拉长,说明面积和容量共享一个主要变化因素。把两列原样保留会重复编码这一趋势。
P012 先把每列减去均值并除以标准差,使量纲和范围不再支配结果。蓝线沿点云最长方向,这就是第一主成分;黑色线段表示投影残差。
协方差矩阵的最大特征向量给出蓝线方向。沿该方向投影后,样本的一维坐标尽量分散,也就是保留最大方差。
P013 把同一批点写到主成分坐标系。横向第一主成分覆盖较大范围,竖向第二主成分多靠近零。只保留横坐标时,竖线长度就是每个样本被舍弃的部分。
这不是说第二主成分恒为零,而是它在这批数据上的方差小。是否舍弃应看特征值或奇异值贡献,而不是只看某个点。
P014 把图形过程整理为标准化、构造协方差矩阵、求并排序特征对。排序把最大方差方向放在前面,为后续截断建立顺序。
Example 最终说明:面积与容量可以被一个主成分高效概括;黑板数、电脑数是否冗余仍需把相应列一起放入数据后计算,不能凭常识直接删。
设标准化后的样本矩阵每行是一间教室、每列是一个属性。计算协方差矩阵后,最大特征值对应的特征向量给出 P012 蓝线的方向。每个红点与该向量做内积,就得到沿第一主成分的坐标。
P012 的黑线不是回归误差的任意画法,而是从样本点到第一主成分子空间的正交残差。PCA 选择蓝线,使所有样本残差平方和最小;等价地,它使投影坐标的方差最大。这两个表述连接了几何近似与谱优化。
P013 把蓝线变成横轴、与它正交的方向变成纵轴。数据并没有消失,只是换了坐标。真正的降维发生在把第二主成分坐标置零或删除时;此时可用第一主成分坐标和方向近似重构原标准化样本。
若第二特征值与第一特征值接近,点云不会呈细长形,删除第二方向会损失明显信息。当前图的主要依据是横向跨度大、纵向残差总体较小;它支持一维近似,却不提供统一阈值。
标准化也改变了问题含义:它让每个属性先拥有单位方差,适合不希望原始量纲决定权重的情况。若原始尺度本身就是重要权重,则是否标准化需要按任务决定,不能把步骤机械套用到所有数据。
U03 提供协方差矩阵的特征分解。
把 PCA 从目标推进到可视化算法流程。
P010 设问,P011-P013 展示坐标变化,P014 总结步骤。
比较不同分解方法的数值稳定性。
原页逐句翻译: 主成分分析。PCA 的基本想法:提供最能突出数据相似性和差异性的“视角”;这个新视角组合原有“特征”,以便最好地概括数据。Example:可以收集的教学教室数据包括面积、可容纳学生人数、黑板数量、台式计算机数量。哪些属性有用、无用或冗余?
本页解释: 这是本讲第一个明确标注的 Example。问题不只是删除某一列,而是寻找原属性的线性组合,使主要变化集中到少数新坐标。面积与容量很可能冗余,图形页会把这种相关性画出来。
原页逐句翻译: 横轴:教室面积。纵轴:学生人数。红色散点表示各教室;横轴可见刻度约为 50、100、150,纵轴可见刻度约为 50、100、150。
本页解释: 点云沿左下到右上方向分布,说明面积与容量强正相关。若分别保存两个属性,会重复记录同一主要趋势;PCA 希望用沿点云长轴的一个坐标吸收大部分变化。
原页逐句翻译: 横轴:标准化后的教室面积。纵轴:标准化后的学生人数。两轴刻度从约 -1 到 2。红点表示标准化样本,蓝色斜线表示主要方向,黑色线段把各点连接到该方向上的投影位置。
本页解释: 标准化后两个变量处于可比较尺度。蓝线沿点云最大方差方向,黑线近似垂直于蓝线,表示样本被压缩到第一主成分时舍弃的正交残差;残差越短,一维近似越好。
原页逐句翻译: 横轴:第一主成分。纵轴:第二主成分。红点是样本在主成分坐标系中的位置,蓝色水平线表示第二主成分为 0,黑色竖线显示各点到该线的第二主成分偏移;横轴约从 -3 到 2,纵轴约从 -1 到 1。
本页解释: 旋转到主成分坐标后,第一主成分的跨度明显大于第二主成分。若只保留第一主成分,竖直偏移就是被丢弃的信息;图中多数偏移较小,因此这一课堂数据适合一维近似。
原页逐句翻译: 主成分分析流程。第一,标准化变量范围:避免变量取值范围差异过大,确保所有变量“贡献相同”,计算 Z_{i,j}=\frac{X_{i,j}-\bar X_i}{\sigma_{X_i}}。第二,确定变量之间的“关系”:寻找变量间相关性,并构造所有变量的协方差矩阵。第三,识别主成分:计算协方差矩阵的特征值与特征向量,并按非递增顺序重排特征值。
本页解释: 三步分别对应 P011-P013 的视觉变化。标准化解决量纲问题;协方差把联合变化编码成对称矩阵;特征向量给出新轴,特征值给出各轴方差,因此排序后即可决定保留哪些方向。
本单元页间主线: P010 设问,P011-P013 展示坐标变化,P014 总结步骤。
上下文补足:标准 PCA 默认数值特征可比较,且主要结构能由线性子空间表达。标准化公式使用每列的均值和标准差;类别属性需先编码,强非线性结构则可能需要别的方法。
为什么合在一起讲: 该页是一段完整扰动推导,单独建立后续比较 SVD 稳定性的尺度。
这里的输入是待分解矩阵 M,输出关注对角矩阵 D。实际计算中的舍入、测量噪声或近似存储都可写成小扰动 \delta M;稳定性要比较它引起的 \delta D 有多大。公式正确并不自动代表数值稳定,关键是从输入到输出的放大倍数。
由特征分解 M=PDP^{-1} 左乘 P^{-1}、右乘 P,得到 D=P^{-1}MP。课件在这一局部扰动模型中保持基矩阵 P 不变,只考察 M 的变化如何进入同一坐标变换。
把输入换成 M+\delta M,输出相应写成 D+\delta D,于是
两边减去 D 后得到 \delta D=P^{-1}\delta MP。对乘积使用范数的次乘性 \lVert ABC\rVert\le\lVert A\rVert\lVert B\rVert\lVert C\rVert,便有
这就是式 (4.1)。推导中的每一因子都有来源:中间是输入误差大小,两侧分别是换入特征坐标和换回原坐标的尺度。
对 A=(a_{i,j})_{1\le i\le m,\ 1\le j\le n},课件定义
这里 m、n 是行列数,a_{i,j} 是第 i,j 个条目,p\ge1 控制对大条目的权重。这是把全部矩阵条目当作一个向量后取 p-norm;当 p=2 时就是 Frobenius norm。它不应与所有 induced operator norm 混为一谈,尤其不能默认任意 entrywise p-norm 都满足推导所用的矩阵乘法次乘性;式 (4.1) 的范数边界需要选取与乘法相容的矩阵范数,或另行计入常数。
乘积 \kappa(P)=\lVert P^{-1}\rVert\lVert P\rVert 是基矩阵的条件因子。若特征向量彼此接近线性相关,P 接近奇异,\lVert P^{-1}\rVert 会很大,小扰动就可能被明显放大。上界只给最坏情况,不表示每次都达到该倍数;它也固定了 P,没有完整描述扰动后特征向量本身的变化、重特征值的敏感性或特征值重新排序。
这页的作用是为下一单元提供比较尺度。SVD 的左右因子是正交矩阵;在二范数下其范数与逆范数均为 1,不会因换基本身额外放大误差。对 PCA 而言,这说明“求同一个谱结构”可以有数值性质不同的实现路线。
U04 说明 PCA 要求协方差谱。
说明直接特征分解可能放大数值误差。
从相似变换逐步得到扰动范数上界。
用正交因子构造稳定的 SVD。
原页逐句翻译: 数值稳定性。方法的稳定性定义它如何对小扰动作出“反应”。由 M=PDP^{-1} 得 D=P^{-1}MP;对小扰动 \delta M,有 D+\delta D=P^{-1}(M+\delta M)P,因此 \delta D=P^{-1}\delta MP,转成范数即 \lVert\delta D\rVert\le\lVert P^{-1}\rVert\lVert P\rVert\lVert\delta M\rVert,式 (4.1)。对 m\times n 矩阵 A=(a_{i,j})_{1\le i\le m,\ 1\le j\le n},p 范数定义为 \lVert A\rVert_p=\left(\sum_{i=1}^{m}\sum_{j=1}^{n}|a_{i,j}|^p\right)^{1/p}。式 (4.1) 表明扰动 \lVert\delta M\rVert 可能被放大至 \lVert P^{-1}\rVert\lVert P\rVert 倍。
本页解释: 不稳定不是说公式错误,而是输入中很小的舍入误差会在输出中变大。乘积 \lVert P^{-1}\rVert\lVert P\rVert 是条件放大因子;当特征向量基接近线性相关时,它可能很大。下一单元用正交矩阵构造 SVD,把这一因子压到 1。
本单元页间主线: 从相似变换逐步得到扰动范数上界。
为什么合在一起讲: 变换图、二维推导、矩形推广和稳定性结论共同完成 SVD 的几何到代数链条。
P016 展示剪切、伸缩、旋转、反射对正交基的影响。SVD 选择一组特殊输入方向,使一般矩阵在这些方向上只做独立缩放,再用正交方向表达输出。
右奇异向量给输入方向,奇异值给伸缩倍率,左奇异向量给输出方向。
把任意输入展开到正交基后,线性性允许分别作用。内积系数写成转置乘法,就得到两个秩一矩阵之和。
把输入基向量、缩放量和输出基向量分别收集,形成 U、\Sigma、V^\top 三个因子。
矩形矩阵的输入空间与输出空间维数不同,因此 U、\Sigma、V 的尺寸必须分别检查。秩决定正奇异值个数。
X^\top X 与 XX^\top 共享非零谱;右奇异向量位于属性空间,正适合 PCA。
U 与 V 正交,逆等于转置,二范数保持不变。相比一般特征向量矩阵 P,SVD 的正交因子不会额外放大扰动。
SVD 存在于任意矩阵,也不要求可逆;这使它成为数据矩阵上的通用工具。
二维推导中的每一项都先用右奇异向量从输入抽取一个标量系数,再乘奇异值,最后沿左奇异向量放回输出。多个秩一项相加恢复完整线性映射。一般维度只是把两项扩展为按秩计数的多项。
奇异值为零的项不传递任何输入能量,所以正奇异值个数等于矩阵秩。按奇异值从大到小排列后,前几项描述矩阵最强的输入到输出通道;截断就是删除较弱秩一项,而不是删除原始某几列。
由数据矩阵的右奇异向量可读取属性空间方向,由左奇异向量可读取样本得分方向。二者通过同一奇异值耦合。这个双边结构解释了为什么矩形数据矩阵也能做谱分析,而不需要它本身是方阵。
正交矩阵保持内积和二范数,因此旋转或反射不会把输入误差放大。\Sigma 的尺度是问题本身的尺度,而 U、V 不引入额外条件放大。P019 的稳定性比较正是把 U、V 的逆替换成转置。
SVD 不唯一主要来自符号、相同奇异值子空间内的基选择和排列;这些变化不会改变由前 k 个奇异方向张成的子空间。理解这一点可以避免把不同软件输出的向量符号差异误判为结果冲突。
图形上可把 SVD 读成先把输入旋转到右奇异方向,再沿坐标轴独立伸缩,最后旋转到左奇异方向。剪切这类看似不能靠单次旋转和轴向缩放完成的变换,也能由这三个阶段的组合表达。
U05 建立扰动放大标准。
推导 SVD 并解释其谱关系与稳定性。
P016 几何,P017 推导,P018 推广,P019 比较。
QR 用正交变换进一步改善计算流程。
原页逐句翻译: 线性变换。为简单起见考虑二维情形。矩阵 \begin{pmatrix}1&1\\0&1\end{pmatrix} 对应剪切(Shear);\begin{pmatrix}2&0\\0&1\end{pmatrix} 对应伸缩(Dilution);\begin{pmatrix}\cos\frac{\pi}{4}&\sin\frac{\pi}{4}\\-\sin\frac{\pi}{4}&\cos\frac{\pi}{4}\end{pmatrix} 对应旋转(Rotation);\begin{pmatrix}-1&0\\0&1\end{pmatrix} 对应反射(Reflection)。黄色和绿色基向量展示变换前后的方向与长度。
本页解释: 图应从上方原始正交基开始,沿每个箭头看到底部结果。剪切改变夹角,伸缩只改变一个方向长度,旋转保持长度与夹角,反射保持长度但翻转一个方向。SVD 会把一般线性变换组织成正交变换、轴向缩放、正交变换。
原页逐句翻译: 奇异值分解。令 \{v_1,v_2\} 为正交归一基,M 为线性变换矩阵。对单位向量 u_1,u_2,有 Mv_1=u_1\sigma_1 与 Mv_2=u_2\sigma_2,其中 \sigma_1,\sigma_2\in\mathbb R。对 x=\langle x,v_1\rangle v_1+\langle x,v_2\rangle v_2,先有 Mx=\langle x,v_1\rangle Mv_1+\langle x,v_2\rangle Mv_2,再得到 Mx=\langle x,v_1\rangle u_1\sigma_1+\langle x,v_2\rangle u_2\sigma_2。又因 \langle x,v_1\rangle=x^\top v_1=v_1^\top x,得到 M=u_1\sigma_1v_1^\top+u_2\sigma_2v_2^\top,矩阵形式为
本页解释: 推导先把输入向量分解到右奇异向量方向,再分别缩放,最后沿左奇异向量方向重组。每一项都是一个秩一映射;矩阵乘积把这些项压缩为 SVD 的三因子结构。
原页逐句翻译: 更一般地,对 m\times n 实矩阵 M,可写成 M=U\Sigma V^\top,其中 U=(u_1\ \cdots\ u_m) 与 V=(v_1\ \cdots\ v_n) 都是旋转矩阵,\Sigma 为对角形。尺寸为:M:m\times n、U:m\times m、\Sigma:m\times n、V:n\times n。\Sigma 对角元素称为奇异值,U 的列称左奇异向量,V^\top 的行称右奇异向量。若 U\Sigma V^\top 是秩为 r 的 m\times n 矩阵 X 的 SVD,则 \Sigma 恰有 r 个严格正元素,它们是 X^\top X 的 r 个特征值的平方根,并保留对应重数;V 的列是 X^\top X 的特征向量,U 的列是 XX^\top 的特征向量。
本页解释: 这页把二维推导推广到矩形矩阵。右奇异向量位于属性空间,左奇异向量位于样本空间;非零奇异值把两边配对。对数据矩阵而言,这正好连接 PCA 所需的协方差谱。
原页逐句翻译: SVD 的一般说明:SVD 不唯一,并且对任何矩阵都存在,无论矩阵是否可逆;只要相应奇异向量同步重排,奇异值也可重排;若 U\Sigma V^\top 是 X^\top 的一个 SVD,则 V\Sigma^\top U^\top 是 X 的一个 SVD。因为 U,V 是旋转矩阵,所以它们正交,即 U^\top U=I_m 与 V^\top V=I_n。稳定性方面,小扰动在特征分解中放大因子为 \lVert P^{-1}\rVert\lVert P\rVert;在 SVD 中为 \lVert U^{-1}\rVert\lVert(V^\top)^{-1}\rVert=\lVert U^\top\rVert\lVert V\rVert=1。
本页解释: 关键不是 SVD 一定更快,而是正交因子不会放大二范数误差。奇异值的顺序虽然可变,但算法通常按从大到小排列,以便截断时直接保留最重要方向。
本单元页间主线: P016 几何,P017 推导,P018 推广,P019 比较。
问题: 图里的 \lVert P^{-1}\rVert\lVert P\rVert 和 \lVert U^{-1}\rVert\lVert (V^\top)^{-1}\rVert=1 是什么意思?
短答案: 它在比较 EVD 和 SVD 对小误差的放大能力。EVD 要用 eigenvector matrix P 换基,P 可能很歪,所以误差可能被 \lVert P^{-1}\rVert\lVert P\rVert 放大;SVD 用的是正交矩阵 U,V,正交矩阵不拉长向量,所以这一部分的放大因子是 1。
怎么记: EVD 是“可能用一套歪坐标系算”;SVD 是“只用正交坐标系旋转/反射,再做对角缩放”。所以 SVD 通常更数值稳定。
为什么合在一起讲: QR 定义、Householder Example、第一轮消元和完整迭代必须连续阅读,才能看清反射如何变成算法。
对高而窄矩阵,直接在原矩阵上做完整 SVD 成本高。QR 把列空间提炼为正交基 Q,把核心数值问题压到较小上三角矩阵 R。
Gram-Schmidt 在课件中被标为不稳定;Householder 用正交反射保持范数,适合稳定消元。
把 w 分成沿 u 和正交于 u 的分量。Householder 矩阵减去两倍的 u 方向投影,因此 u 分量反号,正交分量不变。
P021 图中的两条绿色向量关于竖直轴对称,直接对应 -c_1u+c_2v。
选择反射使第一列映到第一坐标轴,第一项以下全部变零。后续反射限制在右下子块,避免破坏前面已形成的上三角结构。
重复到 \min(m-1,n) 次后得到 R;所有反射乘积仍正交,转置即可给出逆。
若 X=QR 且 R=U_1\Sigma V^\top,则 X=(QU_1)\Sigma V^\top。QU_1 仍正交,所以这就是 X 的 SVD。
该流程把大矩阵的列空间构造与较小核心矩阵的谱分解分开,为 distributed QR 和 randomized PCA 提供模板。
Householder 矩阵本身正交且对称,连续左乘只改变矩阵的行方向表示,不改变列之间的内积结构。每一步选择反射向量,使当前列的尾部折叠到一个坐标上,因而用一次变换同时制造多个零。
第一轮作用于整列;第二轮把变换嵌入块对角矩阵,只作用于去掉首行首列后的子空间。这样的嵌入让已经完成的第一列保持不动。重复后,所有对角线下元素归零,得到上三角 R。
Q 不是每轮反射矩阵的简单原顺序抄写。由 R 等于若干反射左乘 X,再利用每个正交因子的逆为转置,才能整理出 X=QR。推导时要沿等式方向检查乘积顺序,避免把左乘消元顺序和最终 Q 的顺序混淆。
若 X 高而窄,Q 保留原列空间但可能仍很高,R 只有属性数乘属性数。对 R 做 SVD 的主要计算因此与行数脱钩;最终 QU_1 只负责把较小问题的左奇异方向映回原样本空间。
P021 的几何 Example 是算法正确性的局部模型:沿 u 的分量取反、正交分量保持,保证长度不变。QR 将这个动作选择为把列尾部反射到坐标轴,而不是任意做一次镜像。
U06 给出稳定但可能昂贵的 SVD。
用 Householder 正交变换构造 QR 并加速 SVD。
P020 定义,P021 Example,P022-P023 迭代。
把 SVD 结果直接接回 PCA 与截断。
原页逐句翻译: QR 分解。列线性无关的任意 X\in\mathcal M_{m,n}(\mathbb K) 可写成 X=QR,其中 Q\in\mathcal M_{m,n}(\mathbb K) 正交,R\in\mathcal M_{n,n}(\mathbb K) 上三角。若 X 可逆,则 R 也可逆。计算 QR 有多种方法:著名的 Gram-Schmidt 不稳定;另两种常见方法基于 Givens rotations 与 Householder reflections,前者较慢但更容易并行。给定向量 u,Householder reflection 为 H_u=I-\frac{2uu^\top}{u^\top u}。在正交归一基 \{u,v\} 中,w=c_1u+c_2v,其中 c_1=\frac{\langle w,u\rangle}{\lVert u\rVert_2^2}、c_2=\frac{\langle w,v\rangle}{\lVert v\rVert_2^2}。
本页解释: QR 把列空间的方向信息放进正交矩阵,把坐标与尺度放进较小的上三角矩阵。Householder 反射可一次消去一列对角线下方的多个元素,因此适合构造数值稳定的 QR。
原页逐句翻译: 把 H_u 作用于 w:
这个 Example 可视化为关于同时与 u 和 v 正交的平面的反射。图中横向黄色轴是 u,竖向黄色轴是 v;绿色 w 与 H_u(w) 分居反射面的两侧,c_1u 变为 c_1H_u(u),c_2v 保持不变。
本页解释: 逐句翻译忠实保留源句“orthogonal to” u “and” v。实际公式用 \langle u,v\rangle=0 消掉交叉项,得到关于超平面 u^\perp 的反射;在这张二维图里,u^\perp 正是由 v 张成的直线。反射只翻转 u 分量,图中绿色向量关于竖直 v 轴对称。
原页逐句翻译: Householder 反射可用于求矩阵 X 的 QR 分解。Householder reflection theorem 表明,对范数相近的向量 x,y,存在正交矩阵 Q 使 y=Qx,由此可迭代构造 R,Q。应用思路:确定正交矩阵 Q_1,使 Q_1c_1=(\gamma_1,0,\ldots,0)^\top,其中 \gamma_1 与 c_1 范数相近。此时 R_1 的第一列在首元素 \gamma_1 以下全为 0,右下剩余块记作 X_1,首行其余元素以星号表示。
本页解释: 逐句翻译把源文两处“similar norm”都译为“范数相近”。标准 Householder theorem 要求两向量范数相等,因为正交变换保持二范数;算法中应取 \lVert\gamma_1\rVert=\lVert c_1\rVert。第一个反射一次消去第一列对角线以下全部元素,剩余子矩阵留给下一轮。
原页逐句翻译: 确定正交矩阵 \widetilde Q_2,使 \widetilde Q_2\widetilde c_1=(\gamma_2,0,\ldots,0)^\top;定义 Q_2=\operatorname{diag}(I_{d_1},\widetilde Q_2) 并计算课件所示 R_2=Q_1R_1,得到前两列对角线下方为零、右下剩余块为 X_2 的结构。重复 t=\min(m-1,n) 次,得到 R=Q_tQ_{t-1}\cdots Q_2Q_1X。由正交性 Q^{-1}=Q^\top,所以 X=Q_1^\top\cdots Q_t^\top R=QR。应用到 X 的 SVD:先写 X=QR;再对 R=U_1\Sigma V^\top 做 SVD;最终 X=QU_1\Sigma V^\top=U\Sigma V^\top。
本页解释: 每轮只在尚未处理的右下子块上工作,因此已经形成的零不会被破坏。课件刚定义 Q_2,下一行却写 R_2=Q_1R_1;按迭代逻辑应为 R_2=Q_2R_1,疑似课件笔误,逐句翻译仍保留课件原式。先 QR 再 SVD 的价值是把一个高矩阵的问题压到较小的上三角矩阵;这条路线会在分布式 QR 和 randomized PCA 中再次出现。
本单元页间主线: P020 定义,P021 Example,P022-P023 迭代。
课件 P023 写出 R_2=Q_1R_1;按前文新构造的第二个反射,常见递推应关注第二步左乘对当前剩余块的作用。HTML 的逐页翻译忠实保留课件写法,完整讲解只使用不依赖该下标细节的迭代结构。
问题: Householder reflection 这个公式是什么意思?能不能手算一个例子?
核心意思: 给一个非零向量 u,Householder matrix
表示“沿着 u 这个法向量做镜面反射”。更准确地说,它把向量在 u 方向上的分量翻号,把所有垂直于 u 的分量保持不变。
取 u=\begin{pmatrix}1\\1\end{pmatrix},反射面是和 u 垂直的直线,也就是 x+y=0。要反射 w=\begin{pmatrix}3\\1\end{pmatrix}。
用分量看也一样:w 在 u 方向的系数是 c_1=\langle w,u\rangle/\lVert u\rVert^2=4/2=2,所以平行分量是 2u=(2,2);垂直分量是 w-2u=(1,-1)。反射后平行分量翻号,得到 -2u+(1,-1)=(-1,-3)。
QR 里想把一列向量下面的元素清成 0。取第一列 x=\begin{pmatrix}4\\3\end{pmatrix},它的长度是 5。我们希望反射后变成 y=\begin{pmatrix}5\\0\end{pmatrix}。选 Householder 法向量
现在把它用在一个矩阵上:
所以这个例子里已经得到一个 QR 分解:Q=H,R=\begin{pmatrix}5&2\\0&-1\end{pmatrix}。有些教材会要求 R 的对角线为正,那只要把第二列/第二行符号同步翻一下即可;清零逻辑不变。
和课件公式的关系: 课件写 w=c_1u+c_2v,就是先把 w 拆成沿 u 的分量和垂直方向的分量。若 \{u,v\} 真的是 orthonormal basis,则分母都是 1;课件保留 \lVert u\rVert_2^2 和 \lVert v\rVert_2^2,是更一般的 projection 写法。
取一个 3\times2 矩阵:
第 1 步: 看第一列 x_1=(4,3,0)^\top,长度是 5,目标是把它反射成 (5,0,0)^\top。选
第一列下面已经清零了。接下来不能再动第一行第一列,只处理右下角剩下的子块。
第 2 步: 现在看第二列的下半段 x_2=(4,3)^\top,长度还是 5,目标是 (5,0)^\top。选
所以 Householder QR 的结构是:
这就是课件说的“重复反射,逐列把 pivot 下面清成 0”。每个 H_i 都是 orthogonal,所以连乘出来的 Q 仍然 orthogonal。
问题: 上三角 matrix 的定义是什么?QR 里面的 R 不是方阵时,也能叫上三角吗?
短答案: 方阵上三角是最标准的定义;矩形矩阵也可以有“上三角型”结构。QR 里常见的矩形 R 更准确叫 upper trapezoidal,规则还是:主对角线下面的位置全是 0。
比如 Householder QR 例子里得到:
这些正好都是主对角线下面的位置,所以这个 3\times2 矩阵是合法的 rectangular upper triangular / upper trapezoidal R。
为什么会出现矩形: 如果原矩阵 A 是 m\times n,完整 QR 常写成 A=QR,其中 Q 是 m\times m,R 是 m\times n。当 m>n 时,R 就是一个高矩形,上面是一个 n\times n 的方阵上三角块,下面多出来的行全是 0。
economy QR: 如果用 economy/thin QR,会把下面全 0 的行省掉,所以 R 变成 n\times n 方阵上三角。上面的例子就会写成:
问题: P022-P023 里的 Householder QR 过程,是不是就是前面 3\times2 矩阵例子的计算?
答案: 是。同一个过程。课件是符号版:每一步找一个 orthogonal matrix,把当前子块的第一列反射到坐标轴上;前面的 3\times2 例子就是把这些符号换成具体数字。
这对应 P022:第一列下面被清成 0,剩下右下角子块就是下一轮要处理的东西。
这对应 P023:把第二列 pivot 下面也清成 0。截图里如果看到 R_2=Q_1R_1,按迭代逻辑应理解为第二步继续左乘新的 Q_2,也就是 R_2=Q_2R_1。
最后把左乘过程反过来,就是 QR:
一句话: P022-P023 是算法模板;前面那个 3\times2 矩阵就是模板的一次完整手算。
为什么合在一起讲: 第一页证明 SVD 如何给出协方差谱,第二页紧接着比较实现路线并给出截断规则。
X^\top X 中的 U^\top U 化为单位阵,留下 V\Sigma^2V^\top。于是 V 是主方向,奇异值平方是方差。
主成分得分 XV 等于 U\Sigma;它把每个样本变换到主坐标。
把奇异值按从大到小排列,只保留前 k 项,就保留方差最大的 k 个方向。数据从 n 个属性变为 k 个坐标。
直接特征分解可能稍快但受稳定性影响;SVD 对一般矩阵存在且使用正交因子,通常更稳。
课件只给出保留最大 k 个主成分的原则,没有规定 k。实际需要用累计解释方差、存储预算或下游误差选择。
无论采用哪条计算路线,降维结果都由保留的子空间决定;算法差别在稳定性和代价。
数据通常先按列中心化。此时 X^\top X 与样本协方差矩阵只差一个整体缩放常数;这个常数改变特征值大小但不改变特征向量,所以不影响主方向。课件为突出结构省略了该常数。
将 X 右乘 V 等于把每个样本的属性向量换到右奇异向量基。结果 U\Sigma 的第 j 列就是第 j 个主成分得分;该列平方范数由对应奇异值控制,因此奇异值平方代表该方向贡献。
保留前 k 项后得到的不是原始属性子集,而是一个 k 维线性子空间。重构时用保留得分乘回相应方向,可得到原矩阵的秩 k 近似。被丢弃奇异值的平方和衡量 Frobenius 范数下的重构损失。
P025 对速度的表述是定性比较。显式形成 X^\top X 会把条件数平方,可能损害小奇异值;直接对 X 做 SVD 通常更稳。具体速度仍取决于矩阵尺寸、稀疏性和所用实现。
选择 k 是准确率与资源之间的接口:较大的 k 保留更多方差,也增加存储和下游计算。课件没有规定阈值,因此本讲能保证的是排序与截断机制,不是一个适用于所有任务的固定 k。
截断后若要解释某个主成分,必须查看对应右奇异向量中各原属性的系数;主成分得分本身只给样本在新轴上的位置。方向系数与样本得分承担不同角色,不能混为同一张表。
U07 提供稳定求 SVD 的 QR 路线。
证明 SVD 等价读取 PCA 并定义截断。
P024 做代数连接,P025 给工程选择。
切换到矩阵无法单机容纳的大数据。
原页逐句翻译: 令 X 是表示数据集的 m\times n 矩阵,其中 m 是 cases 数,n 是 attributes 数。PCA 需要确定协方差矩阵 C=X^\top X 的特征值。利用 X=U\Sigma V^\top:
主成分为 XV=U\Sigma V^\top V=U\Sigma,奇异值是特征值的平方根。
本页解释: 右奇异向量矩阵就是协方差矩阵的特征向量矩阵,奇异值平方就是沿这些方向的方差。因而可以直接对数据矩阵做 SVD,而不必显式形成协方差矩阵。
原页逐句翻译: 降维。给定数据集,希望用最少空间保留最多信息。可用两种方式运行 PCA:特征值分解可能稍快但不稳定,特征值对应主成分方差;SVD 可能稍慢但稳定,奇异值平方对应主成分方差。通过截断矩阵,只保留最大的 k 个主成分。
本页解释: 排序后保留前 k 个方向,就是低秩近似。选择越小,存储和后续计算越省,但丢失的方差越多;课件强调的是方法关系与稳定性,并未给出自动选择阈值。
本单元页间主线: P024 做代数连接,P025 给工程选择。
在矩阵不入内存时控制通信、热点与块依赖。
P026-P036
模块衔接: 保留小数据的谱目标,但把矩阵形状、存储和通信加入算法。
为什么合在一起讲: 章节分隔页宣布 Big data,下一页马上定义矩阵形状和分区方式,两页共同改变计算模型。
PCA 的数学目标没有改变,但 X 已无法完整驻留内存。矩阵的高宽比、稀疏度和分区方式决定数据移动。
按行、按列、按元素和按块不是展示细节,它们决定 mapper 能看到什么、QR 的块更新放在哪里。
高而窄矩阵有很多样本和较少属性,允许 n\times n Gram 矩阵留在单机。短而宽或一般形状则可能需要随机投影等不同工具。
同一矩阵按行分区时,每个节点容易计算局部行外积;按列分区时,列范数可本地获得,但列对内积需要跨节点对齐;按块分区则适合矩阵乘法和 tiled QR。选择布局就是选择哪些操作本地、哪些操作通信。
稀疏矩阵不能只用 m 和 n 判断成本,还要看每行非零数 L。后续 MapReduce 基线的发射量与 L 的平方有关;稀疏度若分布不均,某些键仍会成为热点。
Tall-and-skinny 的特殊性是属性数 n 足够小,使 n\times n 的核心矩阵能集中处理。若 n 也很大,Gram 矩阵本身就不再是可放入单机的压缩目标,需要随机 sketch 或分层方法。
U08 完成单机上的 PCA/SVD。
建立分布式内存、形状和布局约束。
P026 切换阶段,P027 定义系统变量。
利用 tall-and-skinny 形状压缩计算。
原页逐句翻译: 章节组织:中心主题是“降维”,分支为“复习”“小数据”“大数据”;本页高亮“大数据”。
本页解释: 分隔页表示数学目标不变,但实现条件改变:矩阵无法放进单机内存,矩阵形状、存储布局和通信量成为算法的一部分。
原页逐句翻译: 分布式系统。m\times n 矩阵 X 可以是稠密、稀疏、方阵、tall and skinny(高而窄)或 short and fat(矮而宽)。在多个节点上表示矩阵的方式包括按行或按列、按元素、按块。说明:矩阵不再能放入内存;矩阵形状与表示方式会影响速度。
本页解释: 按行存储适合逐行生成外积,按块存储适合 tiled QR;稀疏度决定一行中真正需要参与配对的元素数。这里先建立系统变量,下一单元专门利用高而窄矩阵的形状。
本单元页间主线: P026 切换阶段,P027 定义系统变量。
为什么合在一起讲: 设置、把问题压成 X^\top X、以及直接 MapReduce 实现构成一个完整基线算法。
完整矩阵太高,但 n^2 可以留在单机。形成 X^\top X 后,海量样本维被求和消去,只剩属性对之间的内积。
谱分解随后在 n\times n 矩阵上进行,成本不再随 m 扩展;形成 Gram 矩阵本身仍必须扫描所有行。
每行对非零列做两两配对,乘积发给对应列对键。Reducer 汇总同一列对跨所有行的乘积,恰好得到 Gram 矩阵一个条目。
按行存储让 Mapper 可本地生成外积,但一行 L 个非零项会产生 L^2 级消息。
shuffle size 随 mL^2 增长,热门键还可能积累 m 个值。前者是网络总量,后者是单 reducer 热点,必须分开理解。
归一化到 [-1,1] 控制元素尺度,为后续基于概率的近似和误差界做准备。
Gram 矩阵第 j,k 个条目等于所有行上 x_{ij}x_{ik} 的和。Mapper 按行生成这些乘积,Reducer 按列对聚合,所以算法在代数上精确对应矩阵乘法;键只是把求和项路由到正确位置。
对称性意味着 j,k 与 k,j 条目相同,工程实现可只计算一个三角部分再镜像,但课件的复杂度讨论保留一般列对形式。无论是否利用对称性,行内配对数仍由非零列数决定。
Shuffle size 衡量网络中移动的总键值数量;reduce-key complexity 衡量最坏单键的值数。增加 reducer 数量能分散不同键,却不能自动拆掉一个超热门键,因此二者需要不同优化。
形成 X^\top X 会把奇异值平方。原矩阵条件数较大时,小奇异方向更容易受舍入影响;P029 所说“确保奇异值不被显著改变”因此不仅是采样问题,也包含数值稳定性。
把元素缩放到 [-1,1] 控制单个乘积范围,便于概率界和有限精度求和。它不会消除列范数差异,后续 cosine sampling 正是再用列范数调节保留概率。
U09 给出分布式布局与 tall-and-skinny 形状。
构造精确 Gram 矩阵的 MapReduce 基线。
P028 设条件,P029 压缩目标,P030 实现与复杂度。
用 cosine sampling 降低通信与热点。
原页逐句翻译: 设置:X 无法放入内存;X 的行数远大于列数,即 m\gg n;n^2 可放入单机内存。运行 PCA 时:完整 SVD 的复杂度为 \mathcal O(mn^2);只需要最重要的 k 个奇异值与奇异向量;所需工作为 \mathcal O(mk^2)。能否利用 X 的形状加速?
本页解释: 高而窄意味着样本极多、属性相对少。关键机会是把依赖海量行的数据压缩成一个 n\times n 的小矩阵,再在单机上做谱分解。
原页逐句翻译: 由第 4.22 页,C=X^\top X=V\Sigma^2V^\top,式 (4.2)。C 的维度为 n\times n,且假设单机有 n^2 内存,所以它能放入内存。于是希望计算 X^\top X,避免后续计算依赖 m;随后通过课件标为“??”的引用式求 C 的特征值并恢复 V,\Sigma。主要挑战是高效计算 X^\top X,同时不显著改变 C 的奇异值。准备:矩阵按行存盘;所有元素归一化到 [-1,1],即除以最大元素。
本页解释: 这里“避免依赖 m”是指压缩后的谱分解不再扫描所有行,不是说形成 X^\top X 可以零成本。形成 Gram 矩阵仍需遍历数据并通信;P030 给出直接 MapReduce 基线。
原页逐句翻译: 计算 X^\top X 的简单 MapReduce:Mapper 对第 i 行的所有元素对 (x_{ij},x_{ik}),返回键值对 ((c_j,c_k),x_{ij}x_{ik}),其中 c_j,c_k 分别对应第 j,k 列。Reducer 对同一键 (c_i,c_j) 的值序列 \langle v_1,\ldots,v_R\rangle,其中每个 v_k 是 X 中元素的乘积,R 是非零乘积数,并计算 \sum_{i=1}^{R}v_i。复杂度:通信 shuffle size 为 \mathcal O(mL^2),L 是一行最多非零元素数;单机热点 reduce-key complexity 为 \mathcal O(m)。
本页解释: 每个输出键对应 Gram 矩阵的一个列对条目。问题在于一行有 L 个非零元素时会产生平方级配对,而热门列对还会把最多 m 个值集中到一个 reducer;下一单元通过概率采样减轻这两处压力。
本单元页间主线: P028 设条件,P029 压缩目标,P030 实现与复杂度。
问题: 从 SVD 做 PCA 不是还是要算 X^\top X 吗?为什么 full PCA 是 O(mn^2),课件又写 top-k work 是 O(mk^2)?是不是必须靠迭代法?
先纠正: 你质疑得对。不能从原始 dense X\in\mathbb R^{m\times n} 直接把 n 换成 k,然后说总复杂度就是 O(mk^2)。如果还没找到前 k 个主方向,那些方向仍然藏在原来的 n 维 feature space 里。
完整 covariance 路线确实要算:
所以 full PCA / full SVD 那行 O(mn^2) 是合理的。
如果只要前 k 个主方向,实际算法通常不会完整构造 X^\top X。它会反复做矩阵乘法,例如:
一次 dense multiplication X\Omega 的规模是:
所以 truncated SVD / Lanczos / randomized SVD 这一类 top-k 方法,常见成本更像:
这就是你查到“要靠迭代 / randomized / Krylov 方法”的原因。它们避免了 n\times n 的完整 EVD,但没有让原始维度 n 从总成本里完全消失。
还有一个简单下界:原始 dense 矩阵有 mn 个数。一般精确问题至少要读入这些数据,所以当 k^2\ll n 时,声称总成本只有 O(mk^2) 本身就不可能覆盖读入成本。
O(mk^2) 成立的前提是:你已经把问题变成了一个只有 k 列的子问题。也就是说,手上已经有:
这时再算小 covariance:
但这个 Y 不是凭空来的。它可能来自 random projection、column sampling、已有低秩因子、前面某个 QR/sketch 步骤,或者原始矩阵本来就只有 k 个有效列。生成这个 Y 的成本要另算。
所以这页里的三行更稳妥的读法是:
因此原来那段需要删改: 不能写成“不用迭代也能从原始矩阵做到 O(mk^2)”。正确说法是:如果从 raw X 求 top-k,通常需要 iterative / randomized / sketch 方法,成本常见为 O(mnk+(m+n)k^2);O(mk^2) 只是已经降到 k 列后的后续成本。
问题: slide 里写 “using equation ??”,这个 equation 到底是什么?
答案: 这是课件的交叉引用坏了。它应该指回前面 PCA 和 SVD 的关系,也就是:
这条公式来自 centered data matrix 的 SVD:
它为什么有用: 如果我们能算出小矩阵 C=X^\top X,就能对 C 做 EVD:
所以从 C 的 eigenvectors 可以拿到 PCA/SVD 里的 V;从 C 的 eigenvalues 可以开根号拿到 singular values \Sigma。
这页的意思: 对 tall-and-skinny 矩阵,X 太大放不进内存,但 C=X^\top X 只有 n\times n,可以放进单机内存。于是先分布式算 X^\top X,再用这条 broken reference 对应的公式恢复 V 和 \Sigma。
为什么合在一起讲: 长度偏差、余弦定义、采样算法、期望证明与参数复杂度是一条完整的动机到保证链。
词频向量的点积同时受方向和长度影响。长文档会因词数大获得高得分,短摘录即使与原文同向也可能被低估。
余弦把内积除以两列范数,比较的是方向。P032 图中夹角小的向量代表相似词分布。
算法用列范数决定每个列对乘积是否发射。min 分支保证概率不超过一,\gamma 统一调节保留率。
被采样值按概率倒数重加权,所以低概率样本虽然少,每个权重更大。
把未采样项记为零,对随机输出求期望时,采样概率与倒数权重相消,得到归一化列内积。
输出 X^{\prime} 是列间余弦矩阵;用列范数对角矩阵 D 左右缩放,恢复 Gram 矩阵尺度。
\gamma 越大,样本越多,谱和条目更易保留,但 shuffle 和 reducer 工作都增加。不同目标给出不同的 \gamma 下界。
列范数必须预计算,带来一次 all-to-all;最小非零值 h 很小时,复杂度中的逆平方项会恶化。
无偏只描述重复随机运行的平均,不保证单次误差为零。Latala 定理提供高概率谱保持,但课件没有展开常数和完整条件。
因此该方法适合通信受限、允许概率近似的 tall-and-skinny PCA。
对每个列对,直接算法会发送所有非零乘积。采样算法把是否发送变成 Bernoulli 随机事件。概率由列范数和 \gamma 决定,Reducer 再除以相应尺度,使被保留的少量项代表完整和。
P034 的期望等式应按单个求和项理解:指示变量为一时保留 v_i,为零时丢弃。线性期望允许先分别求每项期望再相加,不要求不同列对的输出在一次运行中完全独立。
X^{\prime} 中的条目是归一化内积,因此对角线在理想情况下接近一。D 左右缩放分别恢复两列的范数;第 j,k 项由余弦乘两列范数,回到原始内积。
若目标是条目近似,\gamma 可随最低关注相似度调节;若目标是谱保持,需要更强的随 n 和相对误差增长的条件。两种下界对应不同质量指标,不能互换。
预计算列范数的 all-to-all 是固定启动成本。采样只有在后续减少的 shuffle 和热点足以抵消这次通信时才有价值;这取决于数据稀疏度、h、\gamma 和集群网络。
U_10 的精确列对计算通信过大。
用余弦归一化和随机采样近似 Gram 矩阵。
P031-P032 建概念,P033 算法,P034 证明,P035 代价。
另一条路线是直接把 QR 按块分布化。
原页逐句翻译: 衡量多个文档之间的距离:统计所有词的出现次数;比较得分;若文档有很多共同词,就认为它们相似。限制:取三个文档 d_1,d_2,d_3,其中 d_1,d_2 很长,而 d_3 是 d_1 的摘录。很可能发生什么?
本页解释: 原始内积会偏向长文档:两个长文档即便主题一般,也可能因词数大而有较大重叠;摘录与原文方向接近,却因长度短得到较小点积。余弦相似度通过向量范数归一化,把比较重点从长度移到方向。
原页逐句翻译: 对向量 d_i,d_j,余弦相似度定义为 \cos(d_i,d_j)=\frac{\langle d_i,d_j\rangle}{\lVert d_i\rVert\lVert d_j\rVert}。基本想法:两个文档越接近,夹角越小;夹角越小,余弦越大。图中坐标轴为 word1、word2、word3,向量为 d_1,d_2,d_3,白色弧线表示夹角。更精细的策略:按意义对词分类;基于词语义考虑余弦相似度。
本页解释: 图先看方向而不是箭头长度:绿色 d_1 与黄色 d_3 夹角小,即使长度不同也相似;橙色 d_2 指向不同方向。分母把向量归一化,因此余弦只衡量方向一致性。
原页逐句翻译: 固定可在 MapReduce 运行时调节的参数 \gamma。用余弦相似度计算 X^\top X:Mapper 对第 i 行中每对 (x_{ij},x_{ik}),以概率 \min\left(1,\frac{\gamma}{\lVert c_j\rVert\lVert c_k\rVert}\right) 返回 ((c_j,c_k),x_{ij}x_{ik})。Reducer 对键 (c_i,c_j) 的值 \langle v_1,\ldots,v_R\rangle:若 \frac{\gamma}{\lVert c_j\rVert\lVert c_k\rVert}>1,返回 \frac{1}{\lVert c_j\rVert\lVert c_k\rVert}\sum_{i=1}^{R}v_i;否则返回 \frac{1}{\gamma}\sum_{i=1}^{R}v_i。
本页解释: 列范数大的列对被较低概率采样,但 reducer 用采样概率的倒数重加权。\gamma 越大,保留项越多、误差越小、通信越大;分支 \min(1,\cdot) 防止概率超过 1。
原页逐句翻译: Reducer 实际返回的不是 X^\top X,而是含 X 各列余弦相似度的矩阵 X^{\prime}。令 \bar v_i=v_i 当对应键值对被返回,否则 \bar v_i=0,则输出期望为
要从 X^{\prime} 恢复 X^\top X,定义对角矩阵 D,其 d_{ii}=\lVert c_i\rVert,再计算 X^\top X\approx DX^{\prime}D。Latala 定理可证明,用余弦相似度采样列时,奇异值以“足够高”的概率被保留。
本页解释: P033 的列范数一直记为 c_j,c_k,P034 期望式分母却突然写成 \lVert v_j\rVert\lVert v_k\rVert,这是符号切换或疑似课件笔误;按列向量记号应与前页保持一致。期望式说明重加权消除了采样偏差,但单次运行仍有随机误差。余弦矩阵去掉列尺度,左右乘 D 把尺度放回。
原页逐句翻译: 说明:Mapper 使用 \lVert c_i\rVert,所以必须预先计算所有列范数,这需要一次 all-to-all 通信。参数 \gamma 可按目标调整:保留 X^\top X 中相似条目时,\gamma=\Omega(\frac{\log n}{s}),其中 s 是最低余弦相似度;保留 X^\top X 的奇异值时,\gamma=\Omega(\frac{n}{\varepsilon^2}),其中 \varepsilon 是相对误差。令 h 为归一化后最小非零值,shuffle size 为 \mathcal O(\frac{nL\gamma}{h^2}),reduce-key complexity 为 \mathcal O(\frac{\gamma}{h^2})。
本页解释: 这页给出真实代价:采样前要付列范数的全局通信;之后 \gamma 控制精度与流量。若 h 很小,复杂度中的 1/h^2 会放大,说明极小非零元素会削弱采样收益。
本单元页间主线: P031-P032 建概念,P033 算法,P034 证明,P035 代价。
上下文补足:若随机变量以概率 p 取值 v/p、否则取 0,则其期望为 p(v/p)=v。P034 的重加权使用同一原则,只是目标值是归一化列内积。
问题: 这几页从文档相似度跳到 MapReduce 采样,再跳到恢复 covariance product,中间到底怎么连起来?
总线索: 目标仍然是计算 tall-and-skinny 矩阵的 X^\top X。朴素做法要对每一行产生很多列对乘积,shuffle 太大。cosine sampling 的想法是:不要无差别发送所有列对,只更积极地保留“重要/相似”的列对,然后用无偏缩放把结果拉回正确尺度。
如果夹角小,cosine 接近 1,表示方向接近;如果夹角接近 90 度,cosine 接近 0,表示共同结构弱。课件用文档做入口,是因为后面要把“文档向量相似”换成“矩阵列向量相似”。
设 X 的第 j 列是 c_j。那么 covariance-like product 的第 (j,k) 个元素是:
课件把列对 (c_j,c_k) 的发送概率设成:
所以 mapper 不是直接估计 X^\top X,而是在准备估计列之间的 cosine similarity。
令一行贡献为:
如果这个 pair 被采样,就令 \bar v_i=v_i;如果没被采样,就令 \bar v_i=0。当 p_{jk}=\gamma/(\lVert c_j\rVert\lVert c_k\rVert)<1 时:
这说明 reducer 的期望输出是列 c_j 和列 c_k 的 cosine similarity。若采样概率被截断为 1,reducer 直接返回 (1/(\lVert c_j\rVert\lVert c_k\rVert))\sum_i v_i,也是同一个 cosine 值。
设 X^{\prime} 是 reducer 得到的 cosine similarity matrix:
再定义 diagonal matrix:
那么:
这就是 P034 的核心:先估计 cosine matrix,再把 column norm 乘回去,恢复 covariance product 的尺度。
P034 最后提到 Latala's theorem,作用不是让你在这里证明定理,而是说明:在合适的采样强度下,用 cosine similarity 采样得到的近似矩阵,可以以足够高概率保留原来 X^\top X 的 singular values。也就是说,这个近似不是只在单个 entry 上看起来合理,还能在谱性质上保持可用。
取两列:
这两个式子要按“采样后实际发送和聚合的列对数量”理解。h 越小,说明归一化后有很小的非零项;为了不漏掉这些贡献,需要更高采样强度,复杂度会变差。
一句话: P031-P035 不是在换一个相似度公式而已。它把 X^\top X 的列对求和问题,改写成“抽样估计 column cosine matrix,再用 column norms 缩放回来”的 MapReduce 近似计算方案。
统一符号: X\in\mathbb R^{m\times n},m 是行数,n 是列数;每行最多有 L 个非零元素,所以 \operatorname{nnz}(X)\le mL。h 是归一化后最小非零值,\gamma 控制采样强度。
第 (j,k) 个 entry 是两个长度为 m 的 column vectors 做 dot product:
如果利用 row sparsity,mapper 对每行的非零元素两两配对。每行最多产生 L^2 个乘积:
这个方法先算 column norms,再对 row 内的 column pairs 以概率
决定是否发给 reducer。课件给出的通信和单 key 聚合上界是:
还要把课件公式没有写进同一行的成本补上:
| 项目 | 全量 X^\top X | cosine sampling |
|---|---|---|
| 结果 | 精确 Gram matrix | 无偏但有随机误差的近似 |
| mapper pair work | O(mL^2) | 朴素实现仍为 O(mL^2) |
| shuffle | O(mL^2) | O(nL\gamma/h^2) |
| 单个 reduce key | O(m) | O(\gamma/h^2) |
| 额外预计算 | 无 sampling norms | O(mL) 算 norms,再做 all-to-all / broadcast |
| dense 输出内存 | \Theta(n^2) | 若 dense materialize,仍是 \Theta(n^2) |
比较 shuffle 上界:
dense 情况 L=n 下:
此时收益条件简化为 \gamma/h^2\ll m。如果 h 很小,或为了高精度把 \gamma 设得很大,sampling 的通信优势会缩小甚至消失。
课件给出两种常见的 \gamma 选择:
结论: cosine sampling 的核心收益是把课件中的 shuffle 从 O(mL^2) 降到 O(nL\gamma/h^2),并把单 key reducer load 从 O(m) 降到 O(\gamma/h^2)。它是近似通信优化,不是“免费把所有本地算术也降掉”。
为什么合在一起讲: 该页独立给出 block QR 的完整阶段和依赖关系。
单机 QR 逐列消零;tiled QR 把列和尾部更新提升为矩阵块操作。每个 tile 可驻留一个节点,局部 QR 产生的变换再传播。
对角块先处理,同一块行与块列随后调整,右下尾部最后更新。该顺序保证所有依赖已就绪。
同一阶段中互不依赖的块更新可以并行,但下一个对角块要等待前一阶段完成。算法速度取决于块大小、节点布局与通信。
得到较小 R 后,仍可沿 U07 的路线在 R 上做 SVD。
U_11 通过采样近似 Gram 矩阵。
给出不显式形成 Gram 的分布式 QR 路线。
按对角块逐阶段传播 Householder 更新。
比较最优 PCA 与更通用的随机投影。
原页逐句翻译: 分布式 QR。第 4.21 页说明,先把 X 分解为 X=QR 可加速 X 的 SVD。Householder reflection theorem 可扩展成 tiled QR decomposition,适用于 X 无法放入内存的情形;tile 是可存储并在不同节点处理的矩阵块。把 X 表示成高而窄的块后:求对角块 X_{k,k} 的 QR;调整其右侧所有块 X_{k,j};调整其下方所有块 X_{i,k} 及这些块右侧的 X_{i,j};对所有对角块重复。
本页解释: 更新顺序体现数据依赖:对角块产生的正交变换必须先传播到同一块行和块列,再更新右下尾部。块可分布存储并并行处理,但每个对角阶段之间仍有顺序依赖。
本单元页间主线: 按对角块逐阶段传播 Householder 更新。
问题: P036 只列了四条 tiled QR 步骤,没有写 block 到底怎样更新;P037 又突然回到 PCA 总结。两页的连接是:先解决“大矩阵如何稳定分解”,再说明这个分解如何服务 PCA。
设 X\in\mathbb R^{m\times n} 太大,不能整体放进一台机器内存。把它切成能独立存储的 tiles:
先对当前 diagonal block 做局部 QR:
第一式把 diagonal tile 变成 triangular block。第二式把同一个 Q_{kk}^\top 应用到该 block row 的右侧;如果不更新右侧,局部等式成立,但整体 X=QR 会被破坏。
对每个 i>k,把当前 triangular block 和下面的 X_{ik} 竖直堆起来,再做一次 QR:
这一步把 X_{ik} 消成 0。对右边每一列 tile,必须应用同一个变换:
因此 P036 的 “adjust blocks below and blocks on their right” 不是模糊描述,而是一次 block elimination 加一次 trailing update。
把每次 tile QR 产生的 orthogonal left transform 按执行顺序记成 Q_1,Q_2,\ldots,Q_t。它们逐步把 X 变成 R:
实现中通常不显式形成巨大 dense Q。保存 Householder vectors 或 tile reflectors;需要计算 Qz、Q^\top z 时再按顺序应用。
得到小矩阵 R\in\mathbb R^{n\times n} 后,再做:
这与置顶的 QR → SVD 手算块 是同一个代数关系,只是 P036 把 QR 的产生过程分布到多个 tiles / nodes。
P037 把前面所有工具收回 PCA workflow:
PCA 给出最佳 rank-k 近似,但求这个最优解可能很贵。P037 最后一问不是否定 PCA,而是在引出 M7:如果 random projection 更便宜,它和最优 PCA 的差距是否可接受?
一句话: P036 解决“矩阵放不进内存时,怎样稳定地产生 QR”;P037 说明产生 QR/SVD 的目的仍是找 PCA 子空间,并把下一步自然导向随机近似。
用概率保距和随机候选子空间扩展降维方法。
P037-P043
模块衔接: 从确定性最优 PCA 转向带误差与概率条件的快速近似。
为什么合在一起讲: PCA 总结提出随机替代问题,随后定义保距目标、解释随机子空间、列出边界,并组合成 randomized PCA。
PCA 给出按方差意义最优的低维子空间,但求解谱可能昂贵。P037 问随机解与最优解差多少,把目标从精确最优转成可证明近似。
随机投影不先寻找数据最优方向,而是用随机矩阵把坐标混合并降到 d 维。
Johnson-Lindenstrauss 结论关注欧氏范数和两两欧氏距离,允许 1\pm\varepsilon 的乘性扭曲。目标维数远小于原维数。
一除以根号 d 的缩放控制投影后能量;保证带有高概率或期望限定,不应解读为每次都精确保距。
直接挑坐标可能漏掉只出现在少数坐标上的差异。随机子空间先把差异扩散到多个输出坐标,降低整体遗漏概率。
矩阵条目独立、零均值、对称和单位方差等条件控制偏差与尾界。
random projection 通常不满足 R^2=R,也不要求特征值只有零和一;它是算法意义的随机映射。课件明确限制在二范数。
乘法复杂度仍含 mnd,但稀疏 R 可减少实际乘法。能近似保范数的矩阵称 sketching matrix。
先随机得到候选子空间,再用 QR 正交化为 Q。B=Q^\top X 把原矩阵投到该子空间,在较小的 B 上做 SVD。
QU_1 把左奇异向量抬回原空间,得到 QQ^\top X 的低秩近似。若随机子空间覆盖主导奇异方向,近似接近 PCA;否则质量下降。
JL 的对象是有限点集的两两距离。若所有点的距离都近似保持,许多依赖欧氏几何的下游任务仍可在低维空间运行;但坐标本身没有可解释的主成分顺序,也不保证最大化方差。
随机挑原坐标失败的反例来自稀疏差异:若关键差异恰好在未选坐标上,距离会归零。随机线性组合让每个输出坐标都混合多个输入坐标,使单个关键坐标的信息分散到多个观测。
目标维数 d 越大,随机误差尾部越小,但矩阵乘法和存储随 d 增长。稀疏随机矩阵减少乘法次数,是速度与集中性质之间的另一层取舍。
Randomized PCA 并不把随机投影结果直接当作最终主成分。它先用随机映射寻找近似列空间,再在该空间内运行确定性的 QR 和 SVD;随机性负责缩小搜索范围,SVD 负责在范围内排序。
最终近似 QQ^\top X 是 X 在 Q 张成子空间上的正交投影。若 Q 遗漏重要左奇异方向,对应信息无法由后续小矩阵 SVD 恢复,所以随机阶段的覆盖质量决定整体上限。
U12 已能对 tall-and-skinny 矩阵分布式求 QR。
建立概率保距映射并组合 randomized PCA。
P037 设问,P038-P040 建模型,P041 合成算法。
用五个关键问题收束全章。
原页逐句翻译: 全局回顾。简要总结:数据有很多变量;用 SVD 计算 PCA;依据 PCA 结果忽略低贡献,只保留最“突出”的维度;基于 PCA“近似”继续执行任务。关于 PCA:它在小数据和 tall-and-skinny 大数据上都有效;它寻找“最佳”解。最佳解比随机解好多少?
本页解释: 这一页把确定性主线收束为低秩近似,并提出新问题。PCA 追求按方差意义最优的子空间,但求最优可能昂贵;随机投影改为用概率保证换取更低成本。
原页逐句翻译: 随机投影:构造保持点对距离的映射。设置与目标:把 \mathbb R^n 中的 m 个点 (u_i)_{1\le i\le n} 映射为 \mathbb R^d 中的 m 个点,且 d\ll n;对所有 i,j,确保 \lVert v_i\rVert_2\approx\lVert u_i\rVert_2 与 \lVert v_i-v_j\rVert_2\approx\lVert u_i-u_j\rVert_2,式 (4.3)。Johnson-Lindenstrauss lemma 表明,随机投影后任意两点距离以高概率最多被 1\pm\varepsilon 因子扭曲。若 X^{\prime}=\frac{1}{\sqrt d}XR,其中 R\in\mathbb R^{n\times d} 的条目独立同分布且均值为零,则 X^{\prime} 更小,并在期望意义保留所有两两距离。
本页解释: 课件同一句写“m points”,却把点列下标上界写成 n,存在符号不一致;逐句翻译保留两者以便核对。随机矩阵把高维坐标混合到较低维空间,缩放因子控制投影后的平均能量。保证针对欧氏距离,并带有概率与误差参数;它不是 PCA 的最优方差方向,而是一次无需求协方差谱的保距嵌入。
原页逐句翻译: 随机投影的直觉。把随机向量投到固定子空间:考虑 \mathbb R^n 中 m 个点,均匀随机固定 k 个坐标;若两向量只在少数坐标不同,投影后距离可能彻底改变。把固定向量投到随机子空间:考虑 \mathbb R^n 中 m 个点并投到 k 维子空间;只在少数坐标不同的向量会把差异“铺开”到所有坐标,避免遗漏“重要”坐标。生成 R=(r_{i,j}) 时,不同条目分布影响方差和误差尾界;r_{i,j} 独立同分布、均值为零,通常选关于零对称且方差为一的分布。
本页解释: 核心区别是“抽若干原坐标”与“先随机混合再降维”。混合让局部差异扩散,降低恰好漏掉关键信息的概率;条目分布决定集中速度,因此均值和方差条件不是装饰。
原页逐句翻译: 说明:随机投影通常不是代数意义的投影,常有 R^2\ne R,R 的特征值也不一定属于 \{0,1\},它只是与投影相差 \varepsilon。式 (4.3) 的要求不能推广到其他范数。投影向量的范数期望为 \sqrt{d/n},误差随 d 指数减小。时间复杂度为 \mathcal O(mnd)。投影矩阵可以做得非常稀疏,以很少精度损失换取明显加速。若矩阵 M 使 Mx 在小误差内保持 x 的范数,则称 M 为 sketching matrix。
本页解释: P038 的 R\in\mathbb R^{n\times d} 通常是矩形矩阵,此时 R^2 与特征值都没有定义。P040 所列 R^2=R 和特征值属于 \{0,1\} 是方阵投影算子的代数判据,不能直接套到该矩形随机映射矩阵。这里的“projection”是算法名称;课件其余结论限定在二范数,稀疏随机矩阵可减少乘法次数,但精度仍由目标维数与分布控制。
原页逐句翻译: 大数据降维要保留数据的重要结构性质:tall-and-skinny 情形可用 SVD;其他情形可用随机投影;PCA 能保证好结果,随机投影则未必。Randomized PCA:随机投影 X 得 X^{\prime};对 X^{\prime}=QR 做 QR;计算 B=Q^\top X;对 B=U_1\Sigma V^\top 做 SVD;用 QQ^\top X=Q(U_1\Sigma V^\top)=U\Sigma V^\top 近似 X 的 SVD;再按通常方式完成 PCA。
本页解释: 随机投影先找到一个较小的候选列空间,QR 把它正交化;随后只需在压缩矩阵上做 SVD。最后左乘 Q 把结果抬回原空间。误差来自候选子空间未完全覆盖 X 的主导奇异方向。
本单元页间主线: P037 设问,P038-P040 建模型,P041 合成算法。
上下文补足:课件只给出 JL lemma 的定性版本。具体所需维数 d 与点数、误差和失败概率有关;此处不添加课件未给出的常数或完整界,只保留“高概率、二范数、乘性误差”三项适用条件。
问题: 这四页先说保距,再讨论 random matrix 是否算 projection,最后突然出现 QR 和 SVD。主线是:random projection 先提供便宜的 sketch;randomized PCA 再用 sketch 找到候选 subspace,并在其中恢复近似 SVD。
random projection 是:随机生成一组新的低维坐标轴,然后让所有数据点都在这同一组坐标轴上计算新坐标。它不是把每个点随机扔到一个位置,也不是为每个点重新抽一次矩阵。
把随机矩阵按列写开:
取两个三维点,并从 Rademacher distribution 中抽到一个 entries 只有 \pm1 的矩阵:
三维空间里的距离是:
这次随机抽取恰好把这两个点的距离完整保留下来。一般不会每个距离都完全相等;random projection 要求的是:当 d 足够大时,所有关注的距离以高概率只发生小比例误差。
| 方法 | 低维方向从哪里来 | 是否读取数据后再选方向 |
|---|---|---|
| 直接删 coordinates | 原坐标轴中的若干条 | 通常不需要 |
| random projection | 随机矩阵 R 的列 | 不需要;先抽 R,再统一映射 |
| PCA | 数据 covariance/SVD 得到的 principal directions | 需要;方向由数据决定 |
最容易记错的点:random projection 的输出 XR 可以直接作为低维数据;randomized PCA 中的 X\Omega 只是用来探测 dominant subspace 的中间结果,后面还要经过 QR 和 small SVD。
统一写成:有 m 个 points u_1,\ldots,u_m\in\mathbb R^n,希望映射到 v_i\in\mathbb R^d,其中 d\ll n。
因为 pairwise distance 也是 difference vector 的 norm,只要同一个 random map 对所有 relevant vectors 近似保 norm,就能同时近似保 pairwise distances。
假设 R_{jk} iid、mean 0、variance 1。对固定 row vector x:
cross terms 在 expectation 中消失,variance-1 terms 留下 \sum_jx_j^2。Johnson-Lindenstrauss lemma 进一步给出 concentration:对有限的 m 个点,常见量级是 d=O(\varepsilon^{-2}\log m),使所有 pairwise distances 以高概率落在 1\pm\varepsilon 范围内。
常见 entries 可以选 Gaussian,或 Rademacher:
二者都满足 zero mean 和 unit variance;不同 distribution 会改变常数、tail bound 和乘法成本。
严格的 orthogonal projection matrix P 满足:
这里的 R\in\mathbb R^{n\times d} 通常是 rectangular,R^2 甚至没有定义;它只是一个 random embedding。课件说“不是 algebraic projection”,指的是它不要求 idempotent,而只要求 Euclidean geometry 近似保留。
缩放 convention 也要分开:
保距结论主要针对 ℓ2。不能直接把同一证明搬到 ℓ1 或 ℓ∞。
dense multiplication 的课件复杂度是:
如果 R 很 sparse,乘法只处理 nonzero entries,成本随 \operatorname{nnz}(R) 降低。能近似保 norm 的随机线性 map 常称为 sketching matrix。这里的“sketch”强调压缩后仍保留任务需要的结构,不表示每个 entry 都接近原值。
设目标 rank 为 k,取 oversampled width ℓ=k+p:
| 步骤 | 矩阵 | 尺寸 | 作用 |
|---|---|---|---|
| random range finder | Y=X\Omega | m×ℓ | 捕获 dominant column space |
| thin QR | Y=QR_Y | Q:m×ℓ | 得到 orthonormal basis |
| compress | B=Q^\top X | ℓ×n | 把大矩阵压进候选 subspace |
| small SVD | B=U_B\Sigma V^\top | U_B:ℓ×ℓ | 在小矩阵上找 directions |
| lift back | U=QU_B | m×ℓ | 映回原 row space |
QQ^\top X 是 X 在 sampled column space 上的 projection。若 Q 已捕获 dominant range,它就接近最佳 low-rank approximation。
| random projection | randomized PCA | |
|---|---|---|
| 随机矩阵用途 | 直接生成低维 representation XR | 只用来寻找候选 subspace |
| 后续 QR/SVD | 通常不需要 | 需要 QR 和 small SVD |
| 最优性 | 近似保距,不追求最佳 variance | 近似 PCA dominant subspace |
| 最终 directions | random directions | small SVD 得到的 V_k |
配套数值过程见置顶的 random projection / randomized PCA 手算块。
当 ℓ≪n 时,常见 dense 成本可概括为:
一句话: P038-P040 说明 random sketch 为什么能近似保留 Euclidean geometry;P041 把这个 sketch 当作 range finder,再用 QR 和 small SVD 把随机子空间修正成近似 PCA 子空间。
问题: 降维以后 \ell_2 norm 还是原来一样吗?两个点之间的 distance 到底是相等、期望相等,还是近似相等?
定义 random map:
| 命题 | 是否成立 | 真正含义 |
|---|---|---|
| \lVert f(x)\rVert_2=\lVert x\rVert_2 | 一般不严格成立 | 某一次随机抽到的 R 会产生误差 |
| \mathbb E_R\lVert f(x)\rVert_2^2=\lVert x\rVert_2^2 | 成立 | 对随机矩阵的所有可能抽取取平均,squared norm 无偏 |
| \lVert f(x)\rVert_2\approx\lVert x\rVert_2 | 以高概率成立 | d 足够大时,单次抽取也大概率接近期望 |
所以“期望完全相等”和“这一次计算完全相等”是两句话。课件中的 1/\sqrt d 正是用来校准期望;若去掉它,在 entries variance 为 1 时会有:
对一个固定向量 x,希望单次随机映射满足:
若直接比较 norm 而不是 squared norm,则是:
\varepsilon 是允许的 relative distortion。它越小,要求的 projected dimension d 越大。
distance 本身就是 difference vector 的 norm。因为 f 是 linear map:
因此要保留 m 个点的所有 pairwise distances,本质上要让同一个 R 同时近似保留所有 difference vectors x_i-x_j 的 norm。
当 d<n 时,map x\mapsto xR 一定有 nontrivial null space:
这里把 row-vector map 的 kernel 简写成 \ker(R)。结论是:random projection 只能对预先给定的有限数据集高概率保距,不能同时保住空间中的每一个向量。
继续使用前一个块中的随机矩阵:
这次 distance 被放大了 2/\sqrt2=\sqrt2 倍。原因不是公式失效,而是这个玩具例子只有 d=2,没有足够维度给出小误差保证。前一个点对恰好完全保距,也不代表所有点对都会完全保距。
对 m 个固定数据点,若允许 relative distortion \varepsilon,并把失败概率控制在 \delta 附近,典型 JL 量级是:
一句话: random projection 后的 norm 和 distance 通常不严格相等;经过 1/\sqrt d 校准后,它们在期望上无偏,并在 d 足够大时对有限数据集以高概率近似保持。
问题: “只随机保留若干 fixed coordinates”中的 fixed coordinates 是什么?它和 random subspace 有什么区别?
设一个数据点有四个原始 features:
e_1,\ldots,e_4 就是 original coordinate axes。例如四列分别表示 height、weight、age、income,那么“保留 coordinate 1 和 2”就是只保留 height、weight 两列。
这里的 fixed 表示方向仍固定在原始坐标轴上,没有 rotation,也没有把多个 features 混合起来。可以随机决定保留哪几列,但选中的方向仍只能来自 e_1,\ldots,e_n。
如果只保留第 1、2 个 coordinates,可以写成 selector matrix:
这个操作只是删掉 x_3,x_4。被删 coordinates 中的信息不会转移到保留下来的 coordinates。
设两个点只在第 3 个 coordinate 上不同:
因为 coordinate 3 被完整删除,原来大小为 10 的差异没有任何出口,distance 直接从 10 变成 0。
random projection 不要求新方向等于某个 e_i。它的每个新方向通常混合多个 original coordinates。用一个 4\to2 示意矩阵:
原本只在 coordinate 3 上的差异,同时进入了两个 projected coordinates。这里恰好保距只是为了展示 mixing;一般的 random projection 仍然只保证近似保距。
| coordinate selection | random subspace / random projection | |
|---|---|---|
| 新方向 | 从原轴 e_i 中挑选 | 多个原轴的随机线性组合 |
| 一个输出 coordinate | 通常等于某一个 x_i | 等于 \langle x,r_j\rangle |
| 稀疏差异 | 对应原轴被删时会完全消失 | 通常分散进入多个输出 coordinates |
当所有点使用同一个 R 时,两个投影点的差可以写成:
于是 projected distance 仍对应原来的 difference vector x_i-x_j。如果两个点分别使用 R_i、R_j:
两组数字分别以不同随机方向为坐标轴,直接相减没有统一几何意义。coordinate selection 也一样:所有 points 必须保留同一组 columns。
一句话: fixed coordinates 是原始 features 对应的坐标轴;随机保留 coordinates 只是随机删列,而 random projection 会先用随机线性组合形成一套新的共享坐标轴。
为什么合在一起讲: 关键点页给出完整回顾入口,结束页只关闭课程;合并后保持结尾连续。
降维通过排序并截断主成分完成;SVD 的右奇异向量给 PCA 方向,奇异值平方给方差。
Cosine similarity 去除向量长度影响;tall-and-skinny 可用 Gram MapReduce、cosine sampling 或 distributed QR;random projection 用概率保证换取快速近似。
先确认数学对象和保证,再比较实现代价:精确或近似、单机或分布式、通信或计算、最优子空间或保距随机映射。P043 没有新增内容。
U_13 完成随机化路线。
把全讲压缩成五个可检查的问题。
P042 回顾,P043 结束。
回到导航按问题定位对应单元。
原页逐句翻译: 关键点:如何执行降维?SVD 与 PCA 有什么关系?什么是 cosine similarity?如何处理 tall-and-skinny 大数据?什么是 random projections?
本页解释: 五个问题依次对应本讲的完整知识链:截断主成分、数据矩阵与协方差谱、归一化方向相似度、分布式 Gram/QR、概率保距与 randomized PCA。
原页逐句翻译: 谢谢!
本页解释: 结束页没有新增技术内容。回看时可从 P042 的五个问题进入对应单元,并用原图和逐页翻译核对符号。
本单元页间主线: P042 回顾,P043 结束。
完整讲解
从降维问题出发
本讲研究的是如何把高维数据压缩为更少的坐标,同时尽量保留后续分析需要的结构。封面只给出章节名,路线图补上了学习顺序。
三个分支不是互相替代的算法:Review 提供协方差与谱分解语言;Small data 建立 PCA、SVD、QR;Big data 再处理内存、通信和随机近似。
阅读本讲时要追踪的量
后续每次压缩都要问:保留了什么,丢失了什么,计算代价落在哪里。PCA 保留最大方差方向,cosine sampling 近似 Gram 矩阵,random projection 保留二范数距离。
本单元在知识链中的位置
课程前三章的大数据处理背景。
建立章节地图与统一问题。
P001 定题,P002 给出三阶段结构。
先补统计与代数工具。
逐页详解P001-P002 · 2 页逐句翻译 · 本页解释
课程封面
原页逐句翻译: 《大数据的方法与工具》,第 4 章“降维(Dimensionality reduction)”;Manuel,2026 年夏季。
本页解释: 封面把本讲定位在大数据方法课程的第四章。后续内容会先建立小数据上的 PCA、SVD 与 QR,再把同一目标搬到无法单机容纳的矩阵。
章节组织
原页逐句翻译: 章节组织:中心主题是“降维”,三条分支分别是“复习”“小数据”“大数据”;本页高亮“复习”。
本页解释: 圆形关系图不是三种并列算法,而是教学路线。当前先补统计量、协方差、特征值和对角化,随后进入小数据算法,最后讨论分布式与随机化。
本单元页间主线: P001 定题,P002 给出三阶段结构。