二次型、正定、半正定关系


Reference:

  1. 如何理解二次型?
  2. 如何理解矩阵特征值?
  3. 正负定的几何意义

相关文章:

  1. 特征值、奇异值分解SVD、主成分分析PCA、行列式

1. 二次函数的特点

1.1 二次函数

最简单的一元二次函数就是:
在这里插入图片描述
给它增加一次项不会改变形状:
在这里插入图片描述
增加常数项就更不用说了,更不会改变形状。

1.2 二次方程

下面是一个二元二次方程:
在这里插入图片描述
给它增加一次项也不会改变形状,只是看上去有些伸缩:
在这里插入图片描述

1.3 小结

对于二次函数或者二次方程,二次部分是主要部分,往往研究二次这部分就够了。

2. 通过矩阵来研究二次方程

因为二次函数(方程)的二次部分最重要,为了方便研究,我们把含有 n n n 个变量的二次齐次函数:
f ( x 1 , x 2 , ⋅ , x n ) = a 11 x 1 2 + a 22 x 2 2 + ⋅ ⋅ ⋅ + a n n x n 2 + 2 a 12 x 1 x 2 + 2 a 13 x 1 x 3 + ⋅ ⋅ ⋅ + 2 a n − 1 , n x n − 1 x n f(x_1, x_2, \cdot, x_n) = a_{11}x_1^2 + a_{22}x_2^2 + \cdot\cdot\cdot + a_{nn}x_n^2 + 2a_{12}x_1x_2 + 2a_{13}x_1x_3 + \cdot\cdot\cdot + 2a_{n-1,n}x_{n-1}x_{n} f(x1,x2,,xn)=a11x12+a22x22++annxn2+2a12x1x2+2a13x1x3++2an1,nxn1xn二次齐次方程称为二次型。

2.1 二次型矩阵

实际上我们可以通过矩阵来表示二次型:
在这里插入图片描述
更一般的:
请添加图片描述
可以写成更线代的形式:
请添加图片描述
所以有下面一一对应的关系:
对称矩阵 ⇔ 二次型矩阵 ⇔ 二次型 对称矩阵\Leftrightarrow 二次型矩阵 \Leftrightarrow 二次型 对称矩阵二次型矩阵二次型在线代里面,就是通过一个对称矩阵,去研究某个二次型。

2.2 通过矩阵来研究有什么好处

2.2.1 圆锥曲线

我们来看下,这是一个圆:
在这里插入图片描述
改变一下这个二次型矩阵:
在这里插入图片描述
哈,原来椭圆与圆之间是线性关系呐(通过矩阵变换就可以从圆变为椭圆)。
再改变一下:
在这里插入图片描述
咦,双曲线和圆之间也是线性关系(准确 说是仿射的)。

其实圆、椭圆、双曲线之间关系很紧密的,统称为圆锥曲线,都是圆锥体和平面的交线请添加图片描述
从上面动图可看出,一个平面在圆锥体上运动,可以得到圆、椭圆、双曲线,这也是它们之间具有线性关系的来源(平面的运动是线性的、或者是仿射的)。

2.2.2 规范化

再改变下矩阵:
在这里插入图片描述
这个椭圆看起来有点歪,不太好处理,我们来把它扶正,这就叫做规范化

如果我们对矩阵有更深刻的认识,那么要把它扶正很简单。

往下读之前,请先参看如何理解特征值下的回答。

首先,矩阵代表了运动,包含:

  • 旋转
  • 拉伸
  • 投影

对于方阵,因为没有维度的改变,所以就没有投影这个运动了,只有:

  • 旋转
  • 拉伸

具体到上面的矩阵:
在这里插入图片描述
我把这个矩阵进行特征值分解:
在这里插入图片描述
注意图上提到的正交很重要,为什么重要,可以参看在如何理解特征值中的解释。

对于二次型矩阵,都是对称矩阵,所以特征值分解总可以得到正交矩阵与对角矩阵。

特征值分解实际上就是把运动分解了:
在这里插入图片描述
那么我们只需要保留拉伸部分,就相当于把矩阵扶正(图中把各自图形的二次型矩阵标注出来了):
在这里插入图片描述
所以,用二次型矩阵进行规范化是非常轻松的事情。

2.2.3 正定

正定是对二次函数有效的一个定义,对方程无效。

