DEIM Forum 2023 1b-8-4

グラフニューラルネットワークを用いたエンドツーエンド
表構造解析手法の提案
青柳拓志†

金澤 輝一††

高須 淳宏††

上野

史†††

太田

学†††

† 岡山大学大学院自然科学研究科 〒 700–8530 岡山県岡山市北区津島中 3-1-1†† 国立情報学研究所 〒 101–8430 東京都千代田区一ツ橋 2-1-2††† 岡山大学学術研究院自然科学学域 〒 700–8530 岡山県岡山市北区津島中 3-1-1
E-mail: †ao2516@s.okayama-u.ac.jp, ††{tkana，takasu}@nii.ac.jp, † † †{uwano, ohta}@okayama-u.ac.jp
あらまし

学術論文では実験結果を表にまとめることが多いが，実験結果を一目で把握するには視覚的に優れたグラ

フが適している．そのため，表からグラフを自動生成する研究が行われているが，表の形式は著者によって様々であるため，まず表の構造を解析する必要がある．そこで，本稿では表検出を含むグラフニューラルネットワーク（GNN）
によるエンドツーエンド表構造解析手法を提案する．提案手法は，まず表の検出を行い，表中のトークンをグラフのノード，隣接関係をグラフのエッジとするグラフを生成し，GNN によって隣接トークンが同じセルにあるか否かを推定する．また，表構造解析精度の向上のため，日米の公的機関が発行した文書から 800 表を選び構造情報を付与し，これを ICPRAM 2022 で著者らが発表した表構造解析手法で用いた 209 表に加えて学習に用いる．実験では，ICDAR2013 table dataset を用いて表構造解析精度を評価し，その精度を商用の ABBYY FineReader PDF 等と比較した．
その結果，エンドツーエンドの表構造解析精度の一つであるセルの隣接関係の再現性の F 値は 0.984 となり，ABBYY

FineReader PDF のそれより 2.4 ポイント高かった．また，表検出を人手で行った場合のセルの隣接関係の再現性のF 値は 0.986 となり，ICPRAM 2022 で著者らが発表した表構造解析手法を 1.4 ポイント上回った．
キーワード 表構造解析，文書解析，グラフニューラルネットワーク
る．提案手法は，水平結合，補助罫線推定，セル生成の 3 つの1 はじめに表は様々な文書で用いられる．例えば，学術論文では実験結
果を表でまとめることが多い．しかしながら，そのような実験結果を一目で把握，比較するには表よりも視覚的に優れたグラ
フが適しているため，数値を含む表からグラフを自動生成する研究が行われている．また，表の書き方は著者によって様々であるため表の構造を解析する必要がある．近年は，arXiv 1 な
どのウェブサイトから学術論文のような文書を PDF で入手することが容易となったこともあり，PDF 文書を対象とした表の構造解析に関する研究が行われている [1], [2]．
例えば著者らが発表した表構造解析手法 [2] では，表中の隣接トークンを結合する水平結合，垂直結合，セル生成と，実際には引かれていない罫線を推定する補助罫線推定の 4 つのニューラルネットワーク（NN）モジュールを用い，表の構造を解析する．[2] では，評価データセットとして ICDAR 2013

table dataset [3] を，評価指標としてセルの隣接関係の再現性に基づく評価指標 [4] を用いた．その結果，[2] の手法はセルの隣接関係の再現性の F 値 0.972 を達成し，ICDAR 2013 tablecompetiton [3] における最高成績の参加者の F 値を 2.6 ポイン
ト上回った．

NN モジュールを用いて表の構造を解析する．水平結合およびセル生成は，まず表中のトークンをグラフのノード，隣接関係
をエッジとするグラフを生成し，GNN で隣接トークンが同じセルにあるか推定し，そうである場合隣接トークンを結合する．
なお，補助罫線推定は [2] と同様である．また，提案手法ではCascadeTabNet [5] を利用して文書中の表を検出することでエ
ンドツーエンドの表構造解析を行う [6]．また，各 NN モジュールの学習データセットに，日米の公的機関が発行した文書に含まれる表に著者らが構造情報を付与した 800 表に [2] で用いた

209 表を加えた計 1,009 表を用いる．評価実験では，評価デー
タセットとして ICDAR 2013 table dataset を用い，表構造解析精度の評価指標としてセルの隣接関係の再現性に基づく評価
指標および HTML で表した表の木構造として類似度を定義した Tree-Edit-Distance-based Similarity (TEDS) [7] を用いる．
また，提案手法の表構造解析精度を，OCR で文書のデジタル化を行う商用ソフトウェアである ABBYY FineReader PDF 2等と比較する．

2 関連研究Chi らは，GNN を用いた PDF ファイル中の表の構造解析

