量化交易中文教材

第 07d 章 Loewner 序、Schur 补与行列式不等式

对应原书:Horn & Johnson《Matrix Analysis》第 2 版,第 7 章的 7.7 节 The Loewner partial order and block matrices 与 7.8 节 Inequalities involving positive definite matrices(书 p.493–515,PDF p.513–535)。

比较两个数,我们说 \(a\ge b\);比较两个协方差矩阵,自然的说法是"\(\Sigma_1\) 的风险不小于 \(\Sigma_2\)",即对每一个组合 \(w\) 都有 \(w^T\Sigma_1w\ge w^T\Sigma_2w\)。这就是 Loewner 偏序 \(\Sigma_1\succeq\Sigma_2\)。统计里大量结论是用它表述的:Gauss–Markov 定理(GLS 的协方差 \(\preceq\) OLS 的协方差)、Cramér–Rao 下界、"条件化降低方差"。这一章先建立 Loewner 序的运算规则(哪些运算保序、哪些反序、哪些不保序),再用 Schur 补刻画分块矩阵的半正定性——这里会出现条件协方差、典型相关系数和线性矩阵不等式(LMI)。最后是以 Hadamard 不等式为首的一族行列式不等式,它们在高斯模型里都有信息论含义:总相关、互信息、条件互信息非负。

学习目标

读完本章,你应当能够:

  1. 掌握 Loewner 偏序的定义与基本运算规则:*合同保序、求逆反序、平方根单调,而平方不单调。
  2. 用 Schur 补与"收缩矩阵"刻画分块矩阵的正定与半正定性,理解标准化互协方差的奇异值就是典型相关系数。
  3. 理解 \(H^{-1}[\alpha]\succeq(H[\alpha])^{-1}\) 等不等式的统计含义(条件方差、VIF),以及 Schur 补关于联合协方差单调、凹。
  4. 掌握 Hadamard、Fischer、Koteljanskii、Szász 不等式及其等价性,Oppenheim–Schur 不等式、Minkowski 行列式不等式、Ostrowski–Taussky 与 Fan 不等式。
  5. 在量化中应用:条件协方差与因子模型残差、Gauss–Markov 的矩阵形式、典型相关分析、用 \(\log\det\) 度量分散化与信息(总相关、互信息)。

读前导读

这一章在解决什么问题

一句话:这一章教你怎样"比较两个协方差矩阵的大小",以及"对冲/条件化之后还剩多少风险"。

你在 CFA 里比较风险,用的是一个数:组合方差 \(w^T\Sigma w\)。但风险模型本身是一个矩阵。说"模型 1 比模型 2 更保守",严格的意思是:无论你持有什么组合,模型 1 给出的方差都不小于模型 2。这就是 Loewner 序 \(\Sigma_1\succeq\Sigma_2\)。它让一句矩阵不等式同时比较无穷多个组合。你在 CFA 二级学过 Gauss–Markov 定理(OLS 是 BLUE),它的完整形式就是一句 Loewner 不等式:OLS 系数的协方差矩阵 \(\succeq\) GLS 系数的协方差矩阵。

第二部分的 Schur 补,你其实早就见过它的标量版。CFA 的期货最小方差套期保值:对冲比率 \(h^*=\rho\,\sigma_S/\sigma_F\),对冲后剩余方差是 \(\sigma_S^2(1-\rho^2)\)。这个"剩余方差"就是 \(1\times1\) 的 Schur 补。本章把它推广到"用一篮子因子对冲一篮子资产":剩余协方差矩阵 \(C-B^*A^{-1}B\)。因子模型里的特质风险、回归残差协方差、Kalman 滤波的更新,全是它。

第三部分是行列式不等式。行列式 \(\det\Sigma\) 叫"广义方差",可以理解为风险椭球的体积。Hadamard 不等式说:资产之间有相关性时,体积只会比"假设互不相关"时小。取对数后,这些不等式变成"冗余度/互信息非负",可以用来度量组合的分散化程度。

需要先想起来的数学

1. 半正定与二次型。 对称矩阵 \(M\) 半正定(记 \(M\succeq0\))指对所有向量 \(w\) 都有 \(w^TMw\ge0\);等价于所有特征值 \(\ge0\)。协方差矩阵总是半正定,因为 \(w^T\Sigma w\) 是组合方差。例:\(\begin{bmatrix}1&1\\1&1\end{bmatrix}\) 半正定(特征值 2、0),但不正定,因为 \(w=(1,-1)\) 时二次型为 0。见 第 00 册第 06 章 线性代数速成。

2. 行列式 = 特征值之积,迹 = 特征值之和。 \(\det\begin{bmatrix}2&1\\1&2\end{bmatrix}=3=3\times1\),迹 \(4=3+1\)。所以对正定矩阵,\(\det\) 小意味着至少有一个特征值很小,即某个方向几乎没有独立波动。见 第 00 册第 06 章。

3. 分块矩阵与回归。 把协方差矩阵按"资产块/因子块"切成 \(\begin{bmatrix}A&B\\B^T&C\end{bmatrix}\),\(A^{-1}B\) 就是多元回归系数(beta 矩阵)。见 第 00 册第 06 章。

4. 对数与 AM–GM。 \(\log\) 把乘积变成和:\(\log\det\Sigma=\sum\log\lambda_i\)。AM–GM(算术平均 \(\ge\) 几何平均):\(\frac{a+b}{2}\ge\sqrt{ab}\),本章 Hadamard 不等式的证明只用到它。见 第 00 册第 04 章 级数与收敛 中指数对数部分。

5. 读"⇔"与"等价"。 定理里"以下等价 (a)(b)(c)"意思是任意一条成立就全部成立,是同一件事的不同说法。见 第 00 册第 08 章 读懂数学证明与符号。

本章符号速查。 \(A^*\) 是共轭转置,实矩阵时就是转置 \(A^T\),你可以把本章所有 \(*\) 都读成 \(T\)。\(\rho(M)\) 是谱半径(特征值绝对值的最大值),不是相关系数。\(\sigma_1(X)\) 是最大奇异值,表示 \(X\) 最多把向量拉长几倍。\(A[\alpha]\) 是取出指标集 \(\alpha\) 对应行和列的子矩阵(例如只取前三只资产的协方差块)。\(\circ\) 是 Hadamard 积,即逐元素相乘。\(A^\dagger\) 是伪逆(矩阵不可逆时的"广义逆")。\(\operatorname{range}A\) 是 \(A\) 的列空间。nat 是以 \(e\) 为底的信息单位。

怎么读这一章

核心必读是 7.10.1–7.10.2(Loewner 序的定义和保序/反序规则)、7.11.1(Schur 补与条件协方差)、7.11.3 的 Theorem 7.7.15(VIF 的矩阵版)、7.12.1–7.12.2(Hadamard 与 Fischer)。这几处对应量化工作中真实会用的东西。

第一次可以只看结论跳过证明的:Loewner 矩阵单调函数注记、7.11.2 的半正定版本(7.7.9)与 7.7.12–7.7.14、7.11.5 的习题罗列、7.12.3 Szász、7.12.5 的 Ostrowski–Taussky 与 Fan(针对复矩阵,量化中很少用)。

建议顺序:先读 7.10 前两小节,再直接跳到实战 1 跑一遍数字,有了"Schur 补就是对冲后剩余风险"的感觉后回来读 7.11,最后读 7.12 和实战 2。


7.10 Loewner 偏序

7.10.1 定义

定义 7.7.1。 对 Hermitian 矩阵 \(A,B\),记 \(A\succeq B\) 若 \(A-B\) 半正定,\(A\succ B\) 若 \(A-B\) 正定。\(A\succeq0\) 即半正定,\(A\succ0\) 即正定。

它是偏序:自反、传递、反对称(\(A\succeq B\) 且 \(B\succeq A\) ⇒ \(A=B\)),但 \(n>1\) 时不是全序——\(\operatorname{diag}(4,2)\) 与 \(\operatorname{diag}(1,3)\) 谁也不比谁大。量化读法:两个风险模型不一定可比;"模型 1 在某些方向上风险更大、在另一些方向上更小"是常态。还要注意 \(A\succeq B\) 且 \(A\ne B\) 不蕴含 \(A\succ B\)。

一般地,实线性空间上的偏序都可以由一个闭凸锥定义(差落在锥中即"大于"):Loewner 序用的是半正定锥;第 08a 章的逐元素序 \(A\ge B\) 用的是非负矩阵锥。两者在本册中用不同记号(\(\succeq\) 与 \(\ge\)),不要混淆。

