线性代数:修订间差异
Linear algebra
AIContentBot(留言 | 贡献) 扩充定义、推导、算例、边界条件与原创 SVG 配图(AI 辅助整理,算例已复算) |
AIContentBot(留言 | 贡献) 扩充线性代数、最小二乘、贝叶斯与正态分布,接通几何和建模学习路径 |
||
| (未显示同一用户的2个中间版本) | |||
| 第1行: | 第1行: | ||
'''线性代数'''(linear algebra)研究向量之间的线性关系,以及保持这些关系的变换。它从一次方程组的求解出发,发展出[[向量空间]]、[[矩阵]]、正交投影和特征值等方法。许多看似不同的问题——方程有多少解、怎样拟合有误差的数据、重复执行一个过程会怎样——都能在这套框架中联系起来。 | |||
== | 本文以实数为系数。阅读下面的例子,只需会解简单的一次方程;矩阵的行列运算和基的定义可分别查阅[[矩阵]]与[[向量空间]]。 | ||
== 三条方程为什么未必能确定三个未知量 == | |||
考虑方程组 | |||
<math display="block">\begin{cases}x+y+z=4,\\2x+3y+z=9,\\x+2y=5.\end{cases}</math> | |||
先用第一条消去后两条中的 <math>x</math>。第二条减去第一条的两倍,得到 | |||
<math display="block">(2x+3y+z)-2(x+y+z)=9-8,\qquad y-z=1.</math> | |||
第三条减去第一条,得到的仍是 <math>y-z=1</math>。所以两条新的方程重复了,只有一个关系限制 <math>y,z</math>。 | |||
令可以自由选择的 <math>z=t</math>,就有 <math>y=1+t</math>;代回第一条,得 <math>x=4-(1+t)-t=3-2t</math>。全部解为 | |||
<math display="block">\begin{pmatrix}x\\y\\z\end{pmatrix}=\begin{pmatrix}3\\1\\0\end{pmatrix}+t\begin{pmatrix}-2\\1\\1\end{pmatrix},\qquad t\in\mathbb R.</math> | |||
当 <math>t=0</math>,解是 <math>(3,1,0)</math>;当 <math>t=2</math>,解是 <math>(-1,3,2)</math>。两者都满足原方程。几何上,全部解沿同一条直线排列;代数上,三个未知量只受到两条独立约束。 | |||
[[File:Gezhi-expand-linear-solutions.svg|frame|center|alt=三维斜投影中,所有解位于经过三一零且方向为负二一一的直线上,标出参数零一二的三个点|图中的直线由参数式给出,三个坐标随同一个参数一起改变。斜投影只帮助辨认位置,是否满足方程仍要代回核验。]] | |||
若第三条右端改成六,消元将同时要求 <math>y-z=1</math> 和 <math>y-z=2</math>,方程便无解。若保留前两条、把第三条换成 <math>z=2</math>,则自由参数被固定,解唯一。因此决定解的状态的是约束是否独立、彼此是否相容,而不仅是方程和未知量的数量。 | |||
== 把同一个问题读成向量的组合 == | |||
把系数排成矩阵,方程组简写为 | |||
<math display="block">A\begin{pmatrix}x\\y\\z\end{pmatrix}=b,\qquad A=\begin{pmatrix}1&1&1\\2&3&1\\1&2&0\end{pmatrix},\qquad b=\begin{pmatrix}4\\9\\5\end{pmatrix}.</math> | |||
按行读,就是刚才的三条方程。按列读,则是 | |||
<math display="block">x\begin{pmatrix}1\\2\\1\end{pmatrix}+y\begin{pmatrix}1\\3\\2\end{pmatrix}+z\begin{pmatrix}1\\1\\0\end{pmatrix}=b.</math> | |||
求解是在问:给这三列各取多少倍,才能拼成目标输出 <math>b</math>?所有能拼成的输出称为矩阵的'''列空间''',也就是线性映射的'''像'''。目标在列空间中,方程才有解。 | |||
本例第二列加第三列等于第一列的两倍。因此,沿输入方向 <math>(-2,1,1)</math> 增加任意倍数,对输出的总改变都是零。这正是上一节留下的自由方向。 | |||
== 线性意味着保持组合 == | |||
矩阵所描述的过程满足 | |||
<math display="block">T(au+bv)=aT(u)+bT(v),</math> | <math display="block">T(au+bv)=aT(u)+bT(v),</math> | ||
其中 <math>u,v</math> 是输入向量,<math>a,b</math> 是实数。这样的映射称为'''线性映射'''。先把输入相加、缩放,再计算输出,与分别计算后同样相加、缩放,结果一致。 | |||
例如 <math>T(x,y)=(x+2y,3x-y)</math> 满足这条规则。若 <math>u=(u_1,u_2)</math>、<math>v=(v_1,v_2)</math>,把 <math>au+bv</math> 代入第一个输出,就得到 | |||
<math display="block">a u_1+b v_1+2(a u_2+b v_2)=a(u_1+2u_2)+b(v_1+2v_2),</math> | |||
第二个输出同理。这便验证了线性。 | |||
一次函数 <math>f(x)=x+1</math> 的图像虽是直线,却不是这里的线性映射:它把零送到一,而线性规则要求 <math>T(0)=0</math>。它属于仿射映射。线性代数中的“线性”指运算规律,不是图像是否为直线。 | |||
保持组合还有一个直接结果:知道一组基的输出,就知道所有输入的输出。若 <math>x=\sum_i x_i e_i</math>,则 <math>T(x)=\sum_i x_i T(e_i)</math>。把 <math>T(e_i)</math> 的坐标排成矩阵各列,便得到 <math>T(x)=Ax</math>;这正是矩阵表示线性映射的原因。 | |||
== 核、像与所有解的形状 == | |||
产生零输出的输入构成'''核''',记作 | |||
<math display="block">\ker A=\{z:Az=0\}.</math> | |||
它记录变换无法辨别的输入方向。若 <math>x_0</math> 是 <math>Ax=b</math> 的一个解,核中的每个 <math>z</math> 都给出另一个解,因为 | |||
<math display="block">A(x_0+z)=Ax_0+Az=b+0=b.</math> | |||
反过来,任意解 <math>x</math> 与 <math>x_0</math> 之差满足 <math>A(x-x_0)=b-b=0</math>。所以全部解恰好是 | |||
<math display="block">x_0+\ker A.</math> | |||
前面的方程组中,特解是 <math>(3,1,0)</math>,核是 <math>(-2,1,1)</math> 的所有倍数,因而解集是一条平移后的直线。 | |||
核与像都是向量子空间。以核为例,若 <math>Au=Av=0</math>,则 <math>A(au+bv)=a0+b0=0</math>,任意线性组合仍在核中。像也如此:两个可达输出的线性组合,可以由相应输入的组合产生。 | |||
像的维数称为'''秩''',核的维数称为'''零度'''。对于有 <math>n</math> 个输入坐标的矩阵,'''秩—零度定理'''给出 | |||
<math display="block">n=\dim\ker A+\operatorname{rank}A.</math> | |||
本例有一个被消去的独立输入方向、两个独立输出方向,所以 <math>3=1+2</math>。 | |||
=== 秩—零度关系的证明 === | |||
先取核的一组基 <math>u_1,\ldots,u_k</math>,再补入 <math>v_1,\ldots,v_r</math>,使整个列表成为输入空间的基。于是输入维数是 <math>k+r</math>。 | |||
任意输入可写成 <math>\sum_i a_i u_i+\sum_j b_jv_j</math>。应用 <math>A</math> 后,核中的部分消失,输出成为 <math>\sum_j b_jAv_j</math>。所以 <math>Av_1,\ldots,Av_r</math> 张成像。 | |||
还需证明这些输出无关。若 <math>\sum_j c_jAv_j=0</math>,那么 <math>\sum_jc_jv_j</math> 属于核,可写成 <math>\sum_i d_i u_i</math>。移项得到 | |||
<math display="block">\sum_jc_jv_j-\sum_i d_i u_i=0.</math> | |||
完整列表是一组基,故所有系数为零,特别是每个 <math>c_j=0</math>。因此这些输出是像的一组基,像的维数为 <math>r</math>,定理得证。 | |||
这个证明把“丢失的方向”和“仍能辨别的方向”分别计数。对于同样有 <math>n</math> 个输入和输出坐标的方阵,核只有零向量时,秩为 <math>n</math>;此时每个输出都有唯一输入,矩阵可逆。 | |||
== 不必消元到底,也能发现相容条件 == | |||
回到最初的矩阵,第三行恰好等于第二行减第一行。因此它们右端也必须满足同样关系: | |||
<math display="block">b_3=b_2-b_1,\qquad b_1-b_2+b_3=0.</math> | |||
原来的 <math>(4,9,5)</math> 满足条件;把第三个数改成六就不满足。左边的约束不是对未知数的猜测,而是对所有可能输出都成立的限制。 | |||
令 <math>w=(1,-1,1)^{\mathsf T}</math>,行关系可写成 <math>w^{\mathsf T}A=0</math>。若 <math>Ax=b</math> 有解,那么 | |||
<math display="block">w^{\mathsf T}b=w^{\mathsf T}Ax=0.</math> | |||
像 <math>w</math> 这样与全部列都垂直的向量构成 <math>\ker A^{\mathsf T}</math>,称为左零空间。因此相容条件说:目标输出必须与左零空间垂直。 | |||
在有限维实数空间中,这个必要条件也是充分条件。因为列空间包含在 <math>(\ker A^{\mathsf T})^\perp</math> 中,且两者维数都等于 <math>\operatorname{rank}A</math>,它们实际相同。这里使用了行秩等于列秩,见后面的四个基本子空间资料。于是 | |||
<math display="block">Ax=b\text{ 有解}\quad\Longleftrightarrow\quad | |||
b\perp\ker A^{\mathsf T}.</math> | |||
本例左零空间只有一个独立方向,所以一条右端关系就检查完所有相容条件。这与输入空间中的核互相补充:左零空间决定目标能否到达,核决定到达同一目标的输入能否唯一。 | |||
== 数据不满足方程时:寻找最近的输出 == | |||
测量数据往往不能被模型精确表示。这时可把问题改为:在允许的输出中,找与给定数据距离最近的点。 | |||
最简单的情形是允许输出只能在横轴上,而目标为 <math>b=(2,1)</math>。候选输出 <math>p=(a,0)</math> 与目标的距离平方为 | |||
<math display="block">\|b-p\|^2=(2-a)^2+1.</math> | |||
当 <math>a=2</math> 时取最小值。因此最佳输出是 <math>(2,0)</math>,误差 <math>(0,1)</math> 与横轴垂直。 | |||
[[File:Gezhi-linear-projection-theme.svg|frame|center|alt=点二一向横轴作垂线,垂足为二零,残差为零一|目标到垂足的线段最短;移动垂足会增加一个非负的水平距离平方。]] | |||
一般情况下,允许输出是矩阵的列空间。设最佳输出候选为 <math>p=A\hat x</math>,残差为 <math>r=b-p</math>。如果残差与所有列都垂直,它也与列空间中的任意 <math>Ah</math> 垂直。换一个输入 <math>\hat x+h</math> 后, | |||
<math display="block">\|b-A(\hat x+h)\|^2=\|r-Ah\|^2=\|r\|^2+\|Ah\|^2\ge\|r\|^2.</math> | |||
中间没有交叉项,正是因为垂直。因此这样的输出必定最近。 | |||
反过来,如果残差与某列空间方向 <math>v</math> 的点积非零,把输出移动 <math>tv</math>,误差平方变为 | |||
<math display="block">\|r-tv\|^2=\|r\|^2-2t\,r^{\mathsf T}v+t^2\|v\|^2.</math> | |||
选一个与 <math>r^{\mathsf T}v</math> 同号且足够小的 <math>t</math>,就能使误差减小。所以最优点处残差必须与列空间垂直。写成矩阵形式,就是 | |||
<math display="block">A^{\mathsf T}(b-A\hat x)=0,\qquad A^{\mathsf T}A\hat x=A^{\mathsf T}b.</math> | |||
这称为正规方程,是[[最小二乘法]]的基本条件。 | |||
例如用直线拟合三个给定点 <math>(0,1),(1,2),(2,2)</math>。写成 <math>\hat y=a+c(t-1)</math>,设计矩阵两列分别为 <math>(1,1,1)</math> 和 <math>(-1,0,1)</math>。它们点积为零,平方长度分别为三、二,因此正规方程为 | |||
<math display="block">3a=1+2+2=5,\qquad 2c=(-1)\cdot1+0\cdot2+1\cdot2=1.</math> | |||
得到 <math>a=5/3,c=1/2</math>,即 <math>\hat y=7/6+t/2</math>。三个残差为 <math>-1/6,1/3,-1/6</math>,其和为零,与 <math>(-1,0,1)</math> 的点积也为零,恰好验证了正交条件。 | |||
== 重复变换与特征方向 == | |||
有些方向经过变换后仍在原来那条直线上,只改变倍数。若非零向量 <math>v</math> 满足 | |||
<math display="block">Av=\lambda v,</math> | |||
就称它为'''特征向量''',<math>\lambda</math> 为特征值。重复作用时,<math>A^2v=\lambda^2v</math>,一般有 <math>A^kv=\lambda^kv</math>。沿这样的方向,不必每次重新做完整矩阵乘法。 | |||
考虑 | |||
<math display="block">A=\begin{pmatrix}2&1\\1&2\end{pmatrix}.</math> | |||
直接计算可得 <math>A(1,1)=3(1,1)</math>、<math>A(1,-1)=(1,-1)</math>。两个方向独立,任意 <math>(x,y)</math> 都能分解为 | |||
<math display="block">(x,y)=\frac{x+y}{2}(1,1)+\frac{x-y}{2}(1,-1).</math> | |||
[[File:Gezhi-teaching-eigendirections.svg|frame|center|alt=矩阵把一一方向伸长三倍,保留一负一方向,二零向量分解成这两个方向之和|先把白色向量分解到两条虚线方向,再分别考虑各方向会缩放多少。]] | |||
图中 <math>v=(1,1)</math> 被放大三倍,<math>w=(1,-1)</math> 保持不变。重复变换时,只需分别重复这两个缩放。 | |||
因此 | |||
<math display="block">A^k(x,y)=3^k\frac{x+y}{2}(1,1)+\frac{x-y}{2}(1,-1).</math> | |||
例如 <math>(2,0)</math> 的两项系数都是一,做 <math>k</math> 次后就是 <math>(3^k+1,3^k-1)</math>。当 <math>k=1</math>,得到 <math>(4,2)</math>,与直接相乘一致。 | |||
当一组基全由特征向量组成时,称矩阵可对角化。在这组基下,变换只是分别缩放各个坐标。不过这并非总能做到:剪切矩阵 <math>S=\begin{pmatrix}1&1\\0&1\end{pmatrix}</math> 的特征方程给出 <math>\lambda=1</math>,而 <math>Sv=v</math> 要求第二坐标为零,只有一个独立特征方向,不能组成平面的基。 | |||
== | === 两个状态之间的迁移 === | ||
设一个系统每步有第一状态的八成留在原处、两成转到第二状态;第二状态的三成转到第一状态、七成留在原处。用列向量记录比例,一步变化为 | |||
<math display="block">P=\begin{pmatrix}0.8&0.3\\0.2&0.7\end{pmatrix}.</math> | |||
各列非负且和为一,保证更新后仍为总和一的比例。 | |||
稳定比例 <math>s=(u,v)</math> 应满足 <math>Ps=s</math> 和 <math>u+v=1</math>。第一条分量方程为 <math>0.8u+0.3v=u</math>,所以 <math>0.2u=0.3v</math>,即 <math>u:v=3:2</math>。于是 <math>s=(0.6,0.4)</math>。 | |||
<math | |||
偏离方向满足 <math>P(1,-1)=0.5(1,-1)</math>。从全部位于第一状态的 <math>(1,0)</math> 出发,先分解为 | |||
<math display="block">(1,0)=(0.6,0.4)+(0.4,-0.4).</math> | |||
稳定部分不变,偏离部分每步减半,所以 | |||
<math display="block">P^k(1,0)=(0.6,0.4)+2^{-k}(0.4,-0.4).</math> | |||
一步后为 <math>(0.8,0.2)</math>,两步后为 <math>(0.7,0.3)</math>,最终趋向 <math>(0.6,0.4)</math>。这个模型中,特征值一表示不变部分,特征值二分之一表示逐渐衰减的部分。 | |||
[[File:Gezhi-expand-linear-markov.svg|frame|center|alt=两状态比例随步数变化,第一状态从一逐步下降趋于零点六,第二状态从零上升趋于零点四;两比例始终相加为一|点表示整数步的状态,连线只帮助追踪次序。虚线标出稳定比例,每一步到稳定比例的偏差都减半。]] | |||
还可以把两状态模型化成一条[[差分方程模型|标量递推]]。令第一状态比例为 <math>u_k</math>,第二状态便是 <math>1-u_k</math>,所以 | |||
<math display="block">u_{k+1}=0.8u_k+0.3(1-u_k)=0.5u_k+0.3.</math> | |||
<math display="block"> | 减去平衡值0.6,得到 <math>u_{k+1}-0.6=0.5(u_k-0.6)</math>。这正是矩阵特征方向计算得到的衰减规律;消去一个受总量约束的坐标后,同一过程也可由一维递推描述。 | ||
== 历史与进一步阅读 == | |||
《九章算术》第八章“方程”已经通过排列系数、逐步消去来求解实际问题中的线性方程组。[https://old.maa.org/press/periodicals/convergence/illustrating-the-nine-chapters-on-the-mathematical-art-their-use-in-a-college-mathematics-history-1 美国数学协会对《九章算术》的介绍]提供了这些算法的背景。 | |||
十九世纪,矩阵运算与抽象线性空间逐步形成:Grassmann 的《扩张论》发表于 1844 年,Cayley 在 1858 年系统研究矩阵,Peano 在 1888 年给出线性空间的公理化定义。[https://mathshistory.st-andrews.ac.uk/HistTopics/Abstract_linear_spaces/ MacTutor:抽象线性空间史]。现代线性代数把消元、几何和抽象结构组织在一起,使同一结论能够用于坐标向量、多项式及其他线性对象。 | |||
进一步学习可沿两条方向展开:[[最小二乘法]]和[[优化]]研究近似与最优问题;[[微分方程]]研究连续时间中状态如何变化。计算中还需区分精确相关与近似相关:当数据有舍入误差时,接近相关的列可能使系数对误差敏感,这属于数值线性代数要处理的问题。 | |||
== | == 参考资料与后续阅读 == | ||
* [https://ocw.mit.edu/courses/18-06-linear-algebra-spring-2010/ MIT | * [https://ocw.mit.edu/courses/18-06-linear-algebra-spring-2010/ MIT OpenCourseWare,Gilbert Strang,18.06 Linear Algebra]:消元、空间、最小二乘和特征值课程。 | ||
* [[矩阵]] | * [https://ocw.mit.edu/courses/18-06sc-linear-algebra-fall-2011/pages/ax-b-and-the-four-subspaces/the-four-fundamental-subspaces/ MIT 18.06SC,The Four Fundamental Subspaces]:四个基本子空间的课程单元。 | ||
* [https://math.mit.edu/~gs/linearalgebra/ila5/linearalgebra5_3-5.pdf Strang,《Introduction to Linear Algebra》第 3.5 节]:行空间与列空间在消元下的不同变化。 | |||
* 前置可读[[矩阵]]与[[向量空间]];继续阅读[[最小二乘法]]、[[优化]]、[[微分方程]]、[[数学建模]]。 | |||
[[分类:代数]] | [[分类:代数]] | ||
2026年9月20日 (日) 10:06的最新版本
线性代数(linear algebra)研究向量之间的线性关系,以及保持这些关系的变换。它从一次方程组的求解出发,发展出向量空间、矩阵、正交投影和特征值等方法。许多看似不同的问题——方程有多少解、怎样拟合有误差的数据、重复执行一个过程会怎样——都能在这套框架中联系起来。
本文以实数为系数。阅读下面的例子,只需会解简单的一次方程;矩阵的行列运算和基的定义可分别查阅矩阵与向量空间。
三条方程为什么未必能确定三个未知量
考虑方程组 先用第一条消去后两条中的 。第二条减去第一条的两倍,得到 第三条减去第一条,得到的仍是 。所以两条新的方程重复了,只有一个关系限制 。
令可以自由选择的 ,就有 ;代回第一条,得 。全部解为 当 ,解是 ;当 ,解是 。两者都满足原方程。几何上,全部解沿同一条直线排列;代数上,三个未知量只受到两条独立约束。
若第三条右端改成六,消元将同时要求 和 ,方程便无解。若保留前两条、把第三条换成 ,则自由参数被固定,解唯一。因此决定解的状态的是约束是否独立、彼此是否相容,而不仅是方程和未知量的数量。
把同一个问题读成向量的组合
把系数排成矩阵,方程组简写为 按行读,就是刚才的三条方程。按列读,则是 求解是在问:给这三列各取多少倍,才能拼成目标输出 ?所有能拼成的输出称为矩阵的列空间,也就是线性映射的像。目标在列空间中,方程才有解。
本例第二列加第三列等于第一列的两倍。因此,沿输入方向 增加任意倍数,对输出的总改变都是零。这正是上一节留下的自由方向。
线性意味着保持组合
矩阵所描述的过程满足 其中 是输入向量, 是实数。这样的映射称为线性映射。先把输入相加、缩放,再计算输出,与分别计算后同样相加、缩放,结果一致。
例如 满足这条规则。若 、,把 代入第一个输出,就得到 第二个输出同理。这便验证了线性。
一次函数 的图像虽是直线,却不是这里的线性映射:它把零送到一,而线性规则要求 。它属于仿射映射。线性代数中的“线性”指运算规律,不是图像是否为直线。
保持组合还有一个直接结果:知道一组基的输出,就知道所有输入的输出。若 ,则 。把 的坐标排成矩阵各列,便得到 ;这正是矩阵表示线性映射的原因。
核、像与所有解的形状
产生零输出的输入构成核,记作 它记录变换无法辨别的输入方向。若 是 的一个解,核中的每个 都给出另一个解,因为 反过来,任意解 与 之差满足 。所以全部解恰好是 前面的方程组中,特解是 ,核是 的所有倍数,因而解集是一条平移后的直线。
核与像都是向量子空间。以核为例,若 ,则 ,任意线性组合仍在核中。像也如此:两个可达输出的线性组合,可以由相应输入的组合产生。
像的维数称为秩,核的维数称为零度。对于有 个输入坐标的矩阵,秩—零度定理给出 本例有一个被消去的独立输入方向、两个独立输出方向,所以 。
秩—零度关系的证明
先取核的一组基 ,再补入 ,使整个列表成为输入空间的基。于是输入维数是 。
任意输入可写成 。应用 后,核中的部分消失,输出成为 。所以 张成像。
还需证明这些输出无关。若 ,那么 属于核,可写成 。移项得到 完整列表是一组基,故所有系数为零,特别是每个 。因此这些输出是像的一组基,像的维数为 ,定理得证。
这个证明把“丢失的方向”和“仍能辨别的方向”分别计数。对于同样有 个输入和输出坐标的方阵,核只有零向量时,秩为 ;此时每个输出都有唯一输入,矩阵可逆。
不必消元到底,也能发现相容条件
回到最初的矩阵,第三行恰好等于第二行减第一行。因此它们右端也必须满足同样关系: 原来的 满足条件;把第三个数改成六就不满足。左边的约束不是对未知数的猜测,而是对所有可能输出都成立的限制。
令 ,行关系可写成 。若 有解,那么 像 这样与全部列都垂直的向量构成 ,称为左零空间。因此相容条件说:目标输出必须与左零空间垂直。
在有限维实数空间中,这个必要条件也是充分条件。因为列空间包含在 中,且两者维数都等于 ,它们实际相同。这里使用了行秩等于列秩,见后面的四个基本子空间资料。于是 本例左零空间只有一个独立方向,所以一条右端关系就检查完所有相容条件。这与输入空间中的核互相补充:左零空间决定目标能否到达,核决定到达同一目标的输入能否唯一。
数据不满足方程时:寻找最近的输出
测量数据往往不能被模型精确表示。这时可把问题改为:在允许的输出中,找与给定数据距离最近的点。
最简单的情形是允许输出只能在横轴上,而目标为 。候选输出 与目标的距离平方为 当 时取最小值。因此最佳输出是 ,误差 与横轴垂直。
一般情况下,允许输出是矩阵的列空间。设最佳输出候选为 ,残差为 。如果残差与所有列都垂直,它也与列空间中的任意 垂直。换一个输入 后, 中间没有交叉项,正是因为垂直。因此这样的输出必定最近。
反过来,如果残差与某列空间方向 的点积非零,把输出移动 ,误差平方变为 选一个与 同号且足够小的 ,就能使误差减小。所以最优点处残差必须与列空间垂直。写成矩阵形式,就是 这称为正规方程,是最小二乘法的基本条件。
例如用直线拟合三个给定点 。写成 ,设计矩阵两列分别为 和 。它们点积为零,平方长度分别为三、二,因此正规方程为 得到 ,即 。三个残差为 ,其和为零,与 的点积也为零,恰好验证了正交条件。
重复变换与特征方向
有些方向经过变换后仍在原来那条直线上,只改变倍数。若非零向量 满足 就称它为特征向量, 为特征值。重复作用时,,一般有 。沿这样的方向,不必每次重新做完整矩阵乘法。
考虑 直接计算可得 、。两个方向独立,任意 都能分解为
图中 被放大三倍, 保持不变。重复变换时,只需分别重复这两个缩放。
因此 例如 的两项系数都是一,做 次后就是 。当 ,得到 ,与直接相乘一致。
当一组基全由特征向量组成时,称矩阵可对角化。在这组基下,变换只是分别缩放各个坐标。不过这并非总能做到:剪切矩阵 的特征方程给出 ,而 要求第二坐标为零,只有一个独立特征方向,不能组成平面的基。
两个状态之间的迁移
设一个系统每步有第一状态的八成留在原处、两成转到第二状态;第二状态的三成转到第一状态、七成留在原处。用列向量记录比例,一步变化为 各列非负且和为一,保证更新后仍为总和一的比例。
稳定比例 应满足 和 。第一条分量方程为 ,所以 ,即 。于是 。
偏离方向满足 。从全部位于第一状态的 出发,先分解为 稳定部分不变,偏离部分每步减半,所以 一步后为 ,两步后为 ,最终趋向 。这个模型中,特征值一表示不变部分,特征值二分之一表示逐渐衰减的部分。
还可以把两状态模型化成一条标量递推。令第一状态比例为 ,第二状态便是 ,所以 减去平衡值0.6,得到 。这正是矩阵特征方向计算得到的衰减规律;消去一个受总量约束的坐标后,同一过程也可由一维递推描述。
历史与进一步阅读
《九章算术》第八章“方程”已经通过排列系数、逐步消去来求解实际问题中的线性方程组。美国数学协会对《九章算术》的介绍提供了这些算法的背景。
十九世纪,矩阵运算与抽象线性空间逐步形成:Grassmann 的《扩张论》发表于 1844 年,Cayley 在 1858 年系统研究矩阵,Peano 在 1888 年给出线性空间的公理化定义。MacTutor:抽象线性空间史。现代线性代数把消元、几何和抽象结构组织在一起,使同一结论能够用于坐标向量、多项式及其他线性对象。
进一步学习可沿两条方向展开:最小二乘法和优化研究近似与最优问题;微分方程研究连续时间中状态如何变化。计算中还需区分精确相关与近似相关:当数据有舍入误差时,接近相关的列可能使系数对误差敏感,这属于数值线性代数要处理的问题。
参考资料与后续阅读
- MIT OpenCourseWare,Gilbert Strang,18.06 Linear Algebra:消元、空间、最小二乘和特征值课程。
- MIT 18.06SC,The Four Fundamental Subspaces:四个基本子空间的课程单元。
- Strang,《Introduction to Linear Algebra》第 3.5 节:行空间与列空间在消元下的不同变化。
- 前置可读矩阵与向量空间;继续阅读最小二乘法、优化、微分方程、数学建模。