本稿では，グラフニューラルネットワーク（GNN）を用い手法である GraphTSR を提案した [8]．また，PDF の 15,000て [2] を改良したエンドツーエンドの表構造解析手法を提案す表で構成された大規模データセットである SciTSR を作成し

1：https://arxiv.org

2：https://pdf.abbyy.com

た．GraphTSR では，まず PDF ファイルから矩形に対応した

Tensmeyer らの手法 [18] と比較して 1.0 ポイント高かった．

セルの内容を取得する．次に，取得したセルに対して無向グラフを構築する．このグラフのノードは，セルのサイズ，絶対位
置，相対位置の 3 種類の特徴を持つ．グラフのエッジは，セル間のユークリッド距離，絶対位置による距離，相対位置による距離を特徴として持つ．加えて，セルのペアの x 座標，y 座標の重複もエッジの特徴とする．また，GraphTSR では Graphattention を GNN モデルに導入した．SciTSR の構築のために，arXiv から取得した TeX ファイルから表を抽出し，その表をコンパイルすることで PDF ファイルを生成した．実験では，

SciTSR と ICDAR 2013 table dataset を用い，表構造解析精度を評価した．その結果，SciTSR のセルの隣接関係の再現性を示す F 値が 0.953，複雑な表を含む SciTSR-COMP の F 値
が 0.955 となり，ベースラインの DeepDeSRT [9] と比較して，それぞれ 6.3 ポイント，10.9 ポイント高かった．

Raja ら は ，文 書 画 像 中 の 表 の 構 造 解 析 モ デ ル で あ る
TabStruct-Net を提案した [10]．TabStruct-Net は，セル検出，検出したセル間の行，列関係の決定（構造解析），解析結果をXML 形式で出力する後処理の 3 段階で構成されている．セル検出には，Mask R-CNN [11] を採用し，表画像からセルを検出す
る．構造解析ではグラフを用いて表構造を解析する．Structure

recognition network は，セル検出で検出されたセル間の行関係
と列関係を推定する．後処理では，推定されたセルから Tesser-

act 3 によってセルの内容を抽出し，セルのスパン情報や内容とともに検出したセルの座標を出力する．評価には，SciTSR，

SciTSR-COMP，ICDAR 2013 table dataset，ICDAR 2019table dataset [12]，unlv [13]， Marmot [14]，TableBank [15] と3 提案するエンドツーエンド表構造解析手法
3. 1 エンドツーエンド表構造解析手法の概要
本稿で提案するエンドツーエンドの表構造解析手法の概要を
図 1 に示す．青でハイライトされた部分は NN モジュールである．提案手法では，まず入力として，PDF 文書を与える．次に，PDF 文書を画像に変換し CascadeTabNet を用いて，文書
画像から表を検出する．また，pdfalto 4 を用いて，PDF 文書を

XML ファイルに変換する．その後，検出された表領域と PDF
文書の XML ファイルを入力とし表構造解析を行う．表構造解
析は，前処理，水平結合，補助罫線推定，セル生成，後処理で行う．最後に，解析した表構造を XML ファイルまたは HTML
ファイルとして出力する．

3. 2 CascadeTabNet による表検出
CascadeTabNet [5] は，Cascade R-CNN を用いて文書画像
中の表検出と表中のセル検出を行うエンドツーエンド表構造解析手法である．[5] の評価実験では，ICDAR 2013 table dataset，

ICDAR 2019 table dataset，TableBank のデータセットを用いた．その結果，表検出において ICDAR 2013 table datasetと TableBank で表検出の再現性を表す F 値がそれぞれ 1.0，

0.943（いずれも第 1 位）となった．
本稿で提案する表構造解析手法では，CascadeTabNet は
表検出のみに使用し，セルの検出には用いない．また，Cas-

cadeTabNet の実装は GitHub 上で公開されているもの 5 を利用する．

PubTabNet [7] を用いた．実験の結果，特に ICDAR 2013 tabledataset において，セルの隣接関係の再現性を示す F 値が 0.981

3. 3 表の構成要素となり，ベースラインである TableNet [16] や GraphTSR をそ

図 2 に本稿で扱う表の例を示す．図中で，赤い矩形に囲まれれぞれ 7.1 ポイント，10.9 ポイント上回った．また，表構造解たものをトークンと呼び，罫線または補助罫線で囲まれている

析の誤り分析の結果，多くの空白セルを持つ表に誤りが多いこ

ものをセルと呼ぶ．補助罫線は，実際には引かれていないがセとがわかった．

ルを分割するために必要である罫線である．なお，図 2 中の実

Zheng らは，視覚ベースの表検出と表構造解析モデルで線が罫線，点線が補助罫線である．トークンは，表中の単語である Global Table Extractor (GTE) を提案した [17]．GTE