白话解释:用原文的例子算一下就明白为什么"谁也不比谁大"。把 \(\operatorname{diag}(4,2)\) 和 \(\operatorname{diag}(1,3)\) 看成两个风险模型,两只资产互不相关。只持有资产 1(\(w=(1,0)\)):模型 1 说方差 4,模型 2 说 1,模型 1 更保守。只持有资产 2(\(w=(0,1)\)):模型 1 说 2,模型 2 说 3,反过来了。所以 \(A-B=\operatorname{diag}(3,-1)\) 既不半正定也不半负定。 数字比大小只有一个方向;矩阵比大小要求所有方向同时成立,所以很多时候两者不可比。"偏序"的"偏"就是这个意思。

基本事实:

  • \(\lambda_{\max}(A)I\succeq A\succeq\lambda_{\min}(A)I\);\(I\succeq A\iff\lambda_{\max}(A)\le1\)。
  • 可加:\(A_i\succeq B_i\) ⇒ \(\sum A_i\succeq\sum B_i\)。
  • \(A\succeq B\)、\(C\succeq0\) ⇒ \(A\circ C\succeq B\circ C\)(Schur 乘积定理,第 07c 章)。
  • 收缩(contraction):\(\sigma_1(X)\le1\) 的矩阵称收缩,\(<1\) 称严格收缩。\(I\succeq X^*X\) ⇔ \(X\) 是收缩。

7.10.2 保序、反序与不保序

Theorem 7.7.2(*合同保序)。 \(A\succeq B\) ⇒ \(S^*AS\succeq S^*BS\);\(S\) 列满秩时严格序也保持;\(S\) 非奇异方阵时是"当且仅当"。

量化读法:若风险模型 1 对每个资产组合都给出不小于模型 2 的方差,那么对任何"组合的组合"(例如因子暴露、行业净值)也是如此。

Theorem 7.7.3。 \(A\succ0\),\(B\) Hermitian。

  • (a) \(B\succeq0\) 时:\(A\succeq B\) ⇔ \(\rho(A^{-1}B)\le1\) ⇔ 存在半正定收缩 \(X\) 使 \(B=A^{1/2}XA^{1/2}\)。
  • (b) \(A^2\succeq B^2\) ⇔ \(\sigma_1(A^{-1}B)\le1\) ⇔ 存在收缩 \(X\) 使 \(B=AX=X^*A\)。

(a) 给了一个实用的判别法:\(A\succeq B\) 当且仅当广义特征值问题 \(Bx=\lambda Ax\) 的特征值都 \(\le1\)(第 07c 章)。最小的 \(c\) 使 \(cA\succeq B\) 恰为 \(\rho(A^{-1}B)\)(7.7.P21)。

推导拆解:为什么"\(A\succeq B\)"能化成"\(A^{-1}B\) 的特征值 \(\le1\)"? 第一步,\(A\succeq B\) 的意思是对所有 \(w\),\(w^TBw\le w^TAw\)。\(A\succ0\) 时右边为正,可以写成比值:\(\max_w\frac{w^TBw}{w^TAw}\le1\)。 第二步,换变量 \(w=A^{-1/2}u\)(这一步用了 \(A\) 正定才有平方根),比值变成 \(\frac{u^TA^{-1/2}BA^{-1/2}u}{u^Tu}\)。这种"二次型除以长度平方"的最大值就是矩阵 \(A^{-1/2}BA^{-1/2}\) 的最大特征值(Rayleigh 商,第 04a 章)。 第三步,\(A^{-1/2}BA^{-1/2}\) 与 \(A^{-1}B\) 相似(左乘 \(A^{-1/2}\)、右乘 \(A^{1/2}\) 互相转换),特征值相同。所以条件就是 \(\rho(A^{-1}B)\le1\)。 金融直觉:比值 \(\frac{w^TBw}{w^TAw}\) 是"同一个组合在模型 B 下的方差 ÷ 在模型 A 下的方差"。\(\rho(A^{-1}B)\) 是在所有组合里这个比值的最坏情况。等于 1.3 就意味着:存在某个组合,模型 B 认为它的风险比模型 A 高 30%。这是比较两个风险模型时很实用的一个数字。

Corollary 7.7.4。 \(A,B\) Hermitian,特征值递增排列。

  • (a) 求逆反序:\(A\succ0,B\succ0\) 时,\(A\succeq B\iff B^{-1}\succeq A^{-1}\);
  • (b) 平方根单调:\(A\succeq B\succeq0\) ⇒ \(A^{1/2}\succeq B^{1/2}\)(原书正文要求 \(A\succ0\),7.7.P3 去掉了这个条件);
  • (c) 特征值单调:\(A\succeq B\) ⇒ \(\lambda_i(A)\ge\lambda_i(B)\) 对每个 \(i\)(Weyl 单调性);
  • (d) \(A\succeq B\) ⇒ \(\operatorname{tr}A\ge\operatorname{tr}B\),等号 ⇔ \(A=B\);
  • (e) \(A\succeq B\succeq0\) ⇒ \(\det A\ge\det B\)。

(a) 的证明:\(\rho(A^{-1}B)=\rho(BA^{-1})=\rho\big((B^{-1})^{-1}A^{-1}\big)\),用 7.7.3(a) 两次。(b) 的证明:令 \(X=A^{-1/2}B^{1/2}\),则 \(1\ge\rho(A^{-1}B)=\rho(XX^*)=\sigma_1(X)^2\ge\rho(X)^2=\rho(A^{-1/2}B^{1/2})^2\),再用 7.7.3(a)。

平方不保序。 原书例:\(A=\begin{bmatrix}3&1\\1&2\end{bmatrix}\),\(B=\begin{bmatrix}2&0\\0&1\end{bmatrix}\)。\(A-B=\begin{bmatrix}1&1\\1&1\end{bmatrix}\succeq0\)(奇异),但 \(A^2-B^2=\begin{bmatrix}6&5\\5&4\end{bmatrix}\) 的行列式为 \(-1\),不半正定。(精读笔记把此处写成 \(A\succ B\),严格说只有 \(A\succeq B\),因为 \(A-B\) 奇异;结论不受影响。)(c) 也不可逆推:特征值逐个占优不推出 Loewner 序(\(\operatorname{diag}(4,2)\) 与 \(\operatorname{diag}(1,3)\),7.7.P1),但能推出存在酉 \(W\) 使 \(W^*AW\succeq B\)。

推导拆解:手算核对一下这个反例。\(A^2=\begin{bmatrix}3&1\\1&2\end{bmatrix}\begin{bmatrix}3&1\\1&2\end{bmatrix}=\begin{bmatrix}10&5\\5&5\end{bmatrix}\),\(B^2=\operatorname{diag}(4,1)\),差为 \(\begin{bmatrix}6&5\\5&4\end{bmatrix}\),行列式 \(24-25=-1<0\)。\(2\times2\) 对称矩阵行列式为负说明两个特征值一正一负,所以不半正定。 为什么标量直觉失效?标量时 \(a^2-b^2=(a+b)(a-b)\),两个非负数相乘仍非负。矩阵时只能写 \(A^2-B^2=A(A-B)+(A-B)B\),因为 \(AB\ne BA\)(不可交换),两项都不对称,各自没有"非负"可言。这里 \(A-B\) 只在 \((1,1)\) 方向上非零,乘上 \(A\)、\(B\) 后被拧到了别的方向,于是在某个方向上 \(A^2\) 反而输给了 \(B^2\)。平方根和求逆没有这个问题,这正是 Loewner 定理要解释的现象。

量化读法:

  • 求逆反序:信息矩阵越大,估计量的协方差(信息矩阵之逆)越小。Cramér–Rao、Fisher 信息的比较都靠它。精度矩阵 \(\Sigma^{-1}\) 与协方差反序:风险更大的模型给出"更小"的精度矩阵。
  • 平方根单调:波动率(标准差)矩阵 \(\Sigma^{1/2}\) 保持风险比较。
  • 平方不单调:协方差的"平方"\(\Sigma^2\) 出现在某些二阶量中(如组合方差的方差),风险更大不意味着这些量更大。

Loewner 矩阵单调函数(注记)。 若 \(A\succeq B\Rightarrow f(A)\succeq f(B)\),称 \(f\) 是矩阵单调(operator monotone) 函数。Loewner (1934) 证明:\(f\) 矩阵单调 ⇔ 差商核 \((f(s)-f(t))/(s-t)\) 半正定。于是 \(-t^{-1}\)(差商 \(1/(st)\))、\(\sqrt t\)(差商 \(1/(\sqrt s+\sqrt t)\),对应第 07a 章的 Cauchy 型正定矩阵)单调,而 \(t^2\)(差商 \(s+t\),矩阵 \([\xi_i+\xi_j]\) 不定)不单调——这把上面三条统一了起来。一般的 \(t^p\) 在 \(0\le p\le1\) 时矩阵单调,\(\log t\) 也是。

