压缩感知的核心问题和基础理论

2025-11-04

压缩感知(Compressive Sensing)问题的核心在于:如何从y=Axy = A x中重建一个 s-稀疏(s-sparse) 向量 xx

其中,ACm×NA \in \mathbb{C}^{m \times N} 被称为测量矩阵(measurement matrix),且 m<Nm < N
因此,上述线性方程组是欠定的(underdetermined),但希望通过稀疏性假设可以帮助识别原始的稀疏向量 xx

核心问题在于两种不同的情境:

  1. 测量方案是否应当允许对所有 ss-稀疏向量 xCNx \in \mathbb{C}^N 进行重建;
  2. 或者,我们仅要求:给定某个特定的 ss-稀疏向量 xCNx \in \mathbb{C}^N,测量方案能够重建这个特定的向量。

第二种情形乍看之下似乎不自然,因为向量 xx 事先未知。但当矩阵 AA 随机选择且稀疏向量 xx 固定时,这种情况在分析恢复保证(nonuniform recovery guarantees)时会变得重要。最小测量数 mm 取决于具体情境:

如果还要求重建方案稳定(stable)(此处的“稳定”含义稍后会更精确定义),则所需的最小测量数还会额外包含一个 ln(N/s)\ln(N/s) 因子。因此,仅仅 2s2s 个测量是不足以保证稳定恢复的。

在区分上述两种情境之前,值得注意以下两个性质的等价性:

(a) 若 xCNx \in \mathbb{C}^N 是方程 Az=yA z = y 的唯一 ss-稀疏解,则有:
{zCN:Az=Ax,z0s}={x}.\{ z \in \mathbb{C}^N : A z = A x, \| z \|_0 \le s \} = \{ x \}.

(b) 向量 xCNx \in \mathbb{C}^N 可以通过如下优化问题唯一重建:

minzCNz0subject toAz=y.(P0)\min_{z \in \mathbb{C}^N} \| z \|_0 \quad \text{subject to} \quad A z = y. \tag{P0}

事实上,如果 xCNx \in \mathbb{C}^NAz=yA z = y 的唯一 ss-稀疏解,那么问题 (P0) 的最优解 x#x^\# 也必定是 ss-稀疏的,并且满足 Ax#=yA x^\# = y,因此 x#=xx^\# = x
这说明 (a) ⇒ (b)。反之 (b) ⇒ (a) 也显然成立。


情形 1:均匀恢复(Uniform Recovery)

在给出这一情形的主要结果之前,我们首先注意到:欠定线性系统中稀疏解的唯一性可以通过多种方式重新表述。

关键记号

ACm×NA \in \mathbb{C}^{m \times N},并令 S[N]S \subset [N]

定理 1 (唯一性与零空间)

ACm×NA \in \mathbb{C}^{m \times N},以下性质等价:

(a) 每个 ss-稀疏向量 xCNx \in \mathbb{C}^N 都是方程 Az=AxA z = A x 的唯一 ss-稀疏解。换言之,若 Ax=AzA x = A z,且 x,zx, z 均为 ss-稀疏向量,则 x=zx = z

(b) 矩阵 AA 的零空间(null space)不包含任何非零的 2s2s-稀疏向量,即:
kerA{zCN:z02s}={0}.\ker A \cap \{ z \in \mathbb{C}^N : \|z\|_0 \le 2s \} = \{ 0 \}.

(c) 对任意满足 card(S)2s\text{card}(S) \le 2s 的索引集 S[N]S \subset [N],子矩阵 ASA_S单射的(injective)

(d) 矩阵 AA 的任意 2s2s 列是线性无关的。

证明:

注(最小测量数):

我们特别注意到: 若希望从测量向量 y=AxCmy = A x \in \mathbb{C}^m 中重建任意 ss-稀疏向量 xCNx \in \mathbb{C}^N,则上面的条件 (a) 成立,因此 (d) 也成立。这意味着:
rank(A)2s.\text{rank}(A) \ge 2s.
由于矩阵秩至多等于行数,因此需要的测量数 mm 满足:
m2s.m \ge 2s.


