1. 矩阵分解

  • SVD分解
  • QR分解
  • LU,LDU分解
  • Cholesky 分解
    _(LDLT 和LL分解合起来称为乔里斯基分解Cholesky decomposition)_
  • 奇异值分解
  • 特征分解
  • 极分解

正交矩阵

  • 正交矩阵:是一个方块矩阵 Q,其元素为实数,而且行向量与列向量皆为正交的单位向量,使得该矩阵的转置矩阵为其逆矩阵:

          Q
    
    
          T
    
    
    
         =
    
    
    
          Q
    
    
    
           −
    
    
           1
    
    
    
    
         ⇔
    
    
    
          Q
    
    
          T
    
    
    
         Q
    
    
         =
    
    
         Q
    
    
    
          Q
    
    
          T
    
    
    
         =
    
    
         I
    
    
         .
          ⁣
    
    
        Q^{T}=Q^{-1}\Leftrightarrow Q^{T}Q=QQ^{T}=I.\,\!
    
    
     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1.03577em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathdefault">Q</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.841331em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight" style="margin-right: 0.13889em;">T</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.00855em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathdefault">Q</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">⇔</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.03577em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathdefault">Q</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.841331em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight" style="margin-right: 0.13889em;">T</span></span></span></span></span></span></span></span></span><span class="mord mathdefault">Q</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.03577em; vertical-align: -0.19444em;"></span><span class="mord mathdefault">Q</span><span class="mord"><span class="mord mathdefault">Q</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.841331em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight" style="margin-right: 0.13889em;">T</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.07847em;">I</span><span class="mord">.</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mspace" style="margin-right: -0.166667em;"></span></span></span></span></span></li><li>行列式值为+1的正交矩阵,称为特殊正交矩阵,它是一个旋转矩阵。</li><li>所有特殊正交矩阵形成一个子群 {\displaystyle SO(n)} SO(n),称为特殊正交群。亦即,旋转矩阵与旋转矩阵的乘积也是一个旋转矩阵。</li></ul> 
    

    2. QR分解

    • QR分解把矩阵分解成一个正交矩阵与一个上三角矩阵的积。QR分解经常用来解线性最小二乘法问题

    • QR分解也是特定特征值算法即QR算法的基础。

    • 实数矩阵A的QR分解是把A分解为

             A
      
      
             =
      
      
             Q
      
      
             R
      
      
             ,
             
      
      
      
           {\displaystyle A=QR,\,}
      
      
        </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.87777em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathdefault">A</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mord mathdefault">Q</span><span class="mord mathdefault" style="margin-right: 0.00773em;">R</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span></span></span></span></span></span><br> 这里的Q是<strong>正交矩阵</strong>(意味着QTQ = I)而R是<strong>上三角矩阵</strong>。类似的,我们可以定义A的QL, RQ和LQ分解。</p> </li><li> <p>更一般的说,我们可以因数分解复数 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
      
      
      
      
      
             m
      
      
      
            ×
      
      
      
             n
      
      
      
      
           {\displaystyle m} × {\displaystyle n}
      
      
        </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.66666em; vertical-align: -0.08333em;"></span><span class="mord"><span class="mord mathdefault">m</span></span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mbin">×</span><span class="mspace" style="margin-right: 0.222222em;"></span></span><span class="base"><span class="strut" style="height: 0.43056em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathdefault">n</span></span></span></span></span></span>矩阵(有着m ≥ n)为<span class="katex--inline"><span class="katex"><span class="katex-mathml">
      
      
      
      
      
             m
      
      
      
            ×
      
      
      
             n
      
      
      
      
           {\displaystyle m} × {\displaystyle n}
      
      
        </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.66666em; vertical-align: -0.08333em;"></span><span class="mord"><span class="mord mathdefault">m</span></span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mbin">×</span><span class="mspace" style="margin-right: 0.222222em;"></span></span><span class="base"><span class="strut" style="height: 0.43056em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathdefault">n</span></span></span></span></span></span> 幺正矩阵(在<span class="katex--inline"><span class="katex"><span class="katex-mathml">
      
      
      
      
      
             Q
      
      
             ∗
      
      
      
            Q
      
      
            =
      
      
            I
      
      
      
           Q^∗Q = I
      
      
        </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.883136em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathdefault">Q</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.688696em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">∗</span></span></span></span></span></span></span></span><span class="mord mathdefault">Q</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.07847em;">I</span></span></span></span></span>的意义上)和 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
      
      
      
      
      
             m
      
      
      
            ×
      
      
      
             n
      
      
      
      
           {\displaystyle m} × {\displaystyle n}
      
      
        </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.66666em; vertical-align: -0.08333em;"></span><span class="mord"><span class="mord mathdefault">m</span></span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mbin">×</span><span class="mspace" style="margin-right: 0.222222em;"></span></span><span class="base"><span class="strut" style="height: 0.43056em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathdefault">n</span></span></span></span></span></span> 上三角矩阵的乘积。</p> </li><li> <p>如果A是非奇异的,且限定R 的对角线元素为正,则这个因数分解是唯一的。</p> </li></ul> 
      

      2.1 QR分解的求法

      • QR分解的实际计算有很多方法,例如Givens旋转、Householder变换,以及Gram-Schmidt正交化等等。每一种方法都有其优点和不足。

      2.2 Eigen QR module

      2.3.1 HouseholderQR()

      1. HouseholderQR()
      2. HouseholderQR(const EigenBase&)
      3. HouseholderQR qr(matrix.rows(), matrix.cols());
        qr.compute(matrix);
      4. HouseholderQR( EigenBase&)

      1、householderQ()

      • 该方法返回矩阵Q的表达式作为Householder变换的序列。

      • 返回的表达式可以直接用于执行矩阵乘积。 也可以将其分配给密集的Matrix对象。

      • 这是显示如何恢复完整或稀疏矩阵Q以及如何使用算子*执行矩阵乘积的示例:

      MatrixXf A(MatrixXf::Random(5,3)), thinQ(MatrixXf::Identity(5,3)), Q;
      A.setRandom();
      HouseholderQR<MatrixXf> qr(A);
      Q = qr.householderQ();
      thinQ = qr.householderQ() * thinQ;
      std::cout << “The complete unitary matrix Q is:\n” << Q << “\n\n”;
      std::cout << “The thin matrix Q is:\n” << thinQ << “\n\n”;

        output:

        The complete unitary matrix Q is:
        -0.676 0.0793 0.713 -0.0788 -0.147
        -0.221 -0.322 -0.37 -0.366 -0.759
        -0.353 -0.345 -0.214 0.841 -0.0518
        0.582 -0.462 0.555 0.176 -0.329
        -0.174 -0.747 -0.00907 -0.348 0.539

        The thin matrix Q is:
        -0.676 0.0793 0.713
        -0.221 -0.322 -0.37
        -0.353 -0.345 -0.214
        0.582 -0.462 0.555
        -0.174 -0.747 -0.00907

          2、solve()

          • 此方法找到方程Ax = b的解x,其中A是矩阵*这是QR分解(如果存在)

          • 这种方法只是试图找到尽可能好的解决方案。 如果要检查解决方案是否存在或是否正确,只需调用此函数以获取结果,然后计算该结果的错误,或直接使用MatrixBase :: isApprox(),例如:

          bool a_solution_exists = (A*result).isApprox(b, precision);

          • 1

          求解示例:

          typedef Matrix<float,3,3> Matrix3x3;
          Matrix3x3 m = Matrix3x3::Random();
          Matrix3f y = Matrix3f::Random();
          cout << “Here is the matrix m:” << endl << m << endl;
          cout << “Here is the matrix y:” << endl << y << endl;
          Matrix3f x;
          x = m.householderQr().solve(y);
          assert(y.isApprox(m*x));
          cout << “Here is a solution x to the equation mx=y:” << endl << x << endl;

          # output:
          Here is the matrix m:
          0.68 0.597 -0.33
          -0.211 0.823 0.536
          0.566 -0.605 -0.444
          Here is the matrix y:
          0.108 -0.27 0.832
          -0.0452 0.0268 0.271
          0.258 0.904 0.435
          Here is a solution x to the equation mx=y:
          0.609 2.68 1.67
          -0.231 -1.57 0.0713
          0.51 3.51 1.05

          2.3.2 ColPivHouseholderQR()

          1. ColPivHouseholderQR()
          2. ColPivHouseholderQR qr(matrix.rows(), matrix.cols());
            qr.compute(matrix);
          3. ColPivHouseholderQR(const EigenBase&)
          4. ColPivHouseholderQR(EigenBase&)

          利用qr 求解 Ax=y

          Matrix3f m = Matrix3f::Random();
          Matrix3f y = Matrix3f::Random();
          cout << “Here is the matrix m:” << endl << m << endl;
          cout << “Here is the matrix y:” << endl << y << endl;
          Matrix3f x;
          x = m.colPivHouseholderQr().solve(y);
          assert(y.isApprox(m*x));
          cout << “Here is a solution x to the equation mx=y:” << endl << x << endl;

            其中解是否存在判断一样

            bool a_solution_exists = (A*result).isApprox(b, precision);

            • 1

            2.3.3 FullPivHouseholderQR()

            1. FullPivHouseholderQR()
            2. FullPivHouseholderQR( EigenBase&)
            3. FullPivHouseholderQR qr(matrix.rows(), matrix.cols());
              qr.compute(matrix);
            4. FullPivHouseholderQR(const EigenBase&)

            Matrix3f m = Matrix3f::Random();
            Matrix3f y = Matrix3f::Random();
            cout << “Here is the matrix m:” << endl << m << endl;
            cout << “Here is the matrix y:” << endl << y << endl;
            Matrix3f x;
            x = m.fullPivHouseholderQr().solve(y);
            assert(y.isApprox(m*x));
            cout << “Here is a solution x to the equation mx=y:” << endl << x << endl;

            # output:
            Here is the matrix m:
            0.68 0.597 -0.33
            -0.211 0.823 0.536
            0.566 -0.605 -0.444
            Here is the matrix y:
            0.108 -0.27 0.832
            -0.0452 0.0268 0.271
            0.258 0.904 0.435
            Here is a solution x to the equation mx=y:
            0.609 2.68 1.67
            -0.231 -1.57 0.0713
            0.51 3.51 1.05

            3. 特征值分解 EVD

            3.1 特征值与特征向量的基础理论

            •      N
              
              
              
                  N
              
              
               </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span></span></span></span></span>维非零向量 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
              
              
              
              
                   v
              
              
              
                  v
              
              
               </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.43056em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.03588em;">v</span></span></span></span></span> 是<span class="katex--inline"><span class="katex"><span class="katex-mathml">
              
              
              
              
                   N
              
              
                   ×
              
              
                   N
              
              
              
                  N×N
              
              
               </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.76666em; vertical-align: -0.08333em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mbin">×</span><span class="mspace" style="margin-right: 0.222222em;"></span></span><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span></span></span></span></span> 的矩阵 A 的特征向量,当且仅当下式成立:<br> <span class="katex--inline"><span class="katex"><span class="katex-mathml">
              
              
              
              
              
                    A
              
              
                    v
              
              
                    =
              
              
                    λ
              
              
                    v
              
              
              
              
                  {\displaystyle \mathbf {A} \mathbf {v} =\lambda \mathbf {v} }
              
              
               </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.69444em; vertical-align: 0em;"></span><span class="mord"><span class="mord"><span class="mord mathbf">A</span></span><span class="mord"><span class="mord mathbf" style="margin-right: 0.01597em;">v</span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mord mathdefault">λ</span><span class="mord"><span class="mord mathbf" style="margin-right: 0.01597em;">v</span></span></span></span></span></span></span></li><li>其中 λ 为一标量,称为 v 对应的特征值。也称 v 为特征值 λ 对应的特征向量。也即特征向量被施以线性变换 A 只会使向量伸长或缩短而其方向不被改变。</li><li>由上式可得<br> <span class="katex--inline"><span class="katex"><span class="katex-mathml">
              
              
              
              
                   p
              
              
              
                    (
              
              
                    λ
              
              
                    )
              
              
              
                   :
              
              
                   =
              
              
                   det
              
              
                   ⁡
              
              
              
                    (
              
              
                    A
              
              
                    −
              
              
                    λ
              
              
                    I
              
              
                    )
              
              
              
                   =
              
              
                   0.
              
              
              
                  p\left(\lambda\right) := \det\left(\mathbf{A} - \lambda \mathbf{I}\right)= 0.
              
              
               </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathdefault">p</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="minner"><span class="mopen delimcenter" style="top: 0em;">(</span><span class="mord mathdefault">λ</span><span class="mclose delimcenter" style="top: 0em;">)</span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">:</span></span><span class="base"><span class="strut" style="height: 0.36687em; vertical-align: 0em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mop">det</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="minner"><span class="mopen delimcenter" style="top: 0em;">(</span><span class="mord"><span class="mord mathbf">A</span></span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mord mathdefault">λ</span><span class="mord"><span class="mord mathbf">I</span></span><span class="mclose delimcenter" style="top: 0em;">)</span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 0.64444em; vertical-align: 0em;"></span><span class="mord">0</span><span class="mord">.</span></span></span></span></span><br> 称多项式 p(λ) 为矩阵的<a href="https://zh.wikipedia.org/wiki/%E7%89%B9%E5%BE%B5%E5%A4%9A%E9%A0%85%E5%BC%8F">特征多项式</a>。上式亦称为矩阵的<a href="https://zh.wikipedia.org/wiki/%E7%89%B9%E5%BE%B5%E6%96%B9%E7%A8%8B%E5%BC%8F">特征方程</a>。特征多项式是关于未知数 λ 的 N 次多项式。由代数基本定理,特征方程有 N 个解。这些解的解集也就是特征值的集合,有时也称为“谱”(Spectrum)。</li></ul> 
              

              3.2 矩阵的特征分解

              • 令 A 是一个 N×N 的方阵,且有 N 个线性独立的特征向量

                       q
                
                
                       i
                
                       
                
                      (
                
                
                      i
                
                
                      =
                
                
                      1
                
                
                      ,
                
                
                      …
                
                
                      ,
                
                
                      N
                
                
                      )
                
                
                
                
                    {\displaystyle q_{i}\,\,(i=1,\dots ,N)}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord"><span class="mord"><span class="mord mathdefault" style="margin-right: 0.03588em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.311664em;"><span class="" style="top: -2.55em; margin-left: -0.03588em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mopen">(</span><span class="mord mathdefault">i</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mord">1</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="minner">…</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span><span class="mclose">)</span></span></span></span></span></span> 。这样, A 可以被分解为<span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                     A
                
                
                     =
                
                
                     Q
                
                
                     Λ
                
                
                
                      Q
                
                
                
                       −
                
                
                       1
                
                
                
                
                
                    \mathbf{A}=\mathbf{Q}\mathbf{\Lambda}\mathbf{Q}^{-1}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68611em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathbf">A</span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.00855em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathbf">Q</span></span><span class="mord"><span class="mord mathbf">Λ</span></span><span class="mord"><span class="mord"><span class="mord mathbf">Q</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span></span></span></span></span></li><li>其中 Q 是N×N方阵,且其第 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                     i
                
                
                
                    i
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.65952em; vertical-align: 0em;"></span><span class="mord mathdefault">i</span></span></span></span></span> 列为 A 的特征向量 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                
                
                       q
                
                
                       i
                
                
                
                
                
                    {\displaystyle q_{i}}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.625em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord"><span class="mord mathdefault" style="margin-right: 0.03588em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.311664em;"><span class="" style="top: -2.55em; margin-left: -0.03588em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span></span>。 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                     Λ
                
                
                
                    Λ
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord">Λ</span></span></span></span></span> 是对角矩阵,其对角线上的元素为对应的特征值,也即 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                
                
                       Λ
                
                
                
                        i
                
                
                        i
                
                
                
                
                      =
                
                
                
                       λ
                
                
                       i
                
                
                
                
                
                    {\displaystyle \Lambda _{ii}=\lambda _{i}}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.84444em; vertical-align: -0.15em;"></span><span class="mord"><span class="mord"><span class="mord">Λ</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.311664em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mord"><span class="mord mathdefault">λ</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.311664em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span></span> 。这里需要注意只有<strong>可对角化矩阵才可以作特征分解</strong>。比如 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                
                
                       [
                
                
                
                
                
                
                           1
                
                
                
                
                
                
                           1
                
                
                
                
                
                
                
                
                           0
                
                
                
                
                
                
                           1
                
                
                
                
                
                
                       ]
                
                
                
                
                
                    {\displaystyle {<span class="MathJax_Preview" style="color: inherit; display: none;"></span><div class="MathJax_Display"><span class="MathJax MathJax_FullWidth" id="MathJax-Element-1-Frame" tabindex="0" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot; display=&quot;block&quot;><mrow><mo>[</mo><mtable rowspacing=&quot;4pt&quot; columnspacing=&quot;1em&quot;><mtr><mtd><mn>1</mn></mtd><mtd><mn>1</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr></mtable><mo>]</mo></mrow></math>" role="presentation" style="position: relative;"><nobr aria-hidden="true"><span class="math" id="MathJax-Span-1" style="width: 100%; display: inline-block; min-width: 3.445em;"><span style="display: inline-block; position: relative; width: 100%; height: 0px; font-size: 102%;"><span style="position: absolute; clip: rect(2.382em, 1003.14em, 5.115em, -999.997em); top: -3.997em; left: 0em; width: 100%;"><span class="mrow" id="MathJax-Span-2"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.382em, 1003.14em, 5.115em, -999.997em); top: -3.997em; left: 50%; margin-left: -1.668em;"><span class="mrow" id="MathJax-Span-3"><span class="mo" id="MathJax-Span-4" style="vertical-align: 0em;"><span style="font-family: MathJax_Size3;">[</span></span><span class="mtable" id="MathJax-Span-5" style="padding-right: 0.154em; padding-left: 0.154em;"><span style="display: inline-block; position: relative; width: 2.027em; height: 0px;"><span style="position: absolute; clip: rect(2.534em, 1000.46em, 4.913em, -999.997em); top: -3.997em; left: 0em;"><span style="display: inline-block; position: relative; width: 0.509em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.192em, 1000.41em, 4.154em, -999.997em); top: -4.655em; left: 0em;"><span class="mtd" id="MathJax-Span-6"><span class="mrow" id="MathJax-Span-7"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.192em, 1000.41em, 4.154em, -999.997em); top: -3.997em; left: 50%; margin-left: -0.251em;"><span class="mn" id="MathJax-Span-8" style="font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.192em, 1000.46em, 4.154em, -999.997em); top: -3.237em; left: 0em;"><span class="mtd" id="MathJax-Span-12"><span class="mrow" id="MathJax-Span-13"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.192em, 1000.46em, 4.154em, -999.997em); top: -3.997em; left: 50%; margin-left: -0.251em;"><span class="mn" id="MathJax-Span-14" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span><span style="position: absolute; clip: rect(2.534em, 1000.41em, 4.913em, -999.997em); top: -3.997em; left: 1.521em;"><span style="display: inline-block; position: relative; width: 0.509em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.192em, 1000.41em, 4.154em, -999.997em); top: -4.655em; left: 0em;"><span class="mtd" id="MathJax-Span-9"><span class="mrow" id="MathJax-Span-10"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.192em, 1000.41em, 4.154em, -999.997em); top: -3.997em; left: 50%; margin-left: -0.251em;"><span class="mn" id="MathJax-Span-11" style="font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.192em, 1000.41em, 4.154em, -999.997em); top: -3.237em; left: 0em;"><span class="mtd" id="MathJax-Span-15"><span class="mrow" id="MathJax-Span-16"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.192em, 1000.41em, 4.154em, -999.997em); top: -3.997em; left: 50%; margin-left: -0.251em;"><span class="mn" id="MathJax-Span-17" style="font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span></span><span class="mo" id="MathJax-Span-18" style="vertical-align: 0em;"><span style="font-family: MathJax_Size3;">]</span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 4.002em;"></span></span></span><span style="display: inline-block; overflow: hidden; vertical-align: -1.03em; border-left: 0px solid; width: 0px; height: 2.533em;"></span></span></nobr><span class="MJX_Assistive_MathML MJX_Assistive_MathML_Block" role="presentation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mo>[</mo><mtable rowspacing="4pt" columnspacing="1em"><mtr><mtd><mn>1</mn></mtd><mtd><mn>1</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr></mtable><mo>]</mo></mrow></math></span></span></div><script type="math/tex; mode=display" id="MathJax-Element-1">\begin{bmatrix}1&1\\0&1\\\end{bmatrix}</script>}}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 2.40003em; vertical-align: -0.95003em;"></span><span class="mord"><span class="mord"><span class="minner"><span class="mopen delimcenter" style="top: 0em;"><span class="delimsizing size3">[</span></span><span class="mord"><span class="mtable"><span class="col-align-c"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.45em;"><span class="" style="top: -3.61em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">1</span></span></span><span class="" style="top: -2.41em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">0</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.95em;"><span class=""></span></span></span></span></span><span class="arraycolsep" style="width: 0.5em;"></span><span class="arraycolsep" style="width: 0.5em;"></span><span class="col-align-c"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.45em;"><span class="" style="top: -3.61em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">1</span></span></span><span class="" style="top: -2.41em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.95em;"><span class=""></span></span></span></span></span></span></span><span class="mclose delimcenter" style="top: 0em;"><span class="delimsizing size3">]</span></span></span></span></span></span></span></span></span> 不能被对角化,也就不能特征分解。</li><li>一般来说,特征向量 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                
                
                       q
                
                
                       i
                
                       
                
                      (
                
                
                      i
                
                
                      =
                
                
                      1
                
                
                      ,
                
                
                      …
                
                
                      ,
                
                
                      N
                
                
                      )
                
                
                
                
                    {\displaystyle q_{i}\,\,(i=1,\dots ,N)}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord"><span class="mord"><span class="mord mathdefault" style="margin-right: 0.03588em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.311664em;"><span class="" style="top: -2.55em; margin-left: -0.03588em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mopen">(</span><span class="mord mathdefault">i</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mord">1</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="minner">…</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span><span class="mclose">)</span></span></span></span></span></span> 一般被单位化(但这不是必须的)。未被单位化的特征向量组 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                
                
                       v
                
                
                       i
                
                       
                
                      (
                
                
                      i
                
                
                      =
                
                
                      1
                
                
                      ,
                
                
                      …
                
                
                      ,
                
                
                      N
                
                
                      )
                
                
                      ,
                
                
                
                
                    {\displaystyle v_{i}\,\,(i=1,\dots ,N),}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord"><span class="mord"><span class="mord mathdefault" style="margin-right: 0.03588em;">v</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.311664em;"><span class="" style="top: -2.55em; margin-left: -0.03588em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mopen">(</span><span class="mord mathdefault">i</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mord">1</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="minner">…</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.166667em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span><span class="mclose">)</span><span class="mpunct">,</span></span></span></span></span></span> 也可以作为 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                     Q
                
                
                
                    Q
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.87777em; vertical-align: -0.19444em;"></span><span class="mord mathdefault">Q</span></span></span></span></span> 的列向量。这一事实可以这样理解: Q 中向量的长度都被 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                
                
                
                
                
                      Q
                
                
                
                       −
                
                
                       1
                
                
                
                
                
                    Q^{−1}
                
                
                 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1.00855em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathdefault">Q</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span></span></span></span></span> 抵消了。</li></ul> 
                

                通过特征分解求反(逆)矩阵

                • 若矩阵 A 可被特征分解并特征值中不含零,则矩阵 A 为非奇异矩阵,且其逆矩阵可以由下式给出:

                        A
                  
                  
                  
                         −
                  
                  
                         1
                  
                  
                  
                  
                       =
                  
                  
                       Q
                  
                  
                  
                        Λ
                  
                  
                  
                         −
                  
                  
                         1
                  
                  
                  
                  
                  
                        Q
                  
                  
                  
                         −
                  
                  
                         1
                  
                  
                  
                  
                  
                      \mathbf{A}^{-1}=\mathbf{Q}\mathbf{\Lambda}^{-1}\mathbf{Q}^{-1}
                  
                  
                   </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.814108em; vertical-align: 0em;"></span><span class="mord"><span class="mord"><span class="mord mathbf">A</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.00855em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathbf">Q</span></span><span class="mord"><span class="mord"><span class="mord mathbf">Λ</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span><span class="mord"><span class="mord"><span class="mord mathbf">Q</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span></span></span></span></span><br> 因为 Λ 为对角矩阵,其逆矩阵容易计算出:<span class="katex--inline"><span class="katex"><span class="katex-mathml">
                  
                  
                  
                  
                  
                  
                         [
                  
                  
                  
                          Λ
                  
                  
                  
                           −
                  
                  
                           1
                  
                  
                  
                  
                         ]
                  
                  
                  
                  
                         i
                  
                  
                         i
                  
                  
                  
                  
                       =
                  
                  
                  
                        1
                  
                  
                  
                         λ
                  
                  
                         i
                  
                  
                  
                  
                  
                      \left[\Lambda^{-1}\right]_{ii}=\frac{1}{\lambda_i}
                  
                  
                   </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1.24971em; vertical-align: -0.39971em;"></span><span class="minner"><span class="minner"><span class="mopen delimcenter" style="top: 0em;"><span class="delimsizing size1">[</span></span><span class="mord"><span class="mord">Λ</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.814108em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">1</span></span></span></span></span></span></span></span></span><span class="mclose delimcenter" style="top: 0em;"><span class="delimsizing size1">]</span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.061954em;"><span class="" style="top: -2.30029em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight">i</span><span class="mord mathdefault mtight">i</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.39971em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.29021em; vertical-align: -0.4451em;"></span><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.845108em;"><span class="" style="top: -2.655em;"><span class="pstrut" style="height: 3em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight"><span class="mord mathdefault mtight">λ</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.328086em;"><span class="" style="top: -2.357em; margin-left: 0em; margin-right: 0.0714286em;"><span class="pstrut" style="height: 2.5em;"></span><span class="sizing reset-size3 size1 mtight"><span class="mord mathdefault mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.143em;"><span class=""></span></span></span></span></span></span></span></span></span><span class="" style="top: -3.23em;"><span class="pstrut" style="height: 3em;"></span><span class="frac-line" style="border-bottom-width: 0.04em;"></span></span><span class="" style="top: -3.394em;"><span class="pstrut" style="height: 3em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">1</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.4451em;"><span class=""></span></span></span></span></span><span class="mclose nulldelimiter"></span></span></span></span></span></span></li></ul> 
                  

                  3.3 对特殊矩阵的特征分解

                  对称矩阵

                  • 任意的

                         N
                    
                    
                         ×
                    
                    
                         N
                    
                    
                    
                        N×N
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.76666em; vertical-align: -0.08333em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span><span class="mspace" style="margin-right: 0.222222em;"></span><span class="mbin">×</span><span class="mspace" style="margin-right: 0.222222em;"></span></span><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span></span></span></span></span> 实对称矩阵都有 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                    
                    
                    
                    
                         N
                    
                    
                    
                        N
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.10903em;">N</span></span></span></span></span> 个线性无关的特征向量。并且这些特征向量都可以正交单位化而得到一组正交且模为 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                    
                    
                    
                    
                         1
                    
                    
                    
                        1
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.64444em; vertical-align: 0em;"></span><span class="mord">1</span></span></span></span></span> 的向量。故实对称矩阵 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                    
                    
                    
                    
                         A
                    
                    
                    
                        A
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord mathdefault">A</span></span></span></span></span> 可被分解成<br> <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                    
                    
                    
                    
                         A
                    
                    
                         =
                    
                    
                         Q
                    
                    
                         Λ
                    
                    
                    
                          Q
                    
                    
                          T
                    
                    
                    
                    
                        \mathbf{A}=\mathbf{Q}\mathbf{\Lambda}\mathbf{Q}^{T}
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68611em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathbf">A</span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 1.03577em; vertical-align: -0.19444em;"></span><span class="mord"><span class="mord mathbf">Q</span></span><span class="mord"><span class="mord mathbf">Λ</span></span><span class="mord"><span class="mord"><span class="mord mathbf">Q</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.841331em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight" style="margin-right: 0.13889em;">T</span></span></span></span></span></span></span></span></span></span></span></span></span></li><li>其中 <span class="katex--inline"><span class="katex"><span class="katex-mathml">
                    
                    
                    
                    
                         Q
                    
                    
                    
                        Q
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.87777em; vertical-align: -0.19444em;"></span><span class="mord mathdefault">Q</span></span></span></span></span> 为<a href="https://zh.wikipedia.org/wiki/%E6%AD%A3%E4%BA%A4%E7%9F%A9%E9%98%B5">正交矩阵</a>,<span class="katex--inline"><span class="katex"><span class="katex-mathml">
                    
                    
                    
                    
                         Λ
                    
                    
                    
                        Λ
                    
                    
                     </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68333em; vertical-align: 0em;"></span><span class="mord">Λ</span></span></span></span></span>为<a href="https://zh.wikipedia.org/wiki/%E5%B0%8D%E8%A7%92%E7%9F%A9%E9%99%A3">实对角矩阵</a>。</li></ul> 
                    

                    正规矩阵

                    • 类似地,一个复正规矩阵具有一组正交特征向量基,故正规矩阵可以被分解成

                           A
                      
                      
                           =
                      
                      
                           U
                      
                      
                           Λ
                      
                      
                      
                            U
                      
                      
                            H
                      
                      
                      
                      
                          \mathbf{A}=\mathbf{U}\mathbf{\Lambda}\mathbf{U}^{H}
                      
                      
                       </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.68611em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathbf">A</span></span><span class="mspace" style="margin-right: 0.277778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.277778em;"></span></span><span class="base"><span class="strut" style="height: 0.841331em; vertical-align: 0em;"></span><span class="mord"><span class="mord mathbf">U</span></span><span class="mord"><span class="mord mathbf">Λ</span></span><span class="mord"><span class="mord"><span class="mord mathbf">U</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.841331em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathdefault mtight" style="margin-right: 0.08125em;">H</span></span></span></span></span></span></span></span></span></span></span></span></span></li><li>其中 U 为一个<a href="https://zh.wikipedia.org/wiki/%E9%85%89%E7%9F%A9%E9%98%B5">酉矩阵</a>。进一步地,若 A 是埃尔米特矩阵,那么对角矩阵 Λ 的对角元全是实数。若 A 还是酉矩阵,则 Λ 的所有对角元在复平面的单位圆上取得。</li></ul> 
                      

                      3.4 Eigen 案例

                      # code:
                      Eigen::Matrix2d matrix_22;
                      matrix_22 << 2,3,2,1;
                      cout << “matrix = \n”<< matrix_22<<endl;

                      <span class="token comment">//Eigen::SelfAdjointEigenSolver&lt;Eigen::Matrix2d&gt; eigen_solver1 ( matrix_22 );/这句是啥不清楚</span>
                      Eigen<span class="token punctuation">:</span><span class="token punctuation">:</span>EigenSolver<span class="token operator">&lt;</span>Eigen<span class="token punctuation">:</span><span class="token punctuation">:</span>Matrix2d<span class="token operator">&gt;</span> eigen_solver <span class="token punctuation">(</span> matrix_22 <span class="token punctuation">)</span><span class="token punctuation">;</span>
                      cout <span class="token operator">&lt;&lt;</span> <span class="token string">"matrix values = \n"</span> <span class="token operator">&lt;&lt;</span> eigen_solver<span class="token punctuation">.</span><span class="token function">eigenvalues</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">&lt;&lt;</span> endl<span class="token punctuation">;</span><span class="token comment">//形式为二维向量(4,0)和(-1,0)。真实值为4,-1。</span>
                      cout <span class="token operator">&lt;&lt;</span> <span class="token string">"matrix vectors = \n"</span> <span class="token operator">&lt;&lt;</span> eigen_solver<span class="token punctuation">.</span><span class="token function">eigenvectors</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">&lt;&lt;</span> endl<span class="token punctuation">;</span><span class="token comment">//输出为单位化之后的。形式如下:</span>
                      

                      # output:
                      matrix =
                      2 3
                      2 1
                      matrix values =
                      (4,0)
                      (-1,0)
                      matrix vectors =
                      (0.83205,0) (-0.707107,0)
                      (0.5547,0) (0.707107,0)

                      4. 奇异值分解 SVD

                      • 上面的特征值分解,对矩阵有着较高的要求,它需要被分解的矩阵