7.10.3 算子凸性(7.7.P13–P14)

\[\alpha A^2+(1-\alpha)B^2\succeq(\alpha A+(1-\alpha)B)^2,\qquad\alpha A^{-1}+(1-\alpha)B^{-1}\succeq(\alpha A+(1-\alpha)B)^{-1},\]

即 \(t^2\)(在 Hermitian 矩阵上)与 \(t^{-1}\)(在正定矩阵上)是算子凸的,后者等号 ⇔ \(A=B\)。第二式比第 07c 章的"\(\operatorname{tr}A^{-1}\) 凸"强得多(取迹即得)。量化读法:把两个协方差估计平均后求逆,得到的精度矩阵不大于两个精度矩阵的平均——"先平均风险、再求逆"比"先求逆、再平均"更保守。


7.11 Schur 补与分块矩阵

承接说明:Schur 补的定义、分块求逆与 \(\det H=\det A\det(H/A)\) 已在第 00 章 0.6 节讲过,惯性的 Haynsworth 公式见第 04b 章 4b.2 节。本节在半正定情形下继续:Schur 补的正定性判据、Loewner 单调性和广义 Schur 补。

7.11.1 Schur 补

对 \(H=\begin{bmatrix}A&B\\B^*&C\end{bmatrix}\),\(A\) 非奇异,基本恒等式(7.7.5)

\[\begin{bmatrix}I&0\\-B^*A^{-1}&I\end{bmatrix}\begin{bmatrix}A&B\\B^*&C\end{bmatrix}\begin{bmatrix}I&-A^{-1}B\\0&I\end{bmatrix}=\begin{bmatrix}A&0\\0&C-B^*A^{-1}B\end{bmatrix}\]

是一个 *合同,所以

\[H\succ0\iff A\succ0\text{ 且 }C-B^*A^{-1}B\succ0;\qquad H\succeq0\iff A\succ0\text{ 且 }C-B^*A^{-1}B\succeq0\ \ (A\text{ 可逆时}).\]

\(H/A=C-B^*A^{-1}B\) 叫 \(A\) 在 \(H\) 中的 Schur 补(Schur complement)。

推导拆解:恒等式(7.7.5)其实就是高斯消元。左乘 \(\begin{bmatrix}I&0\\-B^*A^{-1}&I\end{bmatrix}\) 等于"第二块行减去第一块行的 \(B^*A^{-1}\) 倍",把左下角的 \(B^*\) 消成 0;右乘它的转置对列做同样的事,把右上角的 \(B\) 消成 0。右下角剩下 \(C-B^*A^{-1}B\)。 为什么能由此读出正定性?左右两边的变换矩阵互为共轭转置,形如 \(S^*HS\),这叫 *合同。\(S\) 可逆,所以 \(H\) 正定当且仅当 \(S^*HS\) 正定(对任意 \(w\),\(w^*S^*HSw=(Sw)^*H(Sw)\),而 \(Sw\) 能取遍所有非零向量)。块对角矩阵正定当且仅当每一块都正定。 最小的例子:两个变量,\(H=\begin{bmatrix}\sigma_x^2&\sigma_{xy}\\\sigma_{xy}&\sigma_y^2\end{bmatrix}\)。Schur 补是 \(\sigma_y^2-\sigma_{xy}^2/\sigma_x^2=\sigma_y^2(1-\rho^2)\)。这正是 \(y\) 对 \(x\) 做简单回归后的残差方差,\(\rho^2\) 就是 CFA 里的 \(R^2\)。所以"\(H\succ0\) ⇔ \(\sigma_x^2>0\) 且 \(\sigma_y^2(1-\rho^2)>0\)",即相关系数绝对值小于 1。

统计含义——条件协方差。 若 \((X,Y)\) 联合正态,协方差为 \(H\)(\(X\) 对应 \(A\)),则

\[\operatorname{Cov}(Y\mid X)=C-B^*A^{-1}B,\]

它也是 \(Y\) 对 \(X\) 做总体线性回归后的残差协方差。所以:因子模型中"给定因子收益后资产的特质协方差"是 Schur 补;最优对冲后的剩余风险是 Schur 补;Kalman 滤波更新后的协方差是 Schur 补。\(H\succeq0\) 时 \(C\succeq C-B^*A^{-1}B\succeq0\):条件化(对冲)不增加风险。

金融直觉:把它和 CFA 的期货套期保值对上号。现货是 \(Y\)(方差 \(C\)),期货是 \(X\)(方差 \(A\)),协方差 \(B\)。最小方差对冲比率 \(h^*=A^{-1}B\)(标量时就是 \(\rho\sigma_S/\sigma_F\)),对冲后组合 \(Y-h^{*T}X\) 的方差是 \(C-B^*A^{-1}B\)。矩阵版本只是把"一个现货、一个期货"换成"一篮子资产、一篮子对冲工具",\(A^{-1}B\) 成了 beta 矩阵。 注意 \(B^*A^{-1}B\succeq0\) 被减掉的部分就是"对冲掉的风险",它的秩不超过对冲工具的个数。实战 1 读法第 1 条说的"对冲 2 个因子只能消除 2 个方向上的风险"就是这个意思。

线性矩阵不等式(LMI)。 Schur 补把非线性约束变成线性的半定约束。例如 \(\{(x,t):x^T\Sigma^{-1}x\le t\}\) 等价于 \(\begin{bmatrix}\Sigma&x\\x^T&t\end{bmatrix}\succeq0\)(7.7.P28:加边矩阵 \(\begin{bmatrix}A&x\\x^*&a\end{bmatrix}\succ0\iff a>x^*A^{-1}x\))。稳健组合优化、协方差不确定集上的最坏情况风险,都是这样写成 SDP 的。

7.11.2 收缩刻画

Lemma 7.7.6。 \(\begin{bmatrix}I&X\\X^*&I\end{bmatrix}\succ0\) ⇔ \(X\) 严格收缩;\(\succeq0\) ⇔ \(X\) 收缩。(Schur 补为 \(I-X^*X\)。)

Theorem 7.7.7。 \(H=\begin{bmatrix}A&B\\B^*&C\end{bmatrix}\) Hermitian,以下等价:

  • (a) \(H\succ0\);
  • (b) \(A\succ0\) 且 \(C-B^*A^{-1}B\succ0\);
  • (c) \(A,C\succ0\) 且 \(\rho(B^*A^{-1}BC^{-1})<1\);
  • (d) \(A,C\succ0\) 且 \(\sigma_1(A^{-1/2}BC^{-1/2})<1\);
  • (e) \(A,C\succ0\) 且 \(B=A^{1/2}XC^{1/2}\),\(X\) 为严格收缩。

(e)⇒(a):\(H=S^*\begin{bmatrix}I&X\\X^*&I\end{bmatrix}S\),\(S=A^{1/2}\oplus C^{1/2}\)。

统计含义——典型相关。 \(X=A^{-1/2}BC^{-1/2}\) 是两组变量"各自白化后"的互协方差矩阵,它的奇异值就是典型相关系数(canonical correlations)。定理说:联合协方差正定 ⇔ 所有典型相关系数都小于 1,正是"相关系数绝对值小于 1"的多变量推广。\(\rho(B^*A^{-1}BC^{-1})=\sigma_1(X)^2\) 是最大典型相关的平方,它也是第 07c 章广义特征值问题的一个实例。

白话解释:\(A^{-1/2}BC^{-1/2}\) 可以理解为"多变量版的把协方差除以两边标准差"。标量时 \(A=\sigma_x^2\)、\(C=\sigma_y^2\),它就是 \(\sigma_{xy}/(\sigma_x\sigma_y)=\rho\)。多变量时,\(A^{-1/2}\) 把第一组变量"白化"成互不相关、方差为 1 的新变量(类似 z-score,但同时去掉了组内相关),\(C^{-1/2}\) 对第二组做同样的事。白化后两组之间的协方差矩阵就是相关矩阵。 它的最大奇异值 \(\sigma_1\) 回答的问题是:在第一组里任选一个组合、第二组里任选一个组合,两者相关系数最大能到多少?例如第一组是 3 只银行股,第二组是 2 个利率因子,\(\sigma_1=0.84\) 就是"银行股组合与利率组合之间能找到的最强相关"。收缩条件 \(\sigma_1<1\) 就是"不存在两组之间完全相关的组合"。

