信道容量
压缩研究的是"能否把信息表示得更短",信道编码研究的是"在有噪声时,能否把信息传得更准"。
一条真实信道往往会翻转比特、擦除符号、引入混淆。于是通信系统面临一个核心矛盾:
- 想传得快,就要少加冗余
- 想传得准,就要多加冗余
香农第七章回答的正是这个平衡点:存在一个临界速率 $C$,只要传输速率低于它,就能把错误概率压到任意小;一旦超过它,再聪明的编码也无法保证可靠。
这就是信道容量的意义。它不是物理层"每秒发几个符号"的带宽上限,而是可靠通信的理论上限。
信道编码定理的全部讨论都围绕下面这个系统展开。在动手推导之前,先把这个框图看清楚。
| 模块 | 输入 | 输出 | 数学描述 |
|---|---|---|---|
| 信源 | 消息 $W$ | 消息 $W$ | $W \sim \text{Unif}\{1,\dots,M\}$ |
| 编码器 | 消息 $W$ | 码字 $X^n(W)$ | $f:\{1,\dots,M\} \to \mathcal{X}^n$ |
| 信道 | 码字 $X^n$ | 接收序列 $Y^n$ | $p(y^n|x^n)=\prod_i p(y_i|x_i)$ |
| 译码器 | 接收序列 $Y^n$ | 消息估计 $\hat W$ | $g:\mathcal{Y}^n \to \{1,\dots,M\}$ |
系统的核心目标是:给定消息 $W$,经过信道传输后,译码器输出的 $\hat W$ 以很高的概率等于 $W$。
graph LR
W["信源
W ~ Unif{1..M}"] --> ENC["编码器
Xⁿ(W) ∈ Xⁿ"]
ENC --> CH["离散无记忆信道
p(y|x)"]
CH --> DEC["译码器
Ŵ = g(Yⁿ)"]
DEC --> WHAT(["Ŵ = W ?"])
CH -.-> FB["反馈(可选)"]
FB -.-> ENC
DEC -.-> FB
style CH fill:#dbeafe,stroke:#2563eb,color:#1e40af
style ENC fill:#fef9c3,stroke:#ca8a04,color:#854d0e
style DEC fill:#dcfce7,stroke:#16a34a,color:#166534
第5-6章刚学过压缩,那一章的目标是去掉冗余。可到了第7章,事情反过来了:为了抗噪声,编码器反而要人为加入冗余。两者看似矛盾,其实各自解决不同问题。
| 信源编码 | 信道编码 | |
|---|---|---|
| 任务 | 减少统计冗余 | 增加纠错冗余 |
| 目标 | 缩短平均描述长度 | 降低传输错误概率 |
| 理论核心 | 熵 $H(X)$ | 容量 $C$ |
| 典型问题 | 最少要多少比特表示消息 | 最多能以多高速率可靠传输 |
这两部分之所以能在现代通信系统中分开设计,最后靠的是本章后面会讲到的信源信道分离定理。
离散无记忆信道(Discrete Memoryless Channel, DMC)由三部分描述:
- 输入字母表 $\mathcal{X}$
- 输出字母表 $\mathcal{Y}$
- 转移概率 $p(y|x)$
"无记忆"表示第 $i$ 次输出只依赖于第 $i$ 次输入,与过去所有输入输出无关。若输入序列是 $x^n=(x_1,\dots,x_n)$,输出序列是 $y^n=(y_1,\dots,y_n)$,则
这条乘积结构是后面一切典型性分析的基础。
容量定义
对固定信道 $p(y|x)$,输入分布 $p(x)$ 决定联合分布
从而决定互信息
信道容量定义为
单位是 bit/信道使用。
为什么是互信息
$H(X)$ 是发送前输入的不确定性,$H(X|Y)$ 是观察输出后还剩下的不确定性,因此
正是通过信道以后真正被接收端"学到"的信息量。一个信道的传输能力,天然就该用这个量来衡量。
符号解释
- $p(x)$:输入分布,由发射端策略决定
- $p(y|x)$:信道噪声规律,信道本身决定
- $p(y)=\sum_x p(x)p(y|x)$:输出边际分布
- $I(X;Y)$:一次信道使用中,输出携带的关于输入的信息量
- $C$:把输入分布调到最佳时,单次使用最多能可靠通过多少 bit
信道容量有几个立刻就该记住的性质:
- 非负性:$C\ge 0$。因为互信息总非负。
- 上界:$C\le \log_2 |\mathcal{X}|$。单次信道使用最多区分 $|\mathcal{X}|$ 个输入状态。
- 凹性:固定 $p(y|x)$ 后,$I(X;Y)$ 关于 $p(x)$ 是凹函数,因此最大值问题是良性的。
这些性质看似简单,但后面求容量时非常有用。尤其是凹性,说明"调输入分布"本身就是一个合理的优化方向,而不会陷入很多局部最优陷阱。
容量定义是一个最大化问题,但具体求值常常并不容易。弱对称信道是最重要的一类可显式求解模型。
定义
若信道转移矩阵的各行互为排列,且所有列元素和相等,则称为弱对称信道。
对弱对称信道,容量在均匀输入分布下取得。这一结论极其重要,因为它把"最大化 $I(X;Y)$"直接简化成"代入均匀输入去算"。
具体而言,设信道有 $|\mathcal{X}|=m$ 个输入符号,输出符号集合记为 $\mathcal{Y}$,则
其中 $H(y|\mathcal{X})$ 是按行排列后每行的条件熵(各行相同)。
BSC 是信息论里最重要的信道模型之一。理解它的容量推导,就理解了整个容量计算的核心思路。
BSC 的定义
BSC 的交叉概率为 $p$:输入比特以概率 $p$ 翻转,以概率 $1-p$ 保持不变。转移矩阵为
为什么均匀输入最优
BSC 是弱对称信道,因此容量在均匀输入分布 $p(x=0)=p(x=1)=\frac12$ 时取得。
容量推导
当输入均匀分布时,输出分布也是 $p(y=0)=p(y=1)=\frac12$,于是
给定输入后,输出只是不确定是否翻转,所以
其中二元熵函数
由 $I(X;Y)=H(Y)-H(Y|X)$,得到
BSC 容量公式
直觉解释
- $p=0$ 时无噪声,$H_2(0)=0$,所以 $C=1$(完美传输)
- $p=0.5$ 时输出与输入完全独立,$H_2(0.5)=1$,所以 $C=0$(信道完全失去传输能力)
- 当 $p\to 0^+$ 时,$C\approx 1-\frac{p}{\ln 2}$,对弱噪声有很好的近似
下面是用 JSXGraph 绘制的 BSC 容量曲线:横轴是翻转概率 $p$(从 0 到 0.5),纵轴是容量 $C=1-H_2(p)$。注意 $p>0.5$ 时可以通过交换 0/1 标签等价回 $p\le 0.5$ 的情形。
BEC 的擦除概率为 $\epsilon$:每个输入比特以概率 $1-\epsilon$ 被正确接收,以概率 $\epsilon$ 变成一个特殊符号"?"(擦除)。
容量推导
设输入 $\mathcal{X}=\{0,1\}$,输出 $\mathcal{Y}=\{0,1,?\}$,转移概率:
若输入均匀分布,输出分布为:$p(Y=0)=p(Y=1)=\frac{1-\epsilon}{2}$,$p(Y=?)=\epsilon$。
计算熵:
给定输入后,若未擦除则完全确定,若擦除则输出为"?",因此
所以
BEC 容量公式
题目:设二元对称信道的翻转概率为 $p=0.1$,求其容量。
步骤 1:写出容量公式
步骤 2:计算二元熵
步骤 3:得到容量
也就是说,这条信道每使用一次,最多只能可靠传输约 0.531 bit 的信息。若系统试图长期以 0.8 bit/use 的速率稳定通信,就一定无法把错误概率压到任意小。
讲容量定理前,必须先把"通信方案"数学化。
一个 $(M,n)$ 码包括:
- 消息集合 $\{1,2,\dots,M\}$
- 编码函数 $f:\{1,\dots,M\}\to\mathcal{X}^n$,把每条消息映射为一个长度为 $n$ 的码字 $x^n(m)$
- 译码函数 $g:\mathcal{Y}^n\to\{1,\dots,M\}$,把接收到的 $y^n$ 映射回某条消息
码率定义为
含义是:用了 $n$ 次信道,一共传了 $\log_2 M$ bit 的消息,因此平均每次信道使用传了多少 bit。
若存在一列 $(M_n,n)$ 码,随着 $n\to\infty$,其最大错误概率趋于 0,且对应码率趋于 $R$,则称 $R$ 是可达码率。信道容量就是所有可达码率的上确界。
信道编码定理的证明核心工具不是某个具体码,而是联合典型性。这是 AEP 在双随机变量上的版本。
定义
设 $(X_i,Y_i)$ 独立同分布,联合分布为 $p(x,y)$。长度为 $n$ 的序列对 $(x^n,y^n)$ 属于联合典型集 $A_\epsilon^{(n)}$,当且仅当三个经验熵都接近理论熵:
可以把它理解成:一对真正来自联合分布的长序列,"看起来"就像"联合概率意义下最典型的那一类样本"。
联合 AEP 的三条关键性质
联合 AEP 定理(渐进均分性)
设 $(X_i,Y_i)$ i.i.d. $\sim p(x,y)$,则:
- 高概率集中:$P\big((X^n,Y^n)\in A_\epsilon^{(n)}\big)\to 1$,当 $n\to\infty$
- 集合大小:$|A_\epsilon^{(n)}|\approx 2^{nH(X,Y)}$
- 独立样本的低概率:若 $\tilde X^n$ 与 $\tilde Y^n$ 独立但边际分布相同,则
性质 3 的推导(关键!)
为什么独立样本落入联合典型集的概率大约是 $2^{-nI(X;Y)}$?这来自以下逻辑链:
$\tilde X^n$ 与 $\tilde Y^n$ 独立时,它们的联合概率是 $p(\tilde x^n)p(\tilde y^n)$,而非真实联合分布 $p(x,y)$。序列 $\tilde x^n$ 大约有 $2^{nH(X)}$ 种典型可能,$\tilde y^n$ 大约有 $2^{nH(Y)}$ 种典型可能。
而联合典型集 $|A_\epsilon^{(n)}|approx 2^{nH(X,Y)}$。因此当 $\tilde x^n$ 与 $\tilde y^n$ 恰好都在各自典型集内,且满足联合典型条件时,这一对序列的概率大约为
的倒数,即 $2^{-nI(X;Y)}$。
graph TD
subgraph 真实发送场景
TX["真实码字
Xⁿ(m)"] -->|信道传输| CH["信道 p(y|x)"]
TX -->|与 Yⁿ 同时来自同一联合分布| JT1["联合典型集
大概率落入"]
CH --> Y["接收序列 Yⁿ"]
end
subgraph 错误码字场景
TX2["错误码字
Xⁿ(m')"] -->|与 Yⁿ 独立| IT["独立配对"]
TX2 -->|概率约 2^{-nI}| JT2["恰好联合典型?
概率 2^{-nI}(指数小)"]
end
style JT2 fill:#fee2e2,stroke:#dc2626,color:#991b1b
style JT1 fill:#dcfce7,stroke:#16a34a,color:#166534
信道编码定理(香农第二定理):对任意离散无记忆信道,所有满足 $R<C$ 的码率都是可达的。反之,若 $R>C$,则错误概率不可能趋于 0。
这一定理分成两半:
- 正向定理:说明"容量以下可以做到"
- 逆定理:说明"容量以上绝不可能"
下面先重点把正向证明的思路拆清楚,这是整个信息论里最精彩的部分。
整个证明最核心的洞察是:随机码本的平均性能很好 → 必然存在一个具体的好码本。下面按五步拆解。
第一步:随机生成码本
固定一个输入分布 $p(x)$。对每条消息 $m\in\{1,\dots,2^{nR}\}$,独立随机生成一个码字
其中每个分量都按 $p(x)$ 独立采样。整个码本($2^{nR}$ 个码字)记作 $\mathcal{C}$。
为什么用随机码本
随机码本不是实际使用的方案,而是证明工具。我们先证明:如果从足够大的随机候选集合里平均来看已经很好,那么必然存在一个具体码本也很好。这叫"平均 argument"(over randomness argument)。
第二步:发送真实消息
假设消息 $W$ 在 $\{1,\dots,2^{nR}\}$ 上均匀分布。发送端把对应码字 $X^n(W)$ 送入信道,接收端观察到输出 $Y^n$。
第三步:联合典型译码
译码器寻找唯一一个消息 $\hat m$,使得
如果没有这样的消息,或有多个这样的消息,就判为错误。
第四步:把错误事件拆成两类
不妨假设发的是消息 1。错误可分成:
- $E_0$:真实码字和接收序列不联合典型,即 $(X^n(1),Y^n)\notin A_\epsilon^{(n)}$
- $E_i$($i\ge 2$):某个错误消息 $i$ 的码字反而和 $Y^n$ 联合典型
由并集界
第五步:分别估计两项
对 $E_0$:由于真实对 $(X^n(1),Y^n)$ 的确来自联合分布,联合 AEP 性质 1 给出
对每个 $E_i$($i\ge 2$):注意错误码字 $X^n(i)$ 与接收序列 $Y^n$ 是独立的(因为 $X^n(i)$ 来自独立随机采样,与真实发送的码字和输出都独立),所以由联合 AEP 性质 3
而一共有大约 $2^{nR}$ 个错误码字,因此
综合得到
只要
第二项就随 $n$ 指数衰减到 0。对输入分布取最大值,便得到:所有 $R<C$ 都可达,其中
证明的核心洞察:指数为什么是关键
错误码字总数大约是 $2^{nR}$,每个错误码字伪装成真的概率大约是 $2^{-nI(X;Y)}$。只要 $R < I(X;Y)$,即"码字数量增长速度"慢于"伪装概率衰减速度",两者乘积就随 $n$ 指数下降。这解释了为什么容量公式是 $\max I(X;Y)$——它就是随机编码误差分析中自然冒出来的指数门槛。
题目:某 DMC 在某个输入分布下满足 $I(X;Y)=0.8$ bit/use。若系统尝试用随机编码以 $R=0.6$ bit/use 传输,问为什么这可行?若改成 $R=0.95$ bit/use,会发生什么?
解答
随机编码误差分析给出误差上界
当 $R=0.6$ 时,选择足够小的 $\epsilon$ 使得
于是第二项随 $n$ 指数下降,错误概率可趋于 0。所以该速率在这个输入分布下可达。
若 $R=0.95$,则
此时错误码字数量增长太快,联合典型误判项无法压下去。至少用这个输入分布不可能可靠。若该信道容量 $C\le 0.8$,则任何 $R=0.95$ 的方案都不可能可靠。
正向定理说明了"存在性",逆定理则说明容量真的是硬上限。
逆定理通常借助费诺不等式。设消息 $W$ 在 $M$ 条消息上均匀分布,译码结果为 $\hat W$,则费诺不等式给出
另一方面,由数据处理不等式与链式法则可以推出
再结合
就会得到:若错误概率真的趋于 0,则必须有 $R\le C$。因此 $R>C$ 的可靠传输不可能实现。
正向定理说"容量以下有路",逆定理说"容量以上无路"。两边夹住,容量才成为完整答案。
为了感受香农定理的威力,看看几个传统方案:
重复码
每个比特重复发送 $n$ 次,多数表决译码。它确实能降低错误率,但码率只有 $1/n$,随着可靠性提高反而趋向 0。
奇偶校验码
在若干信息位后附加校验位,可以检测部分错误,但通常不能纠错,能力有限。
Hamming 码
例如 $(7,4)$ Hamming 码,用 7 位传 4 位信息,最小距离为 3,可纠正 1 位错误。它是结构非常漂亮的线性码,但离一般信道容量仍有差距。
这些例子告诉我们:香农定理说的是存在非常好的长码,不代表随便一个短码就能逼近容量。
如果接收端把过去收到的内容反馈给发送端,发送端就能边发边调整策略。这听起来应该更强,但对离散无记忆信道,结论很克制:
也就是说,反馈不能提高 DMC 的容量。
为什么这不矛盾?因为容量衡量的是"长期可靠通信速率上限",而无记忆信道每次传输的统计规律并不会因反馈改变。反馈可以帮助:
- 简化编解码策略
- 改进有限码长性能
- 降低时延或复杂度
但它改变不了单次信道中能通过多少新信息这一根本上限。
这是本章和前两章最重要的连接。
设信源熵率为 $H$,信道容量为 $C$。分离定理说:
- 若 $H<C$,则信源可以被可靠传输
- 若 $H>C$,则不可能可靠传输
为什么成立
若 $H<C$,先用信源编码把冗余压缩掉,使输出速率接近 $H$;再用信道编码把它嵌进一个小于 $C$ 的可靠信道码里。前者解决"消息太长",后者解决"信道太吵"。
若 $H>C$,即使压缩到理论极限,消息率仍然高于信道可承受的可靠速率,因此无论怎样设计都无解。
- 与第2章:容量定义直接建立在互信息 $I(X;Y)$ 上
- 与第3章:联合典型集与联合 AEP 是信道编码定理正向证明的技术核心
- 与第5-6章:信源编码负责把消息率压到接近熵,分离定理把二者接起来
- 与后续高斯信道章节:第7章给出离散容量框架,第9章把它推广到连续高斯模型
因此,第7章在整门信息论里的地位非常核心:它把"信息量"从描述问题推进到了传输问题。
复习速查
容量定义
- DMC:$p(y^n|x^n)=\prod_i p(y_i|x_i)$
- 容量:$C=\max_{p(x)} I(X;Y)$,单位 bit/信道使用
- 性质:$C\ge 0$;$C\le \log_2|\mathcal{X}|$;$I(X;Y)$ 对 $p(x)$ 凹
典型信道容量
- 弱对称信道:均匀输入达到容量 $C=\log_2|\mathcal{Y}|-H(y|\mathcal{X})$
- BSC:$C=1-H_2(p)$,其中 $H_2(p)=-p\log_2 p-(1-p)\log_2(1-p)$
- BEC:$C=1-\epsilon$
联合典型集性质
- 高概率:$P\big((X^n,Y^n)\in A_\epsilon^{(n)}\big)\to 1$
- 集合大小:$|A_\epsilon^{(n)}|approx 2^{nH(X,Y)}$
- 独立样本:$P\big((\tilde X^n,\tilde Y^n)\in A_\epsilon^{(n)}\big)approx 2^{-nI(X;Y)}$
信道编码定理(香农第二定理)
- 正向:$R<C$ 时可达(随机编码 + 联合典型译码)
- 逆:$R>C$ 时不可靠
五步法核心
- 随机生成 $2^{nR}$ 个码字(均匀输入分布)
- 发送真实消息 $W$
- 联合典型译码:找唯一满足 $(X^n(\hat m),Y^n)\in A_\epsilon^{(n)}$ 的 $\hat m$
- 错误事件:$E_0$(真实对不典型)+ $E_i$(错误码字碰巧典型)
- 上界:$P_e^{(n)}\le \epsilon + 2^{nR}\cdot 2^{-n(I(X;Y)-\epsilon)}$,$R<I(X;Y)$ 时指数衰减
分离定理
- 若 $H<C$:先压缩至接近 $H$,再信道编码嵌进可靠码
- 若 $H>C$:无论怎样设计都无解
参考来源
- 课程课件《第七章 信道容量》(中国科学技术大学 刘斌):信道容量定义、对称信道、BSC/BEC、联合典型集、信道编码定理、反馈信道、分离定理
- Georgia Tech ECE587 课程页面:Lecture 12-16 覆盖 channel capacity、joint typicality、channel coding theorem、feedback、separation
- UMD ENEE627 课程页面:Lecture 13-20 覆盖 channel capacity、jointly typical sequences、Shannon theorem、feedback capacity、source-channel separation
- Cover & Thomas, Elements of Information Theory, Chapter 7