集中講義(九州大学数理学研究院)...
DESCRIPTION
集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮. 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター. 内容. 背景 文法圧縮 EOTG (Elementary Ordered Tree Grammar) 圧縮アルゴリズム TREE-BISECTION アルゴリズムの解析 画像データの文法圧縮 結論と課題. [Akutsu, Tech. Rep., SIGFPAI, 2010] [Hayashida et al., AST 2010]. 背景. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/1.jpg)
集中講義(九州大学数理学研究院)バイオ構造データに対する数理モデルと
アルゴリズム(3)+ 数理談話会
木構造および画像データの文法圧縮
阿久津 達也
京都大学 化学研究所バイオインフォマティクスセンター
![Page 2: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/2.jpg)
内容 背景 文法圧縮 EOTG (Elementary Ordered Tree Grammar) 圧縮アルゴリズム TREE-BISECTION アルゴリズムの解析 画像データの文法圧縮 結論と課題
[Akutsu, Tech. Rep., SIGFPAI, 2010][Hayashida et al., AST 2010]
![Page 3: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/3.jpg)
背景
![Page 4: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/4.jpg)
研究の目的 人間の設計図
32億文字 ⇒ CD-ROM 1 枚 意外に少ない
パソコンゲームより少ないかも 細胞は 60 兆個もある
ここに全てが書かれているはず 臓器、脳、顔の作り方、知能、本能 でも、どう書かれているか、ほとんどわかってい
ない 人間の設計図が CD-ROM 1 枚
データ圧縮の数理的原理があるはず!
![Page 5: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/5.jpg)
文法圧縮
![Page 6: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/6.jpg)
文法圧縮 与えられた文字列を一意に生成する最小の文脈自
由文法を計算(もしくは近似) 例 abcabcabcabc ⇒ S → AA A → BB B →abc 様々な近似アルゴリズム (下限:定
数近似困難) BISECTION O((n/log n)0.5) 近似 [Lehman & Shelat 02]
LZ78 O((n/log n)2/3) 近似 [Lehman & Shelat 02]
SEQUITUR 型 O((n/log n)3/4) 近似 [Lehman & Shelat 02]
GREEDY 型 O((n/log n)2/3) 近似 [Lehman & Shelat 02]
ほぼ最適 O(log n) 近似 [Charikar et al. 02] [Rytter 02][Sakamoto et al. 09]
![Page 7: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/7.jpg)
文法圧縮 文法のサイズ:規則の右側に現れる文字数の
和 abcabcabcabc
サイズ =12
S → abcabcabcabc サイズ =8
S → AA A → abcabc サイズ =7 (最小)
S → AA A → BB B →abc
![Page 8: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/8.jpg)
文法圧縮の木構造への拡張 困難性の証明 [Yamgata et al. 03][Maneth & Bussato 04]
ヒューリスティックなアルゴリズム Variable Replacement Grammar [Yamagata et al. 03]
Tree Transducer [Maneth & Bussato 04]
TCGA algorithm [Murakami et al. 08]
近似率導出の困難性 木文法の定義に依存: 簡単すぎても難しすぎても不可
本研究 EOTG (Elementary Ordered Tree Grammar) の提案
CFG を縦横両方に拡張 BISECTION 型の O(n5/6) 近似アルゴリズム
順序木、無順序木の両方に対応可能
![Page 9: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/9.jpg)
EOTGElementary Ordered Tree
Grammar
![Page 10: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/10.jpg)
EOTG : Elementary Ordered Tree Grammar 特徴:枝にラベル、枝を木構造に書き換える タグ付き木
1個の葉にのみタグ(印): 枝の両端 ⇔ 根とタグ タグつき葉は、後で他の木の根と融合
生成規則:タグなし枝→タグなし木 タグあり枝→タグあり木
タグなし枝 タグあり枝
![Page 11: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/11.jpg)
EOTG : 例1文法
導出過程
文法
導出過程
![Page 12: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/12.jpg)
EOTG : 例2文法
導出過程
![Page 13: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/13.jpg)
オイラー文字列 木を深さ優先探索 探索した順に頂点のラベルを並べる ただし、戻る時のラベルは の様に区別する
A
命題: T1 と T2 が同型 iff es(T1)=es(T2)
ただし、根のラベルは無視
![Page 14: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/14.jpg)
SEOTG : Simple Elementary Ordered Tree Grammar
( S ) EOTG の規則はオイラー文字列で表現可 タグ ⇔ x : x は部分木に置換される
![Page 15: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/15.jpg)
EOTG, SEOTG の性質文法のサイズ: 右辺に現れる木の枝数の合計
補題: サイズ m の EOTG は、サイズ 3m 以下の SEOTG に変換可能
定理: 与えられた木が EOTG から生成可能かどうか は多項式時間で判定可能
圧縮においては、1個の木のみを生成する文法のみを対象 ← 与えられた木を圧縮したい
![Page 16: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/16.jpg)
圧縮アルゴリズム:TREE-BISECTION
![Page 17: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/17.jpg)
BISECTION [Lehman & Schelat 2002] 文字列を 2i となる場所で再帰的に分割 分割の度に生成規則を追加 同じ文字列が出てきたら同じラベルを割り当てる
![Page 18: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/18.jpg)
mk補題 サイズ m の文法により生成される文字列中の長
さ k の部分列で異なるものは高々 mk 個
略証:各非終端記号により始めてカバーされる長さ k の部分列の個数は高々 k 個。全部で高々 m 個の規則があるので補題が成立。
灰色の配列で S により始めてカバーされるのは k 個。
それ以外は T1 か T2 によりカバーされる。
![Page 19: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/19.jpg)
BISECTION の解析 簡単のため、もとの文字列の長さを n=2h と仮定( h=log n
) 文法のサイズ=2 × (異なる文字列の個数) 再帰の深さが h/2 になるまでに生成される文字列の個数
最小の文法のサイズを m* とする 深さ h/2 以上で生成される文字列の長さは、 1, 2, 4, …,
k/2
なので、 mk 補題より異なる文字列の個数は
よって、実行中に生成される異なる文字例の個数は
)(22221 )2/(log32 nOn
)(242 **)2/(log*** nmOmmmm n
)()()( ** nmOnmOnO
![Page 20: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/20.jpg)
TREE-BISECTION (1) 木を再帰的に分割 同型な部分木が出てきたら同じラベルを割り当てる
T が枝 A のみの場合 A→a という規則を追加して終了 ( a は枝 A のラベル)
T がタグなし木の場合 T を T1, T2 に分割。ただし、 |T1|≦(1/2)|T|+1 、かつ、 T1 はタグつき T2 を T3, T4 に分割。ただし、 |T3|, |T4|≦(3/4)|T|+1
T がタグつき木の場合 T を T1, T2 に分割。ただし、 |T1|≦(1/2)|T|+1 、かつ、 T1 はタグつき T2 を T3, T4 に分割。 T3, T4 のいずれかのみがタグつき木 T3 がタグつき木なら、 |T3|≦(1/2)|T|+1 (逆も同様)
(|T4| は制約されないが、タグなし木なので次ステップで必ず小さくなる)
多項式時間で動作するのは、ほぼ明らか
![Page 21: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/21.jpg)
TREE-BISECTION (2)枝1本のみ
タグなし木
タグあり木
![Page 22: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/22.jpg)
アルゴリズムの解析
![Page 23: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/23.jpg)
mk- 補題(1)
補題: 木 T がサイズ m の EOTG により生成されたとすると、es(T) に現れる長さ k の文字列のうち、異なるものは 2mk 個以下。
mk- 補題 [Lehman & Schelat 02]
文字列 s がサイズ m の CFG により生成されたとすると、s に現れる長さ k の文字列のうち、異なるものは mk 個以下。
証明: サイズ m の EOTG は、サイズ 2m の CFG に変換可能 例: CACBBACCxBBAAx
オイラー文字列を用いて順序木に拡張
![Page 24: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/24.jpg)
mk- 補題(2)命題: m* を最小 EOTG のサイズとすると、アルゴリズム中
で現れるサイズ k の木の種類は高々
1)22(
11
*1
**
1
)))22((2)(2()22(2k
k
kkmkmkm
証明: サイズ k の木 ⇒ 長さ 2k-2 の文字列。ただし、途中にタグが入る場合は、長さ k1 と 長さ (2k-2)-k1 の文字列の組み合わせ。
![Page 25: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/25.jpg)
その他の補題
証明: TREE-BISECTION はもとの木を edge disjoint な木に分解
補題: 大きさ n の木を生成する EOTG のサイズは )(log n
補題: TREE-BISECTION の再帰の深さは )(logO n
補題: TREE-BISECTION の同じ深さの再帰レベルに現れる木の枝の数の合計は n-1 以下
![Page 26: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/26.jpg)
定理: TREE-BISECTION の近似率は O(n5/6) 同じ再帰レベルに現れるサイズ nα +1 以上の木の個数は (n-1)/ nα < n1-α 以下
アルゴリズム中に現れるサイズ nα +1 以上の木の個数は O(n1-α log n)
サイズ nα 以下の木の種類は
よって、アルゴリズム中に現れる異なる木の種類は
α=1/6, m* が O(n1/6) とおいて
))((O)))22((2)(2()22(2 42*
1
1)22(
11
*1
**
1
nmkkmkmkmn
k
k
k
)log)((O 142* nnnm
)log(O )6/5()6/5(* nnnm
![Page 27: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/27.jpg)
(次数制約つき)無順序木への拡張 TREE-BISECTION の変更点
T2 を、 r(T2) と wj の子孫からなる部分木( j=1,…,h )に分解
順序木の同型性判定を無順序木の同型性判定に置き換え⇒ 入力木は子の順序に関係なく、一意に分解される
EOTG の変更点 子の順序を無視 e.g., (IIIA)=(IIIB)
⇒ O(n5/6) 近似
![Page 28: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/28.jpg)
画像データの文法圧縮
![Page 29: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/29.jpg)
画像データに対する文法圧縮 対象とする文法
4分割型 下図のような、より複雑な文法にも拡張可
アルゴリズム: QUADSECTION
BISECTION の拡張
![Page 30: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/30.jpg)
近似率の解析 補題:サイズ g の文法により生成される文字
列中のサイズ k×h の部分画像で異なるものは高々 2ngk 個 ( n はもとの画像の最大辺。 k≧h )
定理 QUADSECTION
の近似率は O(n4/3)
d次元の場合は
近似)(O )1/(2 ddn
![Page 31: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/31.jpg)
結論と課題
![Page 32: 集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮](https://reader036.vdocuments.mx/reader036/viewer/2022081512/5681531d550346895dc14276/html5/thumbnails/32.jpg)
結論 CFG を順序木に拡張した EOTG を提案 与えれた木を生成する EOTG 計算アルゴリズム TREE-BISECTION を提案 O(n5/6) 近似であることを証明 無順序木への拡張 画像圧縮アルゴリズム QUADSECTION を提案
今後の課題 TREE-BISECTION の改良 無順序木の場合の次数制約の解除 文字列に対する他の近似技法の木への応用 木以外のグラフ構造に対する(近似率の保証 つき)文法圧縮アルゴリズムの開発 神経系や循環器系ネットワークの圧縮