Theorem 7.7.9(半正定版本)。 \(H\succeq0\) ⇔ \(A,C\succeq0\) 且存在收缩 \(X\) 使 \(B=A^{1/2}XC^{1/2}\)。\(A,C\) 奇异时 \(X\) 可取为 \(\lim_{\varepsilon\to0}(A+\varepsilon I)^{-1/2}B(C+\varepsilon I)^{-1/2}\) 的某个子列极限(7.7.8 用紧性保证存在),也可以写作 \(X=(A^\dagger)^{1/2}B(C^\dagger)^{1/2}\)(7.7.P20);并且 \(H\succeq0\iff A\succeq0\)、\(\operatorname{range}B\subset\operatorname{range}A\)、\(C\succeq B^*A^\dagger B\)(广义 Schur 补)。

Corollary 7.7.10。 \(\begin{bmatrix}A&I\\I&C\end{bmatrix}\succeq0\) ⇒ \(A,C\succ0\) 且 \(A\succeq C^{-1}\);\(A\succ0\) 时 \(\begin{bmatrix}A&I\\I&A^{-1}\end{bmatrix}\succeq0\)。

Theorem 7.7.11(广义 Cauchy–Schwarz)。 \(A,C\succeq0\)。以下等价:

  • (a) \((x^*Ax)(y^*Cy)\ge|x^*By|^2\) 对所有 \(x,y\);
  • (b) \(x^*Ax+y^*Cy\ge2|x^*By|\);
  • (c) \(\begin{bmatrix}A&B\\B^*&C\end{bmatrix}\succeq0\);
  • (d) 存在收缩 \(X\) 使 \(B=A^{1/2}XC^{1/2}\)。

(a) 正是协方差的 Cauchy–Schwarz:两组资产的任意组合 \(x^*X_1\)、\(y^*X_2\),协方差平方不超过方差之积。

Corollary 7.7.12–7.7.13。 \(A\succeq0\)、\(B\) Hermitian:\(x^*Ax\ge|x^*Bx|\) 对所有 \(x\) ⇔ \(\begin{bmatrix}A&B\\B&A\end{bmatrix}\succeq0\) ⇔ \(B=A^{1/2}XA^{1/2}\),\(X\) 为 Hermitian 收缩。\(A,B\succeq0\) 时,\(A\succeq B\) ⇔ \(\begin{bmatrix}A&B\\B&A\end{bmatrix}\succeq0\)。Corollary 7.7.14:这种"被控制"关系在 Hadamard 积下保持。7.7.P36:\(\begin{bmatrix}A&B\\B&A\end{bmatrix}\succeq0\iff A\pm B\succeq0\)。

7.11.3 子矩阵、逆与 Hadamard 积的不等式

Theorem 7.7.15。 \(H\succ0\),\(\alpha\) 为指标集,则

\[H^{-1}[\alpha]\succeq(H[\alpha])^{-1}.\]

证明:置换后 \(H=\begin{bmatrix}A&B\\B^*&C\end{bmatrix}\),\(A=H[\alpha]\)。分块求逆公式给出 \(H^{-1}[\alpha]=(A-BC^{-1}B^*)^{-1}\);而 \(A\succeq A-BC^{-1}B^*\succ0\),由求逆反序得结论。

统计含义:精度矩阵的子块 \(H^{-1}[\alpha]\) 是"给定其余变量后,\(\alpha\) 组变量的条件协方差之逆";\((H[\alpha])^{-1}\) 是"不考虑其余变量时的精度"。条件化减少不确定性,所以精度增大。标量情形 \((H^{-1})_{ii}\ge1/h_{ii}\),比值 \(h_{ii}(H^{-1})_{ii}=1/(1-R_i^2)\) 就是第 07a 章的 VIF。7.7.P8:等号严格成立 ⇔ \(B\) 列满秩。

推导拆解:证明里的"分块求逆公式"来自第 00 章:\(H^{-1}\) 的左上块等于 \((A-BC^{-1}B^*)^{-1}\),即"\(C\) 在 \(H\) 中的 Schur 补"之逆。之后只用了两步:\(BC^{-1}B^*\succeq0\)(因为 \(C^{-1}\succ0\) 且 *合同保序),所以 \(A\succeq A-BC^{-1}B^*\);再用求逆反序翻过来。 标量情形用回归语言读:\(1/h_{ii}\) 是"不看其他资产时"资产 \(i\) 的精度,\((H^{-1})_{ii}=1/\operatorname{Var}(X_i\mid\text{其余})\) 是"用其余资产回归后残差方差"的倒数。残差方差 \(=h_{ii}(1-R_i^2)\),两者之比就是 VIF \(=1/(1-R_i^2)\)。 关于 7.7.P8 的表述:这句话应理解为"严格不等号 \(H^{-1}[\alpha]\succ(H[\alpha])^{-1}\) 成立 ⇔ \(BC^{-1}B^*\succ0\)"。这里 \(B\) 是 \(|\alpha|\times(n-|\alpha|)\) 矩阵,\(BC^{-1}B^*\succ0\) 要求 \(B\) 的秩等于 \(|\alpha|\),即行满秩(按本节"\(A=H[\alpha]\) 在左上"的分块方式)。实战 1 正好是反例:\(\alpha\) 是 3 只资产,\(B\) 是 \(3\times2\),不可能行满秩,所以输出里差的最小特征值是 0,只有半正定而非正定。原文"列满秩"对应的是另一种分块写法,读的时候以秩等于 \(|\alpha|\) 为准。

Theorem 7.7.16。 \(A\succ0\),下列矩阵半正定且奇异:\(\begin{bmatrix}A&X\\X^*&X^*A^{-1}X\end{bmatrix}\)、\(\begin{bmatrix}A&I\\I&A^{-1}\end{bmatrix}\)、\(\begin{bmatrix}A&A\\A&A\end{bmatrix}\)(Schur 补为零)。

把这些"Schur 补为零"的块矩阵做 Hadamard 积,就得到 Hadamard 积的不等式:

Theorem 7.7.17。 \(A,B\succ0\):

\[A^{-1}\circ B^{-1}\succeq(A\circ B)^{-1},\qquad A^{-1}\circ A\succeq I\succeq(A^{-1}\circ A)^{-1}.\]

证明:\(\begin{bmatrix}A&I\\I&A^{-1}\end{bmatrix}\circ\begin{bmatrix}B&I\\I&B^{-1}\end{bmatrix}=\begin{bmatrix}A\circ B&I\\I&A^{-1}\circ B^{-1}\end{bmatrix}\succeq0\),再用 7.7.10。

Theorem 7.7.18。 \(\lambda_{\min}(A\circ B)\ge\max\{\lambda_{\min}(AB),\lambda_{\min}(AB^T)\}\)——Schur 乘积定理的定量版本,与第 07c 章的 \(\lambda_{\min}(A)\min b_{ii}\) 是两个不同的下界。

谱范数关于 Hadamard 积次乘(7.7.P27):\(\sigma_1(A\circ B)\le\sigma_1(A)\sigma_1(B)\),证明对 \(\begin{bmatrix}I&X\\X^*&I\end{bmatrix}\circ\begin{bmatrix}I&Y\\Y^*&I\end{bmatrix}\) 用同样的技巧。

7.11.4 Schur 补的变分刻画(7.7.P40–P41)

\[H/A=C-B^*A^{-1}B=\max\Big\{E=E^*:\ H\succeq\begin{bmatrix}0&0\\0&E\end{bmatrix}\Big\},\]

最大是 Loewner 序意义下的。直观:从 \(H\) 的右下角最多能"拿走"多少而保持半正定。推论:

  • 单调:\(H_1\succeq H_2\Rightarrow H_1/A_1\succeq H_2/A_2\);
  • 凹:\((H_1+H_2)/(A_1+A_2)\succeq H_1/A_1+H_2/A_2\);
  • Hadamard 超乘:\((H_1\circ H_2)/(A_1\circ A_2)\succeq(H_1/A_1)\circ(H_2/A_2)\)。

量化读法:条件协方差(对冲后剩余风险)关于联合协方差是单调且凹的。若对联合协方差的估计有不确定性(取一族可能的 \(H\) 的凸组合),对冲后剩余风险的"平均"不小于"平均协方差下的剩余风险"——稳健对冲分析中会用到这一点。