定理 2 (Vandermonde 矩阵构造)

对于任意整数 N2sN \ge 2s,存在一个测量矩阵 ACm×NA \in \mathbb{C}^{m \times N},其行数 m=2sm = 2s,使得任意 ss-稀疏向量 xCNx \in \mathbb{C}^N 都可以从测量向量 y=AxCmy = A x \in \mathbb{C}^m 中被恢复,且该 xx 是优化问题 (P₀) 的解。

证明:

tN>tN1>>t2>t1>0t_N > t_{N-1} > \cdots > t_2 > t_1 > 0
并考虑如下矩阵 ACm×NA \in \mathbb{C}^{m \times N}(其中 m=2sm = 2s):

A=[111t1t2tNt12s1t22s1tN2s1].(2)A = \begin{bmatrix} 1 & 1 & \cdots & 1 \\ t_1 & t_2 & \cdots & t_N \\ \vdots & \vdots & \ddots & \vdots \\ t_1^{2s-1} & t_2^{2s-1} & \cdots & t_N^{2s-1} \end{bmatrix}. \tag{2}

取一个指标集合 S={j1<j2<<j2s}S = \{ j_1 < j_2 < \cdots < j_{2s} \}, 于是子矩阵 ASC2s×2sA_S \in \mathbb{C}^{2s \times 2s} 是一个范德蒙矩阵(Vandermonde matrix)的转置:

det(AS)=111tj1tj2tj2stj12s1tj22s1tj2s2s1=k<(tjtjk)>0.\det(A_S) = \begin{vmatrix} 1 & 1 & \cdots & 1 \\ t_{j_1} & t_{j_2} & \cdots & t_{j_{2s}} \\ \vdots & \vdots & \ddots & \vdots \\ t_{j_1}^{2s-1} & t_{j_2}^{2s-1} & \cdots & t_{j_{2s}}^{2s-1} \end{vmatrix} = \prod_{k < \ell} (t_{j_\ell} - t_{j_k}) > 0.

这表明 ASA_S可逆的,从而是单射的(injective)。由于定理 1 的条件 (c) 得到满足,每个 ss-稀疏向量 xCNx \in \mathbb{C}^N都是方程 Az=AxA z = A x 的唯一 ss-稀疏解,因此可以作为问题 (P₀) 的解被成功恢复。

拓展讨论:其他矩阵构造

许多其他矩阵同样满足定理 1 的条件 (c)。

关于 (P0) 的可行性

事实上,与定理 2 的证明类似的论证表明:对于任意满足 det(AS)=0\det(A_S) = 0 的子集 S[N]S \subset [N]、且 card(S)2s\text{card}(S) \le 2s 的矩阵,其集合在 (2s)×N(2s) \times N 矩阵空间中 Lebesgue 测度为零。因此,大多数 (2s)×N(2s) \times N 矩阵都允许从 y=AxC2sy = A x \in \mathbb{C}^{2s} 中恢复任意 ss-稀疏向量 xCNx \in \mathbb{C}^N

一般而言,直接求解 (P₀) 的重建过程在实践中不可行(即这是一个NP-Hard的问题),但在傅里叶测量的情形下,可以使用基于 Prony 方法(Prony’s method) 的更优重建方案。


定理 3 (Prony 方法与可行重建)

对于任意 N2sN \ge 2s,存在一种可行的重建方法,可从前 m=2sm = 2s 个离散傅里叶测量中重建任意 ss-稀疏向量。

证明:

