研究紹介 expander 符号

22
研研研研 Expander 研研 研研研研 2008 研 4 研研研

Upload: sherry

Post on 23-Feb-2016

72 views

Category:

Documents


0 download

DESCRIPTION

研究紹介 Expander 符号. 安永憲司 2008 年 4 月某日. 目次. 線形符号 用語の定義 生成行列、パリティ検査行列、 Tanner グラフ e xpander 符号 expander グラフ [ Sipser - Spieleman ‘ 96] expander 符号 の 構成 bit-flipping 復号法 まとめ 参考文献. 誤り訂正符号. 送信メッセージに冗長性をもたせることで 通信路における誤りを訂正することができる. 符号語 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 研究紹介 Expander  符号

研究紹介

Expander 符号

安永憲司2008 年 4 月某日

Page 2: 研究紹介 Expander  符号

目次

線形符号 用語の定義 生成行列、パリティ検査行列、 Tanner グラフ

expander 符号 expander グラフ [Sipser-Spieleman ‘96]

expander 符号の構成 bit-flipping 復号法

まとめ

参考文献

2

Page 3: 研究紹介 Expander  符号

誤り訂正符号

送信メッセージに冗長性をもたせることで通信路における誤りを訂正することができる

3

符号化器

復号器

通信路

送信メッセージ( m1, m2, …, mk )

符号語( x1, x2, …, xk, xk+1, …, xn )

( m’1, m’2, …, m’k )復号結果 ( y1, y2, …, yk, yk+1, …, xn )

受信語

Page 4: 研究紹介 Expander  符号

線形符号

符号 C とは 符号化関数 Enc : {0, 1}k → {0, 1}n

n : 符号長、 k : 情報記号数(メッセージ長) Enc は単射

ベクトルの集合 S {0, 1}⊆ n

k = log2 |S|

C が線形符号 ⇔ Enc が線形関数 ⇔ S が線形空間

C の最小距離

C の相対最小距離 δ = d/n