7.11.5 其他习题结论

  • 7.7.P6:\(A\succeq B\succeq0\Rightarrow\operatorname{range}B\subset\operatorname{range}A\)。7.7.P7:存在 \(\|x\|\le1\) 使 \(Ax=y\) ⇔ \(AA^*\succeq yy^*\)。
  • 7.7.P9:\(H\succeq0\Rightarrow\operatorname{rank}B\le\min\{\operatorname{rank}A,\operatorname{rank}C\}\)。7.7.P11:\(\det A\det C\ge|\det B|^2\)。
  • 7.7.P32:\(A\succeq B\succ0\iff\begin{bmatrix}B^{-1}&I\\I&A\end{bmatrix}\succeq0\)。7.7.P33:\(\sum\alpha_iA_i\succeq(\sum\alpha_iB_i^{-1})^{-1}\)(\(A_i\succeq B_i\))——矩阵版的调和平均 ≤ 算术平均。
  • 7.7.P34:\(AA^*\succeq A^*A\iff A\) 正规。7.7.P37:\(A\circ B^{-1}+A^{-1}\circ B\succeq2I\)。
  • 7.7.P22–P26:复正定矩阵 \(A=A_1+iA_2\) 的实部、虚部关系(\(\operatorname{Re}A^{-1}\succeq(\operatorname{Re}A)^{-1}\),\(\det\operatorname{Re}A>|\det\operatorname{Im}A|\)),复数协方差(如复值信号)时有用。
  • 7.7.P19:Grunsky 不等式的矩阵形式(单叶函数理论,了解)。

7.12 行列式不等式

7.12.1 Hadamard 不等式

Theorem 7.8.1。 \(A\succ0\) ⇒ \(\det A\le a_{11}a_{22}\cdots a_{nn}\),等号 ⇔ \(A\) 对角。

证明(与第 07a 章的 Cholesky 证明不同):\(D=\operatorname{diag}(a_{ii}^{1/2})\),\(C=D^{-1}AD^{-1}\) 是相关矩阵,\(\operatorname{tr}C=n\)。由 AM–GM,\(\det C=\prod\lambda_i\le(\frac1n\sum\lambda_i)^n=1\),等号 ⇔ 所有 \(\lambda_i=1\) ⇔ \(C=I\)。

推导拆解:第一步,\(C=D^{-1}AD^{-1}\) 就是把协方差矩阵除以两边的标准差,得到相关矩阵,对角元都是 1,所以 \(\operatorname{tr}C=n\)。第二步,行列式可乘:\(\det C=\det A/(\det D)^2=\det A/\prod a_{ii}\),所以要证的 \(\det A\le\prod a_{ii}\) 等价于 \(\det C\le1\)。第三步,\(C\) 的特征值 \(\lambda_i>0\),和为 \(n\)(迹 = 特征值之和),积为 \(\det C\)。对 \(n\) 个正数用 AM–GM:几何平均 \(\le\) 算术平均 \(=1\),所以积 \(\le1\)。 金融直觉:两只资产时 \(\det R=1-\rho^2\),相关越强越接近 0。\(\det\Sigma\) 是风险椭球的体积("广义方差"),\(\prod\sigma_{ii}\) 是假装资产互不相关时的体积。相关性让椭球被"压扁",体积变小。\(\det R\) 接近 0 意味着有某个组合几乎没有波动,也就是资产之间存在近似的线性关系,这正是第 07a 章多重共线性和 Markowitz 优化不稳定的根源。

Corollary 7.8.3(几何形式)。 \(|\det B|\le\|b_1\|_2\cdots\|b_n\|_2\)(\(b_i\) 为列),等号 ⇔ 列两两正交:平行多面体体积不超过棱长之积。

信息论含义:对零均值正态向量,\(\frac12\log\frac{\prod\sigma_{ii}}{\det\Sigma}=-\frac12\log\det R\) 叫**总相关(total correlation)**或多信息,度量变量之间所有依赖的总量,Hadamard 不等式就是"总相关 \(\ge0\)"。在组合管理中,\(\det R\) 接近 0 说明资产高度冗余;\(-\log\det R\) 常被用作"分散化不足"的指标,\(\det R^{1/n}\) 则是相关矩阵特征值的几何平均。

7.12.2 Fischer 与 Koteljanskii

Theorem 7.8.5(Fischer 不等式)。 \(H=\begin{bmatrix}A&B\\B^*&C\end{bmatrix}\succ0\) ⇒ \(\det H\le\det A\cdot\det C\)。

证明:分别对角化 \(A=U\Lambda U^*\)、\(C=V\Gamma V^*\),对 \((U\oplus V)^*H(U\oplus V)\) 用 Hadamard。归纳得 \(k\) 块情形 \(\det H\le\prod\det H_{ii}\);它又蕴含 Hadamard,所以两者等价。

信息论含义:\(\frac12\log\frac{\det A\det C}{\det H}\) 是两组变量之间的互信息,Fischer 不等式即"互信息 \(\ge0\)"。用 Schur 补 \(\det H=\det A\cdot\det(C-B^*A^{-1}B)\),互信息又等于 \(-\frac12\sum_i\log(1-\rho_i^2)\),\(\rho_i\) 为典型相关系数(实战 2 验证)。

Theorem 7.8.9(Koteljanskii 不等式,Hadamard–Fischer inequality)。 \(A\succ0\),任意指标集 \(\alpha,\beta\)(约定 \(\det A[\varnothing]=1\)):

\[\det A[\alpha\cup\beta]\cdot\det A[\alpha\cap\beta]\le\det A[\alpha]\cdot\det A[\beta].\]

证明思路:用 Jacobi 恒等式 \(\det A^{-1}[\gamma^c]=\det A[\gamma]/\det A\) 把问题转到 \(A^{-1}\) 上不相交的两个指标集,再用 Fischer。

取对数:\(\alpha\mapsto\log\det A[\alpha]\) 是子模集函数(submodular set function)。在高斯模型里它就是"条件互信息 \(I(X_{\alpha\setminus\beta};X_{\beta\setminus\alpha}\mid X_{\alpha\cap\beta})\ge0\)"。子模性是"边际收益递减":往资产集合里加入一只资产带来的 \(\log\det\) 增量(新增的"独立信息"),集合越大越小。这一性质让"挑选一组彼此最不冗余的资产/因子"(最大化 \(\log\det\Sigma[\alpha]\))可以用贪心算法得到有保证的近似解。\(\alpha\cap\beta=\varnothing\) 时退化为 Fischer,所以 Koteljanskii、Fischer、Hadamard 三者等价。

白话解释:用"新增独立信息"来读 \(\log\det\)。\(\log\det\Sigma[\alpha]\) 增加一只资产 \(j\) 时的增量,由 Schur 补公式 \(\det H=\det A\cdot\det(H/A)\) 得到,等于 \(\log\operatorname{Var}(X_j\mid X_\alpha)\),即"用已有资产回归后,\(j\) 还剩多少残差方差"的对数。已有集合越大,能解释掉的越多,残差方差越小,所以增量递减。这就是子模性。 举例:组合里已有沪深 300 ETF,再加一只大盘银行股,新增信息不少;如果组合里已经有 10 只银行股,再加第 11 只,几乎全被解释掉了。贪心选股(每次加入残差方差最大的那只)正是利用这个性质。

7.12.3 Szász 不等式

记 \(P_k(A)\) 为全部 \(\binom nk\) 个 \(k\) 阶主子式之积(\(P_1=\prod a_{ii}\),\(P_n=\det A\))。

Theorem 7.8.11(Szász)。 \(A\succ0\) 时有单调链

\[a_{11}\cdots a_{nn}=P_1\ge P_2^{1/\binom{n-1}{1}}\ge\cdots\ge P_k^{1/\binom{n-1}{k-1}}\ge\cdots\ge P_n=\det A .\]

证明思路:\(A^{-1}\) 的对角元是 \(n-1\) 阶主子式除以 \(\det A\);对 \(A^{-1}\) 用 Hadamard 得 \(P_n^{n-1}\le P_{n-1}\),再对每个 \(n-1\) 阶主子矩阵重复。它是 Hadamard 不等式的加细,也与之等价:用 \(k\) 个资产的子组合去"逐步逼近"整体的广义方差。

Lemma 7.8.15(证明工具):\(A=\begin{bmatrix}a_{11}&x^*\\x&A_{22}\end{bmatrix}\succeq0\),\(\alpha(A)=\det A/\det A_{22}\),则把 \(a_{11}\) 换成 \(a_{11}-\alpha(A)\) 后仍半正定(且奇异)。

7.12.4 Oppenheim–Schur 不等式

Hadamard 不等式可以写成 \(\det A\cdot\det I\le\det(A\circ I)\)。它的实质推广:

Theorem 7.8.16(Oppenheim–Schur)。 \(A,B\succeq0\):

\[\max\Big\{\prod a_{ii}\det B,\ \prod b_{ii}\det A\Big\}\le\det(A\circ B),\qquad\prod a_{ii}\det B+\prod b_{ii}\det A\le\det(A\circ B)+\det(AB).\]

由此得到一条链:\(\det A\det B\le\prod a_{ii}\det B\le\det(A\circ B)\le\prod a_{ii}\prod b_{ii}\)。特别地 \(\det(A\circ A^{-1})\ge1\)。量化读法:对相关矩阵做 Hadamard 积(第 07c 章的锥形化),行列式只会增大——这与"Hadamard 积改善条件数"一致。