xCNx \in \mathbb{C}^N 是一个 ss-稀疏向量,将其视为一个定义在 {0,1,,N1}\{0, 1, \ldots, N-1\} 上的函数,支持集为 S{0,1,,N1}S \subset \{0,1,\ldots,N-1\},其中 S=s|S| = s。我们观测到其前 2s2s 个离散傅里叶系数:
x^(j):=k=0N1x(k)ei2πjk/N,0jN1.\hat{x}(j) := \sum_{k=0}^{N-1} x(k)e^{-i2\pi jk/N}, \quad 0 \le j \le N-1.
考虑一个次数为 ss 的三角多项式:
p(t):=kS(1ei2πk/Nei2πt/N).p(t) := \prod_{k \in S} (1 - e^{-i2\pi k/N} e^{i2\pi t/N}).
此多项式在 tSt \in S 时取零,因此我们希望通过确定 pp(或等价地,其傅里叶变换 p^\hat{p})来恢复未知的集合 SS

由于 xx 在补集 S\overline{S} 上为零,因而对所有 0tN10 \le t \le N-1 有:
p(t)x(t)=0.p(t)x(t) = 0.
由离散卷积可得:
p^x^=0,\hat{p} * \hat{x} = 0,

(p^x^)(j):=k=0N1p^(k)x^(jkmodN)=0,0jN1.(2.6)(\hat{p} * \hat{x})(j) := \sum_{k=0}^{N-1} \hat{p}(k)\hat{x}(j - k \bmod N) = 0, \quad \forall 0 \le j \le N-1. \tag{2.6}

由于 pp 的次数为 ss,我们有:
p^(0)=1,p^(k)=0 对于 k>s.\hat{p}(0) = 1, \quad \hat{p}(k) = 0 \text{ 对于 } k > s.
因此我们需要确定 p^(1),,p^(s)\hat{p}(1), \ldots, \hat{p}(s)
取方程 (2.6) 中的 sj2s1s \le j \le 2s-1,得到如下线性方程组:

x^(s)+p^(1)x^(s1)++p^(s)x^(0)=0,x^(s+1)+p^(1)x^(s)++p^(s)x^(1)=0,x^(2s1)+p^(1)x^(2s2)++p^(s)x^(s1)=0.\begin{aligned} \hat{x}(s) + \hat{p}(1)\hat{x}(s-1) + \cdots + \hat{p}(s)\hat{x}(0) &= 0, \\ \hat{x}(s+1) + \hat{p}(1)\hat{x}(s) + \cdots + \hat{p}(s)\hat{x}(1) &= 0, \\ &\vdots \\ \hat{x}(2s-1) + \hat{p}(1)\hat{x}(2s-2) + \cdots + \hat{p}(s)\hat{x}(s-1) &= 0. \end{aligned}

即矩阵形式为:

[x^(s1)x^(s2)x^(0)x^(s)x^(s1)x^(1)x^(2s2)x^(2s3)x^(s1)][p^(1)p^(2)p^(s)]=[x^(s)x^(s+1)x^(2s1)].\begin{bmatrix} \hat{x}(s-1) & \hat{x}(s-2) & \cdots & \hat{x}(0) \\ \hat{x}(s) & \hat{x}(s-1) & \cdots & \hat{x}(1) \\ \vdots & \vdots & \ddots & \vdots \\ \hat{x}(2s-2) & \hat{x}(2s-3) & \cdots & \hat{x}(s-1) \end{bmatrix} \begin{bmatrix} \hat{p}(1) \\ \hat{p}(2) \\ \vdots \\ \hat{p}(s) \end{bmatrix} = - \begin{bmatrix} \hat{x}(s) \\ \hat{x}(s+1) \\ \vdots \\ \hat{x}(2s-1) \end{bmatrix}.

