【线性代数】理解正定矩阵和半正定矩阵

article/2025/9/20 3:38:54

目录

  • 1 前言
  • 2 定义
  • 3 从几何的角度理解
  • 4 参考文献

1 前言

  内容为自己的学习总结,其中多有借鉴他人的地方,最后一并给出链接。

2 定义

  在机器学习和谱图理论的学习中,总会用到正定矩阵半正定矩阵概念,了解它们的概念是十分必要的。
定义:正定矩阵(positive definite, PD)
  给定一个大小为 n × n n×n n×n的实对称矩阵 A A A,若对于任意长度为 n n n的非零向量 X X X,有 X T A X > 0 X^TAX>0 XTAX>0恒成立,则矩阵 A A A是一个正定矩阵。

定义:半正定矩阵(positive semi-definite, PSD)
  给定一个大小为 n × n n×n n×n的实对称矩阵 A A A,若对于任意长度为 n n n的非零向量 X X X,有 X T A X ≥ 0 X^TAX \ge 0 XTAX0恒成立,则矩阵 A A A是一个正定矩阵。
  看个一个例子(来源参考文献【3】):

(1)单位矩阵 I ∈ R 2 × 2 I \in \mathbb{R}^{2 \times 2} IR2×2是不是正定矩阵?
  设向量 x = [ x 1 x 2 ] ∈ R 2 \boldsymbol{x}=\left[\begin{array}{l} x_{1} \\ x_{2} \end{array}\right] \in \mathbb{R}^{2} x=[x1x2]R2为非 0 0 0向量,则

   x T I x = x T x = x 1 2 + x 2 2 \boldsymbol{x}^{T} I \boldsymbol{x}=\boldsymbol{x}^{T} \boldsymbol{x}=x_{1}^{2}+x_{2}^{2} xTIx=xTx=x12+x22

  由于 x ≠ 0 \boldsymbol{x} \neq \mathbf{0} x=0,故而 x T I x > 0 \boldsymbol{x}^{T} I \boldsymbol{x}>0 xTIx>0恒成立,所以单位矩阵是正定矩阵。

  从上面的例子看正定矩阵半正定矩阵和二次函数有些相似。以二次函数 y = a x 2 y=ax^2 y=ax2为例 ,该函数的曲线会经过坐标原点,当参数 a > 0 a>0 a>0时,曲线的“开口”向上,参数 a < 0 a<0 a<0时,曲线的“开口”向下。
实际上可以把二次函数和 y = a x 2 y=ax^2 y=ax2 y = x T A x y=x^TAx y=xTAx对比看。

  • y = a x 2 y=ax^2 y=ax2中,若 a > 0 a>0 a>0,则对于任意 x ≠ 0 x\neq0 x=0,则有 y > 0 y>0 y>0恒成立。
    对应于 y = x T A x y=x^TAx y=xTAx,若 A A A为正定矩阵,则对于任意 x ≠ 0 x\neq0 x=0,则有 y > 0 y>0 y>0恒成立。
  • y = a x 2 y=ax^2 y=ax2中,若 a ≥ 0 a\geq0 a0,则对于任意 x ≠ 0 x\neq0 x=0,则有 y ≥ 0 y\geq0 y0恒成立。
    对应于 y = x T A x y=x^TAx y=xTAx,若 A A A为半正定矩阵,则对于任意 x ≠ 0 x\neq0 x=0,则有 y ≥ 0 y\geq0 y0恒成立。

3 从几何的角度理解

  若给定任意一个正定矩阵 A ∈ R n × n A\in R^{n\times n} ARn×n和一个非 0 0 0向量 x ∈ R n x\in R^n xRn,则两者相乘得到的向量 y = A x ∈ R n y=Ax\in R^n y=AxRn与向量 x x x的夹角恒小于 9 0 。 90^。 90等价于 x T A x > 0 x^TAx>0 xTAx>0
  从矩阵的本质讲矩阵相乘实际上是向量 x x x安装矩阵 A A A指定的方式进行变换(矩阵的理解系列(一)(二)(三))。那么对于正定矩阵 x T A x = x T M > 0 x^TAx=x^TM>0 xTAx=xTM>0,记 M = A x M=Ax M=Ax。有没有想起 C o s Cos Cos公式
