二元二次型
矩阵A的特征值决定曲面形状
二次型是形如Q(x) = xTAx的函数,其中x是向量x = [x₁, x₂, ..., xₙ]T, An×n是对称矩阵。对于一元函数,f(x) = x²就是二次型; 对于二元函数,f(x₁, x₂) = x₁x₂也是二次型。
通过特征值和特征向量分析,我们可以揭示矩阵的定性和行为。 特别是正定性在二次型分析、优化方法、机器学习中具有重要意义。 通过研究二次型,我们可以深入理解多元函数的形式和特点,为解决实际问题提供数学基础。
💡 提示:说到二次型,就必须聊聊正定性。本章用图解法介绍过A2×2正定性。 下面我们逐一回顾。
🎯 二元二次型交互器
二次型 f(x) = xTAx 的几何表示。矩阵A的特征值决定曲面的形状: 碗形、鞍形或退化平面。
矩阵A
[0.0, 1.0]
函数表达式
特征值与定性
✅ 正定/负定
特征值全为正(碗形向上)或全为负(碗形向下)。 具有唯一的全局极小/极大点。
🔀 不定型
特征值有正有负,形成马鞍面。 原点既不是极大也不是极小,而是鞍点。
📐 半定型
至少一个特征值为零,曲面退化。 沿某方向无曲率,形成槽型或脊型。
💡 探索建议: 尝试不同预设类型,观察曲面形状变化。正定型像碗,负定型像倒碗,不定型像马鞍。 梯度向量场指向函数值增长最快的方向,在正/负定型中指向/背离原点, 在不定型中形成复杂的流动模式。自定义模式下,调整矩阵元素观察特征值和形状的关系。
✅ 正定 (Positive Definite)
矩阵A2×2是正定的,意味着f(x) = xT@A2×2@x 是一个开口朝上的抛物面,形状像碗。 除了(0, 0),f(x) = xT@A2×2@x均大于0。(0, 0)为最小值,图中箭头都背离(0, 0)。
📐 半正定 (Positive Semi-Definite)
矩阵A2×2是半正定的,意味着f(x) = xT@A2×2@x 是个开口朝上的山谷面。 除了(0, 0),f(x) = xT@A2×2@x均大于等于0。 山谷的谷底都是极小值,图中箭头都背离谷底所在直线。
❌ 负定 (Negative Definite)
矩阵A2×2是负定的,意味着f(x) = xT@A2×2@x 是个开口朝下的抛物面。 除了(0, 0),f(x) = xT@A2×2@x均小于0。(0, 0)为最大值, 图中箭头都指向(0, 0)。
📐 半负定 (Negative Semi-Definite)
矩阵A2×2是半负定的,意味着f(x) = xT@A2×2@x 是个开口朝下的山脊面。除了(0, 0),f(x) = xT@A2×2@x均小于等于0。 山脊的顶端都是极大值,图中箭头指向山脊顶端所在直线。
🔀 不定 (Indefinite)
矩阵A2×2不定,意味着f(x) = xT@A2×2@x 是个马鞍面。(0, 0)为鞍点。f(x) = xT@A2×2@x将不定。 图中有些箭头背离(0, 0),有些指向(0, 0)。
🧮 梯度的几何意义
对于二元函数,在函数曲面上任意一点的梯度(gradient)告诉我们在给定点上函数 增长最快的方向,也就是"上山"最陡峭的方向。如果我们沿着梯度的方向走,函数值增加最快; 反过来,梯度的反方向就是"下山"最快的方向。当然,我们每走一步,随着位置变化, 梯度值一般会随之改变。
三元二次型
切豆腐:外立面与切片技术
三元二次型f(x₁, x₂, x₃) = xTAx需要四维空间(三个输入+一个输出)。 为了在三维空间中可视化,我们采用"切豆腐"策略: 通过外立面和切片展开技术将高维信息降维呈现。
📝 请大家思考:如何把可视化代码写成一个自定义函数?
🎲 三元二次型切片可视化器
三元二次型f(x) = x₁²a₁₁ + x₂²a₂₂ + x₃²a₃₃需要四维空间。 通过外立面和切片技术降维可视化。
函数表达式
🏠 外立面
同时显示三个坐标平面的等高线, 形成立方体的三个可见面。
🔪 切片技术
固定一个维度,观察二元二次型在截面上的形状。 移动切片位置看形状如何变化。
📐 对角矩阵
本可视化器使用对角矩阵, 三个特征值独立控制三个方向的曲率。
💡 探索建议: 外立面模式展示函数在三个边界面的值分布。 切片模式下,每个切片都是一个二元二次型曲面。 尝试示例矩阵(A₁₁=1, A₂₂=0, A₃₃=-1),观察双曲抛物面(马鞍面)的特征。 调整三个对角元素,看它们如何独立控制三个主方向的曲率。
🏠 外立面可视化
同时在三个坐标平面上绘制三维等高线(填充+轮廓线):
- • 顶面:x₃ = max,展示f(x₁, x₂, x₃_max)的等高线
- • 前面:x₂ = min,展示f(x₁, x₂_min, x₃)的等高线
- • 左面:x₁ = min,展示f(x₁_min, x₂, x₃)的等高线
通过颜色条(colorbar)显示函数值范围。绘制框线时,zorder控制呈现artist的先后顺序, zorder越小置于越底层,赋值很大确保置于最顶层。
🔪 切片展开技术
沿三个坐标轴方向分别切片,每个方向展示多个平行切片:
📐 示例:双曲抛物面
考虑对角矩阵A = diag(1, 0, -1),矩阵秩为2,函数为f(x₁,x₂,x₃) = x₁² - x₃²。
这是一个经典的双曲抛物面(马鞍面)。沿x₁方向开口向上, 沿x₃方向开口向下,x₂方向无变化。三个方向的切片展示了这个曲面的完整特征: 外立面显示在边界的函数值分布,而内部切片揭示了函数如何在三维空间中变化。
💡 核心洞察
二次型将抽象的矩阵运算具象化为可见的几何曲面。正定矩阵对应碗形(凸函数), 负定对应倒碗形(凹函数),不定对应马鞍面,半定对应退化曲面。 特征值的符号决定曲率方向,特征值的大小决定曲率陡峭程度。 理解二次型的几何意义,是理解优化理论、机器学习中的损失函数、 数据分析中的协方差矩阵的关键。梯度向量场指示函数值增长最快的方向, 在优化算法中引导我们寻找极值点。三元及更高维二次型通过切片和投影技术降维可视化, 让我们能够"看到"高维空间中的数学结构。