Table タグによるWeb ブラウザでの言語処理結果の汎用表示ツール
中澤 敏明

柴田 知秀

黒橋 禎夫

京都大学大学院情報学研究科{nakazawa, shibata, kuro}@nlp.kuee.kyoto-u.ac.jp

1

背景ラットフォームを気にする必要がないため、十分な汎用性・簡便性を確保できる。また、HTML の機能を用

これまでの自然言語処理 (NLP) 研究では 、マシンパワーや利用可能なリソースなどの問題で、研究の対いることにより、視覚的にもわかりやすい表示を実現可能である。

象がそれほど 大規模ではなく、また処理の複雑さも問Web 上で視覚的なわかりやすさ、簡便さを得るため題視されるようなことはなかった。しかし近年の NLPに、我々は HTML タグであるテーブル (表) を利用す技術の目覚しい発展や、マシンパワーの向上、さらにることを考えた。これは複数の表を組み合わせるといは Web などに代表されるような大規模リソースへのう単純な表現形式を用いるだけでも、多種多様な情報容易なアクセスが可能となったことにより、研究対象をわかりやすく表示可能であると考えたためである。

がより複雑化、大規模化している。必然的に、それらこの形式を利用すれば 、どのテーブルのどのセルに何を正確に扱う処理 (プログラム) も複雑化、大規模化を表示するのかを指示することによって、様々な種類している。の解析結果を表示することができる。このとき、表示研究においては、あるシステムで実験を行い、得らツール自体は、指示された内容を表示するだけである

れた実験結果を議論し 、システムへのフィードバックことが重要であり、これによって、表示させたい内容を与えるというプロセスが必須であるが、システムのによってツールを作り替える必要は一切不要である。

複雑化により、実験結果を議論する際の手間が無視で表示内容は各システムが、それぞれ知りたい情報を出きないぐらいに増えてきている。つまり、解析ミスな力すればよいのである。

どの言語現象の原因が、処理の複雑化により、複合的なものになる場合や、リソースの大規模化により、そのリソース内の部分を検索するのにも時間がかかる場

スペック

2合がある。このような理由から、作業や研究の効率化

テーブル表示ツール (以後 TableDisplay と呼ぶ) 自のために、システムの解析結果を視覚的・直感的にわ

体は各セルごとに指定された内容を持つ、複数のテーかりやすい形で表示できるようなツールの必要性を感ブルを表示する機能しか備えていない。各セルに表示

じ 、その構築を試みた。

する内容やスタイルは、アプリケーション側が指定す

この際、ツールを深く作りこんでしまい、あるシステムに特化したようなものにしてしまうと、ほかのシることになる。
以下に挙げる仕様に従って記述された表示指定ファステムでの利用が困難となり、その都度ツールを作りイルを作成し 、TableDisplay に渡すと 、指示通りのなおさねばならず、本末転倒になってしまう。そこでテーブルが表示される。

ツール自体には必要最低限、かつ十分な機能のみを搭載したシンプルなものにとどめておき、柔軟性かつ頑2.1

セルの指定健性を持たせることを考えた。
さらに、誰もが容易にアクセスでき、多人数での議論においても有用なものにするため、CGI で実現し 、Web ブラウザでアクセスすることを考えた。Web ブラウザはどんな種類のマシンにも搭載されており、プセルは、3 つの番号のペアで指定する。1 つ目はテーブルの番号、2 つ目は行番号 (縦位置) 、3 つ目は列番号(横位置) である。命令行であることを示す%%の後にこの 3 つの数字を置いて、セルの指定をする。例えば 、

%% 1 2 3
ここにセルに表示したい内容を書きます。という指定は、1 つ目のテーブルの 2 行 3 列のセルに、“ここにセルに表示したい内容を書きます。” と書く。命令行から次の命令行までの内容が、セルの内容となる。ただし、行間にある改行は無視されるため、改行したいときは明示的に <BR>を挿入する必要がある。
また、セル内の文字の位置や、セルの背景色などを指定したい場合は、
図 1: 表の作成例%% 1 2 3 valign=top bgcolor=red
この後にセルに表示したい内容を別の表を表示書きます。のように、セル指定数字の後にスペース区切りで、リンク先も TableDispaly 形式のファイルの場合には、セルのフィーチャに a=file という形式で指定する。

プロパティと値を = でつないで指定することができる。
これらのプロパティは HTML に準拠する。上の例で%% 1 2 3 a=file2.txt

は、縦位置を上詰めにして、背景を赤にする。

file2.txt を開きます

テーブル番号は自然数だけでなく小数値でも指定可
能であり、例えばテーブル番号 1.5 はテーブル番号 1と 2 の間に表示される。

2.2

テーブルフィーチャ

テーブルにフィーチャを指定することもできる。

通常の外部リンク

TableDisplay 形式ではなく、一般的な HTML やほ
かの CGI にリンクしたいときは、extern=URL とする。

%% 1 2 3 extern=http://xxx.xxx.xxx/
外部のファイルにリンクします%% 2 width=80%
この指定では、2 つ目のテーブルの幅が 、ブラウザの幅の 80%となる。

2.3

ページフィーチャ

ページタイトルなどのページ全体のフィーチャは、%%の直後に指定する (数字をつけない)。

