データ圧縮
TRANSCRIPT
実験数学 3(大阪大学理学部数学科 3年・4年)
第 9回: データ圧縮
鈴木 譲
大阪大学
2013年 7月 25日
あらまし
一意復号可能性
エントロピーと平均符号長
符号化
A: 有限集合{0, 1}∗: 有限の長さの 2進列の集合φ : A → {0, 1}∗ (符号化)
lφ : A → Nが符号化 φの長さ
x ∈ Aに φ(x) ∈ {0, 1}l なる l ∈ N (長さ)を対応させる写像
φn : An → {0, 1}∗が n次の符号化
xn = (x1, · · · , xn) ∈ Anに φ(x1), · · · , φ(zn)を連結した長さn∑
i=1
lφ(zi )の 2進列 φ(x1) · · ·φ(xn) ∈ {0, 1}∗を対応させる写像
一意復号可能性
φが一意復号可能
任意の n = 1, 2, · · · で、各 un, vn ∈ Anについて、
φn(un) = φn(vn) =⇒ un = vn
r ∈ {0, 1}∗は s ∈ {0, 1}∗の語頭 (r ≺ s)
r が s の最初の部分の 2進列
φが瞬時復号可能
φ(u) ≺ φ(v) =⇒ u = v
例: A = {α, β, γ, δ}
▶ φa, φb, φc は一意復号可能
▶ φa, φbは瞬時復号可能
▶ φc は瞬時復号可能ではない。
▶ φ6d(α, γ, α, δ, β, α) = φ6
d(δ, β, α, γ, α, α) = 011001100
x φa(x) φb(x) φc(x) φd(x)
α 00 0 0 0β 01 10 01 10γ 10 110 011 11δ 11 111 111 01
(α, γ, α, δ, β, α) 001000110100 01100111100 00110111010 011001100(δ, β, α, γ, α, α) 110100100000 11110011000 11101001100 011001100
φa
���
@@@
���HHH
HHH���
0
1
0
1
0
1
α
β
γ
δ
φb
���
@@@HHH���
���XXX
0
10
10
1
α
β
γ
δ
φc
���
@@@
HHH
HHH
XXX
XXX
0
1
1
1
1
1
α
βγ
δ
φd
���
@@@HHH���
HHH0
10
1
1
α
δ
β
γ
瞬時復号可能 =⇒ 一意復号可能
命題
瞬時復号可能 =⇒ 一意復号可能
証明: φが瞬時復号可能と仮定符号化された後の系列 φ(x1) · · ·φ(xn) ∈ φn(A)から
1. φ(x) ≺ φ(x1) · · ·φ(xn) =⇒ x1 = xφ(x1)φ(x2) · · ·φ(xn)から φ(x1)を取り除く
2. φ(x) ≺ φ(x2) · · ·φ(xn) =⇒ x2 = xφ(x2)φ(x3) · · ·φ(xn)から φ(x2)を取り除く
3. ......
符号化される前の系列 xn = (x1 · · · xn) ∈ Anが一意
一意復号可能であるための同値な条件
定理
以下の 3つの条件は同値である。
1. lφが瞬時復号可能な符号化 φの長さ
2. lφが一意復号可能な符号化 φの長さ
3. lφがKraftの不等式を満足:∑x∈A
2−lφ(x) ≤ 1
1. =⇒ 2.は,命題から。
2. =⇒ 3.
lmax := maxx∈A lφ(x)αn(m) := #{xn ∈ An|
∑ni=1 l(xi ) = m}
(∑x∈A
2−l(x))n =∑x1∈A
2−l(x1) · · ·∑xn∈A
2−l(xn)
=∑xn∈An
2−∑n
i=1 l(xi ) =n·lmax∑m=1
αn(m)2−m
φが一意復号可能=⇒重複がない=⇒ 各 nで αn(m) ≤ 2m
=⇒ 各 nで∑x∈A
2−l(x) ≤ (n · lmax)1/n =⇒
∑x∈A
2−l(x) ≤ 1
3. =⇒ 1.
∑x∈A
2−lφ(x) ≤ 1 ⇐⇒lmax∑m=1
α1(m) · 2−m ≤ 1
⇐⇒
α1(1) ≤ 2α1(2) ≤ 2{2− α1(1)}α1(3) ≤ 2{22 − 2 · α1(1)− α(2)}...
...α1(lmax) ≤ 2{2lmax−1 − 2lmax−2 · α1(1)− · · · − α1(lmax − 1)}
=⇒ 各レベルmに α1(m)個の葉をもつ 2進木 T が存在=⇒ φ(x)から T のレベル lφ(x)の葉への 1対 1写像が存在=⇒ lφが瞬時復号可能な符号化 φの長さ
エントロピーと平均符号長
PX (x): 事象 (X = x)の確率 (x ∈ A)
X のエントロピーH(X )と φについての平均符号長 Elφ(X )
H(X ) :=∑x∈A
−PX (x) log2 PX (x)
Elφ(X ) :=∑x∈A
PX (x)lφ(x)
命題
H(X ) ≤ Elφ(X ) ≤ H(X ) + 1
となる一意復号可能な符号化 φが存在
証明: Q(x) := 2−lφ(x)
Elφ(X ) =∑x∈A
−PX (x) log2Q(x)
log x ≤ x − 1, x > 0と Kraftの不等式より,左の不等式が成立:∑x∈A
PX (x) logPX (x)
Q(x)≥
∑x∈A
PX (x)
{1− Q(x)
PX (x)
}= 1−
∑x∈A
Q(x) ≥ 0
lφ(x) := ⌈− logPX (x)⌉ (切上げ)は Kraftの不等式を満足し,⌈− logPX (x)⌉ ≤ − logPX (x) + 1より,右の不等式が成立。
ブロック符号化
X n := (X1, · · · ,Xn): 確率変数の列事象 (Xi = xi ), (Xj = xj), xi , xj ∈ A, i ̸= j が独立PX n(xn), xn ∈ An: 事象 (X n = xn)の確率
H(X n) :=∑xn∈An
−PX n(xn) logPX n(xn)
=∑xn∈An
−PX n(xn)n∑
i=1
logPX (xi )
=n∑
i=1
∑x∈A
−PX (xi ) logPX (xi ) = nH(X )
φ : An → {0, 1}∗ (n次の符号化とは異なる)lφ(x
n) := ⌈− logPX n(xn)⌉Q(xn) := 2−lφ(xn), xn ∈ An
nH(X ) ≤ Elφ(Xn) ≤ nH(X ) + 1
平均圧縮率
平均の長さを nで割った値Elφ(X
n)
n
定理
Elφ(Xn)
n→ H(X )
(n → ∞)で一意復号可能な符号化 φ : An → {0, 1}∗が存在