对于二次型函数, f ( x ) = x T A x f(\boldsymbol{x})=\boldsymbol{x}^T\boldsymbol{Ax} f(x)=xTAx

  • f ( X ) > 0 , x ≠ 0 , x ∈ R f(X)>0,x\neq 0, x\in\mathbb{R} f(X)>0,x=0,xR,则 f f f正定二次型 A A A正定矩阵
  • f ( X ) ≥ 0 , x ≠ 0 , x ∈ R f(X)\geq0,x\neq 0, x\in\mathbb{R} f(X)0,x=0,xR,则 f f f半正定二次型 A A A半正定矩阵
    注意,半正定矩阵是不可逆的。我们知道,当特征值等于 0 0 0 就不可逆了。半正定可以写成正交特征向量为基的对角矩阵,正交矩阵对矩阵det无影响所以在判断正负的时候可以忽略。正定矩阵对角化后特征值都是正的,半正定则意味着至少有一个特征向量是0,使得存在 x T A x = 0 \boldsymbol{x}^T\boldsymbol{Ax}=0 xTAx=0。又因为相似不改变矩阵的det,所以半正定矩阵 det=0,不可逆。
  • f ( X ) < 0 , x ≠ 0 , x ∈ R f(X)<0,x\neq 0, x\in\mathbb{R} f(X)<0,x=0,xR,则 f f f负定二次型 A A A负定矩阵
  • f ( X ) ≤ 0 , x ≠ 0 , x ∈ R f(X)\leq0,x\neq 0, x\in\mathbb{R} f(X)0,x=0,xR,则 f f f半负定二次型 A A A半负定矩阵
  • 以上皆不是,就叫做不定

从图像上看,这是(注意上面 x ≠ 0 x\neq 0 x=0 的条件)

  • 正定:
    在这里插入图片描述 f ( x ) = x 1 2 + x 2 2 = x T ( 1 0 0 1 ) x f(\boldsymbol{x})=x_{1}^{2}+x_{2}^{2}=\boldsymbol{x}^{\mathrm{T}}\left(\begin{array}{ll} 1 & 0 \\ 0 & 1 \end{array}\right) \boldsymbol{x} f(x)=x12+x22=xT(1001)x
  • 负定:
    请添加图片描述 f ( x ) = − x 1 2 − x 2 2 = x T ( − 1 0 0 − 1 ) x f(\boldsymbol{x})=-x_{1}^{2}-x_{2}^{2}=\boldsymbol{x}^{\mathrm{T}}\left(\begin{array}{ll} -1 & 0 \\ 0 & -1 \end{array}\right) \boldsymbol{x} f(x)=x12x22=xT(1001)x
  • 半正定:
    在这里插入图片描述
  • 不定:
    请添加图片描述 f ( x ) = 3 x 1 2 − 7 x 2 2 = x T ( 3 0 0 − 7 ) x f(\boldsymbol{x})=3x_{1}^{2}-7x_{2}^{2}=\boldsymbol{x}^{\mathrm{T}}\left(\begin{array}{ll} 3 & 0 \\ 0 & -7 \end{array}\right) \boldsymbol{x} f(x)=3x127x22=xT(3007)x

既然二次型用矩阵来表示了,那么我们能否通过矩阵来判断是否正定呢?-------- 特征值都大于0,则为正定矩阵。或者使用以下方式:

2.2.3.1 赫尔维茨定理

可以通过下面这个定理来判断正定与负定:

  • 已知二次型 f ( x ) = x T A x f(\boldsymbol{x})=\boldsymbol{x}^T\boldsymbol{Ax} f(x)=xTAx,其为正定的充分必要条件是, A \boldsymbol{A} A 的各阶顺序主子式都为正,即:
    a 11 > 0 , ∣ a 11 a 12 a 21 a 22 ∣ > 0 , ⋯   , ∣ a 11 ⋯ a 1 n ⋮ ⋮ a n 1 ⋯ a n n ∣ > 0 a_{11}>0, \left|\begin{array}{ll} a_{11} & a_{12} \\ a_{21} & a_{22} \end{array}\right|>0, \cdots,\left|\begin{array}{ccc} a_{11} & \cdots & a_{1 n} \\ \vdots & \vdots & \\ a_{n 1} & \cdots & a_{n n} \end{array}\right|>0 a11>0, a11a21a12a22 >0,, a11an1a1nann >0为负定的充分必要条件是,奇数阶顺序主子式为负,而偶数阶顺序主子式为正,即:
    ( − 1 ) r ∣ a 11 ⋯ a 1 r ⋮ ⋮ a r 1 ⋯ a r r ∣ > 0 ( r = 1 , 2 , ⋯   , n ) (-1)^{r}\left|\begin{array}{ccc} a_{11} & \cdots & a_{1 r} \\ \vdots & & \vdots \\ a_{r 1} & \cdots & a_{r r} \end{array}\right|>0 (r=1,2, \cdots, n) (1)r a11ar1a1rarr >0(r=1,2,,n)这个定理称为赫尔维茨定理(Hurwitz theorem)

这里提一下该定理在数学中的应用,如果学过《单变量微积分》会知道,如果知道二阶导数和 0 0 0 的关系,就可以知道极值点是极大,还是极小:
请添加图片描述
但到了《多变量微积分》的时候,二阶导数就是一个二次型矩阵,也就是下面说的海森矩阵这个时候就需要通过正定与负定来描述它和 0 0 0 的关系