cos ⁡ ⟨ x , y ⟩ = x T y ∥ x ∥ ⋅ ∥ y ∥ \cos \langle\boldsymbol{x}, \boldsymbol{y}\rangle=\frac{\boldsymbol{x}^{T} \boldsymbol{y}}{\|\boldsymbol{x}\| \cdot\|\boldsymbol{y}\|} cosx,y=xyxTy
  到这里我们就可以理解正定矩阵的函数为:一个向量 x x x经过正定矩阵 A A A变换之后与原向量 x x x的夹角小于 9 0 。 90^。 90

再看个例子:给定向量 x = [ 2 1 ] x=\left[\begin{array}{l}2 \\1\end{array}\right] x=[21],对于单位矩阵 I = [ 1 0 0 1 ] I=\left[\begin{array}{ll}1 & 0 \\0 & 1\end{array}\right] I=[1001],则
y = I x = x = [ 2 1 ] \boldsymbol{y}=I \boldsymbol{x}=\boldsymbol{x}=\left[\begin{array}{l} 2 \\1\end{array}\right] y=Ix=x=[21]则向量 y 和 x y和x yx的夹角为0。

cos ⁡ ⟨ x , y ⟩ = x T y ∥ x ∥ ⋅ ∥ y ∥ = 2 × 2 + 1 × 1 2 2 + 1 2 ⋅ 2 2 + 1 2 = 1 \begin{array}{l} \cos \langle\boldsymbol{x}, \boldsymbol{y}\rangle=\frac{\boldsymbol{x}^{T} \boldsymbol{y}}{\|\boldsymbol{x}\| \cdot\|\boldsymbol{y}\|} \\[6mm] =\frac{2 \times 2+1 \times 1}{\sqrt{2^{2}+1^{2}} \cdot \sqrt{2^{2}+1^{2}}} \\[6mm] =1 \end{array} cosx,y=xyxTy=22+12 22+12 2×2+1×1=1

结合上面的例子和矩阵的运动我们可以理解正定矩阵:

  • 对于一个向量 x x x,我们希望 x x x在经过有一个矩阵 A A A的变化后得到的新的向量 M M M和它本身的夹角小于 90 90 90度。
  • 而小于 90 90 90度背后的含义是变换后的向量 M M M是沿着原向量 x x x的正方向进行缩放的(即 M M M投影回原向量时方向不变)

  那么如何理解要求正定矩阵的特征值大于0?
   首先一个矩阵 A A A的特征向量 x x x就是表示某个向量会沿着特征向量的方向进行变换(缩放),缩放比例由特征值 λ \lambda λ决定。(特征值和特征向量的理解)。举个例子【参考文献【1】】:
A 1 = [ [ 0.5 , 0 ] T , [ 0 , 2 ] T ] A_1=[[0.5, 0]^T,[0, 2]^T] A1=[[0.5,0]T,[0,2]T]很简单地可以计算得到A的特征值分别是 0.5 0.5 0.5 2 2 2,而它们对应的特征向量分别是 [ 1 , 0 ] T [1,0]^T [1,0]T [ 0 , 1 ] T [0,1]^T [0,1]T 。所以如果一个向量 b b b左乘一个矩阵 A A A,其本质就是将向量 b b b沿着 [ 1 , 0 ] T [1,0]^T [1,0]T [ 0 , 1 ] T [0,1]^T [0,1]T方向分别放大 0.5 0.5 0.5 2 2 2倍。我们假设 b = [ 2 , 2 ] T b=[2,2]^T b=[2,2]T,那么 A b Ab Ab最终得到的向量为 [ 1 , 4 ] T [1, 4]^T [1,4]T,结合下图看更加直观:
在这里插入图片描述
图片来着参考文献【1】
我们看上图,如果其中一个特征值小于 0 0 0,比如 λ 1 < 0 \lambda_1<0 λ1<0那么最终得到的向量 A b Ab Ab投射到方向的向量与 b b b反向。综上,要使得变换后的向量 M M M与原向量 x x x夹角小于 90 90 90度,即映射回原来的向量时保持方向不变,那么就需要特征值大于 0 0 0,所以这也是为什么正定矩阵的特征值都大于 0 0 0.
A x = λ x → x T A x = λ x T x = λ ∥ x ∥ 2 > 0 \begin{array}{c} A x=\lambda x \\ \rightarrow x^{T} A x=\lambda x^{T} x=\lambda\|x\|^{2}>0 \end{array} Ax=λxxTAx=λxTx=λx2>0
故λ必须大于0,即特征值必须大于0。
正定矩阵跟优化的关系用到了在补充。

