常见的向量范数、矩阵范数和对偶范数-对偶范数详细证明过程
文章目录
- 对偶范数
- 一般定义: 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…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构
React 实战项目:微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇!在前 29 篇文章中,我们从 React 的基础概念逐步深入到高级技巧,涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...
2025.6.9总结(利与弊)
凡事都有两面性。在大厂上班也不例外。今天找开发定位问题,从一个接口人不断溯源到另一个 接口人。有时候,不知道是谁的责任填。将工作内容分的很细,每个人负责其中的一小块。我清楚的意识到,自己就是个可以随时替换的螺丝钉&…...