7.12.5 Minkowski、Ostrowski–Taussky 与 Fan

Theorem 7.8.21(Minkowski 行列式不等式)。 \(A,B\succ0\):

\[(\det A)^{1/n}+(\det B)^{1/n}\le(\det(A+B))^{1/n},\]

等号 ⇔ \(A=cB\)。证明:同时对角化(第 07c 章)化为 \(1+(\prod\lambda_j)^{1/n}\le(\prod(1+\lambda_j))^{1/n}\),即原书附录 B 的 Minkowski 积不等式(本册附录 A.2)。它说 \((\det A)^{1/n}\) 在正定锥上凹且一次齐次;推论 \(\det(A+B)\ge\det A+\det B\)。7.8.P4 给出变分刻画 \((\det A)^{1/n}=\min\{\frac1n\operatorname{tr}(AB):B\succ0,\det B=1\}\),凹性一目了然。

Theorem 7.8.19(Ostrowski–Taussky)。 \(H\succ0\),\(K\) Hermitian,\(\det H\le|\det(H+iK)|\),等号 ⇔ \(K=0\)(标量类比 \(|\operatorname{Re}z|\le|z|\))。Theorem 7.8.24:\(n\ge2\) 时 \(\det H+|\det K|\le|\det(H+iK)|\)。Theorem 7.8.27(Fan):\((\det H)^{2/n}+|\det K|^{2/n}\le|\det(H+iK)|^{2/n}\)。证明都用 \(H^{-1}K\) 的实特征值 \(\lambda_j\) 与 \(|1+i\lambda_j|^2=1+\lambda_j^2\),化为标量不等式。这一组针对"Hermitian 部分正定"的复矩阵,量化中较少用到;7.8.P14–P20 把它们推广到可 *合同对角化的矩阵。

7.12.6 7.8 节习题中的结论

  • 7.8.P3:\(A,B\succ0\),\(A\circ B=AB\) ⇔ \(\det(A\circ B)=\det(AB)\) ⇔ 两者都是正对角阵。
  • 7.8.P9–P10:\(\det A=\min\{\prod_iv_i^*Av_i:\{v_i\}\text{ 正交规范}\}\),取到最小的基是特征向量——"用 \(n\) 个正交组合的方差之积估计广义方差,用主成分最省"。
  • 7.8.P11(反向 Fischer):\(\det(A/A_{11})\det(A/A_{22})\le\det A\)。
  • 7.8.P12:\(\det A=(a_{nn}-x^*A_{11}^{-1}x)\det A_{11}\le a_{nn}\det A_{11}\),归纳得 Hadamard——即"条件方差 \(\le\) 无条件方差"逐个累乘。
  • 7.8.P13:\(S_k(\lambda_1,\dots,\lambda_n)\le S_k(a_{11},\dots,a_{nn})\)(初等对称函数),\(k=1\) 等号、\(k=n\) 为 Hadamard。
  • 7.8.P7–P8:\(|a_{ij}|\le1\) 的 \(3\times3\) 实矩阵 \(|\det A|<3\sqrt3\)(Hadamard 界不可达);\(|\det A|\le\|A\|_\infty^nn^{n/2}\)。

量化实战

实战 1:条件协方差、典型相关与 Gauss–Markov 的矩阵形式

场景:(1) 3 只资产与 2 个因子联合正态,求给定因子后的资产协方差(Schur 补),用模拟回归核对;验证精度矩阵子块不等式。(2) 计算资产块与因子块之间的典型相关。(3) 异方差回归中,用 Loewner 序表述 GLS 优于 OLS。(4) 原书的"平方不保序"反例。

import numpy as np
from scipy.linalg import sqrtm

rng = np.random.default_rng(21)
psd_min = lambda M: np.linalg.eigvalsh((M + M.T) / 2)[0]

# ---------- 1. 联合协方差:3 个资产(块 A)+ 2 个宏观/因子变量(块 C) ----------
p, q = 3, 2
G = rng.standard_normal((p + q, p + q))
H = G @ G.T + 0.5 * np.eye(p + q)
A, B, C = H[:p, :p], H[:p, p:], H[p:, p:]

# 条件协方差 = Schur 补:Cov(资产 | 因子) = A - B C^{-1} B^T
S = A - B @ np.linalg.solve(C, B.T)
print("条件协方差 Schur 补 λ_min = %.4f(≥0);  A - S 的 λ_min = %.4f(条件化降低风险,Loewner 序 A ⪰ S)"
      % (psd_min(S), psd_min(A - S)))
# 模拟验证:对资产收益做因子回归,残差协方差 ≈ Schur 补
Z = rng.multivariate_normal(np.zeros(p + q), H, size=200_000)
Ra, Fc = Z[:, :p], Z[:, p:]
beta = np.linalg.lstsq(Fc, Ra, rcond=None)[0]
print("残差协方差与 Schur 补的最大差: %.4f" % np.abs(np.cov((Ra - Fc @ beta).T) - S).max())

# H^{-1}[α] ⪰ (H[α])^{-1}(原书 7.7.15):精度矩阵的子块 ≥ 子协方差之逆
Hinv = np.linalg.inv(H)
print("H^{-1}[α] - (H[α])^{-1} 的 λ_min = %.4f ≥ 0;  并且 H^{-1}[α] = S^{-1}? %s"
      % (psd_min(Hinv[:p, :p] - np.linalg.inv(A)), np.allclose(Hinv[:p, :p], np.linalg.inv(S))))

# ---------- 2. 标准化互协方差的奇异值 = 典型相关系数(原书 7.7.7) ----------
X = np.real(np.linalg.inv(sqrtm(A))) @ B @ np.real(np.linalg.inv(sqrtm(C)))
cc = np.linalg.svd(X, compute_uv=False)
print("\n典型相关系数 σ(A^{-1/2} B C^{-1/2}) =", np.round(cc, 4), " 都 < 1 ⇔ H 正定")
# 与 ρ(B^T A^{-1} B C^{-1}) 的关系
print("ρ(B^T A^{-1} B C^{-1}) = %.4f = σ_1^2 = %.4f"
      % (max(abs(np.linalg.eigvals(B.T @ np.linalg.solve(A, B) @ np.linalg.inv(C)))), cc[0] ** 2))

# ---------- 3. Gauss–Markov 的 Loewner 序版本:Var(OLS) ⪰ Var(GLS) ----------
T, k = 60, 3
Xd = np.column_stack([np.ones(T), rng.standard_normal((T, k - 1))])
vols = np.exp(rng.normal(0, 0.6, T))                          # 异方差
Omega = np.diag(vols ** 2)
XtX_inv = np.linalg.inv(Xd.T @ Xd)
V_ols = XtX_inv @ Xd.T @ Omega @ Xd @ XtX_inv
V_gls = np.linalg.inv(Xd.T @ np.linalg.solve(Omega, Xd))
print("\nV_OLS - V_GLS 的特征值:", np.round(np.linalg.eigvalsh(V_ols - V_gls), 5), " → V_OLS ⪰ V_GLS")
print("推论:每个系数的方差、任意线性组合 c^T β 的方差,OLS 都不小于 GLS;对角元比:",
      np.round(np.diag(V_ols) / np.diag(V_gls), 2))

# ---------- 4. 平方不保序(原书 7.7.4 后练习) ----------
A2 = np.array([[3., 1.], [1., 2.]]); B2 = np.diag([2., 1.])
print("\nA-B 特征值:", np.round(np.linalg.eigvalsh(A2 - B2), 4),
      "  A²-B² 特征值:", np.round(np.linalg.eigvalsh(A2 @ A2 - B2 @ B2), 4),
      "  √A-√B 特征值:", np.round(np.linalg.eigvalsh(np.real(sqrtm(A2) - sqrtm(B2))), 4),
      "  B⁻¹-A⁻¹ 特征值:", np.round(np.linalg.eigvalsh(np.linalg.inv(B2) - np.linalg.inv(A2)), 4))

关键输出:

条件协方差 Schur 补 λ_min = 0.9435(≥0);  A - S 的 λ_min = 0.0000(条件化降低风险,Loewner 序 A ⪰ S)
残差协方差与 Schur 补的最大差: 0.0085
H^{-1}[α] - (H[α])^{-1} 的 λ_min = -0.0000 ≥ 0;  并且 H^{-1}[α] = S^{-1}? True

典型相关系数 σ(A^{-1/2} B C^{-1/2}) = [0.8433 0.5188]  都 < 1 ⇔ H 正定
ρ(B^T A^{-1} B C^{-1}) = 0.7112 = σ_1^2 = 0.7112