4 参考文献

[1]如何理解正定矩阵和半正定矩阵
[2]MIT线性代数笔记3.3(正定矩阵,最小值)
[3]浅谈「正定矩阵」和「半正定矩阵」
[4]MIT线性代数笔记3.1(对称矩阵,正定矩阵


http://chatgpt.dhexx.cn/article/FsDq458d.shtml

相关文章

矩阵的 正定与半正定

先不慌&#xff0c;我们要搞清楚正定与半正定先熟悉几个基本的概念 一&#xff1a;矩阵的基 最简单的理解就是&#xff1a;线性变换就是线性映射&#xff0c;矩阵只不过是线性映射的系数而已。所以&#xff0c;选定基底实际是选定坐标轴&#xff08;不一定正交&#xff09;。我…

正定矩阵、负定矩阵、半正定矩阵、半负定矩阵

正定矩阵、负定矩阵、半正定矩阵、半负定矩阵 载▼ 1.正定矩阵 一个 nn 的实 对称矩阵 M 是 正定 的&#xff0c; 当且仅当 对于所有的非零实系数 向量 z &#xff0c;都有 zTMz > 0 。其中 z T 表示 z 的 转置 。 2.负定矩阵 与正定矩阵相对应的&#xff0c;一个nn的埃尔…

正定矩阵和半正定矩阵

定义 正定和半正定这两个词的英文分别是positive definite和positive semi-definite&#xff0c;其中&#xff0c;definite是一个形容词&#xff0c;表示“明确的、确定的”等意思。 【定义1】给定一个大小为的实对称矩阵 &#xff0c;若对于任意长度为 的非零向量 &#x…

半正定矩阵和正定矩阵的一些理解和补充

文章目录 一&#xff1a;半正定矩阵二&#xff1a;正定矩阵3.直观理解正定、半正定矩阵 一&#xff1a;半正定矩阵 设A是实对称矩阵。如果对任意的实非零列向量x有xTAx≥0&#xff0c;就称A为半正定矩阵。 等价条件&#xff1a; 1. A是半正定的…

半正定矩阵

1.【定义】给定一个大小为 n n nx n n n的实对称矩阵A,若对于任意长度为 n n n的向量 x x x,有 x T A x ≥ 0 x^{T}Ax \geq 0 xTAx≥0恒成立&#xff0c;则矩阵A是一个半正定矩阵。 半正定矩阵包含正定矩阵&#xff08;正定矩阵是 x T A x > 0 x^{T}Ax > 0 xTAx>0&…

正定矩阵(Positive Definite Matrices)、半正定矩阵(Positive Semidefinite Matrices)

正定矩阵、半正定矩阵 1.正定矩阵、半正定矩阵1.1 正定矩阵1.1.1 判断正定矩阵 1.2 半正定矩阵1.2.1 判定半正定矩阵 1.3 椭圆 a x 2 2 b x y c y 2 1 ax^22bxycy^21 ax22bxycy211.3.1 与对称矩阵 S S S有关的椭圆1.3.2 与特征值矩阵 Λ \Lambda Λ有关的椭圆 1.4 重要应用…

正定矩阵与半正定矩阵定义与判别

1.正定矩阵和半正定矩阵 若所有特征值均大于零&#xff0c;则称为正定。 定义:A是n阶方阵&#xff0c;如果对任何非零向量x&#xff0c;都有>0,其中表示x的转置&#xff0c;就称A为正定矩阵。 性质: 正定矩阵的行列式恒为正&#xff1b;实对称矩阵AA正定当且仅当AA与单位…

C++求解汉明距离

目录 汉明距离介绍汉明距离应用解法1&#xff1a;Brian Kernighan算法解法2解法3 汉明距离介绍 leetcode 461 汉明距离&#xff0c;难度&#xff1a;简单 两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y&#xff0c;计算并返…

计算快速汉明距离

汉明距离,作为一种衡量特征距离的计算方法,在很多场合都有应用,其主要思想是找到两个特征之间的差异大小,也可以说是相似性。 我是在图像处理中用到的,项目中需要计算图像梯度方向,我选择了四个方向,这样就可以用二位二进制表示,分别为 0,1,2,3,也就是 00,01,10,11,…

汉明距离、汉明损失详解及代码(python)

文章目录 引言汉明距离(Hamming distance)代码示例 汉明损失(Hamming loss)代码示例 参考链接 引言 汉明距离是机器学习中的常用度量。本文整理了具体的图示代码&#xff0c;帮你形象化理解汉明距离(Hamming distance)、汉明损失(Hamming loss)。 汉明距离(Hamming distance)…

汉明距离的计算

汉明距离&#xff0c;作为一种衡量特征距离的计算方法&#xff0c;在很多场合都有应用&#xff0c;其主要思想是找到两个特征之间的差异大小&#xff0c;也可以说是相似性。 我是在图像处理中用到的&#xff0c;项目中需要计算图像梯度方向&#xff0c;我选择了四个方向&#…

汉明距离问题详解

https://leetcode.cn/problems/hamming-distance/solution/yi-ming-ju-chi-by-leetcode-solution-u1w7/ 前言 汉明距离广泛应用于多个领域。在编码理论中用于错误检测&#xff0c;在信息论中量化字符串之间的差异。 两个整数之间的汉明距离是对应位置上数字不同的位数。 根据…

介绍汉明距离及计算示例

汉明距离(Hamming distance)是计算两个向量之间不同对应元素数量之和。本文介绍R、Python语言的计算过程。 汉明距离概述 汉明距离是以美国数学家理查德汉明的名字命名的&#xff0c;他在1950年关于汉明码的论文中提出了该举例度量指标。它被广泛用于多个学科&#xff0c;如信…

汉明距离讲解

文章目录 汉明距离的计算最小汉明距离汉明距离纠错例题 汉明距离的计算 码字A为 10001001 码字B为 10110001 那么不同的字符数为3&#xff0c;汉明距离就是3 不难看出&#xff0c;汉明距离就是两个码不同的数的个数。 最小汉明距离 在一个码组集合中&#xff0c;任意两个码…

距离度量 —— 汉明距离(Hamming Distance)

Python学习系列文章&#xff1a;&#x1f449; 目录 &#x1f448; 文章目录 一、概述二、计算方式三、汉明重量 一、概述 汉明距离&#xff08;Hamming Distance&#xff09;&#xff0c;就是将一个字符串变成另一个字符串所需要的替换次数。 二、计算方式 举个例子&#…

【猿知识】汉明距离(Hamming Distance)

文章目录 汉明距离汉明重量汉明距离计算汉明距离应用例子参考 汉明距离是以理查德卫斯里汉明的名字命名的&#xff0c;汉明在误差检测与校正码的基础性论文中首次引入这个概念。在通信中累计定长二进制字中发生翻转的错误数据位&#xff0c;所以它也被称为信号距离。 汉明距离…

js设置居中

我们在编写html页面的时候&#xff0c;不可避免的会遇到元素居中的问题&#xff0c;水平居中还好说 我们可以通过设置margin: auto;text-align: center;来实现水平居中。垂直居中的话&#xff0c;单个标签我们可以通过设置line-height来实现垂直居中&#xff0c;但是多个标签的…

CSS常见图片居中,文字居中,版心居中集合

1.margin:0 auto&#xff1b;&#xff08;水平居中&#xff09; 适用于&#xff08;块级元素&#xff09; wrapper&#xff08;wrapper只负责版心的效果&#xff09;定义一个固定的宽度&#xff1b;margin&#xff08;外边距&#xff09;左右的值设置为auto。 让带有wrapper…

垂直居中的方法

总结垂直居中的方法 <div class"layout-wrapper"><div class"box1"><h4>垂直居中方法</h4></div></div>.layout-wrapper{width:300px;height:300px;border: 1px solid red; } .box1{height:150px;width:150px;border…

win10任务栏怎样居中win10任务栏居中设定教程

win11系统内置任务栏居中的设置项&#xff0c;但是win10系统没有&#xff0c;倘若win10顾客也想让自己的任务栏居中的话&#xff0c;应当怎样设置呢&#xff1f;你先撤销任务栏锁住&#xff0c;随后新建菜单栏。之后选定一个空白文件夹&#xff0c;之后任务栏就会发生两条竖杠&…