あることが多い．データの種類を区別する際などに使用されるは，Table boundary network (GTE-Table) や Cell structure

行をサブヘッダ行と呼び，図中で緑色でハイライトされた行でrecognition network (GTE-Cell) などの視覚ベースの複数のある．

NN で構成されており，Object detection network は他のネッ
トワークからの出力を利用する．GTE-Table は，表は少な
くとも複数のセルを持たなければならないといった制約を明

3. 4 GNN を用いた表構造解析手法の概要
GNN を用いた表構造解析は，図 1 の前処理から後処理まで

示的に学習する Cell detection network を用いる．GTE-Cellの部分である．GNN を用いた表構造解析では，入力として，は，GTE-Table から与えられる表の境界と Table-level styleCascadeTabNet により検出された表の領域と，pdfalto によりinformation を用いる．表検出モデルの学習には，TableBank

PDF 文書を XML ファイルに変換した XML を与える．さらと PubTabNet を用い，セル構造認識モデルの学習には Pub-に，文書画像中の表領域の座標を XML ファイルにおける座標

TabNet を用いた．実験では，ICDAR 2013 table dataset とに変換する．そして，変換された XML 中の表領域に基づいて，

ICDAR 2019 table dataset に対して，表構造解析の精度を評

XML から表中のトークンを取得する．同時に，PDFMiner 6 と価した．その結果，ICDAR 2013 table dataset では表構造解
析精度のセルの隣接関係の再現性を示す F 値が 0.962 となり

4：https://github.com/kermitt2/pdfalto
5：https://github.com/DevashishPrasad/CascadeTabNet

3：https://github.com/tesseract-ocr/tesseract

6：https://github.com/pdfminer/pdfminer.six

図 1 提案するエンドツーエンド表構造解析手法

図 3 水平結合の例

全トークン数，e は全トークンペア数である．図 4 の GNN
モデルは，Graph Attention Networks (GAT) [19] であり，モ
図2

表と表の構成要素

OpenCV 7 を用いて表中の罫線を取得する．次に，表中の水平方向に隣接する 2 トークンを，トークンの特徴を用いて再帰的に結合する水平結合を行う．結合し終えたら，トークンの位置関係に基づいて補助罫線を推定する．そして，垂直方向と水平方向の隣接 2 トークンを交互に再帰的に結合してセルを生成す
る．なお，各 NN モジュールの詳細については 3. 5 節以降で述
べる．最後に，Ohta らの手法 [1] と同様に後処理で行や列の結合とセルの拡張を行い，最終的な表構造を確定する．

3. 5 水 平 結 合

デルの実装には PyTorch Geometric 8 を利用する．このモデルの入力は，トークンのテキストの 100 次元の分散表現，トークンの 42 次元の特徴ベクトル，垂直方向と水平方向の隣接

2 トークンの 11 次元の隣接特徴のベクトル，同じセル中にあるか推定する隣接 2 トークンの 84 次元（42 次元 ×2）の特徴
ベクトルおよびその 11 次元の隣接特徴のベクトルである．なお，結合を推定する隣接 2 トークンの特徴はそれぞれのトークンの特徴ベクトルを連結したものである．また，テキストの分散表現の獲得には Word2vec [20] の学習済みモデルとして

glove-wiki-gigaword-100 9 を利用する．図 4 のモデルでは，まず，トークンのテキストの分散表現と隣接 2 トークンの隣接特徴のベクトルを左の GAT 層に入力し，トークンの分散表現の3. 5. 1 水平結合の概要

埋め込み表現を得る．同時に，同様にトークンの特徴ベクトル

水平結合は，水平方向に隣接する 2 トークンを繰り返し結合と隣接 2 トークンの隣接特徴のベクトルを右の GAT 層に入力する処理で，結合する隣接トークンがなくなるまで行う．具体

し，トークンの埋め込み表現を得る．次に，得られたそれぞれ

的にはまず，トークンをノード，トークンの隣接関係をエッジの埋め込み表現から，同じセル中にあるか推定される隣接関係とする無向グラフを生成する．次に，GNN で隣接 2 トークンが結ぶ隣接 2 トークンに対応するベクトルをそれぞれ取り出し，が同じセル中にあるか否か推定し，同じセル中にあると推定さ連結する．例えば，図 5 において，隣接するトークンの番号がれた場合，水平方向に隣接する 2 トークンを結合する．

i と j である場合，i 番目のトークンに対応するベクトルと j 番

図 3 に，水平結合の例を示す．なお，本稿の以降の例は IC-

目のトークンに対応するベクトルを取り出し連結する．そして，

DAR 2013 table dataset [3] の表である．まず図 3 の上の表の得られたトークンの分散表現の埋め込み表現，トークンの埋めように，トークンの隣接関係から無向グラフを生成する．この込み表現と同じセル中にあるか推定される隣接 2 トークンの特とき，赤線で囲まれたトークンをノード，緑と青の線で示され

