├── .nojekyll ├── 01~微积分 ├── 函数、极限与连续.md ├── 常见导数.md ├── 导数.md ├── README.md ├── 99~参考资料 │ └── 微积分学笔记.pdf └── 傅里叶变换 │ └── README.md ├── 05~最优化方法 ├── 优化理论 │ └── 代价函数.md ├── 数值计算 │ ├── README.md │ ├── 数值稳定性.md │ └── 梯度下降.md ├── 模拟退火 │ └── README.md ├── 爬山算法 │ └── README.md ├── 遗传算法 │ ├── 生物学背景.md │ ├── 进化过程.md │ └── README.md ├── EM 算法 │ └── README.md └── README.md ├── .gitignore copy ├── 02~线性代数 ├── 矩阵分解.md ├── 99~参考资料 │ ├── 3Blue1Brown~《线性代数的本质》 │ │ ├── 赛维勒的理发师~笔记.md │ │ └── Cursor 总结笔记 │ │ │ ├── README.md │ │ │ └── 01~向量究竟是什么?.md │ ├── .DS_Store │ ├── 《麻省理工公开课:线性代数》 │ │ ├── 02~矩阵消元.pdf │ │ ├── 13~复习一.pdf │ │ ├── 25~复习二.pdf │ │ ├── 35~期末复习.pdf │ │ ├── 03~乘法和逆矩阵.pdf │ │ ├── 06~列空间和零空间.pdf │ │ ├── 10~四个基本子空间.pdf │ │ ├── 15~子空间投影.pdf │ │ ├── 30~奇异值分解.pdf │ │ ├── 34~左右逆和伪逆.pdf │ │ ├── 01~方程组的几何解释.pdf │ │ ├── 04~A 的 LU 分解.pdf │ │ ├── 12~矩阵应用:图与网络.pdf │ │ ├── 14~正交向量与子空间.pdf │ │ ├── 16~投影矩阵和最小二乘.pdf │ │ ├── 18-19~行列式介绍.pdf │ │ ├── 21~特征值和特征向量.pdf │ │ ├── 22~对角化和 A 的幂.pdf │ │ ├── 26~对称矩阵及正定性.pdf │ │ ├── 28~正定矩阵和最小值.pdf │ │ ├── 29~相似矩阵和若尔当形.pdf │ │ ├── 31~线性变换及对应矩阵.pdf │ │ ├── 32~基变换和图像压缩.pdf │ │ ├── 33~单元检测 3 复习.pdf │ │ ├── 05~转置-转换-向量空间 R.pdf │ │ ├── 09~线性相关性,基,维数.pdf │ │ ├── 11~矩阵空间:秩 1 矩阵.pdf │ │ ├── 20~克莱姆法则、逆矩阵、体积.pdf │ │ ├── 23~微分方程和exp(At).pdf │ │ ├── 27~复数矩阵和快速傅里叶变换.pdf │ │ ├── 08~Ax=b 的可解性和解的结构.pdf │ │ ├── 24~马尔可夫矩阵;.傅立叶级数.pdf │ │ ├── 07~求解 Ax = 0,主变量,特解.pdf │ │ └── 17~正交矩阵和Gram-Schmidt 正交化.pdf │ └── 子实~《线性代数笔记》 │ │ ├── resource │ │ ├── graph_12.png │ │ ├── graph_15_1.png │ │ ├── graph_15_2.png │ │ └── graph_16_1.png │ │ ├── 05~转换、置换、向量空间 R.ipynb │ │ ├── 06~列空间和零空间.ipynb │ │ ├── ReadMe.md │ │ ├── 09~线性相关性、基、维数.ipynb │ │ ├── ReadMe.ipynb │ │ ├── 04~$A$ 的 $LU$ 分解.ipynb │ │ ├── 18~行列式及其性质.ipynb │ │ ├── 26~对称矩阵及正定性.ipynb │ │ ├── 19~行列式公式和代数余子式.ipynb │ │ ├── 28~正定矩阵和最小值.ipynb │ │ ├── 13~复习一.ipynb │ │ ├── 10~四个基本子空间.ipynb │ │ ├── 08~求解 $Ax=b$:可解性和解的结构.ipynb │ │ ├── 02~矩阵消元.ipynb │ │ ├── 17~正交矩阵和 Gram-Schmidt 正交化法.ipynb │ │ ├── 29~相似矩阵和若尔当形.ipynb │ │ ├── 11~矩阵空间、秩1矩阵和小世界图.ipynb │ │ ├── 07~求解 $Ax=0$,主变量,特解.ipynb │ │ ├── 14~正交向量与子空间.ipynb │ │ ├── 33~单元检测 3 复习.ipynb │ │ ├── 20~克拉默法则、逆矩阵、体积.ipynb │ │ ├── 34~左右逆和伪逆.ipynb │ │ ├── 03~乘法和逆矩阵.ipynb │ │ ├── 21~特征值和特征向量.ipynb │ │ ├── 24~马尔科夫矩阵、傅里叶级数.ipynb │ │ ├── 27~复数矩阵和快速傅里叶变换.ipynb │ │ └── 25~复习二.ipynb ├── 特殊矩阵.md ├── README.md ├── 特殊函数.md └── 向量运算.md ├── INTRODUCTION.md ├── 03~概率论与数理统计 ├── 参数估计 │ └── README.md ├── 概率图模型 │ └── 条件随机场.md ├── 常见概率分布 │ ├── README.md │ ├── 多项分布.md │ ├── 正态分布.md │ └── 泊松分布.md ├── 99~参考资料 │ └── 2011~《深入浅出统计学》 │ │ └── README.md ├── 贝叶斯理论 │ ├── 变分贝叶斯推导.md │ ├── 贝叶斯推导.md │ ├── 朴素贝叶斯.md │ └── README.md ├── 概率论基础 │ ├── README.md │ ├── 最小二乘法.md │ ├── 概率与分布.md │ └── 中心极限与大数定理.md ├── 蒙特卡洛 │ └── 蒙特卡罗方法.md └── 马尔科夫模型 │ └── 隐马尔科夫模型.md ├── 99~参考资料 ├── 2021~鸢尾花书 │ ├── README.md │ ├── 01~编程不难 │ │ └── README.md │ ├── 02~可视之美 │ │ └── README.md │ ├── 03~数学要素 │ │ └── README.md │ └── 04~矩阵力量 │ │ └── README.md ├── .DS_Store ├── 2022~《数学要素》 │ ├── README.md │ └── 01~万物皆数.md ├── 2020~华校专~《AI 算法工程师手册-数学基础》 │ └── README.md ├── README.md └── 程序员数学 │ └── 多元函数微分学.ipynb ├── .DS_Store ├── .gitattributes ├── 04~信息论 ├── README.md ├── KL 散度.md └── 熵.md ├── .gitignore ├── 00~基础数学 ├── README.md └── 度量空间 │ └── 常见距离度量 │ └── Hausdorff 距离 │ └── README.md ├── _sidebar.md └── index.html /.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /01~微积分/函数、极限与连续.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /01~微积分/常见导数.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /01~微积分/导数.md: -------------------------------------------------------------------------------- 1 | # 导数 2 | -------------------------------------------------------------------------------- /05~最优化方法/优化理论/代价函数.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05~最优化方法/数值计算/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05~最优化方法/模拟退火/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05~最优化方法/爬山算法/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05~最优化方法/遗传算法/生物学背景.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05~最优化方法/遗传算法/进化过程.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore copy: -------------------------------------------------------------------------------- 1 | .DS_Store -------------------------------------------------------------------------------- /01~微积分/README.md: -------------------------------------------------------------------------------- 1 | # 微积分 2 | -------------------------------------------------------------------------------- /02~线性代数/矩阵分解.md: -------------------------------------------------------------------------------- 1 | # 特征分解 2 | -------------------------------------------------------------------------------- /INTRODUCTION.md: -------------------------------------------------------------------------------- 1 | # 本篇导读 2 | -------------------------------------------------------------------------------- /03~概率论与数理统计/参数估计/README.md: -------------------------------------------------------------------------------- 1 | # 参数估计 2 | -------------------------------------------------------------------------------- /03~概率论与数理统计/概率图模型/条件随机场.md: -------------------------------------------------------------------------------- 1 | # 条件随机场 2 | -------------------------------------------------------------------------------- /05~最优化方法/EM 算法/README.md: -------------------------------------------------------------------------------- 1 | # EM 算法 2 | -------------------------------------------------------------------------------- /99~参考资料/2021~鸢尾花书/README.md: -------------------------------------------------------------------------------- 1 | # 鸢尾花书 2 | -------------------------------------------------------------------------------- /99~参考资料/2021~鸢尾花书/01~编程不难/README.md: -------------------------------------------------------------------------------- 1 | # 鸢尾花书 2 | -------------------------------------------------------------------------------- /99~参考资料/2021~鸢尾花书/02~可视之美/README.md: -------------------------------------------------------------------------------- 1 | # 鸢尾花书 2 | -------------------------------------------------------------------------------- /99~参考资料/2021~鸢尾花书/03~数学要素/README.md: -------------------------------------------------------------------------------- 1 | # 鸢尾花书 2 | -------------------------------------------------------------------------------- /99~参考资料/2021~鸢尾花书/04~矩阵力量/README.md: -------------------------------------------------------------------------------- 1 | # 鸢尾花书 2 | -------------------------------------------------------------------------------- /03~概率论与数理统计/常见概率分布/README.md: -------------------------------------------------------------------------------- 1 | # Probability Distribution | 常见概率分布 2 | -------------------------------------------------------------------------------- /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/.DS_Store -------------------------------------------------------------------------------- /99~参考资料/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/99~参考资料/.DS_Store -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/3Blue1Brown~《线性代数的本质》/赛维勒的理发师~笔记.md: -------------------------------------------------------------------------------- 1 | > [原文地址](https://zhuanlan.zhihu.com/p/457858293) 2 | -------------------------------------------------------------------------------- /01~微积分/99~参考资料/微积分学笔记.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/01~微积分/99~参考资料/微积分学笔记.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/.DS_Store -------------------------------------------------------------------------------- /99~参考资料/2022~《数学要素》/README.md: -------------------------------------------------------------------------------- 1 | > [原文地址](https://github.com/Visualize-ML/Book3_Elements-of-Mathematics) 2 | 3 | # 《数学要素》 4 | -------------------------------------------------------------------------------- /03~概率论与数理统计/99~参考资料/2011~《深入浅出统计学》/README.md: -------------------------------------------------------------------------------- 1 | # 《深入浅出统计学》 2 | 3 | # Links 4 | 5 | - https://zhuanlan.zhihu.com/p/390359234 6 | -------------------------------------------------------------------------------- /99~参考资料/2020~华校专~《AI 算法工程师手册-数学基础》/README.md: -------------------------------------------------------------------------------- 1 | > !!WIP!! 2 | > [原文地址](https://www.huaxiaozhuan.com/) 3 | 4 | # AI 算法工程师手册-数学基础 5 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/02~矩阵消元.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/02~矩阵消元.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/13~复习一.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/13~复习一.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/25~复习二.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/25~复习二.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/35~期末复习.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/35~期末复习.pdf -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.xmind filter=lfs diff=lfs merge=lfs -text 2 | *.zip filter=lfs diff=lfs merge=lfs -text 3 | *.pdf filter=lfs diff=lfs merge=lfs -text 4 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/03~乘法和逆矩阵.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/03~乘法和逆矩阵.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/06~列空间和零空间.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/06~列空间和零空间.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/10~四个基本子空间.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/10~四个基本子空间.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/15~子空间投影.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/15~子空间投影.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/30~奇异值分解.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/30~奇异值分解.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/34~左右逆和伪逆.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/34~左右逆和伪逆.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/01~方程组的几何解释.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/01~方程组的几何解释.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/04~A 的 LU 分解.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/04~A 的 LU 分解.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/12~矩阵应用:图与网络.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/12~矩阵应用:图与网络.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/14~正交向量与子空间.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/14~正交向量与子空间.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/16~投影矩阵和最小二乘.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/16~投影矩阵和最小二乘.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/18-19~行列式介绍.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/18-19~行列式介绍.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/21~特征值和特征向量.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/21~特征值和特征向量.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/22~对角化和 A 的幂.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/22~对角化和 A 的幂.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/26~对称矩阵及正定性.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/26~对称矩阵及正定性.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/28~正定矩阵和最小值.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/28~正定矩阵和最小值.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/29~相似矩阵和若尔当形.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/29~相似矩阵和若尔当形.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/31~线性变换及对应矩阵.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/31~线性变换及对应矩阵.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/32~基变换和图像压缩.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/32~基变换和图像压缩.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/33~单元检测 3 复习.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/33~单元检测 3 复习.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/05~转置-转换-向量空间 R.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/05~转置-转换-向量空间 R.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/09~线性相关性,基,维数.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/09~线性相关性,基,维数.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/11~矩阵空间:秩 1 矩阵.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/11~矩阵空间:秩 1 矩阵.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/20~克莱姆法则、逆矩阵、体积.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/20~克莱姆法则、逆矩阵、体积.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/23~微分方程和exp(At).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/23~微分方程和exp(At).pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/27~复数矩阵和快速傅里叶变换.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/27~复数矩阵和快速傅里叶变换.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_12.png -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/08~Ax=b 的可解性和解的结构.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/08~Ax=b 的可解性和解的结构.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/24~马尔可夫矩阵;.傅立叶级数.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/24~马尔可夫矩阵;.傅立叶级数.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_15_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_15_1.png -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_15_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_15_2.png -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_16_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/子实~《线性代数笔记》/resource/graph_16_1.png -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/07~求解 Ax = 0,主变量,特解.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/07~求解 Ax = 0,主变量,特解.pdf -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/17~正交矩阵和Gram-Schmidt 正交化.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wx-chevalier/Mathematics-Notes/master/02~线性代数/99~参考资料/《麻省理工公开课:线性代数》/17~正交矩阵和Gram-Schmidt 正交化.pdf -------------------------------------------------------------------------------- /05~最优化方法/数值计算/数值稳定性.md: -------------------------------------------------------------------------------- 1 | # 数值稳定性 2 | 3 | 在计算机中执行数学运算需要使用有限的比特位来表达实数,这会引入近似误差。近似误差可以在多步数值运算中传递、积累,从而导致理论上成功的算法失败。因此数值算法设计时要考虑将累计误差最小化。当从头开始实现一个数值算法时,需要考虑数值稳定性。当使用现有的数值计算库(如 tensorflow)时,不需要考虑数值稳定性。 4 | -------------------------------------------------------------------------------- /04~信息论/README.md: -------------------------------------------------------------------------------- 1 | # 信息论 2 | 3 | 1948 年,美国数学家克劳德·香农发表论文《通信的数学理论》(A Mathematical Theory of Communication),奠定了信息论的基础。今天,信息论在信号处理、数据压缩、自然语言等许多领域,起着关键作用。虽然,它的数学形式很复杂,但是核心思想非常简单,只需要中学数学就能理解。 4 | 5 | 信息论背后的原理是从不太可能发生的事件中能学到更多的有用信息,发生可能性较大的事件包含较少的信息;发生可能性较小的事件包含较多的信息;独立事件包含额外的信息。 6 | -------------------------------------------------------------------------------- /01~微积分/傅里叶变换/README.md: -------------------------------------------------------------------------------- 1 | # 傅里叶变换 2 | 3 | ![正弦波定义](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230416231542.png) 4 | 5 | ![生成正弦波](https://upload.wikimedia.org/wikipedia/commons/1/1a/Fourier_series_square_wave_circles_animation.gif) 6 | 7 | ![多维度对比时域与频域](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230416231659.png) 8 | -------------------------------------------------------------------------------- /05~最优化方法/遗传算法/README.md: -------------------------------------------------------------------------------- 1 | # 遗传算法 2 | 3 | 遗传算法(Genetic Algorithm, GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。 4 | 5 | 其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,不需要确定的规则就能自动获取和指导优化的搜索空间,自适应地调整搜索方向。 6 | 7 | 遗传算法以一种群体中的所有个体为对象,并利用随机化技术指导对一个被编码的参数空间进行高效搜索。其中,选择、交叉和变异构成了遗传算法的遗传操作;参数编码、初始群体的设定、适应度函数的设计、遗传操作设计、控制参数设定五个要素组成了遗传算法的核心内容。 8 | 9 | # Links 10 | 11 | - https://www.jianshu.com/p/ae5157c26af9 12 | -------------------------------------------------------------------------------- /05~最优化方法/数值计算/梯度下降.md: -------------------------------------------------------------------------------- 1 | # 梯度下降 2 | 3 | # Gradient Descent | 梯度下降 4 | 5 | 梯度下降法 Gradient Descent 是一种常用的一阶(first-order)优化方法,是求解无约束优化问题最简单、最经典的方法之一。考虑无约束优化问题$min_xf(x)$,其中$f(x)$为连续可微函数。如果能构造出一个序列$x^0,x^1,...,x^t$满足: 6 | 7 | $$ 8 | f(x^{t+1}) < f(x^t),t=0,1,2... 9 | $$ 10 | 11 | 则不断执行该过程即可以收敛到局部极小点。而根据泰勒展示我们可以知道: 12 | 13 | $$ 14 | f(x+\Delta x) \simeq f(x) + \Delta x^T \nabla f(x) 15 | $$ 16 | 17 | 于是,如果要满足 $f(x+\Delta x) < f(x)$,可以选择: 18 | 19 | $$ 20 | \Delta x = -{step} \nabla f(x) 21 | $$ 22 | 23 | 其中$step$是一个小常数,表示步长。以求解目标函数最小化为例,梯度下降算法可能存在一下几种情况: 24 | 25 | - 当目标函数为凸函数时,局部极小点就对应着函数全局最小值时,这种方法可以快速的找到最优解; 26 | - 当目标函数存在多个局部最小值时,可能会陷入局部最优解。因此需要从多个随机的起点开始解的搜索。 27 | - 当目标函数不存在最小值点,则可能陷入无限循环。因此,有必要设置最大迭代次数。 28 | 29 | # Links 30 | 31 | - https://mp.weixin.qq.com/s/VvdbyvUDIGUiIct8k0trvQ 32 | -------------------------------------------------------------------------------- /03~概率论与数理统计/贝叶斯理论/变分贝叶斯推导.md: -------------------------------------------------------------------------------- 1 | # Variation Bayesian Inference | 变分贝叶斯推导 2 | 3 | 变分贝叶斯方法最早由 Matthew J.Beal 在他的博士论文《Variational Algorithms for Approximate Bayesian Inference 》中提出,作者将其应用于隐马尔科夫模型,混合因子分析,非线性动力学,图模型等。变分贝叶斯是一类用于贝叶斯估计和机器学习领域中近似计算复杂(intractable )积分的技术。它主要应用于复杂的统计模型中,这种模型一般包括三类变量:观测变量 (observed variables, data),未知参数(parameters )和潜变量(latent variables )。在贝叶斯推断中,参数和潜变量统称为不可观测变量 (unobserved variables)。变分贝叶斯方法主要是两个目的 4 | 5 | - 近似不可观测变量的后验概率,以便通过这些变量作出统计推断。 6 | - 对一个特定的模型,给出观测变量的边缘似然函数(或称为证据,evidence )的下界。主要用于模型的选择,认为模型的边缘似然值越高,则模型对数据拟合程度越好,该模型产生 Data 的概率也越高。 7 | 8 | 对于第一个目的,蒙特卡洛模拟,特别是用 Gibbs 取样的 MCMC 方法,可以近似计算复杂的后验分布,能很好地应用到贝叶斯统计推断。此方法通过大量的样本估计真实的后验,因而近似结果带有一定的随机性。与此不同的是,变分贝叶斯方法提供一种局部最优,但具有确定解的近似后验方法。从某种角度看,变分贝叶斯可以看做是 EM 算法的扩展,因为它也是采用极大后验估计 (MAP),即用单个最有可能的参数值来代替完全贝叶斯估计。另外,变分贝叶斯也通过一组相互依然(mutually dependent )的等式进行不断的迭代来获得最优解。 9 | -------------------------------------------------------------------------------- /04~信息论/KL 散度.md: -------------------------------------------------------------------------------- 1 | # KL 散度 & 相对熵 2 | 3 | 相对熵又称互熵,交叉熵,鉴别信息,Kullback 熵,Kullback-Leible 散度(即 KL 散度)等。设$p(x)$和$q(x)$是$x$取值的两个概率概率分布,则$p$对$q$的相对熵为 4 | 5 | $$ 6 | D(p||q) = \sum\_{i=1}^{n}p(x_i)log\frac{p(x_i)}{q(x_i)} 7 | $$ 8 | 9 | 在一定程度上,熵可以度量两个随机变量的距离。KL 散度是两个概率分布 P 和 Q 差别的非对称性的度量。KL 散度是用来度量使用基于 Q 的编码来编码来自 P 的样本平均所需的额外的位元数。典型情况下,P 表示数据的真实分布,Q 表示数据的理论分布,模型分布,或 P 的近似分布。 10 | 相对熵(KL 散度)有两个主要的性质。如下 11 | (1)尽管 KL 散度从直观上是个度量或距离函数,但它并不是一个真正的度量或者距离,因为它不具有对称性,即$$D(p||q) \neq D(q||p)$$ 12 | (2)相对熵的值为非负值,即 13 | 14 | $$ 15 | D(p||q) > 0 16 | $$ 17 | 18 | # 相对熵的应用 19 | 20 | 相对熵可以衡量两个随机分布之间的距离,当两个随机分布相同时,它们的相对熵为零,当两个随机分布的差别增大时,它们的相对熵也会增大。所以相对熵(KL 散度)可以用于比较文本的相似度,先统计出词的频率,然后计算 KL 散度就行了。另外,在多指标系统评估中,指标权重分配是一个重点和难点,通过相对熵可以处理。 21 | 22 | # 互信息 23 | 24 | 两个随机变量$X$,$Y$的互信息,定义为$X$,$Y$的联合分布和独立分布乘积的相对熵。 25 | $$I(X,Y)=D(P(X,Y)||P(X)P(Y))$$ 26 | $$I(X,Y)=\sum\_{x,y}log\frac{p(x,y)}{p(x)p(y)}$$ 27 | 28 | # 信息增益 29 | 30 | 信息增益表示得知特征 A 的信息而使得类$X$的信息的不确定性减少的程度。信息增益的定义为特征$A$对训练数据集$D$的信息增益$g(D,A)$,定义为集合$D$的经验熵$H(D)$与特征$A$给定条件下$D$的经验条件熵$H(D|A)$之差: 31 | 32 | $$g(D,A) = H(D) - H(D|A)$$ 33 | -------------------------------------------------------------------------------- /04~信息论/熵.md: -------------------------------------------------------------------------------- 1 | # 熵 2 | 3 | 信息熵反应了一个系统的有序化程度,一个系统越是有序,那么它的信息熵就越低,反之就越高。对于事件 $X=x$,定义自信息 Self-Information 为:$I(x)=-\log P(x)$。自信息仅仅处理单个输出,而熵就是为自信息的期望: 4 | 5 | $$ 6 | H(X)=\mathbb{E}_{X \sim P(X)}[I(x)]=-\mathbb{E}_{X \sim P(X)}[\log P(x)] 7 | $$ 8 | 9 | 熵一般记作 $H(P)$。熵刻画了按照真实分布 来识别一个样本所需要的编码长度的期望(即平均编码长度),譬如含有 4 个字母 `(A,B,C,D)` 的样本集中,真实分布 $P=\left(\frac{1}{2}, \frac{1}{2}, 0,0\right)$,则只需要 1 位编码即可识别样本。对于离散型随机变量 $X$,假设其取值集合大小为 $K$,则可以证明:$0 \leq H(X) \leq \log K$。 10 | 11 | # 条件熵 12 | 13 | 对于随机变量 $Y$ 和 $X$,条件熵 $H(Y|X)$ 表示:已知随机变量 $X$ 的条件下,随机变量 $Y$ 的不确定性。条件熵的定义为:$X$ 给定条件下 $Y$ 的条件概率分布的熵对 $X$ 的期望: 14 | 15 | $$ 16 | H(Y | X)=\mathbb{E}_{X \sim P(X)}[H(Y | X=x)]=-\mathbb{E}_{(X, Y) \sim P(X, Y)} \log P(Y | X) 17 | $$ 18 | 19 | 对于离散型随机变量,存在: 20 | 21 | $$ 22 | H(Y | X)=\sum_{x} p(x) H(Y | X=x)=-\sum_{x} \sum_{y} p(x, y) \log p(y | x) 23 | $$ 24 | 25 | 对于连续型随机变量,则存在: 26 | 27 | $$ 28 | H(Y | X)=\int p(x) H(Y | X=x) d x=-\iint p(x, y) \log p(y | x) d x d y 29 | $$ 30 | 31 | 根据定义可以证明: 32 | 33 | $$ 34 | H(X, Y)=H(Y | X)+H(X) 35 | $$ 36 | 37 | 即:描述 $X$ 和 $Y$ 所需要的信息是:描述 $X$ 所需要的信息加上给定 $X$ 条件下描述 $Y$ 所需的额外信息。 38 | 39 | # Links 40 | 41 | - https://www.zhihu.com/question/65288314/answer/244557337 42 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore all 2 | * 3 | 4 | # Unignore all with extensions 5 | !*.* 6 | 7 | # Unignore all dirs 8 | !*/ 9 | 10 | .DS_Store 11 | 12 | # Logs 13 | logs 14 | *.log 15 | npm-debug.log* 16 | yarn-debug.log* 17 | yarn-error.log* 18 | 19 | # Runtime data 20 | pids 21 | *.pid 22 | *.seed 23 | *.pid.lock 24 | 25 | # Directory for instrumented libs generated by jscoverage/JSCover 26 | lib-cov 27 | 28 | # Coverage directory used by tools like istanbul 29 | coverage 30 | 31 | # nyc test coverage 32 | .nyc_output 33 | 34 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 35 | .grunt 36 | 37 | # Bower dependency directory (https://bower.io/) 38 | bower_components 39 | 40 | # node-waf configuration 41 | .lock-wscript 42 | 43 | # Compiled binary addons (https://nodejs.org/api/addons.html) 44 | build/Release 45 | 46 | # Dependency directories 47 | node_modules/ 48 | jspm_packages/ 49 | 50 | # TypeScript v1 declaration files 51 | typings/ 52 | 53 | # Optional npm cache directory 54 | .npm 55 | 56 | # Optional eslint cache 57 | .eslintcache 58 | 59 | # Optional REPL history 60 | .node_repl_history 61 | 62 | # Output of 'npm pack' 63 | *.tgz 64 | 65 | # Yarn Integrity file 66 | .yarn-integrity 67 | 68 | # dotenv environment variables file 69 | .env 70 | 71 | # next.js build output 72 | .next 73 | -------------------------------------------------------------------------------- /02~线性代数/特殊矩阵.md: -------------------------------------------------------------------------------- 1 | # 特殊矩阵 2 | 3 | # 方阵 4 | 5 | 方阵的行列式定义如下: 6 | 7 | - $1$ 阶方阵的行列式为该元素本身 8 | - $n$ 阶方阵的行列式等于它的任一行或者列的各元素与其对应的代数余子式乘积之和。 9 | 10 | # 稀疏矩阵 11 | 12 | 对于那些零元素数目远远多于非零元素数目,并且非零元素的分布没有规律的矩阵称为稀疏矩阵(sparse)。人们无法给出稀疏矩阵的确切定义,一般都只是凭个人的直觉来理解这个概念,即矩阵中非零元素的个数远远小于矩阵元素的总数,并且非零元素没有分布规律。 13 | 14 | 由于稀疏矩阵中非零元素较少,零元素较多,因此可以采用只存储非零元素的方法来进行压缩存储。由于非零元素分布没有任何规律,所以在进行压缩存储的时侯需要存储非零元素值的同时还要存储非零元素在矩阵中的位置,即非零元素所在的行号和列号,也就是在存储某个元素比如 $a_(ij)$ 的值的同时,还需要存储该元素所在的行号 i 和它的列号 j,这样就构成了一个三元组 `(i,j,aij)` 的线性表。 15 | 16 | 三元组可以采用顺序表示方法,也可以采用链式表示方法,这样就产生了对稀疏矩阵的不同压缩存储方式。 17 | 18 | ## 稀疏矩阵的顺序实现 19 | 20 | 若把稀疏矩阵的三元组线性表按顺序存储结构存储,则称为稀疏矩阵的三元组顺序表。顺序表中除了存储三元组外,还应该存储矩阵行数、列数和总的非零元素数目,这样才能唯一的确定一个矩阵。 21 | 22 | ![](http://images.cnblogs.com/cnblogs_com/xiaosuo/DataStructure/37.jpg) 23 | 24 | ## 稀疏矩阵的十字链表实现 25 | 26 | 十字链表结点分为三类: 27 | 28 | - 表结点,它由五个域组成,其中 i 和 j 存储的是结点所在的行和列,right 和 down 存储的是指向十字链表中该结点所有行和列的下一个结点的指针,v 用于存放元素值。 29 | 30 | - 行头和列头结点,这类结点也有域组成,其中行和列的值均为零,没有实际意义,right 和 down 的域用于在行方向和列方向上指向表结点,next 用于指向下一个行或列的表头结点。 31 | 32 | - 总表头结点,这类结点与表头结点的结构和形式一样,只是它的 i 和 j 存放的是矩阵的行和列数。 33 | 34 | ![](http://images.cnblogs.com/cnblogs_com/xiaosuo/DataStructure/38.jpg) 35 | 36 | 十字链表可以看作是由各个行链表和列链表共同搭建起来的一个综合链表,每个结点 aij 既是处在第 i 行链表的一个结点,同时也是处在第 j 列链表上的一个结点,就你是处在十字交叉路口上的一个结点一样,这就是十字链表的由来。十字链表中的每一行和每一列链表都是一个循环链表,都有一个表头结点。 37 | 38 | ![](http://images.cnblogs.com/cnblogs_com/xiaosuo/DataStructure/39.jpg) 39 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/05~转换、置换、向量空间 R.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第五讲:转换、置换、向量空间 R\n", 8 | "\n", 9 | "## 置换矩阵(Permutation Matrix)\n", 10 | "\n", 11 | "$P$为置换矩阵,对任意可逆矩阵$A$有:\n", 12 | "\n", 13 | "$PA=LU$\n", 14 | "\n", 15 | "$n$阶方阵的置换矩阵$P$有$\\binom{n}{1}=n!$个\n", 16 | "\n", 17 | "对置换矩阵$P$,有$P^TP = I$\n", 18 | "\n", 19 | "即$P^T = P^{-1}\n", 20 | "## 转置矩阵(Transpose Matrix)\n", 21 | "\n", 22 | "$(A^T)_{ij} = (A)_{ji}$\n", 23 | "\n", 24 | "## 对称矩阵(Symmetric Matrix)\n", 25 | "\n", 26 | "$A^T$ = $A$\n", 27 | "\n", 28 | "对任意矩阵$R$有$R^TR$为对称矩阵:\n", 29 | "\n", 30 | "$$\n", 31 | "(R^TR)^T = (R)^T(R^T)^T = R^TR\\\\\n", 32 | "\\textrm{即}(R^TR)^T = R^TR\n", 33 | "$$\n", 34 | "\n", 35 | "## 向量空间(Vector Space)\n", 36 | "\n", 37 | "所有向量空间都必须包含原点(Origin);\n", 38 | "\n", 39 | "向量空间中任意向量的数乘、求和运算得到的向量也在该空间中。\n", 40 | "即向量空间要满足加法封闭和数乘封闭。" 41 | ] 42 | } 43 | ], 44 | "metadata": { 45 | "kernelspec": { 46 | "display_name": "Python [default]", 47 | "language": "python", 48 | "name": "python3" 49 | }, 50 | "language_info": { 51 | "codemirror_mode": { 52 | "name": "ipython", 53 | "version": 3 54 | }, 55 | "file_extension": ".py", 56 | "mimetype": "text/x-python", 57 | "name": "python", 58 | "nbconvert_exporter": "python", 59 | "pygments_lexer": "ipython3", 60 | "version": "3.5.2" 61 | } 62 | }, 63 | "nbformat": 4, 64 | "nbformat_minor": 0 65 | } 66 | -------------------------------------------------------------------------------- /03~概率论与数理统计/概率论基础/README.md: -------------------------------------------------------------------------------- 1 | # 概率论 2 | 3 | 概率论是用于表示不确定陈述(Statement)的数学框架,它提供了量化不确定性的方法,使我们能够做出不确定的陈述以及在不确定性存在的情况下的推理;而信息论使我们能够量化概率分布中的不确定性总量。 4 | 5 | > Probability theory is nothing but common sense reduced to calculation.:Pierre Laplace 6 | 7 | # 不确定性 8 | 9 | 几乎所有的活动都需要一些在不确定性存在的情况下进行推理的能力。事实上,除了那些被定义为真的数学声明,我们很难认定某个命题是千真万确的或者确保某件事一定会发生。不确定性有三种可能的来源: 10 | 11 | - 被建模系统内在的随机性。例如,大多数量子力学的解释,都将亚原子粒子的动力学描述为概率的。我们还可以创建一些我们假设具有随机动态的理论情境,例如一个假想的纸牌游戏,在这个游戏中我们假设纸牌被真正混洗成了随机顺序。 12 | - 不完全观测。即使是确定的系统,当我们不能观测到所有驱动系统行为的变量时,该系统也会呈现随机性。例如,在 Monty Hall 问题中,一个游戏节目的参与者被要求在三个门之间选择,并且会赢得放置在选中门后的奖品。其中两扇门通向山羊,第三扇门通向一辆汽车。选手的每个选择所导致的结果是确定的,但是站在选手的角度,结果是不确定的。 13 | - 不完全建模。当我们使用一些必须舍弃某些观测信息的模型时,舍弃的信息会导致模型的预测出现不确定性。例如,假设我们制作了一个机器人,它可以准确地观察周围每一个对象的位置。在对这些对象将来的位置进行预测时,如果机器人采用的是离散化的空间,那么离散化的方法将使得机器人无法确定对象们的精确位置:因为每个对象都可能处于它被观测到的离散单元的任何一个角落。 14 | 15 | # 概率的理解 16 | 17 | 概率论是机器学习中的重要角色,对于概率的理解往往有两种不同的方式:频率学派与贝叶斯学派。频率论解释(Frequentist Interpretation)的观点中,概率代表着某个事件在较长范围内的出现频次。譬如这里的抛硬币问题可以阐述为,如果我们抛足够的次数,我们会观测到正面朝上的次数与反面朝上的次数基本相同。 18 | 19 | 另一种即时所谓的贝叶斯解释(Bayesian Interpretation),我们认为概率是用来衡量某件事的不确定性(Uncertainty),其更多地与信息相关而不再是重复尝试的次数。用贝叶斯理论阐述抛硬币问题则为下一次抛硬币时正面朝上的可能性与反面朝上的可能性相差无几。贝叶斯解释的最大优势在于我们可以去为事件的不确定性建立具体的模型而不再依赖于多次试验得出的频次结果。譬如我们要去预测 2020 年世界杯的冠军,我们肯定不能让球队比赛很多次来观测频次计算概率,这件事只会发生零或一次,反正是无法重复发生的。基于贝叶斯理论我们便可以利用可观测到的数据推测该事件的结果概率,典型的应用是垃圾邮件过滤系统中,我们可以根据带标签的训练数据来对新的邮件进行判断。 20 | 21 | # 随机变量 22 | 23 | 随机变量(Random Variable)是可以随机地取不同值的变量。我们通常用无格式字体(Plain Typeface) 中的小写字母来表示随机变量本身,而用手写体中的小写字母来表示随机变量能够取到的值。例如,$x_1$ 和 $x_2$ 都是随机变量 $\mathrm{x}$ 可能的取值。就其本身而言,一个随机变量只是对可能的状态的描述;它必须伴随着一个概率分布来指定每个状态的可能性。 24 | 25 | 随机变量可以是离散的或者连续的。离散随机变量拥有有限或者可数无限多的状态。注意这些状态不一定非要是整数;它们也可能只是一些被命名的状态而没有数值。连续随机变量伴随着实数值。 26 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/06~列空间和零空间.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第六讲:列空间和零空间\n", 8 | "\n", 9 | "对向量子空间$S$和$T$,有$S \\cap T$也是向量子空间。\n", 10 | "\n", 11 | "对$m \\times n$矩阵$A$,$n \\times 1$矩阵$x$,$m \\times 1$矩阵$b$,运算$Ax=b$:\n", 12 | "\n", 13 | "$$\n", 14 | "\\begin{bmatrix}\n", 15 | "a_{11} & a_{12} & \\cdots & a_{1(n-1)} & a_{1n} \\\\\n", 16 | "a_{21} & a_{22} & \\cdots & a_{2(n-1)} & a_{2n} \\\\\n", 17 | "\\vdots & \\vdots & \\ddots & \\vdots & \\vdots \\\\\n", 18 | "a_{m1} & a_{m2} & \\cdots & a_{m(n-1)} & a_{mn} \\\\\n", 19 | "\\end{bmatrix}\n", 20 | "\\cdot\n", 21 | "\\begin{bmatrix}\n", 22 | "x_{1} \\\\\n", 23 | "x_{2} \\\\\n", 24 | "\\vdots \\\\\n", 25 | "x_{n-1} \\\\\n", 26 | "x_{n} \\\\\n", 27 | "\\end{bmatrix}\n", 28 | "=\n", 29 | "\\begin{bmatrix}\n", 30 | "b_{1} \\\\\n", 31 | "b_{2} \\\\\n", 32 | "\\vdots \\\\\n", 33 | "b_{m} \\\\\n", 34 | "\\end{bmatrix}\n", 35 | "$$\n", 36 | "\n", 37 | "由$A$的列向量生成的子空间为$A$的列空间;\n", 38 | "\n", 39 | "$Ax=b$有非零解当且仅当$b$属于$A$的列空间\n", 40 | "\n", 41 | "A的零空间是$Ax=0$中$x$的解组成的集合。" 42 | ] 43 | } 44 | ], 45 | "metadata": { 46 | "kernelspec": { 47 | "display_name": "Python 3", 48 | "language": "python", 49 | "name": "python3" 50 | }, 51 | "language_info": { 52 | "codemirror_mode": { 53 | "name": "ipython", 54 | "version": 3 55 | }, 56 | "file_extension": ".py", 57 | "mimetype": "text/x-python", 58 | "name": "python", 59 | "nbconvert_exporter": "python", 60 | "pygments_lexer": "ipython3", 61 | "version": "3.5.1" 62 | } 63 | }, 64 | "nbformat": 4, 65 | "nbformat_minor": 0 66 | } 67 | -------------------------------------------------------------------------------- /05~最优化方法/README.md: -------------------------------------------------------------------------------- 1 | # 数据分析 2 | 3 | 数据分析,或者大数据分析并非易事,下车伊始可能会觉得选择合适的算法模型即可。接触越多会越发现更多来自于业务与场景的挑战: 4 | 5 | ![](https://tva1.sinaimg.cn/large/007DFXDhgy1g4dui70rgej30iw0b2gmq.jpg) 6 | 7 | 数据科学通常包含三个部分:数据采集与处理、数据分析与数据可视化。数据科学家可划分为 Analytics 和 MachineLearning 两类,但是也有很多人兼顾两个角色,在工作中相互转换,就是戴两顶帽子(wearing two hats)。前一类通过 AB 测试、深度分析等指导产品决策,而后一类搭建智能决策的产品,提升效率。 8 | 9 | - Analytics 大多是问题导向,如购物平台上用户在工作时间和下班后消费习惯的差异。最初可以针对用户总体进行分析,然后在结果的基础上做更细化的分析。可把用户按照城市、地理位置、用户使用的客户端来分类细化。整个过程是交互式的,就是不断提出新问题,通过分析解决问题,然后再提出新的问题,最终目的是做决策辅助。 10 | 11 | - MachineLearning 主要是指标驱动,如提高广告平台上用户的转化率。转化率就是从用户点击广告到生成转化(如用户访问广告商网站和下载 APP)的比率。通过应用预测模型或对当前系统调参来提升指标,最终生成智能化的产品。 12 | 13 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230430223033.png) 14 | 15 | 开始先搜集原始数据(企业的 CRM 数据、交易记录等),还有网站点击流或用户 APP 内行为的埋点日志。 16 | 17 | 之后,对原始数据进行预处理,也叫数据清洗。原始数据会有很多冗余、变量缺失以及错误。基于清洗过的数据,可以做一些探索性分析和机器学习建模。 18 | 19 | 在探索性分析方面,尿片和啤酒是很经典的案例。很多分析师会对商品信息进行归类以及监督商品的相关度。一般情况,大多数的商品相关度都很低,约在 0.1 左右,啤酒跟尿片的相关度是 0.3 左右。针对这个奇怪的现象,分析师们做了分析,发现很多父亲晚上去超市给婴儿买尿片的同时也会买啤酒来自己喝。这样一来,超市摆放商品时可以把相关度比较高的商品放在一起,方便顾客挑选。所以对数据科学来讲,通过数据分析、建模可以得到一些可以让人信服的信息,便于做决策辅助。 20 | 21 | 另外就是数据产品,分为分析型和智能化产品。 22 | 23 | - 分析类数据产品。如现在了解当前北京实时交通状况,可以爬取网上数据,针对这些数据做一些可视化和交互式分析。这样数据产品可以展现数据和定时更新数据内容,就是一个分析型数据产品。 24 | 25 | - 智能化数据产品。如基于机器学习实现的搜索引擎,广告推荐系统等,自动搜集数据并基于数据决策的系统。 26 | 27 | # 函数曲线极值 28 | 29 | 我们把函数曲线理解成一个一个山峰和山谷组成的山脉。那么我们可以设想所得到的每一个解就是一只袋鼠,我们希望它们不断的向着更高处跳去,直到跳到最高的山峰。所以求最大值的过程就转化成一个“袋鼠跳”的过程。 30 | 下面介绍介绍“袋鼠跳”的几种方式。 31 | 32 | - 爬山算法:一只袋鼠朝着比现在高的地方跳去。它找到了不远处的最高的山峰。但是这座山不一定是最高峰。这就是爬山算法,它不能保证局部最优值就是全局最优值。 33 | 34 | - 模拟退火:袋鼠喝醉了。它随机地跳了很长时间。这期间,它可能走向高处,也可能踏入平地。但是,它渐渐清醒了并朝最高峰跳去。这就是模拟退火算法。 35 | 36 | - 遗传算法:有很多袋鼠,它们降落到喜玛拉雅山脉的任意地方。这些袋鼠并不知道它们的任务是寻找珠穆朗玛峰。但每过几年,就在一些海拔高度较低的地方射杀一些袋鼠。于是,不断有袋鼠死于海拔较低的地方,而越是在海拔高的袋鼠越是能活得更久,也越有机会生儿育女。就这样经过许多年,这些袋鼠们竟然都不自觉地聚拢到了一个个的山峰上,可是在所有的袋鼠中,只有聚拢到珠穆朗玛峰的袋鼠被带回了美丽的澳洲。 37 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/ReadMe.md: -------------------------------------------------------------------------------- 1 | # 线性代数笔记 2 | 3 | ## 简介 4 | 5 | **作者:子实** 6 | 7 | 线性代数笔记,使用 `jupyter notebook (ipython notebook)` 编写展示。 8 | 9 | `Github` 加载 `.ipynb` 的速度较慢,建议在 [Nbviewer](http://nbviewer.jupyter.org/github/zlotus/notes-linear-algebra/blob/master/ReadMe.ipynb) 中查看该项目。 10 | 11 | ---- 12 | 13 | ## 目录 14 | 15 | 来自MIT课程线性代数的笔记,可以在[麻省理工公开课:线性代数](http://open.163.com/special/opencourse/daishu.html)观看。 16 | 17 | - 第01集 [方程组的几何解释](chapter01.ipynb) 18 | - 第02集 [矩阵消元](chapter02.ipynb) 19 | - 第03集 [乘法和逆矩阵](chapter03.ipynb) 20 | - 第04集 [A的LU分解](chapter04.ipynb) 21 | - 第05集 [转置-置换-向量空间R](chapter05.ipynb) 22 | - 第06集 [列空间和零空间](chapter06.ipynb) 23 | - 第07集 [求解Ax=0:主变量、特解](chapter07.ipynb) 24 | - 第08集 [求解Ax=b:可解性和解的结构](chapter08.ipynb) 25 | - 第09集 [线性相关性、基、维数](chapter09.ipynb) 26 | - 第10集 [四个基本子空间](chapter10.ipynb) 27 | - 第11集 [矩阵空间、秩1矩阵和小世界图](chapter11.ipynb) 28 | - 第12集 [图和网络](chapter12.ipynb) 29 | - 第13集 [复习一](chapter13.ipynb) 30 | - 第14集 [正交向量与子空间](chapter14.ipynb) 31 | - 第15集 [子空间投影](chapter15.ipynb) 32 | - 第16集 [投影矩阵和最小二乘](chapter16.ipynb) 33 | - 第17集 [正交矩阵和Gram-Schmidt正交化](chapter17.ipynb) 34 | - 第18集 [行列式及其性质](chapter18.ipynb) 35 | - 第19集 [行列式公式和代数余子式](chapter19.ipynb) 36 | - 第20集 [克拉默法则、逆矩阵、体积](chapter20.ipynb) 37 | - 第21集 [特征值和特征向量](chapter21.ipynb) 38 | - 第22集 [对角化和A的幂](chapter22.ipynb) 39 | - 第23集 [微分方程和exp(At)](chapter23.ipynb) 40 | - 第24集 [马尔可夫矩阵、傅立叶级数](chapter24.ipynb) 41 | - 第25集 [复习二](chapter25.ipynb) 42 | - 第26集 [对称矩阵及正定性](chapter26.ipynb) 43 | - 第27集 [复数矩阵和快速傅里叶变换](chapter27.ipynb) 44 | - 第28集 [正定矩阵和最小值](chapter28.ipynb) 45 | - 第29集 [相似矩阵和若尔当形](chapter29.ipynb) 46 | - 第30集 [奇异值分解](chapter30.ipynb) 47 | - 第31集 [线性变换及对应矩阵](chapter31.ipynb) 48 | - 第32集 [基变换和图像压缩](chapter32.ipynb) 49 | - 第33集 [单元检测3复习](chapter33.ipynb) 50 | - 第34集 [左右逆和伪逆](chapter34.ipynb) 51 | - 第35集 [期末复习](chapter35.ipynb) 52 | 53 | 笔记格式借鉴[Jin Li](https://github.com/lijin-THU/)的[机器学习笔记](https://github.com/lijin-THU/notes-machine-learning)。 -------------------------------------------------------------------------------- /03~概率论与数理统计/概率论基础/最小二乘法.md: -------------------------------------------------------------------------------- 1 | # 最小二乘法 2 | 3 | 最小平方法是十九世纪统计学的主题曲。从许多方面来看, 它之于统计学就相当于十八世纪的微积分之于数学。 4 | 5 | # 案例:尺子估算 6 | 7 | 来看一个生活中的例子。比如说,有五把尺子: 8 | 9 | ![五把尺子](https://s1.ax1x.com/2020/10/11/0cJbvV.png) 10 | 11 | 用它们来分别测量一线段的长度,得到的数值分别为(颜色指不同的尺子): 12 | 13 | ![尺寸长度](https://s1.ax1x.com/2020/10/11/0cJXbF.png) 14 | 15 | 总之就是有误差,这种情况下,一般取平均值来作为线段的长度: 16 | 17 | $$ 18 | \bar{x}=\frac{10.2+10.3+9.8+9.9+9.8}{5}=10 19 | $$ 20 | 21 | 换一种思路来思考刚才的问题,首先,把测试得到的值画在笛卡尔坐标系中,分别记作 $y_i$: 22 | 23 | ![](https://s1.ax1x.com/2020/10/11/0cYe5d.png) 24 | 25 | 其次,把要猜测的线段长度的真实值用平行于横轴的直线来表示(因为是猜测的,所以用虚线来画),记作 $y$: 26 | 27 | ![](https://s1.ax1x.com/2020/10/11/0cYnPA.png) 28 | 29 | 每个点都向 $y$ 做垂线,垂线的长度就是 $|y-y_i|$,也可以理解为测量值和真实值之间的误差: 30 | 31 | ![](https://s1.ax1x.com/2020/10/11/0cY3qS.png) 32 | 33 | 因为误差是长度,还要取绝对值,计算起来麻烦,就干脆用平方来代表误差: 34 | 35 | $$ 36 | \left|y-y_{i}\right| \rightarrow\left(y-y_{i}\right)^{2} 37 | $$ 38 | 39 | 总的误差的平方就是: 40 | 41 | $$ 42 | \epsilon=\sum\left(y-y_{i}\right)^{2} 43 | $$ 44 | 45 | 因为 $y$ 是猜测的,所以可以不断变换,自然,总的误差\epsilon 也是在不断变化的。法国数学家,阿德里安-馬里·勒讓德(1752-1833,这个头像有点抽象)提出让总的误差的平方最小的 y 就是真值,这是基于,如果误差是随机的,应该围绕真值上下波动: 46 | 47 | $$ 48 | \epsilon=\sum\left(y-y_{i}\right)^{2} \text { 最小 } \Longrightarrow \text { 真值 } y 49 | $$ 50 | 51 | 这是一个二次函数,对其求导,导数为 0 的时候取得最小值: 52 | 53 | $$ 54 | \begin{aligned} 55 | \frac{d}{d y} \epsilon &=\frac{d}{d y} \sum\left(y-y_{i}\right)^{2}=2 \sum\left(y-y_{i}\right) \\ 56 | &=2\left(\left(y-y_{1}\right)+\left(y-y_{2}\right)+\left(y-y_{3}\right)+\left(y-y_{4}\right)+\left(y-y_{5}\right)\right)=0 57 | \end{aligned} 58 | $$ 59 | 60 | 进而: 61 | 62 | $$ 63 | 5 y=y_{1}+y_{2}+y_{3}+y_{4}+y_{5} \Longrightarrow y=\frac{y_{1}+y_{2}+y_{3}+y_{4}+y_{5}}{5} 64 | $$ 65 | 66 | 以下这种方法: 67 | 68 | $$ 69 | \epsilon=\sum\left(y-y_{i}\right)^{2} \text { 最小 } \Longrightarrow \text { 真值 } y 70 | $$ 71 | 72 | 就是最小二乘法,所谓“二乘”就是平方的意思,台湾直接翻译为最小平方法。 73 | 74 | # Links 75 | 76 | - https://www.matongxue.com/madocs/818.html 77 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/3Blue1Brown~《线性代数的本质》/Cursor 总结笔记/README.md: -------------------------------------------------------------------------------- 1 | # 3Blue1Brown《线性代数的本质》学习笔记 2 | 3 | ## 第 1 章:向量究竟是什么? 4 | 5 | ### 核心概念 6 | 7 | - 向量可以从两个视角理解: 8 | 1. 物理视角:带有大小和方向的箭头 9 | 2. 计算机视角:有序的数字列表 10 | 11 | ### 重要观点 12 | 13 | - 向量加法可以通过首尾相连或平行四边形法则实现 14 | - 向量乘法(数乘)表示向量的伸缩变换 15 | 16 | ## 第 2 章:线性组合、张成的空间与基 17 | 18 | ### 核心概念 19 | 20 | - 线性组合:将多个向量按比例缩放后相加 21 | - 张成空间:一组向量所有可能的线性组合所能覆盖的空间 22 | - 基向量:能够张成某个空间的线性无关向量组 23 | 24 | ### 重要观点 25 | 26 | - 二维空间中,两个不共线的向量可以张成整个平面 27 | - 三维空间中,需要三个不共面的向量才能张成整个空间 28 | 29 | ## 第 3 章:线性变换与矩阵 30 | 31 | ### 核心概念 32 | 33 | - 线性变换:保持网格线平行且等距分布的变换 34 | - 变换的线性特征: 35 | 1. 原点保持固定 36 | 2. 网格线保持平行且等距 37 | 3. 保持向量加法和标量乘法 38 | 39 | ### 重要观点 40 | 41 | - 矩阵可以看作是线性变换的数值表示 42 | - 矩阵的列向量表示基向量变换后的位置 43 | 44 | ## 第 4 章:矩阵乘法与线性变换复合 45 | 46 | ### 核心概念 47 | 48 | - 矩阵乘法本质:变换的复合 49 | - AB ≠ BA:矩阵乘法不满足交换律 50 | 51 | ### 重要观点 52 | 53 | - 复合变换的顺序很重要 54 | - 可以通过跟踪基向量的变化来理解整个变换过程 55 | 56 | ## 第 5 章:行列式 57 | 58 | ### 核心概念 59 | 60 | - 行列式代表面积/体积的缩放比例 61 | - 行列式为负表示空间发生了翻转 62 | 63 | ### 重要观点 64 | 65 | - 行列式为 0 意味着降维打击 66 | - 行列式的绝对值表示面积/体积变化的倍数 67 | 68 | ## 第 6 章:逆矩阵、列空间与零空间 69 | 70 | ### 核心概念 71 | 72 | - 逆矩阵:能够撤销原变换的矩阵 73 | - 列空间:矩阵列向量所有可能的线性组合 74 | - 零空间:经过变换后落在原点的所有向量 75 | 76 | ### 重要观点 77 | 78 | - 不是所有矩阵都有逆矩阵 79 | - 奇异矩阵:行列式为 0 的矩阵,没有逆矩阵 80 | 81 | ## 第 7 章:点积与对偶性 82 | 83 | ### 核心概念 84 | 85 | - 点积:两个向量的数量积 86 | - 点积的几何意义:一个向量在另一个向量方向上的投影长度与另一个向量长度的乘积 87 | 88 | ### 重要观点 89 | 90 | - 点积为 0 表示两向量垂直 91 | - 点积与线性变换有深刻联系 92 | 93 | ## 第 8 章:叉积的标准介绍 94 | 95 | ### 核心概念 96 | 97 | - 叉积:两个三维向量得到一个新的向量 98 | - 叉积方向:右手法则 99 | - 叉积大小:两向量张成的平行四边形面积 100 | 101 | ### 重要观点 102 | 103 | - 叉积垂直于原来两个向量 104 | - 叉积在物理和计算机图形学中有重要应用 105 | 106 | ## 总结 107 | 108 | 3Blue1Brown 的线性代数系列通过可视化的方式,帮助我们: 109 | 110 | 1. 建立直观的几何理解 111 | 2. 掌握核心概念的本质 112 | 3. 理解各种线性代数运算背后的几何意义 113 | 114 | 这种理解方式比传统的纯公式推导更容易形成深刻的认知,对后续学习高等数学和应用数学都很有帮助。 115 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/09~线性相关性、基、维数.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第九讲:线性相关性、基、维数\n", 8 | "\n", 9 | "$v_1,\\ v_2,\\ \\cdots,\\ v_n$是$m\\times n$矩阵$A$的列向量:\n", 10 | "\n", 11 | "如果$A$零空间中有且仅有$0$向量,则各向量线性无关,$rank(A)=n$。\n", 12 | "\n", 13 | "如果存在非零向量$c$使得$Ac=0$,则存在线性相关向量,$rank(A)\\lt n$。\n", 14 | "\n", 15 | "向量空间$S$中的一组基(basis),具有两个性质:\n", 16 | "\n", 17 | "1. 他们线性无关;\n", 18 | "2. 他们可以生成$S$。\n", 19 | "\n", 20 | "对于向量空间$\\mathbb{R}^n$,如果$n$个向量组成的矩阵为可逆矩阵,则这$n$个向量为该空间的一组基,而数字$n$就是该空间的维数(dimension)。\n", 21 | "\n", 22 | "举例:\n", 23 | "$\n", 24 | "A=\n", 25 | "\\begin{bmatrix}\n", 26 | "1 & 2 & 3 & 1 \\\\\n", 27 | "1 & 1 & 2 & 1 \\\\\n", 28 | "1 & 2 & 3 & 1 \\\\\n", 29 | "\\end{bmatrix}\n", 30 | "$\n", 31 | ",A的列向量线性相关,其零空间中有非零向量,所以$rank(A)=2=主元存在的列数=列空间维数$。\n", 32 | "\n", 33 | "可以很容易的求得$Ax=0$的两个解,如\n", 34 | "$\n", 35 | "x_1=\n", 36 | "\\begin{bmatrix}\n", 37 | "-1 \\\\\n", 38 | "-1 \\\\\n", 39 | "1 \\\\\n", 40 | "0 \\\\\n", 41 | "\\end{bmatrix}, \n", 42 | "x_2=\n", 43 | "\\begin{bmatrix}\n", 44 | "-1 \\\\\n", 45 | "0 \\\\\n", 46 | "0 \\\\\n", 47 | "1 \\\\\n", 48 | "\\end{bmatrix}\n", 49 | "$,根据前几讲,我们知道特解的个数就是自由变量的个数,所以$n-rank(A)=2=自由变量存在的列数=零空间维数$\n", 50 | "\n", 51 | "我们得到:列空间维数$dim C(A)=rank(A)$,零空间维数$dim N(A)=n-rank(A)$" 52 | ] 53 | } 54 | ], 55 | "metadata": { 56 | "kernelspec": { 57 | "display_name": "Python 3", 58 | "language": "python", 59 | "name": "python3" 60 | }, 61 | "language_info": { 62 | "codemirror_mode": { 63 | "name": "ipython", 64 | "version": 3 65 | }, 66 | "file_extension": ".py", 67 | "mimetype": "text/x-python", 68 | "name": "python", 69 | "nbconvert_exporter": "python", 70 | "pygments_lexer": "ipython3", 71 | "version": "3.5.1" 72 | } 73 | }, 74 | "nbformat": 4, 75 | "nbformat_minor": 0 76 | } 77 | -------------------------------------------------------------------------------- /02~线性代数/README.md: -------------------------------------------------------------------------------- 1 | # 线性代数 2 | 3 | 线性代数作为数学的一个分支,广泛应用于科学和工程中。 4 | 5 | # 基础表示 6 | 7 | ## 标量(Scalar) 8 | 9 | 一个标量就是一个单独的数,它不同于线性代数中研究的其他大部分对象(通常是多个数的数组)。我们用斜体表示标量。标量通常被赋予小写的变量名称。当我们介绍标量时,会明确它们是哪种类型的数。 10 | 11 | 比如,在定义实数标量时,我们可能会说令 $s \in \mathbb{R}$ 表示一条线的斜率;在定义自然数标量时,我们可能会说令 $n \in \mathbb{N}$ 表示元素的数目。 12 | 13 | ## 向量(Vector) 14 | 15 | 一个向量是一列数,我们可以把向量看作空间中的点,每个元素是不同坐标轴上的坐标。这些数是有序排列的,通过次序中的索引,我们可以确定每个单独的数。通常我们赋予向量粗体的小写变量名称,比如 $\mathbf{x}$,也可以加上箭头 $\overrightarrow{\mathbf{x}}$。向量中的元素可以通过带脚标的斜体表示。向量 $\mathbf{x}$ 的第一个元素是 $\mathbf{x}_1$,第二个元素是 $\mathbf{x}_2$,等等。 16 | 17 | 我们也会注明存储在向量中的元素是什么类型的。如果每个元素都属于 $\mathbb{R}$,并且该向量有 $n$ 个元素,那么该向量属于实数集 $\mathbb{R}$ 的 $n$ 次笛卡尔乘积构成的集合,记为 $\mathbb{R}^n$。当需要明确表示向量中的元素时,我们会将元素排列成一个方括号包围的纵列: 18 | 19 | $$ 20 | \boldsymbol{x}=\left[\begin{array}{c}{x_{1}} \\ {x_{2}} \\ {\vdots} \\ {x_{n}}\end{array}\right] 21 | 22 | \\ 23 | 24 | \overrightarrow{\mathbf{x}}=\left(x_{1}, x_{2}, \cdots, x_{n}\right)^{T}=\left[\begin{array}{c}{x_{1}} \\ {x_{2}} \\ {\vdots} \\ {x_{n}}\end{array}\right] 25 | $$ 26 | 27 | 有时我们需要索引向量中的一些元素。在这种情况下,我们定义一个包含这些元素索引的集合,然后将该集合写在脚标处。比如,指定 $x_1$,$x_3$ 和 $x_6$,我们定义集合 $S=\{1,3,6\}$,然后写作 $x_S$。我们用符号 $-$ 表示集合的补集中的索引,比如 $x_{-1}$ 表示 $\mathbf{x}$ 中除 $x_1$ 外的所有元素,$x_{-S}$ 表示 $x$ 中除 $x_1$,$x_3$,$x_6$ 外所有元素构成的向量。 28 | 29 | ## 矩阵 30 | 31 | 矩阵是一个二维数组,其中的每一个元素被两个索引(而非一个)所确定。矩阵 $X \in \mathbb{R}^{m \times n}$ 可以表示为: 32 | 33 | $$ 34 | X=\left[\begin{array}{cccc}{x_{1,1}} & {x_{1,2}} & {\cdots} & {x_{1, n}} \\ {x_{2,1}} & {x_{2,2}} & {\cdots} & {x_{2, n}} \\ {\vdots} & {\vdots} & {\ddots} & {\vdots} \\ {x_{m, 1}} & {x_{m, 2}} & {\cdots} & {x_{m, n}}\end{array}\right] 35 | $$ 36 | 37 | 简写为 $\left(x_{i, j}\right)_{m \times n}$ 或者 $\left[x_{i, j}\right]_{m \times n}$。 38 | 39 | 我们在表示矩阵中的元素时,通常以不加粗的斜体形式使用其名称,索引用逗号间隔。比如,$A_{1,1}$ 表示 $A$ 左上的元素,$A_{m,n}$ 表示 $A$ 右下的元素。通常可以使用 $:$ 来表示水平坐标,以表示垂直坐标 $i$ 中的所有元素。譬如 $A_{i,:}$ 表示 $A$ 垂直坐标 $i$ 上的一横排元素,也成为 A 的第 $i$ 行。同理,$A_{:,i}$ 表示 $A$ 的第 $i$ 列(Column)。 40 | 41 | ## 张量 42 | 43 | 在某些情况下,我们会讨论坐标超过两维的数组。一般地,一个数组中的元素分布在若干维坐标的规则网格中,我们称之为张量。张量往往用 $\mathbf{A}$ 来表示,坐标为 $i,j,k$ 的元素记为 $A_{i,j,k}$。 44 | -------------------------------------------------------------------------------- /03~概率论与数理统计/蒙特卡洛/蒙特卡罗方法.md: -------------------------------------------------------------------------------- 1 | # 蒙特卡罗方法 2 | 3 | ![](http://cos.name/wp-content/uploads/2013/01/monte-carlo-simulation.jpg?_=3118875) 4 | 5 | 蒙特卡洛方法是一种随机模拟方法,随机模拟的思想由来已久,但是由于难于取得随机数,随机模拟的方法一直发展缓慢。而蒙特卡洛方法的出现得益于现代电子计算机的诞生,在 1944 年由 Metropolis 和 Ulam 提出于二战时美国原子弹研究的曼哈顿工程之中。蒙特卡洛这个名字是由 Metropolis 起的,借用了那个著名的赌场的名字,因为赌博总是和概率相关。蒙特卡洛模拟的过程是随机的,但解决的不仅有随机的问题也可以有确定性的问题。蒙特卡洛可以视为一种思想的泛称,只要在解决问题分人过程中,利用大量的随机样本,然后对这些样本结果进行概率分析从而得到问题求解的方法,都可以称之为蒙特卡洛方法。 6 | 斯坦福统计学教授 Persi Diaconis 在他的文章 The Markov Chain Monte Carlo Revolution 中给出的破译犯人密码的例子。一天,一位研究犯罪心理学的心理医生来到斯坦福拜访 Diaconis。他带来了一个囚犯所写的密码信息。他希望 Diaconis 帮助他把这个密码中的信息找出来。这个密码里的每个符号应该对应着某个字母,但是如何把这些字母准确地找出来呢?Diaconis 和他的学生 Marc 采用了一种叫做 MCMC(马尔科夫链蒙特卡洛)的方法解决了这个问题。 7 | ![](https://img3.doubanio.com/view/note/large/public/p9282000.jpg) 8 | 9 | ## 贝叶斯推断的不足 10 | 11 | 贝叶斯统计学是利用后验分布对 θ 进行推断。这种推断的计算很多情况下要用积分计算来完成。比如,我们要计算$θ$的函数$g(θ)$的期望: 12 | 13 | $$ 14 | E(g(θ∣x))=∫g(θ)f(θ∣x)dθ 15 | $$ 16 | 17 | 其中函数$f$表示后验分布。当$g(θ)=θ$时,得到的就是关于$θ$的点估计。但是对很多贝叶斯推断问题来说,有时候后验分布过于复杂,使得积分没有显示结果,数值方法也很难应用;有时候需要计算多重积分(比如后验分布是多元分布时)。这些都会带来计算上的很大困难。这也是在很长的时期内,贝叶斯统计得不到快速发展的一个原因。1990 年代 MCMC(Markov Chain Monte Carlo,马尔科夫链蒙特卡洛)计算方法引入到贝叶斯统计学之后,一举解决了这个计算的难题。可以说,近年来贝叶斯统计的蓬勃发展,特别是在各个学科的广泛应用和 MCMC 方法的使用有着极其密切的关系。 18 | 19 | # 蒙特卡洛方法初探 20 | 21 | 蒙特卡洛方法的基础是(利用计算机)生成指定分布的随机数的抽样。在统计上发展了一些方法来解决这个问题。一般来说,从均匀分布 U(0,1)的样本较容易生成,通过线性同余发生器可以生成伪随机数序列,这些序列的各种统计指标和均匀分布 U(0,1) 的理论计算结果非常接近。这样的伪随机序列就有比较好的统计性质,可以被当成真实的随机数使用。常见的分布的随机数都可以基于均匀分布的样本生成。对定积分的计算是蒙特卡洛方法的一种重要的应用,而很多统计问题,比如计算概率、矩(期望、方差等)都可以归结为定积分的计算比如说我们想计算 θ 的期望: 22 | 23 | $$ 24 | E(\theta) = \int \theta P(\theta) d\theta 25 | $$ 26 | 27 | 如果我们直接进行数值计算会比较麻烦,可以基于蒙特卡洛方法的思想通过抽样来解决该问题: 28 | 29 | - 在$θ$的分布中抽取独立样本$θ1,θ2,...,θn$,n 足够大。用样本均值$\bar{\theta}= \frac{1}{n} \sum_{i=1}^{n} \theta_i$作为$E(θ)$ 30 | - 当 n 趋近无穷时,利用大数定律,样本均值会收敛到$E(θ)$(这称为仿真一致性) 31 | 32 | 从上面这个简单例子,蒙特卡洛方法的基本思路是:1.针对实际问题建立一个简单易行的概率统计模型,使问题所求的解为该模型的概率分布或者数字特征,比如:某个事件的概率或者是某个随机变量的期望值 2.对模型中的随机变量建立抽样方法,在计算机上进行模拟试验,得到足够的随机抽样,并对相关事件进行统计 3.对试验结果进行分析,给出所求解的估计及其精度(方差)的估计 33 | 34 | # Links 35 | 36 | - [贝叶斯集锦(3):从 MC、MC 到 MCMC](https://site.douban.com/182577/widget/notes/10567181/note/292072927/) 37 | -------------------------------------------------------------------------------- /03~概率论与数理统计/常见概率分布/多项分布.md: -------------------------------------------------------------------------------- 1 | # Bernoulli Distribution | 伯努利分布 2 | 3 | 伯努利分布是关于布尔变量 $x \in \{0,1\}$ 的概率分布,其连续参数 $\phi \in [0,1]$ 表示变量 $x=1$ 的概率。 4 | 5 | $$ 6 | P(x|\phi)=Bern(x|\phi)=\phi^x(1-x)^{(1-x)} \\ 7 | E[x] = \phi \\ 8 | Var[x] = \phi(1-\phi) 9 | $$ 10 | 11 | # Binomial Distribution | 二项分布 12 | 13 | 二项分布用以描述 $n$ 次独立的伯努利实验中有 $x$ 次成功的概率,其中每次伯努利实验成功的概率为 $\phi \in [0,1]$: 14 | 15 | $$ 16 | p(X=x)=\frac{n !}{x !(n-x) !} \phi^{x}(1-\phi)^{n-x}, x \in\{0,1, \cdots, n\} 17 | $$ 18 | 19 | 当 $n=1$ 时,二项分布退化为伯努利分布。二项分布的典型例子是扔硬币,硬币正面朝上概率为 $p$, 重复扔 $n$ 次硬币,$k$ 次为正面的概率即为一个二项分布概率。 20 | 21 | 二项分布的期望 $\mathbb{E}[X]=n \phi$,方差则是 $\operatorname{Var}[X]=n \phi(1-\phi)$。 22 | 23 | # Categorical/Multinomial Distribution | 多项分布 24 | 25 | 比如扔骰子,不同于扔硬币,骰子有 6 个面对应 6 个不同的点数,这样单次每个点数朝上的概率都是 $1/6$,即对应 p1~p6,它们的值不一定都是 1/6,只要和为 1 且互斥即可,比如一个形状不规则的骰子;重复扔 n 次,如果问有 $x$ 次都是点数 6 朝上的概率就是: 26 | 27 | $$ 28 | P = C(n,x)p^x(1-p)^{n-x} 29 | $$ 30 | 31 | 严格定义来说,将伯努利分布由单变量扩展到 $d$ 维向量 $x$,其中 $x_i \in {0,1}$,且$\sum_{i=1}^{d} x_i = 1$,并假设 $x_i$取 1 的概率为 $\mu_i \in [0,1],\sum_{i=1}^d \mu_i = 1$,则将得到离散概率分布为: 32 | 33 | $$ 34 | P(x|\mu) = \prod_{i=1}^d \mu_i^{x_i} \\ 35 | E[x_i] = \mu_i \\ 36 | Var[x_i] = \mu_i(1 - \mu_i) \\ 37 | Cov[x_j,x_i] = \prod[j=i] \mu_i 38 | $$ 39 | 40 | 在此基础上扩展二项分布则得到多项分布,它描述了在 $N$ 次独立实验中有 $m_i$ 次 $x_i = 1$ 的概率: 41 | 42 | $$ 43 | P(m_1,m_2,...,m_d|N,\mu)=Mult(m_1,m_2,...,m_d | N,\mu) \\ 44 | = \frac{N!}{m_1!m_2!...m_d!}\prod_{i=1}^d \mu_i^{m_i} \\ 45 | E[m_i] = N_{\mu_i} \\ 46 | Var[m_i] = N_{\mu_i}(1-\mu_i) \\ 47 | Cov[m_j,m_i] = -N_{\mu_j \mu_i} 48 | $$ 49 | 50 | # 狄里克雷分布 51 | 52 | 多项式分布的质量密度函数: 53 | 54 | $$ 55 | \operatorname{Mult}\left(m_{1}, m_{2}, \cdots, m_{K} ; \vec{\mu}, N\right)=\frac{N !}{m_{1} ! m_{2} ! \cdots m_{K} !} \prod_{k=1}^{K} \mu_{k}^{m_{k}} 56 | $$ 57 | 58 | 它是 $\left(\mu_{1}+\mu_{2}+\cdots+\mu_{K}\right)^{m_{1}+m_{2}+\cdots+m_{K}}$ 的多项式展开的形式。 59 | 60 | 狄利克雷分布的概率密度函数: 61 | 62 | $$ 63 | \operatorname{Dir}(\vec{\mu} ; \vec{\alpha})=\frac{\Gamma\left(\sum_{k=1}^{K} \alpha_{k}\right)}{\sum_{k=1}^{K} \Gamma\left(\alpha_{k}\right)} \prod_{k=1}^{K} \mu_{k}^{\alpha_{k}-1} 64 | $$ 65 | 66 | 可以看到,多项式分布与狄里克雷分布的概率密度函数非常相似,区别仅仅在于前面的归一化项: 67 | 68 | - 多项式分布是针对离散型随机变量,通过求和获取概率。 69 | - 狄里克雷分布时针对连续型随机变量,通过求积分来获取概率。 70 | -------------------------------------------------------------------------------- /03~概率论与数理统计/贝叶斯理论/贝叶斯推导.md: -------------------------------------------------------------------------------- 1 | # Bayesian Inference 2 | 3 | Let X1X1 be the vector of observable random variables. Let X2X2 be the vector of latent random variables. Let ΘΘ be the vector of parameters. f(x2,θ|x1)=f(x1|x2,θ)f(x2|θ)f(θ)f(x1) 4 | 5 | ## 极大似然估计 Maximum Likelihood Estimation 6 | 7 | 假设有一堆独立同分布数据 X1,…,Xn,其 PDF 为 p(x;θ),其中 θ 为模型参数,则其似然函数为: $$L*n(\theta)=\prod\limits*{i=1}^n p(X*i; \theta)$$ 而极大似然估计就是要找到参数 $\theta$,使得似然函数的值最大。这意思就是找到一个参数 $\theta$,使得使用分布 p(x;θ) 来估计这一堆数据 Xi 的效果最好。为啥捏,因为假设 X 都是离散值的情况下,Ln(Xi;θ) 表达的含义是:从参数 θ 通过模型 p(x;θ) 产生这一堆数据的概率(把所有单个数据产生的概率乘起来就是产生这一堆数据的概率)。所以 p(x;θ)=Pθ(x={Xi}),那么如果当有两个参数 θ1 和 θ2 时,$P*{\theta*1}(x=\{X_i\})>P*{\theta*2}(x=\{X_i\})$,则说明 θ1 更好的描述了这组数据,因此要找到一个 θ 使得整似然函数的值最大!所以只要将似然函数对 θ 求导,就可以找到这样的 θ。例子:求 N 次伯努利分布的最大似然估计: $$ Bern(x|\mu)=\mu^x(1-\mu)^{1-x} \\ L(X|\mu)=\prod\limits*{i=1}^N \mu^{X*i}(1-\mu)^{1-X_i}=\mu^S(1-\mu)^{N-S} 其中 S=\sum\limits\*{i=1}^N X_i $$ 将 $log L(X|\mu)$ 对 $\mu$ 求导得到 $\frac{S}{\mu}-\frac{N-S}{1-\mu}=0$,最终得到 : $$ \hat{\mu}\_N=\frac{1}{N} S=\bar{X}\_N $$ 8 | 9 | ## Maximum A Posterior Estimation | 极大后验估计 10 | 11 | 极大后验估计中加入了一些先验知识,它最大化的是一个后验函数。具体来说,因为贝叶斯定律: 12 | 13 | $$ 14 | p(\theta|x)=\frac{p(x|\theta)p(\theta)}{p(x)} 15 | $$ 16 | 17 | 那么极大后验估计就是要求 18 | 19 | $$ 20 | \hat{\theta}_{MAP}=\underset{\theta}{argmax}~ p(x|\theta)p(\theta)=\underset{\theta}{argmax}\{\sum\limits_{X_i} log ~p(X_i|\theta) + log~p(\theta)\} 21 | $$ 22 | 23 | 可见,极大后验估计中相对于最大似然估计,多了 log p(θ),也就是先验的影响。 24 | 25 | ## 贝叶斯推断 :Bayesian Inference 26 | 27 | 前面的 MAP 是一个点估计,只估计似然函数达到最大点的情况下,参数 θ 的值。而贝叶斯推断通过假设关于参数 $\theta$ 的一个分布而不是直接求单个值来扩展了 MAP 算法。 28 | 29 | > Bayesian inference extends the MAP approach by allowing a distribution over the parameter set θ instead of making a direct estimate. Not only encodes this the maximum(a posteriori) value of the data-generated parameters, but it also incorporates expectation as another parameter estimate as well as variance information as a measure of estimation quality or confidence. 30 | 31 | 具体来说,给定数据 X 和需要求的参数 θ,贝叶斯推断需要求出一个具体的分布: $$ p(\theta|X)=P(X|\theta)P(\theta)/P(X) $$ 32 | 33 | - $X$: 观测数据 34 | - $\theta$: 潜变量 35 | 36 | 这里和 MAP 的区别就在于,MAP 忽略了 P(X) 因为它是常量,对于 MAP 的过程:求导后再求等于 0 来获得最好的 θ,这个常量是没有用的。但是贝叶斯推断要的是整个 p(θ|X) 的分布,所以 P(X) 这个 normalisation term 是需要被求出来的。在获得具体的分布之后,所要求的参数值可以通过估计期望或方差得到。 37 | -------------------------------------------------------------------------------- /03~概率论与数理统计/贝叶斯理论/朴素贝叶斯.md: -------------------------------------------------------------------------------- 1 | # Likelihood:似然 2 | 3 | 我们首先来讨论下为什么当我们观测到 $D={16,8,2,64}$ 时更倾向于认为假设空间是所有 2 的方幂值的集合,而不是笃定假设空间是所有偶数的集合。虽然两个假设空间都符合我们的观测结果,但是归纳的过程中我们会尽量避免可疑的巧合(Suspicious Coincidences )。如果我们认为假设空间是所有偶数的集合,那么又该如何说服自己这些数字都是 2 的方幂值呢?为了更方便的形式化讨论这个现象,我们假设从某个假设空间中随机取值的概率分布为均匀分布,可以推导出从假设空间中进行 N 次取值得到观测集合的概率为: $$ p(D|h) = [\frac{1}{size(h)}]^N = [\frac{1}{|h|}]^N $$ 对于这个等式最形象化的解释就是奥卡姆剃刀原则(Occam’s razor ),我们倾向于选择符合观测值的最小 / 最简的假设空间。在 $D=\{16\}$ 的情况下,如果假设空间为 2 的方幂值,则仅有 6 个符合条件的数字,推导出 $p(D|h*{two}) = 1/6$。而如果是所有的偶数集合,$p(D|h*{even}) = 1/50$。显而易见 $h*two > h_even$,如果观测序列中有 4 个数值,则 $h*{two} = (1/6)^4 = 7.7 * 10^{-4}$,然而 $h\_{even} = (1/50)^4 = 1.6*10^{-7}$,不同的假设空间的概率值差异越发的大了。因此我们会认为 $D = \{16,8,2,64\}$ 这个观测序列是来自于 2 的方幂值这个假设空间而不是所有的偶数集合这个假设空间。 4 | 5 | # Prior:先验 6 | 7 | 前一节我们讨论了所谓似然的概念,当观测到 $D = \{16,8,2,64\}$ 时我们会倾向于认为其采样于 2 的方幂值这个集合,不过为啥不是 $h' = 除了 32 之外的 2 的方幂值 $ 这个似然概率更大的集合呢?直观来看就是 $h' = 除了 32 之外的 2 的方幂值 $ 这个假设与常规思维不符,而对于这样奇特的思维我们可以赋予其较低的先验概率值来降低其最终得到的后验概率。总计而言,贝叶斯理论中概率并不需要频率解释,先验分布也可以称为主观概率,是根据经验对随机现象的发生可能性的一种看法或者信念。统计学家萨维奇曾给出过一个著名的女士品茶的例子:一位常喝牛奶加茶的女士说她可以分辨在杯中先加入的是茶还是奶。连续做了十次实验,她都说对了。显然这来自于她的经验而非猜测。我们在日常生活中也经常使用基于经验或者信念的主观的概率陈述。比如说,天气预报里说明天(8 月 3 日)降水概率 30%,就是关于 “ 明日降水 ” 这个事件的一种信念,因为作为 8 月 3 日的明天是不可重复的,自然也就没有频率意义。再比如说,医生认为对某位病人进行手术的成功可能性为 80%,也是根据自己的经验而具有的的信念,而非在这位病人身上反复进行试验的频率结果。把 θ 看做随机变量,进而提出先验分布,在许多情况下是合理的。比如工厂产品的合格率每一天都有波动,可以看做随机变量;明天的降水概率虽然是几乎不动的,但这是基于经验和规律提出来的概率陈述,也可以看做随机变量。尽管我们使用后验分布来进行推理,但先验分布的选取也是很重要的。常见的先验分布类型包括: 8 | 9 | - 无信息先验(Noninformative Priors ) 无信息先验只包含了参数的模糊的或者一般的信息,是对后验分布影响最小的先验分布。很多人愿意选取无信息先验,因为这种先验与其它 “ 主观 ” 的先验相比更接近 “ 客观 ”。通常,我们把均匀分布作为无信息先验来使用,这相当于在参数所有的可能值上边指派了相同的似然。但是无先验信息的使用也要慎重,比如有些情况下会导致不恰当的后验分布(如不可积分的后验概率密度)。 10 | - Jeffreys 先验 (Jeffreys’ Prior) Jeffreys 提出的选取先验分布的原则是一种不变原理,采用 Fisher 信息阵的平方根作为 θ 的无信息先验分布。较好地解决了无信息先验中的一个矛盾,即若对参数 θ 选用均匀分布,则其函数 g(θ) 往往不是均匀分布。 11 | - 信息先验(Informative Priors ) 根据以前的经验、研究或专家经验得到的先验分布。 12 | - 共轭先验(Conjugate Priors ) 共轭先验是指先验分布和后验分布来自同一个分布族的情况,就是说先验和后验有相同的分布形式(当然,参数是不同的)。这些共轭先验是结合似然的形式推导出来的。共轭先验是经常被使用的一种先验分布形式,原因在于数学处理和计算上的方便性,同时后验分布的一些参数也可以有很好的解释。 13 | 14 | # Posterior:后验 15 | 16 | 后验值即为似然乘以先验再进行归一化,对于这里的数字游戏: $$ p(h|D) = \frac{p(D|h)p(h)}{\sum*{h' \in H}p(D,h')} = \frac {p(h)\amalg(D\in h) / |h|^N} {\sum*{h' \in H}p(h')\amalg(D \in h') / |h'|^N} $$ 其中 $\amalg(D\in h) $ 当且仅当 $D$ 中所有数据都属于假设空间 $h$ 时取 1,其他情况下取 0。。 17 | 18 | # 共轭先验 19 | -------------------------------------------------------------------------------- /00~基础数学/README.md: -------------------------------------------------------------------------------- 1 | # 基础数学概要 2 | 3 | 基础数学是计算机图形学和几何处理的理论基石,为高级算法和应用提供必要的数学工具和理论支撑。 4 | 5 | ## 1. 知识体系 6 | 7 | ### 1.1 集合论与逻辑 8 | 9 | - **集合基础** 10 | - 集合运算 11 | - 映射与函数 12 | - 关系理论 13 | - **数理逻辑** 14 | - 命题逻辑 15 | - 谓词逻辑 16 | - 数学证明方法 17 | 18 | ### 1.2 度量空间 19 | 20 | - **距离与度量** 21 | - 度量的定义与公理 22 | - 常见距离度量 23 | - 欧氏距离 24 | - 曼哈顿距离 25 | - Hausdorff 距离 26 | - Fréchet 距离 27 | - **度量空间性质** 28 | - 收敛性 29 | - 完备性 30 | - 紧致性 31 | 32 | ### 1.3 代数结构 33 | 34 | - **群论基础** 35 | - 群的定义 36 | - 子群 37 | - 同态与同构 38 | - **环与域** 39 | - 整环 40 | - 域的性质 41 | - 有限域 42 | 43 | ### 1.4 拓扑学基础 44 | 45 | - **拓扑空间** 46 | - 开集与闭集 47 | - 连续性 48 | - 紧致性 49 | - **同胚与不变量** 50 | - 拓扑不变量 51 | - 基本群 52 | - 同伦论基础 53 | 54 | ## 2. 在图形学中的应用 55 | 56 | ### 2.1 基础工具 57 | 58 | - 集合运算用于布尔操作 59 | - 度量空间用于相似度计算 60 | - 拓扑学用于曲面分析 61 | 62 | ### 2.2 高级应用 63 | 64 | - 形状分析与匹配 65 | - 曲面参数化 66 | - 网格处理算法 67 | 68 | ## 3. 学习路径建议 69 | 70 | ### 3.1 基础阶段 71 | 72 | 1. 集合论与逻辑 → 打好严格思维基础 73 | 2. 度量空间 → 理解距离和相似性 74 | 3. 代数结构 → 掌握抽象代数工具 75 | 76 | ### 3.2 进阶阶段 77 | 78 | 1. 拓扑学基础 → 理解形状的本质 79 | 2. 高等代数 → 深入代数结构 80 | 3. 应用实践 → 结合具体问题 81 | 82 | ## 4. 与其他数学分支的关系 83 | 84 | ```mermaid 85 | graph TD 86 | A[基础数学] --> B[线性代数] 87 | A --> C[微积分] 88 | A --> D[离散数学] 89 | B --> E[计算几何] 90 | C --> E 91 | D --> F[图论] 92 | ``` 93 | 94 | ## 5. 重要性说明 95 | 96 | 基础数学在图形学中的重要性体现在: 97 | 98 | 1. **理论基础** 99 | 100 | - 提供严格的数学语言 101 | - 建立抽象思维框架 102 | - 保证算法的正确性 103 | 104 | 2. **工具支持** 105 | 106 | - 提供基本的数学工具 107 | - 支持算法设计和分析 108 | - 辅助问题形式化 109 | 110 | 3. **应用指导** 111 | - 指导算法优化 112 | - 帮助理解问题本质 113 | - 启发解决方案设计 114 | 115 | ## 6. 学习建议 116 | 117 | 1. **循序渐进** 118 | 119 | - 从基础概念开始 120 | - 注重理解本质 121 | - 多做练习和应用 122 | 123 | 2. **联系实践** 124 | 125 | - 结合具体问题 126 | - 实现相关算法 127 | - 分析实际案例 128 | 129 | 3. **建立联系** 130 | - 横向关联各数学分支 131 | - 纵向深入理解原理 132 | - 注重知识整合 133 | 134 | ## 7. 参考资源 135 | 136 | ### 7.1 经典教材 137 | 138 | - 《数学分析》 139 | - 《抽象代数》 140 | - 《基础拓扑学》 141 | 142 | ### 7.2 在线资源 143 | 144 | - MIT OpenCourseWare 145 | - 3Blue1Brown 视频系列 146 | - Mathematics Stack Exchange 147 | 148 | ## 8. 后续发展 149 | 150 | 基础数学的学习将为以下方向打下基础: 151 | 152 | 1. **理论研究** 153 | 154 | - 算法设计与分析 155 | - 数学模型构建 156 | - 理论创新 157 | 158 | 2. **工程应用** 159 | 160 | - 图形渲染 161 | - 几何处理 162 | - 物理模拟 163 | 164 | 3. **交叉领域** 165 | - 计算机视觉 166 | - 机器学习 167 | - 科学计算 168 | -------------------------------------------------------------------------------- /99~参考资料/README.md: -------------------------------------------------------------------------------- 1 | # AI Math Notes | AI 中的数学基础 2 | 3 | ## 1. 统计学习理论 4 | 5 | ### 1.1 学习理论基础 6 | 7 | - VC 维理论 8 | 9 | - VC 维的定义 10 | - 增长函数 11 | - 打散系数 12 | - 样本复杂度 13 | 14 | - PAC 学习框架 15 | 16 | - PAC 可学习性 17 | - 样本复杂度界 18 | - 假设空间 19 | - 一致收敛 20 | 21 | - 复杂度度量 22 | 23 | - Rademacher 复杂度 24 | - 覆盖数与容量 25 | - 经验风险最小化 26 | - 结构风险最小化 27 | 28 | - 泛化理论 29 | - 泛化误差界 30 | - 一致性分析 31 | - 稳定性理论 32 | - 收敛率分析 33 | 34 | ### 1.2 正则化理论 35 | 36 | - L1 正则化 37 | 38 | - Lasso 理论 39 | - 稀疏性分析 40 | - 特征选择 41 | - 路径算法 42 | 43 | - L2 正则化 44 | 45 | - Ridge 回归 46 | - 权重衰减 47 | - 条件数改善 48 | - 解的稳定性 49 | 50 | - 组合正则化 51 | 52 | - Elastic Net 53 | - 组稀疏 54 | - 核范数 55 | - 图正则化 56 | 57 | - 模型选择 58 | - 交叉验证 59 | - 早停法 60 | - 信息准则 61 | - 模型平均 62 | 63 | ## 2. 矩阵分析与降维 64 | 65 | ### 2.1 矩阵分解理论 66 | 67 | - 特征值分解 68 | 69 | - 特征向量与特征值 70 | - 谱分解 71 | - 对称矩阵性质 72 | - 正定矩阵 73 | 74 | - 奇异值分解 75 | 76 | - SVD 理论 77 | - 截断 SVD 78 | - 低秩近似 79 | - 矩阵补全 80 | 81 | - 高级分解方法 82 | - 非负矩阵分解(NMF) 83 | - 稀疏编码 84 | - 字典学习 85 | - 张量分解 86 | 87 | ### 2.2 降维理论 88 | 89 | - 线性降维 90 | 91 | - 主成分分析(PCA) 92 | - 线性判别分析(LDA) 93 | - 因子分析 94 | - 多维尺度分析(MDS) 95 | 96 | - 非线性降维 97 | 98 | - 核 PCA 99 | - 流形学习 100 | - t-SNE 101 | - UMAP 102 | 103 | - 特征选择 104 | - 过滤法 105 | - 包装法 106 | - 嵌入法 107 | - 自动特征工程 108 | 109 | ## 3. 概率图模型与深度学习 110 | 111 | ### 3.1 概率图模型 112 | 113 | - 贝叶斯网络 114 | 115 | - 条件独立性 116 | - 因果推断 117 | - 结构学习 118 | - 参数学习 119 | 120 | - 马尔可夫模型 121 | 122 | - 马尔可夫随机场 123 | - 条件随机场 124 | - 吉布斯采样 125 | - 能量函数 126 | 127 | - 变分推断 128 | - 变分下界 129 | - EM 算法 130 | - 变分贝叶斯 131 | - 随机变分推断 132 | 133 | ### 3.2 深度学习数学基础 134 | 135 | - 反向传播 136 | 137 | - 计算图 138 | - 链式法则 139 | - 自动微分 140 | - 梯度流 141 | 142 | - 激活函数 143 | 144 | - ReLU 及其变体 145 | - Sigmoid 族 146 | - 数学性质 147 | - 梯度特性 148 | 149 | - 损失函数 150 | 151 | - 交叉熵 152 | - KL 散度 153 | - 对比损失 154 | - 正则化项 155 | 156 | - 优化理论 157 | - 随机梯度下降 158 | - 动量方法 159 | - 自适应算法 160 | - 二阶优化 161 | 162 | ## 4. 信息论与最优化 163 | 164 | ### 4.1 信息论基础 165 | 166 | - 基本概念 167 | 168 | - 熵 169 | - 互信息 170 | - 条件熵 171 | - 相对熵 172 | 173 | - 编码理论 174 | - 最优编码 175 | - 数据压缩 176 | - 信道容量 177 | - 率失真理论 178 | 179 | ### 4.2 最优化方法 180 | 181 | - 凸优化 182 | 183 | - 凸集与凸函数 184 | - KKT 条件 185 | - 对偶理论 186 | - 内点法 187 | 188 | - 非凸优化 189 | - 局部最优 190 | - 鞍点逃逸 191 | - 全局优化 192 | - 随机优化 193 | -------------------------------------------------------------------------------- /00~基础数学/度量空间/常见距离度量/Hausdorff 距离/README.md: -------------------------------------------------------------------------------- 1 | ### 3.1 误差度量 - Hausdorff 距离详解 2 | 3 | Hausdorff 距离是衡量两个点集之间相似度的重要指标。它可以直观地理解为:"将一个点集中的每个点移动到另一个点集所需的最小距离"。 4 | 5 | #### 3.1.1 数学定义 6 | 7 | 给定两个点集 A 和 B,Hausdorff 距离定义为: 8 | 9 | $$ 10 | H(A,B) = max{ h(A,B), h(B,A) } 11 | $$ 12 | 13 | 其中 h(A,B) 是单向 Hausdorff 距离: 14 | h(A,B) = max(min(d(a,b))) 15 | a∈A b∈B 16 | 17 | 这里 d(a,b) 是两点间的欧氏距离。 18 | 19 | #### 3.1.2 直观理解 20 | 21 | 1. **单向距离 h(A,B)** 22 | 23 | - 对于集合 A 中的每个点,找到它到集合 B 中最近的点的距离 24 | - 在这些最小距离中取最大值 25 | 26 | 2. **双向距离 H(A,B)** 27 | - 计算两个方向的单向距离:h(A,B) 和 h(B,A) 28 | - 取两者的最大值作为最终的 Hausdorff 距离 29 | 30 | #### 3.1.3 示例实现 31 | 32 | ```cpp 33 | class HausdorffDistance { 34 | public: 35 | // 计算两个点集间的 Hausdorff 距离 36 | static double compute(const vector& setA, const vector& setB) { 37 | // 计算双向距离并取最大值 38 | double distAB = computeDirectionalDistance(setA, setB); 39 | double distBA = computeDirectionalDistance(setB, setA); 40 | return max(distAB, distBA); 41 | } 42 | 43 | private: 44 | // 计算单向 Hausdorff 距离 45 | static double computeDirectionalDistance(const vector& setA, 46 | const vector& setB) { 47 | double maxDist = 0.0; 48 | 49 | // 对集合A中的每个点 50 | for (const auto& pointA : setA) { 51 | double minDist = numeric_limits::max(); 52 | 53 | // 找到到集合B中最近的点的距离 54 | for (const auto& pointB : setB) { 55 | double dist = euclideanDistance(pointA, pointB); 56 | minDist = min(minDist, dist); 57 | } 58 | 59 | // 更新最大距离 60 | maxDist = max(maxDist, minDist); 61 | } 62 | 63 | return maxDist; 64 | } 65 | 66 | // 计算两点间的欧氏距离 67 | static double euclideanDistance(const Point2D& p1, const Point2D& p2) { 68 | double dx = p1.x - p2.x; 69 | double dy = p1.y - p2.y; 70 | return sqrt(dx*dx + dy*dy); 71 | } 72 | }; 73 | ``` 74 | 75 | #### 3.1.4 应用场景 76 | 77 | Hausdorff 距离在以下场景特别有用: 78 | 79 | 1. **形状匹配** 80 | 81 | - 评估两个形状的相似度 82 | - 模式识别中的轮廓匹配 83 | 84 | 2. **点云配准** 85 | 86 | - 评估点云对齐质量 87 | - 三维重建中的配准评估 88 | 89 | 3. **简化质量评估** 90 | 91 | - 评估简化后的模型与原始模型的差异 92 | - 确保简化结果的质量 93 | 94 | 4. **图像处理** 95 | - 图像匹配和识别 96 | - 目标跟踪 97 | 98 | #### 3.1.5 优化考虑 99 | 100 | 1. **计算优化** 101 | 102 | - 使用空间分区(如 k-d 树)加速最近点查找 103 | - 并行计算不同点的距离 104 | 105 | 2. **近似计算** 106 | - 对于大规模点集,可以采用采样策略 107 | - 使用早期终止条件优化计算 108 | -------------------------------------------------------------------------------- /03~概率论与数理统计/马尔科夫模型/隐马尔科夫模型.md: -------------------------------------------------------------------------------- 1 | # Hidden Markov Model 2 | 3 | 讲这种东西就得先搞清 HMM 到底干了什么,初学者很容易对 “ 模型在干嘛 ” 这个问题上犯晕。我个人特别讨厌跟初学者上来就讲 state space/transition matrix/emission probability 云云的讲法 ( 注:比如《统计学习方法》李航博士那种讲法。虽然用来准备面试很方便,但初学者肯定会被符号和几个概念绕晕了;另外,私以为他换掉符号和前人文献不保持一致的做法又会让初学者又多了一道坎去翻。总之,不太厚道 )。因为初学时,对大多非理科出身的人而言,用抽象的名词与符号描述的 “ 语言系统 ” 还没固化在脑袋里。用抽象符号在那儿讲就好比 “ 一群人还没学会走,就逼着他们快点跑 ”。这是不太现实的。 4 | 5 | 综上,用复杂抽象的语言描述不合适的,这个学习曲线过于陡峭,别人需要时间消化。基于此原因,我发现,对零基础小伙伴们用游戏的例子去类比地解释往往比较容易降低学习难度,比如这样讲 6 | 7 | 我是一战士,修炼出了三种战斗形态,分别为暴怒态,正常状态和防御态。同时我也会三个被动技能,分别是普通平 A,爆击 ( 攻击伤害翻倍 ),吸血 ( 生命汲取 )。我在暴怒状态下打出暴击的概率是 80%, 打出吸血概率为 5%;在平衡形态下,打出暴击的比率为 30%,打出吸血的概率是 20%;在防御形态下,暴击成功概率为 5%,吸血概率为 60%。总结一下,战士在不同状态下能打出技能的概率不一样。 8 | 9 | 本来,战士这个职业在暴怒态时,身边会有一圈红光环;防御态时,会有一圈蓝光环。但是,现在我正在玩游戏,游戏突然出了个 bug:有个傻 x 程序员改了游戏的代码,他给写崩了,从此战士身边光环都看不见了。那我没法通过看脚下的光环知道战士在爆什么状态了。 10 | 11 | 话说,现在问题来了:由于看不到脚下光环,我只能估计 “ 战士 ” 在爆什么状态;但我现在打一 boss,砍 10 次,发现 8 次都是暴击,血哗哗地翻倍在掉,你觉得我这战士最可能是爆了什么状态? 12 | 13 | ( 每次用这个不规范的例子和新手讲,他们立刻就懂了;而且他们接下来还会问:"’ 暴怒状态 ’ 不能总持续吧?这不科学,应该限定个一段时间后,暴怒状态消失的概率为 50%...." 你瞧瞧连状态转换的 transition prob 自己都能假设出来了,都会抢答了都 lol...“HMM 的在干什么 ” 的问题很容易地让他们就理解了 ) 14 | 15 | 综上,一个战士的状态会不断随时间变化;然后他的被动技能发动概率会因为所处不同状态而不同。这就是 HMM 想表达的东西。并且我们还可以通过它回答一些有趣的问题:通过战士发动的技能来推测战士所出的状态。 16 | 17 | 这个例子只是个感性认识,它其实只是告诉了我们 hmm 比较 “ 像什么东西 ”。显然,我们还需要更规范更严谨地去介绍什么是 HMM,去规范化这个模型。这个例子里的 “ 战士 ” 可以换成其它答案里的天气,换成硬币等等。但无论用什么说法,我们已经能通过这个例子抓住核心问题了:HMM 模型就是这样一个系统:它有一个能不断改变的隐藏的状态(在这个例子里就是战士爆的状态。它会变,而且由于一个码农的缘故,状态变得不可见)在持续地影响它的外在表现(在这个例子里就是战士打出的技能是暴击、平 a、还是吸血的概率)。再重复一遍:HMM 模型就是这样一个系统:它有一个会随时间改变的隐藏的状态,在持续地影响它的外在表现。 18 | 19 | 现在我们再继续规范一下这个例子,让它更贴近那种严谨描述。因为我们知道战士打人总爆击,角色特别 bug,这没法玩啊。所以我们要限制一下战士爆状态。我们在游戏里做了个限制:我们设定,战士一开始进入游戏世界时是正常状态的。而且,每过一段时间(比如 1 分钟),战士就会自动爆一次状态。最后,每一次爆发还和上一次状态爆的状态是什么有关: 1. 上一次如果是正常状态,那下次变为暴怒的概率比较大。下次转换成暴怒状态,平衡状态或防御状态的概率我们假设分别为 60%,30%,10%。这保证了战士职业下次能有较大的概率能打出暴击! 2. 同理,若当我们上次在暴怒态时,下次继续保持暴怒态的概率就得限制一下。下次继续保持暴怒的概率就设为 10%,而转换成正常状态的概率是 60%,转换成防御态的概率是 30%;3. 如果上次是防御态,那么我们也让它下次也尽量变正常。(不然总吸血啊)那他下次转成其它三态的概率 ( 三态和以上对应书写顺序一致 ) 分别为为 10%,60,30%。这样服务器就能限制战士的爆暴怒态的次数,让它不那么 imba。 20 | 21 | 顺便提一下,其实以上的这种限定:让战士下一次爆不同状态的概率只和上次处在什么状态有关系:叫马尔可夫性质(markov property )。经过这样的设定后,不仅仅战士这个职业不会那么 imba,而且,我们可以靠以上这些数字来计算之前只能感性理解的问题了。比如:我这个战士在第一分钟的时候是正常状态,那么我第二分钟赶去死亡谷打一个 boss 能暴击的概率是多少?(这个当作思考题,提示:想想两个问题,上一状态和下一状态间转换的概率是多少?不同状态下发不同技能的概率是多少?) 22 | 23 | 最后总结一下。以上例子中讲明了 HMM 的五样 “ 要素 ”: 1. 状态和状态间转换的概率 2. 不同状态下,有着不同的外在表现的概率。3. 最开始设置的初始状态 4. 能转换的所有状态的集合 5. 能观察到外在表现的结合 24 | 25 | Hidden 说明的是状态的不可见性;Markov 说明的是状态和状态间是 markov chain。这就是为什么叫 Hidden Markov Model。 26 | 27 | 我相信你们再去看其它答案里写的就明白多了。 28 | 29 | ps: 懂了是什么之后再去看 paper 就好多了。没记错的话去,看《A tutorial on Hidden Markov Models and selected applications in Speech recognition 》。另外,HMM 除了上文提到的 “ 五要素 ”,还有 “ 三个基本问题 ”。这文章将 hmm 的三个基本问题讲得很清楚。 30 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/ReadMe.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 线性代数笔记\n", 8 | "\n", 9 | "## 简介\n", 10 | "\n", 11 | "**作者:子实**\n", 12 | "\n", 13 | "线性代数笔记,使用 `jupyter notebook (ipython notebook)` 编写展示。\n", 14 | "\n", 15 | "`Github` 加载 `.ipynb` 的速度较慢,建议在 [Nbviewer](http://nbviewer.jupyter.org/github/zlotus/notes-linear-algebra/blob/master/ReadMe.ipynb) 中查看该项目。\n", 16 | "\n", 17 | "----\n", 18 | "\n", 19 | "## 目录\n", 20 | "\n", 21 | "来自MIT课程线性代数的笔记,可以在[麻省理工公开课:线性代数](http://open.163.com/special/opencourse/daishu.html)观看。\n", 22 | "\n", 23 | "- 第01集 [方程组的几何解释](chapter01.ipynb)\n", 24 | "- 第02集 [矩阵消元](chapter02.ipynb)\n", 25 | "- 第03集 [乘法和逆矩阵](chapter03.ipynb)\n", 26 | "- 第04集 [A的LU分解](chapter04.ipynb)\n", 27 | "- 第05集 [转置-置换-向量空间R](chapter05.ipynb)\n", 28 | "- 第06集 [列空间和零空间](chapter06.ipynb)\n", 29 | "- 第07集 [求解Ax=0:主变量、特解](chapter07.ipynb)\n", 30 | "- 第08集 [求解Ax=b:可解性和解的结构](chapter08.ipynb)\n", 31 | "- 第09集 [线性相关性、基、维数](chapter09.ipynb)\n", 32 | "- 第10集 [四个基本子空间](chapter10.ipynb)\n", 33 | "- 第11集 [矩阵空间、秩1矩阵和小世界图](chapter11.ipynb)\n", 34 | "- 第12集 [图和网络](chapter12.ipynb)\n", 35 | "- 第13集 [复习一](chapter13.ipynb)\n", 36 | "- 第14集 [正交向量与子空间](chapter14.ipynb)\n", 37 | "- 第15集 [子空间投影](chapter15.ipynb)\n", 38 | "- 第16集 [投影矩阵和最小二乘](chapter16.ipynb)\n", 39 | "- 第17集 [正交矩阵和Gram-Schmidt正交化](chapter17.ipynb)\n", 40 | "- 第18集 [行列式及其性质](chapter18.ipynb)\n", 41 | "- 第19集 [行列式公式和代数余子式](chapter19.ipynb)\n", 42 | "- 第20集 [克拉默法则、逆矩阵、体积](chapter20.ipynb)\n", 43 | "- 第21集 [特征值和特征向量](chapter21.ipynb)\n", 44 | "- 第22集 [对角化和A的幂](chapter22.ipynb)\n", 45 | "- 第23集 [微分方程和exp(At)](chapter23.ipynb)\n", 46 | "- 第24集 [马尔可夫矩阵、傅立叶级数](chapter24.ipynb)\n", 47 | "- 第25集 [复习二](chapter25.ipynb)\n", 48 | "- 第26集 [对称矩阵及正定性](chapter26.ipynb)\n", 49 | "- 第27集 [复数矩阵和快速傅里叶变换](chapter27.ipynb)\n", 50 | "- 第28集 [正定矩阵和最小值](chapter28.ipynb)\n", 51 | "- 第29集 [相似矩阵和若尔当形](chapter29.ipynb)\n", 52 | "- 第30集 [奇异值分解](chapter30.ipynb)\n", 53 | "- 第31集 [线性变换及对应矩阵](chapter31.ipynb)\n", 54 | "- 第32集 [基变换和图像压缩](chapter32.ipynb)\n", 55 | "- 第33集 [单元检测3复习](chapter33.ipynb)\n", 56 | "- 第34集 [左右逆和伪逆](chapter34.ipynb)\n", 57 | "- 第35集 [期末复习](chapter35.ipynb)\n", 58 | "\n", 59 | "笔记格式借鉴[Jin Li](https://github.com/lijin-THU/)的[机器学习笔记](https://github.com/lijin-THU/notes-machine-learning)。" 60 | ] 61 | } 62 | ], 63 | "metadata": { 64 | "kernelspec": { 65 | "display_name": "Python 3", 66 | "language": "python", 67 | "name": "python3" 68 | }, 69 | "language_info": { 70 | "codemirror_mode": { 71 | "name": "ipython", 72 | "version": 3 73 | }, 74 | "file_extension": ".py", 75 | "mimetype": "text/x-python", 76 | "name": "python", 77 | "nbconvert_exporter": "python", 78 | "pygments_lexer": "ipython3", 79 | "version": "3.5.1" 80 | } 81 | }, 82 | "nbformat": 4, 83 | "nbformat_minor": 0 84 | } 85 | -------------------------------------------------------------------------------- /03~概率论与数理统计/常见概率分布/正态分布.md: -------------------------------------------------------------------------------- 1 | # 正态分布/高斯分布 2 | 3 | 正态分布只依赖于数据集的两个特征:样本的均值和方差。正态分布的这种统计特性使得问题变得异常简单,任何具有正态分布的变量,都可以进行高精度分预测。值得注意的是,大自然中发现的变量,大多近似服从正态分布。即如果某个随机变量取值范围是实数,且对它的概率分布一无所知,通常会假设它服从正态分布,其考量的原因包括: 4 | 5 | - 中心极限定理表明,多个独立随机变量的和近似正态分布,则建模的任务的真实分布通常都确实接近正态分布。 6 | 7 | - 在具有相同方差的所有可能的概率分布中,正态分布的熵最大(即不确定性最大)。 8 | 9 | # 一维正态分布 10 | 11 | 设 $X \sim N(\mu,\sigma^2)$,则其概率密度为: 12 | 13 | $$ 14 | f(x)=\frac{1}{\sqrt{2\pi}*\sigma}e^{-\frac{(x-\mu)^2}{2*\sigma^2}}, -\infty0)$ 为常数,若随机变量 $X$ 的概率密度函数如上所述,则称 $X$ 服从参数为 $\mu, \sigma$ 的正态分布或者高斯分布,记作 $X \sim N\left(\mu, \sigma^{2}\right)$。 18 | 19 | 当 $\mu=0, \sigma=1$ 时,称为标准正态分布,其概率密度函数记作 $\varphi(x)$,分布函数记作 $\Phi(x)$。为了方便计算,有时记作 $\mathcal{N}\left(x ; \mu, \beta^{-1}\right)=\sqrt{\frac{\beta}{2 \pi}} \exp \left(-\frac{1}{2} \beta(x-\mu)^{2}\right)$,其中 $\beta \in(0, \infty)$。 20 | 21 | 正态分布的概率密度函数性质如下: 22 | 23 | - 曲线关于 $x = \mu$ 处对称,并且在该处取到最大值。 24 | - 曲线在 $x=\mu \pm \sigma$ 处有拐点,参数 $\mu$ 决定曲线的位置,$\sigma$ 决定图形的胖瘦。 25 | 26 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230516214105.png) 27 | 28 | 若 $X \sim N\left(\mu, \sigma^{2}\right)$ 则称 $\frac{X-\mu}{\sigma} \sim N(0,1)$,其期望 $\mathbb{E}[X]=\mu$,方差 $\operatorname{Var}[X]=\sigma^{2}$。 29 | 30 | 有限个相互独立的正态随机变量的线性组合仍然服从正态分布:若随机变量 $X_{i} \sim N\left(\mu_{i}, \sigma_{i}^{2}\right), i=1,2, \cdots, n$,且它们相互独立,则它们的线性组合:$C_{1} X_{1}+C_{2} X_{2}+\cdots+C_{n} X_{n}$ 仍然服从正态分布(其中 $C_{1}, C_{2}, \cdots, C_{n}$ 不全是为 0 的常数),且 $C_{1} X_{1}+C_{2} X_{2}+\cdots+C_{n} X_{n} \sim N\left(\sum_{i=1}^{n} C_{i} \mu_{i}, \sum_{i=1}^{n} C_{i}^{2} \sigma_{i}^{2}\right)$。 31 | 32 | # 多维正态分布 33 | 34 | > https://parg.co/NOA 5.4 节 35 | 36 | 二维正态随机变量 $(X,Y)$ 的概率密度为: 37 | 38 | $$ 39 | \begin{aligned} p(x, y) &=\frac{1}{2 \pi \sigma_{1} \sigma_{2} \sqrt{1-\rho^{2}}} \exp \left\{\frac{-1}{2\left(1-\rho^{2}\right)}\left[\frac{\left(x-\mu_{1}\right)^{2}}{\sigma_{1}^{2}}\right.\right.\\ &-2 \rho \frac{\left(x-\mu_{1}\right)\left(y-\mu_{2}\right)}{\sigma_{1} \sigma_{2}}+\frac{\left(y-\mu_{2}\right)^{2}}{\sigma_{2}^{2}} ] \} \end{aligned} 40 | $$ 41 | 42 | 根据定义,可以计算出: 43 | 44 | $$ 45 | p_{X}(x)=\frac{1}{\sqrt{2 \pi} \sigma_{1}} e^{-\left(x-\mu_{1}\right)^{2} /\left(2 \sigma_{1}^{2}\right)},-\infty [!图片建议] 33 | > 插入一张带箭头的向量图,标注: 34 | > 35 | > 1. 起点(尾部) 36 | > 2. 终点(箭头) 37 | > 3. 长度 38 | > 4. 方向角 39 | 40 | #### 计算机视角(代数表示) 41 | 42 | 向量是有序的数字列表: 43 | 44 | ```python 45 | # 不同维度的向量表示 46 | v2d = [3, 4] # 二维向量 47 | v3d = [1, 2, 3] # 三维向量 48 | vnd = [x₁, x₂, ..., xₙ] # n维向量 49 | ``` 50 | 51 | ### 2.2 重要性质 52 | 53 | 1. 自由向量: 54 | 55 | - 可以在空间中平移 56 | - 起点位置不影响向量本身 57 | - 只由方向和大小决定 58 | 59 | 2. 相等条件: 60 | - 方向相同 61 | - 长度相同 62 | 63 | > [!图片建议] 64 | > 插入一张展示多个相等向量的图片,这些向量起点不同但方向和长度相同 65 | 66 | ## 3. 向量运算 67 | 68 | ### 3.1 向量加法 69 | 70 | #### 几何方法 71 | 72 | 1. 首尾相连法: 73 | 74 | - 将第二个向量的起点移到第一个向量的终点 75 | - 结果是从起点到最终终点的向量 76 | 77 | 2. 平行四边形法则: 78 | - 将两个向量的起点放在同一点 79 | - 构建平行四边形 80 | - 对角线即为和向量 81 | 82 | > [!图片建议] 83 | > 并排展示这两种加法方法的示意图 84 | 85 | #### 代数方法 86 | 87 | ```python 88 | # 二维向量加法 89 | v = [2, 3] 90 | w = [1, -1] 91 | v + w = [2+1, 3+(-1)] = [3, 2] 92 | 93 | # 三维向量加法 94 | v = [1, 2, 3] 95 | w = [2, 0, -1] 96 | v + w = [1+2, 2+0, 3+(-1)] = [3, 2, 2] 97 | ``` 98 | 99 | ### 3.2 向量数乘(标量乘法) 100 | 101 | #### 几何效果 102 | 103 | - 正数:保持方向,改变长度 104 | - 负数:反向,改变长度 105 | - 零:得到零向量 106 | 107 | > [!图片建议] 108 | > 展示同一个向量乘以不同标量的效果: 109 | > 110 | > 1. 2 倍 111 | > 2. 0.5 倍 112 | > 3. -1 倍 113 | > 4. 0 倍 114 | 115 | #### 代数计算 116 | 117 | ```python 118 | v = [2, 3] 119 | 2v = [4, 6] # 伸长2倍 120 | 0.5v = [1, 1.5] # 缩短一半 121 | -v = [-2, -3] # 方向相反 122 | ``` 123 | 124 | ## 4. 向量的模长 125 | 126 | ### 4.1 定义 127 | 128 | 向量的长度(大小)称为模长,通常用‖v‖表示 129 | 130 | ### 4.2 计算方法 131 | 132 | ```python 133 | # 二维向量 134 | v = [3, 4] 135 | |v| = √(3² + 4²) = 5 136 | 137 | # 三维向量 138 | v = [1, 2, 2] 139 | |v| = √(1² + 2² + 2²) = 3 140 | ``` 141 | 142 | ### 4.3 单位向量 143 | 144 | 模长为 1 的向量 145 | 146 | - 可以通过向量除以其模长得到 147 | - 常用于表示纯方向 148 | 149 | ## 5. 实际应用 150 | 151 | ### 5.1 物理学 152 | 153 | - 位移向量 154 | - 速度向量 155 | - 力向量 156 | - 动量向量 157 | 158 | ### 5.2 计算机图形学 159 | 160 | - 物体位置 161 | - 运动方向 162 | - 法向量 163 | - 纹理坐标 164 | 165 | ### 5.3 机器学习 166 | 167 | - 特征向量 168 | - 权重向量 169 | - 词向量 170 | 171 | ## 6. 常见问题与解答 172 | 173 | ### 6.1 为什么需要向量? 174 | 175 | - 同时表示大小和方向 176 | - 简化复杂运算 177 | - 描述多维关系 178 | 179 | ### 6.2 向量与标量的区别? 180 | 181 | - 标量:只有大小的量(如温度) 182 | - 向量:既有大小又有方向的量(如速度) 183 | 184 | ## 7. 练习题 185 | 186 | ### 7.1 基础练习 187 | 188 | 1. 计算向量[3,4]的模长 189 | 2. 将向量[6,8]转化为单位向量 190 | 191 | ### 7.2 应用题 192 | 193 | 1. 一个物体受到两个力 F₁=[3,4]N 和 F₂=[1,-2]N,求合力。 194 | 2. 将向量[2,3]分别乘以 2,-0.5,0,画出结果。 195 | 196 | ## 8. 扩展阅读 197 | 198 | - 向量的坐标系表示 199 | - 向量的极坐标形式 200 | - 向量在物理学中的应用 201 | - 高维向量的概念 202 | -------------------------------------------------------------------------------- /_sidebar.md: -------------------------------------------------------------------------------- 1 | - [1 01~微积分 [4]](/01~微积分/README.md) 2 | - [1.1 傅里叶变换](/01~微积分/傅里叶变换/README.md) 3 | 4 | - [1.2 函数、极限与连续](/01~微积分/函数、极限与连续.md) 5 | - [1.3 导数](/01~微积分/导数.md) 6 | - [1.4 常见导数](/01~微积分/常见导数.md) 7 | - [2 02~线性代数 [7]](/02~线性代数/README.md) 8 | - 2.1 99~参考资料 [2] 9 | - 2.1.1 3Blue1Brown~《线性代数的本质》 [1] 10 | - [2.1.1.1 赛维勒的理发师~笔记](/02~线性代数/99~参考资料/3Blue1Brown~《线性代数的本质》/赛维勒的理发师~笔记.md) 11 | - 2.1.2 子实~《线性代数笔记》 [1] 12 | - [2.1.2.1 ReadMe](/02~线性代数/99~参考资料/子实~《线性代数笔记》/ReadMe.md) 13 | - [2.2 向量运算](/02~线性代数/向量运算.md) 14 | - [2.3 特殊函数](/02~线性代数/特殊函数.md) 15 | - [2.4 特殊矩阵](/02~线性代数/特殊矩阵.md) 16 | - [2.5 矩阵分解](/02~线性代数/矩阵分解.md) 17 | - [2.6 矩阵运算](/02~线性代数/矩阵运算.md) 18 | - [2.7 距离与相似性](/02~线性代数/距离与相似性.md) 19 | - 3 03~概率论与数理统计 [8] 20 | - 3.1 99~参考资料 [2] 21 | - [3.1.1 《深入浅出统计学》](/03~概率论与数理统计/99~参考资料/2011-《深入浅出统计学》/README.md) 22 | 23 | - [3.1.2 概率论与数理统计笔记](/03~概率论与数理统计/99~参考资料/概率论与数理统计笔记.md) 24 | - [3.2 参数估计](/03~概率论与数理统计/参数估计/README.md) 25 | 26 | - [3.3 常见概率分布 [3]](/03~概率论与数理统计/常见概率分布/README.md) 27 | - [3.3.1 多项分布](/03~概率论与数理统计/常见概率分布/多项分布.md) 28 | - [3.3.2 正态分布](/03~概率论与数理统计/常见概率分布/正态分布.md) 29 | - [3.3.3 泊松分布](/03~概率论与数理统计/常见概率分布/泊松分布.md) 30 | - 3.4 概率图模型 [1] 31 | - [3.4.1 条件随机场](/03~概率论与数理统计/概率图模型/条件随机场.md) 32 | - [3.5 概率论基础 [4]](/03~概率论与数理统计/概率论基础/README.md) 33 | - [3.5.1 中心极限与大数定理](/03~概率论与数理统计/概率论基础/中心极限与大数定理.md) 34 | - [3.5.2 最小二乘法](/03~概率论与数理统计/概率论基础/最小二乘法.md) 35 | - [3.5.3 期望与方差](/03~概率论与数理统计/概率论基础/期望与方差.md) 36 | - [3.5.4 概率与分布](/03~概率论与数理统计/概率论基础/概率与分布.md) 37 | - 3.6 蒙特卡洛 [1] 38 | - [3.6.1 蒙特卡罗方法](/03~概率论与数理统计/蒙特卡洛/蒙特卡罗方法.md) 39 | - [3.7 贝叶斯理论 [3]](/03~概率论与数理统计/贝叶斯理论/README.md) 40 | - [3.7.1 变分贝叶斯推导](/03~概率论与数理统计/贝叶斯理论/变分贝叶斯推导.md) 41 | - [3.7.2 朴素贝叶斯](/03~概率论与数理统计/贝叶斯理论/朴素贝叶斯.md) 42 | - [3.7.3 贝叶斯推导](/03~概率论与数理统计/贝叶斯理论/贝叶斯推导.md) 43 | - 3.8 马尔科夫模型 [1] 44 | - [3.8.1 隐马尔科夫模型](/03~概率论与数理统计/马尔科夫模型/隐马尔科夫模型.md) 45 | - [4 04~信息论 [2]](/04~信息论/README.md) 46 | - [4.1 KL 散度](/04~信息论/KL%20散度.md) 47 | - [4.2 熵](/04~信息论/熵.md) 48 | - [5 05~最优化方法 [7]](/05~最优化方法/README.md) 49 | - [5.1 EM 算法](/05~最优化方法/EM%20算法/README.md) 50 | 51 | - 5.2 优化理论 [1] 52 | - [5.2.1 代价函数](/05~最优化方法/优化理论/代价函数.md) 53 | - [5.3 凸优化](/05~最优化方法/凸优化/README.md) 54 | 55 | - [5.4 数值计算 [2]](/05~最优化方法/数值计算/README.md) 56 | - [5.4.1 数值稳定性](/05~最优化方法/数值计算/数值稳定性.md) 57 | - [5.4.2 梯度下降](/05~最优化方法/数值计算/梯度下降.md) 58 | - [5.5 模拟退火](/05~最优化方法/模拟退火/README.md) 59 | 60 | - [5.6 爬山算法](/05~最优化方法/爬山算法/README.md) 61 | 62 | - [5.7 遗传算法 [2]](/05~最优化方法/遗传算法/README.md) 63 | - [5.7.1 生物学背景](/05~最优化方法/遗传算法/生物学背景.md) 64 | - [5.7.2 进化过程](/05~最优化方法/遗传算法/进化过程.md) 65 | - 6 99~参考资料 [3] 66 | - [6.1 《数学要素》 [1]](/99~参考资料/2022-《数学要素》/README.md) 67 | - [6.1.1 01.万物皆数](/99~参考资料/2022-《数学要素》/01.万物皆数.md) 68 | - [6.2 华校专 《AI 算法工程师手册 数学基础》](/99~参考资料/华校专-《AI%20算法工程师手册-数学基础》/README.md) 69 | 70 | - 6.3 程序员数学 [3] 71 | - [6.3.1 多元函数微分学](/99~参考资料/程序员数学/多元函数微分学.md) 72 | - [6.3.2 微积分基础](/99~参考资料/程序员数学/微积分基础.md) 73 | - [6.3.3 线性代数基础](/99~参考资料/程序员数学/线性代数基础.md) 74 | - [7 INTRODUCTION](/INTRODUCTION.md) -------------------------------------------------------------------------------- /03~概率论与数理统计/概率论基础/概率与分布.md: -------------------------------------------------------------------------------- 1 | # 概率与分布 2 | 3 | 概率分布(Probability Distribution)用来描述随机变量或一簇随机变量在每一个可能取到的状态的可能性大小。我们描述概率分布的方式取决于随机变量是离散的还是连续的。 4 | 5 | # 离散型变量和概率质量函数 6 | 7 | 离散型变量的概率分布可以用概率质量函数(Probability mass function, PMF)来描述。我们通常用大写字母 $P$ 来表示概率质量函数。通常每一个随机变量都会有一个不同的概率质量函数,并且必须根据随机变量来推断所使用的 PMF,而不是根据函数的名称来推断;例如,$P(x)$ 通常和 $P(y)$ 不一样。 8 | 9 | 概率质量函数将随机变量能够取得的每个状态映射到随机变量取得该状态的概率。$\mathrm{x} = x$ 的概率用 $P(x)$ 来表示,概率为 1 表示 $\mathrm{x} = x$ 是确定的,概率为 0 表示 $\mathrm{x} = x$ 是不可能发生的。有时我们会定义一个随机变量,然后用 $\sim$ 符号来说明分布:$\mathrm{x} \sim P(\mathrm{x})$。 10 | 11 | 概率质量函数可以同时作用于多个随机变量,这种多个变量的概率分布被称为联合概率分布(joint probability distribution)。$P(\mathrm{x}=x, \mathrm{y}=y)$ 表示 $\mathrm{x} = x$ 和 $\mathrm{y} = y$ 同时发生的概率,可以简写为 $P(x,y)$。 12 | 13 | 如果一个函数 $P$ 是随机变量 $\mathrm{x}$ 的 PMF,必须满足以下条件: 14 | 15 | - $P$ 的定义域必须是 $\mathrm{x}$ 所有可能状态的集合。 16 | 17 | - $\forall x \in \mathrm{x}, 0 \leq P(x) \leq 1$ 不可能发生的事件概率为 0,并且不存在比这概率更低的状态。类似的,能够确保一定发生的事件概率为 1,而且不存在比这概率更高的状态。 18 | 19 | - $\sum_{x \in \mathrm{x}} P(x)=1$ 我们把这条性质称之为归一化的(normalized)。如果没有这条性质,当我们计算很多事件其中之一发生的概率时可能会得到大于 1 的概率。 20 | 21 | 例如,考虑一个离散型随机变量 $\mathrm{x}$ 有 $k$ 个不同的状态。我们可以假设 $\mathrm{x}$ 是均匀分布(Uniform Distribution)的,也就是将它的每个状态视为等可能的,其 PMF 可以为: 22 | 23 | $$ 24 | P\left(\mathrm{x}=x_{i}\right)=\frac{1}{k} 25 | $$ 26 | 27 | 对于所有的 $i$ 都成立。我们可以看出这满足上述成为概率质量函数的条件。因为 $k$ 是一个正整数,所以 $\frac{1}{k}$ 是正的,并且: 28 | 29 | $$ 30 | \sum_{i} P\left(\mathrm{x}=x_{i}\right)=\sum_{i} \frac{1}{k}=\frac{k}{k}=1 31 | $$ 32 | 33 | 因此分布也满足归一化条件。 34 | 35 | # 连续型变量和概率密度函数 36 | 37 | 当我们研究的对象是连续型随机变量时,我们用概率密度函数(Probability density function, PDF)而不是概率质量函数来描述它的概率分布。如果一个函数 $p$ 是概率密度函数,必须满足下面这几个条件: 38 | 39 | - $p$ 的定义域必须是 $\mathrm{x}$ 所有可能状态的集合。 40 | 41 | - $\forall x \in \mathrm{x}, p(x) \geq 0$,值得一提的是,并不要求:$p(x) \leq 1$。 42 | 43 | - $\int p(x) d x=1$ 44 | 45 | 概率密度函数 $p(x)$ 并没有直接对特定的状态给出概率,相对的,它给出了落在面积为 $\delta x$ 的无限小的区域内的概率为 $p(x) \delta x$。我们可以对概率密度函数求积分来获得点集的真实概率质量,$x$ 落在区间 $[a, b]$ 的概率是 $\int_{[a, b]} p(x) d x$。 46 | 47 | 为了给出一个连续型随机变量的 PDF 的例子,我们可以考虑实数区间上的均匀分布。我们可以使用函数 $u(x ; a, b)$,其中 $a$ 和 $b$ 是区间的端点且满足 $b > a$。符号 $;$ 表示以什么为参数。一般将 $x$ 作为函数的自变量,$a$ 和 $b$ 作为定义函数的参数。 48 | 49 | - 为了确保区间外没有概率,我们对所有的 $x \notin[a, b]$,令 $u(x ; a, b)=0$。 50 | - 在 $[a,b]$ 内,有 $u(x ; a, b)=\frac{1}{b-a}$。 51 | 52 | 上述函数中,任何一点都非负,并且其积分为 1,通常可以使用 $\mathrm{x} \sim U(a, b)$ 表示 $x$ 在 $[a,b]$ 上是均匀分布的。 53 | 54 | # 条件概率与独立事件 55 | 56 | 所谓条件概率,已知 $A$ 事件发生的条件下 $B$ 发生的概率,记作 $P(B|A)$,它等于事件 $AB$ 的概率相对于事件 $A$ 的概率,即:$P(B | A)=\frac{P(A B)}{P(A)}$,其中必须有 $P(A)>0$。 57 | 58 | 条件概率分布满足链式法则,对于 $n$ 个随机变量 $X_{1}, X_{2}, \cdots, X_{n}$,存在有 59 | 60 | $$ 61 | P\left(X_{1}, X_{2}, \cdots, X_{n}\right)=P\left(X_{1}\right) \prod_{i=2}^{n} P\left(X_{i} | X_{1}, \cdots, X_{i-1}\right) 62 | $$ 63 | 64 | ## 独立 65 | 66 | 两个随机变量 $X,Y$ 相互独立的数学描述如下,记作 $X \perp Y$: 67 | 68 | $$ 69 | P(X, Y)=P(X) P(Y) 70 | $$ 71 | 72 | 两个随机变量 $X,Y$ 关于随机变量 $Z$ 条件独立的数学描述,记作 $X \perp Y | Z$: 73 | 74 | $$ 75 | P(X, Y | Z)=P(X | Z) P(Y | Z) 76 | $$ 77 | 78 | ## 联合概率分布 79 | 80 | 定义 $X$ 和 $Y$ 的联合分布为: 81 | 82 | $$ 83 | P(a, b)=P\{X \leq a, Y \leq b\}, \quad-\infty0, \zeta^{-1}(x)=\log (\exp (x)-1)} \\ {\zeta(x)=\int_{-\infty}^{x} \sigma(y) d y} \\ {\zeta(x)-\zeta(-x)=x} 43 | $$ 44 | 45 | 其中 $f^{-1}(\cdot)$ 为反函数,$\sigma^{-1}(x)$ 也称作 logit 函数: 46 | 47 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230522112507.png) 48 | 49 | # 伽马函数 50 | 51 | 伽马函数定义为: 52 | 53 | $$ 54 | \begin{array}{c}{\Gamma(x)=\int_{0}^{+\infty} t^{x-1} e^{-t} d t \quad, x \in \mathbb{R}} \\ {\text { or. } \quad \Gamma(z)=\int_{0}^{+\infty} t^{z-1} e^{-t} d t \quad, z \in \mathbb{Z}}\end{array} 55 | $$ 56 | 57 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230522112432.png) 58 | 59 | $\Gamma$ 函数的性质有: 60 | 61 | - 对于正整数 $n$ 有:$\Gamma(n)=(n-1) !$ 62 | 63 | - $\Gamma(x+1)=x \Gamma(x)$,伽马函数是阶乘在实数域上的扩展。 64 | 65 | - 与 Beta 函数的关系: 66 | 67 | $$ 68 | B(m, n)=\frac{\Gamma(m) \Gamma(n)}{\Gamma(m+n)} 69 | $$ 70 | 71 | - 对于 $x \in(0,1)$ 有: 72 | 73 | $$ 74 | \Gamma(1-x) \Gamma(x)=\frac{\pi}{\sin \pi x} 75 | $$ 76 | 77 | 即 $\Gamma\left(\frac{1}{2}\right)=\sqrt{\pi}$,当 $x$ 足够大时,可以使用 `Stirling` 公式来计算 Gamma 函数值:$\Gamma(x) \sim \sqrt{2 \pi} e^{-x} x^{x+1 / 2}$。 78 | 79 | # Beta 函数 80 | 81 | 对于任意实数 $m, n>0$,Beta 函数的定义为: 82 | 83 | $$ 84 | B(m, n)=\int_{0}^{1} x^{m-1}(1-x)^{n-1} d x 85 | $$ 86 | 87 | 其他形式的定义还包含: 88 | 89 | $$ 90 | \begin{array}{c}{B(m, n)=2 \int_{0}^{\frac{\pi}{2}} \sin ^{2 m-1}(x) \cos ^{2 n-1}(x) d x} \\ {B(m, n)=\int_{0}^{+\infty} \frac{x^{m-1}}{(1+x)^{m+n}} d x} \\ {B(m, n)=\int_{0}^{1} \frac{x^{m-1}+x^{n-1}}{(1+x)^{m+n}} d x}\end{array} 91 | $$ 92 | 93 | ## 性质 94 | 95 | - 连续性,Beta 函数在定义域 $m, n>0$ 内连续 96 | 97 | - 对称性,$B(m, n)=B(n, m)$ 98 | 99 | - 递推公式: 100 | 101 | $$ 102 | \begin{array}{l}{B(m, n)=\frac{n-1}{m+n-1} B(m, n-1), \quad m>0, n>1} \\ {B(m, n)=\frac{m-1}{m+n-1} B(m-1, n), \quad m>1, n>0} \\ {B(m, n)=\frac{(m-1)(n-1)}{(m+n-1)(m+n-2)} B(m-1, n-1), \quad m>1, n>1}\end{array} 103 | $$ 104 | 105 | - 当 $m,n$ 较大时,有近似公式: 106 | 107 | $$ 108 | B(m, n)=\frac{\sqrt{(2 \pi) m^{m-1 / 2} n^{n-1 / 2}}}{(m+n)^{m+n-1 / 2}} 109 | $$ 110 | 111 | - 与 Gamma 函数关系 112 | 113 | 对于任意正实数 $m, n>0$,有 114 | 115 | $$ 116 | B(m, n)=\frac{\Gamma(m) \Gamma(n)}{\Gamma(m+n)} 117 | $$ 118 | 119 | 且 $B(m, 1-m)=\Gamma(m) \Gamma(1-m)$。 120 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/18~行列式及其性质.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第十八讲:行列式及其性质\n", 8 | "\n", 9 | "本讲我们讨论出行列式(determinant)的性质:\n", 10 | "\n", 11 | "1. $\\det{I}=1$,单位矩阵行列式值为一。\n", 12 | "2. 交换行行列式变号。\n", 13 | "\n", 14 | " 在给出第三个性质之前,先由前两个性质可知,对置换矩阵有$\\det P=\\begin{cases}1\\quad &even\\\\-1\\quad &odd\\end{cases}$。\n", 15 | "\n", 16 | " 举例:$\\begin{vmatrix}1&0\\\\0&1\\end{vmatrix}=1,\\quad\\begin{vmatrix}0&1\\\\1&0\\end{vmatrix}=-1$,于是我们猜想,对于二阶方阵,行列式的计算公式为$\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}=ad-bc$。\n", 17 | "\n", 18 | "3. a. $\\begin{vmatrix}ta&tb\\\\tc&td\\end{vmatrix}=t\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}$。\n", 19 | "\n", 20 | " b. $\\begin{vmatrix}a+a'&b+b'\\\\c&d\\end{vmatrix}=\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}+\\begin{vmatrix}a'&b'\\\\c&d\\end{vmatrix}$。\n", 21 | " \n", 22 | " **注意**:~~这里并不是指$\\det (A+B)=\\det A+\\det B$,方阵相加会使每一行相加,这里仅是针对某一行的线性变换。~~\n", 23 | "\n", 24 | "4. 如果两行相等,则行列式为零。使用性质2交换两行易证。\n", 25 | "5. 从第$k$行中减去第$i$行的$l$倍,行列式不变。这条性质是针对消元的,我们可以先消元,将方阵变为上三角形式后再计算行列式。\n", 26 | "\n", 27 | " 举例:$\\begin{vmatrix}a&b\\\\c-la&d-lb\\end{vmatrix}\\stackrel{3.b}{=}\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}+\\begin{vmatrix}a&b\\\\-la&-lb\\end{vmatrix}\\stackrel{3.a}{=}\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}-l\\begin{vmatrix}a&b\\\\a&b\\end{vmatrix}\\stackrel{4}{=}\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}$\n", 28 | "\n", 29 | "6. 如果方阵的某一行为零,则其行列式值为零。使用性质3.a对为零行乘以不为零系数$l$,使$l\\det A=\\det A$即可证明;或使用性质5将某行加到为零行,使存在两行相等后使用性质4即可证明。\n", 30 | "\n", 31 | "7. 有上三角行列式$U=\\begin{vmatrix}d_{1}&*&\\cdots&*\\\\0&d_{2}&\\cdots&*\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\0&0&\\cdots&d_{n}\\end{vmatrix}$,则$\\det U=d_1d_2\\cdots d_n$。使用性质5,从最后一行开始,将对角元素上方的$*$元素依次变为零,可以得到型为$D=\\begin{vmatrix}d_{1}&0&\\cdots&0\\\\0&d_{2}&\\cdots&0\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\0&0&\\cdots&d_{n}\\end{vmatrix}$的对角行列式,再使用性质3将对角元素提出得到$d_nd_{n-1}\\cdots d_1\\begin{vmatrix}1&0&\\cdots&0\\\\0&1&\\cdots&0\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\0&0&\\cdots&1\\end{vmatrix}$,得证。\n", 32 | "\n", 33 | "8. 当矩阵$A$为奇异矩阵时,$\\det A=0$;当且仅当$A$可逆时,有$\\det A\\neq0$。如果矩阵可逆,则化简为上三角形式后各行都含有主元,行列式即为主元乘积;如果矩阵奇异,则化简为上三角形式时会出现全零行,行列式为零。\n", 34 | "\n", 35 | " 再回顾二阶情况:$\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}\\xrightarrow{消元}\\begin{vmatrix}a&b\\\\0&d-\\frac{c}{a}b\\end{vmatrix}=ad-bc$,前面的猜想得到证实。\n", 36 | "\n", 37 | "9. $\\det AB=(\\det A)(\\det B)$。使用这一性质,$\\det I=\\det{A^{-1}A}=\\det A^{-1}\\det A$,所以$\\det A^{-1}=\\frac{1}{\\det A}$。\n", 38 | "\n", 39 | " 同时还可以得到:$\\det A^2=(\\det A)^2$,以及$\\det 2A=2^n\\det A$,这个式子就像是求体积,对三维物体有每边翻倍则体积变为原来的八倍。\n", 40 | "\n", 41 | "10. $\\det A^T=\\det A$,前面一直在关注行的属性给行列式带来的变化,有了这条性质,行的属性同样适用于列,比如对性质2就有“交换列行列式变号”。\n", 42 | " \n", 43 | " 证明:$\\left|A^T\\right|=\\left|A\\right|\\rightarrow\\left|U^TL^T\\right|=\\left|LU\\right|\\rightarrow\\left|U^T\\right|\\left|L^T\\right|=\\left|L\\right|\\left|U\\right|$,值得注意的是,$L, U$的行列式并不因为转置而改变,得证。" 44 | ] 45 | } 46 | ], 47 | "metadata": { 48 | "anaconda-cloud": {}, 49 | "kernelspec": { 50 | "display_name": "Python [default]", 51 | "language": "python", 52 | "name": "python3" 53 | }, 54 | "language_info": { 55 | "codemirror_mode": { 56 | "name": "ipython", 57 | "version": 3 58 | }, 59 | "file_extension": ".py", 60 | "mimetype": "text/x-python", 61 | "name": "python", 62 | "nbconvert_exporter": "python", 63 | "pygments_lexer": "ipython3", 64 | "version": "3.5.2" 65 | } 66 | }, 67 | "nbformat": 4, 68 | "nbformat_minor": 0 69 | } 70 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/26~对称矩阵及正定性.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十六讲:对称矩阵及正定性\n", 8 | "\n", 9 | "## 对称矩阵\n", 10 | "\n", 11 | "前面我们学习了矩阵的特征值与特征向量,也了解了一些特殊的矩阵及其特征值、特征向量,特殊矩阵的特殊性应该会反映在其特征值、特征向量中。如马尔科夫矩阵,有一特征值为$1$,本讲介绍(实)对称矩阵。\n", 12 | "\n", 13 | "先提前介绍两个对称矩阵的特性:\n", 14 | "\n", 15 | "1. 特征值为实数;(对比第二十一讲介绍的旋转矩阵,其特征值为纯虚数。)\n", 16 | "2. 特征向量相互正交。(当特征值重复时,特征向量也可以从子空间中选出相互正交正交的向量。)\n", 17 | "\n", 18 | "典型的状况是,特征值不重复,特征向量相互正交。\n", 19 | "\n", 20 | "* 那么在通常(可对角化)情况下,一个矩阵可以化为:$A=S\\varLambda S^{-1}$;\n", 21 | "* 在矩阵对称的情况下,通过性质2可知,由特征向量组成的矩阵$S$中的列向量是相互正交的,此时如果我们把特征向量的长度统一化为$1$,就可以得到一组标准正交的特征向量。则对于对称矩阵有$A=Q\\varLambda Q^{-1}$,而对于标准正交矩阵,有$Q=Q^T$,所以对称矩阵可以写为$$A=Q\\varLambda Q^T\\tag{1}$$\n", 22 | "\n", 23 | "观察$(1)$式,我们发现这个分解本身就代表着对称,$\\left(Q\\varLambda Q^T\\right)^T=\\left(Q^T\\right)^T\\varLambda^TQ^T=Q\\varLambda Q^T$。$(1)$式在数学上叫做谱定理(spectral theorem),谱就是指矩阵特征值的集合。(该名称来自光谱,指一些纯事物的集合,就像将特征值分解成为特征值与特征向量。)在力学上称之为主轴定理(principle axis theorem),从几何上看,它意味着如果给定某种材料,在合适的轴上来看,它就变成对角化的,方向就不会重复。\n", 24 | "\n", 25 | "* 现在我们来证明性质1。对于矩阵$\\underline{Ax=\\lambda x}$,对于其共轭部分总有$\\bar A\\bar x=\\bar\\lambda \\bar x$,根据前提条件我们只讨论实矩阵,则有$A\\bar x=\\bar\\lambda \\bar x$,将等式两边取转置有$\\overline{\\bar{x}^TA=\\bar{x}^T\\bar\\lambda}$。将“下划线”式两边左乘$\\bar{x}^T$有$\\bar{x}^TAx=\\bar{x}^T\\lambda x$,“上划线”式两边右乘$x$有$\\bar{x}^TAx=\\bar{x}^T\\bar\\lambda x$,观察发现这两个式子左边是一样的,所以$\\bar{x}^T\\lambda x=\\bar{x}^T\\bar\\lambda x$,则有$\\lambda=\\bar{\\lambda}$(这里有个条件,$\\bar{x}^Tx\\neq 0$),证毕。\n", 26 | "\n", 27 | " 观察这个前提条件,$\\bar{x}^Tx=\\begin{bmatrix}\\bar x_1&\\bar x_2&\\cdots&\\bar x_n\\end{bmatrix}\\begin{bmatrix}x_1\\\\x_2\\\\\\vdots\\\\x_n\\end{bmatrix}=\\bar x_1x_1+\\bar x_2x_2+\\cdots+\\bar x_nx_n$,设$x_1=a+ib, \\bar x_1=a-ib$则$\\bar x_1x_1=a^2+b^2$,所以有$\\bar{x}^Tx>0$。而$\\bar{x}^Tx$就是$x$长度的平方。\n", 28 | "\n", 29 | " 拓展这个性质,当$A$为复矩阵,根据上面的推导,则矩阵必须满足$A=\\bar{A}^T$时,才有性质1、性质2成立(教授称具有这种特征值为实数、特征向量相互正交的矩阵为“好矩阵”)。\n", 30 | "\n", 31 | "继续研究$A=Q\\varLambda Q^T=\\Bigg[q_1\\ q_2\\ \\cdots\\ q_n\\Bigg]\\begin{bmatrix}\\lambda_1& &\\cdots& \\\\&\\lambda_2&\\cdots&\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\& &\\cdots&\\lambda_n\\end{bmatrix}\\begin{bmatrix}\\quad q_1^T\\quad\\\\\\quad q_1^T\\quad\\\\\\quad \\vdots \\quad\\\\\\quad q_1^T\\quad\\end{bmatrix}=\\lambda_1q_1q_1^T+\\lambda_2q_2q_2^T+\\cdots+\\lambda_nq_nq_n^T$,注意这个展开式中的$qq^T$,$q$是单位列向量所以$q^Tq=1$,结合我们在第十五讲所学的投影矩阵的知识有$\\frac{qq^T}{q^Tq}=qq^T$是一个投影矩阵,很容易验证其性质,比如平方它会得到$qq^Tqq^T=qq^T$于是多次投影不变等。\n", 32 | "\n", 33 | "**每一个对称矩阵都可以分解为一系列相互正交的投影矩阵。**\n", 34 | "\n", 35 | "在知道对称矩阵的特征值皆为实数后,我们再来讨论这些实数的符号,因为特征值的正负号会影响微分方程的收敛情况(第二十三讲,需要实部为负的特征值保证收敛)。用消元法取得矩阵的主元,观察主元的符号,**主元符号的正负数量与特征向量的正负数量相同**。\n", 36 | "\n", 37 | "## 正定性\n", 38 | "\n", 39 | "如果对称矩阵是“好矩阵”,则正定矩阵(positive definite)是其一个更好的子类。正定矩阵指特征值均为正数的矩阵(根据上面的性质有矩阵的主元均为正)。\n", 40 | "\n", 41 | "举个例子,$\\begin{bmatrix}5&2\\\\2&3\\end{bmatrix}$,由行列式消元知其主元为$5,\\frac{11}{5}$,按一般的方法求特征值有$\\begin{vmatrix}5-\\lambda&2\\\\2&3-lambda\\end{vmatrix}=\\lambda^2-8\\lambda+11=0, \\lambda=4\\pm\\sqrt 5$。\n", 42 | "\n", 43 | "正定矩阵的另一个性质是,所有子行列式为正。对上面的例子有$\\begin{vmatrix}5\\end{vmatrix}=5, \\begin{vmatrix}5&2\\\\2&3\\end{vmatrix}=11$。\n", 44 | "\n", 45 | "我们看到正定矩阵将早期学习的的消元主元、中期学习的的行列式、后期学习的特征值结合在了一起。" 46 | ] 47 | } 48 | ], 49 | "metadata": { 50 | "kernelspec": { 51 | "display_name": "Python 3", 52 | "language": "python", 53 | "name": "python3" 54 | }, 55 | "language_info": { 56 | "codemirror_mode": { 57 | "name": "ipython", 58 | "version": 3 59 | }, 60 | "file_extension": ".py", 61 | "mimetype": "text/x-python", 62 | "name": "python", 63 | "nbconvert_exporter": "python", 64 | "pygments_lexer": "ipython3", 65 | "version": "3.5.2" 66 | } 67 | }, 68 | "nbformat": 4, 69 | "nbformat_minor": 0 70 | } 71 | -------------------------------------------------------------------------------- /02~线性代数/向量运算.md: -------------------------------------------------------------------------------- 1 | # 向量运算 2 | 3 | # 基本运算 4 | 5 | ## 加法 6 | 7 | ## 点积 8 | 9 | 三维向量的点积定义如下: 10 | 11 | $$ 12 | \overrightarrow{\mathbf{u}} \cdot \overrightarrow{\mathbf{v}}=u_{x} v_{x}+u_{y} v_{y}+u_{z} v_{z}=|\overrightarrow{\mathbf{u}} \|| \overrightarrow{\mathbf{v}} | \cos (\overrightarrow{\mathbf{u}}, \overrightarrow{\mathbf{v}}) 13 | $$ 14 | 15 | ## 叉积 16 | 17 | 三维向量的叉积定义如下: 18 | 19 | $$ 20 | \overrightarrow{\mathbf{w}}=\overrightarrow{\mathbf{u}} \times \overrightarrow{\mathbf{v}}=\left[\begin{array}{ccc}{\overrightarrow{\mathbf{i}}} & {\overrightarrow{\mathbf{j}}} & {\overrightarrow{\mathbf{k}}} \\ {u_{x}} & {u_{y}} & {u_{z}} \\ {v_{x}} & {v_{y}} & {v_{z}}\end{array}\right] 21 | $$ 22 | 23 | 其中 $\overrightarrow{\mathbf{i}}, \overrightarrow{\mathbf{j}}, \overrightarrow{\mathbf{k}}$ 分别为 $x,y,z$ 轴的单位向量: 24 | 25 | $$ 26 | \overrightarrow{\mathbf{u}}=u_{x} \overrightarrow{\mathbf{i}}+u_{y} \overrightarrow{\mathbf{j}}+u_{z} \overrightarrow{\mathbf{k}}, \quad \overrightarrow{\mathbf{v}}=v_{x} \overrightarrow{\mathbf{i}}+v_{y} \overrightarrow{\mathbf{j}}+v_{z} \overrightarrow{\mathbf{k}} 27 | $$ 28 | 29 | $\overrightarrow{\mathbf{u}}$ 和 $\overrightarrow{\mathbf{v}}$ 的叉积垂直于 $\overrightarrow{\mathbf{u}}, \overrightarrow{\mathbf{v}}$ 构成的平面,其方向符合右手规则。叉积的模等于 $\overrightarrow{\mathbf{u}}, \overrightarrow{\mathbf{v}}$ 构成的平行四边形的面积,且符合如下的条件: 30 | 31 | $$ 32 | \begin{array}{l}{\overrightarrow{\mathbf{u}} \times \overrightarrow{\mathbf{v}}=-\overrightarrow{\mathbf{v}} \times \overrightarrow{\mathbf{u}}} \\ {\overrightarrow{\mathbf{u}} \times(\overrightarrow{\mathbf{v}} \times \overrightarrow{\mathbf{w}})=(\overrightarrow{\mathbf{u}} \cdot \overrightarrow{\mathbf{w}}) \overrightarrow{\mathbf{v}}-(\overrightarrow{\mathbf{u}} \cdot \overrightarrow{\mathbf{v}}) \overrightarrow{\mathbf{w}}}\end{array} 33 | $$ 34 | 35 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230430222419.png) 36 | 37 | ## 混合积 38 | 39 | $$ 40 | \begin{array}{rl}{[\overrightarrow{\mathbf{u}} \overrightarrow{\mathbf{v}}} & {\overrightarrow{\mathbf{w}} ]=(\overrightarrow{\mathbf{u}} \times \overrightarrow{\mathbf{v}}) \cdot \overrightarrow{\mathbf{w}}=\overrightarrow{\mathbf{u}} \cdot(\overrightarrow{\mathbf{v}} \times \overrightarrow{\mathbf{w}})} 41 | 42 | = \left|\begin{array}{lll}{u_{x}} & {u_{y}} & {u_{z}} \\ {v_{x}} & {v_{y}} & {v_{z}} \\ {w_{x}} & {w_{y}} & {w_{z}}\end{array}\right| 43 | 44 | = \left|\begin{array}{lll}{u_{x}} & {v_{x}} & {w_{x}} \\ {u_{y}} & {v_{y}} & {w_{y}} \\ {u_{z}} & {v_{z}} & {w_{z}}\end{array}\right| 45 | 46 | \end{array} 47 | $$ 48 | 49 | 其物理意义为:以 $\overrightarrow{\mathbf{u}}, \overrightarrow{\mathbf{v}}, \overrightarrow{\mathbf{w}}$ 为三个棱边所围成的平行六面体的体积。当 $\overrightarrow{\mathbf{u}}, \overrightarrow{\mathbf{v}}, \overrightarrow{\mathbf{w}}$ 50 | 51 | ## 并矢 52 | 53 | 给定两个向量 $\overrightarrow{\mathbf{x}}=\left(x_{1}, x_{2}, \cdots, x_{n}\right)^{T}, \overrightarrow{\mathbf{y}}=\left(y_{1}, y_{2}, \cdots, y_{m}\right)^{T}$,则向量的并矢记作: 54 | 55 | $$ 56 | \overrightarrow{\mathbf{x}} \overrightarrow{\mathbf{y}}=\left[\begin{array}{cccc}{x_{1} y_{1}} & {x_{1} y_{2}} & {\cdots} & {x_{1} y_{m}} \\ {x_{2} y_{1}} & {x_{2} y_{2}} & {\cdots} & {x_{2} y_{m}} \\ {\vdots} & {\vdots} & {\ddots} & {\vdots} \\ {x_{n} y_{1}} & {x_{n} y_{2}} & {\cdots} & {x_{n} y_{m}}\end{array}\right] 57 | $$ 58 | 59 | 也记作 $\overrightarrow{\mathbf{x}} \otimes \overrightarrow{\mathbf{y}}$ 或者 $\overrightarrow{\mathrm{x}} \overrightarrow{\mathbf{y}}^{T}$。 60 | 61 | # 线性相关 62 | 63 | 一组向量 $\overrightarrow{\mathbf{v}}_{1}, \overrightarrow{\mathbf{v}}_{2}, \cdots, \overrightarrow{\mathbf{v}}_{n}$ 如果是线性相关的,那么值存在一组不全为零的实数,$a_{1}, a_{2}, \cdots, a_{n}$,使得 $\sum_{i=1}^{n} a_{i} \overrightarrow{\mathbf{v}}_{i}=\overrightarrow{\mathbf{0}}$。 64 | 65 | 反之,一组向量 $\overrightarrow{\mathbf{v}}_{1}, \overrightarrow{\mathbf{v}}_{2}, \cdots, \overrightarrow{\mathbf{v}}_{n}$ 如果是线性无关的,当且仅当 $a_{i}=0, i=1,2, \cdots, n$ 才有 $\sum_{i=1}^{n} a_{i} \overrightarrow{\mathbf{v}}_{i}=\overrightarrow{\mathbf{0}}$。 66 | 67 | # 向量性质 68 | 69 | ## 维数 70 | 71 | 一个向量空间所包含的最大线性无关向量的数目,称作该向量空间的维数。 72 | 73 | ## 范数 74 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/19~行列式公式和代数余子式.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 行列式公式和代数余子式\n", 8 | "\n", 9 | "上一讲中,我们从三个简单的性质扩展出了一些很好的推论,本讲将继续使用这三条基本性质:\n", 10 | "\n", 11 | "1. $\\det I=1$;\n", 12 | "2. 交换行行列式变号;\n", 13 | "3. 对行列式的每一行都可以单独使用线性运算,其值不变;\n", 14 | "\n", 15 | "我们使用这三条性质推导二阶方阵行列式:\n", 16 | "\n", 17 | "$$\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}=\\begin{vmatrix}a&0\\\\c&d\\end{vmatrix}+\\begin{vmatrix}0&b\\\\c&d\\end{vmatrix}=\\begin{vmatrix}a&0\\\\c&0\\end{vmatrix}+\\begin{vmatrix}a&0\\\\0&d\\end{vmatrix}+\\begin{vmatrix}0&b\\\\c&0\\end{vmatrix}+\\begin{vmatrix}0&b\\\\0&d\\end{vmatrix}=ad-bc$$\n", 18 | "\n", 19 | "按照这个方法,我们继续计算三阶方阵的行列式,可以想到,我们保持第二、三行不变,将第一行拆分为个行列式之和,再将每一部分的第二行拆分为三部分,这样就得到九个行列式,再接着拆分这九个行列式的第三行,最终得到二十七个行列式。可以想象到,这些矩阵中有很多值为零的行列式,我们只需要找到不为零的行列式,求和即可。\n", 20 | "\n", 21 | "$$\\begin{vmatrix}a_{11}&a_{12}&a_{13}\\\\a_{21}&a_{22}&a_{23}\\\\a_{31}&a_{32}&a_{33}\\end{vmatrix}=\\begin{vmatrix}a_{11}&0&0\\\\0&a_{22}&0\\\\0&0&a_{33}\\end{vmatrix}+\\begin{vmatrix}a_{11}&0&0\\\\0&0&a_{23}\\\\0&a_{32}&0\\end{vmatrix}+\\begin{vmatrix}0&a_{12}&0\\\\a_{21}&0&0\\\\0&0&a_{33}\\end{vmatrix}+\\begin{vmatrix}0&a_{12}&0\\\\0&0&a_{23}\\\\a_{31}&0&0\\end{vmatrix}+\\begin{vmatrix}0&0&a_{13}\\\\a_{21}&0&0\\\\0&a_{32}&0\\end{vmatrix}+\\begin{vmatrix}0&0&a_{13}\\\\0&a_{22}&0\\\\a_{31}&0&0\\end{vmatrix}$$\n", 22 | "\n", 23 | "$$原式=a_{11}a_{22}a_{33}-a_{11}a_{23}a_{32}-a_{12}a_{21}a_{33}+a_{12}a_{23}a_{31}+a_{13}a_{21}a_{32}-a_{13}a_{22}a_{31}\\tag{1}$$\n", 24 | "\n", 25 | "同理,我们想继续推导出阶数更高的式子,按照上面的式子可知$n$阶行列式应该可以分解成$n!$个非零行列式(占据第一行的元素有$n$种选择,占据第二行的元素有$n-1$种选择,以此类推得$n!$):\n", 26 | "\n", 27 | "$$\\det A=\\sum_{n!} \\pm a_{1\\alpha}a_{2\\beta}a_{3\\gamma}\\cdots a_{n\\omega}, (\\alpha, \\beta, \\gamma, \\omega)=P_n^n\\tag{2}$$\n", 28 | "\n", 29 | "这个公式还不完全,接下来需要考虑如何确定符号:\n", 30 | "\n", 31 | "$$\\begin{vmatrix}0&0&\\overline 1&\\underline 1\\\\0&\\overline 1&\\underline 1&0\\\\\\overline 1&\\underline 1&0&0\\\\\\underline 1&0&0&\\overline 1\\end{vmatrix}$$\n", 32 | "* 观察带有下划线的元素,它们的排列是$(4,3,2,1)$,变为$(1,2,3,4)$需要两步操作,所以应取$+$;\n", 33 | "* 观察带有上划线的元素,它们的排列是$(3,2,1,4)$,变为$(1,2,3,4)$需要一步操作,所以应取$-$。\n", 34 | "* 观察其他元素,我们无法找出除了上面两种以外的排列方式,于是该行列式值为零,这是一个奇异矩阵。\n", 35 | "\n", 36 | "此处引入代数余子式(cofactor)的概念,它的作用是把$n$阶行列式化简为$n-1$阶行列式。\n", 37 | "\n", 38 | "于是我们把$(1)$式改写为:\n", 39 | "\n", 40 | "$$a_{11}(a_{22}a_{33}-a_{23}a_{32})+a_{12}(a_{21}a_{33}-a_{23}a_{31})+a_{13}(a_{21}a_{32}-a_{22}a_{31})$$\n", 41 | "\n", 42 | "$$\\begin{vmatrix}a_{11}&0&0\\\\0&a_{22}&a_{23}\\\\0&a_{32}&a_{33}\\end{vmatrix}+\\begin{vmatrix}0&a_{12}&0\\\\a_{21}&0&a_{23}\\\\a_{31}&0&a_{33}\\end{vmatrix}+\\begin{vmatrix}0&0&a_{13}\\\\a_{21}&a_{22}&0\\\\a_{31}&a_{32}&0\\end{vmatrix}$$\n", 43 | "\n", 44 | "于是,我们可以定义$a_{ij}$的代数余子式:将原行列式的第$i$行与第$j$列抹去后得到的$n-1$阶行列式记为$C_{ij}$,$i+j$为偶时时取$+$,$i+j$为奇时取$-$。\n", 45 | "\n", 46 | "现在再来完善式子$(2)$:将行列式$A$沿第一行展开:\n", 47 | "\n", 48 | "$$\\det A=a_{11}C_{11}+a_{12}C_{12}+\\cdots+a_{1n}C_{1n}$$\n", 49 | "\n", 50 | "到现在为止,我们了解了三种求行列式的方法:\n", 51 | "\n", 52 | "1. 消元,$\\det A$就是主元的乘积;\n", 53 | "2. 使用$(2)$式展开,求$n!$项之积;\n", 54 | "3. 使用代数余子式。\n", 55 | "\n", 56 | "计算例题:\n", 57 | "$A_4=\\begin{vmatrix}1&1&0&0\\\\1&1&1&0\\\\0&1&1&1\\\\0&0&1&1\\end{vmatrix}\\stackrel{沿第一行展开}{=}\\begin{vmatrix}1&1&0\\\\1&1&1\\\\0&1&1\\end{vmatrix}-\\begin{vmatrix}1&1&0\\\\0&1&1\\\\0&1&1\\end{vmatrix}=-1-0=-1$" 58 | ] 59 | } 60 | ], 61 | "metadata": { 62 | "kernelspec": { 63 | "display_name": "Python 3", 64 | "language": "python", 65 | "name": "python3" 66 | }, 67 | "language_info": { 68 | "codemirror_mode": { 69 | "name": "ipython", 70 | "version": 3 71 | }, 72 | "file_extension": ".py", 73 | "mimetype": "text/x-python", 74 | "name": "python", 75 | "nbconvert_exporter": "python", 76 | "pygments_lexer": "ipython3", 77 | "version": "3.5.1" 78 | } 79 | }, 80 | "nbformat": 4, 81 | "nbformat_minor": 0 82 | } 83 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/28~正定矩阵和最小值.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十八讲:正定矩阵和最小值\n", 8 | "\n", 9 | "本讲我们会了解如何完整的测试一个矩阵是否正定,测试$x^TAx$是否具有最小值,最后了解正定的几何意义——椭圆(ellipse)和正定性有关,双曲线(hyperbola)与正定无关。另外,本讲涉及的矩阵均为实对称矩阵。\n", 10 | "\n", 11 | "## 正定性的判断\n", 12 | "\n", 13 | "我们仍然从二阶说起,有矩阵$A=\\begin{bmatrix}a&b\\\\b&d\\end{bmatrix}$,判断其正定性有以下方法:\n", 14 | "\n", 15 | "1. 矩阵的所有特征值大于零则矩阵正定:$\\lambda_1>0,\\ \\lambda_2>0$;\n", 16 | "2. 矩阵的所有顺序主子阵(leading principal submatrix)的行列式(即顺序主子式,leading principal minor)大于零则矩阵正定:$a>0,\\ ac-b^2>0$;\n", 17 | "3. 矩阵消元后主元均大于零:$a>0,\\ \\frac{ac-b^2}{a}>0$;\n", 18 | "4. $x^TAx>0$;\n", 19 | "\n", 20 | "大多数情况下使用4来定义正定性,而用前三条来验证正定性。\n", 21 | "\n", 22 | "来计算一个例子:$A=\\begin{bmatrix}2&6\\\\6&?\\end{bmatrix}$,在$?$处填入多少才能使矩阵正定?\n", 23 | "\n", 24 | "* 来试试$18$,此时矩阵为$A=\\begin{bmatrix}2&6\\\\6&18\\end{bmatrix}$,$\\det A=0$,此时的矩阵成为半正定矩阵(positive semi-definite)。矩阵奇异,其中一个特征值必为$0$,从迹得知另一个特征值为$20$。矩阵的主元只有一个,为$2$。\n", 25 | "\n", 26 | " 计算$x^TAx$,得$\\begin{bmatrix}x_1&x_2\\end{bmatrix}\\begin{bmatrix}2&6\\\\6&18\\end{bmatrix}\\begin{bmatrix}x_1\\\\x_2\\end{bmatrix}=2x_1^2+12x_1x_2+18x_2^2$这样我们得到了一个关于$x_1,x_2$的函数$f(x_1,x_2)=2x_1^2+12x_1x_2+18x_2^2$,这个函数不再是线性的,在本例中这是一个纯二次型(quadratic)函数,它没有线性部分、一次部分或更高次部分($Ax$是线性的,但引入$x^T$后就成为了二次型)。\n", 27 | "\n", 28 | " 当$?$取$18$时,判定1、2、3都是“刚好不及格”。\n", 29 | " \n", 30 | "* 我们可以先看“一定不及格”的样子,令$?=7$,矩阵为$A=\\begin{bmatrix}2&6\\\\6&7\\end{bmatrix}$,二阶顺序主子式变为$-22$,显然矩阵不是正定的,此时的函数为$f(x_1,x_2)=2x_1^2+12x_1x_2+7x_2^2$,如果取$x_1=1,x_2=-1$则有$f(1,-1)=2-12+7<0$。\n", 31 | "\n", 32 | " 如果我们把$z=2x^2+12xy+7y^2$放在直角坐标系中,图像过原点$z(0,0)=0$,当$y=0$或$x=0$或$x=y$时函数为开口向上的抛物线,所以函数图像在某些方向上是正值;而在某些方向上是负值,比如$x=-y$,所以函数图像是一个马鞍面(saddle),$(0,0,0)$点称为鞍点(saddle point),它在某些方向上是极大值点,而在另一些方向上是极小值点。(实际上函数图像的最佳观测方向是沿着特征向量的方向。)\n", 33 | "\n", 34 | "* 再来看一下“一定及格”的情形,令$?=20$,矩阵为$A=\\begin{bmatrix}2&6\\\\6&20\\end{bmatrix}$,行列式为$\\det A=4$,迹为$trace(A)=22$,特征向量均大于零,矩阵可以通过测试。此时的函数为$f(x_1,x_2)=2x_1^2+12x_1x_2+20x_2^2$,函数在除$(0,0)$外处处为正。我们来看看$z=2x^2+12xy+20y^2$的图像,式子的平方项均非负,所以需要两个平方项之和大于中间项即可,该函数的图像为抛物面(paraboloid)。在$(0,0)$点函数的一阶偏导数均为零,二阶偏导数均为正(马鞍面的一阶偏导数也为零,但二阶偏导数并不均为正,所以),函数在改点取极小值。\n", 35 | "\n", 36 | " 在微积分中,一元函数取极小值需要一阶导数为零且二阶导数为正$\\frac{\\mathrm{d}u}{\\mathrm{d}x}=0, \\frac{\\mathrm{d}^2u}{\\mathrm{d}x^2}>0$。在线性代数中我们遇到了了多元函数$f(x_1,x_2,\\cdots,x_n)$,要取极小值需要二阶偏导数矩阵为正定矩阵。\n", 37 | " \n", 38 | " 在本例中(即二阶情形),如果能用平方和的形式来表示函数,则很容易看出函数是否恒为正,$f(x,y)=2x^2+12xy+20y^2=2\\left(x+3y\\right)^2+2y^2$。另外,如果是上面的$?=7$的情形,则有$f(x,y)=2(x+3y)^2-11y^2$,如果是$?=18$的情形,则有$f(x,y)=2(x+3y)^2$。\n", 39 | " \n", 40 | " 如果令$z=1$,相当于使用$z=1$平面截取该函数图像,将得到一个椭圆曲线。另外,如果在$?=7$的马鞍面上截取曲线将得到一对双曲线。\n", 41 | " \n", 42 | " 再来看这个矩阵的消元,$\\begin{bmatrix}2&6\\\\6&20\\end{bmatrix}=\\begin{bmatrix}1&0\\\\-3&1\\end{bmatrix}\\begin{bmatrix}2&6\\\\0&2\\end{bmatrix}$,这就是$A=LU$,可以发现矩阵$L$中的项与配平方中未知数的系数有关,而主元则与两个平方项外的系数有关,这也就是为什么正数主元得到正定矩阵。\n", 43 | " \n", 44 | " 上面又提到二阶导数矩阵,这个矩阵型为$\\begin{bmatrix}f_{xx}&f_{xy}\\\\f_{yx}&f_{yy}\\end{bmatrix}$,显然,矩阵中的主对角线元素(纯二阶导数)必须为正,并且主对角线元素必须足够大来抵消混合导数的影响。同时还可以看出,因为二阶导数的求导次序并不影响结果,所以矩阵必须是对称的。现在我们就可以计算$n\\times n$阶矩阵了。\n", 45 | " \n", 46 | "接下来计算一个三阶矩阵,$A=\\begin{bmatrix}2&-1&0\\\\-1&2&-1\\\\0&-1&2\\end{bmatrix}$,它是正定的吗?函数$x^TAx$是多少?函数在原点去最小值吗?图像是什么样的?\n", 47 | "\n", 48 | "* 先来计算矩阵的顺序主子式,分别为$2,3,4$;再来计算主元,分别为$2,\\frac{3}{2},\\frac{4}{3}$;计算特征值,$\\lambda_1=2-\\sqrt 2,\\lambda_2=2,\\lambda_3=2+\\sqrt 2$。\n", 49 | "* 计算$x^TAx=2x_1^2+2x_2^2+2x_3^2-2x_1x_2-2x_2x_3$。\n", 50 | "* 图像是四维的抛物面,当我们在$f(x_1,x_2,x_3)=1$处截取该面,将得到一个椭圆体。一般椭圆体有三条轴,特征值的大小决定了三条轴的长度,而特征向量的方向与三条轴的方向相同。\n", 51 | "\n", 52 | "现在我们将矩阵$A$分解为$A=Q\\Lambda Q^T$,可以发现上面说到的各种元素都可以表示在这个分解的矩阵中,我们称之为主轴定理(principal axis theorem),即特征向量说明主轴的方向、特征值说明主轴的长度。\n", 53 | "\n", 54 | "$A=Q\\Lambda Q^T$是特征值相关章节中最重要的公式。" 55 | ] 56 | } 57 | ], 58 | "metadata": { 59 | "kernelspec": { 60 | "display_name": "Python 3", 61 | "language": "python", 62 | "name": "python3" 63 | }, 64 | "language_info": { 65 | "codemirror_mode": { 66 | "name": "ipython", 67 | "version": 3 68 | }, 69 | "file_extension": ".py", 70 | "mimetype": "text/x-python", 71 | "name": "python", 72 | "nbconvert_exporter": "python", 73 | "pygments_lexer": "ipython3", 74 | "version": "3.5.1" 75 | } 76 | }, 77 | "nbformat": 4, 78 | "nbformat_minor": 0 79 | } 80 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/13~复习一.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第十三讲:复习一\n", 8 | "\n", 9 | "1. 令$u, v, w$是$\\mathbb{R}^7$空间内的非零向量:则$u, v, w$生成的向量空间可能是$1, 2, 3$维的。\n", 10 | "\n", 11 | "2. 有一个$5 \\times 3$矩阵$U$,该矩阵为阶梯矩阵(echelon form),有$3$个主元:则能够得到该矩阵的秩为$3$,即三列向量线性无关,不存在非零向量使得三列的线性组合为零向量,所以该矩阵的零空间应为$\\begin{bmatrix}0\\\\0\\\\0\\\\ \\end{bmatrix}$。\n", 12 | "\n", 13 | "3. 接上一问,有一个$10 \\times 3$矩阵$B=\\begin{bmatrix}U\\\\2U \\end{bmatrix}$,则化为最简形式(阶梯矩阵)应为$\\begin{bmatrix}U\\\\0 \\end{bmatrix}$,$rank(B)=3$。\n", 14 | "\n", 15 | "4. 接上一问,有一个矩阵型为$C=\\begin{bmatrix}U & U \\\\ U & 0 \\end{bmatrix}$,则化为最简形式应为$\\begin{bmatrix}U & 0 \\\\ 0 & U \\end{bmatrix}$,$rank(C)=6$。矩阵$C$为$10 \\times 6$矩阵,$dim N(C^T)=m-r=4$。\n", 16 | "\n", 17 | "5. 有$Ax=\\begin{bmatrix}2\\\\4\\\\2\\\\ \\end{bmatrix}$,并且$x=\\begin{bmatrix}2\\\\0\\\\0\\\\ \\end{bmatrix}+c\\begin{bmatrix}1\\\\1\\\\0\\\\ \\end{bmatrix}+d\\begin{bmatrix}0\\\\0\\\\1 \\end{bmatrix}$,则等号右侧$b$向量的列数应为$A$的行数,且解的列数应为$A$的列数,所以$A$是一个$3 \\times 3$矩阵。从解的结构可知自由元有两个,则$rank(A)=1, dim N(A)=2$。从解的第一个向量得出,矩阵$A$的第一列是$\\begin{bmatrix}1\\\\2\\\\1 \\end{bmatrix}$;解的第二个向量在零空间中,说明第二列与第一列符号相反,所以矩阵第二列是$\\begin{bmatrix}-1\\\\-2\\\\-1 \\end{bmatrix}$;解的第三个向量在零空间中,说明第三列为零向量;综上,$A=\\begin{bmatrix}1 & -1 & 0\\\\ 2 & -2 & 0\\\\ 1 & -1 & 0\\\\ \\end{bmatrix}$。\n", 18 | "\n", 19 | "6. 接上一问,如何使得$Ax=b$有解?即使$b$在矩阵$A$的列空间中。易知$A$的列空间型为$c\\begin{bmatrix}1\\\\2\\\\1\\\\ \\end{bmatrix}$,所以使$b$为向量$\\begin{bmatrix}1\\\\2\\\\1\\\\ \\end{bmatrix}$的倍数即可。\n", 20 | "\n", 21 | "7. 有一方阵的零空间中只有零向量,则其左零空间也只有零向量。\n", 22 | "\n", 23 | "8. 由$5 \\times 5$矩阵组成的矩阵空间,其中的可逆矩阵能否构成子空间?两个可逆矩阵相加的结果并不一定可逆,况且零矩阵本身并不包含在可逆矩阵中。其中的奇异矩阵(singular matrix,非可逆矩阵)也不能组成子空间,因为其相加的结果并不一定能够保持不可逆。\n", 24 | "\n", 25 | "9. 如果$B^2=0$,并不能得出$B=0$,反例:$\\begin{bmatrix}0 & 1\\\\ 0 & 0\\\\ \\end{bmatrix}$,**这个矩阵经常会被用作反例**。\n", 26 | "\n", 27 | "10. $n \\times n$矩阵的列向量线性无关,则是否$\\forall b, Ax=b$有解?是的,因为方阵各列线性无关,所以方阵满秩,它是可逆矩阵,肯定有解。\n", 28 | "\n", 29 | "11. 有\n", 30 | "$\n", 31 | "B=\n", 32 | "\\begin{bmatrix}\n", 33 | "1 & 1 & 0 \\\\\n", 34 | "0 & 1 & 0 \\\\\n", 35 | "1 & 0 & 1 \\\\\n", 36 | "\\end{bmatrix}\n", 37 | "\\begin{bmatrix}\n", 38 | "1 & 0 & -1 & 2 \\\\\n", 39 | "0 & 1 & 1 & -1 \\\\\n", 40 | "0 & 0 & 0 & 0 \\\\\n", 41 | "\\end{bmatrix}\n", 42 | "$,在不解出$B$的情况下,求$B$的零空间。可以观察得出前一个矩阵是可逆矩阵,设$B=CD$,则求零空间$Bx=0, CDx=0$,而$C$是可逆矩阵,则等式两侧同时乘以$C^{-1}$有$C^{-1}CDx=Dx=0$,所以当$C$为可逆矩阵时,有$N(CD)=N(D)$,即左乘逆矩阵不会改变零空间。本题转化为求$D$的零空间,$N(B)$的基为\n", 43 | "$\\begin{bmatrix}-F\\\\I\\\\ \\end{bmatrix}$,也就是$\\begin{bmatrix}1\\\\-1\\\\1\\\\0 \\end{bmatrix}\\quad\\begin{bmatrix}-2\\\\1\\\\0\\\\1\\end{bmatrix}$\n", 44 | "\n", 45 | "12. 接上题,求$Bx=\\begin{bmatrix}1\\\\0\\\\1\\\\ \\end{bmatrix}$的通解。观察$B=CD$,易得$B$矩阵的第一列为$\\begin{bmatrix}1\\\\0\\\\1\\\\ \\end{bmatrix}$,恰好与等式右边一样,所以$\\begin{bmatrix}1\\\\0\\\\0\\\\0\\\\ \\end{bmatrix}$可以作为通解中的特解部分,再利用上一问中求得的零空间的基,得到通解\n", 46 | "$\n", 47 | "x=\n", 48 | "\\begin{bmatrix}1\\\\0\\\\0\\\\0\\\\ \\end{bmatrix}+\n", 49 | "c_1\\begin{bmatrix}1\\\\-1\\\\1\\\\0 \\end{bmatrix}+c_2\\begin{bmatrix}-2\\\\1\\\\0\\\\1\\end{bmatrix}\n", 50 | "$\n", 51 | "\n", 52 | "13. 对于任意方阵,其行空间等于列空间?不成立,可以使用$\\begin{bmatrix}0 & 1\\\\ 0 & 0\\\\ \\end{bmatrix}$作为反例,其行空间是向量$\\begin{bmatrix}0 & 1\\\\ \\end{bmatrix}$的任意倍数,而列空间是向量$\\begin{bmatrix}1 & 0\\\\ \\end{bmatrix}$的任意倍数。但是如果该方阵是对称矩阵,则成立。\n", 53 | "\n", 54 | "14. $A$与$-A$的四个基本子空间相同。\n", 55 | "\n", 56 | "15. 如果$A, B$的四个基本子空间相同,则$A, B$互为倍数关系。不成立,如任意两个$n$阶可逆矩阵,他们的列空间、行空间均为$\\mathbb{R}^n$,他们的零空间、左零空间都只有零向量,所以他们的四个基本子空间相同,但是并不一定具有倍数关系。\n", 57 | "\n", 58 | "16. 如果交换矩阵的某两行,则其行空间与零空间保持不变,而列空间与左零空间均已改变。\n", 59 | "\n", 60 | "17. 为什么向量$v=\\begin{bmatrix}1\\\\2\\\\3 \\end{bmatrix}$不能同时出现在矩阵的行空间与零空间中?令$A\\begin{bmatrix}1\\\\2\\\\3 \\end{bmatrix}=\\begin{bmatrix}0\\\\0\\\\0 \\end{bmatrix}$,很明显矩阵$A$中不能出现值为$\\begin{bmatrix}1 & 2 & 3 \\end{bmatrix}$的行向量,否则无法形成等式右侧的零向量。这里引入正交(perpendicular)的概念,矩阵的行空间与零空间正交,它们仅共享零向量。" 61 | ] 62 | } 63 | ], 64 | "metadata": { 65 | "kernelspec": { 66 | "display_name": "Python 3", 67 | "language": "python", 68 | "name": "python3" 69 | }, 70 | "language_info": { 71 | "codemirror_mode": { 72 | "name": "ipython", 73 | "version": 3 74 | }, 75 | "file_extension": ".py", 76 | "mimetype": "text/x-python", 77 | "name": "python", 78 | "nbconvert_exporter": "python", 79 | "pygments_lexer": "ipython3", 80 | "version": "3.5.1" 81 | } 82 | }, 83 | "nbformat": 4, 84 | "nbformat_minor": 0 85 | } 86 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/10~四个基本子空间.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第十讲 四个基本子空间\n", 8 | "\n", 9 | "对于$m \\times n$矩阵$A$,$rank(A)=r$有:\n", 10 | "\n", 11 | "* 行空间$C(A^T) \\in \\mathbb{R}^n, dim C(A^T)=r$,基见例1。\n", 12 | "\n", 13 | "* 零空间$N(A) \\in \\mathbb{R}^n, dim N(A)=n-r$,自由元所在的列即可组成零空间的一组基。\n", 14 | "\n", 15 | "* 列空间$C(A) \\in \\mathbb{R}^m, dim C(A)=r$,主元所在的列即可组成列空间的一组基。\n", 16 | "\n", 17 | "* 左零空间$N(A^T) \\in \\mathbb{R}^m, dim N(A^T)=m-r$,基见例2。\n", 18 | "\n", 19 | "例1,对于行空间\n", 20 | "$\n", 21 | "A=\n", 22 | "\\begin{bmatrix}\n", 23 | "1 & 2 & 3 & 1 \\\\\n", 24 | "1 & 1 & 2 & 1 \\\\\n", 25 | "1 & 2 & 3 & 1 \\\\\n", 26 | "\\end{bmatrix}\n", 27 | "\\underrightarrow{消元、化简}\n", 28 | "\\begin{bmatrix}\n", 29 | "1 & 0 & 1 & 1 \\\\\n", 30 | "0 & 1 & 1 & 0 \\\\\n", 31 | "0 & 0 & 0 & 0 \\\\\n", 32 | "\\end{bmatrix}\n", 33 | "=R\n", 34 | "$\n", 35 | "\n", 36 | "由于我们做了行变换,所以A的列空间受到影响,$C(R) \\neq C(A)$,而行变换并不影响行空间,所以可以在$R$中看出前两行就是行空间的一组基。\n", 37 | "\n", 38 | "所以,可以得出无论对于矩阵$A$还是$R$,其行空间的一组基,可以由$R$矩阵的前$r$行向量组成(这里的$R$就是第七讲提到的简化行阶梯形式)。\n", 39 | "\n", 40 | "例2,对于左零空间,有$A^Ty=0 \\rightarrow (A^Ty)^T=0^T\\rightarrow y^TA=0^T$,因此得名。\n", 41 | "\n", 42 | "采用Gauss-Jordan消元,将增广矩阵$\\left[\\begin{array}{c|c}A_{m \\times n} & I_{m \\times m}\\end{array}\\right]$中$A$的部分划为简化行阶梯形式$\\left[\\begin{array}{c|c}R_{m \\times n} & E_{m \\times m}\\end{array}\\right]$,此时矩阵$E$会将所有的行变换记录下来。\n", 43 | "\n", 44 | "则$EA=R$,而在前几讲中,有当$A'$是$m$阶可逆方阵时,$R'$即是$I$,所以$E$就是$A^{-1}$。\n", 45 | "\n", 46 | "本例中\n", 47 | "\n", 48 | "$$\n", 49 | "\\left[\\begin{array}{c|c}A_{m \\times n} & I_{m \\times m}\\end{array}\\right]=\n", 50 | "\\left[\n", 51 | "\\begin{array}\n", 52 | "{c c c c|c c c}\n", 53 | "1 & 2 & 3 & 1 & 1 & 0 & 0 \\\\\n", 54 | "1 & 1 & 2 & 1 & 0 & 1 & 0 \\\\\n", 55 | "1 & 2 & 3 & 1 & 0 & 0 & 1 \\\\\n", 56 | "\\end{array}\n", 57 | "\\right]\n", 58 | "\\underrightarrow{消元、化简}\n", 59 | "\\left[\n", 60 | "\\begin{array}\n", 61 | "{c c c c|c c c}\n", 62 | "1 & 0 & 1 & 1 & -1 & 2 & 0 \\\\\n", 63 | "0 & 1 & 1 & 0 & 1 & -1 & 0 \\\\\n", 64 | "0 & 0 & 0 & 0 & -1 & 0 & 1 \\\\\n", 65 | "\\end{array}\n", 66 | "\\right]\n", 67 | "=\\left[\\begin{array}{c|c}R_{m \\times n} & E_{m \\times m}\\end{array}\\right]\n", 68 | "$$\n", 69 | "\n", 70 | "则\n", 71 | "\n", 72 | "$$\n", 73 | "EA=\n", 74 | "\\begin{bmatrix}\n", 75 | "-1 & 2 & 0 \\\\\n", 76 | "1 & -1 & 0 \\\\\n", 77 | "-1 & 0 & 1 \\\\\n", 78 | "\\end{bmatrix}\n", 79 | "\\cdot\n", 80 | "\\begin{bmatrix}\n", 81 | "1 & 2 & 3 & 1 \\\\\n", 82 | "1 & 1 & 2 & 1 \\\\\n", 83 | "1 & 2 & 3 & 1 \\\\\n", 84 | "\\end{bmatrix}\n", 85 | "=\n", 86 | "\\begin{bmatrix}\n", 87 | "1 & 0 & 1 & 1 \\\\\n", 88 | "0 & 1 & 1 & 0 \\\\\n", 89 | "0 & 0 & 0 & 0 \\\\\n", 90 | "\\end{bmatrix}\n", 91 | "=R\n", 92 | "$$\n", 93 | "\n", 94 | "\n", 95 | "很明显,式中$E$的最后一行对$A$的行做线性组合后,得到$R$的最后一行,即$0$向量,也就是$y^TA=0^T$。\n", 96 | "\n", 97 | "最后,引入矩阵空间的概念,矩阵可以同向量一样,做求和、数乘。\n", 98 | "\n", 99 | "举例,设所有$3 \\times 3$矩阵组成的矩阵空间为$M$。则上三角矩阵、对称矩阵、对角矩阵(前两者的交集)。\n", 100 | "\n", 101 | "观察一下对角矩阵,如果取\n", 102 | "$\n", 103 | "\\begin{bmatrix}\n", 104 | "1 & 0 & 0 \\\\\n", 105 | "0 & 0 & 0 \\\\\n", 106 | "0 & 0 & 0 \\\\\n", 107 | "\\end{bmatrix} \\quad\n", 108 | "\\begin{bmatrix}\n", 109 | "1 & 0 & 0 \\\\\n", 110 | "0 & 3 & 0 \\\\\n", 111 | "0 & 0 & 0 \\\\\n", 112 | "\\end{bmatrix} \\quad\n", 113 | "\\begin{bmatrix}\n", 114 | "0 & 0 & 0 \\\\\n", 115 | "0 & 0 & 0 \\\\\n", 116 | "0 & 0 & 7 \\\\\n", 117 | "\\end{bmatrix}\n", 118 | "$\n", 119 | ",可以发现,任何三阶对角矩阵均可用这三个矩阵的线性组合生成,因此,他们生成了三阶对角矩阵空间,即这三个矩阵是三阶对角矩阵空间的一组基。" 120 | ] 121 | } 122 | ], 123 | "metadata": { 124 | "kernelspec": { 125 | "display_name": "Python 3", 126 | "language": "python", 127 | "name": "python3" 128 | }, 129 | "language_info": { 130 | "codemirror_mode": { 131 | "name": "ipython", 132 | "version": 3 133 | }, 134 | "file_extension": ".py", 135 | "mimetype": "text/x-python", 136 | "name": "python", 137 | "nbconvert_exporter": "python", 138 | "pygments_lexer": "ipython3", 139 | "version": "3.5.1" 140 | } 141 | }, 142 | "nbformat": 4, 143 | "nbformat_minor": 0 144 | } 145 | -------------------------------------------------------------------------------- /99~参考资料/2022~《数学要素》/01~万物皆数.md: -------------------------------------------------------------------------------- 1 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_01.png) 2 | 3 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_02.png) 4 | 5 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_03.png) 6 | 7 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_04.png) 8 | 9 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_05.png) 10 | 11 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_06.png) 12 | 13 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_07.png) 14 | 15 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_08.png) 16 | 17 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_09.png) 18 | 19 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_10.png) 20 | 21 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_11.png) 22 | 23 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_12.png) 24 | 25 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_13.png) 26 | 27 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_14.png) 28 | 29 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_15.png) 30 | 31 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_16.png) 32 | 33 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_17.png) 34 | 35 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_18.png) 36 | 37 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_19.png) 38 | 39 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_20.png) 40 | 41 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_21.png) 42 | 43 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_22.png) 44 | 45 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_23.png) 46 | 47 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/book/%E6%95%B0%E5%AD%A6%E8%A6%81%E7%B4%A0/%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0/Book3_Ch01_%E4%B8%87%E7%89%A9%E7%9A%86%E6%95%B0_24.png) 48 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/08~求解 $Ax=b$:可解性和解的结构.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第八讲:求解 $Ax=b$:可解性和解的结构\n", 8 | "\n", 9 | "举例,同上一讲:$3 \\times 4$矩阵\n", 10 | "$\n", 11 | "A=\n", 12 | "\\begin{bmatrix}\n", 13 | "1 & 2 & 2 & 2\\\\\n", 14 | "2 & 4 & 6 & 8\\\\\n", 15 | "3 & 6 & 8 & 10\\\\\n", 16 | "\\end{bmatrix}\n", 17 | "$,求$Ax=b$的特解:\n", 18 | "\n", 19 | "写出其增广矩阵(augmented matrix)$\\left[\\begin{array}{c|c}A & b\\end{array}\\right]$:\n", 20 | "\n", 21 | "$$\n", 22 | "\\left[\n", 23 | "\\begin{array}{c c c c|c}\n", 24 | "1 & 2 & 2 & 2 & b_1 \\\\\n", 25 | "2 & 4 & 6 & 8 & b_2 \\\\\n", 26 | "3 & 6 & 8 & 10 & b_3 \\\\\n", 27 | "\\end{array}\n", 28 | "\\right]\n", 29 | "\\underrightarrow{消元}\n", 30 | "\\left[\n", 31 | "\\begin{array}{c c c c|c}\n", 32 | "1 & 2 & 2 & 2 & b_1 \\\\\n", 33 | "0 & 0 & 2 & 4 & b_2-2b_1 \\\\\n", 34 | "0 & 0 & 0 & 0 & b_3-b_2-b_1 \\\\\n", 35 | "\\end{array}\n", 36 | "\\right]\n", 37 | "$$\n", 38 | "\n", 39 | "显然,有解的必要条件为$b_3-b_2-b_1=0$。\n", 40 | "\n", 41 | "讨论$b$满足什么条件才能让方程$Ax=b$有解(solvability condition on b):当且仅当$b$属于$A$的列空间时。另一种描述:如果$A$的各行线性组合得到$0$行,则$b$端分量做同样的线性组合,结果也为$0$时,方程才有解。\n", 42 | "\n", 43 | "解法:令所有自由变量取$0$,则有$\n", 44 | "\\Big\\lbrace\n", 45 | "\\begin{eqnarray*}\n", 46 | "x_1 & + & 2x_3 & = & 1 \\\\\n", 47 | " & & 2x_3 & = & 3 \\\\\n", 48 | "\\end{eqnarray*}\n", 49 | "$\n", 50 | ",解得\n", 51 | "$\n", 52 | "\\Big\\lbrace\n", 53 | "\\begin{eqnarray*}\n", 54 | "x_1 & = & -2 \\\\\n", 55 | "x_3 & = & \\frac{3}{2} \\\\\n", 56 | "\\end{eqnarray*}\n", 57 | "$\n", 58 | ",代入$Ax=b$求得特解\n", 59 | "$\n", 60 | "x_p=\n", 61 | "\\begin{bmatrix}\n", 62 | "-2 \\\\ 0 \\\\ \\frac{3}{2} \\\\ 0\n", 63 | "\\end{bmatrix}\n", 64 | "$。\n", 65 | "\n", 66 | "令$Ax=b$成立的所有解:\n", 67 | "\n", 68 | "$$\n", 69 | "\\Big\\lbrace\n", 70 | "\\begin{eqnarray}\n", 71 | "A & x_p & = & b \\\\\n", 72 | "A & x_n & = & 0 \\\\\n", 73 | "\\end{eqnarray}\n", 74 | "\\quad\n", 75 | "\\underrightarrow{两式相加}\n", 76 | "\\quad\n", 77 | "A(x_p+x_n)=b\n", 78 | "$$\n", 79 | "\n", 80 | "即$Ax=b$的解集为其特解加上零空间,对本例有:\n", 81 | "$\n", 82 | "x_{complete}=\n", 83 | "\\begin{bmatrix}\n", 84 | "-2 \\\\ 0 \\\\ \\frac{3}{2} \\\\ 0\n", 85 | "\\end{bmatrix}\n", 86 | "+\n", 87 | "c_1\\begin{bmatrix}-2\\\\1\\\\0\\\\0\\\\\\end{bmatrix}\n", 88 | "+\n", 89 | "c_2\\begin{bmatrix}2\\\\0\\\\-2\\\\1\\\\\\end{bmatrix}\n", 90 | "$\n", 91 | "\n", 92 | "对于$m \\times n$矩阵$A$,有矩阵$A$的秩$r \\leq min(m, n)$\n", 93 | "\n", 94 | "列满秩$r=n$情况:\n", 95 | "$\n", 96 | "A=\n", 97 | "\\begin{bmatrix}\n", 98 | "1 & 3 \\\\\n", 99 | "2 & 1 \\\\\n", 100 | "6 & 1 \\\\\n", 101 | "5 & 1 \\\\\n", 102 | "\\end{bmatrix}\n", 103 | "$\n", 104 | ",$rank(A)=2$,要使$Ax=b, b \\neq 0$有非零解,$b$必须取$A$中各列的线性组合,此时A的零空间中只有$0$向量。\n", 105 | "\n", 106 | "行满秩$r=m$情况:\n", 107 | "$\n", 108 | "A=\n", 109 | "\\begin{bmatrix}\n", 110 | "1 & 2 & 6 & 5 \\\\\n", 111 | "3 & 1 & 1 & 1 \\\\\n", 112 | "\\end{bmatrix}\n", 113 | "$\n", 114 | ",$rank(A)=2$,$\\forall b \\in R^m都有x \\neq 0的解$,因为此时$A$的列空间为$R^m$,$b \\in R^m$恒成立,组成$A$的零空间的自由变量有n-r个。\n", 115 | "\n", 116 | "行列满秩情况:$r=m=n$,如\n", 117 | "$\n", 118 | "A=\n", 119 | "\\begin{bmatrix}\n", 120 | "1 & 2 \\\\\n", 121 | "3 & 4 \\\\\n", 122 | "\\end{bmatrix}\n", 123 | "$\n", 124 | ",则$A$最终可以化简为$R=I$,其零空间只包含$0$向量。\n", 125 | "\n", 126 | "总结:\n", 127 | "\n", 128 | "$$\\begin{array}{c|c|c|c}r=m=n&r=n\\lt m&r=m\\lt n&r\\lt m,r\\lt n\\\\R=I&R=\\begin{bmatrix}I\\\\0\\end{bmatrix}&R=\\begin{bmatrix}I&F\\end{bmatrix}&R=\\begin{bmatrix}I&F\\\\0&0\\end{bmatrix}\\\\1\\ solution&0\\ or\\ 1\\ solution&\\infty\\ solution&0\\ or\\ \\infty\\ solution\\end{array}$$" 129 | ] 130 | } 131 | ], 132 | "metadata": { 133 | "anaconda-cloud": {}, 134 | "kernelspec": { 135 | "display_name": "Python [default]", 136 | "language": "python", 137 | "name": "python3" 138 | }, 139 | "language_info": { 140 | "codemirror_mode": { 141 | "name": "ipython", 142 | "version": 3 143 | }, 144 | "file_extension": ".py", 145 | "mimetype": "text/x-python", 146 | "name": "python", 147 | "nbconvert_exporter": "python", 148 | "pygments_lexer": "ipython3", 149 | "version": "3.5.2" 150 | } 151 | }, 152 | "nbformat": 4, 153 | "nbformat_minor": 0 154 | } 155 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/02~矩阵消元.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二讲:矩阵消元\n", 8 | "\n", 9 | "这个方法最早由高斯提出,我们以前解方程组的时候都会使用,现在来看如何使用矩阵实现消元法。\n", 10 | "\n", 11 | "## 消元法\n", 12 | "\n", 13 | "有三元方程组$\\begin{cases}x&+2y&+z&=2\\\\3x&+8y&+z&=12\\\\&4y&+z&=2\\end{cases}$,对应的矩阵形式$Ax=b$为$\\begin{bmatrix}1&2&1\\\\3&8&1\\\\0&4&1\\end{bmatrix}\\begin{bmatrix}x\\\\y\\\\z\\end{bmatrix}=\\begin{bmatrix}2\\\\12\\\\2\\end{bmatrix}$。\n", 14 | "\n", 15 | "按照我们以前做消元法的思路:\n", 16 | "\n", 17 | "* 第一步,我们希望在第二个方程中消去$x$项,来操作系数矩阵$A=\\begin{bmatrix}\\underline{1}&2&1\\\\3&8&1\\\\0&4&1\\end{bmatrix}$,下划线的元素为第一步的主元(pivot):$\\begin{bmatrix}\\underline{1}&2&1\\\\3&8&1\\\\0&4&1\\end{bmatrix}\\xrightarrow{row_2-3row_1}\\begin{bmatrix}\\underline{1}&2&1\\\\0&2&-2\\\\0&4&1\\end{bmatrix}$\n", 18 | "\n", 19 | " 这里我们先不管$b$向量,等做完$A$的消元可以再做$b$的消元。(这是MATLAB等工具经常使用的算法。)\n", 20 | "* 第二步,我们希望在第三个方程中消去$y$项,现在第二行第一个非零元素成为了第二个主元:$\\begin{bmatrix}\\underline{1}&2&1\\\\0&\\underline{2}&-2\\\\0&4&1\\end{bmatrix}\\xrightarrow{row_3-2row_2}\\begin{bmatrix}\\underline{1}&2&1\\\\0&\\underline{2}&-2\\\\0&0&\\underline{5}\\end{bmatrix}$\n", 21 | " \n", 22 | " 注意到第三行消元过后仅剩一个非零元素,所以它就成为第三个主元。做到这里就算消元完成了。\n", 23 | "\n", 24 | "再来讨论一下消元失效的情形:首先,主元不能为零;其次,如果在消元时遇到主元位置为零,则需要交换行,使主元不为零;最后提一下,如果我们把第三个方程$z$前的系数成$-4$,会导致第二步消元时最后一行全部为零,则第三个主元就不存在了,至此消元不能继续进行了,这就是下一讲中涉及的不可逆情况。\n", 25 | "\n", 26 | "* 接下来就该回代(back substitution)了,这时我们在$A$矩阵后面加上$b$向量写成增广矩阵(augmented matrix)的形式:$\\left[\\begin{array}{c|c}A&b\\end{array}\\right]=\\left[\\begin{array}{ccc|c}1&2&1&2\\\\3&8&1&12\\\\0&4&1&2\\end{array}\\right]\\to\\left[\\begin{array}{ccc|c}1&2&1&2\\\\0&2&-2&6\\\\0&4&1&2\\end{array}\\right]\\to\\left[\\begin{array}{ccc|c}1&2&1&2\\\\0&2&-2&6\\\\0&0&5&-10\\end{array}\\right]$\n", 27 | "\n", 28 | " 不难看出,$z$的解已经出现了,此时方程组变为$\\begin{cases}x&+2y&+z&=2\\\\&2y&-2z&=6\\\\&&5z&=-10\\end{cases}$,从第三个方程求出$z=-2$,代入第二个方程求出$y=1$,在代入第一个方程求出$x=2$。\n", 29 | "\n", 30 | "## 消元矩阵\n", 31 | "\n", 32 | "上一讲我们学习了矩阵乘以向量的方法,有三个列向量的矩阵乘以另一个向量,按列的线性组合可以写作$\\Bigg[v_1\\ v_2\\ v_3\\Bigg]\\begin{bmatrix}3\\\\4\\\\5\\end{bmatrix}=3v_1+4v_2+5v_3$。\n", 33 | "\n", 34 | "但现在我们希望用矩阵乘法表示行操作,则有$\\begin{bmatrix}1&2&7\\end{bmatrix}\\begin{bmatrix}&row_1&\\\\&row_2&\\\\&row_3&\\end{bmatrix}=1row_1+2row_2+7row_3$。易看出这里是一个行向量从左边乘以矩阵,这个行向量按行操作矩阵的行向量,并将其合成为一个矩阵行向量的线性组合。\n", 35 | "\n", 36 | "介绍到这里,我们就可以将消元法所做的行操作写成向量乘以矩阵的形式了。\n", 37 | "\n", 38 | "* 消元法第一步操作为将第二行改成$row_2-3row_1$,其余两行不变,则有$\\begin{bmatrix}1&0&0\\\\-3&1&0\\\\0&0&1\\end{bmatrix}\\begin{bmatrix}1&2&1\\\\3&8&1\\\\0&4&1\\end{bmatrix}=\\begin{bmatrix}1&2&1\\\\0&2&-2\\\\0&4&1\\end{bmatrix}$(另外,如果三行都不变,消元矩阵就是单位矩阵$I=\\begin{bmatrix}1&0&0\\\\0&1&0\\\\0&0&1\\end{bmatrix}$,$I$之于矩阵运算相当于$1$之于四则运算。)这个消元矩阵我们记作$E_{21}$,即将第二行第一个元素变为零。\n", 39 | "\n", 40 | "* 接下来就是求$E_{32}$消元矩阵了,即将第三行第二个元素变为零,则$\\begin{bmatrix}1&0&0\\\\0&1&0\\\\0&-2&1\\end{bmatrix}\\begin{bmatrix}1&2&1\\\\0&2&-2\\\\0&4&1\\end{bmatrix}=\\begin{bmatrix}1&2&1\\\\0&2&-2\\\\0&0&5\\end{bmatrix}$。这就是消元所用的两个初等矩阵(elementary matrix)。\n", 41 | "\n", 42 | "* 最后,我们将这两步综合起来,即$E_{32}(E_{12}A)=U$,也就是说如果我们想从$A$矩阵直接得到$U$矩阵的话,只需要$(E_{32}E_{21})A$即可。注意,矩阵乘法虽然不能随意变动相乘次序,但是可以变动括号位置,也就是满足结合律(associative law),而结合律在矩阵运算中非常重要,很多定理的证明都需要巧妙的使用结合律。\n", 43 | "\n", 44 | "既然提到了消元用的初等矩阵,那我们再介绍一种用于置换两行的矩阵:置换矩阵(permutation matrix):例如$\\begin{bmatrix}0&1\\\\1&0\\end{bmatrix}\\begin{bmatrix}a&b\\\\c&d\\end{bmatrix}=\\begin{bmatrix}c&d\\\\a&b\\end{bmatrix}$,置换矩阵将原矩阵的两行做了互换。顺便提一下,如果我们希望交换两列,则有$\\begin{bmatrix}a&b\\\\c&d\\end{bmatrix}\\begin{bmatrix}0&1\\\\1&0\\end{bmatrix}=\\begin{bmatrix}b&a\\\\d&c\\end{bmatrix}$。\n", 45 | "\n", 46 | "我们现在能够将$A$通过行变换写成$U$,那么如何从$U$再变回$A$,也就是求消元的逆运算。对某些“坏”矩阵,并没有逆,而本讲的例子都是“好”矩阵。\n", 47 | "\n", 48 | "## 逆\n", 49 | "\n", 50 | "现在,我们以$E_{21}$为例,$\\Bigg[\\quad ?\\quad \\Bigg]\\begin{bmatrix}1&0&0\\\\-3&1&0\\\\0&0&1\\end{bmatrix}=\\begin{bmatrix}1&0&0\\\\0&1&0\\\\0&0&1\\end{bmatrix}$,什么矩阵可以取消这次行变换?这次变换是从第二行中减去三倍的第一行,那么其逆变换就是给第二行加上三倍的第一行,所以逆矩阵就是$\\begin{bmatrix}1&0&0\\\\3&1&0\\\\0&0&1\\end{bmatrix}$。\n", 51 | "\n", 52 | "我们把矩阵$E$的逆记作$E^{-1}$,所以有$E^{-1}E=I$。" 53 | ] 54 | } 55 | ], 56 | "metadata": { 57 | "anaconda-cloud": {}, 58 | "kernelspec": { 59 | "display_name": "Python [default]", 60 | "language": "python", 61 | "name": "python3" 62 | }, 63 | "language_info": { 64 | "codemirror_mode": { 65 | "name": "ipython", 66 | "version": 3 67 | }, 68 | "file_extension": ".py", 69 | "mimetype": "text/x-python", 70 | "name": "python", 71 | "nbconvert_exporter": "python", 72 | "pygments_lexer": "ipython3", 73 | "version": "3.5.2" 74 | } 75 | }, 76 | "nbformat": 4, 77 | "nbformat_minor": 0 78 | } 79 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/17~正交矩阵和 Gram-Schmidt 正交化法.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第十七讲:正交矩阵和 Gram-Schmidt 正交化法\n", 8 | "\n", 9 | "## 标准正交矩阵\n", 10 | "\n", 11 | "定义标准正交向量(orthonormal):$q_i^Tq_j=\\begin{cases}0\\quad i\\neq j\\\\1\\quad i=j\\end{cases}$\n", 12 | "\n", 13 | "我们将标准正交向量放入矩阵中,有$Q=\\Bigg[q_1 q_2 \\cdots q_n\\Bigg]$。\n", 14 | "\n", 15 | "上一讲我们研究了$A^A$的特性,现在来观察$Q^TQ=\\begin{bmatrix} & q_1^T & \\\\ & q_2^T & \\\\ & \\vdots & \\\\ & q_n^T & \\end{bmatrix}\\Bigg[q_1 q_2 \\cdots q_n\\Bigg]$\n", 16 | "\n", 17 | "根据标准正交向量的定义,计算$Q^TQ=\\begin{bmatrix}1&0&\\cdots&0\\\\0&1&\\cdots&0\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\0&0&\\cdots&1\\end{bmatrix}=I$,我们也把$Q$成为标准正交矩阵(orthonormal matrix)。\n", 18 | "\n", 19 | "特别的,当$Q$恰好是方阵时,由于正交性,易得$Q$是可逆的,又$Q^TQ=I$,所以$Q^T=Q^{-1}$。\n", 20 | "\n", 21 | "* 举个置换矩阵的例子:$Q=\\begin{bmatrix}0&1&0\\\\1&0&0\\\\0&0&1\\end{bmatrix}$,则$Q^T=\\begin{bmatrix}0&1&0\\\\0&0&1\\\\1&0&0\\end{bmatrix}$,易得$Q^TQ=I$。\n", 22 | "* 使用上一讲的例子$Q=\\begin{bmatrix}\\cos\\theta&-\\sin\\theta\\\\\\sin\\theta&\\cos\\theta\\end{bmatrix}$,列向量长度为$1$,且列向量相互正交。\n", 23 | "* 其他例子$Q=\\frac{1}{\\sqrt 2}\\begin{bmatrix}1&1\\\\1&-1\\end{bmatrix}$,列向量长度为$1$,且列向量相互正交。\n", 24 | "* 使用上一个例子的矩阵,令$Q'=c\\begin{bmatrix}Q&Q\\\\Q&-Q\\end{bmatrix}$,取合适的$c$另列向量长度为$1$也可以构造标准正交矩阵:$Q=\\frac{1}{2}\\begin{bmatrix}1&1&1&1\\\\1&-1&1&-1\\\\1&1&-1&-1\\\\1&-1&-1&1\\end{bmatrix}$,这种构造方法以阿德玛(Adhemar)命名,对$2, 4, 16, 64, \\cdots$阶矩阵有效。\n", 25 | "* 再来看一个例子,$Q=\\frac{1}{3}\\begin{bmatrix}1&-2&2\\\\2&-1&-2\\\\2&2&1\\end{bmatrix}$,列向量长度为$1$,且列向量相互正交。格拉姆-施密特正交化法的缺点在于,由于要求得单位向量,所以我们总是除以向量的长度,这导致标准正交矩阵中总是带有根号,而上面几个例子很少有根号。\n", 26 | "\n", 27 | "再来看标准正交化有什么好处,假设要做投影,将向量$b$投影在标准正交矩阵$Q$的列空间中,根据上一讲的公式得$P=Q(Q^TQ)^{-1}Q^T$,易得$P=QQ^T$。我们断言,当列向量为标准正交基时,$QQ^T$是投影矩阵。极端情况,假设矩阵是方阵,而其列向量是标准正交的,则其列空间就是整个向量空间,而投影整个空间的投影矩阵就是单位矩阵,此时$QQ^T=I$。可以验证一下投影矩阵的两个性质:$(QQ^T)^T=(Q^T)^TQ^T=QQ^T$,得证;$(QQ^T)^2=QQ^TQQ^T=Q(Q^TQ)Q^T=QQ^T$,得证。\n", 28 | "\n", 29 | "我们计算的$A^TA\\hat x=A^Tb$,现在变为$Q^TQ\\hat x=Q^Tb$,也就是$\\hat x=Q^Tb$,分解开来看就是 $\\underline{\\hat x_i=q_i^Tb}$,这个式子在很多数学领域都有重要作用。当我们知道标准正交基,则解向量第$i$个分量为基的第$i$个分量乘以$b$,在第$i$个基方向上的投影就等于$q_i^Tb$。\n", 30 | "\n", 31 | "## Gram-Schmidt正交化法\n", 32 | "\n", 33 | "我们有两个线性无关的向量$a, b$,先把它们化为正交向量$A, B$,再将它们单位化,变为单位正交向量$q_1=\\frac{A}{\\left\\|A\\right\\|}, q_2=\\frac{B}{\\left\\|B\\right\\|}$:\n", 34 | "\n", 35 | "* 我们取定$a$向量的方向,$a=A$;\n", 36 | "* 接下来将$b$投影在$A$的法方向上得到$B$,也就是求子空间投影一讲中,我们提到的误差向量$e=b-p$,即$B=b-\\frac{A^Tb}{A^TA}A$。检验一下$A\\bot B$,$A^TB=A^Tb-A^T\\frac{A^Tb}{A^TA}A=A^Tb-\\frac{A^TA}{A^TA}A^Tb=0$。($\\frac{A^Tb}{A^TA}A$就是$A\\hat x=p$。)\n", 37 | "\n", 38 | "如果我们有三个线性无关的向量$a, b, c$,则我们现需要求它们的正交向量$A, B, C$,再将它们单位化,变为单位正交向量$q_1=\\frac{A}{\\left\\|A\\right\\|}, q_2=\\frac{B}{\\left\\|B\\right\\|}, q_3=\\frac{C}{\\left\\|C\\right\\|}$:\n", 39 | "\n", 40 | "* 前两个向量我们已经得到了,我们现在需要求第三个向量同时正交于$A, B$;\n", 41 | "* 我们依然沿用上面的方法,从$c$中减去其在$A, B$上的分量,得到正交与$A, B$的$C$:$C=c-\\frac{A^Tc}{A^TA}A-\\frac{B^Tc}{B^TB}B$。\n", 42 | "\n", 43 | "现在我们试验一下推导出来的公式,$a=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}, b=\\begin{bmatrix}1\\\\0\\\\2\\end{bmatrix}$:\n", 44 | "\n", 45 | "* 则$A=a=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}$;\n", 46 | "* 根据公式有$B=a-hA$,$h$是比值$\\frac{A^Tb}{A^TA}=\\frac{3}{3}$,则$B=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}-\\frac{3}{3}\\begin{bmatrix}1\\\\0\\\\2\\end{bmatrix}=\\begin{bmatrix}0\\\\-1\\\\1\\end{bmatrix}$。验证一下正交性有$A\\cdot B=0$。\n", 47 | "* 单位化,$q_1=\\frac{1}{\\sqrt 3}\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix},\\quad q_2=\\frac{1}{\\sqrt 2}\\begin{bmatrix}1\\\\0\\\\2\\end{bmatrix}$,则标准正交矩阵为$Q=\\begin{bmatrix}\\frac{1}{\\sqrt 3}&0\\\\\\frac{1}{\\sqrt 3}&-\\frac{1}{\\sqrt 2}\\\\\\frac{1}{\\sqrt 3}&\\frac{1}{\\sqrt 2}\\end{bmatrix}$,对比原来的矩阵$D=\\begin{bmatrix}1&1\\\\1&0\\\\1&2\\end{bmatrix}$,有$D, Q$的列空间是相同的,我们只是将原来的基标准正交化了。\n", 48 | "\n", 49 | "我们曾经用矩阵的眼光审视消元法,有$A=LU$。同样的,我们也用矩阵表达标准正交化,$A=QR$。设矩阵$A$有两个列向量$\\Bigg[a_1 a_2\\Bigg]$,则标准正交化后有$\\Bigg[a_1 a_2\\Bigg]=\\Bigg[q_1 q_2\\Bigg]\\begin{bmatrix}a_1^Tq_1&a_2^Tq_1\\\\a_1^Tq_2&a_2^Tq_2\\end{bmatrix}$,而左下角的$a_1^Tq_2$始终为$0$,因为Gram-Schmidt正交化总是使得$a_1\\bot q_2$,后来构造的向量总是正交于先前的向量。所以这个$R$矩阵是一个上三角矩阵。" 50 | ] 51 | } 52 | ], 53 | "metadata": { 54 | "kernelspec": { 55 | "display_name": "Python 3", 56 | "language": "python", 57 | "name": "python3" 58 | }, 59 | "language_info": { 60 | "codemirror_mode": { 61 | "name": "ipython", 62 | "version": 3 63 | }, 64 | "file_extension": ".py", 65 | "mimetype": "text/x-python", 66 | "name": "python", 67 | "nbconvert_exporter": "python", 68 | "pygments_lexer": "ipython3", 69 | "version": "3.5.1" 70 | } 71 | }, 72 | "nbformat": 4, 73 | "nbformat_minor": 0 74 | } 75 | -------------------------------------------------------------------------------- /03~概率论与数理统计/常见概率分布/泊松分布.md: -------------------------------------------------------------------------------- 1 | # Uniform Distribution | 均匀分布 2 | 3 | 均匀分布式是定义在区间 $[a,b] (a0 97 | $$ 98 | 99 | 该分布记作 $\Gamma(\alpha, \beta)$,其中 $\alpha$ 称作形状参数,$\beta$ 称作尺度参数。其期望为 $\mathbb{E}[X]=\frac{\alpha}{\beta}$,方差 $\operatorname{Var}[X]=\frac{\alpha}{\beta^{2}}$。当 $\alpha \leq 1$ 时,$p(X ; \alpha, \beta)$ 为递减函数;当 $\alpha>1$ 时,$p(X ; \alpha, \beta)$ 为单峰函数。 100 | 101 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230522112118.png) 102 | 103 | 当 $\beta=n$ 时,伽玛分布就是 $Erlang$ 分布。当 $\alpha=1, \beta=\lambda$ 时,就是参数为 $\lambda$ 的指数分布。当 $\alpha=\frac{n}{2}, \beta=\frac{1}{2}$ 时,就是常用的卡方分布。 104 | 105 | 伽玛分布满足可加性原理,假设随机变量 $X_{1}, X_{2}, \cdots, X_{n}$ 相互独立并且都服从伽玛分布;$X_{i} \sim \Gamma\left(\alpha_{i}, \beta\right)$,则: 106 | 107 | $$ 108 | X_{1}+X_{2}+\cdots+X_{n} \sim \Gamma\left(\alpha_{1}+\alpha_{2}+\cdots+\alpha_{n}, \beta\right) 109 | $$ 110 | 111 | 我们同样可以用均匀分布来模拟伽玛分布: 112 | 113 | ```py 114 | def make_gamma(lmd,tm,k): 115 | ''' 116 | 用均匀分布模拟伽玛分布。lmd为 lambda 参数;tm 为时间;k 为 k 参数 117 | ''' 118 | t=np.random.uniform(0,tm,size=lmd*tm) # 获取 lmd*tm 个事件发生的时刻 119 | sorted_t=np.sort(t) #时刻升序排列 120 | delt_t=sorted_t[k:]-sorted_t[:-k] #间隔序列 121 | dist,edges=np.histogram(delt_t,bins="auto",density=True) 122 | x=edges[:-1] 123 | return x,dist,stats.gamma.pdf(x,loc=0,scale=1/lmd,a=k) #scale 为 1/lambda,a 为 k 124 | ``` 125 | 126 | # 贝塔分布 127 | 128 | 贝塔分布是定义在 $(0,1)$ 之间的连续概率分布。如果随机变量 $X$ 服从贝塔分布,则其概率密度函数为: 129 | 130 | $$ 131 | p(X, \alpha, \beta)=\frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha) \Gamma(\beta)} X^{\alpha-1}(1-X)^{\beta-1}=\frac{1}{B(\alpha, \beta)} X^{\alpha-1}(1-X)^{\beta-1}, \quad 0 \leq X<1 132 | $$ 133 | 134 | 上述分布记作 $\operatorname{Beta}(\alpha, \beta)$,贝塔分布的期望为 $\mathbb{E}[X]=\frac{\alpha}{\alpha+\beta}$,方差为 $\operatorname{Var}[X]=\frac{\alpha \beta}{(\alpha+\beta)^{2}(\alpha+\beta+1)}$。 135 | 136 | ![](https://ngte-superbed.oss-cn-beijing.aliyuncs.com/item/20230417210102.png) 137 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/29~相似矩阵和若尔当形.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十九讲:相似矩阵和若尔当形\n", 8 | "\n", 9 | "在本讲的开始,先接着上一讲来继续说一说正定矩阵。\n", 10 | "\n", 11 | "* 正定矩阵的逆矩阵有什么性质?我们将正定矩阵分解为$A=S\\Lambda S^{-1}$,引入其逆矩阵$A^{-1}=S\\Lambda^{-1}S^{-1}$,我们知道正定矩阵的特征值均为正值,所以其逆矩阵的特征值也必为正值(即原矩阵特征值的倒数)所以,正定矩阵的逆矩阵也是正定的。\n", 12 | "\n", 13 | "* 如果$A,\\ B$均为正定矩阵,那么$A+B$呢?我们可以从判定$x^T(A+B)x$入手,根据条件有$x^TAx>0,\\ x^TBx>0$,将两式相加即得到$x^T(A+B)x>0$。所以正定矩阵之和也是正定矩阵。\n", 14 | "\n", 15 | "* 再来看有$m\\times n$矩阵$A$,则$A^TA$具有什么性质?我们在投影部分经常使用$A^TA$,这个运算会得到一个对称矩阵,这个形式的运算用数字打比方就像是一个平方,用向量打比方就像是向量的长度平方,而对于矩阵,有$A^TA$正定:在式子两边分别乘向量及其转置得到$x^TA^TAx$,分组得到$(Ax)^T(Ax)$,相当于得到了向量$Ax$的长度平方,则$|Ax|^2\\geq0$。要保证模不为零,则需要$Ax$的零空间中仅有零向量,即$A$的各列线性无关($rank(A)=n$)即可保证$|Ax|^2>0$,$A^TA$正定。\n", 16 | "\n", 17 | "* 另外,在矩阵数值计算中,正定矩阵消元不需要进行“行交换”操作,也不必担心主元过小或为零,正定矩阵具有良好的计算性质。\n", 18 | "\n", 19 | "接下来进入本讲的正题。\n", 20 | "\n", 21 | "## 相似矩阵\n", 22 | "\n", 23 | "先列出定义:矩阵$A,\\ B$对于某矩阵$M$满足$B=M^{-1}AM$时,成$A,\\ B$互为相似矩阵。\n", 24 | "\n", 25 | "对于在对角化一讲(第二十二讲)中学过的式子$S^{-1}AS=\\Lambda$,则有$A$相似于$\\Lambda$。\n", 26 | "\n", 27 | "* 举个例子,$A=\\begin{bmatrix}2&1\\\\1&2\\end{bmatrix}$,容易通过其特征值得到相应的对角矩阵$\\Lambda=\\begin{bmatrix}3&0\\\\0&1\\end{bmatrix}$,取$M=\\begin{bmatrix}1&4\\\\0&1\\end{bmatrix}$,则$B=M^{-1}AM=\\begin{bmatrix}1&-4\\\\0&1\\end{bmatrix}\\begin{bmatrix}2&1\\\\1&2\\end{bmatrix}\\begin{bmatrix}1&4\\\\0&1\\end{bmatrix}=\\begin{bmatrix}-2&-15\\\\1&6\\end{bmatrix}$。\n", 28 | "\n", 29 | " 我们来计算这几个矩阵的的特征值(利用迹与行列式的性质),$\\lambda_{\\Lambda}=3,\\ 1$、$\\lambda_A=3,\\ 1$、$\\lambda_B=3,\\ 1$。\n", 30 | "\n", 31 | "所以,相似矩阵有相同的特征值。\n", 32 | "\n", 33 | "* 继续上面的例子,特征值为$3,\\ 1$的这一族矩阵都是相似矩阵,如$\\begin{bmatrix}3&7\\\\0&1\\end{bmatrix}$、$\\begin{bmatrix}1&7\\\\0&3\\end{bmatrix}$,其中最特殊的就是$\\Lambda$。\n", 34 | "\n", 35 | "现在我们来证明这个性质,有$Ax=\\lambda x,\\ B=M^{-1}AM$,第一个式子化为$AMM^{-1}x=\\lambda x$,接着两边同时左乘$M^{-1}$得$M^{-1}AMM^{-1}x=\\lambda M^{-1}x$,进行适当的分组得$\\left(M^{-1}AM\\right)M^{-1}x=\\lambda M^{-1}x$即$BM^{-1}x=\\lambda M^{-1}x$。\n", 36 | "\n", 37 | "$BM^{-1}=\\lambda M^{-1}x$可以解读成矩阵$B$与向量$M^{-1}x$之积等于$\\lambda$与向量$M^{-1}x$之积,也就是$B$的仍为$\\lambda$,而特征向量变为$M^{-1}x$。\n", 38 | "\n", 39 | "以上就是我们得到的一族特征值为$3,\\ 1$的矩阵,它们具有相同的特征值。接下来看特征值重复时的情形。\n", 40 | "\n", 41 | "* 特征值重复可能会导致特征向量短缺,来看一个例子,设$\\lambda_1=\\lambda_2=4$,写出具有这种特征值的矩阵中的两个$\\begin{bmatrix}4&0\\\\0&4\\end{bmatrix}$,$\\begin{bmatrix}4&1\\\\0&4\\end{bmatrix}$。其实,具有这种特征值的矩阵可以分为两族,第一族仅有一个矩阵$\\begin{bmatrix}4&0\\\\0&4\\end{bmatrix}$,它只与自己相似(因为$M^{-1}\\begin{bmatrix}4&0\\\\0&4\\end{bmatrix}M=4M^{-1}IM=4I=\\begin{bmatrix}4&0\\\\0&4\\end{bmatrix}$,所以无论$M$如何取值该对角矩阵都只与自己相似);另一族就是剩下的诸如$\\begin{bmatrix}4&1\\\\0&4\\end{bmatrix}$的矩阵,它们都是相似的。在这个“大家族”中,$\\begin{bmatrix}4&1\\\\0&4\\end{bmatrix}$是“最好”的一个矩阵,称为若尔当形。\n", 42 | "\n", 43 | "若尔当形在过去是线性代数的核心知识,但现在不是了(现在是下一讲的奇异值分解),因为它并不容易计算。\n", 44 | "\n", 45 | "* 继续上面的例子,我们在在出几个这一族的矩阵$\\begin{bmatrix}4&1\\\\0&4\\end{bmatrix},\\ \\begin{bmatrix}5&1\\\\-1&3\\end{bmatrix},\\ \\begin{bmatrix}4&0\\\\17&4\\end{bmatrix}$,我们总是可以构造出一个满足$trace(A)=8,\\ \\det A=16$的矩阵,这个矩阵总是在这一个“家族”中。\n", 46 | "\n", 47 | "## 若尔当形\n", 48 | "\n", 49 | "再来看一个更加“糟糕”的矩阵:\n", 50 | "\n", 51 | "* 矩阵$\\begin{bmatrix}0&1&0&0\\\\0&0&1&0\\\\0&0&0&0\\\\0&0&0&0\\end{bmatrix}$,其特征值为四个零。很明显矩阵的秩为$2$,所以其零空间的维数为$4-2=2$,即该矩阵有两个特征向量。可以发现该矩阵在主对角线的上方有两个$1$,在对角线上每增加一个$1$,特征向量个个数就减少一个。\n", 52 | "\n", 53 | "* 令一个例子,$\\begin{bmatrix}0&1&0&0\\\\0&0&0&0\\\\0&0&0&1\\\\0&0&0&0\\end{bmatrix}$,从特征向量的数目看来这两个矩阵是相似的,其实不然。\n", 54 | "\n", 55 | " 若尔当认为第一个矩阵是由一个$3\\times 3$的块与一个$1\\times 1$的块组成的 $\\left[\\begin{array}{ccc|c}0&1&0&0\\\\0&0&0&0\\\\0&0&0&1\\\\\\hline0&0&0&0\\end{array}\\right]$,而第二个矩阵是由两个$2\\times 2$矩阵组成的$\\left[\\begin{array}{cc|cc}0&1&0&0\\\\0&0&0&0\\\\\\hline0&0&0&1\\\\0&0&0&0\\end{array}\\right]$,这些分块被称为若尔当块。\n", 56 | " \n", 57 | "若尔当块的定义型为$J_i=\\begin{bmatrix}\\lambda_i&1&&\\cdots&\\\\&\\lambda_i&1&\\cdots&\\\\&&\\lambda_i&\\cdots&\\\\\\vdots&\\vdots&\\vdots&\\ddots&\\\\&&&&\\lambda_i\\end{bmatrix}$,它的对角线上只为同一个数,仅有一个特征向量。\n", 58 | "\n", 59 | "所有有,每一个矩阵$A$都相似于一个若尔当矩阵,型为$J=\\left[\\begin{array}{c|c|c|c}J_1&&&\\\\\\hline&J_2&&\\\\\\hline&&\\ddots&\\\\\\hline&&&J_d\\end{array}\\right]$。注意,对角线上方还有$1$。若尔当块的个数即为矩阵特征值的个数。\n", 60 | "\n", 61 | "在矩阵为“好矩阵”的情况下,$n$阶矩阵将有$n$个不同的特征值,那么它可以对角化,所以它的若尔当矩阵就是$\\Lambda$,共$n$个特征向量,有$n$个若尔当块。" 62 | ] 63 | } 64 | ], 65 | "metadata": { 66 | "kernelspec": { 67 | "display_name": "Python 3", 68 | "language": "python", 69 | "name": "python3" 70 | }, 71 | "language_info": { 72 | "codemirror_mode": { 73 | "name": "ipython", 74 | "version": 3 75 | }, 76 | "file_extension": ".py", 77 | "mimetype": "text/x-python", 78 | "name": "python", 79 | "nbconvert_exporter": "python", 80 | "pygments_lexer": "ipython3", 81 | "version": "3.5.1" 82 | } 83 | }, 84 | "nbformat": 4, 85 | "nbformat_minor": 0 86 | } 87 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/11~矩阵空间、秩1矩阵和小世界图.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第十一讲:矩阵空间、秩1矩阵和小世界图\n", 8 | "\n", 9 | "## 矩阵空间\n", 10 | "\n", 11 | "接上一讲,使用$3 \\times 3$矩阵举例,其矩阵空间记为$M$。\n", 12 | "\n", 13 | "则$M$的一组基为:\n", 14 | "$\n", 15 | "\\begin{bmatrix}\n", 16 | "1 & 0 & 0 \\\\\n", 17 | "0 & 0 & 0 \\\\\n", 18 | "0 & 0 & 0 \\\\\n", 19 | "\\end{bmatrix}\n", 20 | "\\begin{bmatrix}\n", 21 | "0 & 1 & 0 \\\\\n", 22 | "0 & 0 & 0 \\\\\n", 23 | "0 & 0 & 0 \\\\\n", 24 | "\\end{bmatrix}\n", 25 | "\\begin{bmatrix}\n", 26 | "0 & 0 & 1 \\\\\n", 27 | "0 & 0 & 0 \\\\\n", 28 | "0 & 0 & 0 \\\\\n", 29 | "\\end{bmatrix} \\\\\n", 30 | "\\begin{bmatrix}\n", 31 | "0 & 0 & 0 \\\\\n", 32 | "1 & 0 & 0 \\\\\n", 33 | "0 & 0 & 0 \\\\\n", 34 | "\\end{bmatrix}\n", 35 | "\\begin{bmatrix}\n", 36 | "0 & 0 & 0 \\\\\n", 37 | "0 & 1 & 0 \\\\\n", 38 | "0 & 0 & 0 \\\\\n", 39 | "\\end{bmatrix}\n", 40 | "\\begin{bmatrix}\n", 41 | "0 & 0 & 0 \\\\\n", 42 | "0 & 0 & 1 \\\\\n", 43 | "0 & 0 & 0 \\\\\n", 44 | "\\end{bmatrix} \\\\\n", 45 | "\\begin{bmatrix}\n", 46 | "0 & 0 & 0 \\\\\n", 47 | "0 & 0 & 0 \\\\\n", 48 | "1 & 0 & 0 \\\\\n", 49 | "\\end{bmatrix}\n", 50 | "\\begin{bmatrix}\n", 51 | "0 & 0 & 0 \\\\\n", 52 | "0 & 0 & 0 \\\\\n", 53 | "0 & 1 & 0 \\\\\n", 54 | "\\end{bmatrix}\n", 55 | "\\begin{bmatrix}\n", 56 | "0 & 0 & 0 \\\\\n", 57 | "0 & 0 & 0 \\\\\n", 58 | "0 & 0 & 1 \\\\\n", 59 | "\\end{bmatrix} \\\\\n", 60 | "$\n", 61 | "\n", 62 | "易得,$dim M=9$。\n", 63 | "\n", 64 | "所以可以得出,对上讲中的三阶对称矩阵空间有$dim S=6$、上三角矩阵空间有$dim U=6$、对角矩阵空间有$dim D=3$\n", 65 | "\n", 66 | "求并(intersect):$S \\cup U=D, dim(S \\cup U)=9$;\n", 67 | "\n", 68 | "求交(sum):$S \\cap U=M, dim(S \\cap U)=3$;\n", 69 | "\n", 70 | "可以看出:$dim S + dim U=12=dim(S \\cup U) + dim(S \\cap U)$。\n", 71 | "\n", 72 | "另一个例子来自微分方程:\n", 73 | "\n", 74 | "$\\frac{d^2y}{dx^2}+y=0$,即$y''+y=0$\n", 75 | "\n", 76 | "方程的解有:$y=\\cos{x}, \\quad y=\\sin{x}, \\quad y=e^{ix}, \\quad y=e^{-ix}$等等($e^{ix}=\\cos{x}+i\\sin{x}, \\quad e^{-ix}=\\cos{x}-i\\sin{x}$)\n", 77 | "\n", 78 | "而该方程的所有解:$y=c_1 \\cos{x} + c_2 \\sin{x}$。\n", 79 | "\n", 80 | "所以,该方程的零空间的一组基为$\\cos{x}, \\sin{x}$,零空间的维数为$2$。同理$e^{ix}, e^{-ix}$可以作为另一组基。\n", 81 | "\n", 82 | "## 秩一矩阵\n", 83 | "\n", 84 | "$2 \\times 3$矩阵$A=\\begin{bmatrix}1&4&5\\\\2&8&10\\end{bmatrix}=\\begin{bmatrix}1\\\\2\\end{bmatrix}\\begin{bmatrix}1&4&5\\end{bmatrix}$。\n", 85 | "\n", 86 | "且$dimC(A)=1=dimC(A^T)$,所有的秩一矩阵都可以划为$A=UV^T$的形式,这里的$U, V$均为列向量。\n", 87 | "\n", 88 | "秩一矩阵类似“积木”,可以搭建任何矩阵,如对于一个$5 \\times 17$秩为$4$的矩阵,只需要$4$个秩一矩阵就可以组合出来。\n", 89 | "\n", 90 | "令$M$代表所有$5 \\times 17$,$M$中所有秩$4$矩阵组成的集合并不是一个子空间,通常两个秩四矩阵相加,其结果并不是秩四矩阵。\n", 91 | "\n", 92 | "现在,在$\\mathbb{R}^4$空间中有向量$v=\\begin{bmatrix}v_1\\\\v_2\\\\v_3\\\\v_4\\end{bmatrix}$,取$\\mathbb{R}^4$中满足$v_1+v_2+v_3+v_4=0$的所有向量组成一个向量空间$S$,则$S$是一个向量子空间。\n", 93 | "\n", 94 | "易看出,不论是使用系数乘以该向量,或是用两个满足条件的向量相加,其结果仍然落在分量和为零的向量空间中。\n", 95 | "\n", 96 | "求$S$的维数:\n", 97 | "\n", 98 | "从另一个角度看,$v_1+v_2+v_3+v_4=0$等价于$\\begin{bmatrix}1&1&1&1\\end{bmatrix}\\begin{bmatrix}v_1\\\\v_2\\\\v_3\\\\v_4\\end{bmatrix}=0$,则$S$就是$A=\\begin{bmatrix}1&1&1&1\\end{bmatrix}$的零空间。\n", 99 | "\n", 100 | "$rank(A)=1$,则对其零空间有$rank(N(A))=n-r=3=dim N(A)$,则$S$的维数是$3$。\n", 101 | "\n", 102 | "顺便看一下$1 \\times 4$矩阵$A$的四个基本子空间:\n", 103 | "\n", 104 | "行空间:$dim C(A^T)=1$,其中的一组基是$\\begin{bmatrix}1\\\\1\\\\1\\\\1\\end{bmatrix}$;\n", 105 | "\n", 106 | "零空间:$dim N(A)=3$,其中的一组基是$\\begin{bmatrix}-1\\\\1\\\\0\\\\0\\end{bmatrix}\\begin{bmatrix}-1\\\\0\\\\1\\\\0\\end{bmatrix}\\begin{bmatrix}-1\\\\0\\\\0\\\\1\\end{bmatrix}$\n", 107 | "\n", 108 | "列空间:$dim C(A)=1$,其中一组基是$\\begin{bmatrix}1\\end{bmatrix}$,可以看出列空间就是整个$\\mathbb{R}^1$空间。\n", 109 | "\n", 110 | "左零空间:$dim N(A^T)=0$,因为$A$转置后没有非零的$v$可以使$Av=0$成立,就是$\\begin{bmatrix}0\\end{bmatrix}$。\n", 111 | "\n", 112 | "综上,$dim C(A^T)+dim N(A)=4=n, dim C(A)+dim N(A^T)=1=m$\n", 113 | "\n", 114 | "## 小世界图\n", 115 | "\n", 116 | "图(graph)由节点(node)与边(edge)组成。\n", 117 | "\n", 118 | "假设,每个人是图中的一个节点,如果两个人为朋友关系,则在这两个人的节点间添加一条边,通常来说,从一个节点到另一个节点只需要不超过$6$步(即六条边)即可到达。" 119 | ] 120 | } 121 | ], 122 | "metadata": { 123 | "kernelspec": { 124 | "display_name": "Python 3", 125 | "language": "python", 126 | "name": "python3" 127 | }, 128 | "language_info": { 129 | "codemirror_mode": { 130 | "name": "ipython", 131 | "version": 3 132 | }, 133 | "file_extension": ".py", 134 | "mimetype": "text/x-python", 135 | "name": "python", 136 | "nbconvert_exporter": "python", 137 | "pygments_lexer": "ipython3", 138 | "version": "3.5.1" 139 | } 140 | }, 141 | "nbformat": 4, 142 | "nbformat_minor": 0 143 | } 144 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/07~求解 $Ax=0$,主变量,特解.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第七讲:求解 $Ax=0$,主变量,特解\n", 8 | "\n", 9 | "举例:$3 \\times 4$矩阵\n", 10 | "$\n", 11 | "A=\n", 12 | "\\begin{bmatrix}\n", 13 | "1 & 2 & 2 & 2\\\\\n", 14 | "2 & 4 & 6 & 8\\\\\n", 15 | "3 & 6 & 8 & 10\\\\\n", 16 | "\\end{bmatrix}\n", 17 | "$,求$Ax=0$的特解:\n", 18 | "\n", 19 | "找出主变量(pivot variable):\n", 20 | "$$\n", 21 | "A=\n", 22 | "\\begin{bmatrix}\n", 23 | "1 & 2 & 2 & 2\\\\\n", 24 | "2 & 4 & 6 & 8\\\\\n", 25 | "3 & 6 & 8 & 10\\\\\n", 26 | "\\end{bmatrix}\n", 27 | "\\underrightarrow{消元}\n", 28 | "\\begin{bmatrix}\n", 29 | "\\underline{1} & 2 & 2 & 2\\\\\n", 30 | "0 & 0 & \\underline{2} & 4\\\\\n", 31 | "0 & 0 & 0 & 0\\\\\n", 32 | "\\end{bmatrix}\n", 33 | "=U\n", 34 | "$$\n", 35 | "\n", 36 | "主变量(pivot variable,下划线元素)的个数为2,即矩阵$A$的秩(rank)为2,即$r=2$。\n", 37 | "\n", 38 | "主变量所在的列为主列(pivot column),其余列为自由列(free column)。\n", 39 | "\n", 40 | "自由列中的变量为自由变量(free variable),自由变量的个数为$n-r=4-2=2$。\n", 41 | "\n", 42 | "通常,给自由列变量赋值,去求主列变量的值。如,令$x_2=1, x_4=0$求得特解\n", 43 | "$x=c_1\\begin{bmatrix}-2\\\\1\\\\0\\\\0\\\\\\end{bmatrix}$;\n", 44 | "再令$x_2=0, x_4=1$求得特解\n", 45 | "$x=c_2\\begin{bmatrix}2\\\\0\\\\-2\\\\1\\\\\\end{bmatrix}$。\n", 46 | "\n", 47 | "该例还能进一步简化,即将$U$矩阵化简为$R$矩阵(Reduced row echelon form),即简化行阶梯形式。\n", 48 | "\n", 49 | "在简化行阶梯形式中,主元上下的元素都是$0$:\n", 50 | "$$\n", 51 | "U=\n", 52 | "\\begin{bmatrix}\n", 53 | "\\underline{1} & 2 & 2 & 2\\\\\n", 54 | "0 & 0 & \\underline{2} & 4\\\\\n", 55 | "0 & 0 & 0 & 0\\\\\n", 56 | "\\end{bmatrix}\n", 57 | "\\underrightarrow{化简}\n", 58 | "\\begin{bmatrix}\n", 59 | "\\underline{1} & 2 & 0 & -2\\\\\n", 60 | "0 & 0 & \\underline{1} & 2\\\\\n", 61 | "0 & 0 & 0 & 0\\\\\n", 62 | "\\end{bmatrix}\n", 63 | "=R\n", 64 | "$$\n", 65 | "\n", 66 | "将$R$矩阵中的主变量放在一起,自由变量放在一起(列交换),得到\n", 67 | "\n", 68 | "$$\n", 69 | "R=\n", 70 | "\\begin{bmatrix}\n", 71 | "\\underline{1} & 2 & 0 & -2\\\\\n", 72 | "0 & 0 & \\underline{1} & 2\\\\\n", 73 | "0 & 0 & 0 & 0\\\\\n", 74 | "\\end{bmatrix}\n", 75 | "\\underrightarrow{列交换}\n", 76 | "\\left[\n", 77 | "\\begin{array}{c c | c c}\n", 78 | "1 & 0 & 2 & -2\\\\\n", 79 | "0 & 1 & 0 & 2\\\\\n", 80 | "\\hline\n", 81 | "0 & 0 & 0 & 0\\\\\n", 82 | "\\end{array}\n", 83 | "\\right]\n", 84 | "=\n", 85 | "\\begin{bmatrix}\n", 86 | "I & F \\\\\n", 87 | "0 & 0 \\\\\n", 88 | "\\end{bmatrix}\n", 89 | "\\textrm{,其中}I\\textrm{为单位矩阵,}F\\textrm{为自由变量组成的矩阵}\n", 90 | "$$\n", 91 | "\n", 92 | "计算零空间矩阵$N$(nullspace matrix),其列为特解,有$RN=0$。\n", 93 | "\n", 94 | "$$\n", 95 | "x_{pivot}=-Fx_{free} \\\\\n", 96 | "\\begin{bmatrix}\n", 97 | "I & F \\\\\n", 98 | "\\end{bmatrix}\n", 99 | "\\begin{bmatrix}\n", 100 | "x_{pivot} \\\\\n", 101 | "x_{free} \\\\\n", 102 | "\\end{bmatrix}=0 \\\\\n", 103 | "N=\\begin{bmatrix}\n", 104 | "-F \\\\\n", 105 | "I \\\\\n", 106 | "\\end{bmatrix}\n", 107 | "$$\n", 108 | "\n", 109 | "在本例中\n", 110 | "$\n", 111 | "N=\n", 112 | "\\begin{bmatrix}\n", 113 | "-2 & 2 \\\\\n", 114 | "0 & -2 \\\\\n", 115 | "1 & 0 \\\\\n", 116 | "0 & 1 \\\\\n", 117 | "\\end{bmatrix}\n", 118 | "$,与上面求得的两个$x$特解一致。\n", 119 | "\n", 120 | "另一个例子,矩阵\n", 121 | "$\n", 122 | "A=\n", 123 | "\\begin{bmatrix}\n", 124 | "1 & 2 & 3 \\\\\n", 125 | "2 & 4 & 6 \\\\\n", 126 | "2 & 6 & 8 \\\\\n", 127 | "2 & 8 & 10 \\\\\n", 128 | "\\end{bmatrix}\n", 129 | "\\underrightarrow{消元}\n", 130 | "\\begin{bmatrix}\n", 131 | "1 & 2 & 3 \\\\\n", 132 | "0 & 2 & 2 \\\\\n", 133 | "0 & 0 & 0 \\\\\n", 134 | "0 & 0 & 0 \\\\\n", 135 | "\\end{bmatrix}\n", 136 | "\\underrightarrow{化简}\n", 137 | "\\begin{bmatrix}\n", 138 | "1 & 0 & 1 \\\\\n", 139 | "0 & 1 & 1 \\\\\n", 140 | "0 & 0 & 0 \\\\\n", 141 | "0 & 0 & 0 \\\\\n", 142 | "\\end{bmatrix}\n", 143 | "=R\n", 144 | "$\n", 145 | "\n", 146 | "矩阵的秩仍为$r=2$,有$2$个主变量,$1$个自由变量。\n", 147 | "\n", 148 | "同上一例,取自由变量为$x_3=1$,求得特解\n", 149 | "$\n", 150 | "x=c\n", 151 | "\\begin{bmatrix}\n", 152 | "-1 \\\\\n", 153 | "-1 \\\\\n", 154 | "1 \\\\\n", 155 | "\\end{bmatrix}\n", 156 | "$" 157 | ] 158 | } 159 | ], 160 | "metadata": { 161 | "kernelspec": { 162 | "display_name": "Python [default]", 163 | "language": "python", 164 | "name": "python3" 165 | }, 166 | "language_info": { 167 | "codemirror_mode": { 168 | "name": "ipython", 169 | "version": 3 170 | }, 171 | "file_extension": ".py", 172 | "mimetype": "text/x-python", 173 | "name": "python", 174 | "nbconvert_exporter": "python", 175 | "pygments_lexer": "ipython3", 176 | "version": "3.5.2" 177 | } 178 | }, 179 | "nbformat": 4, 180 | "nbformat_minor": 0 181 | } 182 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/14~正交向量与子空间.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第十四讲:正交向量与子空间\n", 8 | "\n", 9 | "在四个基本子空间中,提到对于秩为r的$m \\times n$矩阵,其行空间($dim C(A^T)=r$)与零空间($dim N(A)=n-r$)同属于$\\mathbb{R}^n$空间,其列空间($dim C(A)=r$)与左零空间($dim N(A^T)$=m-r)同属于$\\mathbb{R}^m$空间。\n", 10 | "\n", 11 | "对于向量$x, y$,当$x^T \\cdot y=0$即$x_1y_1+x_2y_x+\\cdots+x_ny_n=0$时,有向量$x, y$正交(vector orthogonal)。\n", 12 | "\n", 13 | "毕达哥拉斯定理(Pythagorean theorem)中提到,直角三角形的三条边满足:\n", 14 | "\n", 15 | "$$\n", 16 | "\\begin{aligned}\n", 17 | "\\left\\|\\overrightarrow{x}\\right\\|^2+\\left\\|\\overrightarrow{y}\\right\\|^2 &= \\left\\|\\overrightarrow{x+y}\\right\\|^2 \\\\\n", 18 | "x^Tx+y^Ty &= (x+y)^T(x+y) \\\\ \n", 19 | "x^Tx+y^Ty &= x^Tx+y^Ty+x^Ty+y^Tx \\\\\n", 20 | "0 &= x^Ty+y^Tx \\qquad 对于向量点乘,x^Ty=y^Tx \\\\\n", 21 | "0 &= 2x^Ty \\\\\n", 22 | "x^Ty &=0\n", 23 | "\\end{aligned}\n", 24 | "$$\n", 25 | "\n", 26 | "由此得出,两正交向量的点积为$0$。另外,$x, y$可以为$0$向量,由于$0$向量与任意向量的点积均为零,所以$0$向量与任意向量正交。\n", 27 | "\n", 28 | "举个例子:\n", 29 | "$x=\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}, y=\\begin{bmatrix}2\\\\-1\\\\0\\end{bmatrix}, x+y=\\begin{bmatrix}3\\\\1\\\\3\\end{bmatrix}$,有$\\left\\| \\overrightarrow{x} \\right\\|^2=14, \\left\\| \\overrightarrow{y} \\right\\|^2=5, \\left\\| \\overrightarrow{x+y} \\right\\|^2=19$,而$x^Ty=1\\times2+2\\times (-1)+3\\times0=0$。\n", 30 | "\n", 31 | "向量$S$与向量$T$正交,则意味着$S$中的每一个向量都与$T$中的每一个向量正交。若两个子空间正交,则它们一定不会相交于某个非零向量。\n", 32 | "\n", 33 | "现在观察行空间与零空间,零空间是$Ax=0$的解,即$x$若在零空间,则$Ax$为零向量;\n", 34 | "\n", 35 | "而对于行空间,有 $\n", 36 | "\\begin{bmatrix}row_1\\\\row_2\\\\ \\vdots \\\\row_m\\end{bmatrix}\n", 37 | "\\Bigg[x\\Bigg]=\n", 38 | "\\begin{bmatrix}0\\\\0\\\\ \\vdots\\\\ 0\\end{bmatrix}\n", 39 | "$,可以看出:\n", 40 | "$$\n", 41 | "\\begin{bmatrix}row_1\\end{bmatrix}\\Bigg[x\\Bigg]=0 \\\\\n", 42 | "\\begin{bmatrix}row_2\\end{bmatrix}\\Bigg[x\\Bigg]=0 \\\\\n", 43 | "\\vdots \\\\\n", 44 | "\\begin{bmatrix}row_m\\end{bmatrix}\\Bigg[x\\Bigg]=0 \\\\\n", 45 | "$$\n", 46 | "\n", 47 | "所以这个等式告诉我们,$x$同$A$中的所有行正交;\n", 48 | "\n", 49 | "接下来还验证$x$是否与$A$中各行的线性组合正交,\n", 50 | "$\n", 51 | "\\begin{cases}\n", 52 | "c_1(row_1)^Tx=0 \\\\\n", 53 | "c_2(row_2)^Tx=0 \\\\\n", 54 | "\\vdots \\\\\n", 55 | "c_n(row_m)^Tx=0 \\\\\n", 56 | "\\end{cases}\n", 57 | "$,各式相加得$(c_1row_1+c_2row_2+\\cdots+c_nrow_m)^Tx=0$,得证。\n", 58 | "\n", 59 | "我们可以说,行空间与零空间将$\\mathbb{R}^n$分割为两个正交的子空间,同样的,列空间与左零空间将$\\mathbb{R}^m$分割为两个正交的子空间。\n", 60 | "\n", 61 | "举例,$A=\\begin{bmatrix}1&2&5\\\\2&4&10\\end{bmatrix}$,则可知$m=2, n=3, rank(A)=1, dim N(A)=2$。\n", 62 | "\n", 63 | "有$Ax=\\begin{bmatrix}1&2&5\\\\2&4&10\\end{bmatrix}\\begin{bmatrix}x_1\\\\x_2\\\\x_3\\end{bmatrix}=\\begin{bmatrix}0\\\\0\\end{bmatrix}$,解得零空间的一组基$x_1=\\begin{bmatrix}-2\\\\1\\\\0\\end{bmatrix}\\quad x_2=\\begin{bmatrix}-5\\\\0\\\\1\\end{bmatrix}$。\n", 64 | "\n", 65 | "而行空间的一组基为$r=\\begin{bmatrix}1\\\\2\\\\5\\end{bmatrix}$,零空间与行空间正交,在本例中行空间也是零空间的法向量。\n", 66 | "\n", 67 | "补充一点,我们把行空间与零空间称为$n$维空间里的正交补(orthogonal complement),即零空间包含了所有与行空间正交的向量;同理列空间与左零空间为$m$维空间里的正交补,即左零空间包含了所有与零空间正交的向量。\n", 68 | "\n", 69 | "接下来看长方矩阵,$m>n$。对于这种矩阵,$Ax=b$中经常混入一些包含“坏数据”的方程,虽然可以通过筛选的方法去掉一些我们不希望看到的方程,但是这并不是一个稳妥的方法。\n", 70 | "\n", 71 | "于是,我们引入一个重要的矩阵:$A^TA$。这是一个$n \\times m$矩阵点乘$m \\times n$矩阵,其结果是一个$n \\times n$矩阵,应该注意的是,这也是一个对称矩阵,证明如下:\n", 72 | "\n", 73 | "$$\n", 74 | "(A^TA)^T=A^T(A^T)^T=A^TA\n", 75 | "$$\n", 76 | "\n", 77 | "这一章节的核心就是$A^TAx=A^Tb$,这个变换可以将“坏方程组”变为“好方程组”。\n", 78 | "\n", 79 | "举例,有$\\begin{bmatrix}1&1\\\\1&2\\\\1&5\\end{bmatrix}\\begin{bmatrix}x_1\\\\x_2\\end{bmatrix}=\\begin{bmatrix}b_1\\\\b_2\\\\b_3\\end{bmatrix}$,只有当$\\begin{bmatrix}b_1\\\\b_2\\\\b_3\\end{bmatrix}$在矩阵的列空间时,方程才有解。\n", 80 | "\n", 81 | "现在来看$\\begin{bmatrix}1&1&1\\\\1&2&5\\end{bmatrix}\\begin{bmatrix}1&1\\\\1&2\\\\1&5\\end{bmatrix}=\\begin{bmatrix}3&8\\\\8&30\\end{bmatrix}$,可以看出此例中$A^TA$是可逆的。然而并非所有$A^TA$都是可逆的,如$\\begin{bmatrix}1&1&1\\\\3&3&3\\end{bmatrix}\\begin{bmatrix}1&3\\\\1&3\\\\1&3\\end{bmatrix}=\\begin{bmatrix}3&9\\\\9&27\\end{bmatrix}$(注意到这是两个秩一矩阵相乘,其结果秩不会大于一)\n", 82 | "\n", 83 | "先给出结论:\n", 84 | "\n", 85 | "$$\n", 86 | "N(A^TA)=N(A)\\\\\n", 87 | "rank(A^TA)=rank(A)\\\\\n", 88 | "A^TA可逆当且仅当N(A)为零向量,即A的列线性无关\\\\\n", 89 | "$$\n", 90 | "\n", 91 | "下一讲涉及投影,很重要。" 92 | ] 93 | } 94 | ], 95 | "metadata": { 96 | "anaconda-cloud": {}, 97 | "kernelspec": { 98 | "display_name": "Python 3", 99 | "language": "python", 100 | "name": "python3" 101 | }, 102 | "language_info": { 103 | "codemirror_mode": { 104 | "name": "ipython", 105 | "version": 3 106 | }, 107 | "file_extension": ".py", 108 | "mimetype": "text/x-python", 109 | "name": "python", 110 | "nbconvert_exporter": "python", 111 | "pygments_lexer": "ipython3", 112 | "version": "3.5.2" 113 | } 114 | }, 115 | "nbformat": 4, 116 | "nbformat_minor": 0 117 | } 118 | -------------------------------------------------------------------------------- /99~参考资料/程序员数学/多元函数微分学.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "e75a4c03", 6 | "metadata": {}, 7 | "source": [ 8 | "### 负定矩阵" 9 | ] 10 | }, 11 | { 12 | "cell_type": "code", 13 | "execution_count": 5, 14 | "id": "46a35822", 15 | "metadata": {}, 16 | "outputs": [ 17 | { 18 | "name": "stdout", 19 | "output_type": "stream", 20 | "text": [ 21 | "给定向量任意向量v: [-2 -3 -7]\n", 22 | "求解矩阵A正定判定条件结果是: -539\n" 23 | ] 24 | } 25 | ], 26 | "source": [ 27 | "import numpy as np\n", 28 | "A = np.array([[-2,-3,-1],\n", 29 | " [-3,-6,-4],\n", 30 | " [-1,-4,-5]])\n", 31 | "v = np.array([-2,-3,-7])\n", 32 | "print('给定向量任意向量v:',v)\n", 33 | "print('求解矩阵A正定判定条件结果是:',v.T.dot(A).dot(v))" 34 | ] 35 | }, 36 | { 37 | "cell_type": "markdown", 38 | "id": "7d33e25f", 39 | "metadata": {}, 40 | "source": [ 41 | "### 正定矩阵" 42 | ] 43 | }, 44 | { 45 | "cell_type": "code", 46 | "execution_count": 15, 47 | "id": "a5e4aed7", 48 | "metadata": {}, 49 | "outputs": [ 50 | { 51 | "name": "stdout", 52 | "output_type": "stream", 53 | "text": [ 54 | "给定向量任意向量v: [-5 8 -3]\n", 55 | "求解矩阵A正定判定条件结果是: 276\n" 56 | ] 57 | } 58 | ], 59 | "source": [ 60 | "import numpy as np\n", 61 | "A = np.array([[5,1,-4],\n", 62 | " [1,3,-2],\n", 63 | " [-4,-2,7]])\n", 64 | "v = np.random.randint(-50,50,size = 3)\n", 65 | "print('给定向量任意向量v:',v)\n", 66 | "print('求解矩阵A正定判定条件结果是:',v.dot(A).dot(v))" 67 | ] 68 | }, 69 | { 70 | "cell_type": "markdown", 71 | "id": "7e38adbc", 72 | "metadata": {}, 73 | "source": [ 74 | "### 根据特征值进行判定" 75 | ] 76 | }, 77 | { 78 | "cell_type": "markdown", 79 | "id": "35dd02b2", 80 | "metadata": {}, 81 | "source": [ 82 | "#### 特征值全部是负数负定矩阵" 83 | ] 84 | }, 85 | { 86 | "cell_type": "code", 87 | "execution_count": 16, 88 | "id": "c747a0bc", 89 | "metadata": {}, 90 | "outputs": [ 91 | { 92 | "name": "stdout", 93 | "output_type": "stream", 94 | "text": [ 95 | "矩阵A的特征值特征向量是:\n" 96 | ] 97 | }, 98 | { 99 | "data": { 100 | "text/plain": [ 101 | "array([-10.54287655, -0.03922866, -2.41789479])" 102 | ] 103 | }, 104 | "metadata": {}, 105 | "output_type": "display_data" 106 | }, 107 | { 108 | "data": { 109 | "text/plain": [ 110 | "array([[ 0.32798528, 0.73697623, -0.59100905],\n", 111 | " [ 0.73697623, -0.59100905, -0.32798528],\n", 112 | " [ 0.59100905, 0.32798528, 0.73697623]])" 113 | ] 114 | }, 115 | "metadata": {}, 116 | "output_type": "display_data" 117 | } 118 | ], 119 | "source": [ 120 | "import numpy as np\n", 121 | "A = np.array([[-2,-3,-1],\n", 122 | " [-3,-6,-4],\n", 123 | " [-1,-4,-5]])\n", 124 | "w,v = np.linalg.eig(A)\n", 125 | "print('矩阵A的特征值特征向量是:')\n", 126 | "display(w,v)" 127 | ] 128 | }, 129 | { 130 | "cell_type": "markdown", 131 | "id": "948a2653", 132 | "metadata": {}, 133 | "source": [ 134 | "#### 特征值全部是正数正定矩阵" 135 | ] 136 | }, 137 | { 138 | "cell_type": "code", 139 | "execution_count": 17, 140 | "id": "806fb899", 141 | "metadata": {}, 142 | "outputs": [ 143 | { 144 | "data": { 145 | "text/plain": [ 146 | "(array([10.74515039, 1.63251546, 2.62233415]),\n", 147 | " array([[-0.58123713, -0.60851363, -0.54025416],\n", 148 | " [-0.27299496, -0.4796241 , 0.83392714],\n", 149 | " [ 0.76657495, -0.63219608, -0.11265418]]))" 150 | ] 151 | }, 152 | "execution_count": 17, 153 | "metadata": {}, 154 | "output_type": "execute_result" 155 | } 156 | ], 157 | "source": [ 158 | "import numpy as np\n", 159 | "A = np.array([[5,1,-4],\n", 160 | " [1,3,-2],\n", 161 | " [-4,-2,7]])\n", 162 | "np.linalg.eig(A)" 163 | ] 164 | }, 165 | { 166 | "cell_type": "code", 167 | "execution_count": null, 168 | "id": "a295d060", 169 | "metadata": {}, 170 | "outputs": [], 171 | "source": [] 172 | } 173 | ], 174 | "metadata": { 175 | "kernelspec": { 176 | "display_name": "Python 3 (ipykernel)", 177 | "language": "python", 178 | "name": "python3" 179 | }, 180 | "language_info": { 181 | "codemirror_mode": { 182 | "name": "ipython", 183 | "version": 3 184 | }, 185 | "file_extension": ".py", 186 | "mimetype": "text/x-python", 187 | "name": "python", 188 | "nbconvert_exporter": "python", 189 | "pygments_lexer": "ipython3", 190 | "version": "3.8.10" 191 | }, 192 | "toc": { 193 | "base_numbering": 1, 194 | "nav_menu": {}, 195 | "number_sections": true, 196 | "sideBar": true, 197 | "skip_h1_title": false, 198 | "title_cell": "Table of Contents", 199 | "title_sidebar": "Contents", 200 | "toc_cell": false, 201 | "toc_position": {}, 202 | "toc_section_display": true, 203 | "toc_window_display": false 204 | } 205 | }, 206 | "nbformat": 4, 207 | "nbformat_minor": 5 208 | } 209 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/33~单元检测 3 复习.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第三十三讲:单元检测 3 复习\n", 8 | "\n", 9 | "在上一次复习中,我们已经涉及了求特征值与特征向量(通过解方程$\\det(A-\\lambda I)=0$得出$\\lambda$,再将$\\lambda$带入$A-\\lambda I$求其零空间得到$x$)。\n", 10 | "\n", 11 | "接下的章节来我们学习了:\n", 12 | "\n", 13 | "* 解微分方程$\\frac{\\mathrm{d}u}{\\mathrm{d}t}=Au$,并介绍了指数矩阵$e^{At}$;\n", 14 | "* 介绍了对称矩阵的性质$A=A^T$,了解了其特征值均为实数且总是存在足量的特征向量(即使特征值重复特征向量也不会短缺,总是可以对角化);同时对称矩阵的特征向量正交,所以对称矩阵对角化的结果可以表示为$A=Q\\Lambda Q^T$;\n", 15 | "* 接着我们学习了正定矩阵;\n", 16 | "* 然后学习了相似矩阵,$B=M^{-1}AM$,矩阵$A,B$特征值相同,其实相似矩阵是用不同的基表示相同的东西;\n", 17 | "* 最后我们学习了奇异值分解$A=U\\varSigma V^T$。\n", 18 | "\n", 19 | "现在,我们继续通过例题复习这些知识点。\n", 20 | "\n", 21 | "1. *解方程$\\frac{\\mathrm{d}u}{\\mathrm{d}t}=Au=\\begin{bmatrix}0&-1&0\\\\1&0&-1\\\\0&1&0\\end{bmatrix}u$*。\n", 22 | "\n", 23 | " 首先通过$A$的特征值/向量求通解$u(t)=c_1e^{\\lambda_1t}x_1+c_2e^{\\lambda_2t}x_2+c_3e^{\\lambda_3t}x_3$,很明显矩阵是奇异的,所以有$\\lambda_1=0$;\n", 24 | " \n", 25 | " 继续观察矩阵会发现$A^T=-A$,这是一个反对称矩阵(anti-symmetric)或斜对陈矩阵(skew-symmetric),这与我们在第二十一讲介绍过的旋转矩阵类似,它的特征值应该为纯虚数(特征值在虚轴上),所以我们猜测其特征值应为$0\\cdot i,\\ b\\cdot i,\\ -b\\cdot i$。通过解$\\det(A-\\lambda I)=0$验证一下:$\\begin{bmatrix}-\\lambda&-1&0\\\\1&-\\lambda&-1\\\\0&1&\\lambda\\end{bmatrix}=\\lambda^3+2\\lambda=0, \\lambda_2=\\sqrt 2i, \\lambda_3=-\\sqrt 2i$。\n", 26 | " \n", 27 | " 此时$u(t)=c_1+c_2e^{\\sqrt 2it}x_2+c_3e^{-\\sqrt 2it}x_3$,$e^{\\sqrt 2it}$始终在复平面单位圆上,所以$u(t)$及不发散也不收敛,它只是具有周期性。当$t=0$时有$u(0)=c_1+c_2+c_3$,如果使$e^{\\sqrt 2iT}=1$即$\\sqrt 2iT=2\\pi i$则也能得到$u(T)=c_1+c_2+c_3$,周期$T=\\pi\\sqrt 2$。\n", 28 | " \n", 29 | " 另外,反对称矩阵同对称矩阵一样,具有正交的特征向量。当矩阵满足什么条件时,其特征向量相互正交?答案是必须满足$AA^T=A^TA$。所以对称矩阵$A=A^T$满足此条件,同时反对称矩阵$A=-A^T$也满足此条件,而正交矩阵$Q^{-1}=Q^T$同样满足此条件,这三种矩阵的特征向量都是相互正交的。\n", 30 | " \n", 31 | " 上面的解法并没有求特征向量,进而通过$u(t)=e^{At}u(0)$得到通解,现在我们就来使用指数矩阵来接方程。如果矩阵可以对角化(在本例中显然可以),则$A=S\\Lambda S^{-1}, e^{At}=Se^{\\Lambda t}S^{-1}=S\\begin{bmatrix}e^{\\lambda_1t}&&&\\\\&e^{\\lambda_1t}&&\\\\&&\\ddots&\\\\&&&e^{\\lambda_1t}\\end{bmatrix}S^{-1}$,这个公式在能够快速计算$S,\\lambda$时很方便求解。\n", 32 | "\n", 33 | "2. 已知矩阵的特征值$\\lambda_1=0,\\lambda_2=c,\\lambda_3=2$,特征向量$x_1=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix},x_2=\\begin{bmatrix}1&-1&0\\end{bmatrix},x_3=\\begin{bmatrix}1\\\\1\\\\-2\\end{bmatrix}$:\n", 34 | " \n", 35 | " *$c$如何取值才能保证矩阵可以对角化?*其实可对角化只需要有足够的特征向量即可,而现在特征向量已经足够,所以$c$可以取任意值。\n", 36 | " \n", 37 | " *$c$如何取值才能保证矩阵对称?*我们知道,对称矩阵的特征值均为实数,且注意到给出的特征向量是正交的,有了实特征值及正交特征向量,我们就可以得到对称矩阵。\n", 38 | " \n", 39 | " *$c$如何取值才能使得矩阵正定?*已经有一个零特征值了,所以矩阵不可能是正定的,但可以是半正定的,如果$c$去非负实数。\n", 40 | " \n", 41 | " *$c$如何取值才能使得矩阵是一个马尔科夫矩阵?*在第二十四讲我们知道马尔科夫矩阵的性质:必有特征值等于$1$,其余特征值均小于$1$,所以$A$不可能是马尔科夫矩阵。\n", 42 | " \n", 43 | " *$c$取何值才能使得$P=\\frac{A}{2}$是一个投影矩阵?*我们知道投影矩阵的一个重要性质是$P^2=P$,所以有对其特征值有$\\lambda^2=\\lambda$,则$c=0,2$。\n", 44 | " \n", 45 | " 题设中的正交特征向量意义重大,如果没有正交这个条件,则矩阵$A$不会是对称、正定、投影矩阵。因为特征向量的正交性我们才能直接去看特征值的性质。\n", 46 | "\n", 47 | "3. 复习奇异值分解,$A=U\\varSigma V^T$:\n", 48 | "\n", 49 | " 先求正交矩阵$V$:$A^TA=V\\varSigma^TU^TU\\varSigma V^T=V\\left(\\varSigma^T\\varSigma\\right)V^T$,所以$V$是矩阵$A^TA$的特征向量矩阵,而矩阵$\\varSigma^T\\varSigma$是矩阵$A^TA$的特征值矩阵,即$A^TA$的特征值为$\\sigma^2$。\n", 50 | " \n", 51 | " 接下来应该求正交矩阵$U$:$AA^T=U\\varSigma^TV^TV\\varSigma U^T=U\\left(\\varSigma^T\\varSigma\\right)U^T$,但是请注意,我们在这个式子中无法确定特征向量的符号,我们需要使用$Av_i=\\sigma_iu_i$,通过已经求出的$v_i$来确定$u_i$的符号(因为$AV=U\\varSigma$),进而求出$U$。\n", 52 | " \n", 53 | " *已知$A=\\bigg[u_1\\ u_2\\bigg]\\begin{bmatrix}3&0\\\\0&2\\end{bmatrix}\\bigg[v_1\\ v_2\\bigg]^T$*\n", 54 | " \n", 55 | " 从已知的$\\varSigma$矩阵可以看出,$A$矩阵是非奇异矩阵,因为它没有零奇异值。另外,如果把$\\varSigma$矩阵中的$2$改成$-5$,则题目就不再是奇异值分解了,因为奇异值不可能为负;如果将$2$变为$0$,则$A$是奇异矩阵,它的秩为$1$,零空间为$1$维,$v_2$在其零空间中。\n", 56 | "\n", 57 | "4. *$A$是正交对称矩阵,那么它的特征值具有什么特点*?\n", 58 | "\n", 59 | " 首先,对于对称矩阵,有特征值均为实数;然后是正交矩阵,直觉告诉我们$|\\lambda|=1$。来证明一下,对于$Qx=\\lambda x$,我们两边同时取模有$\\|Qx\\|=|\\lambda|\\|x\\|$,而**正交矩阵不会改变向量长度**,所以有$\\|x\\|=|\\lambda|\\|x\\|$,因此$\\lambda=\\pm1$。\n", 60 | " \n", 61 | " *$A$是正定的吗?*并不一定,因为特征向量可以取$-1$。\n", 62 | " \n", 63 | " *$A$的特征值没有重复吗?*不是,如果矩阵大于$2$阶则必定有重复特征值,因为只能取$\\pm1$。\n", 64 | " \n", 65 | " *$A$可以被对角化吗?*是的,任何对称矩阵、任何正交矩阵都可以被对角化。\n", 66 | " \n", 67 | " *$A$是非奇异矩阵吗?*是的,正交矩阵都是非奇异矩阵。很明显它的特征值都不为零。\n", 68 | " \n", 69 | " *证明$P=\\frac{1}{2}(A+I)$是投影矩阵*。\n", 70 | " \n", 71 | " 我们使用投影矩阵的性质验证,首先由于$A$是对称矩阵,则$P$一定是对称矩阵;接下来需要验证$P^2=P$,也就是$\\frac{1}{4}\\left(A^2+2A+I\\right)=\\frac{1}{2}(A+I)$。来看看$A^2$是什么,$A$是正交矩阵则$A^T=A^{-1}$,而$A$又是对称矩阵则$A=A^T=A^{-1}$,所以$A^2=I$。带入原式有$\\frac{1}{4}(2A+2I)=\\frac{1}{2}(A+I)$,得证。\n", 72 | " \n", 73 | " 我们可以使用特征值验证,$A$的特征值可以取$\\pm1$,则$A+I$的特征值可以取$0,2$,$\\frac{1}{2}(A+I)$的特征值为$0,1$,特征值满足投影矩阵且它又是对称矩阵,得证。" 74 | ] 75 | } 76 | ], 77 | "metadata": { 78 | "kernelspec": { 79 | "display_name": "Python 3", 80 | "language": "python", 81 | "name": "python3" 82 | }, 83 | "language_info": { 84 | "codemirror_mode": { 85 | "name": "ipython", 86 | "version": 3 87 | }, 88 | "file_extension": ".py", 89 | "mimetype": "text/x-python", 90 | "name": "python", 91 | "nbconvert_exporter": "python", 92 | "pygments_lexer": "ipython3", 93 | "version": "3.5.1" 94 | } 95 | }, 96 | "nbformat": 4, 97 | "nbformat_minor": 0 98 | } 99 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/20~克拉默法则、逆矩阵、体积.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十讲:克拉默法则、逆矩阵、体积\n", 8 | "\n", 9 | "本讲主要介绍逆矩阵的应用。\n", 10 | "\n", 11 | "## 求逆矩阵\n", 12 | "\n", 13 | "我们从逆矩阵开始,对于二阶矩阵有$\\begin{bmatrix}a&b\\\\c&d\\end{bmatrix}^{-1}=\\frac{1}{ad-bc}\\begin{bmatrix}d&-b\\\\-c&a\\end{bmatrix}$。观察易得,系数项就是行列式的倒数,而矩阵则是由一系列代数余子式组成的。先给出公式:\n", 14 | "\n", 15 | "$$\n", 16 | "A^{-1}=\\frac{1}{\\det A}C^T\n", 17 | "\\tag{1}\n", 18 | "$$\n", 19 | "\n", 20 | "观察这个公式是如何运作的,化简公式得$AC^T=(\\det A)I$,写成矩阵形式有$\\begin{bmatrix}a_{11}&a_{12}&\\cdots&a_{1n}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\a_{n1}&a_{n2}&\\cdots&a_{nn}\\end{bmatrix}\\begin{bmatrix}C_{11}&\\cdots&C_{n1}\\\\C_{12}&\\cdots&C_{n2}\\\\\\vdots&\\ddots&\\vdots\\\\C_{1n}&\\cdots&C_{nn}\\end{bmatrix}=Res$\n", 21 | "\n", 22 | "对于这两个矩阵的乘积,观察其结果的元素$Res_{11}=a_{11}C_{11}+a_{12}C_{12}+\\cdots+a_{1n}C_{1n}$,这正是上一讲提到的将行列式按第一行展开的结果。同理,对$Res_{22}, \\cdots, Res_{nn}$都有$Res_{ii}=\\det A$,即对角线元素均为$\\det A$。\n", 23 | "\n", 24 | "再来看非对角线元素:回顾二阶的情况,如果用第一行乘以第二行的代数余子式$a_{11}C_{21}+a_{12}C_{22}$,得到$a(-b)+ab=0$。换一种角度看问题,$a(-b)+ab=0$也是一个矩阵的行列式值,即$A_{s}=\\begin{bmatrix}a&b\\\\a&b\\end{bmatrix}$。将$\\det A_{s}$按第二行展开,也会得到$\\det A_{s}=a(-b)+ab$,因为行列式有两行相等所以行列式值为零。\n", 25 | "\n", 26 | "推广到$n$阶,我们来看元素$Res_{1n}=a_{11}C_{n1}+a_{12}C_{n2}+\\cdots+a_{1n}C_{nn}$,该元素是第一行与最后一行的代数余子式相乘之积。这个式子也可以写成一个特殊矩阵的行列式,即矩阵$A_{s}=\\begin{bmatrix}a_{11}&a_{12}&\\cdots&a_{1n}\\\\a_{21}&a_{22}&\\cdots&a_{2n}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\a_{n-a1}&a_{n-12}&\\cdots&a_{n-1n}\\\\a_{11}&a_{12}&\\cdots&a_{1n}\\end{bmatrix}$。计算此矩阵的行列式,将$\\det A_{s}$按最后一行展开,也得到$\\det A_{s}=a_{11}C_{n1}+a_{12}C_{n2}+\\cdots+a_{1n}C_{nn}$。同理,行列式$A_{s}$有两行相等,其值为零。\n", 27 | "\n", 28 | "结合对角线元素与非对角线元素的结果,我们得到$Res=\\begin{bmatrix}\\det A&0&\\cdots&0\\\\0&\\det A&\\cdots&0\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\0&0&\\cdots&\\det A\\end{bmatrix}$,也就是$(1)$等式右边的$(\\det A)I$,得证。\n", 29 | "\n", 30 | "## 求解$Ax=b$\n", 31 | "\n", 32 | "因为我们现在有了逆矩阵的计算公式,所以对$Ax=b$有$x=A^{-1}b=\\frac{1}{\\det A}C^Tb$,这就是计算$x$的公式,即克莱默法则(Cramer's rule)。\n", 33 | "\n", 34 | "现在来观察$x=\\frac{1}{\\det A}C^Tb$,我们将得到的解拆分开来,对$x$的第一个分量有$x_1=\\frac{y_1}{\\det A}$,这里$y_1$是一个数字,其值为$y_1=b_1C_{11}+b_2C_{21}+\\cdots+b_nC_{n1}$,每当我们看到数字与代数余子式乘之积求和时,都应该联想到求行列式,也就是说$y_1$可以看做是一个矩阵的行列式,我们设这个矩阵为$B_1$。所以有$x_i=\\frac{\\det B_1}{\\det A}$,同理有$x_2=\\frac{\\det B_2}{\\det A}$,$x_2=\\frac{\\det B_2}{\\det A}$。\n", 35 | "\n", 36 | "而$B_1$是一个型为$\\Bigg[b a_2 a_3 \\cdots a_n\\Bigg]$的矩阵,即将矩阵$A$的第一列变为$b$向量而得到的新矩阵。其实很容易看出,$\\det B_1$可以沿第一列展开得到$y_1=b_1C_{11}+b_2C_{21}+\\cdots+b_nC_{n1}$。\n", 37 | "\n", 38 | "一般的,有$B_j=\\Bigg[a_1 a_2 \\cdots a_{j-1} b a_{j+1} \\cdots a_n\\Bigg]$,即将矩阵$A$的第$j$列变为$b$向量而得到的新矩阵。所以,对于解的分量有$x_j=\\frac{\\det B_j}{\\det A}$。\n", 39 | "\n", 40 | "这个公式虽然很漂亮,但是并不方便计算。\n", 41 | "\n", 42 | "## 关于体积(Volume)\n", 43 | "\n", 44 | "先提出命题:行列式的绝对值等于一个箱子的体积。\n", 45 | "\n", 46 | "来看三维空间中的情形,对于$3$阶方阵$A$,取第一行$(a_1,a_2,a_3)$,令其为三维空间中点$A_1$的坐标,同理有点$A_2, A_3$。连接这三个点与原点可以得到三条边,使用这三条边展开得到一个平行六面体,$\\left\\|\\det A\\right\\|$就是该平行六面体的体积。\n", 47 | "\n", 48 | "对于三阶单位矩阵,其体积为$\\det I=1$,此时这个箱子是一个单位立方体。这其实也证明了前面学过的行列式性质1。于是我们想,如果能接着证明性质2、3即可证明体积与行列式的关系。\n", 49 | "\n", 50 | "对于行列式性质2,我们交换两行并不会改变箱子的大小,同时行列式的绝对值也没有改变,得证。\n", 51 | "\n", 52 | "现在我们取矩阵$A=Q$,而$Q$是一个标准正交矩阵,此时这个箱子是一个立方体,可以看出其实这个箱子就是刚才的单位立方体经过旋转得到的。对于标准正交矩阵,有$Q^TQ=I$,等式两边取行列式得$\\det(Q^TQ)=1=\\left|Q^T\\right|\\left|Q\\right|$,而根据行列式性质10有$\\left|Q^T\\right|=\\left|Q\\right|$,所以$原式=\\left|Q\\right|^2=1, \\left|Q\\right|=\\pm 1$。\n", 53 | "\n", 54 | "接下来在考虑不再是“单位”的立方体,即长方体。假设$Q$矩阵的第一行翻倍得到新矩阵$Q_2$,此时箱子变为在第一行方向上增加一倍的长方体箱子,也就是两个“标准正交箱子”在第一行方向上的堆叠。易知这个长方体箱子是原来体积的两倍,而根据行列式性质3.a有$\\det Q_2=\\det Q$,于是体积也符合行列式的数乘性质。\n", 55 | "\n", 56 | "我们来看二阶方阵的情形,$\\begin{vmatrix}a+a'&b+b'\\\\c&d\\end{vmatrix}=\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}+\\begin{vmatrix}a'&b'\\\\c&d\\end{vmatrix}$。在二阶情况中,行列式就是一个求平行四边形面积的公式,原来我们求由四个点$(0,0), (a,b), (c,d), (a+c,b+d)$围成的四边形的面积,需要先求四边形的底边长,再做高求解,现在只需要计算$\\det A=ad-bc$即可(更加常用的是求由$(0,0), (a,b), (c,d)$围成的三角形的面积,即$\\frac{1}{2}ad-bc$)。也就是说,如果知道了歪箱子的顶点坐标,求面积(二阶情形)或体积(三阶情形)时,我们不再需要开方、求角度,只需要计算行列式的值就行了。\n", 57 | "\n", 58 | "再多说两句我们通过好几讲得到的这个公式,在一般情形下,由点$(x_1,y_1), (x_2,y_2), (x_3,y_3)$围成的三角形面积等于$\\frac{1}{2}\\begin{vmatrix}x_1&y_1&1\\\\x_2&y_2&1\\\\x_3&y_3&1\\end{vmatrix}$,计算时分别用第二行、第三行减去第一行化简到第三列只有一个$1$(这个操作实际作用是将三角形移动到原点),得到$\\frac{1}{2}\\begin{vmatrix}x_1&y_1&1\\\\x_2-x_1&y_2-y_1&0\\\\x_3-x_1&y_3-y_1&0\\end{vmatrix}$,再按照第三列展开,得到三角形面积等于$\\frac{(x_2-x_1)(y_3-y_1)-(x_3-x_1)(y_2-y_1)}{2}$。" 59 | ] 60 | } 61 | ], 62 | "metadata": { 63 | "kernelspec": { 64 | "display_name": "Python 3", 65 | "language": "python", 66 | "name": "python3" 67 | }, 68 | "language_info": { 69 | "codemirror_mode": { 70 | "name": "ipython", 71 | "version": 3 72 | }, 73 | "file_extension": ".py", 74 | "mimetype": "text/x-python", 75 | "name": "python", 76 | "nbconvert_exporter": "python", 77 | "pygments_lexer": "ipython3", 78 | "version": "3.5.1" 79 | } 80 | }, 81 | "nbformat": 4, 82 | "nbformat_minor": 0 83 | } 84 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/34~左右逆和伪逆.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第三十四讲:左右逆和伪逆\n", 8 | "\n", 9 | "前面我们涉及到的逆(inverse)都是指左、右乘均成立的逆矩阵,即$A^{-1}A=I=AA^{-1}$。在这种情况下,$m\\times n$矩阵$A$满足$m=n=rank(A)$,也就是满秩方阵。\n", 10 | "\n", 11 | "## 左逆(left inserve)\n", 12 | "\n", 13 | "记得我们在最小二乘一讲(第十六讲)介绍过列满秩的情况,也就是列向量线性无关,但行向量通常不是线性无关的。常见的列满秩矩阵$A$满足$m>n=rank(A)$。\n", 14 | "\n", 15 | "列满秩时,列向量线性无关,所以其零空间中只有零解,方程$Ax=b$可能有一个唯一解($b$在$A$的列空间中,此特解就是全部解,因为通常的特解可以通过零空间中的向量扩展出一组解集,而此时零空间只有列向量),也可能无解($b$不在$A$的列空间中)。\n", 16 | "\n", 17 | "另外,此时行空间为$\\mathbb{R}^n$,也正印证了与行空间互为正交补的零空间中只有列向量。\n", 18 | "\n", 19 | "现在来观察$A^TA$,也就是在$m>n=rank(A)$的情况下,$n\\times m$矩阵乘以$m\\times n$矩阵,结果为一个满秩的$n\\times n$矩阵,所以$A^TA$是一个可逆矩阵。也就是说$\\underbrace{\\left(A^TA\\right)^{-1}A^T}A=I$成立,而大括号部分的$\\left(A^TA\\right)^{-1}A^T$称为长方形矩阵$A$的左逆\n", 20 | "\n", 21 | "$$A^{-1}_{left}=\\left(A^TA\\right)^{-1}A^T$$\n", 22 | "\n", 23 | "顺便复习一下最小二乘一讲,通过关键方程$A^TA\\hat x=A^Tb$,$A^{-1}_{left}$被当做一个系数矩阵乘在$b$向量上,求得$b$向量投影在$A$的列空间之后的解$\\hat x=\\left(A^TA\\right)^{-1}A^Tb$。如果我们强行给左逆左乘矩阵$A$,得到的矩阵就是投影矩阵$P=A\\left(A^TA\\right)^{-1}A^T$,来自$p=A\\hat x=A\\left(A^TA\\right)^{-1}A^T$,它将右乘的向量$b$投影在矩阵$A$的列空间中。\n", 24 | "\n", 25 | "再来观察$AA^T$矩阵,这是一个$m\\times m$矩阵,秩为$rank(AA^T)=nm=rank(A)$。对称的,其左零空间中仅有零向量,即没有行向量的线性组合能够得到零向量。\n", 30 | "\n", 31 | "行满秩时,矩阵的列空间将充满向量空间$C(A)=\\mathbb{R}^m$,所以方程$Ax=b$总是有解集,由于消元后有$n-m$个自由变量,所以方程的零空间为$n-m$维。\n", 32 | "\n", 33 | "与左逆对称,再来观察$AA^T$,在$n>m=rank(A)$的情况下,$m\\times n$矩阵乘以$n\\times m$矩阵,结果为一个满秩的$m\\times m$矩阵,所以此时$AA^T$是一个满秩矩阵,也就是$AA^T$可逆。所以$A\\underbrace{A^T\\left(AA^T\\right)}=I$,大括号部分的$A^T\\left(AA^T\\right)$称为长方形矩阵的右逆\n", 34 | "\n", 35 | "$$A^{-1}_{right}=A^T\\left(AA^T\\right)$$\n", 36 | "\n", 37 | "同样的,如果我们强行给右逆右乘矩阵$A$,将得到另一个投影矩阵$P=A^T\\left(AA^T\\right)A$,与上一个投影矩阵不同的是,这个矩阵的$A$全部变为$A^T$了。所以这是一个能够将右乘的向量$b$投影在$A$的行空间中。\n", 38 | "\n", 39 | "前面我们提及了逆(方阵满秩),并讨论了左逆(矩阵列满秩)、右逆(矩阵行满秩),现在看一下第四种情况,$m\\times n$矩阵$A$不满秩的情况。\n", 40 | "\n", 41 | "## 伪逆(pseudo inverse)\n", 42 | "\n", 43 | "有$m\\times n$矩阵$A$,满足$rank(A)\\lt min(m,\\ n)$,则\n", 44 | "\n", 45 | "* 列空间$C(A)\\in\\mathbb{R}^m,\\ \\dim C(A)=r$,左零空间$N\\left(A^T\\right)\\in\\mathbb{R}^m,\\ \\dim N\\left(A^T\\right)=m-r$,列空间与左零空间互为正交补;\n", 46 | "* 行空间$C\\left(A^T\\right)\\in\\mathbb{R}^n,\\ \\dim C\\left(A^T\\right)=r$,零空间$N(A)\\in\\mathbb{R}^n,\\ \\dim N(A)=n-r$,行空间与零空间互为正交补。\n", 47 | "\n", 48 | "现在任取一个向量$x$,乘上$A$后结果$Ax$一定落在矩阵$A$的列空间$C(A)$中。而根据维数,$x\\in\\mathbb{R}^n,\\ Ax\\in\\mathbb{R}^m$,那么我们现在猜测,输入向量$x$全部来自矩阵的行空间,而输出向量$Ax$全部来自矩阵的列空间,并且是一一对应的关系,也就是$\\mathbb{R}^n$的$r$维子空间到$\\mathbb{R}^m$的$r$维子空间的映射。\n", 49 | "\n", 50 | "而矩阵$A$现在有这些零空间存在,其作用是将某些向量变为零向量,这样$\\mathbb{R}^n$空间的所有向量都包含在行空间与零空间中,所有向量都能由行空间的分量和零空间的分量构成,变换将零空间的分量消除。但如果我们只看行空间中的向量,那就全部变换到列空间中了。\n", 51 | "\n", 52 | "那么,我们现在只看行空间与列空间,在行空间中任取两个向量$x,\\ y\\in C(A^T)$,则有$Ax\\neq Ay$。所以从行空间到列空间,变换$A$是个不错的映射,如果限制在这两个空间上,$A$可以说“是个可逆矩阵”,那么它的逆就称作伪逆,而这个伪逆的作用就是将列空间的向量一一映射到行空间中。通常,伪逆记作$A^+$,因此$Ax=(Ax),\\ y=A^+(Ay)$。\n", 53 | "\n", 54 | "现在我们来证明对于$x,y\\in C\\left(A^T\\right),\\ x\\neq y$,有$Ax,Ay\\in C(A),\\ Ax\\neq Ay$:\n", 55 | "\n", 56 | "* 反证法,设$Ax=Ay$,则有$A(x-y)=0$,即向量$x-y\\in N(A)$;\n", 57 | "* 另一方面,向量$x,y\\in C\\left(A^T\\right)$,所以两者之差$x-y$向量也在$C\\left(A^T\\right)$中,即$x-y\\in C\\left(A^T\\right)$;\n", 58 | "* 此时满足这两个结论要求的仅有一个向量,即零向量同时属于这两个正交的向量空间,从而得到$x=y$,与题设中的条件矛盾,得证。\n", 59 | "\n", 60 | "伪逆在统计学中非常有用,以前我们做最小二乘需要矩阵列满秩这一条件,只有矩阵列满秩才能保证$A^TA$是可逆矩阵,而统计中经常出现重复测试,会导致列向量线性相关,在这种情况下$A^TA$就成了奇异矩阵,这时候就需要伪逆。\n", 61 | "\n", 62 | "接下来我们介绍如何计算伪逆$A^+$:\n", 63 | "\n", 64 | "其中一种方法是使用奇异值分解,$A=U\\varSigma V^T$,其中的对角矩阵型为$\\varSigma=\\left[\\begin{array}{c c c|c}\\sigma_1&&&\\\\&\\ddots&&\\\\&&\\sigma_2&\\\\\\hline&&&\\begin{bmatrix}0\\end{bmatrix}\\end{array}\\right]$,对角线非零的部分来自$A^TA,\\ AA^T$比较好的部分,剩下的来自左/零空间。\n", 65 | "\n", 66 | "我们先来看一下$\\varSigma$矩阵的伪逆是多少,这是一个$m\\times n$矩阵,$rank(\\varSigma)=r$,$\\varSigma^+=\\left[\\begin{array}{c c c|c}\\frac{1}{\\sigma_1}&&&\\\\&\\ddots&&\\\\&&\\frac{1}{\\sigma_r}&\\\\\\hline&&&\\begin{bmatrix}0\\end{bmatrix}\\end{array}\\right]$,伪逆与原矩阵有个小区别:这是一个$n\\times m$矩阵。则有$\\varSigma\\varSigma^+=\\left[\\begin{array}{c c c|c}1&&&\\\\&\\ddots&&\\\\&&1&\\\\\\hline&&&\\begin{bmatrix}0\\end{bmatrix}\\end{array}\\right]_{m\\times m}$,$\\varSigma^+\\varSigma=\\left[\\begin{array}{c c c|c}1&&&\\\\&\\ddots&&\\\\&&1&\\\\\\hline&&&\\begin{bmatrix}0\\end{bmatrix}\\end{array}\\right]_{n\\times n}$。\n", 67 | "\n", 68 | "观察$\\varSigma\\varSigma^+$和$\\varSigma^+\\varSigma$不难发现,$\\varSigma\\varSigma^+$是将向量投影到列空间上的投影矩阵,而$\\varSigma^+\\varSigma$是将向量投影到行空间上的投影矩阵。我们不论是左乘还是右乘伪逆,得到的不是单位矩阵,而是投影矩阵,该投影将向量带入比较好的空间(行空间和列空间,而不是左/零空间)。\n", 69 | "\n", 70 | "接下来我们来求$A$的伪逆:\n", 71 | "\n", 72 | "$$A^+=V\\varSigma^+U^T$$" 73 | ] 74 | } 75 | ], 76 | "metadata": { 77 | "kernelspec": { 78 | "display_name": "Python 3", 79 | "language": "python", 80 | "name": "python3" 81 | }, 82 | "language_info": { 83 | "codemirror_mode": { 84 | "name": "ipython", 85 | "version": 3 86 | }, 87 | "file_extension": ".py", 88 | "mimetype": "text/x-python", 89 | "name": "python", 90 | "nbconvert_exporter": "python", 91 | "pygments_lexer": "ipython3", 92 | "version": "3.5.1" 93 | } 94 | }, 95 | "nbformat": 4, 96 | "nbformat_minor": 0 97 | } 98 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/03~乘法和逆矩阵.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第三讲:乘法和逆矩阵\n", 8 | "\n", 9 | "上一讲大概介绍了矩阵乘法和逆矩阵,本讲就来做进一步说明。\n", 10 | "\n", 11 | "## 矩阵乘法\n", 12 | "\n", 13 | "* 行列内积:有$m\\times n$矩阵$A$和$n\\times p$矩阵$B$($A$的总行数必须与$B$的总列数相等),两矩阵相乘有$AB=C$,$C$是一个$m\\times p$矩阵,对于$C$矩阵中的第$i$行第$j$列元素$c_{ij}$,有:\n", 14 | "\n", 15 | " $$c_{ij}=row_i\\cdot column_j=\\sum_{k=i}^na_{ik}b_{kj}$$\n", 16 | "\n", 17 | " 其中$a_{ik}$是$A$矩阵的第$i$行第$k$列元素,$b_{kj}$是$B$矩阵的第$k$行第$j$列元素。\n", 18 | "\n", 19 | " 可以看出$c_{ij}$其实是$A$矩阵第$i$行点乘$B$矩阵第$j$列 $\\begin{bmatrix}&\\vdots&\\\\&row_i&\\\\&\\vdots&\\end{bmatrix}\\begin{bmatrix}&&\\\\\\cdots&column_j&\\cdots\\\\&&\\end{bmatrix}=\\begin{bmatrix}&\\vdots&\\\\\\cdots&c_{ij}&\\cdots\\\\&\\vdots&\\end{bmatrix}$\n", 20 | "\n", 21 | "* 整列相乘:上一讲我们知道了如何计算矩阵乘以向量,而整列相乘就是使用这种线性组合的思想:\n", 22 | "\n", 23 | " $\\begin{bmatrix}&&\\\\A_{col1}&A_{col2}&\\cdots&A_{coln}\\\\&&\\end{bmatrix}\\begin{bmatrix}\\cdots&b_{1j}&\\cdots\\\\\\cdots&b_{2j}&\\cdots\\\\\\cdots&\\vdots&\\cdots\\\\\\cdots&b_{nj}&\\cdots\\\\\\end{bmatrix}=\\begin{bmatrix}&&\\\\\\cdots&\\left(b_{1j}A_{col1}+b_{2j}A_{col2}+\\cdots+b_{nj}A_{coln}\\right)&\\cdots\\\\&&\\end{bmatrix}$\n", 24 | " \n", 25 | " 上面的运算为$B$的第$j$个列向量右乘矩阵$A$,求得的结果就是$C$矩阵的第$j$列,即$C$的第$j$列是$A$的列向量以$B$的第$j$列作为系数所求得的线性组合,$C_j=b_{1j}A_{col1}+b_{2j}A_{col2}+\\cdots+b_{nj}A_{coln}$。\n", 26 | "\n", 27 | "* 整行相乘:同样的,也是利用行向量线性组合的思想:\n", 28 | " \n", 29 | " $\\begin{bmatrix}\\vdots&\\vdots&\\vdots&\\vdots\\\\a_{i1}&a_{i2}&\\cdots&a_{in}\\\\\\vdots&\\vdots&\\vdots&\\vdots\\end{bmatrix}\\begin{bmatrix}&B_{row1}&\\\\&B_{row2}&\\\\&\\vdots&\\\\&B_{rown}&\\end{bmatrix}=\\begin{bmatrix}\\vdots\\\\\\left(a_{i1}B_{row1}+a_{i2}B_{row2}+\\cdots+a_{in}B_{rown}\\right)\\\\\\vdots\\end{bmatrix}$\n", 30 | " \n", 31 | " 上面的运算为$A$的第$i$个行向量左乘矩阵$B$,求得的结果就是$C$矩阵的第$i$行,即$C$的第$i$行是$B$的行向量以$A$的第$i$行作为系数所求的的线性组合,$C_i=a_{i1}B_{row1}+a_{i2}B_{row2}+\\cdots+a_{in}B_{rown}$。\n", 32 | "\n", 33 | "* 列乘以行:用$A$矩阵的列乘以$B$矩阵的行,得到的矩阵相加即可:\n", 34 | " \n", 35 | " $\\begin{bmatrix}&&\\\\A_{col1}&A_{col2}&\\cdots&A_{coln}\\\\&&\\end{bmatrix}\\begin{bmatrix}&B_{row1}&\\\\&B_{row2}&\\\\&\\vdots&\\\\&B_{rown}&\\end{bmatrix}=A_{col1}B_{row1}+A_{col2}B_{row2}+\\cdots+A_{coln}B_{rown}$\n", 36 | " \n", 37 | " 注意,$A_{coli}B_{rowi}$是一个$m\\times 1$向量乘以一个$1\\times p$向量,其结果是一个$m\\times p$矩阵,而所有的$m\\times p$矩阵之和就是计算结果。\n", 38 | "\n", 39 | "* 分块乘法:$\\left[\\begin{array}{c|c}A_1&A_2\\\\\\hline A_3&A_4\\end{array}\\right]\\left[\\begin{array}{c|c}B_1&B_2\\\\\\hline B_3&B_4\\end{array}\\right]=\\left[\\begin{array}{c|c}A_1B_1+A_2B_3&A_1B_2+A_2B_4\\\\\\hline A_3B_1+A_4B_3&A_3B_2+A_4B_4\\end{array}\\right]$\n", 40 | "\n", 41 | " 在分块合适的情况下,可以简化运算。\n", 42 | "\n", 43 | "## 逆(方阵)\n", 44 | "\n", 45 | "首先,并不是所有的方阵都有逆;而如果逆存在,则有$A^{-1}A=I=AA^{-1}$。教授这里提前剧透,对于方阵,左逆和右逆是相等的,但是对于非方阵(长方形矩阵),其左逆不等于右逆。\n", 46 | "\n", 47 | "对于这些有逆的矩阵,我们称其为可逆的或非奇异的。我们先来看看奇异矩阵(不可逆的):$A=\\begin{bmatrix}1&2\\\\3&6\\end{bmatrix}$,在后面将要学习的行列式中,会发现这个矩阵的行列式为$0$。\n", 48 | "\n", 49 | "观察这个方阵,我们如果用另一个矩阵乘$A$,则得到的结果矩阵中的每一列应该都是$\\begin{bmatrix}1\\\\2\\end{bmatrix}$的倍数,所以我们不可能从$AB$的乘积中得到单位矩阵$I$。\n", 50 | "\n", 51 | "另一种判定方法,如果$A$乘以任意非零向量能够得到$0$向量,则矩阵$A$不可逆,即使用$Ax=0$判定。我们来用上面的矩阵为例:$\\begin{bmatrix}1&2\\\\3&6\\end{bmatrix}\\begin{bmatrix}3\\\\-1\\end{bmatrix}=\\begin{bmatrix}0\\\\0\\end{bmatrix}$。\n", 52 | "\n", 53 | "证明:如果对于非零的$x$仍有$Ax=0$,而$A$有逆$A^{-1}$,则$A^{-1}Ax=0$,即$x=0$,与题设矛盾,得证。\n", 54 | "\n", 55 | "现在来看看什么矩阵有逆,设$A=\\begin{bmatrix}1&3\\\\2&7\\end{bmatrix}$,我们来求$A^{-1}$。$\\begin{bmatrix}1&3\\\\2&7\\end{bmatrix}\\begin{bmatrix}a&b\\\\c&d\\end{bmatrix}=\\begin{bmatrix}1&0\\\\0&1\\end{bmatrix}$,使用列向量线性组合的思想,我们可以说$A$乘以$A^{-1}$的第$j$列,能够得到$I$的第$j$列,这时我会得到一个关于列的方程组。\n", 56 | "\n", 57 | "接下来介绍高斯-若尔当(Gauss-Jordan)方法,该方法可以一次处理所有的方程:\n", 58 | "\n", 59 | "* 这个方程组为$\\begin{cases}\\begin{bmatrix}1&3\\\\2&7\\end{bmatrix}\\begin{bmatrix}a\\\\b\\end{bmatrix}=\\begin{bmatrix}1\\\\0\\end{bmatrix}\\\\\\begin{bmatrix}1&3\\\\2&7\\end{bmatrix}\\begin{bmatrix}c\\\\d\\end{bmatrix}=\\begin{bmatrix}0\\\\1\\end{bmatrix}\\end{cases}$,我们想要同时解这两个方程;\n", 60 | "\n", 61 | "* 构造这样一个矩阵$\\left[\\begin{array}{cc|cc}1&3&1&0\\\\2&7&0&1\\end{array}\\right]$,接下来用消元法将左侧变为单位矩阵;\n", 62 | "* $\\left[\\begin{array}{cc|cc}1&3&1&0\\\\2&7&0&1\\end{array}\\right]\\xrightarrow{row_2-2row_1}\\left[\\begin{array}{cc|cc}1&3&1&0\\\\0&1&-2&1\\end{array}\\right]\\xrightarrow{row_1-3row_2}\\left[\\begin{array}{cc|cc}1&0&7&-3\\\\0&1&-2&1\\end{array}\\right]$\n", 63 | "* 于是,我们就将矩阵从$\\left[\\begin{array}{c|c}A&I\\end{array}\\right]$变为$\\left[\\begin{array}{c|c}I&A^{-1}\\end{array}\\right]$\n", 64 | "\n", 65 | "而高斯-若尔当法的本质是使用消元矩阵$E$,对$A$进行操作,$E\\left[\\begin{array}{c|c}A&I\\end{array}\\right]$,利用一步步消元有$EA=I$,进而得到$\\left[\\begin{array}{c|c}I&E\\end{array}\\right]$,其实这个消元矩阵$E$就是$A^{-1}$,而高斯-若尔当法中的$I$只是负责记录消元的每一步操作,待消元完成,逆矩阵就自然出现了。" 66 | ] 67 | } 68 | ], 69 | "metadata": { 70 | "kernelspec": { 71 | "display_name": "Python [default]", 72 | "language": "python", 73 | "name": "python3" 74 | }, 75 | "language_info": { 76 | "codemirror_mode": { 77 | "name": "ipython", 78 | "version": 3 79 | }, 80 | "file_extension": ".py", 81 | "mimetype": "text/x-python", 82 | "name": "python", 83 | "nbconvert_exporter": "python", 84 | "pygments_lexer": "ipython3", 85 | "version": "3.5.2" 86 | } 87 | }, 88 | "nbformat": 4, 89 | "nbformat_minor": 0 90 | } 91 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/21~特征值和特征向量.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十一讲:特征值和特征向量\n", 8 | "\n", 9 | "## 特征值、特征向量的由来\n", 10 | "\n", 11 | "给定矩阵$A$,矩阵$A$乘以向量$x$,就像是使用矩阵$A$作用在向量$x$上,最后得到新的向量$Ax$。在这里,矩阵$A$就像是一个函数,接受一个向量$x$作为输入,给出向量$Ax$作为输出。\n", 12 | "\n", 13 | "在这一过程中,我们对一些特殊的向量很感兴趣,他们在输入($x$)输出($Ax$)的过程中始终保持同一个方向,这是比较特殊的,因为在大多情况下,$Ax$与$x$指向不同的方向。在这种特殊的情况下,$Ax$平行于$x$,我们把满足这个条件的$x$成为特征向量(Eigen vector)。这个平行条件用方程表示就是:\n", 14 | "\n", 15 | "$$Ax=\\lambda x\\tag{1}$$\n", 16 | "\n", 17 | "* 对这个式子,我们试着计算特征值为$0$的特征向量,此时有$Ax=0$,也就是特征值为$0$的特征向量应该位于$A$的零空间中。\n", 18 | " \n", 19 | " 也就是说,如果矩阵是奇异的,那么它将有一个特征值为$\\lambda = 0$。\n", 20 | "\n", 21 | "* 我们再来看投影矩阵$P=A(A^TA)^{-1}A^T$的特征值和特征向量。用向量$b$乘以投影矩阵$P$得到投影向量$Pb$,在这个过程中,只有当$b$已经处于投影平面(即$A$的列空间)中时,$Pb$与$b$才是同向的,此时$b$投影前后不变($Pb=1\\cdot b$)。\n", 22 | " \n", 23 | " 即在投影平面中的所有向量都是投影矩阵的特征向量,而他们的特征值均为$1$。\n", 24 | " \n", 25 | " 再来观察投影平面的法向量,也就是投影一讲中的$e$向量。我们知道对于投影,因为$e\\bot C(A)$,所以$Pe=0e$,即特征向量$e$的特征值为$0$。\n", 26 | " \n", 27 | " 于是,投影矩阵的特征值为$\\lambda=1, 0$。\n", 28 | "\n", 29 | "* 再多讲一个例子,二阶置换矩阵$A=\\begin{bmatrix}0&1\\\\1&0\\end{bmatrix}$,经过这个矩阵处理的向量,其元素会互相交换。\n", 30 | " \n", 31 | " 那么特征值为$1$的特征向量(即经过矩阵交换元素前后仍然不变)应该型为$\\begin{bmatrix}1\\\\1\\end{bmatrix}$。\n", 32 | " \n", 33 | " 特征值为$-1$的特征向量(即经过矩阵交换元素前后方向相反)应该型为$\\begin{bmatrix}1\\\\-1\\end{bmatrix}$。\n", 34 | "\n", 35 | "再提前透露一个特征值的性质:对于一个$n\\times n$的矩阵,将会有$n$个特征值,而这些特征值的和与该矩阵对角线元素的和相同,因此我们把矩阵对角线元素称为矩阵的迹(trace)。$$\\sum_{i=1}^n \\lambda_i=\\sum_{i=1}^n a_{ii}$$\n", 36 | "\n", 37 | "在上面二阶转置矩阵的例子中,如果我们求得了一个特征值$1$,那么利用迹的性质,我们就可以直接推出另一个特征值是$-1$。\n", 38 | "\n", 39 | "## 求解$Ax=\\lambda x$\n", 40 | "\n", 41 | "对于方程$Ax=\\lambda x$,有两个未知数,我们需要利用一些技巧从这一个方程中一次解出两个未知数,先移项得$(A-\\lambda I)x=0$。\n", 42 | "\n", 43 | "观察$(A-\\lambda I)x=0$,右边的矩阵相当于将$A$矩阵平移了$\\lambda$个单位,而如果方程有解,则这个平移后的矩阵$(A-\\lambda I)$一定是奇异矩阵。根据前面学到的行列式的性质,则有$$\\det{(A-\\lambda{I})}=0\\tag{2}$$\n", 44 | "\n", 45 | "这样一来,方程中就没有$x$了,这个方程也叫作特征方程(characteristic equation)。有了特征值,代回$(A-\\lambda I)x=0$,继续求$(A-\\lambda I)$的零空间即可。\n", 46 | "\n", 47 | "* 现在计算一个简单的例子,$A=\\begin{bmatrix}3&1\\\\1&3\\end{bmatrix}$,再来说一点题外话,这是一个对称矩阵,我们将得到实特征值,前面还有置换矩阵、投影矩阵,矩阵越特殊,则我们得到的特征值与特征向量也越特殊。看置换矩阵中的特征值,两个实数$1, -1$,而且它们的特征向量是正交的。\n", 48 | "\n", 49 | " 回到例题,计算$\\det{(A-\\lambda{I})}=\\begin{vmatrix}3-\\lambda&1\\\\1&3-\\lambda\\end{vmatrix}$,也就是对角矩阵平移再取行列式。原式继续化简得$(3-\\lambda)^2-1=\\lambda^2-6\\lambda+8=0, \\lambda_1=4,\\lambda_2=2$。可以看到一次项系数$-6$与矩阵的迹有关,常数项与矩阵的行列式有关。\n", 50 | "\n", 51 | " 继续计算特征向量,$A-4I=\\begin{bmatrix}-1&1\\\\1&-1\\end{bmatrix}$,显然矩阵是奇异的(如果是非奇异说明特征值计算有误),解出矩阵的零空间$x_1=\\begin{bmatrix}1\\\\1\\end{bmatrix}$;同理计算另一个特征向量,$A-2I=\\begin{bmatrix}1&1\\\\1&1\\end{bmatrix}$,解出矩阵的零空间$x_2=\\begin{bmatrix}1\\\\-1\\end{bmatrix}$。\n", 52 | "\n", 53 | " 回顾前面转置矩阵的例子,对矩阵$A'=\\begin{bmatrix}0&1\\\\1&0\\end{bmatrix}$有$\\lambda_1=1, x_1=\\begin{bmatrix}1\\\\1\\end{bmatrix}, \\lambda_2=-1, x_2=\\begin{bmatrix}-1\\\\1\\end{bmatrix}$。看转置矩阵$A'$与本例中的对称矩阵$A$有什么联系。\n", 54 | "\n", 55 | " 易得$A=A'+3I$,两个矩阵特征值相同,而其特征值刚好相差$3$。也就是如果给一个矩阵加上$3I$,则它的特征值会加$3$,而特征向量不变。这也很容易证明,如果$Ax=\\lambda x$,则$(A+3I)x=\\lambda x+3x=(\\lambda+3)x$,所以$x$还是原来的$x$,而$\\lambda$变为$\\lambda+3$。\n", 56 | "\n", 57 | "接下来,看一个关于特征向量认识的误区:已知$Ax=\\lambda x, Bx=\\alpha x$,则有$(A+B)x=(\\lambda+\\alpha)x$,当$B=3I$时,在上例中我们看到,确实成立,但是如果$B$为任意矩阵,则推论**不成立**,因为这两个式子中的特征向量$x$并不一定相同,所以两个式子的通常情况是$Ax=\\lambda x, By=\\alpha y$,它们也就无从相加了。\n", 58 | "\n", 59 | "* 再来看旋转矩阵的例子,旋转$90^\\circ$的矩阵$Q=\\begin{bmatrix}\\cos 90&-\\sin 90\\\\\\sin 90&\\cos 90\\end{bmatrix}=\\begin{bmatrix}0&-1\\\\1&0\\end{bmatrix}$(将每个向量旋转$90^\\circ$,用$Q$表示因为旋转矩阵是正交矩阵中很重要的例子)。\n", 60 | "\n", 61 | " 上面提到特征值的一个性质:特征值之和等于矩阵的迹;现在有另一个性质:特征值之积等于矩阵的行列式。$$\\prod_{i=1}^n\\lambda_i=\\det A$$\n", 62 | " \n", 63 | " 对于$Q$矩阵,有$\\begin{cases}\\lambda_1+\\lambda_2&=0\\\\\\lambda_1\\cdot\\lambda_2&=1\\end{cases}$,再来思考特征值与特征向量的由来,哪些向量旋转$90^\\circ$后与自己平行,于是遇到了麻烦,并没有这种向量,也没有这样的特征值来满足前面的方程组。\n", 64 | " \n", 65 | " 我们来按部就班的计算,$\\det(Q-\\lambda I)=\\begin{vmatrix}\\lambda&-1\\\\1&\\lambda\\end{vmatrix}=\\lambda^2+1=0$,于是特征值为$\\lambda_1=i, \\lambda_2=-i$,我们看到这两个值满足迹与行列式的方程组,即使矩阵全是实数,其特征值也可能不是实数。本例中即出现了一对共轭负数,我们可以说,如果矩阵越接近对称,那么特征值就是实数。如果矩阵越不对称,就像本例,$Q^T=-Q$,这是一个反对称的矩阵,于是我得到了纯虚的特征值,这是极端情况,通常我们见到的矩阵是介于对称与反对称之间的。\n", 66 | " \n", 67 | " 于是我们看到,对于好的矩阵(置换矩阵)有实特征值及正交的特征向量,对于不好的矩阵($90^\\circ$旋转矩阵)有纯虚的特征值。\n", 68 | " \n", 69 | "* 再来看一个更糟的情况,$A=\\begin{bmatrix}3&1\\\\0&3\\end{bmatrix}$,这是一个三角矩阵,我们可以直接得出其特征值,即对角线元素。来看如何得到这一结论的:$\\det(A-\\lambda I)=\\begin{vmatrix}3-\\lambda&1\\\\0&3-\\lambda\\end{vmatrix}=(3-\\lambda)^2=0$,于是$\\lambda_1=3, \\lambda_2=3$。而我们说这是一个糟糕的状况,在于它的特征向量。\n", 70 | "\n", 71 | " 带入特征值计算特征向量,带入$\\lambda_1=3$得$(A-\\lambda I)x=\\begin{bmatrix}0&1\\\\0&0\\end{bmatrix}\\begin{bmatrix}x_1\\\\x_2\\end{bmatrix}=\\begin{bmatrix}0\\\\0\\end{bmatrix}$,算出一个特征值$x_1=\\begin{bmatrix}1\\\\0\\end{bmatrix}$,当我们带入第二个特征值$\\lambda_1=3$时,我们无法得到另一个与$x_1$线性无关的特征向量了。\n", 72 | " \n", 73 | " 而本例中的矩阵$A$是一个退化矩阵(degenerate matrix),重复的特征值在特殊情况下可能导致特征向量的短缺。\n", 74 | " \n", 75 | "这一讲我们看到了足够多的“不好”的矩阵,下一讲会介绍一般情况下的特征值与特征向量。" 76 | ] 77 | } 78 | ], 79 | "metadata": { 80 | "kernelspec": { 81 | "display_name": "Python 3", 82 | "language": "python", 83 | "name": "python3" 84 | }, 85 | "language_info": { 86 | "codemirror_mode": { 87 | "name": "ipython", 88 | "version": 3 89 | }, 90 | "file_extension": ".py", 91 | "mimetype": "text/x-python", 92 | "name": "python", 93 | "nbconvert_exporter": "python", 94 | "pygments_lexer": "ipython3", 95 | "version": "3.5.2" 96 | } 97 | }, 98 | "nbformat": 4, 99 | "nbformat_minor": 0 100 | } 101 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/24~马尔科夫矩阵、傅里叶级数.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十四讲:马尔科夫矩阵、傅里叶级数\n", 8 | "\n", 9 | "## 马尔科夫矩阵\n", 10 | "\n", 11 | "马尔科夫矩阵(Markov matrix)是指具有以下两个特性的矩阵:\n", 12 | "\n", 13 | "1. 矩阵中的所有元素**大于等于**$0$;(因为马尔科夫矩阵与概率有关,而概率是非负的。)\n", 14 | "2. 每一列的元素之和为$1$\n", 15 | "\n", 16 | "对于马尔科夫矩阵,我们关心幂运算过程中的稳态(steady state)。与上一讲不同,指数矩阵关系特征值是否为$0$,而幂运算要达到稳态需要特征值为$1$。\n", 17 | "\n", 18 | "根据上面两条性质,我们可以得出两个推论:\n", 19 | "\n", 20 | "1. 马尔科夫矩阵必有特征值为$1$;\n", 21 | "2. 其他的特征值的绝对值皆小于$1$。\n", 22 | "\n", 23 | "使用第二十二讲中得到的公式进行幂运算$u_k=A^ku_0=S\\Lambda^kS^{-1}u_0=S\\Lambda^kS^{-1}Sc=S\\Lambda^kc=c_1\\lambda_1^kx_1+c_2\\lambda_2^kx_2+\\cdots+c_n\\lambda_n^kx_n$,从这个公式很容易看出幂运算的稳态。比如我们取$\\lambda_1=1$,其他的特征值绝对值均小于$1$,于是在经过$k$次迭代,随着时间的推移,其他项都趋近于$0$,于是在$k\\to\\infty$时,有稳态$u_k=c_1x_1$,这也就是初始条件$u_0$的第$1$个分量。\n", 24 | "\n", 25 | "我们来证明第一个推论,取$A=\\begin{bmatrix}0.1&0.01&0.3\\\\0.2&0.99&0.3\\\\0.7&0&0.4\\end{bmatrix}$,则$A-I=\\begin{bmatrix}-0.9&0.01&0.3\\\\0.2&-0.01&0.3\\\\0.7&0&-0.6\\end{bmatrix}$。观察$A-I$易知其列向量中元素之和均为$0$,因为马尔科夫矩阵的性质就是各列向量元素之和为$1$,现在我们从每一列中减去了$1$,所以这是很自然的结果。而如果列向量中元素和为$0$,则矩阵的任意行都可以用“零减去其他行之和”表示出来,即该矩阵的行向量线性相关。\n", 26 | "\n", 27 | "用以前学过的子空间的知识描述,当$n$阶方阵各列向量元素之和皆为$1$时,则有$\\begin{bmatrix}1\\\\1\\\\\\vdots\\\\1\\end{bmatrix}$在矩阵$A-I$左零空间中,即$(A-I)^T$行向量线性相关。而$A$特征值$1$所对应的特征向量将在$A-I$的零空间中,因为$Ax=x\\rightarrow(A-I)x=0$。\n", 28 | "\n", 29 | "另外,特征值具有这样一个性质:矩阵与其转置的特征值相同。因为我们在行列式一讲了解了性质10,矩阵与其转置的行列式相同,那么如果$\\det(A-\\lambda I)=0$,则有$\\det(A-\\lambda I)^T=0$,根据矩阵转置的性质有$\\det(A^T-\\lambda I^T)=0$,即$\\det(A^T-\\lambda I)=0$。这正是$A^T$特征值的计算式。\n", 30 | "\n", 31 | "然后计算特征值$\\lambda_1=1$所对应的特征向量,$(A-I)x_1=0$,得出$x_1=\\begin{bmatrix}0.6\\\\33\\\\0.7\\end{bmatrix}$,特征向量中的元素皆为正。\n", 32 | "\n", 33 | "接下来介绍马尔科夫矩阵的应用,我们用麻省和加州这两个州的人口迁移为例:\n", 34 | "\n", 35 | "$\\begin{bmatrix}u_{cal}\\\\u_{mass}\\end{bmatrix}_{k+1}\\begin{bmatrix}0.9&0.2\\\\0.1&0.8\\end{bmatrix}\\begin{bmatrix}u_{cal}\\\\u_{mass}\\end{bmatrix}_k$,元素非负,列和为一。这个式子表示每年有$10%$的人口从加州迁往麻省,同时有$20%$的人口从麻省迁往加州。注意使用马尔科夫矩阵的前提条件是随着时间的推移,矩阵始终不变。\n", 36 | "\n", 37 | "设初始情况$\\begin{bmatrix}u_{cal}\\\\u_{mass}\\end{bmatrix}_0=\\begin{bmatrix}0\\\\1000\\end{bmatrix}$,我们先来看第一次迁徙后人口的变化情况:$\\begin{bmatrix}u_{cal}\\\\u_{mass}\\end{bmatrix}_1=\\begin{bmatrix}0.9&0.2\\\\0.1&0.8\\end{bmatrix}\\begin{bmatrix}0\\\\1000\\end{bmatrix}=\\begin{bmatrix}200\\\\800\\end{bmatrix}$,随着时间的推移,会有越来越多的麻省人迁往加州,而同时又会有部分加州人迁往麻省。\n", 38 | "\n", 39 | "计算特征值:我们知道马尔科夫矩阵的一个特征值为$\\lambda_1=1$,则另一个特征值可以直接从迹算出$\\lambda_2=0.7$。\n", 40 | "\n", 41 | "计算特征向量:带入$\\lambda_1=1$求$A-I$的零空间有$\\begin{bmatrix}-0.1&0.2\\\\0.1&-0.2\\end{bmatrix}$,则$x_1=\\begin{bmatrix}2\\\\1\\end{bmatrix}$,此时我们已经可以得出无穷步后稳态下的结果了。$u_{\\infty}=c_1\\begin{bmatrix}2\\\\1\\end{bmatrix}$且人口总数始终为$1000$,则$c_1=\\frac{1000}{3}$,稳态时$\\begin{bmatrix}u_{cal}\\\\u_{mass}\\end{bmatrix}_{\\infty}=\\begin{bmatrix}\\frac{2000}{3}\\\\\\frac{1000}{3}\\end{bmatrix}$。注意到特征值为$1$的特征向量元素皆为正。\n", 42 | "\n", 43 | "为了求每一步的结果,我们必须解出所有特征向量。带入$\\lambda_2=0.7$求$A-0.7I$的零空间有$\\begin{bmatrix}0.2&0.2\\\\0.1&0.1\\end{bmatrix}$,则$x_2=\\begin{bmatrix}-1\\\\1\\end{bmatrix}$。\n", 44 | "\n", 45 | "通过$u_0$解出$c_1, c_2$,$u_k=c_11^k\\begin{bmatrix}2\\\\1\\end{bmatrix}+c_20.7^k\\begin{bmatrix}-1\\\\1\\end{bmatrix}$,带入$k=0$得$u_0=\\begin{bmatrix}0\\\\1000\\end{bmatrix}=c_1\\begin{bmatrix}2\\\\1\\end{bmatrix}+c_2\\begin{bmatrix}-1\\\\1\\end{bmatrix}$,解出$c_1=\\frac{1000}{3}, c_2=\\frac{2000}{3}$。\n", 46 | "\n", 47 | "另外,有时人们更喜欢用行向量,此时将要使用行向量乘以矩阵,其行向量各分量之和为$1$。\n", 48 | "\n", 49 | "## 傅里叶级数\n", 50 | "\n", 51 | "在介绍傅里叶级数(Fourier series)之前,先来回顾一下投影。\n", 52 | "\n", 53 | "设$q_1,q_2,\\cdots q_n$为一组标准正交基,则向量$v$在该标准正交基上的展开为$v=x_1q_1+x_2q_2+\\cdots+x_nq_n$,此时我们想要得到各系数$x_i$的值。比如求$x_1$的值,我们自然想要消掉除$x_1q_1$外的其他项,这时只需要等式两边同乘以$q_1^T$,因为的$q_i$向量相互正交且长度为$1$,则$q_i^Tq_j=0, q_i^2=1$所以原式变为$q_1^Tv=x_1$。\n", 54 | "\n", 55 | "写为矩阵形式有$\\Bigg[q_1\\ q_2\\ \\cdots\\ q_n\\Bigg]\\begin{bmatrix}x_1\\\\x_2\\\\\\vdots\\\\x_n\\end{bmatrix}=v$,即$Qx=v$。所以有$x=Q^{-1}v$,而在第十七讲我们了解到标准正交基有$Q^T=Q^{-1}$,所以我们不需要计算逆矩阵可直接得出$x=Q^Tv$。此时对于$x$的每一个分量有$x_i=q_i^Tv$。\n", 56 | "\n", 57 | "接下来介绍傅里叶级数。先写出傅里叶级数的展开式:\n", 58 | "\n", 59 | "$$\n", 60 | "f(x)=a_0+a_1\\cos x+b_1\\sin x+a_2\\cos 2x+b_2\\sin 2x+\\cdots\n", 61 | "$$\n", 62 | "\n", 63 | "傅里叶发现,如同将向量$v$展开(投影)到向量空间的一组标准正交基中,在函数空间中,我们也可以做类似的展开。将函数$f(x)$投影在一系列相互正交的函数中。函数空间中的$f(x)$就是向量空间中的$v$;函数空间中的$1,\\cos x,\\sin x,\\cos 2x,\\sin 2x,\\cdots$就是向量空间中的$q_1,q_2,\\cdots,q_n$;不同的是,函数空间是无限维的而我们以前接触到的向量空间通常是有限维的。\n", 64 | "\n", 65 | "再来介绍何为“函数正交”。对于向量正交我们通常使用两向量内积(点乘)为零判断。我们知道对于向量$v,w$的内积为$v^Tw=v_1w_1+v_2w_2+\\cdots+v_nw_n=0$,也就是向量的每个分量之积再求和。而对于函数$f(x)\\cdot g(x)$内积,同样的,我们需要计算两个函数的每个值之积而后求和,由于函数取值是连续的,所以函数内积为:\n", 66 | "\n", 67 | "$$f^Tg=\\int f(x)g(x)\\mathrm{d}x$$\n", 68 | "\n", 69 | "在本例中,由于傅里叶级数使用正余弦函数,它们的周期都可以算作$2\\pi$,所以本例的函数点积可以写作$f^Tg=\\int_0^{2\\pi}f(x)g(x)\\mathrm{d}x$。我来检验一个内积$\\int_0^{2\\pi}\\sin{x}\\cos{x}\\mathrm{d}x=\\left.\\frac{1}{2}\\sin^2x\\right|_0^{2\\pi}=0$,其余的三角函数族正交性结果可以参考[傅里叶级数](https://zh.wikipedia.org/wiki/%E5%82%85%E9%87%8C%E5%8F%B6%E7%BA%A7%E6%95%B0)的“希尔伯特空间的解读”一节。\n", 70 | "\n", 71 | "最后我们来看$\\cos x$项的系数是多少($a_0$是$f(x)$的平均值)。同向量空间中的情形一样,我们在等式两边同时做$\\cos x$的内积,原式变为$\\int_0^{2\\pi}f(x)\\cos x\\mathrm{d}x=a_1\\int_0^{2\\pi}\\cos^2x\\mathrm{d}x$,因为正交性等式右边仅有$\\cos x$项不为零。进一步化简得$a_1\\pi=\\int_0^{2\\pi}f(x)\\cos x\\mathrm{d}x\\rightarrow a_1=\\frac{1}{\\pi}\\int_0^{2\\pi}f(x)\\cos x\\mathrm{d}x$。\n", 72 | "\n", 73 | "于是,我们把函数$f(x)$展开到了函数空间的一组标准正交基上。" 74 | ] 75 | } 76 | ], 77 | "metadata": { 78 | "kernelspec": { 79 | "display_name": "Python 3", 80 | "language": "python", 81 | "name": "python3" 82 | }, 83 | "language_info": { 84 | "codemirror_mode": { 85 | "name": "ipython", 86 | "version": 3 87 | }, 88 | "file_extension": ".py", 89 | "mimetype": "text/x-python", 90 | "name": "python", 91 | "nbconvert_exporter": "python", 92 | "pygments_lexer": "ipython3", 93 | "version": "3.5.1" 94 | } 95 | }, 96 | "nbformat": 4, 97 | "nbformat_minor": 0 98 | } 99 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/27~复数矩阵和快速傅里叶变换.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十七讲:复数矩阵和快速傅里叶变换\n", 8 | "\n", 9 | "本讲主要介绍复数向量、复数矩阵的相关知识(包括如何做复数向量的点积运算、什么是复数对称矩阵等),以及傅里叶矩阵(最重要的复数矩阵)和快速傅里叶变换。\n", 10 | "\n", 11 | "## 复数矩阵运算\n", 12 | "\n", 13 | "先介绍复数向量,我们不妨换一个字母符号来表示:$z=\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix}$,向量的每一个分量都是复数。此时$z$不再属于$\\mathbb{R}^n$实向量空间,它现在处于$\\mathbb{C}^n$复向量空间。\n", 14 | "\n", 15 | "### 计算复向量的模\n", 16 | "\n", 17 | "对比实向量,我们计算模只需要计算$\\left|v\\right|=\\sqrt{v^Tv}$即可,而如果对复向量使用$z^Tz$则有$z^Tz=\\begin{bmatrix}z_1&z_2&\\cdots&z_n\\end{bmatrix}\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix}=z_1^2+z_2^2+\\cdots+z_n^2$,这里$z_i$是复数,平方后虚部为负,求模时本应相加的运算变成了减法。(如向量$\\begin{bmatrix}1&i\\end{bmatrix}$,右乘其转置后结果为$0$,但此向量的长度显然不是零。)\n", 18 | "\n", 19 | "根据上一讲我们知道,应使用$\\left|z\\right|=\\sqrt{\\bar{z}^Tz}$,即$\\begin{bmatrix}\\bar z_1&\\bar z_2&\\cdots&\\bar z_n\\end{bmatrix}\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix}$,即使用向量共轭的转置乘以原向量即可。(如向量$\\begin{bmatrix}1&i\\end{bmatrix}$,右乘其共轭转置后结果为$\\begin{bmatrix}1&-i\\end{bmatrix}\\begin{bmatrix}1\\\\i\\end{bmatrix}=2$。)\n", 20 | "\n", 21 | "我们把共轭转置乘以原向量记为$z^Hz$,$H$读作埃尔米特(人名为Hermite,形容词为Hermitian)\n", 22 | "\n", 23 | "### 计算向量的内积\n", 24 | "\n", 25 | "有了复向量模的计算公式,同理可得,对于复向量,内积不再是实向量的$y^Tx$形式,复向量内积应为$y^Hx$。\n", 26 | "\n", 27 | "### 对称性\n", 28 | "\n", 29 | "对于实矩阵,$A^T=A$即可表达矩阵的对称性。而对于复矩阵,我们同样需要求一次共轭$\\bar{A}^T=A$。举个例子$\\begin{bmatrix}2&3+i\\\\3-i&5\\end{bmatrix}$是一个复数情况下的对称矩阵。这叫做埃尔米特矩阵,有性质$A^H=A$。\n", 30 | "\n", 31 | "### 正交性\n", 32 | "\n", 33 | "在第十七讲中,我们这样定义标准正交向量:$q_i^Tq_j=\\begin{cases}0\\quad i\\neq j\\\\1\\quad i=j\\end{cases}$。现在,对于复向量我们需要求共轭:$\\bar{q}_i^Tq_j=q_i^Hq_j=\\begin{cases}0\\quad i\\neq j\\\\1\\quad i=j\\end{cases}$。\n", 34 | "\n", 35 | "第十七讲中的标准正交矩阵:$Q=\\Bigg[q_1\\ q_2\\ \\cdots\\ q_n\\Bigg]$有$Q^TQ=I$。现在对于复矩阵则有$Q^HQ=I$。\n", 36 | "\n", 37 | "就像人们给共轭转置起了个“埃尔米特”这个名字一样,正交性(orthogonal)在复数情况下也有了新名字,酉(unitary),酉矩阵(unitary matrix)与正交矩阵类似,满足$Q^HQ=I$的性质。而前面提到的傅里叶矩阵就是一个酉矩阵。\n", 38 | "\n", 39 | "## 傅里叶矩阵\n", 40 | "\n", 41 | "$n$阶傅里叶矩阵$F_n=\\begin{bmatrix}1&1&1&\\cdots&1\\\\1&w&w^2&\\cdots&w^{n-1}\\\\1&w^2&w^4&\\cdots&w^{2(n-1)}\\\\\\vdots&\\vdots&\\vdots&\\ddots&\\vdots\\\\1&w^{n-1}&w^{2(n-1)}&\\cdots&w^{(n-1)^2}\\end{bmatrix}$,对于每一个元素有$(F_n)_{ij}=w^{ij}\\quad i,j=0,1,2,\\cdots,n-1$。矩阵中的$w$是一个非常特殊的值,满足$w^n=1$,其公式为$w=e^{i2\\pi/n}$。易知$w$在复平面的单位圆上,$w=\\cos\\frac{2\\pi}{n}+i\\sin\\frac{2\\pi}{n}$。\n", 42 | "\n", 43 | "在傅里叶矩阵中,当我们计算$w$的幂时,$w$在单位圆上的角度翻倍。比如在$6$阶情形下,$w=e^{2\\pi/6}$,即位于单位圆上$60^\\circ$角处,其平方位于单位圆上$120^\\circ$角处,而$w^6$位于$1$处。从开方的角度看,它们是$1$的$6$个六次方根,而一次的$w$称为原根。\n", 44 | "\n", 45 | "* 我们现在来看$4$阶傅里叶矩阵,先计算$w$有$w=i,\\ w^2=-1,\\ w^3=-i,\\ w^4=1$,$F_4=\\begin{bmatrix}1&1&1&1\\\\1&i&i^2&i^3\\\\1&i^2&i^4&i^6\\\\1&i^3&i^6&i^9\\end{bmatrix}=\\begin{bmatrix}1&1&1&1\\\\1&i&-1&-i\\\\1&-1&1&-1\\\\1&-i&-1&i\\end{bmatrix}$。\n", 46 | "\n", 47 | " 矩阵的四个列向量正交,我们验证一下第二列和第四列,$\\bar{c_2}^Tc_4=1-0+1-0=0$,正交。不过我们应该注意到,$F_4$的列向量并不是标准的,我们可以给矩阵乘上系数$\\frac{1}{2}$(除以列向量的长度)得到标准正交矩阵$F_4=\\frac{1}{2}\\begin{bmatrix}1&1&1&1\\\\1&i&-1&-i\\\\1&-1&1&-1\\\\1&-i&-1&i\\end{bmatrix}$。此时有$F_4^HF_4=I$,于是该矩阵的逆矩阵也就是其共轭转置$F_4^H$。\n", 48 | " \n", 49 | "## 快速傅里叶变换(Fast Fourier transform/FFT)\n", 50 | "\n", 51 | "对于傅里叶矩阵,$F_6,\\ F_3$、$F_8,\\ F_4$、$F_{64},\\ F_{32}$之间有着特殊的关系。\n", 52 | "\n", 53 | "举例,有傅里叶矩阵$F_64$,一般情况下,用一个列向量右乘$F_{64}$需要约$64^2$次计算,显然这个计算量是比较大的。我们想要减少计算量,于是想要分解$F_{64}$,联系到$F_{32}$,有$\\Bigg[F_{64}\\Bigg]=\\begin{bmatrix}I&D\\\\I&-D\\end{bmatrix}\\begin{bmatrix}F_{32}&0\\\\0&F_{32}\\end{bmatrix}\\begin{bmatrix}1&&\\cdots&&&0&&\\cdots&&\\\\0&&\\cdots&&&1&&\\cdots&&\\\\&1&\\cdots&&&&0&\\cdots&&\\\\&0&\\cdots&&&&1&\\cdots&&\\\\&&&\\ddots&&&&&\\ddots&&\\\\&&&\\ddots&&&&&\\ddots&&\\\\&&&\\cdots&1&&&&\\cdots&0\\\\&&&\\cdots&0&&&&\\cdots&1\\end{bmatrix}$。\n", 54 | "\n", 55 | "我们分开来看等式右侧的这三个矩阵:\n", 56 | "\n", 57 | "* 第一个矩阵由单位矩阵$I$和对角矩阵$D=\\begin{bmatrix}1&&&&\\\\&w&&&\\\\&&w^2&&\\\\&&&\\ddots&\\\\&&&&w^{31}\\end{bmatrix}$组成,我们称这个矩阵为修正矩阵,显然其计算量来自$D$矩阵,对角矩阵的计算量约为$32$即这个修正矩阵的计算量约为$32$,单位矩阵的计算量忽略不计。\n", 58 | "\n", 59 | "* 第二个矩阵是两个$F_{32}$与零矩阵组成的,计算量约为$2\\times 32^2$。\n", 60 | "\n", 61 | "* 第三个矩阵通常记为$P$矩阵,这是一个置换矩阵,其作用是讲前一个矩阵中的奇数列提到偶数列之前,将前一个矩阵从$\\Bigg[x_0\\ x_1\\ \\cdots\\Bigg]$变为$\\Bigg[x_0\\ x_2\\ \\cdots\\ x_1\\ x_3\\ \\cdots\\Bigg]$,这个置换矩阵的计算量也可以忽略不计。(这里教授似乎在黑板上写错了矩阵,可以参考[FFT](https://math.berkeley.edu/~berlek/classes/CLASS.110/LECTURES/FFT)、[How the FFT is computed](http://vmm.math.uci.edu/ODEandCM/PDF_Files/FFT_Appendix_K.pdf)做进一步讨论。)\n", 62 | "\n", 63 | "所以我们把$64^2$复杂度的计算化简为$2\\times 32^2+32$复杂度的计算,我们可以进一步化简$F_{32}$得到与$F_{16}$有关的式子$\\begin{bmatrix}I_{32}&D_{32}\\\\I_{32}&-D_{32}\\end{bmatrix}\\begin{bmatrix}I_{16}&D_{16}&&\\\\I_{16}&-D_{16}&&\\\\&&I_{16}&D_{16}\\\\&&I_{16}&-D_{16}\\end{bmatrix}\\begin{bmatrix}F_{16}&&&\\\\&F_{16}&&\\\\&&F_{16}&\\\\&&&F_{16}\\end{bmatrix}\\begin{bmatrix}P_{16}&\\\\&P_{16}\\end{bmatrix}\\Bigg[\\ P_{32}\\ \\Bigg]$。而$32^2$的计算量进一步分解为$2\\times 16^2+16$的计算量,如此递归下去我们最终得到含有一阶傅里叶矩阵的式子。\n", 64 | "\n", 65 | "来看化简后计算量,$2\\left(2\\left(2\\left(2\\left(2\\left(2\\left(1\\right)^2+1\\right)+2\\right)+4\\right)+8\\right)+16\\right)+32$,约为$6\\times 32=\\log_264\\times \\frac{64}{2}$,算法复杂度为$\\frac{n}{2}\\log_2n$。\n", 66 | "\n", 67 | "于是原来需要$n^2$的运算现在只需要$\\frac{n}{2}\\log_2n$就可以实现了。不妨看看$n=10$的情况,不使用FFT时需要$n^2=1024\\times 1024$次运算,使用FFT时只需要$\\frac{n}{2}\\log_2n=5\\times 1024$次运算,运算量大约是原来的$\\frac{1}{200}$。\n", 68 | "\n", 69 | "下一讲将继续介绍特征值、特征向量及正定矩阵。" 70 | ] 71 | } 72 | ], 73 | "metadata": { 74 | "kernelspec": { 75 | "display_name": "Python 3", 76 | "language": "python", 77 | "name": "python3" 78 | }, 79 | "language_info": { 80 | "codemirror_mode": { 81 | "name": "ipython", 82 | "version": 3 83 | }, 84 | "file_extension": ".py", 85 | "mimetype": "text/x-python", 86 | "name": "python", 87 | "nbconvert_exporter": "python", 88 | "pygments_lexer": "ipython3", 89 | "version": "3.5.1" 90 | } 91 | }, 92 | "nbformat": 4, 93 | "nbformat_minor": 0 94 | } 95 | -------------------------------------------------------------------------------- /02~线性代数/99~参考资料/子实~《线性代数笔记》/25~复习二.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 第二十五讲:复习二\n", 8 | "\n", 9 | "* 我们学习了正交性,有矩阵$Q=\\Bigg[q_1\\ q_2\\ \\cdots\\ q_n\\Bigg]$,若其列向量相互正交,则该矩阵满足$Q^TQ=I$。\n", 10 | "* 进一步研究投影,我们了解了Gram-Schmidt正交化法,核心思想是求法向量,即从原向量中减去投影向量$E=b-P, P=Ax=\\frac{A^Tb}{A^TA}\\cdot A$。\n", 11 | "* 接着学习了行列式,根据行列式的前三条性质,我们拓展出了性质4-10。\n", 12 | "* 我们继续推导出了一个利用代数余子式求行列式的公式。\n", 13 | "* 又利用代数余子式推导出了一个求逆矩阵的公式。\n", 14 | "* 接下来我们学习了特征值与特征向量的意义:$Ax=\\lambda x$,进而了解了通过$\\det(A-\\lambda I)=0$求特征值、特征向量的方法。\n", 15 | "* 有了特征值与特征向量,我们掌握了通过公式$AS=\\Lambda S$对角化矩阵,同时掌握了求矩阵的幂$A^k=S\\Lambda^kS^{-1}$。\n", 16 | "\n", 17 | "微分方程不在本讲的范围内。下面通过往年例题复习上面的知识。\n", 18 | "\n", 19 | "1. *求$a=\\begin{bmatrix}2\\\\1\\\\2\\end{bmatrix}$的投影矩阵$P$*:$\\Bigg($由$a\\bot(b-p)\\rightarrow A^T(b-A\\hat x)=0$得到$\\hat x=\\left(A^TA\\right)^{-1}A^Tb$,求得$p=A\\hat x=A\\left(A^TA\\right)^{-1}A^Tb=Pb$最终得到$P\\Bigg)$$\\underline{P=A\\left(A^TA\\right)^{-1}A^T}\\stackrel{a}=\\frac{aa^T}{a^Ta}=\\frac{1}{9}\\begin{bmatrix}4&2&4\\\\2&1&2\\\\4&2&4\\end{bmatrix}$。\n", 20 | " \n", 21 | " *求$P$矩阵的特征值*:观察矩阵易知矩阵奇异,且为秩一矩阵,则其零空间为$2$维,所以由$Px=0x$得出矩阵的两个特征向量为$\\lambda_1=\\lambda_2=0$;而从矩阵的迹得知$trace(P)=1=\\lambda_1+\\lambda_2+\\lambda_3=0+0+1$,则第三个特征向量为$\\lambda_3=1$。\n", 22 | " \n", 23 | " *求$\\lambda_3=1$的特征向量*:由$Px=x$我们知道经其意义为,$x$过矩阵$P$变换后不变,又有$P$是向量$a$的投影矩阵,所以任何向量经过$P$变换都会落在$a$的列空间中,则只有已经在$a$的列空间中的向量经过$P$的变换后保持不变,即其特征向量为$x=a=\\begin{bmatrix}2\\\\1\\\\2\\end{bmatrix}$,也就是$Pa=a$。\n", 24 | " \n", 25 | " *有差分方程$u_{k+1}=Pu_k,\\ u_0=\\begin{bmatrix}9\\\\9\\\\0\\end{bmatrix}$,求解$u_k$*:我们先不急于解出特征值、特征向量,因为矩阵很特殊(投影矩阵)。首先观察$u_1=Pu_0$,式子相当于将$u_0$投影在了$a$的列空间中,计算得$u_1=a\\frac{a^Tu_0}{a^Ta}=3a=\\begin{bmatrix}6\\\\3\\\\6\\end{bmatrix}$(这里的$3$相当于做投影时的系数$\\hat x$),其意义为$u_1$在$a$上且距离$u_0$最近。再来看看$u_2=Pu_1$,这个式子将$u_1$再次投影到$a$的列空间中,但是此时的$u_1$已经在该列空间中了,再次投影仍不变,所以有$u_k=P^ku_0=Pu_0=\\begin{bmatrix}6\\\\3\\\\6\\end{bmatrix}$。\n", 26 | " \n", 27 | " 上面的解法利用了投影矩阵的特殊性质,如果在一般情况下,我们需要使用$AS=S\\Lambda\\rightarrow A=S\\Lambda S^{-1} \\rightarrow u_{k+1}=Au_k=A^{k+1}u_0, u_0=Sc\\rightarrow u_{k+1}=S\\Lambda^{k+1}S^{-1}Sc=S\\Lambda^{k+1}c$,最终得到公式$A^ku_0=c_1\\lambda_1^kx_1+c_2\\lambda_2^kx_2+\\cdots+c_n\\lambda_n^kx_n$。题中$P$的特殊性在于它的两个“零特征值”及一个“一特征值”使得式子变为$A^ku_0=c_3x_3$,所以得到了上面结构特殊的解。\n", 28 | " \n", 29 | "2. *将点$(1,4),\\ (2,5),\\ (3,8)$拟合到一条过零点的直线上*:设直线为$y=Dt$,写成矩阵形式为$\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}D=\\begin{bmatrix}4\\\\5\\\\8\\end{bmatrix}$,即$AD=b$,很明显$D$不存在。利用公式$A^TA\\hat D=A^Tb$得到$14D=38,\\ \\hat D=\\frac{38}{14}$,即最佳直线为$y=\\frac{38}{14}t$。这个近似的意义是将$b$投影在了$A$的列空间中。\n", 30 | "\n", 31 | "3. *求$a_1=\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}\\ a_2=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}$的正交向量*:找到平面$A=\\Bigg[a_1,a_2\\Bigg]$的正交基,使用Gram-Schmidt法,以$a_1$为基准,正交化$a_2$,也就是将$a_2$中平行于$a_1$的分量去除,即$a_2-xa_1=a_2-\\frac{a_1^Ta_2}{a_1^Ta_1}a_1=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}-\\frac{6}{14}\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}$。\n", 32 | "\n", 33 | "4. *有$4\\times 4$矩阵$A$,其特征值为$\\lambda_1,\\lambda_2,\\lambda_3,\\lambda_4$,则矩阵可逆的条件是什么*:矩阵可逆,则零空间中只有零向量,即$Ax=0x$没有非零解,则零不是矩阵的特征值。\n", 34 | "\n", 35 | " *$\\det A^{-1}$是什么*:$\\det A^{-1}=\\frac{1}{\\det A}$,而$\\det A=\\lambda_1\\lambda_2\\lambda_3\\lambda_4$,所以有$\\det A^{-1}=\\frac{1}{\\lambda_1\\lambda_2\\lambda_3\\lambda_4}$。\n", 36 | " \n", 37 | " *$trace(A+I)$的迹是什么*:我们知道$trace(A)=a_{11}+a_{22}+a_{33}+a_{44}=\\lambda_1+\\lambda_2+\\lambda_3+\\lambda_4$,所以有$trace(A+I)=a_{11}+1+a_{22}+1+a_{33}+1+a_{44}+1=\\lambda_1+\\lambda_2+\\lambda_3+\\lambda_4+4$。\n", 38 | " \n", 39 | "5. *有矩阵$A_4=\\begin{bmatrix}1&1&0&0\\\\1&1&1&0\\\\0&1&1&1\\\\0&0&1&1\\end{bmatrix}$,求$D_n=?D_{n-1}+?D_{n-2}$*:求递归式的系数,使用代数余子式将矩阵安第一行展开得$\\det A_4=1\\cdot\\begin{vmatrix}1&1&0\\\\1&1&1\\\\0&1&1\\end{vmatrix}-1\\cdot\\begin{vmatrix}1&1&0\\\\0&1&1\\\\0&1&1\\end{vmatrix}=1\\cdot\\begin{vmatrix}1&1&0\\\\1&1&1\\\\0&1&1\\end{vmatrix}-1\\cdot\\begin{vmatrix}1&1\\\\1&1\\end{vmatrix}=\\det A_3-\\det A_2$。则可以看出有规律$D_n=D_{n-1}-D_{n-2}, D_1=1, D_2=0$。\n", 40 | "\n", 41 | " 使用我们在差分方程中的知识构建方程组$\\begin{cases}D_n&=D_{n-1}-D_{n-2}\\\\D_{n-1}&=D_{n-1}\\end{cases}$,用矩阵表达有$\\begin{bmatrix}D_n\\\\D_{n-1}\\end{bmatrix}=\\begin{bmatrix}1&-1\\\\1&0\\end{bmatrix}\\begin{bmatrix}D_{n-1}\\\\D_{n-2}\\end{bmatrix}$。计算系数矩阵$A_c$的特征值,$\\begin{vmatrix}1-\\lambda&1\\\\1&-\\lambda\\end{vmatrix}=\\lambda^2-\\lambda+1=0$,解得$\\lambda_1=\\frac{1+\\sqrt{3}i}{2},\\lambda_2=\\frac{1-\\sqrt{3}i}{2}$,特征值为一对共轭复数。\n", 42 | " \n", 43 | " 要判断递归式是否收敛,需要计算特征值的模,即实部平方与虚部平方之和$\\frac{1}{4}+\\frac{3}{4}=1$。它们是位于单位圆$e^{i\\theta}$上的点,即$\\cos\\theta+i\\sin\\theta$,从本例中可以计算出$\\theta=60^\\circ$,也就是可以将特征值写作$\\lambda_1=e^{i\\pi/3},\\lambda_2=e^{-i\\pi/3}$。注意,从复平面单位圆上可以看出,这些特征值的六次方将等于一:$e^{2\\pi i}=e^{2\\pi i}=1$。继续深入观察这一特性对矩阵的影响,$\\lambda_1^6=\\lambda^6=1$,则对系数矩阵有$A_c^6=I$。则系数矩阵$A_c$服从周期变化,既不发散也不收敛。\n", 44 | "\n", 45 | "6. *有这样一类矩阵$A_4=\\begin{bmatrix}0&1&0&0\\\\1&0&2&0\\\\0&2&0&3\\\\0&0&3&0\\end{bmatrix}$,求投影到$A_3$列空间的投影矩阵*:有$A_3=\\begin{bmatrix}0&1&0\\\\1&0&2\\\\0&2&0\\end{bmatrix}$,按照通常的方法求$P=A\\left(A^TA\\right)A^T$即可,但是这样很麻烦。我们可以考察这个矩阵是否可逆,因为如果可逆的话,$\\mathbb{R}^4$空间中的任何向量都会位于$A_4$的列空间,其投影不变,则投影矩阵为单位矩阵$I$。所以按行展开求行列式$\\det A_4=-1\\cdot-1\\cdot-3\\cdot-3=9$,所以矩阵可逆,则$P=I$。\n", 46 | "\n", 47 | " *求$A_3$的特征值及特征向量*:$\\left|A_3-\\lambda I\\right|=\\begin{vmatrix}-\\lambda&1&0\\\\1&-\\lambda&2\\\\0&2&-\\lambda\\end{vmatrix}=-\\lambda^3+5\\lambda=0$,解得$\\lambda_1=0,\\lambda_2=\\sqrt 5,\\lambda_3=-\\sqrt 5$。\n", 48 | " \n", 49 | " 我们可以猜测这一类矩阵的规律:奇数阶奇异,偶数阶可逆。" 50 | ] 51 | } 52 | ], 53 | "metadata": { 54 | "kernelspec": { 55 | "display_name": "Python 3", 56 | "language": "python", 57 | "name": "python3" 58 | }, 59 | "language_info": { 60 | "codemirror_mode": { 61 | "name": "ipython", 62 | "version": 3 63 | }, 64 | "file_extension": ".py", 65 | "mimetype": "text/x-python", 66 | "name": "python", 67 | "nbconvert_exporter": "python", 68 | "pygments_lexer": "ipython3", 69 | "version": "3.5.1" 70 | } 71 | }, 72 | "nbformat": 4, 73 | "nbformat_minor": 0 74 | } 75 | -------------------------------------------------------------------------------- /03~概率论与数理统计/概率论基础/中心极限与大数定理.md: -------------------------------------------------------------------------------- 1 | # 大数定律及中心极限定理 2 | 3 | # 切比雪夫不等式 4 | 5 | 假设随机变量 $X$ 具有期望 $\mathbb{E}[X]=\mu$,方差 $\operatorname{Var}(X)=\sigma^{2}$,则对于任意正数 $\varepsilon$,下列不等式成立: 6 | 7 | $$ 8 | P\{|X-\mu| \geq \varepsilon\} \leq \frac{\sigma^{2}}{\varepsilon^{2}} 9 | $$ 10 | 11 | 其意义在于,对于距离 $\mathbb{E}[X]$ 足够远的地方(距离大于等于 $\varepsilon$),事件出现的概率是小于等于 $\frac{\sigma^{2}}{\varepsilon^{2}}$,即事件出现在区间 $[\mu-\varepsilon, \mu+\varepsilon]$ 的概率大于等于 $1-\frac{\sigma^{2}}{\varepsilon^{2}}$。该不等式给出了随机变量 $X$ 在分布未知的情况下,事件 $\{|X-\mu| \leq \varepsilon\}$ 的下限估计,如: 12 | 13 | $$ 14 | P\{|X-\mu|<3 \sigma\} \geq 0.8889 15 | $$ 16 | 17 | 该不等式的证明为: 18 | 19 | $$ 20 | \begin{aligned} P\{|X-\mu| \geq \varepsilon& \}=\int_{|x-\mu| \geq \varepsilon} p(x) d x \leq \int_{|x-\mu| \geq \varepsilon} \frac{|x-\mu|^{2}}{\varepsilon^{2}} p(x) d x \\ & \leq \frac{1}{\varepsilon^{2}} \int_{-\infty}^{\infty}(x-\mu)^{2} p(x) d x=\frac{\sigma^{2}}{\varepsilon^{2}} \end{aligned} 21 | $$ 22 | 23 | 切比雪夫不等式的特殊情况:假设随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 相互独立,且具有相同的数学期望和方差:$\mathbb{E}\left[X_{k}\right]=\mu, \operatorname{Var}\left[X_{k}\right]=\sigma^{2}$。作前 $n$ 个随机变量的算术平均:$\overline{X}=\frac{1}{n} \sum_{k=1}^{n} X_{k}$,则对于任意正数 $\varepsilon$ 有: 24 | 25 | $$ 26 | \lim _{n \rightarrow \infty} P\{|\overline{X}-\mu|<\varepsilon\}=\lim _{n \rightarrow \infty} P\left\{\left|\frac{1}{n} \sum_{k=1}^{n} X_{k}-\mu\right|<\varepsilon\right\}=1 27 | $$ 28 | 29 | 证明过程为,根据期望和方差的性质有:$\mathbb{E}[\overline{X}]=\mu, \quad \operatorname{Var}[\overline{X}]=\frac{\sigma^{2}}{n}$,根据切比雪夫不等式有: 30 | 31 | $$ 32 | P\{|\overline{X}-\mu| \geq \varepsilon\} \leq \frac{\sigma^{2}}{n \varepsilon^{2}} 33 | $$ 34 | 35 | 则有 $\lim _{n \rightarrow \infty} P\{|\overline{X}-\mu| \geq \varepsilon\}=0$,因此有 $\lim _{n \rightarrow \infty} P\{|\overline{X}-\mu|<\varepsilon\}=1$。 36 | 37 | # 大数定理 38 | 39 | 假设 $Y_{1}, Y_{2}, \cdots, Y_{n}, \cdots$ 是一个随机变量序列,$a$ 是一个常数,如果对于任意正数 $\varepsilon$ 存在: 40 | 41 | $$ 42 | \lim _{n \rightarrow \infty} P\left\{\left|Y_{n}-a\right| \leq \varepsilon\right\}=1 43 | $$ 44 | 45 | 则称序列 $Y_{1}, Y_{2}, \cdots, Y_{n}, \cdots$ 依概率收敛于 $a$,记作:$Y_{n} \stackrel{P}{\rightarrow} a$。 46 | 47 | 依概率收敛包含两层意思,收敛表明这是一个随机变量序列,而不是某个随机变量;且序列是无限长,而不是有限长。依概率则表明序列无穷远处的随机变量 $Y_{\infty}$ 的分布规律为:绝大部分分布于点 $a$,极少数位于 $a$ 之外。且分布于 $a$ 之外的事件发生的概率之和为 0。 48 | 49 | ## 大数定理一 50 | 51 | 假设随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 相互独立,且具有相同的数学期望和方差:$\mathbb{E}\left[X_{k}\right]=\mu, \operatorname{Var}\left[X_{k}\right]=\sigma^{2}$。则序列: 52 | 53 | $$ 54 | \overline{X}=\frac{1}{n} \sum_{k=1}^{n} X_{k} 55 | $$ 56 | 57 | 依概率收敛于 $\mu$,即 $\overline{X} \stackrel{P}{\rightarrow} \mu$。值得一提的是,这里并没有要求随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 同分布。 58 | 59 | ## 伯努利大数定理 60 | 61 | 假设 $n_{A}$ 为 $n$ 次独立重复实验中事件 $A$ 发生的次数,$p$ 是事件 $A$ 在每次试验中发生的概率。则对于任意正数 $\varepsilon$ 有: 62 | 63 | $$ 64 | \begin{array}{c}{\lim _{n \rightarrow \infty} P\left\{\left|\frac{n_{A}}{n}-p\right|<\varepsilon\right\}=1} \\ {\text { or: } \quad \lim _{n \rightarrow \infty} P\left\{\left|\frac{n_{A}}{n}-p\right| \geq \varepsilon\right\}=0}\end{array} 65 | $$ 66 | 67 | 即当独立重复实验执行非常大的次数时,事件 $A$ 发生的频率逼近于它的概率。 68 | 69 | ## 辛钦定理 70 | 71 | 假设随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 相互独立,服从同一分布,且具有相同的数学期望:$\mathbb{E}\left[X_{k}\right]=\mu$,则对于任意正数 $\varepsilon$ 存在: 72 | 73 | $$ 74 | \lim _{n \rightarrow \infty} P\left\{\left|\frac{1}{n} \sum_{k=1}^{n} X_{k}-\mu\right|<\varepsilon\right\}=1 75 | $$ 76 | 77 | 注意:这里并没有要求随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 的方差存在,伯努利大数定理是亲钦定理的特殊情况。 78 | 79 | # 中心极限定理 80 | 81 | ## 独立同分布的中心极限定理 82 | 83 | 假设随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 独立同分布,且具有数学期望和方差:$\mathbb{E}\left[X_{k}\right]=\mu, \operatorname{Var}\left[X_{k}\right]=\sigma^{2}$,则随机变量之和 $\overline{S X_{n}}=\sum_{k=1}^{n} X_{k}$ 的标准变化量: 84 | 85 | $$ 86 | Y_{n}=\frac{\overline{S X_{n}}-\mathbb{E}\left[\overline{S X_{n}}\right]}{\sqrt{\operatorname{Var}\left[\overline{S X_{n}}\right]}}=\frac{\overline{S X_{n}}-n \mu}{\sqrt{n} \sigma} 87 | $$ 88 | 89 | 的概率分布函数 $F_{n}(x)$ 对于任意 $x$ 满足: 90 | 91 | $$ 92 | \begin{array}{c}{\lim _{n \rightarrow \infty} F_{n}(x)=\lim _{n \rightarrow \infty} P\left\{Y_{n} \leq x\right\}=\lim _{n \rightarrow \infty} P\left\{\frac{\sum_{k=1}^{n} X_{k}-n \mu}{\sqrt{n} \sigma} \leq x\right\}} \\ {=\int_{-\infty}^{x} \frac{1}{\sqrt{2 \pi}} e^{-t^{2} / 2} d t=\Phi(x)}\end{array} 93 | $$ 94 | 95 | 其物理意义在于,均值方差为 $\mu, \sigma^{2}$ 的独立同分布的随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 之和 $\overline{S X_{n}}=\sum_{k=1}^{n} X_{k}$ 的标准变化量 $Y_n$,当 $n$ 充分大时,其分布近似于标准正态分布。 96 | 97 | 即 $\overline{S X_{n}}=\sum_{k=1}^{n} X_{k}$ 在 $n$ 充分大时,其分布近似于 $N\left(n \mu, n \sigma^{2}\right)$。一般情况下,很难求出 $n$ 个随机变量之和的分布函数。因此当 $n$ 充分大时,可以通过正态分布来做理论上的分析或者计算。 98 | 99 | ## Liapunov 定理 100 | 101 | 假设随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 相互独立,具有数学期望和方差:$\mathbb{E}\left[X_{k}\right]=\mu_{k}, \operatorname{Var}\left[X_{k}\right]=\sigma_{k}^{2}$。 102 | 103 | 记 $B_{n}^{2}=\sum_{k=1}^{n} \sigma_{k}^{2}$,如果存在正数 $\delta$,使得 $n \rightarrow \infty$ 时: 104 | 105 | $$ 106 | \frac{1}{B_{n}^{2+\delta}} \sum_{k=1}^{n} \mathbb{E}\left[\left|X_{k}-\mu_{k}\right|^{2+\delta}\right] \rightarrow 0 107 | $$ 108 | 109 | 则随机变量之和 $\overline{S X_{n}}=\sum_{k=1}^{n} X_{k}$ 的标准变化量: 110 | 111 | $$ 112 | Z_{n}=\frac{\overline{S X_{n}}-\mathbb{E}\left[\overline{S X_{n}}\right]}{\sqrt{\operatorname{Var}\left[\overline{S X_{n}}\right]}}=\frac{\overline{S X_{n}}-\sum_{k=1}^{n} \mu_{k}}{B_{n}} 113 | $$ 114 | 115 | 的概率分布函数 $F_{n}(x)$ 对于任意 $x$ 满足: 116 | 117 | $$ 118 | \begin{aligned} \lim _{n \rightarrow \infty} F_{n}(x)=\lim _{n \rightarrow \infty} & P\left\{Z_{n} \leq x\right\}=\lim _{n \rightarrow \infty} P\left\{\frac{\sum_{k=1}^{n} X_{k}-\sum_{k=1}^{n} \mu_{k}}{B_{n}} \leq x\right\} \\ &=\int_{-\infty}^{x} \frac{1}{\sqrt{2 \pi}} e^{-t^{2} / 2} d t=\Phi(x) \end{aligned} 119 | $$ 120 | 121 | 其物理意义在于,相互独立的随机变量 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 之和 $\overline{S X_{n}}=\sum_{k=1}^{n} X_{k}$ 的衍生随机变量序列 $Z_{n}=\frac{\overline{S X_{n}}-\sum_{k=1}^{n} \mu_{k}}{B_{n}}$,当 $n$ 充分大时,其分布近似于标准正态分布。注意,这里同样不要求 $X_{1}, X_{2}, \cdots, X_{n}, \cdots$ 同分布。 122 | 123 | ## Demoiver-Laplace 定理 124 | 125 | 假设随机变量序列 $\eta_{n}, n=1,2, \dots$ 服从参数为 $(n, p)$ 的二项分布,其中 $0 2 | 3 | 4 | 5 | 6 | Mathematics-Series 7 | 8 | 9 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 34 | 38 | 40 | 45 | 46 |
47 | 64 | 97 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 143 | 144 | 145 | 146 | 155 | 156 | 157 | --------------------------------------------------------------------------------