追加情報の表示テーブル内に表示すると繁雑になりすぎてしまう情報は、リンクとして別のウインド ウで表示させることができる。リンク先に表示させる内容は別ファイルで用意する必要はなく、同じファイル内に埋め込むことができる。

%% title=表示ツール
こ の 指 定で は 、ペ ージ の タ イト ル (<HEAD>内の<TITLE>タグに相当) を “表示ツール ” にする。

2.4

リンク元のセルのフィーチャに label=LABEL1 と、ラベルフィーチャを指定し 、以下のように内容を記述する。

%% label=LABEL1
リンク先に表示したい内容リンク

HTML の特徴的な性質の一つにリンクがある。通常の HTML では <A> タグなどを利用して実現するが 、TableDisplay も同様の機能を備えている。TableDisplay のリンクには以下の 3 種類がある。

3

作成例
例として図 1 のような構文解析結果出力を得ることを考える。これには前章のフォーマットにしたがい、以下のように記述すればよい。

%% title=KNP 解析結果%% 1 1 1 colspan=2# S-ID:1 KNP:2007/02/14%% 1 2 1 LABEL=1_1b align=right
今日は─┐&nbsp;&nbsp;%% 1 3 1 LABEL=1_2b align=right
天気が─┤&nbsp;&nbsp;%% 1 4 1 LABEL=1_3b align=right
いい%% LABEL=1_1b%% LABEL=1_2b%% LABEL=1_3b%% 1 3 2 LABEL=1_2d*%% 1 4 2 LABEL=1_3d*%% 1 4 2&nbsp;[ガ :天気]&nbsp;%% 1 4 2&nbsp;[時間:今日]&nbsp;%% 1 2 2&nbsp;DATE:今日&nbsp;%% LABEL=1_3d%% LABEL=1_2dことができるなど 、解析結果の階層的な表現も可能である。

4使用例
TableDisplay の実際の使用例を図 2 に示す。ここでは用例ベース機械翻訳システムでの翻訳、および対訳文アラインメント結果表示を例に挙げる。用例ベース機械翻訳では入力文と出力文、正解文、スコアなどの情報がまず最初に表示され、次に複数の用例が組み合わされた最終的な翻訳結果が表示されるのが望まし
く、図 2 の上の例からこれが実現されていることがわかる。また翻訳に使用された個々の用例は翻訳結果の後ろに一つずつのテーブルで表示されている。
個々の用例には（アラインメント結果を表示）というリンクがあり、ここをクリックすると図 2 の下のようなアラインメント結果が別のウインド ウで表示される。アラインメントにおいては、対訳辞書や数字のマッチング、Transliteration など 様々な手がかりを用いて1 行目でページ全体のタイトルを指定しており、2 行目以降で実際のセルの内容を記述している。また LA-

おり、さらに各対訳候補に対して採用、棄却の選択を

BEL の内容はここでは省略しているが、LABEL が指定されているセルをクリックすることにより、LABELの内容が別ウインド ウで表示される。セル 1,1,1 にはらの情報を逐一追っていくのは繁雑になりすぎてわかcolspan が指定されており、表の 1 行目は 2 つのセルが結合されているのがわかる。
2 行目以降は左側に依存構造木で表示された構文解
析結果が、右側には詳細な解析結果が表示されている。
ここで注目したいのは、表に表示させたい情報はその表示順に記述する必要はないということである。プロ
グラム処理のログを眺めると、たいていはログの最初行なう。アラインメントの結果を解析する際に、これりにくいし 、時間もかかるが、TableDisplay を利用することにより視覚的に分かりやすく表示できていることがわかる。セルの背景の色は、その対応がどの手がかりによって発見されたかを表しており、■がマークされたセルが採用されたフレーズ間の対応となっている。

5

結論に入力に関する部分があり、途中に処理経過があって、本論文では研究における実験結果の検討の際の補助最後に出力がある。しかし研究する上で入力と出力をツールとして有効である TableDisplay について述べ見比べたいことは非常に多くあるが、膨大なログの最た。TableDisplay は Web ブラウザを用いて視覚的な表初と最後を行ったり来たりするのは面倒である。

示が可能であるが、その機能自体は HTML の<table>

しかしこのフォーマットを利用すれば 、入力に関すタグを利用して複数の表を表示するだけのシンプルなる部分を 1 つ目のテーブルに、出力に関する部分を 2設計となっている。しかし複数の表の組み合わせだけつ目のテーブルに表示し 、その他のログは 3 つ目以降でも様々な情報をわかりやすく、さらには階層的に表に表示するなど 、処理結果の表示方法を柔軟にコント示することが可能であり、実験結果の検討効率の向上ロールすることが可能となる。これは単純に表示したに大いに役立つことがわかる。

い順にテーブル番号を付け変えることで実現される。

なお TableDisplay は京都大学黒橋研究室のサイト

またテーブル番号は小数値での指定も可能であるため、からダウンロード 可能で、自由に利用することが可能

新しいテーブルを既存のテーブルの間に挿入することである。1も容易である。
またセル 1,4,2 のように、同じセルの内容を複数回記述することも可能であり、様々な処理結果を 1 つにまとめて表示し 、詳細なログは LABEL で表示する

1 http://nlp.kuee.kyoto-u.ac.jp/ にアクセスし 、NLP リソー
ス内の解析結果汎用表示ツール TableDisplay からダウンロード 可能図 2: 翻訳、アライン メントの結果表示例