徴およびその隣接特徴を連結し，276 次元のベクトルを全結合るトークンの水平方向と垂直方向の隣接関係をエッジとする．

層に入力する．そして，出力層で水平方向の隣接 2 トークンが次に，水平方向に隣接する 2 トークンが同じセル中にあるか同じセル中にあるか否かの 2 次元のベクトルを出力する．この

GNN で推定して結合する．例えば，図 3 では，“Postnatal” とモデルの活性化関数は，出力層では Log softmax 関数，それ以“Day” と “1” などの隣接トークンが結合されている．

外では ReLU である．また，損失関数に 2 値クロスエントロ

3. 5. 2 水平結合の GNN モデル

ピーを用い，最適化関数に Adam を用いる．

水平結合の GNN モデルを図 4 に示す．なお，図中の n は8：https://github.com/pyg-team/pytorch geometric
7：https://opencv.org

9：https://nlp.stanford.edu/projects/glove表 1 水平結合で利用するトークンの特徴
特徴

次元数

トークンのサイズ

2

他トークンとの座標の一致

6トークンのテキストが数値であるか1トークンのテキストの品詞

12

サブヘッダの可能性

1

トークンのテキストの先頭文字が大文字であるか1

トークンのテキストが括弧の中にあるか

1

トークンのテキストが記号であるか

1

トークンのテキストが記号で開始するか

1

トークンのテキストが記号で終了するか

1

トークンの周辺のトークンの特徴

15

合計

42

表 2 水平結合で利用する隣接 2 トークンの隣接特徴
図 4 水平結合/セル生成の GNN モデル

図 5 隣接 2 トークンの埋め込み表現の連結

特徴

次元数

隣接トークン間の距離1

隣接トークン間のフォントの一致

1

隣接トークン間のスタイルの一致

1

隣接トークン間の重心の一致

1

隣接トークン間の左上の一致

1

隣接トークン間の右上の一致

1

隣接トークンのテキストの類似度

1

隣接トークン間に罫線が引かれているか

1

結合位置

2

隣接方向

1

合計

11

3. 5. 3 水平結合の GNN モデルへの入力特徴
水平結合の GNN モデルへの入力特徴であるトークンの特徴

表 3 周辺の各トークンの特徴
特徴を表 1，隣接 2 トークンの隣接特徴を表 2 に示す．また，トー

次元数

幅

1

クンの特徴の一部である周辺の各トークンの特徴を表 3 に示

高さ

1す．まず，表 1 のトークンの特徴について述べる．トークンのテキストが数値か1

サイズは，表の幅（高さ）に対するトークンの幅（高さ）の比合計3率である．他トークンとの座標の一致は，注目するトークンの左上，重心，右下の x，y 座標が他のトークンのそれらと一致しのライブラリである diﬄib を用いて算出する．結合位置は，表た回数である．トークンの品詞は，Natural Language Toolkitの幅（高さ）に対する隣接トークン間の重心の中点の座標が占(NLTK) 10 を用いて取得した品詞に基づく 12 次元の one-hot ベ

める比率とする．

クトルである．サブヘッダの可能性は，注目するトークンと水平方向に隣接するトークンが存在しない場合に 1 とする．また，

3. 6 補助罫線推定周辺のトークンは図 6 に示すようにトークン自身と上下左右に提案する表構造解析手法では，3. 5 節の水平結合後に，トー隣接するトークンを合わせた 5 トークンである．図 6 では，青クンの位置関係に基づいて補助罫線を推定する．具体的にはま線で囲まれたトークンである “63.4” の周辺トークンは “63.4”

ず，垂直方向の補助罫線候補としてトークンの左端，右端，水自身と赤線で囲まれた 4 トークンがある．また，周辺の各トー

平方向に隣接する 2 トークンの重心の中点，水平方向の補助クンは表 3 の 3 次元の特徴ベクトルを持つ．

罫線候補としてトークンの上端，下端，垂直方向に隣接する 2

次に，表 2 の隣接 2 トークンの隣接特徴について述べる．隣トークンの重心の中点のそれぞれ 3 種類の点集合を作成する．

接トークン間の距離は，水平方向の隣接関係の場合は左側のトークンの各点の例を図 7 に示す．図 7 の緑の +，×，∗ は，トークンの右端の x 座標と右側のトークンの左端の x 座標とのそれぞれトークンの左端，右端，水平方向の隣接トークン間の差の絶対値であり，垂直方向の隣接関係の場合は上側のトーク中点であり，青のそれらはトークンの上端，下端，垂直方向のンの下端の y 座標と下側のトークンの上端の y 座標との差の絶隣接トークン間の中点である．そして，それぞれの点集合を重対値である．隣接トークン間のテキストの類似度は，Python