V_OLS - V_GLS 的特征值: [0.00984 0.02364 0.02626]  → V_OLS ⪰ V_GLS
推论:每个系数的方差、任意线性组合 c^T β 的方差,OLS 都不小于 GLS;对角元比: [2.76 2.8  1.91]

A-B 特征值: [0. 2.]   A²-B² 特征值: [-0.099 10.099]   √A-√B 特征值: [0.0038 0.6597]   B⁻¹-A⁻¹ 特征值: [0.  0.5]

读法:

  1. Schur 补与 20 万条模拟的回归残差协方差吻合到 0.01。\(A-S=BC^{-1}B^T\) 的秩只有 2(因子个数),所以最小特征值为 0:对冲 2 个因子只能消除 2 个方向上的风险,第三个方向的风险丝毫未减。
  2. \(H^{-1}[\alpha]\) 恰好是 Schur 补之逆:精度矩阵的资产块 = 条件协方差的逆。它与 \(A^{-1}\) 之差半正定(同样秩 2,数值上 \(-0.0000\) 是舍入误差)。
  3. 两个典型相关系数 0.84、0.52 都小于 1;最大典型相关的平方 0.711 等于 \(\rho(B^TA^{-1}BC^{-1})\)。这意味着资产块中存在一个组合,其收益与因子块中某个组合的相关系数达 0.84,这是两组变量之间"最强的联动"。
  4. Gauss–Markov 的矩阵形式:\(V_{\text{OLS}}-V_{\text{GLS}}\succeq0\),所以任意线性组合 \(c^T\hat\beta\) 的方差都是 OLS 更大(这里系数方差大约 2–3 倍)。这正是 Loewner 序的价值:一个矩阵不等式一次性比较了所有可能关心的量。证明用的就是 Theorem 7.7.16(a) 的块矩阵与 Schur 补。
  5. \(A\succeq B\) 时 \(\sqrt A\succeq\sqrt B\)、\(B^{-1}\succeq A^{-1}\) 都成立,但 \(A^2-B^2\) 有负特征值 \(-0.099\)。

实战 2:行列式不等式的信息论读法

场景:6 只资产分两个行业(每行业 3 只),协方差由"市场 + 行业 + 特质"构成。依次验证 Hadamard(总相关)、Fischer(行业间互信息与典型相关)、Koteljanskii(\(\log\det\) 子模)、Szász 链、Oppenheim 与 Minkowski。

import numpy as np
from itertools import combinations
from scipy.linalg import sqrtm

rng = np.random.default_rng(13)
ld = lambda M: np.linalg.slogdet(M)[1]

# 6 只资产:两个行业,各 3 只
n = 6
F = np.zeros((n, 3)); F[:, 0] = 0.7; F[:3, 1] = 0.5; F[3:, 2] = 0.5
Sig = F @ F.T + np.diag(rng.uniform(0.3, 0.6, n))
d = np.sqrt(np.diag(Sig)); R = Sig / np.outer(d, d)

# ---------- 1. Hadamard:总相关 TC = Σ log σ_ii - log det Σ ≥ 0(高斯下的"多信息") ----------
TC = 0.5 * (np.log(np.diag(Sig)).sum() - ld(Sig))
print("Hadamard: det Σ = %.4f ≤ Π σ_ii = %.4f;   总相关 TC = %.4f nat = -½ log det R = %.4f"
      % (np.linalg.det(Sig), np.prod(np.diag(Sig)), TC, -0.5 * ld(R)))

# ---------- 2. Fischer:两行业之间的互信息 I = ½ log(det A det C / det H) ≥ 0 ----------
A, B, C = Sig[:3, :3], Sig[:3, 3:], Sig[3:, 3:]
I = 0.5 * (ld(A) + ld(C) - ld(Sig))
cc = np.linalg.svd(np.real(np.linalg.inv(sqrtm(A)) @ B @ np.linalg.inv(sqrtm(C))), compute_uv=False)
print("Fischer: det H = %.4f ≤ det A·det C = %.4f;  互信息 %.4f = -½Σlog(1-ρ_i²) = %.4f(ρ_i 为典型相关)"
      % (np.linalg.det(Sig), np.linalg.det(A) * np.linalg.det(C), I, -0.5 * np.log(1 - cc ** 2).sum()))

# ---------- 3. Koteljanskii:log det 是子模集函数 ----------
worst = np.inf
for a in combinations(range(n), 3):
    for b in combinations(range(n), 3):
        if set(a) <= set(b) or set(b) <= set(a):
            continue                                # 互相包含时两边相等,跳过
        U, Iab = sorted(set(a) | set(b)), sorted(set(a) & set(b))
        lhs = ld(Sig[np.ix_(U, U)]) + (ld(Sig[np.ix_(Iab, Iab)]) if Iab else 0.0)
        rhs = ld(Sig[np.ix_(a, a)]) + ld(Sig[np.ix_(b, b)])
        worst = min(worst, rhs - lhs)
print("Koteljanskii: 所有 3 元子集对上 log det A[α]+log det A[β] - log det A[α∪β] - log det A[α∩β] 的最小值 = %.4f > 0" % worst)

# ---------- 4. Szász 链:P_1 ≥ P_2^{1/(n-1)} ≥ ... ≥ P_n = det ----------
from math import comb
chain = []
for k in range(1, n + 1):
    Pk = sum(ld(Sig[np.ix_(s, s)]) for s in combinations(range(n), k))   # log P_k
    chain.append(np.exp(Pk / comb(n - 1, k - 1)))
print("Szász 链:", np.round(chain, 5))

# ---------- 5. Oppenheim 与 Minkowski ----------
G = rng.standard_normal((n, n)); W = G @ G.T / n + 0.2 * np.eye(n)
print("Oppenheim: det(Σ∘W) = %.4f ≥ det Σ·Π w_ii = %.4f ≥ det Σ·det W = %.4f"
      % (np.linalg.det(Sig * W), np.linalg.det(Sig) * np.prod(np.diag(W)), np.linalg.det(Sig) * np.linalg.det(W)))
print("Minkowski: det(Σ+W)^{1/n} = %.4f ≥ det Σ^{1/n} + det W^{1/n} = %.4f"
      % (np.linalg.det(Sig + W) ** (1 / n), np.linalg.det(Sig) ** (1 / n) + np.linalg.det(W) ** (1 / n)))

关键输出:

Hadamard: det Σ = 0.2773 ≤ Π σ_ii = 3.4038;   总相关 TC = 1.2538 nat = -½ log det R = 1.2538
Fischer: det H = 0.2773 ≤ det A·det C = 0.3945;  互信息 0.1763 = -½Σlog(1-ρ_i²) = 0.1763(ρ_i 为典型相关)
Koteljanskii: 所有 3 元子集对上 log det A[α]+log det A[β] - log det A[α∪β] - log det A[α∩β] 的最小值 = 0.0091 > 0
Szász 链: [3.40382 1.43011 0.80097 0.51817 0.36689 0.2773 ]
Oppenheim: det(Σ∘W) = 4.9159 ≥ det Σ·Π w_ii = 0.5489 ≥ det Σ·det W = 0.1152
Minkowski: det(Σ+W)^{1/n} = 1.8975 ≥ det Σ^{1/n} + det W^{1/n} = 1.6713

读法:

  1. 总相关 1.25 nat 衡量 6 只资产之间的全部冗余;它只依赖相关矩阵(\(-\frac12\log\det R\)),与波动率无关。
  2. 两个行业之间的互信息 0.18 nat 远小于总相关:大部分冗余来自行业内部。互信息与典型相关的恒等式 \(I=-\frac12\sum\log(1-\rho_i^2)\) 精确成立——Fischer 不等式本质上就是"典型相关系数小于 1"。
  3. Koteljanskii 在所有不互相包含的 3 元子集对上都严格成立:\(\log\det\) 是子模函数,"加入一只新资产带来的新信息"随已有集合增大而减少。
  4. Szász 链严格递减,从对角元乘积 3.40 一路降到行列式 0.277。Oppenheim 与 Minkowski 也都成立。

本章小结