由于 x^(0),,x^(2s1)\hat{x}(0), \ldots, \hat{x}(2s-1) 已知,可以求得 p^(1),,p^(s)\hat{p}(1), \ldots, \hat{p}(s)。虽然此 Toeplitz 矩阵并非总是可逆(例如取 x=[1,0,,0]x = [1,0,\ldots,0]^\top 时不可逆),但我们可以找到某个解 q^(1),,q^(s)\hat{q}(1), \ldots, \hat{q}(s),并定义q^(0)=1,q^(k)=0\hat{q}(0) = 1, \hat{q}(k) = 0k>sk > s。于是有:
(q^x^)(j)=0,sj2s1.(\hat{q} * \hat{x})(j) = 0, \quad s \le j \le 2s-1.
这意味着 ss-稀疏向量 qxq \cdot x 的傅里叶变换qx^=q^x^\widehat{q \cdot x} = \hat{q} * \hat{x}在连续的 ss 个频率上为零。

由此可得 qx=0q \cdot x = 0,即三角多项式 qq 在集合 SS 上取零。由于 qq 的次数至多为 ss,其零点集恰好为 SS

因此,我们可以通过以下方式恢复 SS

  1. 求解 p(t)=0p(t) = 0 的根;
  2. 或找出 p(j)|p(j)| 最小的 ss 个位置。

最后,通过前 2s2s 个傅里叶系数建立的线性方程组可解出 x(j),jSx(j), \quad j \in S

注(Prony 方法的局限性):

尽管此重建过程在理论上优雅,但存在重要缺陷:它对稀疏性误差不稳定,也不具备对测量误差的鲁棒性。

我们将在第 11 章证明:任何稳定的 ss-稀疏重建方法都至少需要 mcsln(eN/s)m \approx c\, s \ln(eN/s) 次测量,其中 c>0c > 0 是依赖于稳定性条件的常数。


情形 2:非均匀恢复(Non-Uniform Recovery)

在这一设定下,ss-稀疏向量 xCNx \in \mathbb{C}^N事先固定的,随后才选择测量矩阵 ACm×NA \in \mathbb{C}^{m \times N}
此时,使得 xx 成为与测量 y=Axy = A x 一致的唯一 ss-稀疏向量的条件,依赖于 AAxx 本身。乍看之下这似乎不自然,因为 xx 在选择 AA 前未知。但其背后的思想是:对于“多数” (s+1)×N(s+1) \times N 的矩阵,条件自然成立。这在实际中是合理的,因为测量矩阵常常随机选取。

定理 4 (固定向量的恢复)

对于任意 Ns+1N \ge s + 1,给定一个 ss-稀疏向量 xCNx \in \mathbb{C}^N,存在一个具有 m=s+1m = s + 1 行的测量矩阵 ACm×NA \in \mathbb{C}^{m \times N},使得向量 xx 可以从测量向量 y=AxCmy = A x \in \mathbb{C}^m中唯一恢复,且 xx 是问题 (P₀) 的解。

证明:

AC(s+1)×NA \in \mathbb{C}^{(s+1) \times N}。假设该矩阵不能通过 0\ell_0-最小化从 y=Axy = A x 恢复 ss-稀疏向量 xx
则存在一个与 xx 不同的向量 zCNz \in \mathbb{C}^N,其支持集为 S=supp(z)={j1,,js}S = \text{supp}(z) = \{ j_1, \ldots, j_s \},且满足 Az=AxA z = A x。若 z0<s\|z\|_0 < s,则补齐 SS 至大小为 ss。于是有:
A(zx)=0.A(z - x) = 0.

这说明矩阵 AA 的元素必须满足:

(a1,1,,am,N)f1({0})card(S)=sgS1({0}).(a_{1,1}, \ldots, a_{m,N}) \in f^{-1}(\{0\}) \cup \bigcup_{\text{card}(S)=s} g_S^{-1}(\{0\}).

由于 ff 与所有 gSg_S 都是非零多项式函数,而每个集合 f1({0})f^{-1}(\{0\})gS1({0})g_S^{-1}(\{0\}) 的 Lebesgue 测度为零,它们的并集的测度也为零。因此,只需选择矩阵 AA 的元素避开这一测度为零的集合,即可保证 xx 能从 y=Axy = A x 被唯一恢复。

主题: 压缩感知, 稀疏恢复