心法でクラスタリングして得られた点集合のクラスタを補助罫線候補とし，その補助罫線候補が補助罫線であるか推定する．

10：https://www.nltk.org

表 4 補助罫線推定のクラスタの特徴
特徴

図 6 周辺のトークンの例

次元数

クラスタを構成する点の数

1

表中の水平 (垂直) 方向のトークン数

1

補助罫線候補を挟むトークン間の罫線の有無

1

補助罫線候補の方向

1

クラスタの種類6

補助罫線候補がセル上を通るか

1

補助罫線候補の位置

1

表のサイズ

1

合計

13

図 7 トークンの上下左右の端点と重心の中点

図8

補助罫線推定の例

図 10 セル生成の例

3. 7 セ ル 生 成
3. 7. 1 セル生成の概要
セル生成では，3. 6 節の補助罫線推定後，垂直方向に隣接す
る 2 トークンと水平方向に隣接する 2 トークンを交互に結合する．なお，この結合は結合できる隣接 2 トークンがなくなるまで反復的に行う．セル生成では，水平結合と同様にグラフを生成し，GNN で隣接する 2 トークンを結合する．図 10 では，例
図 9 補助罫線推定の NN モデル

えば，“Concentration” と “(ppm)” の垂直方向の隣接トークンが結合されている．

補助罫線推定の例を図 8 に示す．図 8 の青線は提案手法が推定した補助罫線を表す．
この補助罫線推定の NN モデルの概要を図 9 に示す．図 9 のセル生成の GNN モデルは図 4 に示した水平結合のものと同じである．ただし，セル生成のモデルは入力特徴の次元数が異なる．すなわち入力は，トークンのテキストの 100 次元の分散

NN モデルの入力は，表 4 に示す補助罫線候補の 13 次元の特表現，トークンの 57 次元の特徴ベクトル，隣接 2 トークンの徴ベクトルと，補助罫線候補中の各点の生成に関与したトーク

19 次元の隣接特徴ベクトル，同じセル中にあるか推定する隣接ンのテキストの 100 次元の分散表現の平均である．この分散表

2 トークンの 114 次元（57 次元 ×2）の特徴ベクトルおよびそ現は水平結合で使用するものと同じである．また，出力は補助の 19 次元の隣接特徴のベクトルである．なお，セル生成では

罫線か非補助罫線かの 2 次元である．中間層の出力次元数は，

垂直方向または水平方向の隣接トークンの結合が推定対象であ連結層より前では分散表現を入力とする層は 20，クラスタのり，結合を推定する隣接 2 トークンの特徴はそれぞれのトーク

特徴を入力とする層は 30 とし，結合層より後では 250 とする．

ンの特徴ベクトルを連結したものである．なお，分散表現は水

出力層の活性化関数は Sigmoid 関数，それ以外の層は ReLu を平結合と同じものを使用する．

用いる．また，損失関数には 2 値クロスエントロピーを用い，

3. 7. 2 セル生成の入力特徴

最適化関数には Adam，学習率は 0.01 とする．

セル生成の GNN モデルへの入力特徴は，3. 5 節で説明した
水平結合のモデルへの入力特徴と同じである．ただし，次の差表 5 作成した構造情報付きの表データセット
文書発行元 URL

表数

https://www.ers.usda.gov

265

https://bjs.ojp.gov

167

https://nces.ed.gov

81

https://www.stat.go.jp

80

https://www.bea.gov

65

https://www.census.gov

63

https://www.bls.gov

59

https://www.transportation.gov

15

https://www.cdc.gov

5

合計

図 11 表と表構造の例

再現率 =解析結果の正しい隣接関係の数
正解データの隣接関係の数

(1)

適合率 =

解析結果の正しい隣接関係の数
解析結果の隣接関係の数

(2)

800

異がある．まず，セル生成で用いるトークンの特徴では，表 1

また，F 値はこの再現率と適合率の調和平均である．

のトークンのテキストの品詞を，水平結合されたトークンに関

一方 TEDS は，HTML 形式で表された正解データの表構造

しては最初と最後のトークンのテキストの品詞を連結したものと解析結果の表構造の類似度を木編集距離に基づいて定めた類とする．さらに，トークンを構成する単語数とトークンが属す似度である．TEDS の算出式を式 (3) に示す．

る列や行のトークン数を追加する．後者の特徴は，注目トーク
ンの上下の延長上にあるトークンの数を列のトークン数，左右の延長上にあるトークン数を行のトークン数とする. また，セル生成では表 2 の隣接 2 トークンの隣接特徴に隣接トークン間に存在するセパレータを構成する点の数を追加する．セパレー

