机器学习数学基础:21.特征值与特征向量
一、引言
在现代科学与工程的众多领域中,线性代数扮演着举足轻重的角色。其中,特征值、特征向量以及相似对角化的概念和方法,不仅是线性代数理论体系的核心部分,更是解决实际问题的有力工具。无论是在物理学中描述系统的振动模式,还是在计算机科学里进行数据降维与图像处理,它们都发挥着关键作用。本教程将深入且全面地对这些内容展开讲解,旨在帮助读者透彻理解并熟练运用相关知识。
二、基础知识准备
(一)对角矩阵的高次幂计算
在开启特征值与特征向量的探索之旅前,我们先来聚焦对角矩阵的高次幂运算。对角矩阵是一种结构特殊的方阵,其显著特点是主对角线以外的所有元素均为零。用数学语言描述,对于一个 n n n阶对角矩阵 Λ = ( λ 1 0 ⋯ 0 0 λ 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ λ n ) \Lambda \ = \begin{pmatrix} \lambda_1 & 0 & \cdots & 0 \\ 0 & \lambda_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n \end{pmatrix} Λ = λ10⋮00λ2⋮0⋯⋯⋱⋯00⋮λn ,在计算它的 N N N次幂 Λ N \Lambda^N ΛN时,我们可以遵循一个简洁的规则:直接将主对角线上的各个元素替换为它们各自的 N N N次幂。即 Λ N = ( λ 1 N 0 ⋯ 0 0 λ 2 N ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ λ n N ) \Lambda^N \ = \begin{pmatrix} \lambda_1^N & 0 & \cdots & 0 \\ 0 & \lambda_2^N & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n^N \end{pmatrix} ΛN = λ1N0⋮00λ2N⋮0⋯⋯⋱⋯00⋮λnN 。
为了更直观地理解,我们来看几个具体例子。当 N = 2 N \ = 2 N =2时, Λ 2 = ( λ 1 2 0 ⋯ 0 0 λ 2 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ λ n 2 ) \Lambda^2 \ = \begin{pmatrix} \lambda_1^2 & 0 & \cdots & 0 \\ 0 & \lambda_2^2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n^2 \end{pmatrix} Λ2 = λ120⋮00λ22⋮0⋯⋯⋱⋯00⋮λn2 ;当 N = 3 N \ = 3 N =3时, Λ 3 = ( λ 1 3 0 ⋯ 0 0 λ 2 3 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ λ n 3 ) \Lambda^3 \ = \begin{pmatrix} \lambda_1^3 & 0 & \cdots & 0 \\ 0 & \lambda_2^3 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n^3 \end{pmatrix} Λ3 = λ130⋮00λ23⋮0⋯⋯⋱⋯00⋮λn3 。这种计算方式的便捷性,源于对角矩阵自身独特的结构,使得高次幂的计算变得相对简单直接。
(二)对角矩阵的乘法
在矩阵乘法的运算体系中,对角矩阵的乘法展现出独特的简便性。假设我们有两个 n n n阶对角矩阵 Λ 1 = ( a 1 0 ⋯ 0 0 a 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ a n ) \Lambda_1 \ = \begin{pmatrix} a_1 & 0 & \cdots & 0 \\ 0 & a_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & a_n \end{pmatrix} Λ1 = a10⋮00a2⋮0⋯⋯⋱⋯00⋮an 和 Λ 2 = ( b 1 0 ⋯ 0 0 b 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ b n ) \Lambda_2 \ = \begin{pmatrix} b_1 & 0 & \cdots & 0 \\ 0 & b_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & b_n \end{pmatrix} Λ2 = b10⋮00b2⋮0⋯⋯⋱⋯00⋮bn 。
它们的乘积 Λ 1 Λ 2 \Lambda_1\Lambda_2 Λ1Λ2的计算过程如下:根据矩阵乘法的定义,对于一般矩阵 C = A B C \ = AB C =AB, C C C的元素 c i j = ∑ k = 1 n a i k b k j c_{ij} \ = \sum_{k \ = 1}^{n}a_{ik}b_{kj} cij =∑k =1naikbkj。但对于对角矩阵 Λ 1 \Lambda_1 Λ1和 Λ 2 \Lambda_2 Λ2,由于非对角元素均为 0 0 0,在计算乘积矩阵 Λ 1 Λ 2 \Lambda_1\Lambda_2 Λ1Λ2的元素时,只有 i = j i \ = j i =j的位置上的元素不为 0 0 0。具体来说, ( Λ 1 Λ 2 ) i i = a i b i (\Lambda_1\Lambda_2)_{ii} \ = a_ib_i (Λ1Λ2)ii =aibi,而 ( Λ 1 Λ 2 ) i j = 0 (\Lambda_1\Lambda_2)_{ij} \ = 0 (Λ1Λ2)ij =0( i ≠ j i \neq j i=j)。所以 Λ 1 Λ 2 = ( a 1 b 1 0 ⋯ 0 0 a 2 b 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ a n b n ) \Lambda_1\Lambda_2 \ = \begin{pmatrix} a_1b_1 & 0 & \cdots & 0 \\ 0 & a_2b_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & a_nb_n \end{pmatrix} Λ1Λ2 = a1b10⋮00a2b2⋮0⋯⋯⋱⋯00⋮anbn ,即只需将对应位置的元素相乘即可得到乘积矩阵的元素。
三、特征值与特征向量的求解
(一)求解方法概述
对于一个 n n n阶方阵 A A A,我们通过构建并求解特征方程 ∣ A − λ E ∣ = 0 \vert A - \lambda E\vert \ = 0 ∣A−λE∣ =0来获取其特征值 λ \lambda λ。这里的 E E E代表 n n n阶单位矩阵, ∣ A − λ E ∣ \vert A - \lambda E\vert ∣A−λE∣是一个关于 λ \lambda λ的 n n n次多项式,被称为矩阵 A A A的特征多项式。
从行列式的计算角度来看, A − λ E A - \lambda E A−λE是将矩阵 A A A的主对角线元素分别减去 λ \lambda λ后得到的矩阵,然后计算这个新矩阵的行列式。例如,对于二阶矩阵 A = ( a 11 a 12 a 21 a 22 ) A \ = \begin{pmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{pmatrix} A =(a11a21a12a22), A − λ E = ( a 11 − λ a 12 a 21 a 22 − λ ) A - \lambda E \ = \begin{pmatrix} a_{11} - \lambda & a_{12} \\ a_{21} & a_{22} - \lambda \end{pmatrix} A−λE =(a11−λa21a12a22−λ),其特征多项式 ∣ A − λ E ∣ = ( a 11 − λ ) ( a 22 − λ ) − a 12 a 21 \vert A - \lambda E\vert \ = (a_{11} - \lambda)(a_{22} - \lambda) - a_{12}a_{21} ∣A−λE∣ =(a11−λ)(a22−λ)−a12a21,这是一个关于 λ \lambda λ的二次多项式。
求解特征方程 ∣ A − λ E ∣ = 0 \vert A - \lambda E\vert \ = 0 ∣A−λE∣ =0,本质上就是求解这个 n n n次多项式方程的根。这些根就是矩阵 A A A的特征值,在求解过程中,可能会出现重根的情况。例如,对于矩阵 A = ( 2 1 1 2 ) A \ = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix} A =(2112),其特征多项式为 ∣ A − λ E ∣ = ∣ 2 − λ 1 1 2 − λ ∣ = ( 2 − λ ) 2 − 1 = λ 2 − 4 λ + 3 \vert A - \lambda E\vert \ = \begin{vmatrix} 2 - \lambda & 1 \\ 1 & 2 - \lambda \end{vmatrix} \ = (2 - \lambda)^2 - 1 \ = \lambda^2 - 4\lambda + 3 ∣A−λE∣ = 2−λ112−λ =(2−λ)2−1 =λ2−4λ+3。令 λ 2 − 4 λ + 3 = 0 \lambda^2 - 4\lambda + 3 \ = 0 λ2−4λ+3 =0,通过因式分解得到 ( λ − 1 ) ( λ − 3 ) = 0 (\lambda - 1)(\lambda - 3) \ = 0 (λ−1)(λ−3) =0,解得特征值 λ 1 = 1 \lambda_1 \ = 1 λ1 =1, λ 2 = 3 \lambda_2 \ = 3 λ2 =3,这里特征值没有重根。但对于一些特殊矩阵,可能会出现如二重根、三重根等情况。
(二)特征向量的求解
当我们成功求得矩阵 A A A的特征值 λ \lambda λ后,接下来要做的是将每个特征值 λ \lambda λ代入齐次线性方程组 ( A − λ E ) X = 0 (A - \lambda E)X \ = 0 (A−λE)X =0,以此来求解对应的特征向量 X X X。
以矩阵 A = ( 2 1 1 2 ) A \ = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix} A =(2112)为例,当 λ 1 = 1 \lambda_1 \ = 1 λ1 =1时,将其代入 ( A − λ 1 E ) X = 0 (A - \lambda_1 E)X \ = 0 (A−λ1E)X =0,得到 ( 2 − 1 1 1 2 − 1 ) ( x 1 x 2 ) = ( 1 1 1 1 ) ( x 1 x 2 ) = ( 0 0 ) \begin{pmatrix} 2 - 1 & 1 \\ 1 & 2 - 1 \end{pmatrix}\begin{pmatrix} x_1 \\ x_2 \end{pmatrix} \ = \begin{pmatrix} 1 & 1 \\ 1 & 1 \end{pmatrix}\begin{pmatrix} x_1 \\ x_2 \end{pmatrix} \ = \begin{pmatrix} 0 \\ 0 \end{pmatrix} (2−1112−1)(x1x2) =(1111)(x1x2) =(00)。
为了求解这个齐次线性方程组,我们对系数矩阵 ( 1 1 1 1 ) \begin{pmatrix} 1 & 1 \\ 1 & 1 \end{pmatrix} (1111)进行初等行变换。根据初等行变换的规则,将第二行减去第一行,可将系数矩阵化为 ( 1 1 0 0 ) \begin{pmatrix} 1 & 1 \\ 0 & 0 \end{pmatrix} (1010)。这意味着原方程组等价于 x 1 + x 2 = 0 x_1 + x_2 \ = 0 x1+x2 =0,我们令 x 2 = t x_2 \ = t x2 =t( t t t为任意非零实数),那么 x 1 = − t x_1 \ = -t x1 =−t。所以,对应的特征向量可以表示为 X 1 = t ( − 1 1 ) X_1 \ = t\begin{pmatrix} -1 \\ 1 \end{pmatrix} X1 =t(−11)( t ≠ 0 t \neq 0 t=0),这里 t t t的任意非零取值都对应着一个特征向量,它们构成了属于特征值 λ 1 = 1 \lambda_1 \ = 1 λ1 =1的特征向量空间。
当 λ 2 = 3 \lambda_2 \ = 3 λ2 =3时,代入 ( A − λ 2 E ) X = 0 (A - \lambda_2 E)X \ = 0 (A−λ2E)X =0,即 ( 2 − 3 1 1 2 − 3 ) ( x 1 x 2 ) = ( − 1 1 1 − 1 ) ( x 1 x 2 ) = ( 0 0 ) \begin{pmatrix} 2 - 3 & 1 \\ 1 & 2 - 3 \end{pmatrix}\begin{pmatrix} x_1 \\ x_2 \end{pmatrix} \ = \begin{pmatrix} -1 & 1 \\ 1 & -1 \end{pmatrix}\begin{pmatrix} x_1 \\ x_2 \end{pmatrix} \ = \begin{pmatrix} 0 \\ 0 \end{pmatrix} (2−3112−3)(x1x2) =(−111−1)(x1x2) =(00)。
同样对系数矩阵 ( − 1 1 1 − 1 ) \begin{pmatrix} -1 & 1 \\ 1 & -1 \end{pmatrix} (−111−1)进行初等行变换,将第一行乘以 − 1 -1 −1后加到第二行,可化为 ( 1 − 1 0 0 ) \begin{pmatrix} 1 & -1 \\ 0 & 0 \end{pmatrix} (10−10)。此时方程组等价于 x 1 − x 2 = 0 x_1 - x_2 \ = 0 x1−x2 =0,令 x 2 = s x_2 \ = s x2 =s( s s s为任意非零实数),则 x 1 = s x_1 \ = s x1 =s。所以对应的特征向量为 X 2 = s ( 1 1 ) X_2 \ = s\begin{pmatrix} 1 \\ 1 \end{pmatrix} X2 =s(11)( s ≠ 0 s \neq 0 s=0)。
需要特别强调的是,在求解特征向量时,我们要找出所有的特征向量,而不仅仅是基础解系。基础解系是齐次线性方程组解空间的一组基,它能通过线性组合表示出解空间中的所有向量,但每个基础解系向量乘以非零标量后得到的向量也都是特征向量,我们需要将它们都考虑在内。
四、相似对角化
(一)相似对角化的条件
对于一个 n n n阶方阵 A A A,若存在一个可逆矩阵 P P P和一个对角矩阵 Λ \Lambda Λ,使得 P − 1 A P = Λ P^{-1}AP \ = \Lambda P−1AP =Λ成立,则称矩阵 A A A可进行相似对角化。
判断矩阵 A A A能否相似对角化,是一个关键且严谨的过程,我们需要通过求特征向量和基础解系来得出结论。具体步骤如下:
- 首先,求解特征方程 ∣ A − λ E ∣ = 0 \vert A - \lambda E\vert \ = 0 ∣A−λE∣ =0,从而得到矩阵 A A A的所有特征值 λ i \lambda_i λi( i = 1 , 2 , ⋯ , n i \ = 1, 2, \cdots, n i =1,2,⋯,n)。这些特征值是后续分析的基础。
- 对于每一个特征值 λ i \lambda_i λi,将其代入齐次线性方程组 ( A − λ i E ) X = 0 (A - \lambda_i E)X \ = 0 (A−λiE)X =0,然后求解该方程组,得到基础解系 ξ i 1 , ξ i 2 , ⋯ , ξ i r i \xi_{i1}, \xi_{i2}, \cdots, \xi_{ir_i} ξi1,ξi2,⋯,ξiri。这里的 r i r_i ri表示基础解系中向量的个数,它反映了属于特征值 λ i \lambda_i λi的线性无关特征向量的数量。
- 最后,我们检查所有特征值对应的线性无关特征向量的个数之和是否等于矩阵 A A A的阶数 n n n,即判断 ∑ i = 1 n r i = n \sum_{i \ = 1}^{n}r_i \ = n ∑i =1nri =n是否成立。如果等式成立,那么矩阵 A A A可相似对角化;若不成立,则矩阵 A A A不可相似对角化。
(二)相似对角化的步骤
- 第一步,全面且准确地求出矩阵 A A A的所有特征值 λ 1 , λ 2 , ⋯ , λ n \lambda_1, \lambda_2, \cdots, \lambda_n λ1,λ2,⋯,λn。这一步是相似对角化的起始点,需要我们熟练掌握特征方程的求解方法。
- 第二步,针对每个特征值 λ i \lambda_i λi,细致地求出对应的所有线性无关的特征向量 ξ i 1 , ξ i 2 , ⋯ , ξ i r i \xi_{i1}, \xi_{i2}, \cdots, \xi_{ir_i} ξi1,ξi2,⋯,ξiri。然后,将这些特征向量按照一定的顺序按列构成可逆矩阵 P = ( ξ 11 , ⋯ , ξ 1 r 1 , ξ 21 , ⋯ , ξ 2 r 2 , ⋯ , ξ n 1 , ⋯ , ξ n r n ) P \ = (\xi_{11}, \cdots, \xi_{1r_1}, \xi_{21}, \cdots, \xi_{2r_2}, \cdots, \xi_{n1}, \cdots, \xi_{nr_n}) P =(ξ11,⋯,ξ1r1,ξ21,⋯,ξ2r2,⋯,ξn1,⋯,ξnrn)。在构建 P P P矩阵时,要确保特征向量的排列顺序与后续对角矩阵 Λ \Lambda Λ中特征值的顺序相对应。
- 第三步,构建对角矩阵 Λ = ( λ 1 ⋱ λ n ) \Lambda \ = \begin{pmatrix} \lambda_1 & & & \\ & \ddots & & \\ & & \lambda_n & \\ \end{pmatrix} Λ = λ1⋱λn 。其中,主对角线上的元素就是矩阵 A A A的特征值,并且这些特征值的顺序要与 P P P矩阵中特征向量的排列顺序严格对应。
例如,对于前面提到的矩阵 A = ( 2 1 1 2 ) A \ = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix} A =(2112),特征值 λ 1 = 1 \lambda_1 \ = 1 λ1 =1对应的特征向量取 ξ 11 = ( − 1 1 ) \xi_{11} \ = \begin{pmatrix} -1 \\ 1 \end{pmatrix} ξ11 =(−11)(当 t = 1 t \ = 1 t =1时),特征值 λ 2 = 3 \lambda_2 \ = 3 λ2 =3对应的特征向量取 ξ 21 = ( 1 1 ) \xi_{21} \ = \begin{pmatrix} 1 \\ 1 \end{pmatrix} ξ21 =(11)(当 s = 1 s \ = 1 s =1时),则 P = ( − 1 1 1 1 ) P \ = \begin{pmatrix} -1 & 1 \\ 1 & 1 \end{pmatrix} P =(−1111), Λ = ( 1 0 0 3 ) \Lambda \ = \begin{pmatrix} 1 & 0 \\ 0 & 3 \end{pmatrix} Λ =(1003)。通过计算 P − 1 A P P^{-1}AP P−1AP,可以验证 P − 1 A P = Λ P^{-1}AP \ = \Lambda P−1AP =Λ,从而实现了矩阵 A A A的相似对角化。
(三) P P P矩阵的可逆性
在相似对角化的过程中, P P P矩阵的可逆性具有举足轻重的地位。从相似对角化的定义 P − 1 A P = Λ P^{-1}AP \ = \Lambda P−1AP =Λ可以看出,如果 P P P不可逆,那么 P − 1 P^{-1} P−1就不存在,也就无法满足相似对角化的形式要求,矩阵 A A A也就不能进行相似对角化。
深入分析可知, P P P矩阵是由矩阵 A A A的特征向量构成的。而 P P P矩阵可逆的充要条件是它的列向量线性无关,也就是矩阵 A A A的 n n n个特征向量线性无关。这进一步说明了 n n n阶方阵 A A A可相似对角化的充要条件是 A A A有 n n n个线性无关的特征向量。如果 A A A的特征向量线性相关,那么 P P P矩阵就不可逆,相似对角化也就无法实现。
五、特征值与相似矩阵的性质
(一)特征值的性质
- 特征值乘积与行列式的关系:特征值的乘积等于矩阵的行列式,即 ∏ i = 1 n λ i = ∣ A ∣ \prod_{i \ = 1}^{n}\lambda_i \ = \vert A\vert ∏i =1nλi =∣A∣。这一性质揭示了特征值与矩阵行列式之间的内在联系。例如,对于矩阵 A = ( 2 1 1 2 ) A \ = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix} A =(2112),我们可以通过行列式的计算公式 ∣ A ∣ = 2 × 2 − 1 × 1 = 3 \vert A\vert \ = 2\times2 - 1\times1 \ = 3 ∣A∣ =2×2−1×1 =3来计算其行列式的值。同时,我们已经求得该矩阵的特征值 λ 1 = 1 \lambda_1 \ = 1 λ1 =1, λ 2 = 3 \lambda_2 \ = 3 λ2 =3, λ 1 λ 2 = 1 × 3 = 3 \lambda_1\lambda_2 \ = 1\times3 \ = 3 λ1λ2 =1×3 =3,恰好等于矩阵 A A A的行列式 ∣ A ∣ \vert A\vert ∣A∣。这一性质在很多情况下可以帮助我们快速验证计算结果的正确性,或者通过已知的特征值来计算矩阵的行列式。
- 特征值之和与矩阵迹的关系:特征值的和等于矩阵的主对角线元素之和,矩阵的主对角线元素之和也被称为矩阵的迹,记为 t r ( A ) tr(A) tr(A),即 ∑ i = 1 n λ i = ∑ i = 1 n a i i \sum_{i \ = 1}^{n}\lambda_i \ = \sum_{i \ = 1}^{n}a_{ii} ∑i =1nλi =∑i =1naii。对于矩阵 A = ( 2 1 1 2 ) A \ = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix} A =(2112), t r ( A ) = 2 + 2 = 4 tr(A)\ =2 + 2 \ = 4 tr(A) =2+2 =4,而特征值 λ 1 = 1 \lambda_1 \ = 1 λ1 =1, λ 2 = 3 \lambda_2 \ = 3 λ2 =3, λ 1 + λ 2 = 1 + 3 = 4 \lambda_1+\lambda_2 \ = 1 + 3 \ = 4 λ1+λ2 =1+3 =4,二者相等。这一性质在判断矩阵的一些特性以及简化计算中具有重要作用。比如,当我们知道矩阵的特征值时,能快速得到矩阵的迹;反之,若已知矩阵的迹和部分特征值,也可据此求出其他特征值。
(二)相似矩阵的性质
- 特征值相同:相似矩阵具有相同的特征值。即若矩阵 A A A与 B B B相似,存在可逆矩阵 P P P使得 P − 1 A P = B P^{-1}AP \ = B P−1AP =B,那么 A A A和 B B B的特征多项式 ∣ A − λ E ∣ \vert A - \lambda E\vert ∣A−λE∣与 ∣ B − λ E ∣ \vert B - \lambda E\vert ∣B−λE∣是相等的。这是因为 ∣ B − λ E ∣ = ∣ P − 1 A P − λ E ∣ = ∣ P − 1 ( A − λ E ) P ∣ \vert B - \lambda E\vert \ = \vert P^{-1}AP - \lambda E\vert \ = \vert P^{-1}(A - \lambda E)P\vert ∣B−λE∣ =∣P−1AP−λE∣ =∣P−1(A−λE)P∣,根据行列式的性质 ∣ P − 1 ( A − λ E ) P ∣ = ∣ P − 1 ∣ ∣ A − λ E ∣ ∣ P ∣ \vert P^{-1}(A - \lambda E)P\vert \ = \vert P^{-1}\vert\vert A - \lambda E\vert\vert P\vert ∣P−1(A−λE)P∣ =∣P−1∣∣A−λE∣∣P∣,又因为 ∣ P − 1 ∣ ∣ P ∣ = 1 \vert P^{-1}\vert\vert P\vert \ = 1 ∣P−1∣∣P∣ =1,所以 ∣ B − λ E ∣ = ∣ A − λ E ∣ \vert B - \lambda E\vert \ = \vert A - \lambda E\vert ∣B−λE∣ =∣A−λE∣,进而 A A A和 B B B有相同的特征值。这一性质在矩阵的变换和分类中非常关键,相似矩阵由于特征值相同,在很多与特征值相关的性质和应用上表现出一致性。
- 行列式相等:相似矩阵的行列式相等。因为 ∣ B ∣ = ∣ P − 1 A P ∣ = ∣ P − 1 ∣ ∣ A ∣ ∣ P ∣ = ∣ A ∣ \vert B\vert \ = \vert P^{-1}AP\vert \ = \vert P^{-1}\vert\vert A\vert\vert P\vert \ = \vert A\vert ∣B∣ =∣P−1AP∣ =∣P−1∣∣A∣∣P∣ =∣A∣(依据行列式的性质 ∣ A B ∣ = ∣ A ∣ ∣ B ∣ \vert AB\vert \ = \vert A\vert\vert B\vert ∣AB∣ =∣A∣∣B∣以及 ∣ P − 1 ∣ ∣ P ∣ = 1 \vert P^{-1}\vert\vert P\vert \ = 1 ∣P−1∣∣P∣ =1)。这意味着相似矩阵在行列式相关的运算和性质上是等价的,例如在判断矩阵是否可逆时,相似矩阵具有相同的可逆性(因为可逆矩阵的行列式不为零,相似矩阵行列式相等,所以要么都可逆,要么都不可逆)。
- 迹相等:相似矩阵的迹相等。由于相似矩阵特征值相同,而特征值的和等于矩阵的迹,所以相似矩阵的迹必然相等。即若 A A A与 B B B相似, t r ( A ) = t r ( B ) tr(A)\ =tr(B) tr(A) =tr(B)。这一性质在一些需要比较矩阵特征的场景中很有用,比如在判断两个矩阵是否可能相似时,迹是否相等可以作为一个初步的判断条件。
六、伴随矩阵与转置矩阵的特征值
(一)伴随矩阵的特征值
对于矩阵 A A A,当 A A A可逆时,其伴随矩阵 A ∗ A^* A∗满足 A ∗ = ∣ A ∣ A − 1 A^* \ = \vert A\vert A^{-1} A∗ =∣A∣A−1。假设 λ \lambda λ是 A A A的特征值, ξ \xi ξ是对应的特征向量,即 A ξ = λ ξ A\xi \ = \lambda\xi Aξ =λξ( ξ ≠ 0 \xi\neq0 ξ=0)。两边同时左乘 A ∗ A^* A∗,得到 A ∗ A ξ = A ∗ λ ξ A^*A\xi \ = A^*\lambda\xi A∗Aξ =A∗λξ。又因为 A ∗ A = ∣ A ∣ E A^*A \ = \vert A\vert E A∗A =∣A∣E,所以 ∣ A ∣ ξ = λ A ∗ ξ \vert A\vert\xi \ = \lambda A^*\xi ∣A∣ξ =λA∗ξ,则 A ∗ ξ = ∣ A ∣ λ ξ A^*\xi \ = \frac{\vert A\vert}{\lambda}\xi A∗ξ =λ∣A∣ξ( λ ≠ 0 \lambda\neq0 λ=0)。这表明当 λ \lambda λ是可逆矩阵 A A A的非零特征值时, ∣ A ∣ λ \frac{\vert A\vert}{\lambda} λ∣A∣是 A ∗ A^* A∗的特征值。例如,若 A A A是一个 3 3 3阶可逆矩阵, ∣ A ∣ = 6 \vert A\vert \ = 6 ∣A∣ =6, A A A的一个特征值为 2 2 2,那么 A ∗ A^* A∗对应有一个特征值为 6 2 = 3 \frac{6}{2}\ =3 26 =3。
当 λ = 0 \lambda \ = 0 λ =0时,情况较为特殊。若 0 0 0是 A A A的特征值,则 A A A不可逆(因为可逆矩阵的特征值都不为 0 0 0),此时需要根据 A A A的秩等信息进一步分析 A ∗ A^* A∗的特征值情况。若 r ( A ) < n − 1 r(A)<n - 1 r(A)<n−1( n n n为矩阵 A A A的阶数),则 A ∗ A^* A∗的所有元素都为 0 0 0,即 A ∗ = 0 A^* \ = 0 A∗ =0, 0 0 0是 A ∗ A^* A∗的 n n n重特征值;若 r ( A ) = n − 1 r(A)\ =n - 1 r(A) =n−1, A ∗ A^* A∗的秩为 1 1 1, 0 0 0是 A ∗ A^* A∗的 n − 1 n - 1 n−1重特征值,另一个非零特征值可通过其他方法计算。
(二)伴随矩阵与转置矩阵特征值的关系
A A A的伴随矩阵 A ∗ A^* A∗和 A A A的转置矩阵 A T A^T AT的特征值相同。这是因为 ∣ A T − λ E ∣ = ∣ ( A − λ E ) T ∣ \vert A^T - \lambda E\vert \ = \vert (A - \lambda E)^T\vert ∣AT−λE∣ =∣(A−λE)T∣,根据行列式的性质 ∣ A T ∣ = ∣ A ∣ \vert A^T\vert \ = \vert A\vert ∣AT∣ =∣A∣,可得 ∣ ( A − λ E ) T ∣ = ∣ A − λ E ∣ \vert (A - \lambda E)^T\vert \ = \vert A - \lambda E\vert ∣(A−λE)T∣ =∣A−λE∣,所以 A A A和 A T A^T AT有相同的特征多项式,进而有相同的特征值。而 A ∗ A^* A∗与 A A A的特征值存在上述关系,所以在一定条件下, A ∗ A^* A∗和 A T A^T AT的特征值相同。这一关系在研究矩阵的各种变换和性质时提供了更多的思路和联系,例如在某些涉及伴随矩阵和转置矩阵的计算和证明中,可以利用它们特征值相同这一性质进行推导和简化。
七、矩阵 A A A及其相关矩阵的特征值与特征向量性质推导
(一) a A + b E aA + bE aA+bE( a a a、 b b b为常数 )的特征值与特征向量
已知 λ \lambda λ是矩阵 A A A的特征值, ξ \xi ξ是对应的特征向量,即 A ξ = λ ξ A\xi \ = \lambda\xi Aξ =λξ。
对于矩阵 a A + b E aA + bE aA+bE,计算 ( a A + b E ) ξ (aA + bE)\xi (aA+bE)ξ:
( a A + b E ) ξ = a A ξ + b E ξ = a λ ξ + b ξ = ( a λ + b ) ξ \begin{align*} (aA + bE)\xi&\ =aA\xi + bE\xi\\ &\ =a\lambda\xi + b\xi\\ &\ =(a\lambda + b)\xi \end{align*} (aA+bE)ξ =aAξ+bEξ =aλξ+bξ =(aλ+b)ξ
根据特征值与特征向量的定义,满足 ( a A + b E ) ξ = μ ξ (aA + bE)\xi \ = \mu\xi (aA+bE)ξ =μξ( μ \mu μ为特征值, ξ \xi ξ为特征向量)的 μ \mu μ就是 a A + b E aA + bE aA+bE的特征值,所以 a A + b E aA + bE aA+bE的特征值为 a λ + b a\lambda + b aλ+b,且特征向量与 A A A相同,为 ξ \xi ξ。这表明对矩阵 A A A进行 a a a倍缩放并加上 b b b倍单位矩阵的变换后,其特征值也相应地进行 a a a倍缩放再加上 b b b的变换,而特征向量保持不变。
(二) A n A^n An( n n n为正整数 )的特征值与特征向量
已知 A ξ = λ ξ A\xi \ = \lambda\xi Aξ =λξ,当 n = 2 n \ = 2 n =2时:
A 2 ξ = A ( A ξ ) = A ( λ ξ ) = λ A ξ = λ 2 ξ \begin{align*} A^2\xi&\ =A(A\xi)\\ &\ =A(\lambda\xi)\\ &\ =\lambda A\xi\\ &\ =\lambda^2\xi \end{align*} A2ξ =A(Aξ) =A(λξ) =λAξ =λ2ξ
假设当 n = k n \ = k n =k( k k k为正整数)时, A k ξ = λ k ξ A^k\xi \ = \lambda^k\xi Akξ =λkξ成立。
当 n = k + 1 n \ = k + 1 n =k+1时:
A k + 1 ξ = A ( A k ξ ) = A ( λ k ξ ) = λ k A ξ = λ k + 1 ξ \begin{align*} A^{k + 1}\xi&\ =A(A^k\xi)\\ &\ =A(\lambda^k\xi)\\ &\ =\lambda^k A\xi\\ &\ =\lambda^{k + 1}\xi \end{align*} Ak+1ξ =A(Akξ) =A(λkξ) =λkAξ =λk+1ξ
由数学归纳法可知,对于任意正整数 n n n, A n ξ = λ n ξ A^n\xi \ = \lambda^n\xi Anξ =λnξ。所以 A n A^n An的特征值为 λ n \lambda^n λn,特征向量为 ξ \xi ξ。这体现了矩阵幂次运算与特征值、特征向量之间的规律,矩阵 A A A的 n n n次幂的特征值是其原特征值的 n n n次幂,且特征向量在幂次变换下保持稳定。
(三) A − 1 A^{-1} A−1( A A A可逆 )的特征值与特征向量
因为 A A A可逆,且 A ξ = λ ξ A\xi \ = \lambda\xi Aξ =λξ( ξ ≠ 0 \xi\neq0 ξ=0),两边同时左乘 A − 1 A^{-1} A−1:
A − 1 A ξ = A − 1 λ ξ ξ = λ A − 1 ξ \begin{align*} A^{-1}A\xi&\ =A^{-1}\lambda\xi\\ \xi&\ =\lambda A^{-1}\xi \end{align*} A−1Aξξ =A−1λξ =λA−1ξ
由于 λ ≠ 0 \lambda\neq0 λ=0(可逆矩阵的特征值不为 0 0 0),等式两边同时除以 λ \lambda λ,得到 A − 1 ξ = 1 λ ξ A^{-1}\xi \ = \frac{1}{\lambda}\xi A−1ξ =λ1ξ。所以 A − 1 A^{-1} A−1的特征值为 1 λ \frac{1}{\lambda} λ1,特征向量为 ξ \xi ξ。这表明可逆矩阵 A A A的逆矩阵的特征值是 A A A特征值的倒数,且矩阵 A A A与其逆矩阵 A − 1 A^{-1} A−1具有相同的特征向量,反映了可逆矩阵与其逆矩阵在特征向量性质上的紧密联系。
(四) A T A^T AT( A A A的转置矩阵 )的特征值
已知 A A A和 A T A^T AT的特征多项式分别为 ∣ A − λ E ∣ \vert A - \lambda E\vert ∣A−λE∣和 ∣ A T − λ E ∣ \vert A^T - \lambda E\vert ∣AT−λE∣。
根据行列式的性质:对于任意矩阵 M M M, ∣ M T ∣ = ∣ M ∣ \vert M^T\vert \ = \vert M\vert ∣MT∣ =∣M∣。
对于 M = A − λ E M \ = A - \lambda E M =A−λE,有 ∣ A T − λ E ∣ = ∣ ( A − λ E ) T ∣ = ∣ A − λ E ∣ \vert A^T - \lambda E\vert \ = \vert (A - \lambda E)^T\vert \ = \vert A - \lambda E\vert ∣AT−λE∣ =∣(A−λE)T∣ =∣A−λE∣。
因为特征多项式相等,所以 A A A和 A T A^T AT有相同的特征值。但需要注意的是,虽然 A A A和 A T A^T AT特征值相同,它们的特征向量一般不同。这是因为矩阵转置后,其对向量的变换方式在空间中的表现有所不同,导致满足特征向量定义的向量集合通常不一致。
八、总结
本教程全面且深入地讲解了线性代数中特征值与特征向量的求解方法,包括从特征方程出发求特征值,以及通过代入方程组细致求解特征向量的过程,同时强调了求解特征向量时要涵盖所有情况。对于相似对角化,我们详细阐述了其基础概念、判断条件、具体步骤以及 P P P矩阵可逆性的重要意义。此外,还深入探讨了特征值与相似矩阵的诸多性质,以及伴随矩阵与转置矩阵特征值的特点和关系,并对矩阵 A A A及其相关矩阵的特征值与特征向量性质进行了详细推导。
特征值、特征向量以及相似对角化作为线性代数的核心内容,不仅在理论体系中占据关键地位,而且在实际应用中有着广泛的用途。希望读者通过本教程能够深入理解这些知识,熟练掌握相关的计算和判断方法,为后续在数学、物理、工程、计算机科学等多个领域的学习和研究打下坚实的基础。在学习过程中,建议读者多做练习题,通过实际操作加深对这些概念和方法的理解和运用能力。
相关文章:
机器学习数学基础:21.特征值与特征向量
一、引言 在现代科学与工程的众多领域中,线性代数扮演着举足轻重的角色。其中,特征值、特征向量以及相似对角化的概念和方法,不仅是线性代数理论体系的核心部分,更是解决实际问题的有力工具。无论是在物理学中描述系统的振动模式…...
逻辑分析仪的使用-以STM32C8T6控制SG90舵机为例
STM32C8T6控制SG90舵机 1.逻辑分析仪作用 逻辑分析仪在嵌入式开发中的作用非常重要,它是开发、调试和排错过程中的一个不可或缺的工具。具体来说,逻辑分析仪的作用包括以下几个方面: 1.信号捕获和分析: 逻辑分析仪能够实时捕获多个…...
QCustomplot库运用
最近需要用到这个库显示数据,需要在一个曲线图4个Y轴共用一个X轴,并且做游标,跟随鼠标移动,并且实时反馈数据到表格中。记录一下程序。 customPlot new QCustomPlot(this); customPlot->setBackground(QBrush(QColor(204,204,…...
数据中心网络监控
数据中心是全球协作的特定设备网络,用来在internet网络基础设施上传递、加速、展示、计算、存储数据信息。 对于任何利用IT基础设施的企业来说,数据中心都是运营的核心,它本质上为整个业务网络托管业务应用程序和存储空间。数据中心可以是任…...
定义+类比
定义:间接量表是备选问题或者是备选语句或者是语句中选择合适的语句表达其态度,最后选择是一个合适的语句 A给具体的表打分,是直接上数字,而不是选择合适的语句表达其态度 B给排序,也是通过数字来表达其态度,也不是选择…...
深度学习框架探秘|PyTorch:AI 开发的灵动画笔
前一篇文章我们学习了深度学习框架——TensorFlow(深度学习框架探秘|TensorFlow:AI 世界的万能钥匙)。在人工智能领域,还有一个深度学习框架——PyTorch,以其独特的魅力吸引着众多开发者和研究者。它就像一…...
NAT模式 vs DR模式:LVS 负载均衡技术的优劣与适用场景
1. NAT 模式(Network Address Translation) 工作原理 请求路径:客户端请求发送到虚拟 IP(VIP),负载均衡器(Director)通过 DNAT(目标地址转换)将请求转发到真…...
八大排序——归并排序
目录 1.基本思想 2.动态图 3.分解的时候我们可以使用递归的方式进行 代码解释 1. main 方法 2. mergeSort 方法 3. merge 方法 示例运行过程 初始数组 每轮排序后的数组 代码总结 合并两个有序序列 1.基本思想 归并排序就是递归得将原始数组递归对半分隔,…...
YOLO算法模型检测利用手机IP摄像头
1.yolo算法训练模型 yolov5训练网络数据集_yolo数据集 csdn-CSDN博客 2.模型检测 检测文件参数:yolov5的detect.py中基础参数分析-CSDN博客 3.进行IP摄像头检测 3.1下载IP摄像头 3.2打开与使用IP摄像头(确保手机与电脑在同一WiFi(局域网…...
前端职业规划
前端开发的职业规划可以根据个人兴趣、技术深度和职业目标来制定。以下是一个典型的前端开发者职业发展路径,涵盖了从初级到高级的不同阶段,以及未来的发展方向: 1. 初级阶段(0-2 年) 目标:掌握基础技能&a…...
百度舆情优化:百度下拉框中的负面如何清除?
百度的下拉词、相关搜索、大家还在搜有负面词条,一直是企业公关经理头疼的问题,小马识途营销顾问深耕网络营销领域十几年,对百度SEO优化、百度下拉框、百度相关搜索、自媒体营销、短视频营销等等技巧方面积累了一定的方法和技巧。 对于百度下…...
Java中如何高效地合并多个对象的List数据:方法与案例解析!
哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互…...
【Vue】打包vue3+vite项目发布到github page的完整过程
文章目录 第一步:打包第二步:github仓库设置第三步:安装插件gh-pages第四步:两个配置第五步:上传github其他问题1. 路由2.待补充 参考文章: 环境: vue3vite windows11(使用终端即可&…...
编译和链接【四】链接详解
文章目录 编译和链接【四】链接详解前言系列文章入口符号表和重定位表链接过程分段组装符号决议重定位 编译和链接【四】链接详解 前言 在我大一的时候, 我使用VC6.0对C语言程序进行编译链接和运行 , 然后我接触了VS, Qt creator等众多IDE&…...
C语言进阶——4自定义类型(2)— 位段/枚举/联合体
目录 2. 位段2.1 什么是位段2.2 位段的内存分配2.3 位段的跨平台问题2.4 位段的应用 3. 枚举3.1 枚举类型的定义3.2 枚举的优点3.3 枚举的使用 4. 联合(共用体)4.1 联合类型的定义4.2 联合的特点4.3 联合大小的计算 2. 位段 2.1 什么是位段 位段的声明…...
企业级高可用 Kubernetes 实践:基于青云 LB 搭建容灾与负载均衡集群全攻略
一、前言 在企业生产环境,k8s高可用是一个必不可少的特性,其中最通用的场景就是如何在 k8s 集群宕机一个节点的情况下保障服务依旧可用。部署高可用k8s集群对于企业级云平台来说是一个根本性的原则,容错、服务可用和数据安全是高可用基础设施的关键。本文是在青云上利用青云…...
250213-异常exception
1. 概念 异常的抛出(throw):若在方法运行中出现错误,则方法会生成代表该异常的一个对象,并把它交给运行时系统,这个过程叫做抛出。 异常的捕获(catch):运行时系统接收到…...
MySQL - 索引 - 介绍
索引(Index)是帮助数据库高效获取数据的数据结构. 结构 语法 创建索引 creat [unique] index 索引名 on 表名 (字段名, ...); //创建唯一索引时加上unique, 多个字段用逗号隔开 查看索引 show index from 表名; 删除索引 drop index 索引名 on 表名;...
每日一题——90. 子集 II
题目链接:90. 子集 II - 力扣(LeetCode) 代码: class Solution { private:vector<vector<int>> result;vector<int> path;void traversal(vector<int>& nums,int startindex,vector<bool> …...
Mysql进阶篇(mysqlcheck - 表维护程序)
mysqlcheck的作用 mysqlcheck客户端用于执行表维护,可以对表进行:分析、检查、优化或修复操作。 (1)分析的作用是查看表的关键字分布,能够让 sql 生成正确的执行计划(支持 InnoDB,MyISAM&#x…...
ChartDB:一个基于Web的可视化数据库设计工具
这次给大家介绍一个可视化的数据库设计工具:ChartDB。 ChartDB 是一个免费开源的数据库可视化设计工具,支持的数据库包括 MySQL、MariaDB、PostgreSQL、Microsoft SQL Server、SQLite、ClickHouse 等。 对于已有的数据库,ChartDB 提供了一键…...
Java NIO基础与实战:如何提升IO操作性能
Java NIO 概述 Java NIO(新 I/O)是 Java 提供的一个更为高效的 I/O 处理框架。Java NIO(New I/O)是对传统 I/O(java.io)模型的改进,它引入了非阻塞 I/O 操作和面向缓冲区的数据读写方式&#x…...
Elasticsearch:同义词在 RAG 中重要吗?
作者:来自 Elastic Jeffrey Rengifo 及 Toms Mura 探索 RAG 应用程序中 Elasticsearch 同义词的功能。 同义词允许我们使用具有相同含义的不同词语在文档中搜索,以确保用户无论使用什么确切的词语都能找到他们所寻找的内容。你可能会认为,由于…...
Python - Python正则表达式
正则表达式(Regular Expression),又称规则表达式。正则表达式(Regular Expression)是一组由字母和符号组成的特殊文本,用于从文本中找出满足特定格式的句子。正则表达式通常被用来检索、替换那些符合某个模…...
DeepSeek 指导手册(入门到精通)
第⼀章:准备篇(三分钟上手)1.1 三分钟创建你的 AI 伙伴1.2 认识你的 AI 控制台 第二章:基础对话篇(像交朋友⼀样学交流)2.1 有效提问的五个黄金法则2.2 新手必学魔法指令 第三章:效率飞跃篇&…...
Android adb测试常用命令大全
目录 一、查看最上层成activity名字: 二、查看Activity的任务栈: 三、获取安装包信息 四、性能相关 1、显示CPU信息 : 2、查看CPU使用信息 3、内存信息(meminfo package_name or pid 使用程序的包名或者进程id显示内存信息) 4、电量信…...
【python语言应用】最新全流程Python编程、机器学习与深度学习实践技术应用(帮助你快速了解和入门 Python)
近年来,人工智能领域的飞速发展极大地改变了各个行业的面貌。当前最新的技术动态,如大型语言模型和深度学习技术的发展,展示了深度学习和机器学习技术的强大潜力,成为推动创新和提升竞争力的关键。特别是PyTorch,凭借其…...
在不知道进程的情况下怎么关闭
在不知道具体进程ID(PID)或者进程可能会变动的情况下,关闭MinIO服务器的方法通常依赖于你如何启动MinIO以及你的操作系统环境。以下是一些建议的步骤: 1. 使用系统服务管理工具 如果你将MinIO配置为系统服务(例如在L…...
算力平台 驱动云的使用
驱动云的使用 1 进入官网注册2 上传数据3 上传模型4 创建项目5 开发环境6 停止使用 1 进入官网注册 点击这个进入 可以看到注册之后送十个算力点 如果不训练,仅仅上传数据和模型,那么也是要收费的,因为存储数据要占用驱动云的空间。 2 上…...
高校LabVIEW开发调试中的常见问题
在高校进行LabVIEW开发调试时,常常面临硬件选型不当、方案设计不合理、布线不专业以及人员流动性强等问题。这些问题可能影响项目的进展和质量。本文将总结这些问题,并给出具体的解决方案,帮助学生和团队更高效地开展开发工作。 1. 硬件选…...
数据结构——结构体位域、typedef类型重定义、宏、共用体union、枚举、虚拟内存划分
一、结构体位域 1.1 结构体位域的基础 结构体位域:把结构体字节大小扣到极致的一个类型,以bit单位 格式:struct 位域体名{数据类型 位域名:位域大小;数据类型 位域名:位域大小;...};解析:位域体名:可有可无ÿ…...
git bash删除库中的分支与文件
一、 在 GitHub 上删除非 main 分支的步骤可以分为两部分:首先在本地删除该分支,然后在 GitHub 上删除远程分支。以下是详细的步骤: 1. 删除远程分支(在 GitHub 上删除) 打开 GitHub 仓库页面,进入你的仓…...
连锁收银系统的核心架构与技术选型
在连锁门店的日常运营里,连锁收银系统扮演着极为重要的角色,它不仅承担着交易结算的基础任务,还关联着库存管理、会员服务、数据分析等多个关键环节。一套设计精良的核心架构与合理的技术选型,是保障收银系统高效、稳定运行的基础…...
称呼计算器:智能科技,简化您的计算生活
一款手机应用程序,安卓设备上使用。这款计算器应用以其简洁的界面、实用的功能和良好的用户体验而受到用户的喜爱。 计算器的主要特点包括: 基本计算功能:支持加、减、乘、除等基本运算。 科学计算器模式:提供更高级的数学运算功…...
qt的QMainWindow保存窗口和恢复窗口状态
保存窗口状态 QSettings settings("MyCompany", "MyApp"); // 指定存储的应用信息 settings.setValue("mainWindowState", saveState());saveState() 返回一个 QByteArray,包含 所有停靠窗口和工具栏的状态。QSettings 用于存储数据…...
【mysql】记一次mysql服务挂了后的数据恢复过程
现象 服务器异常,导致mysql服务异常退出,重启后,校验redo log异常 说明 mysql服务是通过docker-compose启动的,serviceName是db磁盘挂载:/var/lib/mysql挂载到本地磁盘/data/mysql 处理过程 备份 查看磁盘挂载列表 docker …...
使用 LangChain 对接硅基流动(SiliconFlow)API:构建一个智能对话系统
文章目录 什么是硅基流动(SiliconFlow)?LangChain 简介在 LangChain 中对接硅基流动步骤 1:安装必要的库步骤 2:设置 API 密钥步骤 3:编写代码代码解析步骤 4:运行代码如何扩展和改进总结 在现代…...
K8s 证书认知(K8s Certificate Awareness)
K8s 证书认知 在谈起 Kubernetes 证书时,总感觉其涵盖的内容繁多,仿佛千头万绪,让人不知该从何处着手阐述。为了更好地理清思路,本文将对相关内容进行系统的梳理和记录。 1、证书及链路关系 Kubeadm部署的集群,K8s …...
iperf
iperf 是一个网络性能测试工具,用于测量TCP和UDP的网络带宽。-c 参数表示客户端模式,用于指定要连接的服务器地址。以下是一些常见的 iperf 客户端命令示例: 基本用法 iperf -c <server_ip> <server_ip>:服务器的IP…...
【FastAPI 使用FastAPI和uvicorn来同时运行HTTP和HTTPS的Python应用程序】
在本文中,我们将介绍如何使用 FastAPI和uvicorn来同时运行HTTP和HTTPS的 Python应用程序。 简介 FastAPI是一个高性能的Web框架,可以用于构建快速、可靠的API。它基于Python的类型提示和异步支持,使得开发者可以轻松地编写出安全且高效的代…...
Windows系统安装搭建悟空crm客户管理系统 教程
1、在安装悟空 CRM 之前,需要确保你的 Windows 系统上已经安装了以下软件: Web 服务器:推荐使用 Apache 或 Nginx,这里以 Nginx 为例。你可以使用集成环境套件如 XAMPP 来简化安装过程,它包含了 Nginx 、MySQL、PHP 等…...
使用API有效率地管理Dynadot域名,清除某一文件夹中域名的默认DNS设置
关于Dynadot Dynadot是通过ICANN认证的域名注册商,自2002年成立以来,服务于全球108个国家和地区的客户,为数以万计的客户提供简洁,优惠,安全的域名注册以及管理服务。 Dynadot平台操作教程索引(包括域名邮…...
评估多智能体协作网络(MACNET)的性能:COT和AUTOGPT基线方法
评估多智能体协作网络(MACNET)的性能 方法选择:选择COT(思维链,Chain of Thought)、AUTOGPT等作为基线方法。 COT是一种通过在推理过程中生成中间推理步骤,来增强语言模型推理能力的方法,能让模型更好地处理复杂问题,比如在数学问题求解中,展示解题步骤。 AUTOGPT则是…...
(4/100)每日小游戏平台系列
新增一个点击反应速度测试! 点击反应速度测试是一款简单有趣的网页小游戏,旨在测试玩家的反应能力和专注度。通过随机高亮的颜色块,玩家需要快速点击正确的颜色,并在限定时间内挑战自己的反应速度。 📜 游戏规则 游戏开…...
Day42(补)【AI思考】-编译过程中语法分析及递归子程序分析法的系统性解析
文章目录 编译过程中语法分析及递归子程序分析法的系统性解析**一、总览:编译流程中的语法分析****1. 编译过程核心步骤** **二、语法分析的核心任务****1. 核心目标****2. 现实类比** **三、递归子程序分析法的本质****1. 方法分类****2. 递归子程序分析法的运作原…...
AcWing 190. 字串变换 --BFS-双向搜索
已知有两个字串 A, B 及一组字串变换的规则(至多 66 个规则): A1→B1 A2→B2 … 规则的含义为:在 A 中的子串 A1A1 可以变换为 B1、A2 可以变换为 B2…。 例如:A=abcd B=xyz 变换规则为: …...
visual studio导入cmake项目后打开无法删除和回车
通过Cmakelists.txt导入的项目做删除和回车无法响应,需要点击项目,然后选择配置项目就可以了...
【论文笔记】ZeroGS:扩展Spann3R+GS+pose估计
spann3r是利用dust3r做了增量式的点云重建,这里zeroGS在前者的基础上,进行了增量式的GS重建以及进行了pose的联合优化,这是一篇dust3r与GS结合的具有启发意义的工作。 abstract NeRF和3DGS是重建和渲染逼真图像的流行技术。然而,…...
Vue2中常用指令
文章目录 Vue2中常用指令1. v-text 动态渲染纯文本内容1. 作用2. 基本用法3. 示例4. 注意事项 2. v-html 动态渲染 HTML 内容1. 作用2. 基本用法3. 示例4. 注意事项 3. v-bind 动态绑定 HTML 属性1. 作用2. 基本用法3. 示例4. 注意事项5. 绑定class属性的用法6. 绑定style属性的…...
09-轮转数组
给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 方法一:使用额外数组 function rotate(nums: number[], k: number): void {const n nums.length;k k % n; // 处理 k 大于数组长度的情况const newNums new A…...