率失真理论

数据率失真理论（Rate distortion theory）或稱信息率-失真理論（information rate-distortion theory）是信息论的主要分支，其的基本问题可以归结如下：对于一个给定的信源（source, input signal）分布与失真度量，在特定的码率下能达到的最小期望失真；或者为了满足一定的失真限制，可允許的最大码率為何，D 定義為失真的符號。 要完全避免失真幾乎不可能。處理信號時必須允許有限度的失真﹐可減小所必需的信息率。1959年﹐Claude Shannon 首先發表《逼真度準則下的離散信源編碼定理》一文，提出了率失真函數的概念。 失真函數能量化輸入與輸出的差異，以便進行數學分析。令輸入信號為 χ {\displaystyle \chi } ，輸出信號為 χ ^ {\displaystyle {\hat {\chi }}} ，定義失真函數為 d ( χ , χ ^ ) {\displaystyle d(\chi ,{\hat {\chi }})} ，失真函數可以有多種定義，其與對應域為非負實數： d : χ × χ ^ → R + {\displaystyle d:\chi \times {\hat {\chi }}\rightarrow R_{+}} 。 漢明失真函數能描述錯誤率，定義為： d ( x , x ^ ) = { 0 , if  x = x ^ 1 , if  x ≠ x ^ {\displaystyle d(x,{\hat {x}})={\begin{cases}0,&{\text{if }}x={\hat {x}}\\1,&{\text{if }}x\neq {\hat {x}}\end{cases}}} ， 對漢明失真函數取期望值即為傳輸錯誤率。 最常用於量測連續字符傳輸的失真，定義為： d ( x , x ^ ) = ( x − x ^ ) 2 {\displaystyle d(x,{\hat {x}})=(x-{\hat {x}})^{2}} ， 平方誤差失真函數不適用於語音或影像方面，因為人類感官對於語音或影像的平方誤差失真並不敏感。 下列是率與失真（rate and distortion）的最小化關係函數: inf Q Y | X ( y | x ) I Q ( Y ; X )   subject to   D Q ≤ D ∗ . {\displaystyle \inf _{Q_{Y|X}(y|x)}I_{Q}(Y;X)\ {\mbox{subject to}}\ D_{Q}\leq D^{*}.} 這裡 QY | X(y | x), 有時被稱為一個測試頻道 （test channel）, 係一種條件機率之機率密度函數 (PDF)，其中頻道輸出 (compressed signal) Y 相對於來源 (original signal) X, 以及 IQ(Y ; X) 是一種互信息（Mutual Information），在 Y 與 X 之間被定義為 I ( Y ; X ) = H ( Y ) − H ( Y | X ) {\displaystyle I(Y;X)=H(Y)-H(Y|X)\,} 此處的 H(Y) 與 H(Y | X) 是指信宿（output signal） Y 的熵（entropy）以及基於信源（source signal）和信宿（output signal）相關的條件熵（conditional entropy）, 分別為: H ( Y ) = − ∫ − ∞ ∞ P Y ( y ) log 2 ⁡ ( P Y ( y ) ) d y {\displaystyle H(Y)=-\int _{-\infty }^{\infty }P_{Y}(y)\log _{2}(P_{Y}(y))\,dy} H ( Y | X ) = − ∫ − ∞ ∞ ∫ − ∞ ∞ Q Y | X ( y | x ) P X ( x ) log 2 ⁡ ( Q Y | X ( y | x ) ) d x d y . {\displaystyle H(Y|X)=-\int _{-\infty }^{\infty }\int _{-\infty }^{\infty }Q_{Y|X}(y|x)P_{X}(x)\log _{2}(Q_{Y|X}(y|x))\,dx\,dy.} 這一樣來便可推導出率失真的公式, 相關表示如下: inf Q Y | X ( y | x ) E [ D Q [ X , Y ] ] subject to   I Q ( Y ; X ) ≤ R . {\displaystyle \inf _{Q_{Y|X}(y|x)}E[D_{Q}[X,Y]]{\mbox{subject to}}\ I_{Q}(Y;X)\leq R.} 這兩個公式之間互為可逆推。 如果我們假設 PX(x) 服从正态分布且方差为σ2, 並且假設 X 是連續时间独立訊號（或等同於來源無記憶或訊號不相關），我們可以發現下列的率失真公式的「公式解」（analytical expression）: R ( D ) = { 1 2 log 2 ⁡ ( σ x 2 / D ) , if  0 ≤ D ≤ σ x 2 0 , if  D > σ x 2 . {\displaystyle R(D)=\left\{{\begin{matrix}{\frac {1}{2}}\log _{2}(\sigma _{x}^{2}/D),&{\mbox{if }}0\leq D\leq \sigma _{x}^{2}\\\\0,&{\mbox{if }}D>\sigma _{x}^{2}.\end{matrix}}\right.} 下圖是本公式的幾何面貌: 率失真理論告訴我們“沒有壓縮系統存在於灰色區塊之外”。可以說越是接近紅色邊界，執行效率越好。一般而言，想要接近邊界就必須透過增加碼塊（coding block）的長度參數。然而，塊長度（blocklengths）的取得則來自率失真公式的量化（quantizers）有關。 這樣的率失真理論（rate–distortion function）僅適用於高斯無記憶信源（Gaussian memoryless sources）。 伯努利信號源 X {\displaystyle X} ， X ∼ B e r n o u l l i ( p ) {\displaystyle X\thicksim Bernoulli(p)} ，以漢明失真描述的率失真函數為： R ( D ) = { H ( p ) − H ( D ) , 0 ≤ D ≤ m i n { p , 1 − p } 0 , D ≥ m i n { p , 1 − p } {\displaystyle R(D)={\begin{cases}H(p)-H(D),&0\leq D\leq min\{p,1-p\}\\0,&D\geq min\{p,1-p\}\end{cases}}} 平行高斯信號源的率失真函數為一經典的反注水算法(Reverse water-filling algorithm)，我們可以找出一閾值 λ {\displaystyle \lambda } ，只有方差大於 λ {\displaystyle \lambda } 的信號源才有必要配置位元來描述，其他信號源則可直接傳送與接收，不會超過最大可容許的失真範圍。 我們可以使用平方誤差失真函數，計算平行高斯信號源的率失真函數。注意，此處信號源不一定同分佈： X 1 , X 2 . . . , X m {\displaystyle X_{1},X_{2}...,X_{m}} 且 X i ∼ N ( 0 , σ i 2 ) {\displaystyle X_{i}\thicksim N(0,\sigma _{i}^{2})} ，此時率失真函數為， R ( D ) = ∑ i = 1 m 1 2 l o g σ i 2 D i {\displaystyle R(D)=\sum _{i=1}^{m}{1 \over 2}log{{\sigma _{i}^{2}} \over {D_{i}}}} 其中， D i = { λ , if  λ < σ i 2 σ i 2 , if  λ ≥ σ i 2 {\displaystyle D_{i}={\begin{cases}\lambda ,&{\text{if }}{\lambda }<{\sigma _{i}^{2}}\\\sigma _{i}^{2},&{\text{if }}{\lambda }\geq {\sigma _{i}^{2}}\end{cases}}} 且 λ {\displaystyle \lambda } 必須滿足限制： ∑ i = 1 m D i = D {\displaystyle \sum _{i=1}^{m}D_{i}=D} 。 Thomas M. Cover, Joy A. Thomas. Elements of Information Theory. John Wiley & Sons, New York. 2006.