TEDS(Ta , Tb ) = 1 −EditDist(Ta , Tb )max(|Ta |, |Tb |)(3)

こ こ で Ta ，Tb は そ れ ぞ れ 正 解 デ ー タ と 解 析 結 果 の 表 ，EditDist(Ta , Tb ) は Ta ，Tb の木編集距離，|Ta |，|Tb | はそれぞれの表の HTML 木構造のノード数である．

タは，罫線，罫線の延長線，数値間の補助罫線，3. 6 節で説明した 6 種類の点集合から生成した補助罫線の計 9 種類あり，それぞれのセパレータごとのクラスタを構成する点の数をこの特徴に用いる．

4. 3 実 験 結 果
4. 3. 1 表構造解析精度
表検出を含むエンドツーエンド表構造解析の精度を表 6，表検出を含まない場合の表構造解析精度を表 7 にまとめる．な

4 評価実験
4. 1 表データセット
本稿で提案する表構造解析手法の各 NN モジュールの学習には，[2] で用いた 209 表と表 5 の 800 表を用いる．なお，後者の表データセットは，表 5 に示す日米の公的機関のウェブサイト
において 2022 年 1 月から 2022 年 10 月までに発行された PDF
文書を収集し，収集した文書に含まれる表に表構造を本稿の第一著者が付与したものである．付与する表構造の情報は，セルが位置する行や列，セルのテキスト情報などである．例えば，
図 11 の表とその表構造では，緑のセルの範囲は 1 行 1 列から

2 行 1 列までであり，このセルは複数行にまたがるセルである．
表構造解析精度の評価には，ICDAR2013 Table competi-tion [3] のテスト用データセットを用いる．この表データセット
は，EU，米国政府の発行した文書から 156 の表を収集したものであり，それらの表を含む PDF 文書，表構造の付与されたXML からなる．
4. 2 評 価 指 標
表構造解析精度の評価指標には，Göbel らが定義した表中のセルの隣接関係の再現性に基づく評価指標 [4] と Zhong らが定義した TEDS [7] を用いる．
セルの隣接関係の再現率と適合率は，それぞれ式 (1)，式 (2)で算出される．

お，提案手法では表検出に CascadeTabNet を用いており，表検出を含まない場合は手動で表領域を指定している．また，マイクロ平均は解析結果のすべての表のセルの隣接関係を集計しセルの隣接関係の再現率，適合率，F 値を算出したものであり，マクロ平均は表ごとにセルの隣接関係の再現率，適合率，F 値を算出し，最後にそれぞれの平均をとったものである．まず，提案手法の表検出を含む場合の表構造解析精度は，ICPRAM

2022 の手法 [2] の精度と比較して，セルの隣接関係の再現性のF 値のマイクロ平均とマクロ平均がそれぞれ 2.2 ポイント，2.7
ポイント高く，TEDS が 2.1 ポイント高かった．また，商用ソ
フトウェアの ABBYY FineReader PDF の文字認識誤りを修正した場合と比べて，セルの隣接関係の再現性の F 値がそれ
ぞれ 0.9 ポイント，1.3 ポイント，TEDS が 0.4 ポイント高かっ
た．表検出を含まない場合は表 7 に示す通り，[2] のセルの隣接関係の再現性の F 値よりそれぞれ 1.4 ポイント，1.6 ポイント，

TEDS が 1.3 ポイント高かった．
4. 3. 2 水平結合の精度表 8 に示す通り，結合すべきだがしなかった誤りが 6，その逆の誤りが 17 あった．よって水平結合は，結合すべきトーク
ンペアの 99.8%の結合に成功する一方，結合すべきでないペアの 20.2%を誤って結合したことになる．

4. 3. 3 補助罫線推定の精度
実験における訓練データの補助罫線候補のクラスタ数は，補助罫線であるクラスタが 83,776 件，補助罫線でないクラスタが表 6 表検出を含む場合のエンドツーエンド表構造解析精度
入力

PDF

画像

セルの隣接関係（マイクロ平均） セルの隣接関係（マクロ平均）

手法

F値

再現率

適合率

F値

提案手法

0.984

0.985

0.984

0.976

0.972

0.974

0.969

ICPRAM 2022 [2]

0.954

0.970

0.962

0.943

0.951

0.947

0.948

ABBYY FineReader PDF

0.950

0.971

0.960

0.943

0.951

0.947

0.958

0.965

0.986

0.975

0.958

0.964

0.961

0.965

–

–

–

0.927

0.944

0.935

–

ABBYY FineReader PDF（文字認識誤り修正有）GTE [17]
表7
入力

表検出を含まない場合の表構造解析精度

セルの隣接関係（マイクロ平均） セルの隣接関係（マクロ平均）

手法

再現率

適合率

F値

再現率 適合率

F値

TEDS

