580 likes | 742 Views
octgrid に対する属性グラフ文法による矩形数え上げ. ◎金澤 佑治 (東洋大学) 切島 忠昭 (東洋大学) 塩野 康徳 (東洋大学) 夜久 竹夫 (日本大学) 土田 賢省 (東洋大学). 発表内容. 1 はじめに 1. 1 背景 1. 2 目的 2 準備 2. 1 octgrid 2. 2 Graph Grammar for Tessellation Graphs 3 本研究 3. 1 処理概要 3. 2 文脈依存グラフ文法における導出グラフの提案 3. 3 矩形数え上げのための属性定義 4 実装 5 まとめ. 1. 1 背景
E N D
octgridに対する属性グラフ文法による矩形数え上げoctgridに対する属性グラフ文法による矩形数え上げ ◎金澤 佑治 (東洋大学)切島 忠昭(東洋大学)塩野 康徳(東洋大学)夜久 竹夫(日本大学)土田 賢省(東洋大学) 電子情報通信学会 2008年総合大会
発表内容 1 はじめに 1. 1 背景 1. 2 目的 2 準備 2. 1 octgrid 2. 2 Graph Grammar for Tessellation Graphs 3 本研究 3. 1 処理概要 3. 2 文脈依存グラフ文法における導出グラフの提案 3. 3 矩形数え上げのための属性定義 4 実装 5 まとめ 電子情報通信学会 2008年総合大会
1. 1 背景 1. 2 目的 1 はじめに 電子情報通信学会 2008年総合大会
1. 1 背景(1/2) • ユーザインターフェースの中で情報を表示するために,表は重要な役割を果たしている • 我々のプロジェクト • 汎用な表のモデル化 → octgrid • 汎用な表に対するグラフ文法の定義 → GGTG • octgridに基づく効率的な表処理系やアプリケーションの開発 • 表処理系には,GGTGに基づくパーザも組み込んだ 電子情報通信学会 2008年総合大会
1. 1 背景(2/2) • 関連研究 • 表形式文書解析と合成システム • A. Amano, N. Asada, T. Motoyama, T. Sumihoshi, and K. Suzuki, “Table Form Document Synthesis by Grammar-Based Structure Analysis,” 6th ICDAR, pp. 533-537, 2001. • 文脈自由文法に基づく表構造を解析し,合成された文書を生成する • スライス構造を持つ表のみを扱っており,表編集操作を考慮したものではない 電子情報通信学会 2008年総合大会
1. 3 目的 • グラフ文法の応用 • 表が適正な矩形分割図形であるかどうかの判定 • 表に存在する各サイズの矩形の個数を種類ごとに数え上げる形式的な方式の提案 • それらの表処理系への実装 電子情報通信学会 2008年総合大会
2. 1 octgrid 2. 2 Graph Grammar for Tessellation Graphs 2 準備 電子情報通信学会 2008年総合大会
2. 1 octgrid • 表のグラフ表現 • セルをノードで表現 • 表の周囲に,基準となる周辺セルを持つ • 辺の位置が等しいセルとの関係をエッジで定義 • ノードの最大次数は8 図1 表の罫線図(左)とそれに対応するoctgrid 電子情報通信学会 2008年総合大会
2. 2 Graph Grammar for Tessellation Graphs (1/3) • 文脈依存グラフ文法 • パーザの開発を想定して構成 • 非スライス構造を含む任意の表構造を定義 • 生成規則数:18,437個 図 2 文法GGTGの生成規則の例 電子情報通信学会 2008年総合大会
2. 2 Graph Grammar for Tessellation Graphs (2/3) 図 2 文法GGTGの生成規則の例 電子情報通信学会 2008年総合大会
2. 2 Graph Grammar for Tessellation Graphs (3/3) • 特徴 • あいまい性がない • 無用なルールはできるだけ排除している • 導出過程で,ホストグラフにおいて,生成規則が適用できる箇所は1ヶ所しかない 電子情報通信学会 2008年総合大会
3. 1 処理概要 3. 2 文脈依存グラフ文法における導出グラフの提案 3. 3 矩形数え上げのための属性定義 3 本研究 電子情報通信学会 2008年総合大会
3. 1 処理概要 (1/3) • 矩形数え上げ • 表に存在する各サイズの矩形の個数を種類ごとに数え上げる形式的な方式 • GGTGに基づく属性グラフ文法を用いる 電子情報通信学会 2008年総合大会
入力:グラフ GGTG 構文解析 導出グラフ 意味規則 属性評価 出力:存在する矩形の種類とその種類ごとの個数 3. 1 処理概要 (2/3) • GGTGに基づく構文解析 • 入力グラフがoctgridであるかどうかの判定 図 3 矩形数え上げの処理の流れ 電子情報通信学会 2008年総合大会
入力:グラフ GGTG 構文解析 導出グラフ 意味規則 属性評価 出力:存在する矩形の種類とその種類ごとの個数 3. 1 処理概要 (3/3) • 意味規則を用いた属性評価 • 属性評価の結果(矩形数え上げの結果)を出力 図 3 矩形数え上げの処理の流れ 電子情報通信学会 2008年総合大会
3. 2 文脈依存グラフ文法における 導出グラフの提案 (1/6) • 概要 • 導出におけるノードの置換過程を表す • 生成されるグラフに含まれるノード情報は持つが,ノード間のエッジに関する情報は持たない 電子情報通信学会 2008年総合大会
3. 2 文脈依存グラフ文法における 導出グラフの提案 (2/6) • 例 • 文法GGTGの導出グラフ中の,生成規則P1-3-T02-0001を適用する部分 P P B B I P1-3-T02-0001 C1 C2 P1-3-T02-0001 図 4 導出グラフの例 電子情報通信学会 2008年総合大会
3. 2 文脈依存グラフ文法における 導出グラフの提案 (3/6) P 生成規則名 ノード P B B I P1-3-T02-0001 C1 C2 P1-3-T02-0001 図 4 導出グラフの例 電子情報通信学会 2008年総合大会
3. 2 文脈依存グラフ文法における 導出グラフの提案 (4/6) • 実線枠と実線矢印 • マザーノード,ドーターノードと,その置換の流れを表現 • マザーノードは,エッジラベルの生成規則を適用することで,ドーターノードへと置換 P ドーターノード マザーノード P B B I P1-3-T02-0001 C1 C2 P1-3-T02-0001 図 4 導出グラフの例 電子情報通信学会 2008年総合大会
3. 2 文脈依存グラフ文法における 導出グラフの提案 (5/6) • 点線枠と点線矢印 • 枠内は近傍ノード • エッジは,その近傍ノードがどの生成規則中のドーターノードに隣接しているかを表現 P 近傍ノード P B B I P1-3-T02-0001 C1 C2 P1-3-T02-0001 図 4 導出グラフの例 電子情報通信学会 2008年総合大会
3. 2 文脈依存グラフ文法における 導出グラフの提案 (6/6) 図A1×1の表を導出する導出グラフの始めの部分 電子情報通信学会 2008年総合大会
3. 3 矩形数え上げのための属性定義 (1/3) • GGTGを基に,矩形数え上げのための属性グラフ文法を定義した 電子情報通信学会 2008年総合大会
3. 3 矩形数え上げのための属性定義 (2/3) • 属性 • 属性countは,count自身の他,属性row,columnおよび連接演算子‘・’により定義 表 1 矩形数え上げで用いられる属性 電子情報通信学会 2008年総合大会
3. 3 矩形数え上げのための属性定義 (3/3) • 意味規則 • 本文法では,マザーノードとドーターノードのラベルに付随する属性のみ使用 • 意味規則の種類:10種類 図 5 生成規則(左)に付随する意味規則(右) 電子情報通信学会 2008年総合大会
4 実装 電子情報通信学会 2008年総合大会
4 実装 • 定義した矩形数え上げ文法とその属性評価機構を表処理系に実装した • Javaで実装 • ステップ数 • 処理系全体:約510,000ステップ • 属性評価:約1,000ステップ 電子情報通信学会 2008年総合大会
デモ • 矩形数え上げ • octgridである複雑な表 • octgridでない表 電子情報通信学会 2008年総合大会
5. 1 まとめ 5. 2 今後の課題 5 まとめ 電子情報通信学会 2008年総合大会
5. 1 まとめ • 矩形数え上げ文法の定義,実装 • 表に存在する各矩形の大きさを算出し,サイズごとに矩形の個数を数え上げる文法の定義 • 文脈依存グラフ文法における導出グラフの提案 • 矩形数え上げ文法の表処理系への実装 電子情報通信学会 2008年総合大会
5. 2 今後の課題 • 今回定義した文法や手法を応用した,様々な表に対する意味処理の実現 電子情報通信学会 2008年総合大会
図B スライス構造 図C 非スライス構造 スライス構造と非スライス構造の例 電子情報通信学会 2008年総合大会
2. 2 Graph Grammar for Tessellation Graphs (補足) • GGTGによるパーズの計算量 • O(n) • nは,パーズを行なうグラフに含まれるノードの個数 電子情報通信学会 2008年総合大会
矩形数え上げ • パーズをすることで,処理対象のグラフがoctgridであることを保証 電子情報通信学会 2008年総合大会
属性評価の例(1/5) 図D 対象の表 電子情報通信学会 2008年総合大会
P-ul P-U P P-UR P-ul P-U P P-UR P-l I3 I2 P-r P-l I2 P-r I3 P-l I2 I2 P-r P3-3-T01-0003 P-l I2 P-r P-ll P-d P-d P-lr P-ll P-d P-d P-lr 属性評価の例(2/5) 図E セルを結合するための生成規則の適用の様子 電子情報通信学会 2008年総合大会
P3-3-T01-0003 P-ul P-U P P-UR P3-3-T01-0003 P-l I3 I2 P-r I3 I2 P-l I2 P-r P3-3-T01-0003 P-ll P-d P-d P-lr P3-3-T01-0003 属性評価の例(3/5) 図F 対応する導出グラフ 電子情報通信学会 2008年総合大会
属性評価の例(4/5) 表A ノードラベルと属性 電子情報通信学会 2008年総合大会
属性評価の例(5/5) row(I3m) = row(I3d)+1 row(I2) = 0 column(I3m) = column(I3d) column(I2) = 0 図G 意味規則 表B 属性値 電子情報通信学会 2008年総合大会
NODE LABEL NODE LABEL NODE LABEL NODE LABEL 型の説明(1/6) グラフの形 nwe ewe wwe swe 電子情報通信学会 2008年総合大会
d1 d2 型の説明(2/6) 型α(横増加) Mother Graph Daughter Graph nwe m1 swe 電子情報通信学会 2008年総合大会
d1 d2 型の説明(3/6) 型β(縦増加) Mother Graph Daughter Graph m1 wwe ewe 電子情報通信学会 2008年総合大会
m1 m2 型の説明(4/6) 型γ(横結合) Mother Graph Daughter Graph nwe d1 swe 電子情報通信学会 2008年総合大会
m1 m2 型の説明(5/6) 型δ(縦結合) Mother Graph Daughter Graph d1 ewe wwe 電子情報通信学会 2008年総合大会
型の説明(6/6) 型ω(縦横維持) Mother Graph Daughter Graph m1 d1 電子情報通信学会 2008年総合大会
3. 3 矩形数え上げのための属性定義 (補足1/3) 表C 矩形数え上げに用いる属性 電子情報通信学会 2008年総合大会
3. 3 矩形数え上げのための属性定義 (補足2/3) 表D 数え上げに使用する意味規則 電子情報通信学会 2008年総合大会
3. 3 矩形数え上げのための属性定義 (補足3/3) 表D 数え上げに使用する意味規則(続き) 電子情報通信学会 2008年総合大会