名校公开课 / 麻省理工 / AI

数据分析、信号处理和机器学习中的矩阵方法

Matrix Methods in Data Analysis, Signal Processing, and Machine Learning18.065麻省理工Spring 2018免费
奇异值分解低秩近似主成分分析梯度下降深度网络结构

这门课学什么

Strang 用线性代数解决数据问题。内容包括 SVD、低秩近似、PCA、最小二乘、随机算法、梯度下降和深度网络的结构。课程配套他的书 Linear Algebra and Learning from Data。

内容摘要

这门课是 Gilbert Strang 把线性代数用到数据科学上的一门课。主线是:先把矩阵分解讲透,再用这些工具解决最小二乘、低秩近似、优化和深度学习问题。课程对应他的教材《Linear Algebra and Learning from Data》,前置课是 18.06 线性代数。

课程分 4 个阶段。第 1 阶段(第 1–8 讲)复习并深化线性代数:列空间、矩阵分解、正交矩阵、特征值、正定矩阵、奇异值分解(SVD)和矩阵范数,重点是 Eckart–Young 定理给出的最佳低秩近似。第 2 阶段(第 9–19 讲)讲计算与扰动:最小二乘的 4 种解法、病态问题、随机化矩阵乘法、低秩修正、矩阵对参数的导数和鞍点。第 3 阶段(第 20–27 讲)讲概率与优化:基本不等式、梯度下降、动量加速、线性规划、随机梯度下降,然后讲神经网络结构和反向传播。第 4 阶段(第 30–36 讲)讲专题:矩阵补全、循环矩阵与傅里叶矩阵、卷积网络、距离矩阵、图聚类,最后由 Alan Edelman 介绍 Julia 语言。

校内学生每周有习题集,另有课堂实验和期末项目。OCW 按讲次给出与教材章节对应的习题,适合边看视频边做。

学完后,你能用矩阵语言看懂主成分分析、推荐系统、梯度下降和卷积网络背后的计算,也能判断一个数值问题是否病态、该选哪种分解。

Strang 讲课节奏从容,板书清楚,喜欢从一个小例子出发引出一般结论。适合已经学过一遍线性代数、想看它怎样用在机器学习上的人。

为什么值得学

这是 18.06 之后学机器学习数学的直接续篇。讲师是全球最知名的线性代数老师。

课程信息

学校
麻省理工(MIT)
课程号
18.065
讲师
吉尔伯特·斯特朗(Gilbert Strang)
学期
Spring 2018
平台
MIT OpenCourseWare
费用
免费
难度
中级
学时
36 段视频
先修
学过线性代数(建议先学 18.06)。
材料
视频、作业、教材
许可证
CC BY-NC-SA 4.0
去课程主页 ↗看视频 ↗
课程是英文的。本页的介绍、摘要和大纲由极客教育原创撰写,讲次标题为中文意译。开课时间、收费和链接以官方页面为准。

课程大纲 · 共 17 节

大纲依据:Spring 2018 OCW 讲座视频列表(34 段,按主题合并为 17 条)(查看原始页面 ↗)

  1. 1–2
    列空间;矩阵乘法与分解The Column Space of A Contains All Vectors Ax; Multiplying and Factoring Matrices

    从列的角度理解 Ax,再把 A=CR、LU、QR 这些分解看作“列乘行”的和。

  2. 3–5
    正交列、特征值与特征向量、正定与半正定矩阵Orthonormal Columns; Eigenvalues and Eigenvectors; Positive Definite and Semidefinite Matrices

    讲正交矩阵的性质、特征分解,以及判断正定矩阵的几种等价方法。

  3. 6–7
    奇异值分解;Eckart–Young 定理Singular Value Decomposition (SVD); Eckart-Young: The Closest Rank k Matrix to A

    推导 SVD,并证明截断 SVD 给出最接近 A 的秩 k 矩阵,联系到主成分分析。

  4. 8
    向量与矩阵的范数Norms of Vectors and Matrices

    比较 L1、L2、无穷范数和几种矩阵范数,说明它们怎样影响最优解的形态。

  5. 9–11
    最小二乘的 4 种解法;Ax=b 的难点;约束下的最小范数解Four Ways to Solve Least Squares Problems; Survey of Difficulties with Ax = b; Minimizing ‖x‖ Subject to Ax = b

    用伪逆、正规方程、QR 和正则化解最小二乘,并讨论病态和欠定问题。

  6. 12–14
    计算特征值与奇异值;随机化矩阵乘法;低秩修正Computing Eigenvalues and Singular Values; Randomized Matrix Multiplication; Low Rank Changes in A and Its Inverse

    讲数值计算特征值的方法、用随机采样近似大矩阵乘积,以及低秩更新时逆矩阵怎样变化。

  7. 15–17
    依赖参数的矩阵;逆矩阵与奇异值的导数;快速衰减的奇异值Matrices A(t) Depending on t; Derivatives of Inverse and Singular Values; Rapidly Decreasing Singular Values

    计算矩阵随参数变化时逆、特征值和奇异值的导数,并解释很多数据矩阵为什么近似低秩。

  8. 18–19
    分解中的参数计数与鞍点;极大极小原理Counting Parameters in SVD, LU, QR, Saddle Points; Saddle Points Continued, Maxmin Principle

    数清各种分解的自由参数,再用瑞利商和极大极小原理分析鞍点。

  9. 20
    概率的定义与不等式Definitions and Inequalities

    复习均值、方差和协方差,讲 Markov 和 Chebyshev 不等式。

  10. 21–23
    逐步最小化函数;梯度下降;用动量加速梯度下降Minimizing a Function Step by Step; Gradient Descent: Downhill to a Minimum; Accelerating Gradient Descent (Use Momentum)

    从牛顿法讲到梯度下降,分析条件数对收敛速度的影响,再引入动量和 Nesterov 加速。

  11. 24
    线性规划与双人博弈Linear Programming and Two-Person Games

    讲线性规划的对偶性,并用它分析双人零和博弈。

  12. 25
    随机梯度下降Stochastic Gradient Descent

    说明每次只用一小批样本求梯度的好处,以及它在训练早期快、后期慢的特点。

  13. 26–27
    深度学习中神经网络的结构;反向传播求偏导Structure of Neural Nets for Deep Learning; Backpropagation: Find Partial Derivatives

    把神经网络写成线性映射与 ReLU 的复合,再用链式法则和计算图推导反向传播。

  14. 30–31
    秩一矩阵补全与循环矩阵;循环矩阵的特征向量:傅里叶矩阵Completing a Rank-One Matrix, Circulants!; Eigenvectors of Circulant Matrices: Fourier Matrix

    从缺失元素恢复低秩矩阵,再说明循环矩阵都由傅里叶矩阵对角化。

  15. 32–33
    卷积神经网络与卷积定理;神经网络与学习函数ImageNet is a Convolutional Neural Network (CNN), The Convolution Rule; Neural Nets and the Learning Function

    用卷积定理解释卷积层,再讨论神经网络作为分段线性函数的表达能力。

  16. 34–35
    距离矩阵与 Procrustes 问题;图中的聚类Distance Matrices, Procrustes Problem; Finding Clusters in Graphs

    从点间距离恢复坐标、对齐两组数据,再用图拉普拉斯矩阵做谱聚类。

  17. 36
    Alan Edelman 介绍 Julia 语言Alan Edelman and Julia Language

    Edelman 演示 Julia 在数值线性代数和自动微分上的用法。

麻省理工的其他AI课