C のレート R = k/n4

)(min),(min 21,21

21

cwccdd HCcHcc

Ccc

線形符号の場合

Page 5: 研究紹介 Expander  符号

どんな符号を作りたいか

最小距離が大きい 誤り訂正能力が高くなる

レートが大きい なるべく冗長性を小さく

符号化の計算量が小さい 線形符号なら O(n2)

復号の計算量が小さい

いろんな n, k をとることができる 符号族 C = {C1, C2, ・・・ };

Ci は符号長 ni の符号であり ni < nj for i < j

5

Page 6: 研究紹介 Expander  符号

線形符号の例

例 1. C1 = {00000, 11100, 00111, 11011} ∀x1, x2∈C1, x1+x2 ∈C1 なので C1 は線形符号 n = 5, k = log2|C1| = 2, R = 2/5, d = 3

例 2. C2 = {00 0, 11 1}‥ ‥ k = log2|C2| = 1, R = 1/n, d = n

例 3. E1 (x) = x◦x◦x; ◦ : ベクトルの連接

R = 1/3, d = 3

6

Page 7: 研究紹介 Expander  符号

生成行列・パリティ検査行列

線形符号 C は生成行列 G もしくはパリティ検査行列 H で定義される

G : k×n 行列 ; x が C の符号語 ⇔ x = mG for some m {0,1}∈ k

H : (n – k)×n 行列 ; x が C の符号語 ⇔ HxT = 0

7

Page 8: 研究紹介 Expander  符号

生成行列・パリティ検査行列の例

C1 = {00000, 11100, 00111, 11011}

G1 =

H1 =

x = (x1, x2, , ‥ x5) ∈ C1 ⇔

8

1110000111

101010001111000 x1+x3+x5=0

x4+x5=0 を満たすx1+x2=0

これが線形制約なので線形符号であるともいえる

Page 9: 研究紹介 Expander  符号

Tanner グラフ

パリティ検査行列を2部グラフで表現したもの [Tanner ‘84]

Tanner グラフ G := (L, R, E), L : 左頂点集合 , 符号語の各ビットに対応 , |L| = n R : 右頂点集合 , 線形制約に対応 , |R| = n – k E : 辺集合 , 検査行列の1の要素に対応 符号語

⇔ すべての右頂点において、値1をもつ隣接する 左頂点の数が偶数

9

Page 10: 研究紹介 Expander  符号

Tanner グラフの例

C1 = {00000, 11100, 00111, 11011}

H1 =

10

x1

x2

x3

x4

x5

変数ノード 制約ノード

101010001111000

Page 11: 研究紹介 Expander  符号

LDPC 符号

低密度パリティ検査 (low density parity check) 符号

パリティ検査行列で1が少ない符号= Tanner グラフで枝数が少ない符号 Tanner グラフで左頂点の次数が定数のものなど

[Gallager ‘63] で導入

線形時間復号法( belief propagation, sum product )で非常にすぐれた誤り特性を示すことから、ここ 10 年非常に研究が活発

11

Page 12: 研究紹介 Expander  符号

Tanner グラフで最小距離を大きくするには?

最小距離が d ⇔ Tanner グラフにおいて、サイズ d – 1 以下の任意の左頂点集合 S に対し、 S と奇数本接続している右頂点が存在

ここで、各 S は1つの右頂点に3本以上接続しないとする

このとき、最小距離を大きくするには、各 S に対し1本しか接続しない右頂点 (unique neighbor) が存在すればよい

⇒ あるサイズ以下のすべての左頂点集合 S が、多くの右頂点に 接続しているグラフであればよい(左頂点次数が低い場合)

⇒  expander グラフの利用 [Sipser-Spielman ‘96]

12

Page 13: 研究紹介 Expander  符号

expander グラフ

グラフ中の枝数が少ないにもかかわらず、各ノードが非常によい連結性を持つグラフ expander の定義の仕方は何通りもある ランダムに構成したグラフは expander の性質を満たす

グラフ G = (V, E) が (α, β) expander⇔ すべての S⊆V s.t. |S|≦α|V| に対して |Γ(S)|≧β|S| Γ(S) : 頂点集合 S 内の頂点と隣接する頂点の集合

2部グラフ G = (L, R, E) が (α, β) expander⇔ すべての S⊆L s.t. |S|≦α|L| に対して |Γ(S)|≧β|S|

左頂点次数が小さく(ある定数 l )、 β が大きい( l に近い)expander グラフの構成が難しい問題

13

Page 14: 研究紹介 Expander  符号

expander 符号のレートと最小距離

定理 1 : G = (L, R, E) s.t. |L| = n, |R| = m が左頂点 l 正則の (α, β) expander であり , β > l/2 ならば , それを Tanner グラフとする符号は , レート R 1– ≧ m/n, 最小距離 d 2≧ αβn/l (> αn) R 1– ≧ m/n は明らか U(S) : S⊆ L と1本だけ接続している右頂点集合 すべての S⊆L s.t. |S|≦αn に対し |U(S)|>0 である

V(S) : S と2本以上接続している右頂点集合 |U(S)| + |V(S)| = |Γ(S)| ≧ β|S| であり |U(S)| + 2|V(S)| ≦ l|S| であるので

⇒ (2β – l)|S| |≦ U(S)| すべての T ⊆ L s.t. |T| < 2αβn/l に対し |U(T)| > 0 である

|T| > αn とする S⊆T s.t. |S| = αn とすると、 |U(S)| (2≧ β – l)|S| = (2β – l)αn |T S| < 2αβn/l – αn = (2β/l – 1)αn なので |Γ(T S)| < (2β – l)αn したがって |U(S)| > |Γ(T S)| > 0 となり |U(T)| > 0

14

\ \\

Page 15: 研究紹介 Expander  符号

bit-flipping 復号法

誤りベクトルに対応する左頂点集合を Se とする

expander グラフなので |U(Se)| は大きいと予想される

U(Se) に含まれる右頂点は、充足されてない(奇数本の1と接続)

アルゴリズム : 充足している右頂点より充足していない右頂点と多く接続している、そんな左頂点が存在するとき、その頂点の値の 0 と 1 をひっくり返す (bit-flipping)

15

Page 16: 研究紹介 Expander  符号

復号法の分析

定理 2 : β > (3/4)l のとき bit-flipping 復号法は αn/2 個未満の誤りを線形時間で訂正する

以下を証明する補題 1 : |Se| < αn ならば flip すべき左頂点が存在補題 2 : |Se| < (2β – l)αn/l ならば、復号を繰り返す間、誤りビットの数は (2β – l)αn/l 以上にならない

復号の1ステップで、充足している右頂点の数は必ず増えるので、正しい符号語へ復号する

右頂点数は n – k なので O(n) ステップで終了、各ステップは O(1) で可能なので、 O(n) 時間で復号可能

16

Page 17: 研究紹介 Expander  符号

補題 1 : |Se| < αn ならば充足している右頂点より充足していない右頂点と多く接続している左頂点が存在 |Se| < αn なので |U(Se)| (2≧ β – l)|Se| Se 中の1つの頂点あたり 2β – l 個が U(Se) に含まれる 2β – l > l/2 なので少なくとも一つの左頂点で、充足していない

右頂点の方が多く接続している

Se(i) を i ステップ目における誤りの頂点集合とする 補題 2 : |Se(0)| < (2β – l)αn/l ならばすべての i において

|Se(i)| < (2β – l)αn/l である |Se(0)| < αn/2 < (2β – l)αn/l である 初めの段階で充足されてない右頂点は l|Se(0)| < (2β – l)αn 個以

下 ある t において |Se(t)| (2≧ β – l)αn/l だと仮定すると、 |Se(t)| >

αn/2 Se(i) は1つずつ変化するので、ある t’ ステップ目において |

Se(t’)| = αn/2 である このとき |U(Se(t’))| (2≧ β – l)|Se(t’)| = (2β – l)αn となり、これは充

足されてない右頂点数が増えたことになり、矛盾

17

Page 18: 研究紹介 Expander  符号

expander グラフの構成法

G = (L, R, E) with |L| = n, |R| = m

[Capalbo et al. ‘02] n/m = O(1) のとき、任意の ε > 0 に対して、

l = O(1) の (O(1), 1 – ε) expander グラフの構成法

[Guruswami et al. ‘07] 任意の γ > 0, n, α<1, ε > 0 に対して ,

l = O((log n)(log αn)/ε)1+1/γ, m ≦ l2(αn)1+γ の (α, 1 – ε) expander グラフの構成法

18

Page 19: 研究紹介 Expander  符号

Tanner 符号による最小距離の改善

Tanner 符号 [Tanner ‘84] 変数ノードも制約ノードも定数次数である Tanner グラフ 制約ノードに入る辺がある符号 C* の符号語になっている

19

x1

x2

x3

x4

x5

x6

変数ノード 制約ノード

符号 C* の符号語

Page 20: 研究紹介 Expander  符号

Tanner 符号による最小距離の改善

定理 3 : G = (L, R, E) s.t. |L| = n, |R| = m が左頂点 l 正則・右頂点 r 正則の (α, β) expander であり、 C* が (r, r – t, Δ) 符号であるとする。このとき , β > l/Δ ならば , それを Tanner グラフとする符号は , レート R 1– ≧(m/n)t, 最小距離 d > αn

制約の数が mt 個あるので R 1– (≧ m/n)t U’(S) : S⊆ L と Δ 本未満接続している右頂点集合 V’(S) : S⊆ L と Δ 本以上接続している右頂点集合 すべての S⊆L s.t. |S|≦αn に対し |U’(S)|>0 である

|U’(S)| + |V’(S)| = |Γ(S)| ≧ β|S| であり |U’(S)| + Δ|V’(S)| ≦ l|S| なので⇒ (Δβ – l)|S|/(Δ – 1) |≦ U(S)|

20

Page 21: 研究紹介 Expander  符号

まとめ

Tanner グラフとして expander グラフを利用した符号[Sipser-Spielman ‘96] の最小距離の分析・復号法を紹介

最小距離の下界の証明には β > l/2 が必要

bit-flipping 復号法が最小距離の半分まで訂正できるには β > (3/4)l が必要

その後の研究で、上記の β を満たす expander グラフの構成法が示された

Tanner 符号を考えるとレートは下がるが必要な β が小さくなる

21

Page 22: 研究紹介 Expander  符号

参考文献

[Capalbo et al. ‘02] Capalbo, Reingold, Vadhan, Wigderson, “Randomness conductors and constant-degree lossless expanders,” in Proc. the 34th ACM Symposium on Theory of Computing (STOC 2002) .[Gallager ‘63] Gallager, “Low Density Parity Check Codes,” MIT Press, 1963.[Guruswami et al. ‘07] Guruswami, Uman, Vadhan, “Unbalanced expanders and randomness extractors from Parvaresh-Vardy codes,” in Proc. IEEE Conference on Computational

Complexity, 2007.[Sipser-Spielman ‘96] Sipser, Spielman, “Expander codes,” IEEE Trans. on Information Theory,vol. 42, no. 6, 1996.[Tanner ‘84] Tanner, “A recursive approach to low complexity codes,” IEEE Trans. on Information Theory, vol. 27, no. 5, 1984.

今回の資料はおもに以下を参考にして作成 Madhu Sudan’s course notes of “Essential coding theory” at MIT, 2001, 2002, and 2004.

Available from http://people.csail.mit.edu/madhu/teaching.html Venkatesan Guruswami’s course notes of “Error-Correcting Codes: Constructions and

Algorithms” at University of Washington, 2006, and “Codes and Pseudorandom Objects” at University of Washington, 2003. Available from http://www.cs.washington.edu/homes/venkat/#teaching 22