提案手法

0.986

0.986

0.986

0.978

0.977

0.977

0.982

PDF ICPRAM 2022 [2]

0.967

0.977

0.972

0.955

0.968

0.961

0.969

GraphTSR [8]

0.885

0.860

0.872

0.819

0.855

0.837

–

TabStruct-Net [10]

0.976

0.985

0.981

–

–

–

–

–

–

–

0.958

0.968

0.962

–

画像

GTE [17]

表 10 セル生成の推定結果

表 8 水平結合の推定結果
推定

推定

結合する 結合しない
正解

結合する

3,033

6

結合しない

17

67

結合する
正解

表 9 補助罫線の推定結果
補助罫線 補助罫線でない
補助罫線補助罫線でない

結合しない

結合する

493

179

結合しない

7

25,127はその下の “$10,000” と “$14,999” 間の距離と比較しかなり小

推定

正解

TEDS

再現率 適合率

13,423

412

482

3,630

さい．また，“Less than $10,000-” は，本来のセルの内容である “Less than $10,000” とほぼ同じテキストでもある．

5. 1. 2 補助罫線推定の誤り
補助罫線推定で誤って推定した補助罫線の例を図 13 に示す．

38,217 件あった．このように，補助罫線でない点のクラスタ数

この図では “Unadjusted” と “odds ratio” の間に水平の補助罫

と補助罫線であるクラスタ数が不均衡であったため，本稿では線が誤って推定されている．これは，この補助罫線候補のクラSMOTEENN [21] で同数にしたものを学習に用いる．表 9 に示スタが “(%)” や “odds ratio” など多くのトークンの周囲の点

す通り，補助罫線であるクラスタがそうでないと誤推定されたから生成されたからである．補助罫線推定では，多くのトーク

クラスタの割合は 3.0%，その逆に補助罫線でないクラスタのンが関わるクラスタは補助罫線であることが多い．

うち補助罫線であると誤推定されたクラスタの割合は 11.7%と5. 1. 3 セル生成の誤りなった．

セル生成で結合できなかったトークンの例を図 14 に示す．

4. 3. 4 セル生成の精度

この図では，円で囲んだ “American Indian/Alaska” と “Na-

セル生成における推定結果は表 10 に示す通り，結合すべきtive” の隣接トークンペアが結合されていないことがわかる．

だが結合しなかった誤りが 179，その逆の誤りが 7 だった．セ“American Indian/Alaska” とその右方向に存在する “352” やル生成では，結合すべきトークンペアの 26.6%を結合できな“55” といった数値であるトークンの下端がほぼ揃っており，相かったが，結合すべきでないペアを誤って結合したのはわずか対的に揃っているトークン数が多いことが要因といえる．

に 0.028%だった．

5. 2 作成した表データセットの有効性

5 考

察

5. 1 提案手法の表構造解析誤りの分析

提案手法の評価においてセルの隣接関係の再現性の F 値のマイクロ平均，マクロ平均および TEDS は，学習データが 209
表の場合それぞれ 0.982，0.970，0.977 だった．これに表 5 の

5. 1. 1 水平結合の誤り

800 表を加えた 1,009 表で学習した場合，表 7 の通りそれぞれ

水平結合で誤ってトークンを結合した例を図 12 に示す．こ

0.4 ポイント，0.7 ポイント，0.5 ポイント向上した．

の図の “than” と “$10,000-” が誤って水平方向に結合されてい水平結合におけるトークンの誤結合と結合漏れは，学習デー

る．これは，そのトークンペア間の距離が非常に小さいことがタが 209 表の場合それぞれ 17 と 4 だった．学習データが 1,009

原因であると考えられる．実際 “than” と “$10,000-” 間の距離表の場合は表 8 の通りそれぞれ 17 と 6 であり，結合漏れは 2

析結果を利用したグラフ生成アプリの開発等が挙げられる．

謝

辞

本研究の一部は，科学研究費補助金基盤研究 (B)(課題番号
図 12 水平結合で誤って結合されたトークンの例

22H03904)，同基盤研究 (C)(課題番号 18K11989)，新エネル
ギー・産業技術総合開発機構 (NEDO) の戦略的イノベーショ
ン創造プログラム (SIP) 第二期「ビッグデータ・AI を活用したサイバー空間基盤技術」および 2022 年度国立情報学研究所
共同研究 (22FC01) の援助による．

図 13 補助罫線推定で誤って推定された補助罫線の例

図 14 セル生成で結合できなかったトークンの例

