If you're seeing this message, it means we're having trouble loading external resources on our website.

如果你被网页过滤器挡住,请确保域名*.kastatic.org*.kasandbox.org 没有被阻止.

主要内容

格拉姆-施密特正交化

使用格拉姆-施密特正交化为子空间找到一个正交基. Sal Khan 创建

视频字幕

比方说我有一个线性无关向量组成的集合 v1 v2直到vk 组成V的一组基 我们之前已经见过这个很多次了 很好 它是一组基 但是我们学过 在最近几次视频中它会变得更好 如果它还是V的一组标准正交基 我们将要在此次视频中强调的是 是否有某种方法 我们可以对V构造一组标准正交基 如果我们有了这样的一组基 我假设它不是正交的 无论它是不是正交的都可以做出来 它就会生成另一组标准正交基 但是我们可以 只给任意一组基 生成V的一组标准正交基 然后能够获益于 正交基所有好的性质 我们来看看我们能不能做一点工作 我们来针对一些简单的情形来考虑这个问题 比方说我有一个一维子空间 我们称它为V1 因为它是一维子空间 我说它是向量v1张成的空间 现在 或者我们可以说向量v1 是子空间V1的基 如果我有这个简单的情形 我们怎样确保这是正交的 我可以做的是我可以定义某个向量 称它为u1 很显然 这个是正交于其它向量的 也没有其它向量 向量 但是这个集合没有其它成员了 所以它是正交于其它向量的 因为没有其它向量 然后让它的长度等于1 你可以取这个向量除以它的长度 如果我们定义某个向量u1等于v1 除以v1的长度 那么u1的长度会是什么? 它会是v1的长度 除以v1的长度像这样 这就是个常量 这会是1除以v1的长度 乘以v1的长度 就等于1 这个向量长度就是1 那么就像这样 如果我们有一个集合只有u1 我们可以说只有u1的这个集合 是V1的一组标准正交基 对于子空间V1 现在 这是一个很平凡地简单 k=1的情形我们做完了 非常简单 我们只要除以长度就可以了 你只要本质上就是标准化这个向量 你就得到了一组标准正交基 因为没有其它的向量和它用来保证正交了 我们把这个问题变得稍微复杂一些 比方说我们处理二维情形 比方说我们有一个子空间V2 它是空间 比方说 它是头两个向量张成的 它是v1和向量v2张成的 现在 我们知道v1 v1可以很简单地表示成 或者说 v1是u1的一个线性组合 我怎么知道的? 我可以把这两边同时 乘以v1的长度 我们得到u1乘以v1的长度等于v1 所以我们说这是一样的 这个等于是向量u1 和向量v2张成的空间 其中u1是我们已经得到的向量 我为什么可以这样说? 因为向量 表示成这些向量的线性组合 也可以是那些向量的线性组合 因为这曾经是一个v1 你可以替代v1 成u1的用v1的线性表示 所以你就可以用u1乘以这个量就得到它了 我想你理解了 但是我们如何确保这是一个正交集合 我们怎么做? 我把它用图表示 这是Rn中的一个平面 我们就把我们的黑板 或者我们的视频板作为这个平面 我们有一个u1 一个单位1向量 它长度为1 这就是u1 v1和v2是线性无关的 这样根据基的定义 即你不能把v2表示成 v1的一个线性倍数或者线性组合 同样地 你也不能把v2表示成 u1的一个线性组合 因为u1是u1的一个线性组合 所以v1不会在由u1张成的直线上 我实际上可以这样画 由u1张成的直线就像这样 这是u1张成直线 我把它画得再好一些 我不想把它画得太暗 这是那条直线 我再画最后一次 由u1张成的直线就像这样 它就是这样 就是一条直线 这就是子空间V1 对吧? 用u1张成的 所以这就等于u1张成的子空间 我们之前做的事 标准化v1得到u1 v1张成空间等同于u1张成的空间 这就是那个子空间 这条Rn中的这条直线 我们还有向量v2 线性无关于v1和u1 v2看起来 比方说像这样 是v2 现在 我们想做的是 把v2替换成另一个向量 严格正交于这个向量 可以构造v2 用这个向量和我们新的向量的某个组合表示 那么最显然的向量会是某个向量 正交于v1 它是正交的 所以V1正交部分中的一员 如果你观察一下它 如果我加V1中的某个成员到 V1正交部分中的某个成员 就会得到v2 事实上 我们已经见过很多次了 我们知道Rn中的任意向量 比方说v2 可以表示成两个向量的和 我称它们x和y 其中x是V1中的成员 y是正交于V1部分集合中的成员 我们已经见过很多次了 那么这些根据定义是什么? 我们在寻找这个 这就是那个x 这就是那个y 我们在寻找这个y 因为如果我们可以找到这个向量y 那么如果我们把v替换成那个向量y 我们仍可以生成v因为你可以 取一个u的倍数加上y得到v 所以任何向量 之前你可以用v2生成 现在你同样可以用我们的u1生成 就是它的倍数 加上我们的新向量的倍数 我们正在尝试解决 我们正在尝试计算出 这个向量y是什么 那么我们怎么做 它就是v2减去这个向量x 对吧? 这个向量x是什么 根据定义 这个向量x是 根据定义 v2在子空间V1上的投影 所以 这个我们正在尝试找寻的向量 向量y 如果我们找到它了 我们可以用y替换v2 这个向量y 就等于v2 我这么写 减去v2在V1上的投影 这就是y 记住 如果我们可以替换v2 这个原因为什么u1和v2张成的空间 等同于空间由u1和 我们称这个y2 我们就称它y2 因为我们很有可能 在以后必须用到这个y什么 你需要y2 这个原因为什么这个空间等同于 u1和y2张成的这个空间是因为我可以 生成v2用u1和y2的一个线性组合 对吧? 我可以把u1乘以一个倍数然后加上y2得到v2 任何向量我可以用v2生成我就可以用得到 用这些向量的一个线性组合 那就是为什么这些是相等的 现在这个整理后的 这些向量是正交部分 或者这些向量是彼此正交的 对吧? 根据定义 y是这个正交部分的一个成员 如果你给这两个向量间打上点 就会得到0 我们到底怎么解决它 这个也是有用的 因为V1有一组标准正交基 我们看到 我想两三个视频之前 关于标准正交基比较好的性质 非常简单 取判定这些基上的投影 它在本质上 我写在这 向量v2在子空间V1上的投影 等于v2 我这么写 v2点乘子空间V1的第一个基向量 就是向量u1 对吧? 它是第一个基向量 我们正在处理一个标准正交基 乘以u1 然后如果我们有更多的基向量 我们可以说加v2点乘我们下一个基向量 乘以那个基向量 等等 但是V1只有一个基向量 它只有这个基向量u1 对吧? 它只被这个向量张成 所以 我们可以把这个重新写一下 y2 这个向量 我将用v2替换它 等于 v2减去v2在子空间V1上的投影 在那条线上的 就是这个 v2点乘u1 乘以向量u1 就像这样 我们就解出了y 我们有了V2的一个基 这里这个向量和这个向量是正交的 这个向量是单位向量 它已经被标准化了 但是这个向量还没有被标准化 所以为了把它标准化 我们就定义某个其它的向量 作为u2 然后做相同的事情 我们就把它标准化 u2等于y2除以y2的长度 现在 我们可以说子空间V2等于 这个u1张成的空间 我在这写u2不写y2 因为我可以通过对u2乘以一个倍数生成y2 现在整理后结果是 我有两个单位向量 或者两个标准化后的向量 它们彼此正交 并且它们正交地张成v1和v2张成的空间 现在 我们需要继续 如果我们想再求v3会怎样 我们怎么做? 我们做同样的事情 我们再定义子空间V3 这就是三维子空间 一旦超越三维 就在视觉上很难判断了 但是我想你们将会看到 这个模型在这步之后 如果我定义V3等于这些向量张成的空间 u1 u2和我们的原始基v3 我没在这写但是这有一个v3 在我们原始的非标准正交基中 我们有v3 这会变成怎样 或者我们怎样才能把这个转化成一组标准正交基 如果你把这些都画出来 u1和u2张成的空间 我们的子空间V2就是一个平面 它就是R3中的一个平面 它就会像那样 所以 我们新的空间将会是那个平面的全部 所有那个平面中的线性组合 加上和向量v3的线性组合 v3是和这些向量线性无关的 因为它线性无关于这些 我们用来构造这些向量的向量 所以v3跳出这个平面 它不能被表示 用那些向量的线性组合 所以我们说v3像这样跳出这个平面 现在 我们想得到另一个向量 可以表示这个空间内的一切 但是它要正交于这些向量 或者换种思路 它正交于这个平面 所以我们想得到另一个向量 正交于这个平面 我们称那个向量为y3 y下标3 不是y的三次幂 y下标3 如果我们算出这个y下标3 我们就可以用它替换v3因为v3 可以用u1和u2线性表示 对吧? 那将会是u1和u2的线性组合 将会是这个平面中的某个向量加上y3 我可以表示这个向量用这个绿色的向量 加上这个向量 如果我们用y3替换它 我们仍可以表达v3 我们可以表达所有的线性组合 v3能辅助的 那么y3是什么? 利用同样的逻辑 这个绿色的向量 是向量v3在子空间V2上的投影 向量y3就等于这个向量v3 减去v3在V2上投影 那将会变成什么样? 这个投影 我在这写 v3在子空间V2上的投影 v3的 将会等于 我们用之前用过同样的逻辑 我们看过这个在两三个视频之前 因为V2是被一组标准正交基所定义 我们可以说 v3向那个子空间的投影是v3 点乘我们的第一个基向量 点乘u1 乘以我们的第一个基向量 加上v3点乘我们的第二个基向量 我们的第二个标准正交基向量 乘以我们的第二个标准正交基向量 就是这么简单 它就是其中一个很好的结果 关于得到一个标准正交基是什么样 这就是一个标准正交基 所以我们可以这样定义投影 y就将是 v3减去这些 我把它写出来 y3就将是 v3减去v3在V2上的投影 减去那些 我复制一下 然后再粘贴 然后你得到y3 y3很漂亮 如果我们用y3替换这个 我们可以 因为我们现在可以得到v3 通过这些向量和y3的线性组合 它很漂亮因为所有这些向量都正交于 各自其它向量 但是y3不是单位1的 它还没有被标准化 所以我们可以用另一个单位向量替换y3 我们就是说 u3等于 y3除以y3的长度 无论它是什么 但是如果我们知道y3是什么 我么就可以计算出它的长度然后除以它 然后如果你写 这就等于u1 u2 u3张成的空间 u3是y3倍数降低的结果 我们正在讨论线性组合 当我们讨论空间 所以可以给它们倍乘 然后把它加到这个投影上 你仍将得到v3 现在 这些就都是标准化后的向量了 所以你就得到了一组标准正交基 对于子空间V3 我认为你现在已经学会了这个模型 你可以继续做这件事情 你可以定义V4 当我定义这个我刚才说过的问题 我们处理一个k维子空间 我们直接到Vk 但是你继续做直到做到你定义的k 如果k是3 我们就做完了 如果k是4 你说你定义了一个子空间V4 等于u1 u2 u3张成的空间 然后抛出一个非标准正交的向量 v4 组合在一起 所以你可以用y4替换v4等于 v4减去这个投影 变得有点看不清了 你这不是投影到一个三维空间 v4投影到子空间V3 它完全可以类推到这 它就是V3现在就是一个三维空间 不是一个平面 你发现 在这个上面的投影 这是严格 正交于所有其它的向量 正交于子空间V3 你可以用y4构造v4 因为v4 根据定义 等于 我们可以重新整理这个 y4加上v4在V3上的投影 所以你可以用y4构造v4 和这些向量的某种线性组合 我可以用y4替换这个向量 然后我把y4标准化 我会除以它的长度得到u4 我继续做这件事件直到到第k步 如果我做V5 我还是反反复复这一过程 构造一个标准正交基的这个过程 被称作Gram-Schmidt过程 它可能看起来有点抽象 我做它的方法 但是下次视频 我将 针对子空间找寻标准正交基 当你必须处理一些具体的数 你就会发现这个不是太坏