6.5 フィードバックのある通信路
ここまで,送る側は符号語を決めたら最後まで送りきるものとしてきた.受け取る側に何が届いたかは,送る側には分からない.では,受け取る側が受け取った記号をそのつど送る側へ完全に返せるとしたら,つまり次の記号を決めるまでに,いま何が届いたかを送る側が知っていられるとしたら,容量は増えるだろうか.
直感は「増える」と答える.送る側は通信路がいまどう振る舞ったかを見て次の入力を選べる.消失したと分かればもう一度送ればよいし,雑音の出方に合わせて送るものを変えることもできる.何も知らずに送りっぱなしにするより,賢く振る舞えるはずである.ところが答えは,容量は増えない,である.この意外さが本節の主題で,なぜ増えないのか,そして増えないのにフィードバックの何が有用なのかを見る.
フィードバック符号
定義 6.5.1(フィードバック符号). 長さ𝑛の フィードバック符号 とは,メッセージ数𝑀 ≥1,符号化写像の族𝑐𝑖 :{1,…,𝑀} ×Y𝑖 →X(𝑖 =0,…,𝑛 −1),復号器𝑑 :Y𝑛 →{1,…,𝑀}の組である.メッセージ𝑚を送るとき,時刻𝑖の入力を
𝑥𝑖=𝑐𝑖(𝑚,𝑦<𝑖),𝑦<𝑖:=(𝑦0,…,𝑦𝑖−1)で定める.すなわち,時刻𝑖の入力はそれまでに受け取られた出力に依存してよい.レート は𝑅 :=1𝑛log𝑀,メッセージ𝑚の 誤り確率 は𝑃𝑒(𝑚) :=Pr[𝑑(𝑌𝑛) ≠𝑚](𝑌𝑛はこの手順で通信路を𝑛回使ったときの出力)とし,最大誤り確率 と 平均誤り確率 は定義 6.2.1 と同じく𝑚についての最大と平均で定める.
𝑐𝑖が𝑦<𝑖によらない場合が定義 6.2.1 のブロック通信路符号である.すなわちフィードバック符号は定義 6.2.1 の符号をすべて含む.だから,フィードバックを許して達成できるレートの範囲は,少なくとも許さないときと同じだけはある.本節の内容は,それが広がりもしない,ということである.
返せるとしたら,を問うている. 定義 6.5.1 が置いている前提は強い.受け取る側の記号が遅れなく,誤りもなく送る側へ戻るとしている.現実の通信路でそれが可能かは別の問いで,ここでは可能だとしたら何が変わるかを問うている.実際にはフィードバックの経路自身も雑音をもつので,この定義は「フィードバックがいちばん有利に働いたとき」を表している.それでも容量が増えないなら,雑音のあるフィードバックでも増えない.
記憶のなさと因果性
定義 6.5.2(フィードバックのもとで各時刻で記憶がない). 確率変数Msg,入力の組𝑋𝑛 =(𝑋0,…,𝑋𝑛−1),出力の組𝑌𝑛 =(𝑌0,…,𝑌𝑛−1)が フィードバックのもとで各時刻で記憶がない とは,すべての𝑖について
(𝑌<𝑖,Msg)→𝑋𝑖→𝑌𝑖がマルコフ連鎖(定義 1.8.3)をなすことをいう.ここで𝑌<𝑖 :=(𝑌0,…,𝑌𝑖−1)である.
一つの条件が二つのことを同時に言っている.一つは記憶のなさで,時刻𝑖の入力さえ決まれば出力はそれまでに何が受け取られたかによらない.もう一つは因果性で,𝑋𝑖を決めてしまえば出力はメッセージそのものを覗き見ない.言い換えれば,メッセージの影響は入力を通ってしか届かない.
条件に並んでいるのが過去の出力とメッセージであって,他の時刻の入力ではないことに注意したい.定義 6.4.4 は他の時刻の入出力を条件に置いていた.フィードバックがあると𝑋𝑖が過去の出力の関数になるので,入力どうしの独立性を問う形にはもう意味がない.代わりに,𝑋𝑖を決めるのに使えた情報(過去の出力とメッセージ)をすべて条件に並べ,それでも𝑌𝑖は𝑋𝑖しか見ないと述べている.
1 時刻ごとの評価
補題 6.5.3. 𝑛 ≥1とし,Msg,𝑋𝑛 =(𝑋0,…,𝑋𝑛−1),𝑌𝑛 =(𝑌0,…,𝑌𝑛−1)をフィードバックのもとで各時刻で記憶がない(定義 6.5.2)確率変数の組とする.このとき各𝑖について
𝐼(Msg;𝑌𝑖∣𝑌<𝑖)≤𝐼(𝑋𝑖;𝑌𝑖)が成り立つ.
証明. 𝐿 :=(𝑌<𝑖,Msg)とおく.定義 6.5.2 は𝐿 →𝑋𝑖 →𝑌𝑖がマルコフ連鎖であることをいうので,定理 1.8.4 より𝐼(𝐿;𝑌𝑖) ≤𝐼(𝑋𝑖;𝑌𝑖)である.
いっぽう定理 1.5.1 を𝑍 ←𝑌<𝑖,𝑋 ←Msg,𝑌 ←𝑌𝑖として当てると
𝐼(𝐿;𝑌𝑖)=𝐼(𝑌<𝑖;𝑌𝑖)+𝐼(Msg;𝑌𝑖∣𝑌<𝑖)であり,命題 1.3.2 より第 1 項は非負だから𝐼(Msg;𝑌𝑖 ∣𝑌<𝑖) ≤𝐼(𝐿;𝑌𝑖)である.二つを合わせて主張を得る.◻
補題 6.5.3 が本節の核である.左辺は「これまでに受け取ったものを踏まえたうえで,時刻𝑖の出力がメッセージについて新しく教えてくれる情報」,右辺は「時刻𝑖の入力と出力が共有する情報」である.フィードバックは左辺の側にいくらでも仕掛けを入れられる.過去の出力を見て𝑋𝑖を選び直せるからである.しかしその結果はやはり右辺で抑えられる.フィードバックが変えられるのは各時刻の入力の選び方だけで,選んだ入力に対して通信路が運べる量そのものではない,というのがこの補題の内容である.
フィードバック逆定理
定理 6.5.4. 𝑀 ≥2,𝑛 ≥1とし,𝐶を実数とする.Msgを{1,…,𝑀}上の一様分布に従う確率変数,𝑋𝑛 =(𝑋0,…,𝑋𝑛−1),𝑌𝑛 =(𝑌0,…,𝑌𝑛−1)を有限集合に値をとる確率変数の組,𝑑を𝑌𝑛の値から{1,…,𝑀}への写像とし,𝑃𝑒 :=Pr[𝑑(𝑌𝑛) ≠Msg]とおく.組がフィードバックのもとで各時刻で記憶がなく(定義 6.5.2),かつすべての𝑖で𝐼(𝑋𝑖;𝑌𝑖) ≤𝐶なら
log𝑀≤𝑛𝐶+𝐻𝑏(𝑃𝑒)+𝑃𝑒log(𝑀−1)が成り立つ.
証明. 定理 6.4.1 を,観測を𝑌𝑛,復号器を𝑑として当てると
log𝑀≤𝐼(Msg;𝑌𝑛)+𝐻𝑏(𝑃𝑒)+𝑃𝑒log(𝑀−1)である.第 1 項を𝑛𝐶で抑えればよい.
相互情報量は対称(命題 1.3.3)だから𝐼(Msg;𝑌𝑛) =𝐼(𝑌𝑛;Msg)である.定理 1.5.2 を,変数列𝑌0,…,𝑌𝑛−1と,相手側の変数Msgとして当てると
𝐼(𝑌𝑛;Msg)=𝑛−1∑𝑖=0𝐼(𝑌𝑖;Msg∣𝑌<𝑖)となる.条件付き相互情報量も対称(命題 1.4.2)なので,各項は𝐼(Msg;𝑌𝑖 ∣𝑌<𝑖)に等しい.これを補題 6.5.3 で𝐼(𝑋𝑖;𝑌𝑖)で抑え,仮定でさらに𝐶で抑えると,和は𝑛𝐶以下である.◼
分解の軸を入力から出力に取り替える. 6.4 節の逆定理は,まず系 6.4.2 で𝐼(Msg;𝑌𝑛)を𝐼(𝑋𝑛;𝑌𝑛)に移し,そこから入力の側でチェイン則を使った(定理 6.4.3).フィードバックがあると最初の一歩が壊れる.𝑋𝑖が過去の出力の関数になるので,メッセージから出力への影響が符号語だけを通るとはいえなくなり,Msg →𝑋𝑛 →𝑌𝑛はもうマルコフ連鎖ではない.出力が入力へ回り込むからである.そこで𝐼(Msg;𝑌𝑛)をそのまま抱えたまま,出力の側でチェイン則を使う.分解の軸を入力から出力へ取り替えたことが,この節の技術的な要点である.回り込みが起きる軸を避けて,起きない軸で分解した,と読める.
フィードバックは容量を増やさない
系 6.5.5(フィードバックは容量を増やさない). 𝑊を通信路(定義 6.1.1)とする.第𝑛項が長さ𝑛の符号であるフィードバック符号の族(𝑀𝑛,(𝑐𝑛,𝑖)𝑖,𝑑𝑛)𝑛≥1が,最大誤り確率𝑃(𝑛)𝑒,max →0を満たし,レートの列𝑅𝑛 =1𝑛log𝑀𝑛が上に有界であるとする.このときlim inf𝑛𝑅𝑛 ≤𝐶(𝑊)である.
証明. 達成可能性が最大誤り確率で書かれているのでメッセージには一様分布を入れてよく,𝑃(𝑛)𝑒 :=Pr[𝑑𝑛(𝑌𝑛) ≠Msg]は平均誤り確率に等しくて𝑃(𝑛)𝑒 ≤𝑃(𝑛)𝑒,max →0である.𝑀𝑛 ≥1より𝑅𝑛 ≥0であり,𝛿𝑛 :=𝐻𝑏(𝑃(𝑛)𝑒)/𝑛 +𝑃(𝑛)𝑒𝑅𝑛とおくと,これは非負で,(𝑅𝑛)の有界性と合わせて補題 6.4.7 より𝛿𝑛 →0である.𝑀𝑛 =1の𝑛では𝑅𝑛 =0で,命題 6.1.6 より𝑅𝑛 ≤𝐶(𝑊) ≤𝐶(𝑊) +𝛿𝑛が成り立つ.以下𝑀𝑛 ≥2とする.
定理 6.5.4 の仮定を確かめる. 時刻𝑖の入力は𝑋𝑖 =𝑐𝑛,𝑖(Msg,𝑌<𝑖)であり,それを通信路に通すのだから,(Msg,𝑌<𝑖)を知ったうえでの𝑌𝑖の条件付き分布は𝑊( ⋅ ∣𝑋𝑖)である.これは𝑋𝑖だけで決まるので,組はフィードバックのもとで各時刻で記憶がない(定義 6.5.2).同じ条件付き分布を(Msg,𝑌<𝑖)について平均すれば,𝑋𝑖だけで条件付けても𝑊( ⋅ ∣𝑋𝑖)である.よって𝑋𝑖の分布を𝑝𝑖と書けば対(𝑋𝑖,𝑌𝑖)の同時分布は𝑝𝑖(𝑥)𝑊(𝑦 ∣𝑥)であり,命題 6.1.3 と定義 6.1.4 より𝐼(𝑋𝑖;𝑌𝑖) =𝐼(𝑝𝑖;𝑊) ≤𝐶(𝑊)である.
定理 6.5.4 を𝐶 ←𝐶(𝑊)として使い,𝑛で割ると
𝑅𝑛≤𝐶(𝑊)+𝐻𝑏(𝑃(𝑛)𝑒)𝑛+𝑃(𝑛)𝑒log(𝑀𝑛−1)𝑛である.𝑀𝑛 ≥2よりlog(𝑀𝑛 −1) ≤log𝑀𝑛 =𝑛𝑅𝑛だから,右辺の第 3 項は𝑃(𝑛)𝑒𝑅𝑛以下であり,𝑅𝑛 ≤𝐶(𝑊) +𝛿𝑛を得る.どの𝑛でもこれが成り立ち𝛿𝑛 →0だから,両辺で下極限をとって主張を得る.◼
系 6.5.5 が示したのは片側だけである.𝐶(𝑊)未満のレートがフィードバックを使っても達成できるというもう片側は,定義 6.5.1 の直後に見たとおり,フィードバックを使わない符号がそのままフィードバック符号になることから出る.定理 6.3.7 が作った符号をそのまま使えばよい.二つを合わせると,フィードバックのあるなしで到達できるレートの範囲は変わらない.
最大をとったあとでは動かせない. 増えない理由は,補題 6.5.3 と容量の定義の組み合わせに尽きる.フィードバックが与えるのは各時刻の入力分布を履歴に応じて選び直す自由だが,𝐶(𝑊)はもともと入力分布のすべてにわたる最大値(定義 6.1.4)である.どの時刻にどんな分布を選んでも,その時刻に運べる量は最大値を超えない.すでに最大をとってある量は,選び方を工夫しても動かない.
増えないのに,何が変わるのか
例 6.5.6(消失した記号を送り直す). 𝜂 ∈[0,1],𝑛 ≥1とし,消失確率𝜂の二元消失通信路(例 6.1.9)にフィードバックを付ける.送る側は,いま送ったビットが届いたか消失したかを,次の入力を決めるまでに知ることができる.そこで,消失していたら同じビットをもう一度送り,届いていたら次のビットへ進む,という方式をとる.𝑛回の使用でこの方式が運ぶビット数を𝑁𝑛とすると
𝔼[𝑁𝑛]=(1−𝜂)𝑛である.
証明. 時刻𝑖の出力が消失でないという事象の指示変数を𝑍𝑖とおく.例 6.1.9 の通信路では𝑊( ∗ ∣𝑥) =𝜂が入力によらないので,送る側が何を選んでもPr[𝑍𝑖 =1] =1 −𝜂であり,𝔼[𝑍𝑖] =1 −𝜂である.
この方式では,消失しなかった記号がそのつどちょうど 1 ビットを運ぶ.届いた記号がどのビットのものかは,受け取る側も消失の位置を見ているので分かる.よって𝑛回で運ばれたビット数は𝑁𝑛 =∑𝑛−1𝑖=0𝑍𝑖であり,期待値の線形性から𝔼[𝑁𝑛] =(1 −𝜂) 𝑛を得る.◼
𝜂 =1は全時刻が消失する縮退した場合で,この方式は 1 ビットも進まない.そのときは右辺も 0 になるので,等式はそのまま成り立っている.
1 回の使用あたり平均1 −𝜂ビットであり,これは例 6.1.9 で計算した容量とちょうど同じ値である.𝜂 =0.1なら𝑛回で運べるビット数の期待値は0.9 𝑛,すなわち 1 回あたり0.9ビットである.
この方式には符号語も復号器の設計も入っていない.届かなければもう一度送るだけで,𝑛を大きくとる必要さえない.同じレートにフィードバックなしで達するには,6.3 節のランダム符号化と結合典型復号器が要った.しかも作れることが分かるだけで,どの符号帳が当たりかは分からないままだった.フィードバックが変えるのは,到達できるレートではなく,そこへ届くための手間である.系 6.5.5 が否定しているのは前者だけで,後者については何も言っていない.
なお,この方式で1 −𝜂未満のどのレートでも誤り確率が 0 に向かうことまで言うには,𝑁𝑛が期待値のまわりに集中することを示す必要がある.ここでは期待値の計算までにとどめる.
InformationTheory — 形式化検証つき情報理論教科書(レビュー版).数式は MathJax + AMS Euler で事前レンダリング.