设函数 z = f ( x , y ) z=f(x,y) z=f(x,y) 在点 ( x 0 , y 0 ) (x_0,y_0) (x0,y0) 的某邻域内连续且有一阶及二阶连续偏导数,则其二阶导数,即海森矩阵为:
H = ∂ 2 z ∂ ( x , y ) 2 = ( f x x f x y f y x f y y ) H=\frac{\partial^{2} z}{\partial(x, y)^{2}}=\left(\begin{array}{ll} f_{x x} & f_{x y} \\ f_{y x} & f_{y y} \end{array}\right) H=(x,y)22z=(fxxfyxfxyfyy)如果又有:
f x ( x 0 , y 0 ) = f y ( x 0 , y 0 ) = 0 f_x(x_0, y_0) = f_y(x_0, y_0)=0 fx(x0,y0)=fy(x0,y0)=0那么:

  • f ( x 0 , y 0 ) f(x_0, y_0) f(x0,y0) 为极大值,需要满足矩阵 H H H 为负定,即 f x x < 0 f_{xx}<0 fxx<0 ∣ H ∣ > 0 |H|>0 H>0 (根据赫尔维茨定理,正定的条件是 奇数阶顺序主子式为负,而偶数阶顺序主子式为正,仅在这个公式中,一阶顺序主子式为 f x x f_{xx} fxx,二阶顺序主子式为 ∣ H ∣ |H| H);
  • f ( x 0 , y 0 ) f(x_0, y_0) f(x0,y0) 为极小值,需要满足矩阵 H H H 为正定,即 f x x > 0 f_{xx}>0 fxx>0 ∣ H ∣ > 0 |H|>0 H>0 (根据赫尔维茨定理,正定的条件是各阶顺序主子式都为正,仅在这个公式中,一阶顺序主子式为 f x x f_{xx} fxx,二阶顺序主子式为 ∣ H ∣ |H| H);
  • f ( x 0 , y 0 ) f(x_0, y_0) f(x0,y0) 为非极值点,当 ∣ H ∣ < 0 |H|<0 H<0
  • f ( x 0 , y 0 ) f(x_0, y_0) f(x0,y0) 无法判断是否为极值点,当 ∣ H ∣ = 0 |H|=0 H=0

从而判断出极值点的情况,也就是下图中的红点是极大值点,还是极小值点:
请添加图片描述

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要判断一个二次型是否为正定二次型,可以使用以下步骤: 1. 将二次型化为矩阵形式:设二次型为 $Q(x_1,x_2,\cdots,x_n)=\sum_{i=1}^n\sum_{j=1}^na_{ij}x_ix_j$,则对应的矩阵为 $A=(a_{ij})$。 2. 判断矩阵 $A$ 是否为对称矩阵,若不是,则该二次型不是正定二次型。 3. 计算 $A$ 的所有顺序主子式,即 $D_k=\begin{vmatrix} a_{11} & a_{12} & \cdots & a_{1k} \\ a_{21} & a_{22} & \cdots & a_{2k} \\ \vdots & \vdots & \ddots & \vdots \\ a_{k1} & a_{k2} & \cdots & a_{kk}\end{vmatrix}$,其中 $k=1,2,\cdots,n$。 4. 如果所有顺序主子式 $D_k$ 的符号均为正,则该二次型正定二次型;如果 $D_k$ 的符号交替出现,则该二次型为不定二次型;如果存在某个 $D_k$ 的符号为负,则该二次型为负定二次型。 在MATLAB中,可以使用以下代码来实现上述步骤: ```matlab % 定义二次型的系数矩阵 A = [1 2 3; 2 5 6; 3 6 9]; % 判断矩阵是否为对称矩阵 if ~isequal(A, A') disp('该二次型不是正定二次型'); return; end % 计算顺序主子式 n = size(A, 1); D = zeros(1, n); for k = 1:n D(k) = det(A(1:k, 1:k)); end % 判断二次型类型 if all(D > 0) disp('该二次型正定二次型'); elseif all(mod(1:n, 2) == 1 & D < 0) || all(mod(1:n, 2) == 0 & D > 0) disp('该二次型为不定二次型'); elseif any(D < 0) disp('该二次型为负定二次型'); end ``` 其中,`isequal(A, A')`用于判断矩阵 $A$ 是否为对称矩阵,`det(A(1:k, 1:k))`用于计算顺序主子式 $D_k$,`all(D > 0)`表示所有顺序主子式的符号均为正,`all(mod(1:n, 2) == 1 & D < 0) || all(mod(1:n, 2) == 0 & D > 0)`表示顺序主子式的符号交替出现,`any(D < 0)`表示存在某个顺序主子式的符号为负。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值