Loewner 偏序 \(A\succeq B\)(\(A-B\) 半正定)是"对每个组合风险都不小于"的矩阵化表述,它不是全序。*合同保序;求逆反序;平方根(以及 \(t^p\),\(0\le p\le1\))保序;平方不保序——Loewner 定理用差商核的半正定性统一解释了这些现象。\(t^{-1}\) 与 \(t^2\) 是算子凸的。分块矩阵的半正定性由 Schur 补刻画:\(H\succ0\iff A\succ0\) 且 \(C-B^*A^{-1}B\succ0\),等价于 \(A^{-1/2}BC^{-1/2}\) 是严格收缩,其奇异值就是典型相关系数;半正定情形允许 \(A,C\) 奇异,用广义 Schur 补或收缩 \(X\) 表述。Schur 补就是条件协方差、回归残差协方差,它关于联合协方差单调且凹,并且是 Loewner 序下的变分极大。\(H^{-1}[\alpha]\succeq(H[\alpha])^{-1}\) 说明条件化增加精度,标量形式即 VIF \(\ge1\)。把"Schur 补为零"的块矩阵做 Hadamard 积,可以得到 \(A^{-1}\circ B^{-1}\succeq(A\circ B)^{-1}\) 等 Hadamard 积不等式。行列式不等式家族中 Hadamard、Fischer、Koteljanskii、Szász 彼此等价,在高斯模型里分别对应总相关、互信息、条件互信息非负;Oppenheim–Schur 把 Hadamard 推广到 Hadamard 积;Minkowski 说明 \((\det)^{1/n}\) 凹且一次齐次。

概念/公式 表达式 用途
Loewner 序 \(A\succeq B\iff A-B\succeq0\) 风险模型、估计量的比较
判别法 \(A\succeq B\iff\rho(A^{-1}B)\le1\)(\(A\succ0\),\(B\succeq0\)) 广义特征值检验
求逆反序 \(A\succeq B\succ0\Rightarrow B^{-1}\succeq A^{-1}\) 信息与方差、Cramér–Rao
平方根单调 \(A\succeq B\succeq0\Rightarrow A^{1/2}\succeq B^{1/2}\) —
平方不单调 \(\begin{bmatrix}3&1\\1&2\end{bmatrix}\succeq\operatorname{diag}(2,1)\),平方不然 警示
算子凸 \(\alpha A^{-1}+(1-\alpha)B^{-1}\succeq(\alpha A+(1-\alpha)B)^{-1}\) 先平均再求逆更保守
Schur 补 \(H\succ0\iff A\succ0,\ C-B^*A^{-1}B\succ0\) 条件协方差、LMI
收缩刻画 \(B=A^{1/2}XC^{1/2}\),\(\sigma_1(X)\le1\) 典型相关 \(<1\)
广义 Cauchy–Schwarz \((x^*Ax)(y^*Cy)\ge\vert x^*By\vert ^2\) 协方差界
精度子块 \(H^{-1}[\alpha]\succeq(H[\alpha])^{-1}\) VIF、条件精度
Hadamard 积不等式 \(A^{-1}\circ B^{-1}\succeq(A\circ B)^{-1}\),\(A\circ A^{-1}\succeq I\) —
Schur 补变分刻画 \(H/A=\max\{E:H\succeq0\oplus E\}\),单调、凹 稳健对冲
Hadamard \(\det A\le\prod a_{ii}\) 总相关 \(\ge0\)
Fischer \(\det H\le\det A\det C\) 互信息 \(\ge0\)
Koteljanskii \(\det A[\alpha\cup\beta]\det A[\alpha\cap\beta]\le\det A[\alpha]\det A[\beta]\) \(\log\det\) 子模
Szász \(P_k^{1/\binom{n-1}{k-1}}\) 递减 Hadamard 加细
Oppenheim \(\det(A\circ B)\ge\prod a_{ii}\det B\) Hadamard 积行列式
Minkowski \((\det(A+B))^{1/n}\ge(\det A)^{1/n}+(\det B)^{1/n}\) \((\det)^{1/n}\) 凹

练习

基础

  1. 证明 Loewner 序可加,并举例说明 \(A\succeq B\)、\(C\succeq D\) 不推出 \(AC\succeq BD\)。 提示:\(AC\) 一般不对称;即使对称也可能不成立(取 \(C=A\)、\(D=B\),即平方不保序)。
  2. 设 \(\Sigma_1\succeq\Sigma_2\succ0\)。证明对任意组合 \(w\),\(w^T\Sigma_1w\ge w^T\Sigma_2w\);对任意 \(\mu\),\(\mu^T\Sigma_1^{-1}\mu\le\mu^T\Sigma_2^{-1}\mu\)。用夏普比率解释第二个不等式。 答案要点:最大夏普比率平方是 \(\mu^T\Sigma^{-1}\mu\);风险模型越"大",算出的最大夏普越小。
  3. 两组变量的联合协方差 \(H=\begin{bmatrix}1&\rho\\\rho&1\end{bmatrix}\)。写出 Schur 补、典型相关和互信息,并验证 \(I=-\frac12\log(1-\rho^2)\)。
  4. 用 Schur 补证明:\(\begin{bmatrix}\Sigma&x\\x^T&t\end{bmatrix}\succeq0\)(\(\Sigma\succ0\))⇔ \(x^T\Sigma^{-1}x\le t\)。说明怎样把"跟踪误差 \(\le\tau\)"写成线性矩阵不等式。
  5. 用 Hadamard 不等式证明相关矩阵 \(R\) 满足 \(\det R\le1\),并求 \(\begin{bmatrix}1&\rho&\rho\\\rho&1&\rho\\\rho&\rho&1\end{bmatrix}\) 的行列式与总相关。 答案要点:\(\det=(1-\rho)^2(1+2\rho)\)。
  6. 设 \(\Sigma\succ0\),第 \(i\) 个资产对其余资产回归的 \(R^2\) 记为 \(R_i^2\)。用 7.7.15 证明 \(\sigma_{ii}(\Sigma^{-1})_{ii}=1/(1-R_i^2)\ge1\)。

进阶

  1. (Gauss–Markov 的矩阵证明)设 \(\Omega\succ0\),\(X\) 列满秩。证明 \((X^TX)^{-1}X^T\Omega X(X^TX)^{-1}\succeq(X^T\Omega^{-1}X)^{-1}\)。 提示:\(\begin{bmatrix}X^T\Omega^{-1}X&X^TX\\X^TX&X^T\Omega X\end{bmatrix}=[\Omega^{-1/2}X\ \ \Omega^{1/2}X]^T[\Omega^{-1/2}X\ \ \Omega^{1/2}X]\succeq0\),取 Schur 补,再用 *合同。
  2. 证明 \(\alpha A^{-1}+(1-\alpha)B^{-1}\succeq(\alpha A+(1-\alpha)B)^{-1}\)。 提示:同时对角化化为标量 \(t^{-1}\) 的凸性;或用 \(\begin{bmatrix}A&I\\I&A^{-1}\end{bmatrix}\succeq0\) 的凸组合与 7.7.10。
  3. 证明 Fischer 不等式蕴含 Hadamard 不等式,再由 Hadamard 推回 Fischer。
  4. 证明:若 \(H\succeq0\) 且 \(A=H[\alpha]\) 可逆,则 \(\det H=\det A\cdot\det(H/A)\),并由 \(H/A\preceq C\) 直接推出 Fischer 不等式。
  5. (子模性与贪心选股)设 \(f(\alpha)=\log\det\Sigma[\alpha]\)。用 Koteljanskii 证明:对 \(\alpha\subset\beta\) 与 \(j\notin\beta\),\(f(\alpha\cup\{j\})-f(\alpha)\ge f(\beta\cup\{j\})-f(\beta)\)。解释为"新资产的边际独立信息递减"。 提示:取 Koteljanskii 中的两个集合为 \(\alpha\cup\{j\}\) 与 \(\beta\)。

原书推荐习题

  • 7.7.P1、P3、P4:特征值占优与 Loewner 序;平方根单调性的一般形式;7.7.P13–P14:\(t^2\)、\(t^{-1}\) 的算子凸性;7.7.P20:广义 Schur 补;7.7.P21:最小 \(c\) 使 \(cA\succeq B\);7.7.P27:\(\sigma_1(A\circ B)\le\sigma_1(A)\sigma_1(B)\);7.7.P40–P41:Schur 补的变分刻画、单调性与凹性。
  • 7.8.P4:\((\det A)^{1/n}\) 的变分刻画;7.8.P9、P12:Hadamard 不等式的另证;7.8.P11:反向 Fischer;7.8.P13:初等对称函数版本。

原书对照

本章小节 原书小节 书页 PDF 页
7.10 Loewner 偏序(含 Loewner 矩阵单调函数注记) 7.7.1–7.7.4,7.7 节注记 493–505(全节) 513–525(全节)
7.11 Schur 补、收缩、子矩阵与 Hadamard 积不等式 7.7.5–7.7.18 及习题 7.7.P1–P45 同上 同上
7.12 行列式不等式 7.8.1–7.8.28 及习题 7.8.P1–P20(PDF p.536 为空白页) 505–515 525–535

第 7 章到此结束。下一章(第 08a 章)换一种"正性":不是二次型非负,而是矩阵的每个元素非负。转移概率矩阵、投入产出矩阵、网络邻接矩阵都属于这一类,它们的谱结构由 Perron–Frobenius 理论描述。