常见的向量范数、矩阵范数和对偶范数-对偶范数详细证明过程
文章目录
- 对偶范数
- 一般定义: p p p-范数和 q q q-范数的对偶性
- 特例 1:无穷范数和 1 范数的对偶性
- 特例 2:2 范数的对偶是自身
- 特例 3:有限范数与 0 范数的对偶关系(稀疏性)
- 特例 4:核范数(Nuclear Norm)与谱范数(Spectral Norm)的对偶关系
- 2范数自对偶证明
- 1范数和无穷范数互为对偶证明
- 对偶范数中既有向量范数也有矩阵范数
- 向量范数和矩阵范数
- 一、向量范数
- 向量范数定义
- 例子:计算向量范数
- 二、矩阵范数
- 矩阵范数定义
- 例子:计算矩阵范数
对偶范数
对偶范数的定义帮助我们理解不同范数间的互补关系,特别是在优化问题中。以下是对偶范数的概念及一些常见的特例说明:
一般定义: p p p-范数和 q q q-范数的对偶性
对于任意的 p p p-范数,定义为:
1 p + 1 q = 1 , p , q ≥ 1 \frac{1}{p} + \frac{1}{q} = 1, \quad p, q \geq 1 p1+q1=1,p,q≥1
其中 q q q-范数定义为:
∥ y ∥ q = ( ∑ i = 1 n ∣ y i ∣ q ) 1 / q \|y\|_q = \left( \sum_{i=1}^n |y_i|^q \right)^{1/q} ∥y∥q=(i=1∑n∣yi∣q)1/q
换句话说, p p p-范数和 q q q-范数构成对偶关系。对于向量 y y y,其 q q q-范数的定义满足:
∥ y ∥ q = sup ∥ x ∥ p ≤ 1 x T y \|y\|_q = \sup_{\|x\|_p \leq 1} x^T y ∥y∥q=∥x∥p≤1supxTy
即在 ∥ x ∥ p ≤ 1 \|x\|_p \leq 1 ∥x∥p≤1的约束下, x T y x^T y xTy的最大值就是 ∥ y ∥ q \|y\|_q ∥y∥q。
特例 1:无穷范数和 1 范数的对偶性
无穷范数( ∞ \infty ∞-范数)和 1 范数构成对偶关系。当 p = ∞ p = \infty p=∞时, q = 1 q = 1 q=1。其关系如下:
-
无穷范数定义为:
∥ x ∥ ∞ = max i ∣ x i ∣ \|x\|_\infty = \max_{i} |x_i| ∥x∥∞=imax∣xi∣ -
1 范数定义为:
∥ y ∥ 1 = ∑ i = 1 n ∣ y i ∣ \|y\|_1 = \sum_{i=1}^n |y_i| ∥y∥1=i=1∑n∣yi∣
根据对偶性,有
∥ x ∥ ∞ = sup ∥ y ∥ 1 ≤ 1 x T y \|x\|_\infty = \sup_{\|y\|_1 \leq 1} x^T y ∥x∥∞=∥y∥1≤1supxTy
此时,若 y y y满足 1 范数约束,其与 x x x的内积达到最大时即为 x x x的无穷范数。
特例 2:2 范数的对偶是自身
对于 2 范数(欧几里得范数),有 p = q = 2 p = q = 2 p=q=2,即 2 范数的对偶范数是自身:
- 2 范数定义为:
∥ x ∥ 2 = ( ∑ i = 1 n ∣ x i ∣ 2 ) 1 / 2 \|x\|_2 = \left( \sum_{i=1}^n |x_i|^2 \right)^{1/2} ∥x∥2=(i=1∑n∣xi∣2)1/2
在这种情况下,我们可以写成:
∥ y ∥ 2 = sup ∥ x ∥ 2 ≤ 1 x T y \|y\|_2 = \sup_{\|x\|_2 \leq 1} x^T y ∥y∥2=∥x∥2≤1supxTy
也就是说,当 x x x的 2 范数不超过 1 时, x T y x^T y xTy的最大值是 y y y的 2 范数。这反映了 2 范数的自对偶性。
除了 p p p-范数和 q q q-范数的典型对偶组合(如 ∞ \infty ∞-范数与 1 1 1-范数的对偶关系,和 2 2 2-范数的自对偶性)之外,还有其他常见的特例:
特例 3:有限范数与 0 范数的对偶关系(稀疏性)
在一些优化问题中,尤其是稀疏信号处理和压缩感知中,出现了一种与“伪范数”相关的对偶关系。具体而言:
-
0 范数(严格意义上它并不是范数)表示向量中非零元素的数量:
∥ x ∥ 0 = number of non-zero elements in x \|x\|_0 = \text{number of non-zero elements in } x ∥x∥0=number of non-zero elements in x -
1 范数与 0 范数相关,因为它能够在某种程度上作为 0 范数的凸近似,帮助解决稀疏性问题。
虽然 0 范数和 1 范数没有直接的对偶关系,但在稀疏优化中,经常使用 1 范数作为一种替代方式来促进解的稀疏性。这意味着通过最小化 1 范数来近似最小化 0 范数的效果,尤其是在压缩感知问题中,1 范数能够产生与 0 范数优化类似的稀疏解。
特例 4:核范数(Nuclear Norm)与谱范数(Spectral Norm)的对偶关系
在矩阵的范数理论中,核范数(Nuclear Norm)和谱范数(Spectral Norm)之间具有对偶关系:
-
核范数,也称为迹范数,是矩阵奇异值的和。对于矩阵 X X X,核范数定义为:
∥ X ∥ ∗ = ∑ i = 1 n σ i ( X ) \|X\|_* = \sum_{i=1}^n \sigma_i(X) ∥X∥∗=i=1∑nσi(X)
其中 σ i ( X ) \sigma_i(X) σi(X)是矩阵 X X X的第 i i i个奇异值。 -
谱范数,也称为算子范数或 2-范数,表示矩阵的最大奇异值:
∥ X ∥ 2 = max i σ i ( X ) \|X\|_2 = \max_i \sigma_i(X) ∥X∥2=imaxσi(X)
核范数和谱范数的对偶关系可写为:
∥ X ∥ ∗ = sup ∥ Y ∥ 2 ≤ 1 Tr ( Y T X ) \|X\|_* = \sup_{\|Y\|_2 \leq 1} \text{Tr}(Y^T X) ∥X∥∗=∥Y∥2≤1supTr(YTX)
在这里,核范数是对矩阵的稀疏性(低秩)的一个度量,而谱范数对矩阵的行列式约束进行控制。因此,这对对偶性在矩阵稀疏和低秩优化问题中起到重要作用。
2范数自对偶证明
对于 2 范数的对偶性,具体地,我们希望证明 2 范数的对偶范数是自身。也就是说,对于任何向量 y ∈ R n y \in \mathbb{R}^n y∈Rn,以下关系成立:
∥ y ∥ 2 = sup ∥ x ∥ 2 ≤ 1 x T y \|y\|_2 = \sup_{\|x\|_2 \leq 1} x^T y ∥y∥2=∥x∥2≤1supxTy
即 2 范数是其自身的对偶范数。
证明过程
1. 2 范数的定义
对于向量 y = ( y 1 , y 2 , … , y n ) ∈ R n y = (y_1, y_2, \dots, y_n) \in \mathbb{R}^n y=(y1,y2,…,yn)∈Rn,其 2 范数(欧几里得范数)定义为:
∥ y ∥ 2 = ( ∑ i = 1 n y i 2 ) 1 / 2 \|y\|_2 = \left( \sum_{i=1}^n y_i^2 \right)^{1/2} ∥y∥2=(i=1∑nyi2)1/2
2. 对偶问题的设定
为了证明 2 范数是自身的对偶范数,我们需要求解在 ∥ x ∥ 2 ≤ 1 \|x\|_2 \leq 1 ∥x∥2≤1的约束条件下最大化 x T y x^T y xTy的问题。这相当于找到一个向量 x x x,使得 x T y x^T y xTy尽可能大,并满足 x x x的 2 范数不超过 1。
所以我们构造以下优化问题:
sup ∥ x ∥ 2 ≤ 1 x T y \sup_{\|x\|_2 \leq 1} x^T y ∥x∥2≤1supxTy
3. 计算内积的最大化
为了解决这个优化问题,我们使用柯西-施瓦茨不等式(Cauchy-Schwarz Inequality),它表明对于任意两个向量 x , y ∈ R n x, y \in \mathbb{R}^n x,y∈Rn:
∣ x T y ∣ ≤ ∥ x ∥ 2 ∥ y ∥ 2 |x^T y| \leq \|x\|_2 \|y\|_2 ∣xTy∣≤∥x∥2∥y∥2
其中等号成立的条件是 x x x与 y y y共线,即存在实数 λ \lambda λ使得 x = λ y x = \lambda y x=λy。
4. 取到等号的条件
在 ∥ x ∥ 2 ≤ 1 \|x\|_2 \leq 1 ∥x∥2≤1的限制下,要使 x T y x^T y xTy取到最大值,可以选择 x x x的方向与 y y y相同,即令 x = y ∥ y ∥ 2 x = \frac{y}{\|y\|_2} x=∥y∥2y。这样可以确保 x x x的 2 范数为 1(满足约束条件),并且内积 x T y x^T y xTy达到最大值。
因此,我们有
x T y = ( y ∥ y ∥ 2 ) T y = y T y ∥ y ∥ 2 = ∥ y ∥ 2 2 ∥ y ∥ 2 = ∥ y ∥ 2 x^T y = \left( \frac{y}{\|y\|_2} \right)^T y = \frac{y^T y}{\|y\|_2} = \frac{\|y\|_2^2}{\|y\|_2} = \|y\|_2 xTy=(∥y∥2y)Ty=∥y∥2yTy=∥y∥2∥y∥22=∥y∥2
5. 结论
因此,在 ∥ x ∥ 2 ≤ 1 \|x\|_2 \leq 1 ∥x∥2≤1的条件下, x T y x^T y xTy的最大值为 ∥ y ∥ 2 \|y\|_2 ∥y∥2,即:
sup ∥ x ∥ 2 ≤ 1 x T y = ∥ y ∥ 2 \sup_{\|x\|_2 \leq 1} x^T y = \|y\|_2 ∥x∥2≤1supxTy=∥y∥2
这证明了 2 范数的对偶范数是其自身。
1范数和无穷范数互为对偶证明
我们来详细推导无穷范数( ∥ ⋅ ∥ ∞ \|\cdot\|_\infty ∥⋅∥∞)和 1 范数( ∥ ⋅ ∥ 1 \|\cdot\|_1 ∥⋅∥1)的对偶关系。
目标
证明对于向量 y ∈ R n y \in \mathbb{R}^n y∈Rn,有以下关系成立:
∥ y ∥ 1 = sup ∥ x ∥ ∞ ≤ 1 x T y \|y\|_1 = \sup_{\|x\|_\infty \leq 1} x^T y ∥y∥1=∥x∥∞≤1supxTy
即 1 范数是无穷范数约束下的内积 x T y x^T y xTy的最大值。
证明步骤
1. 无穷范数和 1 范数的定义
给定向量 y = ( y 1 , y 2 , … , y n ) y = (y_1, y_2, \dots, y_n) y=(y1,y2,…,yn)和 x = ( x 1 , x 2 , … , x n ) x = (x_1, x_2, \dots, x_n) x=(x1,x2,…,xn):
-
无穷范数定义为
∥ x ∥ ∞ = max i ∣ x i ∣ \|x\|_\infty = \max_{i} |x_i| ∥x∥∞=imax∣xi∣
因此约束 ∥ x ∥ ∞ ≤ 1 \|x\|_\infty \leq 1 ∥x∥∞≤1表示 ∣ x i ∣ ≤ 1 |x_i| \leq 1 ∣xi∣≤1对于所有 i = 1 , 2 , … , n i = 1, 2, \dots, n i=1,2,…,n。 -
1 范数定义为
∥ y ∥ 1 = ∑ i = 1 n ∣ y i ∣ \|y\|_1 = \sum_{i=1}^n |y_i| ∥y∥1=i=1∑n∣yi∣
2. 构造最优 x x x
在约束 ∥ x ∥ ∞ ≤ 1 \|x\|_\infty \leq 1 ∥x∥∞≤1下,我们希望最大化 x T y = ∑ i = 1 n x i y i x^T y = \sum_{i=1}^n x_i y_i xTy=∑i=1nxiyi。为了使内积 x T y x^T y xTy最大,我们需要选择 x i x_i xi的符号与 y i y_i yi的符号一致,并取 x i = sign ( y i ) x_i = \operatorname{sign}(y_i) xi=sign(yi)(即 x i = 1 x_i = 1 xi=1当 y i ≥ 0 y_i \geq 0 yi≥0,否则 x i = − 1 x_i = -1 xi=−1)。这样可以确保每一项 x i y i x_i y_i xiyi的值都为正,从而使得和最大化。
因此,对于每个 i i i,我们设
x i = { 1 如果 y i ≥ 0 − 1 如果 y i < 0 x_i = \begin{cases} 1 & \text{如果 } y_i \geq 0 \\ -1 & \text{如果 } y_i < 0 \end{cases} xi={1−1如果 yi≥0如果 yi<0
3. 计算 x T y x^T y xTy的最大值
在上述选择下,内积 x T y x^T y xTy成为
x T y = ∑ i = 1 n x i y i = ∑ i = 1 n ∣ y i ∣ x^T y = \sum_{i=1}^n x_i y_i = \sum_{i=1}^n |y_i| xTy=i=1∑nxiyi=i=1∑n∣yi∣
这正是 y y y的 1 范数,即
∥ y ∥ 1 = ∑ i = 1 n ∣ y i ∣ \|y\|_1 = \sum_{i=1}^n |y_i| ∥y∥1=i=1∑n∣yi∣
4. 取上确界
因此,我们得出
sup ∥ x ∥ ∞ ≤ 1 x T y = ∥ y ∥ 1 \sup_{\|x\|_\infty \leq 1} x^T y = \|y\|_1 ∥x∥∞≤1supxTy=∥y∥1
这表明在无穷范数限制下, x T y x^T y xTy的最大值等于 y y y的 1 范数,从而证明了无穷范数与 1 范数的对偶性。
结论
无穷范数和 1 范数是对偶范数对,因为在 ∥ x ∥ ∞ ≤ 1 \|x\|_\infty \leq 1 ∥x∥∞≤1的条件下, x T y x^T y xTy的最大值恰好是 y y y的 1 范数,即
∥ y ∥ 1 = sup ∥ x ∥ ∞ ≤ 1 x T y \|y\|_1 = \sup_{\|x\|_\infty \leq 1} x^T y ∥y∥1=∥x∥∞≤1supxTy
在上述选择下,内积 x T y x^T y xTy成为
x T y = ∑ i = 1 n x i y i = ∑ i = 1 n ∣ y i ∣ x^T y = \sum_{i=1}^n x_i y_i = \sum_{i=1}^n |y_i| xTy=i=1∑nxiyi=i=1∑n∣yi∣
这正是 y y y的 1 范数,即
∥ y ∥ 1 = ∑ i = 1 n ∣ y i ∣ \|y\|_1 = \sum_{i=1}^n |y_i| ∥y∥1=i=1∑n∣yi∣
4. 取上确界
因此,我们得出
sup ∥ x ∥ ∞ ≤ 1 x T y = ∥ y ∥ 1 \sup_{\|x\|_\infty \leq 1} x^T y = \|y\|_1 ∥x∥∞≤1supxTy=∥y∥1
这表明在无穷范数限制下, x T y x^T y xTy的最大值等于 y y y的 1 范数,从而证明了无穷范数与 1 范数的对偶性。
结论
无穷范数和 1 范数是对偶范数对,因为在 ∥ x ∥ ∞ ≤ 1 \|x\|_\infty \leq 1 ∥x∥∞≤1的条件下, x T y x^T y xTy的最大值恰好是 y y y的 1 范数,即
∥ y ∥ 1 = sup ∥ x ∥ ∞ ≤ 1 x T y \|y\|_1 = \sup_{\|x\|_\infty \leq 1} x^T y ∥y∥1=∥x∥∞≤1supxTy
对偶范数中既有向量范数也有矩阵范数
谱范数是矩阵范数,而不是向量范数。谱范数(2-范数)定义为矩阵的最大奇异值,适用于矩阵而不是单独的向量。它用于衡量线性变换对向量的伸缩程度。
向量范数
对于向量 x x x而言, p p p-范数 ∥ x ∥ p \|x\|_p ∥x∥p)定义为
∥ x ∥ p = ( ∑ i = 1 n ∣ x i ∣ p ) 1 / p \|x\|_p = \left( \sum_{i=1}^n |x_i|^p \right)^{1/p} ∥x∥p=(i=1∑n∣xi∣p)1/p
矩阵范数
而矩阵的谱范数 ∥ X ∥ 2 \|X\|_2 ∥X∥2则是矩阵作用在向量上时的最大伸缩量。对于矩阵 X X X的谱范数,有
∥ X ∥ 2 = sup ∥ x ∥ 2 ≤ 1 ∥ X x ∥ 2 \|X\|_2 = \sup_{\|x\|_2 \leq 1} \|Xx\|_2 ∥X∥2=∥x∥2≤1sup∥Xx∥2
即,谱范数是使得 X x Xx Xx达到最大长度的 x x x的伸缩量。这也是为什么谱范数涉及奇异值,因为奇异值表示矩阵作用下的尺度变化。
向量范数和矩阵范数
一、向量范数
向量范数用于衡量向量的大小或长度。常见的向量范数包括 1 范数、2 范数(欧几里得范数)和无穷范数。
向量范数定义
给定向量 x = ( x 1 , x 2 , … , x n ) x = (x_1, x_2, \dots, x_n) x=(x1,x2,…,xn),定义如下:
-
1 范数(曼哈顿范数):
∥ x ∥ 1 = ∑ i = 1 n ∣ x i ∣ \|x\|_1 = \sum_{i=1}^n |x_i| ∥x∥1=i=1∑n∣xi∣ -
2 范数(欧几里得范数):
∥ x ∥ 2 = ( ∑ i = 1 n ∣ x i ∣ 2 ) 1 / 2 \|x\|_2 = \left( \sum_{i=1}^n |x_i|^2 \right)^{1/2} ∥x∥2=(i=1∑n∣xi∣2)1/2 -
无穷范数(最大范数):
∥ x ∥ ∞ = max i ∣ x i ∣ \|x\|_\infty = \max_{i} |x_i| ∥x∥∞=imax∣xi∣
例子:计算向量范数
设定向量 x = ( 3 , − 4 ) x = (3, -4) x=(3,−4),计算它的 1 范数、2 范数和无穷范数。
-
1 范数:
∥ x ∥ 1 = ∣ 3 ∣ + ∣ − 4 ∣ = 3 + 4 = 7 \|x\|_1 = |3| + |-4| = 3 + 4 = 7 ∥x∥1=∣3∣+∣−4∣=3+4=7 -
2 范数:
∥ x ∥ 2 = 3 2 + ( − 4 ) 2 = 9 + 16 = 25 = 5 \|x\|_2 = \sqrt{3^2 + (-4)^2} = \sqrt{9 + 16} = \sqrt{25} = 5 ∥x∥2=32+(−4)2=9+16=25=5 -
无穷范数:
∥ x ∥ ∞ = max ( ∣ 3 ∣ , ∣ − 4 ∣ ) = max ( 3 , 4 ) = 4 \|x\|_\infty = \max(|3|, |-4|) = \max(3, 4) = 4 ∥x∥∞=max(∣3∣,∣−4∣)=max(3,4)=4
二、矩阵范数
矩阵范数用于衡量矩阵作为线性变换的“伸缩效应”。常见的矩阵范数包括 1 范数、Frobenius 范数、无穷范数和谱范数(2-范数)。
矩阵范数定义
对于矩阵 X = ( x i j ) ∈ R m × n X = (x_{ij}) \in \mathbb{R}^{m \times n} X=(xij)∈Rm×n,定义如下:
-
1 范数(列和范数):最大列和
∥ X ∥ 1 = max 1 ≤ j ≤ n ∑ i = 1 m ∣ x i j ∣ \|X\|_1 = \max_{1 \leq j \leq n} \sum_{i=1}^m |x_{ij}| ∥X∥1=1≤j≤nmaxi=1∑m∣xij∣ -
Frobenius 范数(矩阵的 2 范数):矩阵元素平方和的平方根
∥ X ∥ F = ∑ i = 1 m ∑ j = 1 n ∣ x i j ∣ 2 \|X\|_F = \sqrt{\sum_{i=1}^m \sum_{j=1}^n |x_{ij}|^2} ∥X∥F=i=1∑mj=1∑n∣xij∣2 -
无穷范数(行和范数):最大行和
∥ X ∥ ∞ = max 1 ≤ i ≤ m ∑ j = 1 n ∣ x i j ∣ \|X\|_\infty = \max_{1 \leq i \leq m} \sum_{j=1}^n |x_{ij}| ∥X∥∞=1≤i≤mmaxj=1∑n∣xij∣ -
谱范数(最大奇异值):矩阵的最大奇异值
∥ X ∥ 2 = σ max ( X ) \|X\|_2 = \sigma_{\max}(X) ∥X∥2=σmax(X)
谱范数 ∥ X ∥ 2 \|X\|_2 ∥X∥2是矩阵 X X X的最大奇异值。如果矩阵 X ∈ R m × n X \in \mathbb{R}^{m \times n} X∈Rm×n的奇异值为 σ 1 , σ 2 , … , σ min ( m , n ) \sigma_1, \sigma_2, \dots, \sigma_{\min(m, n)} σ1,σ2,…,σmin(m,n),则谱范数为:
∥ X ∥ 2 = max i σ i ( X ) \|X\|_2 = \max_{i} \sigma_i(X) ∥X∥2=imaxσi(X)
奇异值是从矩阵 X X X的协方差矩阵 X T X X^T X XTX的特征值中得出的。假设特征值为 λ 1 , λ 2 , … , λ min ( m , n ) \lambda_1, \lambda_2, \dots, \lambda_{\min(m, n)} λ1,λ2,…,λmin(m,n),则奇异值为 σ i = λ i \sigma_i = \sqrt{\lambda_i} σi=λi。
例子:计算矩阵范数
设定矩阵
X = ( 1 − 2 − 3 4 ) X = \begin{pmatrix} 1 & -2 \\ -3 & 4 \end{pmatrix} X=(1−3−24)
-
1 范数:
∥ X ∥ 1 = max ( ∣ 1 ∣ + ∣ − 3 ∣ , ∣ − 2 ∣ + ∣ 4 ∣ ) = max ( 4 , 6 ) = 6 \|X\|_1 = \max(|1| + |-3|, |-2| + |4|) = \max(4, 6) = 6 ∥X∥1=max(∣1∣+∣−3∣,∣−2∣+∣4∣)=max(4,6)=6 -
Frobenius 范数:
∥ X ∥ F = 1 2 + ( − 2 ) 2 + ( − 3 ) 2 + 4 2 = 1 + 4 + 9 + 16 = 30 \|X\|_F = \sqrt{1^2 + (-2)^2 + (-3)^2 + 4^2} = \sqrt{1 + 4 + 9 + 16} = \sqrt{30} ∥X∥F=12+(−2)2+(−3)2+42=1+4+9+16=30 -
无穷范数:
∥ X ∥ ∞ = max ( ∣ 1 ∣ + ∣ − 2 ∣ , ∣ − 3 ∣ + ∣ 4 ∣ ) = max ( 3 , 7 ) = 7 \|X\|_\infty = \max(|1| + |-2|, |-3| + |4|) = \max(3, 7) = 7 ∥X∥∞=max(∣1∣+∣−2∣,∣−3∣+∣4∣)=max(3,7)=7 -
谱范数:
计算 X T X X^T X XTX并求特征值,取平方根得到最大奇异值。
-
谱范数例子1【矩阵维度相等】
考虑一个简单的 2x2 矩阵:
X = ( 3 1 1 3 ) X = \begin{pmatrix} 3 & 1 \\ 1 & 3 \end{pmatrix} X=(3113)步骤 1:计算 X T X X^T X XTX
为了找到奇异值,我们首先计算 X T X X^T X XTX:
X T X = ( 3 1 1 3 ) ( 3 1 1 3 ) = ( 3 ⋅ 3 + 1 ⋅ 1 3 ⋅ 1 + 1 ⋅ 3 1 ⋅ 3 + 3 ⋅ 1 1 ⋅ 1 + 3 ⋅ 3 ) X^T X = \begin{pmatrix} 3 & 1 \\ 1 & 3 \end{pmatrix} \begin{pmatrix} 3 & 1 \\ 1 & 3 \end{pmatrix} = \begin{pmatrix} 3 \cdot 3 + 1 \cdot 1 & 3 \cdot 1 + 1 \cdot 3 \\ 1 \cdot 3 + 3 \cdot 1 & 1 \cdot 1 + 3 \cdot 3 \end{pmatrix} XTX=(3113)(3113)=(3⋅3+1⋅11⋅3+3⋅13⋅1+1⋅31⋅1+3⋅3)
= ( 9 + 1 3 + 3 3 + 3 1 + 9 ) = ( 10 6 6 10 ) = \begin{pmatrix} 9 + 1 & 3 + 3 \\ 3 + 3 & 1 + 9 \end{pmatrix} = \begin{pmatrix} 10 & 6 \\ 6 & 10 \end{pmatrix} =(9+13+33+31+9)=(106610)
步骤 2:计算 X T X X^T X XTX的特征值
特征值 λ \lambda λ满足特征方程:
det ( X T X − λ I ) = 0 \det(X^T X - \lambda I) = 0 det(XTX−λI)=0
即:
∣ 10 − λ 6 6 10 − λ ∣ = 0 \begin{vmatrix} 10 - \lambda & 6 \\ 6 & 10 - \lambda \end{vmatrix} = 0 10−λ6610−λ =0
展开行列式:
( 10 − λ ) ( 10 − λ ) − 6 ⋅ 6 = 0 (10 - \lambda)(10 - \lambda) - 6 \cdot 6 = 0 (10−λ)(10−λ)−6⋅6=0λ 2 − 20 λ + 64 = 0 \lambda^2 - 20\lambda + 64 = 0 λ2−20λ+64=0
解得:
λ = 16 和 λ = 4 \lambda = 16 \quad \text{和} \quad \lambda = 4 λ=16和λ=4步骤 3:计算奇异值
奇异值为特征值的平方根,因此:
σ 1 = 16 = 4 , σ 2 = 4 = 2 \sigma_1 = \sqrt{16} = 4, \quad \sigma_2 = \sqrt{4} = 2 σ1=16=4,σ2=4=2步骤 4:求谱范数
谱范数是最大奇异值,因此:
∥ X ∥ 2 = max ( σ 1 , σ 2 ) = 4 \|X\|_2 = \max(\sigma_1, \sigma_2) = 4 ∥X∥2=max(σ1,σ2)=4总结
通过计算奇异值的最大值,我们得到矩阵 X X X的谱范数为 4。对称矩阵的谱范数也是奇异值的最大值。 -
谱范数例子2【矩阵维度不相等】
我们可以通过一个非方阵(矩阵维数不相等)的例子来理解谱范数的计算。假设我们有一个 3 × 2 3 \times 2 3×2矩阵:
X = ( 1 2 3 4 5 6 ) X = \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \end{pmatrix} X= 135246 步骤 1:计算 X T X X^T X XTX
因为谱范数等于最大奇异值,我们可以通过计算矩阵 X T X X^T X XTX的特征值来获得奇异值。首先,计算 X T X X^T X XTX:
X T = ( 1 3 5 2 4 6 ) X^T = \begin{pmatrix} 1 & 3 & 5 \\ 2 & 4 & 6 \end{pmatrix} XT=(123456)X T X = ( 1 3 5 2 4 6 ) ( 1 2 3 4 5 6 ) X^T X = \begin{pmatrix} 1 & 3 & 5 \\ 2 & 4 & 6 \end{pmatrix} \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \end{pmatrix} XTX=(123456) 135246
执行矩阵乘法:
X T X = ( 1 ⋅ 1 + 3 ⋅ 3 + 5 ⋅ 5 1 ⋅ 2 + 3 ⋅ 4 + 5 ⋅ 6 2 ⋅ 1 + 4 ⋅ 3 + 6 ⋅ 5 2 ⋅ 2 + 4 ⋅ 4 + 6 ⋅ 6 ) X^T X = \begin{pmatrix} 1 \cdot 1 + 3 \cdot 3 + 5 \cdot 5 & 1 \cdot 2 + 3 \cdot 4 + 5 \cdot 6 \\ 2 \cdot 1 + 4 \cdot 3 + 6 \cdot 5 & 2 \cdot 2 + 4 \cdot 4 + 6 \cdot 6 \end{pmatrix} XTX=(1⋅1+3⋅3+5⋅52⋅1+4⋅3+6⋅51⋅2+3⋅4+5⋅62⋅2+4⋅4+6⋅6)= ( 1 + 9 + 25 2 + 12 + 30 2 + 12 + 30 4 + 16 + 36 ) = ( 35 44 44 56 ) = \begin{pmatrix} 1 + 9 + 25 & 2 + 12 + 30 \\ 2 + 12 + 30 & 4 + 16 + 36 \end{pmatrix} = \begin{pmatrix} 35 & 44 \\ 44 & 56 \end{pmatrix} =(1+9+252+12+302+12+304+16+36)=(35444456)
步骤 2:计算 X T X X^T X XTX的特征值
特征值 λ \lambda λ满足以下特征方程:
det ( X T X − λ I ) = 0 \det(X^T X - \lambda I) = 0 det(XTX−λI)=0
即:∣ 35 − λ 44 44 56 − λ ∣ = 0 \begin{vmatrix} 35 - \lambda & 44 \\ 44 & 56 - \lambda \end{vmatrix} = 0 35−λ444456−λ =0
展开行列式得到特征方程:( 35 − λ ) ( 56 − λ ) − 4 4 2 = 0 (35 - \lambda)(56 - \lambda) - 44^2 = 0 (35−λ)(56−λ)−442=0
计算:λ 2 − 91 λ + 36 = 0 \lambda^2 - 91\lambda + 36 = 0 λ2−91λ+36=0
解得两个特征值接着求解上一步的特征值方程:
我们得到特征方程为:
λ 2 − 91 λ + 36 = 0 \lambda^2 - 91\lambda + 36 = 0 λ2−91λ+36=0
可以使用二次方程公式求解:
λ = 91 ± 9 1 2 − 4 ⋅ 1 ⋅ 36 2 \lambda = \frac{91 \pm \sqrt{91^2 - 4 \cdot 1 \cdot 36}}{2} λ=291±912−4⋅1⋅36
计算根号内部分:
9 1 2 = 8281 91^2 = 8281 912=82814 ⋅ 1 ⋅ 36 = 144 4 \cdot 1 \cdot 36 = 144 4⋅1⋅36=144
8281 − 144 = 8137 8281 - 144 = 8137 8281−144=8137
因此,
λ = 91 ± 8137 2 \lambda = \frac{91 \pm \sqrt{8137}}{2} λ=291±8137
计算出两个特征值(记为 λ 1 \lambda_1 λ1和 λ 2 \lambda_2 λ2),然后取平方根得到奇异值 σ 1 = λ 1 \sigma_1 = \sqrt{\lambda_1} σ1=λ1和 σ 2 = λ 2 \sigma_2 = \sqrt{\lambda_2} σ2=λ2。最终步骤:谱范数
矩阵 X X X的谱范数 ∥ X ∥ 2 \|X\|_2 ∥X∥2为最大奇异值:
∥ X ∥ 2 = max ( σ 1 , σ 2 ) \|X\|_2 = \max(\sigma_1, \sigma_2) ∥X∥2=max(σ1,σ2)
通过这个过程,我们可以得到非方矩阵的谱范数,即奇异值中的最大值。
相关文章:
常见的向量范数、矩阵范数和对偶范数-对偶范数详细证明过程
文章目录 对偶范数一般定义: p p p-范数和 q q q-范数的对偶性特例 1:无穷范数和 1 范数的对偶性特例 2:2 范数的对偶是自身特例 3:有限范数与 0 范数的对偶关系(稀疏性)特例 4:核范数ÿ…...
Android 滴滴面经
Android 滴滴面经 文章目录 Android 滴滴面经一面二面三面 一面 Activity的启动的四种模式,四种启动模式的应用场景,单例模式的启动场景,我回答的是闹钟,反问:在单例模式下闹钟运行时点击back键,是回退到闹…...
angular登录按钮输入框监听
说明:angular实现简单的登录页面,监听输入框的值,打印出来,按钮监听,打印数据 效果图: step1:E:\projectgood\ajnine\untitled4\src\app\app.config.ts import { ApplicationConfig, provideZoneChangeDetection } …...
硅谷甄选(10)用户管理
用户管理模块 9.1 静态搭建 主要是el-form、el-pagination <template><el-card style"height: 80px"><el-form :inline"true" class"form"><el-form-item label"用户名:"><el-input placeholder"请…...
Unity XR Interaction Toolkit 开发教程(2):导入 SDK【3.0 以上版本】
文章目录 📕课程总结📕安装 Unity 编辑器与打包模块📕导入 OpenXR📕导入 XR Interaction Toolkit📕打包发布 获取完整课程以及答疑,工程文件下载: https://www.spatialxr.tech/ 视频试看链接&a…...
element-plus校验单个form对象合法性
在 Vue 中,循环生成的表单列表,并且每个表单中包含多个对象,使用 v-for 来创建这些表单,并且使用动态 prop 路径来验证单个对象是否满足必填校验。 <template><el-form ref"formRef" :model"form" …...
Linux常见命令合集
目录 1.ls 列出指定目录下的文件和和文件夹 2.cd change directory 切换目录 3. cat 查看文件 4.more 分屏查看文件 5.tail从后往前查看指定文件 6.mkdir 创建目录 7.rm强制删除指定目录和文件 8.cp复制文件和目录 9.mv移动和重命名命令 10.tar命令打包和拆包 重点是…...
__init__.py __all__和 __name__的作用及其用法
__ init__.py 的作用及其用法: 包下的__init__.py 所在目录是一个模块包,本身也是一个模块,可用于定义模糊导入时要导入的内容。当我们导入一个包的时候,包下的__init__.py中的代码会自动执行,因此在某些大的项目被使用频率较高的模块&#x…...
js操作数组的方法 / js操作字符串的方法
操纵数组的方法 常见的有10种 push() -在数组末尾添加一个或多个元素,并返回新的长度。 pop() -删除数组的最后一个元素,并返回那个元素。 shift() -删除数组的第一个元素,并返回那个元素。 unshift() -在数组的开始添加一个或多个元素&…...
Docker 部署RocketMQ
FROM: Docker安装RocketMQ教程_docker 安装rocketmq-CSDN博客...
Linux(Cent OS)环境离线安装mkfontscale mkfontdir命令 解决java项目在linux系统下无法获取中文字体问题
https://download.csdn.net/download/mlc19860417/89938093 1 附件下载 1.libfontenc-1.1.3-3.amzn2.0.2.x86_64.rpm 2.libXfont-1.5.2-1.amzn2.0.2.x86_64.rpm 3.xorg-x11-font-utils-7.5-20.amzn2.0.2.x86_64.rpm 4.fontpackages-filesystem-1.44-8.amzn2.noarch.rpm 5.sti…...
计算堆栈中的剩余数字
更多关于刷题的内容欢迎订阅我的专栏华为刷题笔记 该专栏题目包含两部分: 100 分值部分题目 200 分值部分题目 所有题目都会陆续更新,订阅防丢失 题目描述: 向一个空栈中依次存入正整数, 假设入栈元素 n ( 1 < n < 2…...
笔记:mysql升级 5.6至5.7
说明 一台已有数据的机器,停机升级,从MySQL Server5.6.48,升级到 5.7.38。 环境介绍 10.24.10.247,Mysql 5.6.48 CentOS Linux release 7.9.2009 (Core) 32G内存、500G数据盘/home; 实际数据量约120M,2个…...
前端的全栈Deno篇(五):与前端保持一致的模块化方案,摆脱ERR_REQUIRE_ESM和mjs、cjs等模块混乱带来的心智负担
在现代JavaScript开发中,模块化系统的演变经历了多次变革,使得前端和后端开发人员在选择模块加载方式时常常感到困惑。尤其是Node.js所采用的CommonJS和ESM(ECMAScript Modules)两种模块体系,以及文件扩展名的多样性&a…...
与外部公司做数据交互时,需要注意哪些事情?
在现代企业系统中,数据交互已成为日常业务流程的核心部分。与外部公司进行数据交换可以带来业务合作和资源共享的机会,但也带来了数据安全、协议兼容性、合规性等方面的挑战。本文将深入探讨在与外部公司进行数据交互时需要关注的关键事项,并…...
基于hive分析Flask为后端框架echarts为前端框架的招聘网站可视化大屏项目
基于hive分析Flask为后端框架echarts为前端框架的招聘网站可视化大屏项目 1. 项目概述 项目目标是构建一个大数据分析系统,包含以下核心模块: 1、数据爬取:通过request请求获取猎聘网的就业数据。 2、数据存储和分析:使用 Hive …...
Ansible 部署应用
Ansible Ansible 是基于 Python 开发,集合了众多优秀运维工具的优点,实现了批量运行命令、部署程序、配置系统等功能的自动化运维管理工具。默认通过 SSH 协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动…...
使用Docker Swarm进行集群管理
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Docker Swarm进行集群管理 Docker Swarm简介 安装Docker 在Ubuntu上安装Docker 在CentOS上安装Docker 在macOS上安装Docker …...
基于树莓派的安保巡逻机器人--(一、快速人脸录入与精准人脸识别)
目录 零、前言 一、人脸检测 二、人脸识别 1、采集人脸 2、训练人脸识别模型 3、人脸识别应用 零、前言 随着智能安防需求的增长,基于人工智能和物联网的安保系统逐渐成为趋势。树莓派因其低成本、高扩展性等特点,成为很多AI项目的理想平台。本文将为大…...
中间件的应用
控制器 <?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;class AgeController extends Controller {//public function index(){return "年龄测试";} }路由 // 年龄控制器路由 Route::get("d2/{age}",[AgeController::class,&quo…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
ZYNQ学习记录FPGA(一)ZYNQ简介
一、知识准备 1.一些术语,缩写和概念: 1)ZYNQ全称:ZYNQ7000 All Pgrammable SoC 2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board) 3)ARM:处理器…...
React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构
React 实战项目:微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇!在前 29 篇文章中,我们从 React 的基础概念逐步深入到高级技巧,涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...
Java数组Arrays操作全攻略
Arrays类的概述 Java中的Arrays类位于java.util包中,提供了一系列静态方法用于操作数组(如排序、搜索、填充、比较等)。这些方法适用于基本类型数组和对象数组。 常用成员方法及代码示例 排序(sort) 对数组进行升序…...