増えた．水平結合では，209 表で学習した場合でも比較的高精度でトークンを結合できているといえる．
補助罫線推定における補助罫線の誤推定と推定漏れは，学習データが 209 表の場合それぞれ 881 と 595 だった．学習デー
タが 1,009 表の場合は表 9 の通りそれぞれ 482 と 412 である
ため，1,009 表で学習した場合それぞれの誤りが 399 と 183 減
少したことになる．このことから，本稿で作成した 800 表の表
データセットは補助罫線推定の精度向上に寄与したといえる．
セル生成におけるトークンの誤結合と結合漏れは，学習デー
タが 209 表の場合それぞれ 11 と 270 だった．学習データが1,009 表の場合は表 10 の通り 7 と 179 であり，それぞれの誤りが 4 と 91 減少した．よって本稿で作成した表データセット
はセル生成の精度向上に寄与したといえる．

6 ま と め
本稿では，グラフニューラルネットワークを用いたエンド
ツーエンド表構造解析手法を提案した．提案手法は，水平結合，
補助罫線推定，セル生成の 3 つの NN モジュールを持ち，水平結合およびセル生成で GNN を用いて表中の隣接トークンを結合する．評価実験の結果，表検出を含むエンドツーエンド表
構造解析でのセルの隣接関係の再現性の F 値が 0.984 となり，
これは商用の ABBYY FineReader PDF の F 値より 2.4 ポイ
ント高かった．また，表検出を含まない場合のセルの隣接関係の再現性の F 値は 0.986 であり，[2] の F 値より 1.4 ポイント
高かった．さらに，本研究で作成した 800 表の構造付与データ
を学習データに加えたことで，補助罫線推定およびセル生成モ
ジュールの精度ならびに全体の表構造解析精度が向上した．
今後の課題として，ICDAR 2013 table dataset 以外の表デー
タセットによる提案手法の表構造解析精度の評価や，表構造解文

献[1] M. Ohta, et al. Table-structure recognition method usingneural networks for implicit ruled line estimation and cell
estimation. DocEng 2021, Article 23, 7 pages, 2021.
[2] H. Aoyagi, et al. Table-structure recognition method consisting of plural neural network modules. ICPRAM 2022,
pp. 542–549, 2022.
[3] M. Göbel, et al. ICDAR 2013 table competition. ICDAR
2013, pp. 1449–1453, 2013.
[4] M. Göbel, et al. A methodology for evaluating algorithms
for table understanding in pdf documents. DocEng 2012,
pp. 45–48, 2012.
[5] D. Prasad, et al. CascadeTabNet: An approach for end to
end table detection and structure recognition from imagebased documents. CVPR 2020, pp. 2439–2447, 2020.
[6] 青柳拓志他. 表検出を含むエンドツーエンド表構造解析の評価.
第 18 回 WI2 研究会予稿集，No. 01, pp. 1–8, 2022.
[7] X. Zhong, et al. Image-based table recognition: Data,model, and evaluation. ECCV 2020, pp. 564–580, 2020.
[8] Z. Chi, et al. Complicated table structure recognition. arXiv
preprint arXiv:1908.04729, 2019.
[9] S. Schreiber, et al. DeepDeSRT: Deep learning for detection and structure recognition of tables in document images.
ICDAR 2017, pp. 1162–1167, 2017.
[10] S. Raja, et al. Table structure recognition using top-down
and bottom-up cues. ECCV 2020, pp. 70–86, 2020.
[11] Z. Cai, et al. Cascade R-CNN: High quality object detection
and instance segmentation. IEEE PAMI, Vol. 43, No. 5,
pp. 1483–1498, 2019.
[12] L. Gao, et al. ICDAR 2019 competition on table detection
and recognition (cTDaR). ICDAR 2019, pp. 1510–1515,
2019.
[13] A. Shahab, et al. An open approach towards the benchmarking of table structure recognition systems. DAS 2010,
pp. 113–120, 2010.
[14] J. Fang, et al. Dataset, ground-truth and performance metrics for table detection evaluation. DAS 2012, 2012.
[15] M. Li, et al. Tablebank: Table benchmark for image-based
table detection and recognition. LREC 2020, 2020.
[16] S. Paliwal, et al. TableNet: Deep learning model for endto-end table detection and tabular data extraction fromscanned document images. ICDAR 2019, pp. 128–133, 2019.
[17] X. Zheng, et al. Global table extractor (GTE): A framework
for joint table identification and cell structure recognition
using visual context. WACV 2021, pp. 697–706, 2021.
[18] C. Tensmeyer, et al. Deep splitting and merging for tablestructure decomposition. ICDAR 2019, pp. 114–121, 2019.
[19] P. Veličković, et al. Graph attention networks. ICLR 2018,2018.
[20] T. Mikolov, et al. Eﬃcient estimation of word representations in vector space. ICLR 2013, 2013.
[21] G. Batista, et al. A study of the behavior of several methods for balancing machine learning training data. SIGKDD
Explorations, Vol. 6, Issue 1, pp. 20–29, 2004.