# Wikipedia の記事構造からの上位下位関係抽出

隅田 飛鳥
}

本稿では, Wikipedia の記事構造を知識源として, 高精度で大量の上位下位関係を 自動獲得する手法について述べる。上位下位関係は情報検索や Web ディレクトリ など，膨大な Web 文書へのアクセスを容易にする様々な技術への応用が期待され ており，これまでにも様々な上位下位関係の抽出手法が開発されてきた。本稿では， Wikipedia の記事構造に含まれる節や箇条書きの見出しから, 大量の上位下位関係候補を抽出し, 機械学習を用いてフィルタリングすることで高精度の上位下位関係 を獲得する手法を開発した。実験では, 2007 年 3 月の日本語版 Wikipedia 2.2 GB か ら, 約 77 万語を含む約 135 万対の上位下位関係を精度 $90 \%$ で獲得することができた。 キーワード：上位下位関係, Wikipedia, SVM, 半構造情報, 記事構造
## Hyponymy Relation Acquisition from Hierarchical Layouts in Wikipedia

\author{
Asuka Sumida $^{\dagger, \dagger \dagger}$, Naoki Yoshinaga ${ }^{\dagger \dagger \dagger}$ and Kentaro TorisaWa ${ }^{\dagger \dagger \dagger}$
}

This paper describes a method of extracting a large set of hyponymy relations with a high precision from hierarchical layouts in Wikipedia articles. Hyponymy relation has been studied as one of the principal knowledge for information retrieval and web directory, which helps users to access the growing web. Various methods have been proposed to automatically acquire hyponymy relations. In this article, we first extract hyponymy relation candidates from sections and itemizations in hierarchical layouts of Wikipedia articles, and then filter out irrelevant candidates by using a machine learning technique. In experiments, we successfully extracted more than 1.35 million relations from the hierarchical layouts in the Japanese version of Wikipedia, with a precision of $90 \%$.

Key Words: hyponymy (IS-A) relation, Wikipedia, SVM, semi-structured information, hierarchical layouts

## 1 まえがき

本稿では，大量の上位下位関係をWikipedia から効率的に自動獲得する手法を提案する。ここで「単語 A が単語 B の上位語である（または，単語 B が単語 A の下位語である）」とは, Miller の定義 (Fellbaum 1998) に従い，「AはBの一種，あるいは一つである (B is a (kind of) A)」とネイティブスピーカーがいえるときであると定義する。例えば，「邦画」は「映画」の，また「イチロー」は「野球選手」のそれぞれ下位語であるといえ,「映画／邦画」、「野球選手／イチロー」 はそれぞれ一つの上位下位関係である。以降,「A／B」は $\mathrm{A}$ を上位語， Bを下位語とする上位下位関係（候補）を示す。一般的に上位下位関係獲得夕スクは，上位下位関係にある表現のぺアをどちらが上位語でどちらが下位語かという区別も行った上で獲得するタスクであり, 本稿でもそれに従う。本稿では概念一具体物関係（ex. 野球選手/イチロー）を概念間の上位下位関係（ex. スポーツ選手／野球選手）と区別せず，合わせて上位下位関係として獲得する.

上位下位関係は様々な自然言語処理アプリケーションでより知的な処理を行うために利用されている (Fleischman, Hovy, and Echihabi 2003; 鳥澤, 隅田, 野口, 風間 2008). 例えば, Fleischman らは質問文中の語句の上位語を解答とするシステムを構築した (Fleischman et al. 2003). また鳥澤らはキーワード想起支援を目的としたWebディレクトリを上位下位関係をもとに構築した (鳥澤他 2008). しかしながら，このような知的なアプリケーションを実現するためには，人手で書き尽くすことが困難な具体物を下位語とする上位下位関係を網羅的に収集することが重要になってくる.

そこで本稿では, Wikipediaの記事中の節や箇条書き表現の見出しをノードとするグラフ構造 （以降，記事構造とよぶ）から大量の上位下位関係を効率的に獲得する手法を提案する。具体的には，まず記事構造上でノードを上位語候補，子孫関係にある全てのノードをそれぞれ下位語候補とみなし，上位下位関係候補を抽出する。例えば，図 1 （b）の Wikipediaの記事からは 3 節で述べる手続きにより, 図 1 (c) のような記事構造が抽出できる. この記事構造上のノード 「紅茶ブランド」には, その子孫ノードとして「Lipton」,「Wedgwood」,「Fauchon」,「イギリス」，「フランス」が列挙されている。提案手法をこの記事構造に適用すると，「紅茶ブランド」 を上位語候補として, その子孫ノードを下位語候補群とする上位下位関係候補を獲得できる。 しかしながら獲得した下位語候補には,「Wedgwood」,「Fauchon」のように下位語として適切な語が存在する一方,「イギリス」,「フランス」のような誤りも存在する.この例のように, 記事構造は適切な上位下位関係を多く含む一方, 誤りの関係も含むため, 機械学習を用いて不適切な上位下位関係を取り除く。

以下， 2 節で関連研究と本研究とを比較する. 3 節で提案手法で入力源とする Wikipedia の記事構造に触れ，4節で提案手法について詳細に述べる．5 節では提案手法を日本語版 Wikpedia に適用し, 獲得された上位下位関係の評価を行う。最後に 6 節で本稿のまとめと今後の展望に

(a) MediaWiki ソースコード

（b）スクリーンショット

(c) 記事構造

図 1 「紅茶」に関する Wikipedia の記事の例

ついて述べる.

## 2 関連研究

本節では, 既存の上位下位関係の自動獲得手法について説明する。上位下位関係の獲得は, 1990 年代に Hearst が語彙統語パターンを用いて新聞記事から上位下位関係を獲得する手法を提案し (Hearst 1992), 以後各言語への応用がみられた (今角 2001; 安藤, 関根, 石崎 2003; Pantel and Pennacchiotti 2006; Sumida, Torisawa, and Shinzato 2006; 大石, 伊藤, 武田, 藤井 2006). その後 Web の発達に伴い, 箇条書き表現などのWeb 文書特有の手がかりを用いた獲得手法が提案されてきた (Shinzato and Torisawa 2004; Etzioni, Cafarella, Downey, Popescu, Shaked, Soderland, Weld, and Yates 2005) が, 近年, 具体物を含む概念間の知識を密に記述した Wikipedia に注目が集まっている (Ruiz-Casado, Alfonseca, and Castells 2005; Bunescu and Paşca 2006; Herbelot and Copestake 2006; Suchanek, Kasneci, and Weikum 2007; Kazama and Torisawa 2007) . 以下では，まず新聞記事や Web 文書を対象とした上位下位関係の獲得手法について紹介し，その後 Wikipedia に特化した上位下位関係の獲得手法について述べる。以下，各手法について提案手
法との違いについて述べる.

## 2.1 新聞記事・Web 文書からの上位下位関係獲得

まず, 語彙統語パターンを利用した研究として, (Hearst 1992; 今角 2001; 安藤他 2003; Sumida et al. 2006)があげられる. Hearst は英語の新聞記事を対象に, “〈上位語〉such as〈下位語〉” などのパターンを用いて上位下位関係を獲得した (Hearst 1992). 安藤らは Hearst に倣い，日本語の新聞記事コーパスを構文解析した結果から, “〈下位語 1$\rangle$ (や〈下位語 2$\rangle$ ) *という〈上位語〉”などの同格・並列表現を含む語彙統語パターンを用い上位下位関係を獲得した (安藤他 2003)．また今角は日本語の新聞記事コーパスに対して“〈上位語〉「〈下位語〉」”のような括弧を用いたパターンを適用している (今角 2001)。この括弧を用いたパターンと名詞連続パターンを利用して, Sumida らは Web 文書から上位下位関係を獲得した (Sumida et al. 2006). これらの手法では，信頼性の高いパターンを用いることで比較的高い精度で上位下位関係を獲得できるが, そのようなパターンで文書中に出現しない上位下位関係も数多く存在し, 語彙統語パター ンのみで大量の上位下位関係を獲得するのは本質的に難しい.

そこで, 語彙統語パターンにマッチしない上位下位関係を獲得するため, Web 文書に頻出する箇条書き表現の文書構造を用いる手法が, Shinzato らやEtzioni らによって提案されている (Shinzato and Torisawa 2004; Etzioni et al. 2005). Shinzato らは Web 文書中に繰り返し出現する HTML タグに囲まれた語の群を 1 つの単語クラスと見なし，この単語クラスに上位語を付与することで，上位下位関係を獲得する手法を提案した (Shinzato and Torisawa 2004).また Etzioni らは語彙統語パターンを用いて抽出した上位下位関係をより広範な下位語に対応させるため，抽出した下位語を多く含むりスト構造を用いて，未知の下位語に上位語を割り当てる手法を提案した (Etzioni et al. 2005)。これらの手法でリソースとして用いているWeb文書の箇条書き表現は, 上位下位関係の記述に限らず様々な用途に用いられるためノイズが多く, 高い精度を保ったまま大量の上位下位関係を獲得することは難しい。これらの手法では箇条書き表現を基本的に下位語候補を収集するためにのみ用いており，上位語候補は別途獲得する必要があるが，我々の手法では上位語も含めて文書構造から獲得している点が異なる.

本研究と同様に分類器を用いて上位下位関係候補の正誤を判断する手法としては, Webからタグ構造を手がかりに収集した見出し語（用語）とその説明文（見出し語を含む段落）の組を入力として, 見出し語間の上位下位関係を判定する手法を大石らが提案している (大石他 2006).彼らが説明文中に含まれる単語を素性としているのに対し, 我々は上位語候補／下位語候補自体に関する情報（例えば形態素）を主に素性として用いており，それぞれの手法の素性セットはほぼ独立である。また，彼らの手法の評価はコンピュータに関する用語のシソーラスを利用して人工的に作成したテストセットでの識別性能評価に止まっており，見出し語集合から生成した上位下位関係候補の分類精度は評価できていない。さらに, 彼らの手法では上位語候補 $/$
下位語候補は説明文が獲得できている用語に限定されるため，具体物を下位語とするような上位下位関係を大量に獲得することは難しいと考えられる。

また，以上の新聞記事・Web 文書を対象に上位下位関係を獲得する手法は，十分な量の関係を獲得するために，大量の文書が扱えるストレージやそれを処理するための高速な計算機などの大規模な計算機資源が必要となる。例えば，(Sumida et al. 2006)の手法を用いた場合, 約 700 GB の HTML 文書を処理して獲得できる上位下位関係の数は，約 40 万対であるが，我々の手法ではわずか $2.2 \mathrm{~GB} の$ Wikipedia 文書から同程度の精度で約 135 万対の上位下位関係を獲得できている（詳しくは節 5.3 の実験結果を参照のこと）.

## 2.2 Wikipedia からの上位下位関係獲得

Wikipedia からの上位下位関係獲得についても新聞記事や Web 文書からの上位下位関係獲得のときと同様に語彙統語パターンを用いる手法が開発されている (Ruiz-Casado et al. 2005; Herbelot and Copestake 2006; Toral and Muñoz 2006; Kazama and Torisawa 2007). これらの手法では，Wikipediaの記事に概念の定義を記述する定義文が多く含まれることに注目し定義文から上位下位関係を獲得している。図 1 （b）では「紅茶とは，摘み取った茶を乾燥させ，もみ込んで完全発酵させた茶葉。」という定義文が含まれており，紅茶の上位語（の一つ）である茶葉を用いて紅茶が説明されている。この文に対し“とは*〈上位語〉。というパターンを適用することで紅茶の上位語である茶葉を抽出することができる. Kazama らは, 英語の固有表現抽出タスクのために, Wikipedia の記事の見出し語を下位語として記事の冒頭の一文を定義文とみなし, その定義文中の特定の語彙統語パターンにマッチする表現を上位語として獲得した (Kazama and Torisawa 2007). また Herbelot らは, Wikipediaの記事の全文を意味解析し, 定義文に対応する項構造を認識することで, 約 $88.5 \%$ の精度で上位下位関係を獲得している (Herbelot and Copestake 2006). Ruiz-Casado らは WordNet (Fellbaum 1998)を利用して学習された上位下位関係からパターンを学習・適用することで， $69 \%$ の精度で上位下位関係が獲得できたと報告している (Ruiz-Casado et al. 2005). これらの手法は, Wikipedia に頻出する語彙統語パターンに着目した上位下位関係獲得手法であり，前節で述べた上位下位関係手法と同様に精度が高い一方で Wikipedia の記事数と同程度の数の下位語に関する上位下位関係しか獲得できないという問題がある.

一方, Suchanekらは Wikipedia の各記事の見出し語に対し，記事に付与されたカテゴリのラベルを上位語として上位下位関係を獲得する手法を提案している (Suchanek et al. 2007). 彼らは, 英語特有の経験則を用いてカテゴリを選別し, 外的知識として WordNet を利用することで,約 $95 \%$ と高精度で上位下位関係を獲得している。提案手法では, WordNet などの外的な言語資源を用いることなく，機械学習のみで高精度の上位下位関係を大量に獲得することを目指す。 また Kazama らや Suchanek らの手法のように，下位語候補が記事の見出し語に制限されない

ため，より網羅的な上位下位関係が獲得できると期待される.

また, 本研究と同様に Wikipedia の記事構造を用いた研究として (渡邊, 浅原, 松本 2008) が存在する。渡邊らは Wikipedia の記事構造からWikipediaのアンカーリンク間の関係を元に条件付確率場を学習し，そのモデルを適用することでアンカーリンクから固有表現を抽出した (渡邊他 2008). 本提案手法では記事構造から直接上位下位関係を獲得するのに対し, 渡邊らの手法では記事構造をアンカー間の関係が同じカテゴリか, 関連語か, 部分全体関係かどうかの判定に用いており，異なる手法といえる。

## 3 Wikipedia の記事構造

本節では提案手法について述べる前に本研究で知識源として利用する Wikipedia の記事構造について述べる. Wikipediaは, 様々な事物に関する常識的知識が密に記述されたフリーの多言語百科事典である。図 1 （b）は見出し語「紅茶」に対する記事の例である．Wikipedia の記事は，明確な構造をもつMediaWiki 構文により記述されており，多段の箇条書きを含む.この例のように, Wikipedia の記事には典型的なある概念（または具体物）の辞書的な定義に加えて，関連する概念（または具体物）の列挙を箇条書きとして含むことが多い.

本稿では Wikipedia の記事から上位下位関係候補を抽出するための媒体として, MediaWiki 構文で記事のレイアウト情報を扱う表 1 の修飾記号に注目し, 記事から見出し（表 1 では title と標記）をノードとするグラフ構造（記事構造）を抽出する。具体的には, title に付与されている修飾記号の優先度が高く修飾記号の繰り返し数が少ないほど，グラフ構造上の高い位置にノードを配置する。このとき, 修飾記号の優先度は記号の繰り返し数より優先される。例えば,「*リプトン」より「==イギリス $==$ の修飾記号の優先度が高いので, グラフ構造上で「イギリス」が「リプトン」より高い位置に配置される。また，「==イギリス $==」 は 「=$ 主な紅茶ブランド $=」$ と比較し修飾記号（この場合は “=”)の繰り返し数が多いので，「主な紅茶ブランド」 よりグラフ構造上で低い位置に配置される。たたしし, ルートノードは記事名とし, その修飾記号は繰り返し数 0 の「=」とする. 図 1 （b）の記事に対応する図 1 (a) の MediaWikiコードをもとに, 図 1 (c) のような記事構造が抽出できる.

表 1 記事構造に関する修飾記号

## 4 提案手法

本節では, 3 節の手続きで Wikipediaのの各記事から構築した記事構造を知識源として, 上位下位関係を獲得する手法を提案する。提案手法は以下の 2 ステップからなる.

Step1 Wikipedia の記事構造からの上位下位関係候補の抽出 3 節で説明した記事構造に含まれるノード間の先祖一子孫関係に注目して上位下位関係候補を抽出する。

Step2 機械学習によるフィルタリング SVM(Vapnik 1998)を用いて, Step1 で抽出された上位下位関係候補から不適切な関係を取り除く。

以下，提案手法について詳しく述べる.

## 4.1 Step1: Wikipedia の記事構造からの上位下位関係候補の抽出

このステップでは, 記事構造の各ノードを上位語候補, 子孫関係にあるノードを下位語候補とする全ての組み合わせを上位下位関係候補として抽出する。例えば，図 1 (c) の記事構造からは，「ブレンドティー/チャイ」や，「紅茶/リプトン」などの上位下位関係候補が抽出できる.

ここで, 訓練データの記事構造から得られる上位語候補を調べたところ, 階層構造中で上位語候補に対して箇条書きで下位語候補が列挙されるときには，上位語に箇条書き特有の修飾語が付くことが分かった。このような修飾語としては, 主観で一部の下位語を選んで列挙していることを示す「主な〜」や「代表的な〜」などの接頭語, 箇条書きが下位語の列挙であることを陽に示す「〜のリスト」や「〜の一覧」などの接尾語などがあり, 基本的に上位語を箇条書きのタイトルとするために付けられたものであるため, 適切な上位語を得るためには取り除く必要がある.

そこで我々は，抽出された上位語候補が図 2 のパターンをもつ場合，パターン中の $X$ 以外の部分を取り除いた。パターン中の $X$ は任意の文字列を示す. たたし，複数のパターンに一致

的な」）が最長一致するパターンを適用した. 例えば，上位語「主な紅茶ブランド」はパターン 「主な $X\rfloor$ を適用することで, 「紅茶ブランド」と置換される。

このようにして得られる上位下位関係候補には, 明らかに誤りとみなせる上位下位関係候補

図 2 上位語候補の不要な修飾語を取り除くためのパターン
上位下位関係候補が以下の条件を満たすとき，その候補を削除する。
- 上位語候補と下位語候補が完全に一致
- 以下の記号を含む

", ', $\uparrow, \rightarrow, \uparrow, \Leftrightarrow, \leftarrow, \Rightarrow$

上位語候補・下位語候補が以下の不要語を含むとき，その不要語を取り除き候補を訂正する
- HTML 夕グ, $, \diamond, \boldsymbol{\square}, \square, \bigcirc, \boldsymbol{\bullet}, \bigcirc, \triangle, \boldsymbol{\nabla}, \boldsymbol{\Delta}, \nabla, \ddagger$, 文字化け
- $*, \ldots, \cdots, \backslash$, 空白 (先頭あるいは末尾に含まれる場合のみ)
- $\#,+$ (先頭に含まれる場合のみ)

・ ‥ (末尾に含まれる場合のみ)

図 3 上位下位関係候補の削除・訂正ルール

や，上位語または下位語に記号などの不要語を含む上位下位関係候補が含まれていたため, 図 3 のルールに従って上位下位関係候補を削除，あるいは訂正した.

## 4.2 Step2: 機械学習によるフィルタリング

Step1 の手続きで得られた上位下位関係候補は多くの適切な関係を含む一方で,「生産地／インド」,「紅茶ブランド/イギリス」のような誤りも含む. Step2では, Step1で抽出した上位下位関係候補から教師あり機械学習を用い不適切な関係を取り除く。本稿では上位下位関係候補が適切な上位下位関係か否かを判定するため, Support Vector Machine (SVM)(Vapnik 1998)で学習された分類器を用いて上位下位関係候補を選別する.

SVM で各上位下位関係候補（上位語候補一下位語候補のぺア）が適切な上位下位関係であるかどうかを判定するには，分類対象の上位下位関係候補を，素性べクトルと呼ばれる分類対象の特徴（素性）を数値で表現したべクトルに変換する必要がある。この素性べクトル（上位下位関係候補）に正解（適切な上位下位関係か否か）をつけたものを学習データとして, Step2で用いる分類器 (SVM) を得る.

本研究では素性として, 上位下位関係候補がある条件（特徵）を満たすかどうかを一つの素性として表現し, 素性ごとに設定された条件を入力の上位下位関係候補が満たせば，対応する素性ベクトルの次元の値に 1 をセットし，満たさなければ 0 をセットする．実際に使用した素性をまとめたリストを表 2 に示す。表の各列は左から素性の種類, 各素性に対応する素性べクトルの次元の値を 1 にセットする条件, 図 1 から抽出した上位下位関係候補「紅茶ブランド／ Lipton」で実際に 1 にセットされる素性を表している。ただし, 同じ表現の上位下位関係候補が異なる記事構造から抽出された場合, 全ての抽出元の記事構造について生成した素性べクトルの論理和を用いる。次に生成した素性べクトルをSVMに入力し, その結果得られたSVM の
表 2 素性リスト

 &  &  \\

スコアが閾值以上の上位下位関係候補を正しい上位下位関係とみなす。以下で，各素性の設計方針について説明する。

POS まず上位語候補・下位語候補の品詞は，誤りの判定に有効である。例えば，「木次線／管轄」のように上位語に固有名詞を含み，下位語に固有名詞を含まない場合，誤りの関係と推定できる。ここでは，品詞として IPA 辞書 ${ }^{1}$ の品詞細分類レベル (ex. 名詞一固有名詞など）まで考慮する.

また上位語候補・下位語候補に含まれる品詞のうち, 主辞の品詞は語の意味的な特徴をよく捉えているため特に重要である。例えば，上位語候補の主辞の品詞が動詞であれば多くの場合その上位下位関係候補は誤りである。本稿では上位語候補・下位語候補の末尾の形態素を主辞とし，主辞の品詞を他の品詞と区別するように素性を設計した.

MORPH 品詞と同様に, 上位語候補・下位語候補中の形態素の表層文字列は上位下位関係らしさの判定に有効である. 例えば，「アメリカ映画／ウエスト・サイド物語」のように頻度が少ない，あるいは未知の上位語候補・下位語候補であっても，「映画」や「物語」などのより頻度が高い形態素に注目することで上位語らしさ・下位語らしさを判定するこ
^{1}$ http://sourceforge.jp/projects/ipadic/
}

とが出来る.また品詞と同様に上位語候補・下位語候補の主辞の表層文字列は適切な上位下位関係であるかどうかの手がかりとなりやすいので，他の形態素と区別する.

EXP 上位語候補，下位語候補にはStep1の不要語処理ではカバーしきれない，「背景」や「あ行」などの不要語が多く存在する。これら不要語の特徴を捉えるため, 上位語候補, 下位語候補の表層文字列ごとに次元を割り当てるように素性を設計した。

ATTR 上位語候補，あるいは下位語候補が属性語である上位下位関係候補は誤りの関係となりやすい。ここで属性語とは, その単語についてユーザが知りたい観点を指す単語である (徳永，風間，鳥澤 2006). 例えば，「紅茶」の属性語としては「生産量」や「価格」があげられる。このような属性語を含む関係（例えば，「紅茶／生産量」や「生産量／1 位インド」など）は多くの場合, 属性語と概念（または具体物）間の関係となり上位下位関係となることは少ない。そこでこの素性ではあらかじめ抽出しておいた属性語リストの各語に固有の次元を割りあてるように設計した。

本研究では, 属性語は以下のような手順で抽出した。まず各記事構造から根ノード以外のノードを抽出する。つぎに，抽出したノードのうち，Wikipedia 中の複数の記事に出現するノードを属性とみなす。例えば「紅茶」と「夕バコ」という記事の両方に「生産量」が見出しとして出現する場合「「生産量」を属性語とみなす。前述の上位語候補・下位語候補の表層文字列を素性とする素性 EXP もこの素性と同じく不要語らしさを扱うことができるがこの素性では教師無しで構築された属性語リストを用いることで，より被覆率高く不要語を検出することが可能であることに注意されたい.

LAYER 記事構造の箇条書き表現から抽出された下位語候補をもつ上位下位関係は適切な関係になりやすい．例えば，図 1 (c) の記事構造の箇条書き表現には「Lipton」,「Wedgwood」 などの固有名詞が列挙されており，これらは上位ノード「紅茶ブランド」の下位語として適切である。このような傾向を捉えるために, この素性では記事構造から抽出された上位語候補あるいは下位語候補のノードに付与されている修飾記号の種類（節見出し，定義の箇条書き，番号付き箇条書き，番号なし箇条書き）ごとに次元を割りあてた.

DIST 記事構造で上位語候補と下位語候補との間の距離が近ければ近いほど，正しい上位下位関係であることが多い。そこで，記事構造中における上位語候補・下位語候補間の距離を素性とすることで，この傾向を捉える。本稿では，上位語候補，下位語候補間の距離を記事構造中で上位語候補と下位語候補間に存在する辺の数とする。例えば, 図 1 (c) の記事構造上で「Wedgwood」と「紅茶ブランド」間の距離は 2 である。素性DIST では,上位語候補と下位語候補間の距離が 2 以上か否かという 2 つの状態にそれぞれ異なる次元を割りあてた。

PAT 上位語候補がStep1 の時点で図 2 のパターンにマッチしていた場合, 子孫ノードに適切な下位語が列挙されやすい傾向がある。例えば, 図 1 (c) 中の「主な紅茶ブランド」とい

うノードは下位階層に「Lipton」,「Wedgwood」などの適切な下位語が列挙されており，上位語がStep1 のパターンにマッチしていれば，その上位下位関係は適切だうう推定できる。素性 PAT では，Step1 の時点で上位語候補がパターンにマッチしている場合この素性に対応する素性べクトルの次元の值を 1 にセットするように設計した.

LCHAR 素性 MORPH では，形態素間の類似性を判断しているため，「高校」や「公立校」のように形態素の一部が一致する語の類似性はないと判断してしまう欠点が存在する.

そこで上記のような事例を扱えるようにするため，素性 LCHAR では，上位語候補と下位語候補の末尾の 1 文字が共通する複合語に意味的に似た語が多い特徴を利用し，素性 MORPH の欠点を補う，具体的には，上位語候補と下位語候補の末尾が同じとき，この素性に対応する素性ベクトルの次元の値を 1 にセットするように設計した.

## 5 実験

## 5.1 実験設定

提案手法の有効性を評価するため, 2007 年 3 月の日本語版 Wikipedia から Wikipedia 内部向けの記事を取り除いた 276,323 記事に対して, 提案手法を適用した. Wikipedia 内部向けのペー ジは，ユーザページ，特別ページ，テンプレート，リダイレクション，カテゴリ，曖昧さ回避ページを指すものとする。本稿では，形態素解析に $\mathrm{MeCab}^{2}$ を利用しその辞書として IPA 辞書 3 を用いた。SVMには TinySVM 4 を利用した，SVM のカーネルには予備実験結果から 2 次の多項式カーネルを用いた。また Wikipedia から Step2 で必要となる属性語リストを抽出した結果, 40,733 個の属性語が獲得でき，ランダムに取り出した 200 語を (徳永他 2006)の厳密な属性語を判定するための基準に従い評価したところ, 精度は $73.0 \%$ だった.

まず Wikipedia の記事に Step1 を適用し, 記事構造から重複を除いて $6,564,317$ 対の上位下位関係候補を獲得した，以降に示す全ての上位下位関係数は重複を除いた数を示す。次に，得られた上位下位関係候補からランダムに 1,000 対取り出してテストデータとした。続いて, テスト用データを除いた上位下位関係候補からランダムに 9,000 対, 抽出元の記事構造中で上位語と下位語が直接の親子関係にあった候補から 9,000 対，図 2 のパターンにマッチしていた上位下位関係候補から 10,000 対, 図 2 のパターンにマッチしなかった上位下位関係候補から 2,000 対をそれぞれランダムに取り出し，人手で正解をつけた。これらから重複を除いて得られた 29,900 対を訓練データとして用いた。 訓練データのうち 19,476 対は, 素性を決定するための予備実験に利用した。 上位下位関係の正解付けは, Miller ら (Fellbaum 1998)の基準に従い 1 名で行っ
^{2} \mathrm{http} / / /$ mecab.sourceforge.net/

${ }^{3}$ http://chasen.naist.jp/chasen/distribution.html.ja

 }^{4}$ http://chasen.org/ taku/software/TinySVM/

た. 具体的には, 各上位下位関係候補（上位語候補の表現 A と下位語候補の表現 B のペア）について，「Bは A の一種あるいは 1 つである」という文が適切であるとき正解とした.

## 5.2 比較手法

提案手法の有効性を確認するため，2 節で説明した既存の語彙統語パターンに基づく上位下位関係獲得手法 (Sumida et al. 2006), および既存の Wikipedia からの上位下位関係獲得手法 (Kazama and Torisawa 2007; Suchanek et al. 2007) と比較を行う. Wikipedia からの上位下位関係の獲得手法は, 英語版 Wikipedia に特化したものであるため, 以下で日本語版 Wikipedia に応用する際に変更した点を記載する.

## Wikipedia の定義文からの上位下位関係の獲得

Kazama らの手法は英語版 Wikipedia のための手法であるため, ここでは国語辞書の語釈文から上位下位関係を獲得した Tsurumaru らの手法を参考に人手で図 4 のような語彙統語パターンを 1,334 パターン用意した (Tsurumaru, Hitaka, and Yoshida 1986; Kazama and Torisawa 2007).

注: +は直前の文字列が連続して出現しうることを， $\{A \mid B\}$ は $A, B$ のいずれかが出現することを示す.

図 4 定義文に適用する語彙統語パターンの一例
図中の〈上位語〉は任意の名詞の連続，〈数字〉は $0 \sim 9$ までの数字の連続，〈漢数字〉は○九などの漢数字の連続を示す。このパターンを定義文に適用することで見出し語を下位語，パター ンで認識された〈上位語〉を上位語とする上位下位関係を獲得する。

## Wikipedia のカテゴリからの上位下位関係の抽出

Suchanek らの手法に従い, 各記事に付与されているカテゴリを上位語候補, 記事の見出し語を下位語候補として上位下位関係候補を獲得する。例えば，図 1（b）の記事からは，「茶／紅茶」という上位下位関係候補が得られる。Wikipedia のカテゴリから獲得できる関係には上位下位関係以外に「喫茶文化／紅茶」などのように見出し語とその関連語間の関係も多く含まれる. Suchanek らの手法では，英語による経験則を用いて，さらに獲得した関係を選別しているが, 日本語には適用できないため, ここではカテゴリから抽出できた全ての関係候補を上位下位関係とみなす。

## 5.3 実験結果

表 3 に提案手法と節 5.2 に述べた比較手法と (Sumida et al. 2006)の手法を比較した結果を示す. 表 3 の各列は左から順に手法の種類, リソース, SVM の閥値, 精度, SVMにより選別された上位下位関係数，およびこれらより求めた期待される正しい上位下位関係の数を示す。ここでは以下のような評価尺度を用いた。

精度 $($ Precision $)=\frac{\text { SVM により選別された上位下位関係のうち正解の関係の数 }}{\text { SVM により選別された上位下位関係数 }}$

再現率 $($ Recall $)=\frac{\text { SVM により選別された上位下位関係のうち正解の関係の数 }}{\text { 評価データ中に存在する正しい上位下位関係数 }}$

正解率 $($ Accuracy $)=\frac{\text { SVM により正しく正例・負例を識別できた関係の数 }}{\text { 評価データ中の関係候補の数 }}$

期待される正しい上位下位関係数 $=$ 抽出できた上位下位関係数 $\times$ 精度

表 3 提案手法と比較手法により獲得した上位下位関係の比較

 & 精度 &  &  \\

比較手法カテゴリ，定義文は 5.2 節で記述した手法を用い，提案手法で利用した Wikipedia と同じデー夕を利用し, 評価サンプル数は 1,000 対である. また比較手法 (Sumida et al. 2006) は, Web から無作為に収集した約 700 GB（HTML タグ含む）の Web 文書に (Sumida et al. 2006) を適用した結果を示し，評価サンプル数は 200 対である。表より提案手法は Wikipedia を入力源とする手法と比較し, 大量の上位下位関係を獲得することに成功した。また, 提案手法と比較手法 (Sumida et al. 2006) を比べると, 提案手法は小さなリソース（2.2 GB の XML 文書）から上位下位関係を抽出したにもかかわらず，より大量の上位下位関係（933,782 語を含む約 174 万対）を獲得できた。

獲得される上位下位関係の精度については, SVM の分類時の閥値を変更することであげることが可能である。精度と再現率とのトレードオフの関係を図 5 に示す. 横軸は再現率, 縦軸は精度を表す。このグラフより, SVM の閥値を大きくすることで, より信頼性の高い上位下位関係を獲得できることが確認できる。例えば閥値を 0.36 にすると, テストデータでの精度は $90 \%$ まで向上する（表 3).この精度でも，他の比較手法より獲得できた上位下位関係は多く, またこの関係に含まれる語数は 774,135 語であった.

次に Step2 で利用した素性の効果を調べるために，各素性を除いたときの精度の比較を表 4 に示す. 表 4 の各列は左から順に素性の種類, 正解率, 精度, 再現率, $\mathrm{F}$ 値を表す.またこのときの精度と再現率とのトレードオフの関係を図 6 に示す. 各素性は本稿で提案した全ての素性を含む素性セットを ALL, ALL から素性 $X$ を除いた素性セットをALL- $X$ とした。また（）内は素性セット ALL- $X$ の精度から素性セット ALLの精度を引いた結果であり,この値が低ければ低いほど，素性 $X$ が提案手法の性能の向上に役立っていることを意味する。これらの結果より, 全ての素性が Step2 のフィルタリング性能の向上に役立っていることが確認できた. また

図 5 精度と再現率とのトレードオフ
表 4 各素性による効果

図 6 再現率一精度グラフによる素性の比較
表より全ての素性が精度の向上に寄与しており, 特に素性 MORPH による効果が大きいことがわかった。一方, 再現率の向上には素性 POS, MORPH, LAYER, LCHARが寄与しており,特に素性 LCHAR が最も高い効果をもつことがわかった。

つづいて，訓練データの量を変化させたときの提案手法の性能の変化を調べた。訓練デー夕は Step1の結果からランダムに抽出した 9,000 対を利用し, 1,000 対から 9,000 対まで 3,000 対ごとに評価を行った．その結果を図 7 (a)，（b）に示す。図 7 （a）はSVM の分類時の閥値を 0 に固定したグラフで，横軸は訓練データの量，縦軸は精度，再現率， $\mathrm{F}$ 値を示す。また図 7 (b) はSVM 分類時の間値を変化させ精度と再現率のトレードオフを調べたグラフで，横軸は再現率, 縦軸は精度を示す. 図 7 （a）より訓練データの量を増やすことで再現率の性能が向上する

（a）訓練データの量の変化に伴う精度, 再現率, $\mathrm{F}$ 值の変化

（b） 訓練データの量の変化に伴う再現率と精度のトレードオフの変化

図 7 訓練データの量による性能の変化
傾向がわかった．また図 7 （b）より，SVM の間値を変化させた場合でも，訓練データのサイズを増やすことで，性能が向上する傾向にあることが確認できた。この結果は訓練データをさらに増やせば提案手法の性能がさらに向上する可能性を示唆している。

## 5.4 考察

提案手法により得られた上位下位関係の例を表 5 に示す.ここでは, 人手で選んだ 25 語についてランダムに 10 対の下位語を選択した。表中の* は上位下位関係が誤りの例を，\# は小説や映画などのフィクション上でなりたつ架空の上位下位関係を示す.このような架空の上位語, あるいは下位語は，フィクション自体に関する記述（感想）や，比喻表現として日常的に用いられることも多いため，本稿ではそれ以外の上位下位関係と特に区別せず，有用な上位下位関係知識とみなし Miller ら (Fellbaum 1998) の基準で正解か誤りかを判断した.これらの架空の上位下位関係とそうでない上位下位関係を識別することは今後の課題の一つである。 また表の各列は左から人手で選んだ上位語とその下位語の例を示している。この例より，ほとんどの上位下位関係は，上位語ごとに多少の精度の偏りがみられるものの正しく認識できていることが確認できる。

最後に，提案手法の性能を悪化させている原因を探るべく，SVM 分類器により誤りとされた上位下位関係候補を人手で分析した。テストデータ，訓練データ以外の上位下位関係候補からランダムに 1,000 対抽出し, 人手で評価した。誤り分析用データに提案手法を適用した結果，その精度は $89.1 \%$ であり，この内訳は内訳は陽性が 233 対，陰性が 658 対，偽陽性が 22 対，偽陰性が 87 対であった.

表 6 に偽陽性の分類結果を示す。表の各列は，左から分類の種類，数，SVM スコアの平均，例を示す。この結果から，部分全体関係が最も頻出する誤りであるうえに，SVM スコアの平均から最も除去しにくい誤りであることがわかった。このような誤りを取り除くことは今後の課題である。また，精度を低下させる原因として，属性・属性値と facet 含む関係を上位下位関係と誤判定する問題が多いことも分かった。ここでいう facet とはインスタンスを分類するための属性の值である，例えば，図 1 (c) の記事構造中の「主な紅茶ブランド」と「Wedgwood」 との間に挿入されている「イギリス」は「Wedgwood」などのブランドを国別で分類するための facet であるといえる。提案手法では自動抽出した属性リストを用いてこのような誤りの除去を試みたが，表 6 より提案手法の対策だけでは不十分であり，新たに記事構造中の他のノードの情報を素性とするなど改善が必要であることがわかった。また「プロレス技／代表的な技」のように，素性 LCHAR が悪影響を及ぼしていると思われる例も存在した。

つづいて，陽性と偽陰性と判定された関係の上位語が訓練データ中に存在したか否かを調查した。陽性では $66.6 \%$, 偽狯性では $16.7 \%$ の上位語が訓練データ中に存在していることがわかった.未知の上位語であっても正しく判定できるようにするために，より上位の語や同義語の利
表 5 獲得した上位下位関係の例

 \\

表 6 偽陽性の分類結果

表 7 陰性の分類結果

用を考えている.

最後に，表 7 に陰性を人手で分類した結果を示す. 表の各列は左から誤りの分類, 数を示す. ここでは，上位下位関係以外の何らかの概念間関係に分類できるかどうかに注目して分類した. この結果，約 $80 \%$ にいては何らかの概念間関係になっていることが分かった。これらについては，正しく分類できれば語彙知識として有用である。本稿では上位下位関係に注目し，二値分類の分類器を用いたが，適切な関係に分類する多値分類を構築することで，Wikipedia の記事構造を余すことなく，語彙知識に変換することができそうである.

## 6 まとめ

本稿では, Wikipedia の記事構造を知識源とした上位下位関係獲得手法を提案した。提案手法は，「Wikipediaの記事構造中のノード間の関係は多くの上位下位関係を含む」という仮定と機械学習を併用することにより，約 135 万対の上位下位関係を精度 $90 \%$ で獲得することに成功した。本稿では 2007 年 3 月時点での Wikipedia から上位下位関係を獲得したが, Wikipedia は現在も成長を続けており提案手法を最新の Wikipedia データに適用することでさらに多くの上
位下位関係を獲得することも可能であると考えられる.

実験結果より, Wikipedia の記事構造は上位下位関係だけでなく, 属性一属性値の関係, 部分全体関係などの記述にも頻繁に使われていることがわかった. 今後の課題として, 上位下位関係だけでなく部分全体関係や属性一属性値の関係を獲得したいと考えている。また 5 節で述べたように獲得した上位下位関係には，フィクションの世界でのみ成り立つ架空の上位下位関係が含まれている。これらの架空の世界でのみ成り立つ上位下位関係を識別することは今後の課題である. 更に, Wikipediaの記事には他の言語で記述された記事へのリンクが執筆者によって付与されており,これらのリンクを利用して様々な言語の上位下位関係を獲得することも考えている.

## 参考文献

Bunescu, R. C. and Paşca, M. (2006). "Using encyclopedic knowledge for named entity disambiguation." In Proceedings of the 11th Conference of the European Chapter of the Association for Computational Linguistics, pp. 9-16.

Etzioni, O., Cafarella, M., Downey, D., Popescu, A.-M., Shaked, T., Soderland, S., Weld, D. S., and Yates, A. (2005). "Unsupervised named-entity extraction from the web: An experimental study." Artificial Intelligence, 165 (1), pp. 91-134.

Fellbaum, C. (Ed.) (1998). WordNet: An electronic lexical database. MIT Press.

Fleischman, M., Hovy, E., and Echihabi, A. (2003). "Offline strategies for online question answering: Answering questions before they are asked." In Proceedings of the 41st Annual Meeting on Association for Computational Linguistics, pp. 1-7.

Hearst, M. A. (1992). "Automatic acquisition of hyponyms from large text corpora." In Proceedings of the 14th International Conference on Computational Linguistics, pp. 539-545.

Herbelot, A. and Copestake, A. (2006). "Acquiring ontological relationships from Wikipedia using RMRS." In Proceedings of Web Content Mining with Human Language Technologies workshop on the fifth International Semantic Web Conference.

Kazama, J. and Torisawa, K. (2007). "Exploiting Wikipedia as external knowledge for named entity recognition." In Proceedings of the 2007 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, pp. 698-707.

Pantel, P. and Pennacchiotti, M. (2006). "Espresso: Leveraging generic patterns for automatically harvesting semantic relations." In Proceedings of the 21st International Conference on Computational Linguistics and the 44th Annual Meeting of the Association for Computational Linguistics, pp. 113-120.

Ruiz-Casado, M., Alfonseca, E., and Castells, P. (2005). "Automatic extraction of semantic relationships for WordNet by means of pattern learning from Wikipedia." In Proceedings of the 10th International Conference on Applications of Natural Language to Information Systems, pp. 67-79.

Shinzato, K. and Torisawa, K. (2004). "Acquiring hyponymy relations from web documents." In Proceedings of the 20th International Conference on Computational Linguistics, pp. 73-80.

Suchanek, F. M., Kasneci, G., and Weikum, G. (2007). "YAGO: A core of semantic knowledge unifying WordNet and Wikipedia." In Proceedings of the 16th International World Wide Web Conference.

Sumida, A., Torisawa, K., and Shinzato, K. (2006). "Concept-instance relation extraction from simple noun sequences using a search engine on a web repository." In Proceedings of the Web Content Mining with Human Language Technologies workshop on the fifth International Semantic Web Conference.

Toral, A. and Muñoz, R. (2006). "A proposal to automatically build and maintain gazetteers for named entity recognition by using Wikipedia." In Proceedings of Workshop on New Text held at the 11th Conference of the European Chapter of the Association for Computational Linguistics.

Tsurumaru, H., Hitaka, T., and Yoshida, S. (1986). "An attempt to automatic thesaurus construction from an ordinary Japanese language dictionary." In Proceedings of the 11th International Conference on Computational Linguistics, pp. 445-447.

Vapnik, V. N. (1998). Statistical Learning Theory. Wiley-Interscience.

安藤まや, 関根聡, 石崎俊 (2003). “定型表現を利用した新聞記事からの下位概念単語の自動抽出.” 情報処理学会研究報告 2003-NL-157, pp. 77-82.

今角恭祐 (2001). “並列名詞句と同格表現に着目した上位下位関係の自動獲得.” Master's thesis,九州工業大学.

大石康智, 伊藤克亘, 武田一哉, 藤井敦 (2006). “単語の共起関係と構文情報を利用した単語階層関係の統計的自動識別." 情報処理学会研究報告 2006-SLP-61, pp. 25-30.

徳永耕亮, 風間淳一, 鳥澤健太郎 (2006). “属性語の Web 文書からの自動獲得と人手評価のための基準." 自然言語処理, $\mathbf{1 3}(4)$, pp. 49-67.

鳥澤健太郎，隅田飛鳥，野口大輔，風間淳一 (2008). “自動生成された検索ディレクトリ「鳥式」 の現状.”言語処理学会第 14 回年次大会発表論文集, pp. 729-732.

渡邊陽太郎, 浅原正幸, 松本裕治 (2008). “グラフ構造を持つ条件付確率場による Wikipedia 文書中の固有表現分類." 人工知能学会論文誌, 23 (4), pp. 245-254.

## 略歴

隅田飛鳥 : 2007 年北陸先端科学技術大学院大学情報科学研究科前期課程終了.現在, 同大学情報科学研究科後期課程在学中. 修士 (情報科学). 自然言語処理の研究に従事.

吉永直樹: 2005 年東京大学大学院情報理工学系研究科博士課程修了. 2002 年より 2008 年まで日本学術振興会特別研究員 (DC1, PD)， 2008 年 4 月より東京大学生産技術研究所特任助教. 博士 (情報理工学). 自然言語処理の研究に従事.

鳥澤健太郎：1995 年東京大学大学院理学系研究科情報科学専攻博士課程中退, 同年同専攻助手. 北陸先端科学技術大学院大学助教授を経て, 2008 年より (独)情報通信研究機構・MASTAR プロジェクト・言語基盤グループ・グループリーダー. 博士 (理学). 自然言語処理の研究に従事.

$(2008$ 年 10 月 16 日 $\quad$ 受付 $)$
$(2008$ 年 12 月 28 日 $\quad$ 再受付 $)$
$(2009$ 年 1 月 28 日採録 $)$


# 日本語LFGにもとづく助数詞の処理

大熊 智子 $\dagger \cdot$ 梅基 宏 $\dagger \cdot$ 三浦 康秀 $\dagger \cdot$ 増市 博 $\dagger$
}

事物の数量的側面を表現するとき, 数詞の後に連接する語を一般に助数詞と呼ぶ.英語などでは名詞に直接数詞が係って名詞の数が表現されるが，日本語では数詞だ けでなく助数詞も併せて用いなければならない. 名詞と助数詞の関係を正しく解析 するためには, 助数詞が本来持つ語彙としての性質と構文中に現れる際の文法的な 性質について考慮する必要がある。本稿では，数詞と助数詞の構文を解析するため の Lexical-Functional Grammar (LFG) の語彙規則と文法規則を提案し，その規則 の妥当性と解析能力について検証した，提案した規則によって導出される解析結果 (f-structure) と英語, 中国語の f-structure をそれぞれ比較することによって，日本語内での整合性と多言語間との整合性を有していることが確認できた。また, 精度評価実験の結果，従来の LFG 規則に比べて通貨・単位に関する表現では $25 \%$ ，数量 に関する表現では $5 \%$, 順序に関する表現では $21 \%$ の $\mathrm{F}$ 値の向上が認められた.

キーワード：助数詞，語彙機能文法, 文法規則, 構文解析
## Treatment of Numerical Classifier Based on Lexical-Functional Grammar

\author{
Tomoko Ohkuma ${ }^{\dagger}$, Hiroshi Umemoto $^{\dagger}$, Yasuhide Miura ${ }^{\dagger}$ and Hiroshi Masuichi ${ }^{\dagger}$
}

Japanese numeral classifier (NC) expresses quantificational expressions by following number nouns. The parser based on phrase structure grammar like Lexical-Functional Grammar (LFG) or Head-driven Phrase Structure Grammar (HPSG) has to define the relationships between noun and $\mathrm{NC}$ or number and $\mathrm{NC}$ by the grammatical rules. NC has various relationships syntactically because of its' various characteristics. The treatment of NCs in LFG formalism should take account of their lexical and syntactical characteristics. This report proposed LFG rules for NCs and examined their validity and accuracy. The comparison between Japanese f-structure inducted by the rules proposed in this report and English f-structure and Chinese f-structure which correspond to the Japanese f-structures show that the rules make f-structures parallel between same phrases in Japanese and in other languages. The experiment of evaluations shows the rules improve F-score of NCs for currency and unit from $52.10 \%$ to $77.90 \%$ and F-score of NCs for quantity from $81.92 \%$ to $87.32 \%$ and F-score of NCs for Order from $59.62 \%$ to $81.26 \%$.

Key Words: Numerical Classifier, Lexical-Functional Grammar, grammar rules, syntactic parsing

## 1 はじめに

## 1.1 背景

事物の数量的側面を表現するとき，「三人」，「5 個」，「八つ」のように，「人」，「個」「つ」という付属語を数詞の後に連接する。これらの語を一般に助数詞と呼ぶ. 英語などでは “3 students”, “5 oranges” のように名詞に直接数詞が係って名詞の数が表現されるが, 日本語では「3人の学生」「みかん五個」のように数詞だけでなく助数詞も併せて用いなけれげならない.

形態的には助数詞はすべて自律的な名詞である数詞に付属する接尾語とされる. しかし, 助数詞の性質は多様であり，一律に扱ってしまうことは統語意味的見地からも計算機による処理においても問題がある。また構文中の出現位置や統語構造によって，連接する数詞との関係は異なる。つまり，数詞と助数詞の関係を正しく解析するためには1）助数詞が本来持つ語彙としての性質，そして2）構文中に現れる際の文法的な性質について考慮する必要がある.

KNP (黑橋 2000) や cabocha (工藤, 松本 2002) などを代表とする文節単位の係り受け解析では, 上記のような数詞と助数詞の関係は同じ文節内に含まれるため, 両者の関係は係り受け解析の対象にならない，ところが，単なる係り受け以上の解析，例えば Lexical Functional Grammar (以下, LFG) や Head-driven Phrase Structure Grammar（以下, HPSG）のような句構造文法による解析では，主辞の文法的役割を規程する必要がある。つまり文節よりも細かい単位を対象に解析を行うため, 名詞と助数詞の関係や数詞と助数詞の関係をきちんと定義しなければならない.

上記のような解析システムたけでなく, 解析結果を用いた応用アプリケーションにおいても助数詞の処理は重要である。(梅基, 杉原, 大熊, 増市 2008) で紹介されている検索システムにおける含意関係の判定では数量，価格，順番などを正しく扱うことが必要とされる。

## 1.2 本研究の目的

本稿では，数詞と助数詞によって表現される構文『を解析する LFG の語彙規則と文法規則を提案し，計算機上で実装することによってその規則の妥当性と解析能力について検証する。これらの LFG 規則によって出力された解析結果 (f-structure) の妥当性については, 下記の二つの基準を設ける。

(1) 他表現との整合

統語的に同一の構造を持つ別の表現と比較して, f-structure が同じ構造になっている.

(2) 他言語との整合

他の言語において同じ表現の f-structure が同じ構造になっている.

2 章では助数詞に関する従来研究を概観し, 特に関連のある研究と本稿の差異について述べる. 3 章では助数詞のための LFG 語彙規則と助数詞や数詞を解析するための LFG 文法規則を提案する。 4 章では 3 章で提案した LFG 規則を (増市，大熊 2003) の日本語 LFG システム上で実装し，システムによって出力される f-structure の妥当性を上記の二つの基準に照らして検証する。日本語と同様にベトナム語や韓国にも日本語のそれとは違う性質をもった固有の数詞と助数詞が存在する (矢崎 1999)。 また, 日本語の助数詞は一部の語源が中国語にあるという説もあり, その共通性と差異が (渡辺 1952) などで論じられている。そこで, Parallel Grammar Project (Butt, Dyvik, King, Masuichi, and Rohrer 2002)（以下，ParGram）において LFG 文法を研究開発している中国語 LFG 文法 (Fang and King 2007) で導出された f-structure を対象にして，基準 2 を満たしているかを確認するために比較を行う.

“ $3 \mathrm{~kg}$ ” の ' $\mathrm{kg}$ ’ や, “10 dollars” の 'dollar' など, 英語にも数字の後に連接する日本語の助数詞相当の語が存在する。また，日本語においても英語のように助数詞なしに数詞が直接連接して名詞の数量を表現する場合もある。ParGram において英語は最初に開発された LFG文法であり， その性能は極めて高い (Riezler, King, Kaplan, Crouch, Maxwell, and Johnson 2002). ParGram に参加する他の言語は必ず英語の f-structure との比較を行いながら研究を進める．以上のことから，中国語だけではなく (Riezler et al. 2002)の英語 LFG システムで出力された f-structure との比較を行う. 5 章では精度評価実験を行って，解析性能を検証する．数詞と助数詞によって形成される統語をLFG 理論の枠組みで解析し, 適切な f-structure を得ることが本研究の目的である.

## 2 先行研究

国語学や言語学の分野において，助数詞に関する研究は古くから行われてきた。また，文法的な性質だけでなく, 助数詞や助数詞の数える対象である名詞との関係に着目して, 意味的な分類を行う試みもある。 さらに，自然言語処理の分野では助数詞の特徴を考慮して処理を行う解析手法が提案されている. 本章では助数詞の文法に関する研究, 助数詞の分類に関する研究,助数詞を対象にした自然言語処理についてそれぞれ概観する。

## 2.1 助数詞の文法に関する研究

日本語助数詞の代表的な研究に (見坊 1965) が挙げられる. 形態的には「最も単純な品詞」とされてきた助数詞であるが用法の点では助数詞の振る舞いが複雑多様であることを指摘した上で，その個別的な用法を用例に即して紹介している.

(見坊 1965) では世の中には生活の必要に応じていろいろな物の数え方があり, 生活の新しい場面，新しい話題に即して新しい助数詞が生まれると述べられている。その一方で明治の始まる
前後までは助数詞として用いられてきたが，現在はその機能が失われている語の例が指摘されている.このような「助数詞の用いられ方の変化」に着目し, (荻野 1989) は大規模なアンケー 卜を実施して，助数詞の実際の用いられ方について調査を行った. さまざまな年代, さまざまな職種の男女半数づつ計 425 人に対して行われたアンケート結果から年齢層別の助数詞の使われ方の差異を明らかにしている. さらに (谷原, 顔瑞珍, Debbie 1990) では (荻野 1989)の調査結果に基づき，5つの助数詞の典型的な用法について考察している.

助数詞を数詞に連接する付属語ではなく数詞の語尾とする研究もある (森 1958). しかし, 本稿では二つの理由からこの立場は採用しない。一つは, 助数詞に関する様々な現象を説明するのに, 語尾という考え方は不適切であると考えるからである。(見坊 1965)で指摘されているような多様性や可変性を説明するのに，数詞と助数詞は独立した語であると考えるのが自然である.もう一つは, LFG 規則を実装する日本語 LFG システムにおいて, 形態素解析に茶筌 (数詞とその語尾としての助数詞) を用いているためである。茶筌では数詞と助数詞を明確に分けている ${ }^{2}$.

本稿で扱う対象ではないが, 日本語数量詞の大きな研究課題の一つに数量詞遊離構文の問題がある (岡部 2006). 遊離数量詞とは (a)「3 個のりんごを食べた」(b)「りんごを 3 個食べた」の (b)のような構文である。この構文をめぐって，(a)の連体数量詞文との置換の可否や，その決定要因, また (a), (b) の表現の意味やニュアンスの違いについて様々な先行研究が分析や解釈を行っている。これらの課題を解決するためには, 文法的な関係というよりはむしろ数量表現とそれが指す名詞や動詞などの意味関係に着目しなければならない.

## 2.2 助数詞の分類に関する研究

(Matsumoto 1993) はプロタイプ理論に基づいて, 認知意味論的な立場から, 助数詞の分類を試みている。(飯田 2004)は, 助数詞ならびに助数詞と同じ働きをする名詞 600 語に対し, 数えられる対象や同じ対象を数える助数詞群の共通点や差異について解説を行っている。（白井,徳永 2007) は(飯田 2004) に記載されている助数詞 $\mathrm{c}$ とそが数える名詞 $\mathrm{n}$ を書き起こしたデー タから一つの $\mathrm{c}$ が二つ以上の $\mathrm{n}$ とぺアになっているもの計 9,352 組を用いて, 自動的に助数詞オントロジーを構築する手法について提案している.

## 2.3 助数詞を対象とした自然言語処理に関する研究

(Bond and Paik 2000) は翻訳などのアプリケーションに必要となる日本語文生成の際に, オントロジーを用いて名詞の意味的な情報を参照し助数詞を選択する手法について提案している.英語でも “ten feet long” の 'feet’’ “two shelves higher” の 'shelves’のように日本語の助数詞に

似た数量表現が存在する。 (Flickinger and Bond 2003)はこのような表現を対象にして HPSG システム上で解析を行う手法を提案している.

上記と同様に HPSGに関する研究ではあるが, 本稿に最も関連のある先行研究は (Bender and Siegel 2004) である. (Bender and Siegel 2004) は日本語 HPSG 文法において助数詞を解析し,適切な解析結果，すなわち Minimal Recursion Semantics（以下，MRS）を出力する手法について提案している。本研究も基本的な目的は同様であるが，次の点が異なる。まず，(Bender and Siegel 2004) では網羅的な助数詞の処理を提案していながら，MRSについての考察は主に対象となる名詞を数え上げるための助数詞に限定されていることである。本稿では，その他の助数詞についても考察を行う．さらに，助数詞が省略されていてもその省略の有無に関係なく同一の f-structure を導出する文法や助数詞の性質を変化させる接頭辞や接尾語を考慮した文法について提案する。また，二つの基準を設定して f-strucrture の妥当性を検討することも本稿の特徴である。 さらに (Bender and Siegel 2004)には，提案されている語彙規則 (type hierarchy) に助数詞をどのように割り当てるかの具体的な記述がない. 本稿では, LFGの語彙規則 (lexical category) に語を割り当てる方法についても言及する。また，本稿では，今回提案した文法がどのくらい網羅的に実際のテキストを処理できるかを検証するための精度評価実験を行う．

## 3 助数詞のための日本語 LFG 規則

## 3.1 LFG 規則の表記法について

提案規則の詳細について述べる前に，この節では LFG 規則の表記方法について説明する.

LFG 規則は語彙規則と文法規則によって定義される。語彙規則では， f-structure の素性に対応する SUBJ(ect) や OBJ(ect) などの引数 (argument) や lexical category, 属性と属性值などを定義する。 (1) に語彙規則の例を示す。1 行目は動詞「読む」にV という lexical category が割り当てられており，PRED(icate)「読む」は argument に SUBJ と OBJ という二つの引数を持つことが記述されている。 2 行目には名詞「太郎」の lexical category が Nであり PREDが「太

が「本」であることが記述されている。 4 行目には格助詞「が」の lexical category が PP であり，主格を示す属性 NOM(inative) とその値 ‘十’を持つことが記述されている．5 行目には格助詞「を」の lexical category が PP であり，目的格を示す属性 ACC(usative) とその値 ‘十’を持つことが記述されている.

(1)

文法規則は，句構造規則とそれに付与される機能的注釈で表現される。注釈において用いられる ‘个'という記号は句構造の一つ上の節点に存在する f-strucutreを, ' $\downarrow$ 'は現在の節点の f-structure を指す.（2）に (1)の語彙規則を含む文法規則を示す. 1 行目の句構造規則では， 0 個以上の NP と V がSになることを定義している。 Vに付与されている注积は V の PREDが一つ上，すなわち文全体の PRED であることを定義している．NP に付与されている注釈は NOM 属性の値が‘十’であればNPの值が一つ上のSUBJに，ACC 属性が‘十’であればOBJになることを定義している. 2 行目の句構造規則では，N と PPがNPになることを定義している. Nに付与されている注釈は PREDが一つ上の節点である NP の PRED であることを定義している。(1)の語彙規則と (2)の文法規則を「太郎が本を読む」の解析に適用すると, 図 1 に示すように句構造

図 1 LFG 規則の適用例
規則によって c-structureの木構造が形成されると同時に，機能的注釈によって属性と属性値で表現される $\mathrm{f}$-structure が生成される。

## 3.2 助数詞のための語彙規則

表 1 に助数詞の語彙カテゴリの一覧を示す. 本稿では助数詞が数詞に持たせる数の性質（基数／序数）という側面から「数量」、「順番」という二つの語彙カテゴリを設定する。また，(国語学会 1980) では単位名を表す「メートル」,「円」などを助数詞に含めないとする説があることを紹介しているが，文法的には同じ働きをすることが指摘されている，本稿ではこの立場から，これらの語も助数詞とする。ただし，上述の二つのカテゴリとは別に「単位」，「通貨」という項目を設け，さらに数詞との位置関係から通貨を細分類した。それぞれの語彙カテゴリについて以下に述べる.

単位に関する語彙カテゴリは, 計測する対象の計測基準量を表す助数詞に割り当てられる。日本語 LFG システムにおいてこの語彙カテゴリには EDR 概念辞書 (日本電子化辞書研究所 1996) の接尾語のうち, 単位に分類されている語から「ヶ月」,「週目」などの時間に関する語を除いた

重は $\mathrm{Kg}$ で入力して下さい」や「対ユーロでドルが下落している」など，単位や通貨も数詞を伴わずに単独で名詞として用いられる場合がある，従って，このカテゴリの語には単に助数詞としての語彙ルールだけではなく, 名詞としてのカテゴリも割り当てる. さらに, 助数詞として働く場合でも名詞の属性である NTYPE を付与する。これは，後述する英語の f-structure と平行にするためでもある。

通貨に関する語彙カテゴリは (Bender and Siegel 2004)と同様にその語彙的な特徴から二つに分ける。まず，数詞の後に連接する後置詞，つまりいわゆる助数詞とほぼ同じふるまいをする語群である。この語彙カテゴリに属する語は EDR 概念辞書の「計量の単位」(概念 ID '30f93d') の下位概念である「金銭の単位」（概念 ID “ $4446 \mathrm{bd}$ ') の直下にある語を採用した. ただし，これらの語のうち「両」や「文」など通貨の単位ではあるものの現在ほとんど使われておらず，助

表 1 助数詞の語彙カテゴリ一覧

 &  & 人, 個, 粒, 膳, 部 \\

数詞の他のカテゴリに分類した方が適切であると判断した語は除いた. 一方，数詞の前に連接する前置詞のカテゴリにはコーパスを観察した結果得られた 3 語だけが割り当てられている. これらの語は助数詞というよりは純粋な名詞, もしくは記号としての性質が強い. しかし, 通貨に関する数量表現の整合を考慮して, これらの語にも語彙カテゴリと文法ルールを割り当てた。通貨も単位と同様の理由から名詞のカテゴリも割り当て, NTYPE 属性も付与する.

数量に関する語彙カテゴリはもっとも典型的な助数詞と言える語に割り当てるカテゴリである.このカテゴリには，助数詞の表層を示す CLASSIFIER-FORM 属性と助数詞の性質を示す CLASSIFIER-TYPE 属性を付与する。このカテゴリに属する語は IPA 辞書 (IPAdic) に登録されている接尾語のうち, 数えられるものを特徴づける語を人手で選別した.

順番に関する語彙カテゴリは物事の順序を示す助数詞である。このカテゴリにも CLASSIFIERFORM と CLASSIFIER-TYPE 属性を与える。このカテゴリには, 英語の序数を英訳したときに用いられる語である「等」, 「位」,「号」,「級」,「流」及び IPA 辞書において品詞が助数詞として定義されている語のうち「目」，「番」，「次」を含む語で，単位を示す「貫目」，「次元」を除いた語を採用した。

## 3.3 助数詞のための文法規則

表 2 に助数詞の語彙カテゴリの一覧を示す. 本節では数詞が助数詞もしくは名詞に連接して数量を表現している構文を解析するための文法について述べる．助数詞の語彙カテゴリは 3.2 節のものを用いる.

## 3.3.1 単位や通貨に関する文法規則

単位や通貨に関する文法規則を (3) に示す。単位や通貨を表す助数詞が数詞と連接する場合には，助数詞を PRED とし，数詞がそれを修飾する。これは英語の “ $3 \mathrm{~kg} "$ や10 dollars” の f-structure との整合性を図ると同時に， 3.2 節でも述べたようにこれらの助数詞が接尾辞という

表 2 助数詞を解析するための文法規則一覧

よりもむしろ独立した名詞としての性質が強いと考えるからである.

単位・通貨は修飾先の名詞の属性について述べるために用いられる。例えば「60デニールのストッキング」であれば「60デニール」はストッキングの数量ではなく,「繊維密度」を表現しているのであり，「300 円のストッキング」の「300 円」はストッキングの「価格」を表現している. つまり「60デニール（という繊維密度）のストッキング」，「300円（という価格）のストッキング」と解釈できる。従って，「60」や「300」などの数詞は直接「ストッキング」を修飾しているのではなく,「デニール」や「円」を修飾しているとして解析するのが妥当である.

さらに，通貨を示す接頭語が数詞に連接する表現を解析する文法を (4) に示す.これも上記と同じ理由から接頭語を PREDとし，数詞がそれを修飾する。

(3) $\quad$ Nadj $\longrightarrow \quad(N U M B E R)$

$(\uparrow$ SPEC NUMBER $)=\downarrow$
\{ CL_unit | CL_currency $\}$

$
(\uparrow \mathrm{PRED})=\downarrow
$

Nadj: 体言 NUMBER: 数詞 CL_unit: 単位に関する助数詞 CL_currency: 通貨に関する助数詞 () : 省略可能 |: OR PRED: 主辞 SPEC: 指定部

Nadj $\longrightarrow$ CL_Pref_currency

NUMBER

$
(\uparrow \text { PRED })=\downarrow \quad(\uparrow \text { SPEC NUMBER })=\downarrow
$

CL_Pref_currency：通貨に関する接頭語

## 3.3.2 数量に関する文法規則

数量を表す助数詞は，数詞の中でも「もの」や「こと」の数量を表現するのに用いられる典型的なものである.「3 個のりんご」や「3箱のりんご」の「3 個」や「3箱」はいずれもりんごの数や量を表している，単位・通貨とは異なり，数詞「3」は「りんご」を直接修飾していると考えられる。つまり，助数詞は「数え方」を表現するために補助的に用いられる接尾語として扱う。この場合, 「個」と「箱」の数え方の違いは f-structure の構造そのものには反映されないが，助数詞の表層を属性値として表現することで，オントロジなどの知識源を利用した意味解析や文脈解析の処理を利用してより詳細な数え方の違いを扱うことを想定している.

数量に関する文法規則は，数詞と助数詞だけではなく，それによって数えられる名詞についても記述する必要がある．例えば「りんご 3 個」と「 3 個のりんご」はそれぞれ「 3 個」が「りんご」の数を表しているため, これらの解析結果は同じであることが望ましい.

(5)に「3 個のりんご」と「りんご 3 個」を解析するための文法規則を示す.この規則では PRED はりんごであり，その数が 3 であると解析する. これは英語の “ 3 apples” と同じ $f$-structure を持たせることを意図した分析である.

$
\begin{aligned}
& \text { Nadj } \longrightarrow \\
& \text { \{ NPnum } \\
& (\uparrow \text { SPEC NUMBER })=\downarrow \\
& \text { | Nadj } \\
& (\uparrow \mathrm{PRED})=\downarrow \\
& \text { Nnumeric }\} \\
& (\uparrow \text { SPEC NUMBER })=\downarrow \\
& \text { NPnum } \longrightarrow \quad \text { Nnumeric } \quad \text { PPadnominal } \\
& (\uparrow \mathrm{PRED})=\downarrow \\
& (\uparrow \mathrm{PRED})=\downarrow \quad(\uparrow \text { NUMBER-TYPE })=\text { cardinal }
\end{aligned}
$

Nnumeric $\longrightarrow \quad$ NUMBER CL_cardinal

CL_cardinal: 数量に関する助数詞 PPadnominal: 連体化助詞

また「3個の値段」,「3 個を食べた」など，数える対象である名詞が省略され，数詞と助数詞が単独で現れる場合もある。このような現象を解析するための文法規則を (6) に示す.この文法規則では PRED には代名詞を示す記号 ‘PRO’を挿入し，その属性に表層が無いことを示す属性值 null を与える。この操作によって, 名詞の省略の有無によらず同じ構造の f-structure を出力することができる.

上述 (5) と下記の (6) の二つの規則は数詞と助数詞に同時に適用される. 体言には (7) に示すように連体化助詞による連体修飾のための規則も定義されていることから，数量に関する表現が連体化助詞によって連体修飾を行う場合には，常に二つの f-structure が出力される.

Nadj $\longrightarrow \quad$ Nnumeric

$(\uparrow$ SPEC NUMBER $)=\downarrow$

$(\uparrow$ PRED $)=$ 'pro'

$(\uparrow$ PRON-TYPE $)=$ null

e: 省略記号

$
\begin{aligned}
& \text { Nadj } \longrightarrow \quad \text { NPadnominal } \quad \text { Nadj } \\
& (\uparrow \text { ADJUNCT }) \ni \downarrow \quad(\uparrow \mathrm{PRED})=\downarrow \\
& \text { NPadnominal } \longrightarrow \quad \text { Nadj } \quad \text { PPadnominal } \\
& (\uparrow \mathrm{PRED})=\downarrow
\end{aligned}
$

ADJUNCT: 修飾成分

また，上述とは逆に，「3 自衛隊」や「7 競技」のように助数詞を伴わずに直接数詞が名詞に連接してその数を表すことがある。このような現象を解析するための文法規則を (8)に示す. この文法規則では助数詞の表層を表す CLASSIFIER-FORM 属性に表層が無いことを示す属性値 'null' を与えることにより，助数詞の有無によらず同じ構造の f-structure を出力することができる.

(8) $\quad \mathrm{Nadj} \longrightarrow$

NUMBER

e

$\mathrm{N}$

$(\uparrow$ SPEC NUMBER $)=\downarrow \quad(\uparrow$ CLASSIFIER-FORM $)=$ null $\quad(\uparrow$ PRED $)=\downarrow$

$\mathrm{N}$ : 名詞

## 3.3.3順番に関する文法規則

数詞が順番を示す表現は主に三つが想定される。まず一つは 3.2 節で挙げた順番に関する助数詞が連接した場合である。このような構文に対しては (5) の文法がほぼそのまま適用できる. もう一つは接尾辞や接頭辞の連接によって数詞や助数詞の性質が変化する場合である。これは, $\lceil 3$ 人目」,「5 回目」のように数量を表す助数詞に接尾辞「目」が連接する場合と「第 3 章」,「第 1 回」など数詞の前に接頭辞「第」が連接する場合がある。さらに，「第 3 回目」，「第 5 次」など，接頭辞は助数詞が順番を示していても任意に連接する場合がある.

これらの現象を解析するための文法規則を (9) に示す. 助数詞の属性値が基数を示す cardinal であっても，数詞の示す数の性質は基数から序数に変化する，従って，語彙ルールには接尾辞によって数詞の属性 NUMBER-TYPE が序数を示す値 ordinal になる可能性について記述しておく必要がある。(10)に数量を示す助数詞「回」の語彙規則の記述例を示す.

 &  \\

CL_Pre_ord: 第 CL_Post_ord: 目

(10) 回 CL_cardinal $\{(\uparrow$ NUMBER-TYPE $)=$ cardinal

${ }_{c}$ : 制約条件の相等

$\mid(\uparrow$ NUMBER-TYPE $)={ }_{c}$ ordinal $\}$

さらに接頭辞「第」は「第 3 の男」,「第 6 のコース」のように助数詞を伴わない単独の数詞に連接して数の性質を序数にする場合がある。このような現象を解析するための文法規則を (11) に示す.

(11) $\quad$ Nadj $\longrightarrow$

CL_Pre_ord

NUMBER

$(\uparrow$ NUMBER-TYPE $)=$ ordinal $\quad(\uparrow$ PRED $)=\downarrow$

## 3.3.4 機能的関係と照応的関係について

(Bender and Siegel 2004) は，可算名詞を修飾する助数詞の処理において，「猫を 2 匹飼う」のように，格助詞「を」に連接する NP の後に単独で現れる数詞と助数詞を NP の修飾要素とし

て扱う文法規則を提案している。しかし，本稿の文法規則はこのように数詞と助数詞が単独で現れる場合には助数詞の修飾先として代名詞を示す記号 'PRO'を挿入する。これは，「2匹」と 「猫」の関係が統語機能的な修飾関係にあるのではなく，照応関係にあると考えるからである。 (Bresnan 2001) では, f-structure では統語機能的関係を表現すべきであり，照応的な関係はその対象としないと述べているが，本稿もこの立場から文法規則を設計した.

日本語構文では数量表現が指す NPが必ず数量表現の直前に現れるとは限らない. 例えば「猫をマンションで 2 匹飼っていた」のように，「2匹」の係り先が構文中の任意の場所に現れる可能性がある。(Bender and Siegel 2004)の文法規則では修飾先のNP が直前に現れない場合は数量詞の修飾を特定しない. つまり本稿と同様に照応的な関係として解析する. しかしその結果,「猫をマンションで 2 匹飼っていた」と「マンションで猫を 2 匹飼っていた」の解析結果が異なることになる。本稿では, こういった単なる語順の違いに f-structure が影響されないことを配慮している。

## 4 f-structure の妥当性の検討

## 4.1 日本語 LFG システムの構成

LFG 規則の妥当性の検証と解析精度の評価実験を行う処理は (増市，大熊 2003)に改良を加えて拡張した日本語 LFG 解析システムを用いる。図 2 に, 本稿で用いる日本語 LFG システムの構成を示す。まず日本語入力文が日本語 tagger に渡される。日本語 tagger では ChaSen (cha)による形態素解析が行われる。その結果に表層文字列や品詞情報を利用した形態素区切りの修正ルールを適用し, 修正された形態素列に品詞情報を利用したアノテーションルールによって tagを付与する。

tag が付与された形態素列を Xerox Linguistic Environment (XLE) に入力する. XLE は LFG 理論の仕様をほぼ完全に実装した処理系である (Maxwell and Kaplan 1993). 日本語システムは大きく分けて 3 種類のデータで構成されている。一つはメモリ容量や探索深さ, LFG 規則の優先順位などの設定を定義するデータ群である。二つ目はLFGの文法理論に沿って実装された文法規則群である． 3.3 章で提案した文法規則群は名詞句に関する文法規則に追加されている。三つ目は語彙規則群である. 3.2 章で提案した助数詞に関する語彙規則はここに追加されている.

## 4.2 他表現の f-structure との比較

本節では 3 章で提案した LFG 規則が導出する f-structure が 1.2 節で設定した基準 1 を満たしているかを検証するために, 同じ統語意味構造を持ちながらも語順の変化や省略によって表層形が異なった構文の f-structure を比較する。

一般に通貨や単位は数詞を伴わないで単独の名詞として用いられる例も多い. そこで通貨の

図 2 日本語 $\mathrm{LFG}$ システムの構成

図 3 「100 ドルを両替した。」と「ドルを両替した。」の f-structure

助数詞が数詞を伴う構文「100 ドルを両替した。」に対して文法規則 (5) を適応して導出した f-structure と数詞を伴わない構文「ドルを両替した。」のf-structure を図 3 に示す. 両者を比較すると同じ構造を持っていることが分かる.

次に数量に関する表現の f-structure について検討する。数量を表現する文法規則は 3.3 節の文法規則 (5) と文法規則 (6) があり，これらは同時に適用されるので必ず 2 通りの f-structure が出力される。「3箱の煙草」について図 4 に文法規則 (5) によって導出された $\mathrm{f}$-structure を図 5 に文法規則 (6) によって導出されたf-structure を示す. 図 4 の f-structure で「煙草」の SPEC

図 4 文法規則 (5)によって導出された「3箱の煙草」の f-structure

図 5 文法規則 (6) によって導出された「3 箱の煙草」の f-structure

図 6 文法規則 (8) によって導出された「3 銘柄」の f-structure

の NUMBER 属性中の PRED が「3」になっているのは, 煙草の数量が 3 であることを表現している. 従って, 正しいf-structure は文法規則 (5) によって導出された図 4 の f-structure である. さらに，助数詞を伴わず直接数詞が名詞を修飾してその数を表す場合も，文法規則 (8) によって図 4 と同じ構造の f-structure で表現される. 図 6 に「3 銘柄」のf-structure を示す.

しかし，数詞の数える対象が係り先の名詞ではない場合がある。例えば，「3 箱の値段」という表現において数詞「3」の数える対象は「値段」ではない。この名詞句の解釈は「3 箱の何か (例えば煙草) の値段」とするのが妥当である. 図 7 と図 8 に 3 箱の値段」の f-structure を示す. 文法規則 (6) によって導出された図 8 の f-structure では表層が省略されていることを現す

図 7 文法規則 (5) によって導出された「3箱の値段」の f-structure

図 8 文法規則 (6) によって導出された「3箱の値段」の f-structure

PRON-TYPE の属性値 null を持つ代名詞 'pro’の数量として表現されている.つまり, 図 8 の f-structure が「3 箱の値段」の正しい統語意味構造を表している。また，数量表現が係り先の名詞を伴わずに単独で現れる場合も (6) によって適切な f-structure を出力する. 例として「彼が選んた 3 箱」のf-structure を図 9 に示す.

次に，順序を示す表現について検討する。それぞれの表現の差異は，属性や属性値によって表現されるが，基本的な構造はすべて等しいことが分かる.

図 10 に文法規則 (9) によって導出された「3 番目の男」のf-structureを示す。「番目」は順番を示す助数詞の語彙カテゴリが割り当てられているため, CLASSIFIER-TYPE 属性と NUMBERTYPE 属性の值は共に序数を示す $\operatorname{ord}($ inal) になっている.

図 11 に文法規則 (10)によって導出された「3人目の男」のf-structure を示す.「人」は数量を示す助数詞の語彙カテゴリが割り当てられているため, CLASSIFIER-TYPE 属性の値には基数を示す $\operatorname{card}($ inal) が入る。しかし, 接尾辞「目」が順番を表現しているため NUMBER-TYPE 属性の値が序数を示す $\operatorname{ord}($ inal) になっている.

図 12 に文法規則 (11)によって導出された「第 3 の男」のf-structure を示す.この名詞句には助数詞が存在せず，助数詞の省略も想定され難いため CLASSIFIER-TYPE 属性を持たない。し

図 9 文法規則 (6) によって導出された「彼が選んだ 3 箱」の f-structure

図 10 文法規則 (9) によって導出された「3 番目の男」の f-structure

図 11 文法規則 (10)によって導出された「3 人目の男」の f-structure

かし, 接頭辞「第」が順番を表現していることを NUMBER-TYPE 属性の値が ord(inal)になっていることで示している.

図 12 文法規則 (11) によって導出された「第 3 の男」のf-structure

図 13 "I exchanged 100 dollars" の f-structure

## 4.3 他言語の f-structure との比較

本節では 1.2 節で設定した基準 2 について検証するために，日本語の表現に対応する他言語の f-structure と日本語の f-structure の比較を行う.

まず通貨・数量に関する表現のf-structure について検討する。図 13 に 100 ドルを両替した.」 の英訳 "I exchanged 100 dollars."を入力として (Riezler et al. 2002)の英語 LFG システムで出力された f-structure を示す. 4.2 節の図 3 の日本語の f-structure と比較すると同じ構造を持っていることが分かる.

次に数量に関する表現の f-structure について中国語の f-structure との比較を行う．数量に関する表現は助数詞を伴う場合と助数詞が省略される場合がある。助数詞を伴う表現については (Fang and King 2007)の中国語 LFG システムで出力されたf-structure と, 助数詞を伴わない表現については英語の f-structure と比較する。

図 14 に文法規則 (5) が導出した「三本の酒」の f-structure を，図 15 に三瓶酒」に対応する中国語の f-structure を示す. 図 15 の f-structure では助数詞のための属性である CLASSIFIER

図 14 文法規則 (5) によって導出された「三本の酒」の f-structure

図 15 「三瓶酒」の f-structure

図 16 文法規則 (6) によって導出された「彼女は三本を飲んだ。」のf-structure

を PREDにしている．これは，中国語の助数詞が連体修飾を受けることができるほど名詞としての性質が強いためである。このような違いはあるものの, この表現に対するする日本語と中国語の f-structureの基本的構造はほぼ同じである.

次に，助数詞が数える対象である名詞が存在しない数量表現について「彼女が三本を飲んだ」 と「她喝了三瓶」の解析結果を比較する。図 16 に日本語の f-structure を，図 17 に中国語の f-strcuture を示す. 両者とも数える対象に，代名詞を示す 'pro'を代入している。これは，数える対象の名詞が存在する場合のf-structure との整合性を図るための手当てであるが，それと同

図 17 「她渴了三瓶」の f-structure

図 $18 「 3$ 家族」と「3 families」の f-structure

図 19 "third man" の f-structure

時に中国語と日本語の間の f-structre の整合性を保持することも可能にしている.

助数詞が省略される表現については英語の f-structure と比較を行う。図 18 に 3 家族」と“ 3 families" の f-structure を示す. 日本語の f-structure では助数詞が存在しないことを明示的に表現するために CLASSIFIER-FORM 属性が null になっているが, 英語では基本的に助数詞を用いないので，それに対応する属性は存在しない。しかし, 基本的な構造は等しいことが分かる。次に順序を示す表現について検討する。図 19 に 4.2 節の図 10～ 12 に対応する英語 “third man” のf-structure を示す. 特に図 12 の「第 3 の男」のf-structure とは同じ構造を持っている.

## 5 解析結果の精度評価

## 5.1 評価方法

解析結果の評価は f-structure を (King, Crouch, Riezler, Dalrymple, and Kaplan 2003) に準拠した形式 (triples) に変換して行う．この変換の際に文法的な情報ではなく実装の都合上付与されている属性は削除する。図 20 に 3 個のりんご」の f-structure と triples の対応関係を示す. triples 形式は “属性 $C$ (ノード $A$, ノード $B$ ) ”もしくは “属性 $C$ (ノード $A$, 属性値 $B$ ) ” という書式で表現される。いずれも「 $A$ の属性 $C$ は $B$ である」と解釈する。属性の要素はノー ドか值であるが, ノードは必ずノード ID を持つため, 同じ語が同一文中に現れても区別が可能である。図 20 中の triples 形式のデータは「りんご」の NUMBER 属性が 3 であること, 「3」 の CLASSIFIER-FORM 属性の值は「個」であること，「3」の CLASSIFIER-TYPE 属性の値が cardinal であること, 「3」の NUMBER-TYPE 属性の値が cardinal であることを表現している.解析対象は EDR コーパスから数詞を含む文を無作為に選び, 単位・通貨に関する表現, 数量に関する表現，そして順序に関する表現を人手で 200 表現ずつ抽出した.

本稿で提案する規則の効果を確認するために, 精度の比較を (増市, 大熊 2003)で採用されている LFG 規則の解析結果と行う．今回の提案規則による効果を正確に計測するために, 旧規則の解析結果に単なる仕様変更によって正解にない NUMBER-TYPE などの属性が含まれる場合はこの属性を削除した。評価実験における triplesに含まれる属性の一覧を表 3 に示す.

今回の実験では, 多義性の解消を行っていないため, 複数の解析結果が出力される可能性もあるが，精度の測定はそれらの解析結果すべてに対して行った。例えば， 4.2 節で「3 箱の煙草」 に対して得られた図 4 と図 5 の二つの解析結果のうち, 図 4 が正解であるならば, この解析結

図 20 f-structure と triples の対応関係
表 3 triples に含まれる属性一覧

表 4 「3 箱の煙草」の解析結果

果の精度は下記の表 4 のように求められる。

今回提案した LFG 規則のみを評価するため，解析する範囲を数詞，助数詞及びそれらが連体連体修飾を行っている場合はその修飾先の名詞句，連体修飾を受けている場合にはその修飾成分のみに限定した。また「およそ 30 個」の「およそ」や「5\%以下」の「以下」など直接連接して助数詞や数詞の修飾を行う付属語的な名詞も対象とした。下記に解析対象の例を示す.
- 単位・通貨に関する表現
- 400 万円のミンクのコート、250万円の腕時計も頭にちらついた。
- IBM およびコンパチはパソコン全体の $80 \%$ 以上を占めた。
- 数量に関する表現
- 3 国合わせての総人口が約 750 万人だから 5 人に 1 人が参加したことになる。
- 順序に関する表現
- 2 番目の LANは事務職員のための LAN だ。
- ASTの第1のライバルである強化ボードの開発者クォードラムでは、IBMが新しいラインに残したメモリー拡張のギャップに焦点を合わせている。

## 5.2 結果と考察

## 5.2.1 単位・通貨に関する表現

表 5 に単位・通貨に関する表現の解析結果を, 表 6 と表 7 に属性別の結果を示す. 旧規則では単位・通貨と他の助数詞との区別をしていなかったため, CLASSIFIER-FORM 属性と CLASSIFIERTYPE 属性が解析結果に含まれる。そこで, 今回の比較は, この二つの属性を予め削除して行った. 今回提案した LFG 規則により全体的な $\mathrm{F}$ 値はおよそ $25 \%$ 向上した. 表 6 の fragment は,部分解析結果の属性であり, 旧規則では適用される規則が存在せず部分解析しかできなかった表現があることを示している。表 7 にこの fragment 属性が存在しないことは提案規則ではすべ

表 5 単位・通貨に関する表現の解析結果

表 6 単位・通貨に関する表現の属性別の解析結果（旧規則）

表 7 単位・通貨に関する表現の属性別の解析結果（提案規則）

て全体的な解析に成功していることを示している。また，EDR 概念辞書を用いて語彙エントリを追加したことにより, 修飾関係を示す属性 adjunct の F 値が向上している。表 7 で subj, tense, atype, clause_type の precision の值が下がっているのはすべての単位・通貨に名詞の lexical categoryを割り当てた結果，文法規則 (8) が誤って適用されてしまう例があったためである。今後は一般的に名詞としても用いられる単位名とほとんど名詞としては現れない単位の分別が必要である.

併置関係を示す属性 conj の F 值が両規則ともに 0 なのは，下記の例にあるような数詞と記号による表現を提案規則でカバーできなかったためである。特に単位に関する表現は記号を含む表現が多く見られ，今後はこれらの記号と数詞に関する規則の精緻化が課題である.

・ $640 \times 400$ ドットの解像度でグラフィックを表示できるという。
- 旧システムの $30 \%$ \% $\%$ \%リプレースする大規模な計画で、 2 年がかりで構築する。

## 5.2 .2 数量に関する表現

表 8 に数量に関する表現の解析結果を，表 9 と表 10 に属性別の結果を示す. 全体的な $\mathrm{F}$ 値は

表 8 数量に関する表現の解析結果

表 9 数量に関する表現の属性別の結果（旧規則）

表 10 数量に関する表現の属性別の結果（提案規則）

およそ 5 \%向上している. 両者とも連体修飾を示す adjunct 属性の值が低いのは, 文法規則 (5) と文法規則 (6) によって生じた多義性によるものである。この種の多義性を解消するためには (白井, 徳永 2007) や (Bond and Paik 2000) で提案されているオントロジーのような知識資源の利用が有効であると思われる。その一方で，下記の例の「 2 人」と「仲間」のように，助数詞と数えられる対象の関係だけでは正しいf-structure を決定することが困難である場合もあり，文脈解析のようなより深い知識処理が必要である.
- 3 年前には、横浜防衛施設局に仲間 2 人が火炎瓶を投げて逮捕された。
- 2 人の仲間だったシンイチは、いつか姿を消した。

さらに，連体修飾成分と数詞，助数詞の関係を表現するのが難しい場合があった．下記の文の「長男と 2 人」は「長男と（自分の） 2 人」を指しており，「長男」と「2人」の並置と考えるよりは「長男と」が「2人」を修飾すると解釈するのが適切であるが，本稿で提案した LFG 規則ではこのような表現は扱えない.
- 10 年前、姉妹を頼って、長男と 2 人で引き揚げてきた。

また，本稿で提案した規則では評価用コーパス中の下記の表現が解析できなかった.「100万票差」の「差」, あるいは「合計」,「積」なども含めて数量操作に関わる名詞については今後 f-structure の表現方法も含めて扱い方を検討する必要がある.
- 71 年の大統領選挙で朴大統領に約 100 万票差で敗れる。
- 11 の市民団体が実行委員会を結成し、それぞれの企画を原爆忌の 9 日まで繰り広げる。

・これで輸入解禁州は全部で 38 になる。

上記の「11 の市民団体」の「11」や「全部で 38 になる」の「38」のように，助数詞や接頭辞,接尾辞など数詞の性質を表現する機能語が連接せずに名詞を修飾している場合，その数詞が何を表現しているのか判断するのが難しい．評価コーパスには数量を表す例しか出現しなかったが，下記の例文の「二百万のお宝」の「二百万」は「お宝」である「トルエン」の価格を表現しており，「一の富」の「一」は宝くじの一等を示している.
- 千本の物が一。二百万のお宝が。そのとき、トルエンが爆発した。[大沢在昌「ちきこん」『らんぼう』新潮文庫 (1998)]
- ふつうこれは百回ついたものだそうで、百回目を突きどめといって、これがつまり一の富、千両もらえるわけである。[横溝正史「鶴の千番」『くらやみ婿』春陽文庫 (1984)]

## 5.2.3順序に関する表現

表 11 に順序に関する表現の解析結果を，表 12 と表 13 に属性別の結果を示す。旧文法では CLASSIFIER-TYPE 属性の序数を表現する値 ordinal を定義していなかったため，解析結果を公平に比較するためにこの属性を削除した。 それでも，全体的な $\mathrm{F}$ 値は $21 \%$ 以上向上した.

ただし，本稿で提案した規則では扱えない表現も見られた。順序に関する表現は，通貨・単位や数量に関する表現よりも，助詞を介さずに直接他の名詞と連結して，複合名詞を形成する場合が多く，下記のように係り先がうまく決定できない例が散見された。本稿で用いた日本語 LFG システムでは, 処理時間を高速化するために (特許 2007)の手法を用いて, 名詞が二つ以上

表 11 順序に関する表現の解析結果

表 12 順序に関する表現の属性別の結果（旧規則）

表 13 順序に関する表現の属性別の結果（提案規則）

連続するときにはすべて最右の名詞を主辞とする複合名詞としてまとめる処理を実施する。その結果, 下記の (a) では「第 2 次」が複合名詞中で最も右にある「撤兵」を修飾するため正しい f-structure を得ることができる。しかし，（b）では「2 次」が複合名詞中の「下請け」を修飾しているので本稿のシステムでは誤った f-structure を導出する。

(a)このサマー地区はベトナム軍が第 2 次カンボジア撤兵の際に通過した地だ。

(b) 2 次下請け工場になると、忙しさだけは 1 次下請けに負けない。

また，下記の「版」、「条」，「面」のように助数詞が数量を現すものであっても実際には順序に関する表現である例があった。これは (荻野 1993)で示唆されているように, 助数詞には基数と序数の両方を表すものがあるためであると思われる，今後は，こういった助数詞の特定も必要である.

$\cdot$この批評は大阪本社発行の 13 版をもとにしています。
- 航空法施行規則 145 条に規定された各種の航空計器および航法装置。
- これは先日、離婚請求権が有責者にも認められたという判決が、新聞の 1 面に出た翌日の会話である。

## 6 おわりに

## 6.1 まとめ

本稿では数詞と助数詞によって表現される構文を日本語 LFG システムで解析するための語彙規則と文法規則を提案した. さらに提案した規則によって導出される $\mathrm{f}$-structure を他の表現や他の言語の f-structure と比較して解析結果の妥当性を検討した。また, 精度評価実験を実施して提案規則の解析能力について, 従来の LFG 規則との比較を行った。その結果, 通貨・単位に関する表現では $25 \%$, 数量に関する表現では $5 \%$, 順序に関する表現では $21 \%$ の値の向上が
確認できた.

## 6.2 今後の課題

3 章では, 助数詞を通貨・単位, 数量, 順序という三つの語彙カテゴリに分類し, それぞれに対して文法規則を提案した. しかし，助数詞の中にはこの三つのカテゴリのどれか一つに明確に分類できないものも存在する。例えば，本稿で「組」は数を表す助数詞として分類されるが,「ダース」は単位を表す助数詞として分類されている。このように，単位が数や量を表す場合には今回の分類を明確に適用することが難しい．また，5 章の実験結果にも見られたように，「版」

や「条」など数量と順序の両方を表す助数詞も存在する。このような問題を解決するためには,特殊な性質を持つ助数詞を特定し, 本稿で提案した分類の細分化や複数の語彙カテゴリの割り当てなどを検討する必要がある。

4.3 節では本稿で提案した LFG 規則が導出する f-structure の妥当性を検証するために, 英語と中国語の f-structure との比較を行った。これは, 両者とも実用的な LFG システムが既に構築されており，日本語文の訳文に対して適切な f-structure を得ることが可能だったためである。 しかし, 他の言語の LFG システムの研究開発が進めば, 他の言語の f-structure とも比較したい. 5 章の評価実験では, 解析精度の比較対象として旧 LFG 規則の解析結果を用いたが, より正確に解析能力を検証するためには，他のシステムの出力結果と比較する必要がある。しかし, 1.1 節でも述べたとおり，現在公開されている構文解析システムでは本稿が対象にしている助数詞と数詞, 名詞の関係を表現しないため, f-structure と直接比較することができない. 今後, 翻訳や質問応答などのシステムの出力を利用して間接的に比較を行うなど，評価の工夫が必要である。本稿の評価実験対象は助数詞に関する表現に限定した，今回の改良によって文全体のカバー率には特に変化が見られなかったが, 個々の解析結果が文全体の解析精度にどのような影響を及ぼしているかはより詳細に観察する必要がある.

今後は，今回解析できなかった構文を扱うためにLFG 規則の改良と拡張に取り組む。また, (Umemoto 2005) や (Crouch 2005) など f-structure を入力とする意味解析手段，つまり LFG 解析の次の段階の処理を用いて, 提案した規則によって生じた f-strcutureの曖昧性解消を実施したい.

## 謝 辞

ParGram のメンバー, 特に助数詞の解析に関する議論を通じて有益なコメントをいただいたり, 解析結果を提供していただいた Microsoft 社の Tracy Holloway King 氏, Martin Forst 氏, Palo Alto Research Center Inc.の Ji Fang 氏に感謝いたします.また，日本語LFG について有益なコメントをいただいた早稲田大学の原田康也教授，中野美知子教授に感謝いたします．XLE

の開発者であり，日本語システム構築時に実装に関する貴重な助言を頂いた Palo Alto Research Center Inc. の John Maxwell 氏, Microsoft 社の Ronald Kaplan 氏に感謝いたします。

## 参考文献

"ChaSen." http://sourceforge.jp/projects/chasen-legacy/.

"IPAdic." http://sourceforge.jp/projects/ipadic/.

Bender, E. M. and Siegel, M. (2004). "Implementing the Syntax of Japanese Numeral Classifiers." In IJCNLP-04.

Bond, F. and Paik, K. (2000). "Reusing an ontology to generate numerical classifiers." In COLING 2000, pp. 90-96.

Bresnan, J. (2001). Optimal syntax, pp. 334-385. Oxford University Press.

Butt, M., Dyvik, H., King, T. H., Masuichi, H., and Rohrer, C. (2002). "The Parallel Grammar Project." In COLING 2002 Workshop on Grammar Engineering and Evaluation, pp. 1-7.

Crouch, R. S. (2005). "Packed rewriting for mapping semantics to KR." In Sixth International Workshop on Computational Semantics(IWCS-6).

Fang, J. and King, T. H. (2007). "An LFG Chinese Grammar for Machine Use." In Grammar Engineering Across Frameworks Workshop, pp. 144-160.

Flickinger, D. and Bond, F. (2003). "A Two-Rule Analysis of Measure Noun Phrases." In HPSG03.

飯田朝子 (2004). 数え方の辞典. 小学館.

見坊豪紀 (1965). “現代の助数詞.” 言語生活, 166, pp. 54-60.

King, T. H., Crouch, R., Riezler, S., Dalrymple, M., and Kaplan, R. M. (2003). "The PARC 700

Dependency Bank." In 4th International Workshop on Linguistically Interpreted Corpora.

荻野紫穂 (1993). “体言と副詞.”星野和子, 丸山直子（編）, 日本語の表現, pp. 87-99. 圭文社.

荻野綱男 (1989). “現代日本語の助数詞の意味変化の方向.” 文藝言語研究言語篇, 17, pp. 67-77.

国語学会 (編) (1980). 国語学大辞典. 東京堂出版.

工藤拓，松本祐治 (2002). “チャンキングの段階運用による日本語係り受け解析.”情報処理学会論文誌, 43 (6), pp. 1834-1842.

黒橋禎夫 (2000). “結構やるな、KNP.” 情報処理, 41 (10), pp. 1215-1220.

増市博, 大熊智子 (2003). “日本語 LFGによる大規模構文意味解析システムの構築.” 自然言語処理, $10(2)$, pp. 79-109.

Matsumoto, Y. (1993). "Japanese numerical classifiers:a study of semantic categories and lexical organization." Linguistics, 31, pp. 667-713.

Maxwell, J. T. and Kaplan, R. M. (1993). "The interface between phrasal and functional constraints." Computational Linguistics, 19, pp. 571-589.

森重敏 (1958). “数詞とその語尾としての助数詞.” 国語国文, 27 (12), pp. 12-33.

日本電子化辞書研究所 (1996). EDR 電子化辞書説明仕様書.

岡部嘉幸 (2006). “数詞・助数詞に残る謎は何か.”國文学, $\boldsymbol{5 1}$ (4), pp. 106-109.

Riezler, S., King, T. H., Kaplan, R. M., Crouch, R., Maxwell, J. T. M., and Johnson, M. (2002).

"Parsing the Wall Street Journal using a Lexical-Functional Grammar and Discriminative

Estimation Techniques." In the 40th Annual Meeting of the Association for Computational Linguistics (ACL).

白井清昭, 徳永健伸 (2007). “呼応する名詞の包含関係に着目した助数詞オントロジーの自動構築と評価." In 2007-NL-181.

谷原公男, 顔瑞珍, DebbieLee (1990). “助数詞の用法とプロトタイプー〈面 $\rangle \cdot\langle$ 枚 $\rangle \cdot\langle$ 本 $\rangle \cdot\langle$ 個 $\rangle \cdot$

〈つ〉." 計量国語学, 27 (12), pp. 209-226.

特許 (2007). “自然言語処理システム及び自然言語処理方法、並びにコンピュータ・プログラ

ム." 登録番号第 4033093 号.

Umemoto, H. (2005). "Implementing a Japanese Semantic Parse Based on Glue Approach." In

20th Pacific Asia Conference on Language, Information and Computation (PACLIC20).

梅基宏，杉原大悟，大熊智子，増市博 (2008)。“LFG 解析と語彙資源を利用した日本語含意関係

判定.” In 2008-NL-188.

渡辺実 (1952). “日華両語の数詞の機能一助数詞と単位名." 国語国文, 21 (1), pp. 97-109.

矢崎祥子 (1999). “助数詞の類別機能および数詞と助数詞の組み合わせ一和語・漢語の視点から

みた六つ・六房・六個.”言語と交流研究会, 2, pp. 127-139.

## 略歴

大熊智子（正会員）：1994 年東京女子大学文理学部日本文学科卒業. 1996 年慶應義塾大学政策・メディア研究科修了. 同年, 富士ゼロックス（株）総合研究所入社. 2006 年より慶應義塾大学政策・メディア研究科後期博士課程在籍. 2009 年より東京女子大学非常勤講師. 現在, 富士ゼロックス (株) 研究技術開発本部研究副主任.

梅基宏（正会員）：1995 年東京大学大学院工学系研究科機械情報工学修士課程修了. 同年, 富士ゼロックス（株）入社. 日本語意味解析, 情報検索システムの研究開発に従事. 2004 2006 年 Stanford 大学 CSLI 客員研究員. 言語処理学会, 情報処理学会各会員.
三浦康秀 : 2004 年電気通信大学大学院電気通信学研究科電子情報学専攻修了.同年, 富士ゼロックス (株) 入社. 日本語の統計的構文解析, 医療テキストを対象とした自然言語処理の研究開発に従事.

増市博（正会員）：1989 年京都大学工学部機械工学科卒. 1991 年京都大学工学研究科精密工学専攻修士課程修了. 同年, 富士ゼロックス (株) 入社. 1998 2000 年米国 Stanford 大学 CSLI 客員研究員および Palo Alto Research Center Inc. コンサルタント研究員. 現在, 富士ゼロックス（株）研究技術開発本部研究主査. 博士 (工学).

(C) The Association for Natural Language Processing, (Licensed under CC BY 4.0）https://creativecommons.org/licenses/by/4.0/


# 品詞間接続制約の LR 構文解析表への組み込みの局所性の解消

LR 構文解析表（LR 表）を作成する際，CFG 規則による制約だけでなく品詞（終端記号）間の接続制約も同時に組み込むことによって, LR 表中の不要な動作（アク ション）を削除することができる。それにより，接続制約に違反する解析結果を受理しない LR 表を作成できるだけでなく，LR 表のサイズを縮小することも可能であ り，構文解析の効率の向上が期待できる。これまでにも接続制約の組み込み手法は いくつか提案されているが, 従来手法では, 注目する動作の前後に実行され得る動作を局所的に考慮するため, 削除しきれない動作が存在する。そこで，本論文では 新しい組み込み手法を提案する。提案手法では, 初期状態から最終状態までの全体 の実行すべき動作列（アクションチェイン）を考慮し，接続制約を組み込む．評価実験の結果, 従来手法と比較して, 不要な動作をさらに約 $1.2 \%$ 削減でき, 構文解析所要時間は約 $2.4 \%$ 短縮できることが分かった。 最後に，提案手法の完全性について 考察する。

キーワード：一般化 LR 構文解析, 品詞間接続制約, 文脈自由文法, 局所性解消, アクショ ンチェイン
## Globalization of Incorporating Adjacent Symbol Connection Constraints into an LR Parsing Table

\author{
Tomoya Noro ${ }^{\dagger}$, Hozumi Tanaka ${ }^{\dagger \dagger}$, Tailchi Hashimoto ${ }^{\dagger \dagger \dagger}$ and
}

KIYOAKI ShIraI ${ }^{\dagger \dagger}$

Adjacent symbol connection constraints (ASCCs) are very useful for not only morphological analysis of non-segmenting language such as Japanese language, but also for continuous speech recognition of any language. By incorporating ASCCs into an LR parsing table, it is possible to reduce the size of the table, as well as reject any locally implausible parsing results. Although several algorithms have been proposed, they cannot remove all of the unnecessary actions because they consider only local context. This paper proposes a new algorithm and show some evaluation results. The proposed algorithm incorporates ASCCs by searching for global action chains from the initial state to the final state. According to the results, the proposed algorithm can remove about $1.2 \%$ more actions than a conventional algorithm, and the parsing time can be reduced by about $2.4 \%$. Lastly, we show the completeness of our algorithm.

Key Words: Generalized LR Parsing, Adjacent Symbol Connection Constraints, ContextFree Grammar, Globalization, Action Chains

## 1 はじめに

インターネットの普及にともない, 多種多様な電子情報が至るところに蓄積され, 溢れている，我々は，インターネットを介して，時と場所を選ばず，即座にそれらの情報にアクセスすることができるが，その量は非常に膨大である。「情報爆発」というキーワードのもと, わが国でも文部科学省, 経済産業省が新しいプロジェクトを立ち上げ，新技術の開発に取り組み始めている。この膨大な量の情報を人手で処理することは, 不可能に近い.

情報には文書, 画像, 音声, 動画など様々なものがあるが, 自然言語で書かれた文書情報は, その中で最も重要な情報の 1 つである。文書情報を機械的に処理する技術の研究, 言い換えると自然言語処理技術の研究が極めて重要になっているのはそのためである. 自然言語処理技術は，2つに大別される。コーパス（統計）ベースの手法とルール（文法規則）ベースの手法である. 自然言語処理技術の 1 つである音声認識の精度のブレイクスルーがあったことにより, 最近では，コーパスベースの手法が自然言語処理技術の世界を席巻している。これは網羅性のある文法規則を開発することが困難であったことが主な要因としてあげられる。これに対し，コー パスベースの手法は，そこから得られた統計データに文法規則性が反映されており，コーパスの量を増やすことで，文法規則性をより精密に反映させることができるという考えに基いている.ところが統計データからは陽に文法規則が取り出されるわけではなく, 文法規則を取り出し，それをどう改良すべきかは分からない.

文法規則は機械（コンピュータ）で扱うことができる規則でなければならない. 多種多様な分野の日本語の文書処理を行う文法規則の数は，およそ数千の規模になると言われている．ところがこのような日本語の文法規則を言語学者ですら作成したという話をまだ聞かない。これに対し，コーパスベースの手法による日本語文の文節係り受け解析の精度は $90 \%$ に達する (工藤, 松本 2002; 内元, 関根, 井佐原 1999). これがルールベースの方法が自然言語処理技術の中心ではなくなってきた大きな理由である.

ところが, 最近, コーパスベースの自然言語処理法も解析精度に飽和現象が見られる。精度をさらに向上させようとすれば，現存するコーパスの量を 1 桁以上増やさなくてはならないといわれている。これは, 音声認識精度の向上でも問題になりはじめているが, コーパスの量を 1 桁以上増やすことは容易なことではない. この限界を越える技術として, 闇雲にコーパスの量を増やすのではなく，ルールベースの方法を再考すべき時期に来ていると考えている．

本論文では，一般化 LR (Generalized LR; GLR) 構文解析 (DeRemer and Pennello 1982; Aho， Sethi, and Ullman 1986; Tomita 1991) に注目する。一般化 LR 構文解析は, 文法 (CFG) 規則を
$\mathrm{LR}$ 構文解析表（LR 表）と呼ばれるオートマトンに変換し, 効率的に解析を行う ${ }^{1}$. この $\mathrm{LR}$ 表には, CFG 規則のほかに品詞（終端記号）間の接続制約 (adjacent symbol connection constraints; $\mathrm{ASCCs})$ を映させることもできる．品詞間の接続制約を反映させることにより，接続制約に違反する解析結果を受理しない LR 表を作成できるだけでなく，LR 表のサイズ（状態数や動作 （アクション）数）を縮小することもでき，その結果，構文解析の使用メモリ量や解析所要時間の削減, 統計データを取り入れた場合の解析精度向上の効果の増大が期待できる．品詞間接続制約を CFG 規則に直接反映させることも可能であるが，非終端記号の細分化によって規則数が組み合わせ的に増大し， CFG 作成者への負担や LR 表のサイズの増大を招く．品詞間接続制約のLR 表への組み込み手法は, これまでにも提案されているが (Tanaka, Tokunaga, and Aizawa 1995; Li and Tanaka 1995), 従来の手法では, LR 表中の不要な動作を十分に削除できない問題があった。本論文では新しい組み込み手法を提案し, 従来の手法では削除できなかった不要な動作も削除できることを実験により示す.

本論文の構成は以下のとおりである。第 2 節では，まず，一般化 LR 構文解析アルゴリズムを採用している MSLRパーザ (白井, 植木, 橋本, 徳永, 田中 2000) について説明し, 従来の品詞間接続制約の LR 表への組み込み手法の問題点を述べる。 その問題点を踏まえ, 第 3 節で新しい組み込み手法を提案し，第 4 節で評価実験を行う，第 5 節では，提案アルゴリズムの完全性について考察を行う。最後に，第 6 節で結論と今後の課題について説明する.

## 2 MSLRパーザと従来の組み込み手法

本節では, 従来の LR 表への接続制約の組み込み手法とその問題点を述べるが, その前に, 第 4 節の評価実験で使用する MSLR パーザ (白井他 2000) の原理について概略を説明する.

## 2.1 MSLR パーザの原理

MSLR (Morpho-Syntactic LR) パーザは，GLR 構文解析アルゴリズムを拡張し，日本語などの分かち書きされていない文の形態素解析と構文解析を同時に行うことのできるパーザである.図 1 に示すように，MSLR パーザは，文法 (CFG) から LR 表を生成し，それを参照しながら入力文の解析を行う. LR 表を生成する段階では, 文法のほかに品詞間接続制約を組み込むことも可能である．品詞間接続制約を組み込むことにより，LR 表のサイズを小さくし，解析効率を向上させることができる．また，MSLR パーザは，平文を入力とすることで形態素解析と構文解析を同時に行うことができるが, 形態素区切りや品詞, 係り受けなどの部分的な制約を入力に加

辞書

図 1 MSLR パーザの動作の流れ

えて解析を行うこともできる。 さらに，確率一般化 LR (Probabilistic Generalized LR; PGLR) モデル (Inui et al. 2000)により，GLR アルゴリズムの枠組みにおいて構文木の生成確率を求めることもできる.

MSLR パーザでは， $\varepsilon$ 規則（右辺の記号列長が 0 の規則）を含む文法は扱えない．文法が大規模化するにつれ，文法作成者が予期しない $\varepsilon$ 規則の適用や，それによる解析結果の曖昧性の増大が起きるため, MSLR パーザの仕様として, 文法に $\varepsilon$ 規則は含まれないことを前提としている。本論文でも， $\varepsilon$ 規則を含まない文法を前提とする.

## 2.2 接続制約と接続表

終端記号と文末記号 $\$$ の集合 $\left.\{t_{1}, t_{2}, \ldots, t_{n}, t_{n+1}(=\$)\right.\}$ の接続制約は, $n$ 行 $n+1$ 列の表（接続表) で表現できる.

$
\operatorname{connect}\left[t_{i}, t_{j}\right]= \begin{cases}1 & t_{i} t_{j} \text { の順で接続可能な場合 } \\ 0 & t_{i} t_{j} \text { の順で接続不可能な場合 }\end{cases}
$

ただし， $1 \leq i \leq n, 1 \leq j \leq n+1$ である. また, 終端記号または非終端記号 $X$ の直後に接続可能な終端記号の集合を返す関数 Connect を以下のように定義する.

$
\operatorname{Connect}(X)= \begin{cases}\{t \mid \operatorname{connect}[X, t]=1 \wedge t \in \operatorname{Follow}(X)\} & X \text { が終端記号の場合 } \\ \bigcup\{\operatorname{Connect}(t) \cap \operatorname{Follow}(X) \mid t \in \operatorname{Last}(X)\} & X \text { が非終端記号の場合 }\end{cases}
$

ただし, Follow $(X)$ と Last $(X)$ は, それぞれ CFGの開始記号から展開した場合に非終端記号 $X$ の直後に出現し得る終端記号の集合， $X$ を展開した場合に末尾に出現し得る終端記号の集合を表す。さらに，終端記号または非終端記号列 $\alpha(=\beta Y)$ の場合や，終端記号または非終端記号の集合 $\Sigma$ の場合は, 関数 Connect を以下のように定義する（ $Y$ は終端記号または非終端記号）.

$
\begin{aligned}
& \operatorname{Connect}(\alpha)=\operatorname{Connect}(Y) \\
& \operatorname{Connect}(\Sigma)=\bigcup_{X \in \Sigma} \operatorname{Connect}(X)
\end{aligned}
$

## 2.3 従来の接続制約組み込み手法

$\mathrm{LR}$ 表への品詞間接続制約の組み込み手法には，まず接続制約を考慮しない LR 表を作成してから不要な動作を削除する手法 (Tanaka et al. 1995), LR 表作成前と作成後の両方で不要動作を削除する手法 (Li and Tanaka 1995) などがある．ここでは， MSLR パーザの LR 表生成器で採用されている 2 つ目の LR 表作成前と作成後の両方で不要動作を削除する手法（Li の手法）について述べる。

LR 構文解析では，LRアイテムを利用して CFG から状態遷移図（goto グラフ）を作成する. Li らは, gotoグラフを作成する段階で，接続制約を利用してアイテムの生成を抑制することにより，接続制約を組み达んだ goto グラフを作成する。さらに，接続制約を組み込んた goto グラフから LR 表を作成した後，接続制約を伝播させることにより，LR 表作成前に削除できなかった動作を削除する。

接続制約を利用した $\mathrm{LR}(0)$ アイテムの生成の抑制は，核アイテム $[X \rightarrow \alpha \cdot \beta] \in \operatorname{Goto}(I, Z)$ を closure 展開する際, 以下の 2 つの条件を満たす LR(0) アイテムのみを生成することにより行う $^{2}$.

$
\begin{array}{r}
\operatorname{Connect}(Z) \cap \operatorname{First}(\beta) \neq \emptyset \\
\operatorname{Follow}(X) \cap \operatorname{Connect}(\beta) \neq \emptyset
\end{array}
$

ただし, $\operatorname{Goto}(I, Z)$ は, goto グラフにおいて状態 $I$ から終端記号または非終端記号 $Z$ で遷移した先の状態を表す。また, $\operatorname{First}(\beta)$ は， $\beta$ を展開した場合に先頭に出現し得る終端記号の集合を表す。

接続制約を組み込んだ goto グラフを作成したら，それをもとにLR 表を作成する。この時点
^{2} \operatorname{LR}(1)$ アイテム $[X \rightarrow \alpha \cdot \beta ; t] \in \operatorname{Goto}(I, Z)$ の場合は，第 2 条件を $t \in \operatorname{Connect}(\beta)$ に置き換える.
}

で既にいくらかの不要な動作は削除されているが，削除できずに残っている動作もあるため, LR 表作成後に接続制約を伝播させることにより，さらに不要な動作を削除する．具体的には， $\mathrm{LR}$ 表中の各動作について，その直前に実行すべき動作が存在しない場合，または直後に実行すべき動作が存在しない場合，その動作を削除する。

## 2.4 従来手法の問題点

図 2 に示すような文法 $G^{3}$ と接続制約 $C$ （と文法 $G$ から作成される goto グラフ）を例に, 従来手法（Liの手法）の問題点を述べる.

Li の手法により作成される LR 表を表 1 に示す。ただし，括弧で囲まれた動作は，接続制約により削除されたものである. ここで, 状態 2 , 先読み $c$ における移動 (shift) 動作 $\operatorname{sh}_{7}$ に注目する。この動作は, $\operatorname{Li}$ の手法では削除されない.

この shift 動作に関連する動作実行列として, 以下のような場合が想定される $\left(\left(2, c, \operatorname{sh}_{7}\right)\right.$ は,状態 2 , 先読み $c$ における shift 動作 $\mathrm{sh}_{7}$ を表す)。

$
\left(2, c, \operatorname{sh}_{7}\right) \rightarrow\left(7, d, \operatorname{sh}_{13}\right) \rightarrow\left(13, d, \mathrm{re}_{6}\right) \rightarrow\left(2, Z, \operatorname{goto}_{5}\right) \rightarrow\left(5, d, \operatorname{sh}_{11}\right)
$

## 文法 $\mathrm{G$}

$0: S S \rightarrow S$

1: $S \rightarrow a X e$

2: $S \rightarrow b Y$

3: $X \rightarrow Z d$

4: $Y \rightarrow Z$ e

5: $Z \rightarrow b c$

6: $\mathrm{Z} \rightarrow \mathrm{cd}$

接続制約C

gotoグラフ

図 $2 \mathrm{CFG}$ と接続制約の例
^{3} \mathrm{LR}$ 構文解析では, 与えられた文法 $G$ から LR 表を作成する際, 便宜的に，非終端記号 $S S$ を $G$ の非終端記号集合に，文末を表す終端記号 $\$$ を終端記号集合に追加し， $S S \rightarrow S \$$ を $G$ に追加する（ $S$ は元の $G$ の開始記号）．本論文では，新たに追加する $\mathrm{CFG}$ 規則の番号を常に 0 番とする.
}
表 $1 \mathrm{Li}$ の手法により作成される LR 表

一方，以下のような動作実行列も存在する.

$
\left(3, c, \operatorname{sh}_{7}\right) \rightarrow\left(7, d, \operatorname{sh}_{13}\right) \rightarrow\left(13, e, \mathrm{re}_{6}\right) \rightarrow\left(3, Z, \operatorname{goto}_{9}\right) \rightarrow\left(9, e, \operatorname{sh}_{14}\right)
$

接続制約より, 終端記号 $d$ は終端記号 $e$ と接続するが, 終端記号 $d$ とは接続しないため, 前者の実行列は制約に違反する。その結果, $\left(13, d, \mathrm{re}_{6}\right)$ は削除される。しかし, $\left(7, d, \mathrm{sh}_{13}\right)$ は, もう一方の接続制約を満たす動作実行列に含まれるため, 残される。 $\left(2, c, \mathrm{sh}_{7}\right)$ は，接続制約を満たすどのような動作実行列にも含まれず，削除すべき動作であるが，次の $\left(7, d, \mathrm{sh}_{13}\right)$ が残されるため，Liの手法では削除できない.

従来手法では，1つ先または 1 つ前の動作が存在しないことが判明した場合に，その動作を削除する。この例では，2つ先の動作が存在するか否かを調べなければ，削除可能かどうかを判断できない. これを一般化すると, 1 つ先や 2 つ先だけでなく, $n$ 個先の動作が存在するか否かを調べる必要があり，連続する動作の存在を局所的に調べるだけでは，接続制約に違反する動作を完全に削除することはできない。このような例でも動作を削除できるようにするためには，その動作実行列が最終的に acc 動作に到達可能であるか否かを調べる必要がある 4.

## 3 提案アルゴリズム

初期状態から実行すべき動作を順番に決めていくと, 動作の実行列（アクションチェイン）ができる。このアクションチェインがacc 動作に到達すれば, 解析が成功することになる。一方,実行すべき動作が LR 表から決まらないときには, 解析が失敗することになる．このアクションチェインは有向グラフ（アクションチェイングラフ）として表現できる.

初期状態から acc 動作に至るアクションチェインを成功パスと呼ぶ. 成功パス上の動作は, 必要な動作としてLR 表に残す。提案アルゴリズムでは，アクションチェインを最終状態（acc 動作）から逆向きに横型探索によりたどることにより, 成功パスを探索する。すなわち開始記号を左辺に持つ CFG 規則について, その右辺の末尾の記号から順番に展開しながら（最右導出を行いながら）接続制約を満たすか否かをチェックする.

開始記号 $S$ を左辺に持つ $S \rightarrow X_{1} X_{2} \ldots X_{n}$ という $\mathrm{CFG}$ 規則（規則番号を $m$ とする）があったとする. goto グラフには図 3(a) に示すような状態とリンクが存在する（開始状態を 0 とする).この CFG 規則の展開に対応する LR 表中の動作は, 状態 $s_{n}$, 先読み $\$$ における reduce 動作 $\mathrm{re}_{m}$ とその後の状態 0 , 非終端記号 $S$ における状態 $s_{0}$ への遷移であり, この動作をアクションチェインに追加する。そして，右辺の各終端記号または非終端記号について， $X_{n}, X_{n-1}, \cdots$ $X_{1}$ の順に接続制約を満たすか否かをチェックする， $X_{n}$ が終端記号の場合， $X_{n}$ と $\$$ 間の接続制約をチェックする。接続制約を満たすならば, 状態 $s_{n-1}$, 先読み $X_{n}$ における $\operatorname{shift}$ 動作 $\operatorname{sh}_{s_{n}}$ をアクションチェインに追加し， $X_{n-1}$ のチェックに移る（先読みは $X_{n}$ となる）， $X_{n}$ が非終端記号の場合は， $X_{n}$ を左辺とする $\mathrm{CFG}$ 規則で展開する. この $\mathrm{CFG}$ 規則が $X_{n} \rightarrow Y_{1} Y_{2} \ldots Y_{n^{\prime}}$ (規則番号 $m^{\prime}$ ) であるとすると, goto グラフ中では図 3(b) に示すような状態とリンクが存在する. この CFG 規則の展開に対応する, 状態 $s_{n^{\prime}}^{\prime}$, 先読み $\$$ における reduce 動作 $\mathrm{re}_{m^{\prime}}$ と状態 $s_{n-1}$,記号 $X_{n}$ における状態 $s_{n}$ への遷移をアクションチェインに追加し， $Y_{n^{\prime}}, Y_{n^{\prime}-1}, \cdots Y_{1}$ の順に接

(a)

(b)

図 3 goto グラフ
続制約を満たすか否かを同様にチェックする。すべてのチェックが完了したら， $X_{n-1}$ のチェックに移る（先読みは $Y_{1}$ のチェックで最後にアクションチェインに追加した shift 動作の先読みとなる)。以下，同様に続け，最終的に状態 0 における shift 動作がアクションチェインに追加されたら，それが成功パスとなる。

提案アルゴリズムの概要を図 4 に示す. 図中の記法については，以下のとおりである.

$\left[s, \mathrm{re}_{n}, l a, s t a t u s\right]$ : 状態 LastState $(s, n)$, 先読み $l a$ で実行される $n$ 番目の $\mathrm{CFG}$ 規則による reduce 動作を表すアクションチェインの要素. reduce 後, 状態 $s$, 非終端記号 $\operatorname{LHS}(n)$ で状態 $\operatorname{Goto}(s, \operatorname{LHS}(n))$ へ遷移する。たたしし, $n=0$ の場合は, reduce 動作ではなく acc 動作を表す要素となる． status は要素の処理状態を表す。要素の処理状態には, init（初期状態）, wait (待機状態), check（調査中）, pass（調査済）, end（最終状態）があり, この順番で遷移する（init は飛ばされることもある）.

init: 要素を作成しただけの状態

wait: 次にアクションチェインに追加可能であることを表す状態

check: アクションチェインに追加され, その後, 解析開始状態 (goto グラフにおける状態 0）に到達可能かどうか（最終的に接続制約を満たすかどうか）を調査中であることを表す状態

pass： 解析開始状態に到達可能であることが判明したことを表す状態

end: 成功パスの要素であることを表す状態

$[s, \mathrm{sh}, l a$, status $]$ : 状態 $s$, 先読み $l a$ で実行される shift 動作を表すアクションチェインの要素.

$\operatorname{Length}(n): n$ 番目の $\mathrm{CFG}$ 規則の右辺の長さ.

$\operatorname{LHS}(n): n$ 番目の CFG 規則の左辺の非終端記号.

$\operatorname{RHS}(n, i): \quad n$ 番目の CFG 規則の右辺の $i$ 番目の終端記号または非終端記号. $1 \leq i \leq \operatorname{Length}(n)$

$\operatorname{Rule}(A)$ : 非終端記号 $A$ を左辺に持つ規則番号の集合. $\operatorname{Rule}(A)=\{n \mid \operatorname{LHS}(n)=A\}$

PrevAction $(a)$ : reduce 動作または shift 動作 $a$ に続く動作の集合.

$\operatorname{State}(s, n, i): \quad n$ 番目の $\mathrm{CFG}$ 規則について, 状態 $s$ から $\operatorname{RHS}(n, 1), \cdots \operatorname{RHS}(n, i-1)$ を遷移した後の状態.

LastState $(s, n)$ : 状態 $s$ から $n$ 番目の CFG 規則の右辺の終端記号または非終端記号列すべてを遷移した後の状態。

$\operatorname{LA}(s, n)$ : 状態 LastState $(s, n)$ における $n$ 番目の CFG 規則による reduce 動作の先読みの集合.

$\operatorname{PrevSym}(s)$ : 状態 $s$ へ遷移記号の集合. $\operatorname{PrevSym}(s)=\left.\{\operatorname{sym} \mid \operatorname{Goto}\left(s^{\prime}\right.\right.$, sym $\left.)=s\right.\}$

$\operatorname{PrevState}(s$, sym $)$ ：記号 sym によって状態 $s$ に遷移する状態の集合. PrevState $(s$, sym $)=$ $\left.\{s^{\prime} \mid \operatorname{Goto}\left(s^{\prime}\right.\right.$, sym $\left.)=s\right.\}$

図 4 の（2）では, wait 状態の reduce 動作要素について，その状態を checkとして，対象となる動作の実行後に解析開始状態まで接続制約に違反することなく到達可能かどうかのチェックを

(1) $\left[0, \mathrm{re}_{0}, \$\right.$, wait $]$ を作成し, PrevAction $\left(\left[0, \mathrm{re}_{0}, \$\right.\right.$, wait $\left.]\right)=\emptyset$ とする.

（2）処理状態が wait の reduce 動作要素または shift 動作要素があれば，その中から 1 つを横型探索で選択

し，処理状態を check として以下の処理を行う (これを $a=[s, a c t, l a$, check $]$ とする).
- reduce 動作要素 $\left(a c t=\mathrm{re}_{n}\right)$ の場合
- $\quad 1 \leq i \leq \operatorname{Length}(n)-1$ である各 $i$ について
* $\operatorname{sym}=\operatorname{RHS}(n, i)$ が終端記号の場合, shift 動作要素 $a^{\prime}=[\operatorname{State}(s, n, i), \mathrm{sh}$, sym, init $]$ を生成.
* $\quad$ sym $=\operatorname{RHS}(n, i)$ が非終端記号の場合, 各 $n^{\prime} \in \operatorname{Rule}(s y m)$, 各 $l \in \operatorname{LA}\left(\operatorname{State}(s, n, i), n^{\prime}\right)$

について, reduce 檕
$-\quad i=\operatorname{Length}(n)$ について
* $\quad$ sym $=\operatorname{RHS}(n, i)$ が終端記号の場合, $\operatorname{connect}[\operatorname{RHS}(n, i), l a]=1$ ならば,

(a) shift 動作要素 $a^{\prime}=[\operatorname{State}(s, n, i)$, sh, sym, wait $]$ を生成.

(b) $\operatorname{PrevAction}\left(a^{\prime}\right)=\{a\}$ とする.
* $\quad$ sym $=\operatorname{RHS}(n, i)$ が非終端記号の場合, 各 $n^{\prime} \in \operatorname{Rule}($ sym $)$ について,

(a) reduce 動作要素 $a^{\prime}=\left[\operatorname{State}(s, n, i), \mathrm{re}_{n^{\prime}}, l a\right.$, wait $]$ を生成.

(b) $\operatorname{PrevAction}\left(a^{\prime}\right)=\{a\}$ とする.
- $\quad$ shift 動作要素 $(a c t=\operatorname{sh})$ の場合
- $s=0$ (開始状態) の場合，処理状態を pass とする.
- $s \neq 0$ の場合, 各 $\operatorname{sym} \in \operatorname{PrevSym}(s)$ について
* sym が終端記号の場合, connect $\left[\right.$ sym, la] $=1$ ならば, 各 $s^{\prime} \in \operatorname{PrevState}(s$, sym $)$ について, shift 動作要素 $a^{\prime}=\left[s^{\prime}\right.$, sh, sym, init $]$ があれば,

(a) 処理状態を wait とする

(b) PrevAction $\left(a^{\prime}\right):=\operatorname{PrevAction}\left(a^{\prime}\right) \cup\{a\}$ とする.
* sym が非終端記号の場合, 各 $s^{\prime} \in \operatorname{PrevState}(s$, sym $)$, 各 $n^{\prime} \in \operatorname{Rule}($ sym $)$ について, reduce 動作要素 $a^{\prime}=\left[s^{\prime}, \mathrm{re}_{n^{\prime}}, l a\right.$, init $]$ があれば,

(a) 処理状態を wait とする.

(b) $\operatorname{PrevAction}\left(a^{\prime}\right):=\operatorname{PrevAction}\left(a^{\prime}\right) \cup\{a\}$ とする.

(3) 処理状態が wait の reduce 動作要素または shift 動作要素があれば, (2)へ戻る.

（4）処理状態が pass の reduce 動作要素または shift 動作要素があれば，その中から 1 つを選択して処理状態を end とし (これを $a$ とする), 各 $a^{\prime} \in \operatorname{PrevAction}(a)$ について以下の処理を行う.
- reduce 動作要素 $a^{\prime}=\left[s, \mathrm{re}_{n}, l a\right.$, check $]$ の場合, $i=\operatorname{Length}(n)$ について,
- $\quad s y m=\operatorname{RHS}(n, i)$ が終端記号の場合, $\operatorname{connect}[s y m, l a]=1$, かつ, [State $(s, n, i)$, sh, sym, end] があれば， $a^{\prime}$ の処理状態を passにする。
- $\quad s y m=\operatorname{RHS}(n, i)$ が非終端記号の場合, $\left[\operatorname{State}(s, n, i), \mathrm{re}_{n^{\prime}}, l a, \mathrm{end}\right]\left(n^{\prime} \in \operatorname{Rule}(s y m)\right)$ があれば， $a^{\prime}$ の処理状態を pass にする。
- $\quad$ shift 動作要素 $a^{\prime}=[s, \mathrm{sh}, l a, \mathrm{check}]$ の場合, 各 $\operatorname{sym} \in \operatorname{PrevSym}(s)$ について
- sym が終端記号の場合, connect $[$ sym,$l a]=1$ ならば, 各 $s^{\prime} \in \operatorname{PrevState}(s$, sym $)$ について, $\left[s^{\prime}\right.$, sh, sym, end $]$ があれば， $a^{\prime}$ の処理状態を pass にする.
- sym が非終端記号の場合, 各 $s^{\prime} \in \operatorname{PrevState}(s$, sym $)$, 各 $n^{\prime} \in \operatorname{Rule}($ Sym $)$ について, $\left[s^{\prime}, \mathrm{re}_{n^{\prime}}, l a, \mathrm{end}\right]$ があれば， $a^{\prime}$ の処理状態を pass にする.

（5）処理状態が pass の reduce 動作要素または shift 動作要素があれば，(4)へ戻る.

図 4 アルゴリズム概略

行う。 wait 状態の shift 動作要素ならば，その状態を checkとして，それに先行する init 状態の要素について, その状態を wait とする。ただし, 先行する要素が shift 動作要素の場合は, 両者の先読み記号の間の接続制約をチェックする。また, gotoグラフにおける状態 0 での shift 動作要素の場合は, 解析開始状態まで到達可能であることが判明したので, 要素の状態を pass とする。図4の（4）では, pass 状態の要素について, その状態を end とし, そこから（2）のと

きとは逆に要素をたどり, check 状態の要素が解析開始状態まで到達可能であることを伝えていく（状態を checkから passにする），最終的に状態が end となった要素の列が成功パスとなる.

図 2 に示す文法 $G$ と接続制約 $C$ に対し，上述のアルゴリズムを適用すると，以下のような手順で処理が進行する.

(1) $\left[0, \mathrm{re}_{0}, \$\right.$, wait $]$ を作成.

(2) $\left[0, \mathrm{re}_{0}, \$\right.$, wait $]$ について，処理状態を check に変更し，

$\left[0, \mathrm{re}_{1}, \$\right.$, wait $], \quad\left[0, \mathrm{re}_{2}, \$\right.$, wait $]$ を作成.

(3) $\left[0, \mathrm{re}_{1}, \$\right.$, wait $]$ について，処理状態を check に変更し，

$\left[0, \mathrm{sh}, a\right.$, init], $\left[2, \mathrm{re}_{3}, e\right.$, init], [4, sh, $e$, wait] を作成.

(4) $\left[0, \mathrm{re}_{2}, \$\right.$, wait $]$ について，処理状態を check に変更し，

$[0, \mathrm{sh}, b, \mathrm{init}], \quad\left[3, \mathrm{re}_{4}, \$\right.$, wait $]$ を作成（図 5 (1)).

(5) $[4$, sh,$e$, wait $]$ について，処理状態を check に変更し,

$\left[2, \mathrm{re}_{3}, a\right.$, init $]$ の処理状態を wait に変更.

(6) $\left[3, \mathrm{re}_{4}, e\right.$, wait $]$ について，処理状態を check に変更し，

$\left[3, \mathrm{re}_{5}, e\right.$, init], $\left[3, \mathrm{re}_{6}, e\right.$, init], $[9, \mathrm{sh}, e$, wait] を作成.

(7) $\left[2, \mathrm{re}_{3}, e\right.$, wait $]$ について，処理状態を check に変更し,

$\left[2, \mathrm{re}_{5}, d\right.$, init], $\left[2, \mathrm{re}_{6}, d\right.$, init], $[5, \mathrm{sh}, d$, wait] を作成（図 $5(2)$ ).

(8) $[5$, sh, $d$, wait $]$ について，処理状態を check に変更し，

$\left[2, \mathrm{re}_{5}, d\right.$, init $], \quad\left[2, \mathrm{re}_{6}, d\right.$, init $]$ の処理状態を wait に変更.

(9) $[9$, sh,$e$, wait $]$ について，処理状態を checkに変更し，

$\left[3, \mathrm{re}_{5}, e, \mathrm{init}\right], \quad\left[3, \mathrm{re}_{6}, e, \mathrm{init}\right]$ の処理状態を wait に変更.

(10) $\left[2, \mathrm{re}_{5}, d\right.$, wait $]$ について, 処理状態を check に変更し, $[2, \mathrm{sh}, b$, init $],[6, \mathrm{sh}, c$, wait $]$ を作成.

(11) $\left[2, \mathrm{re}_{6}, d\right.$, wait $]$ について，処理状態を check に変更し， $[2$, sh, $c$, init $]$ を作成

( $[6$, sh, $d$, wait $]$ は, $\operatorname{connect}(d, d)=0$ より作成しない).

(12) $\left[3, \mathrm{re}_{5}, e\right.$, wait $]$ について，処理状態を checkに変更し， $[3, \mathrm{sh}, b$, init $]$ を作成

( $[7$, sh, $c$, wait $]$ は, $\operatorname{connect}(c, e)=0$ より作成しない).

(13) $\left[3, \mathrm{re}_{6}, e\right.$, wait $]$ について, 処理状態を check に変更し, $[3, \mathrm{sh}, c$, init $],[7, \mathrm{sh}, d$, wait $]$ を作成.

(14) $[6$, sh, $c$, wait $]$ について，処理状態を checkに変更し,

$[2, \mathrm{sh}, b, \mathrm{init}]$ の処理状態を wait に変更.

(15) $[7$, sh, $d$, wait $]$ について，処理状態を checkに変更し,

$[3$, sh,$c$, init $]$ の処理状態を wait に変更.

(16) $[2$, sh,$b$, wait $]$ について，処理状態を check に変更し,

$[0$, sh,$a$, init $]$ の処理状態を wait に変更.

(17) $[3$, sh, $c$, wait $]$ について，処理状態を check に変更し,

(1)

(2)

(3)

図 5 アクションチェイングラフ作成の経過
$[0, \mathrm{sh}, b, \mathrm{init}]$ の処理状態を wait に変更.

(18) $[0$, sh, $a$, wait $]$ について，処理状態を pass に変更.

(19) $[0$, sh, $b$, wait $]$ について，処理状態を pass に変更（図 5 (3)）.

(20) $[0$, sh,$a$, pass $]$ について，処理状態を end に変更し，

$[2$, sh,$b$, check $]$ の処理状態を pass に変更.

(21) $[0, \mathrm{sh}, b, \mathrm{pass}]$ について，処理状態を end に変更し，

$[3$, sh,$c$, check $]$ の処理状態を pass に変更.

(22) $[2, \mathrm{sh}, b, \mathrm{pass}]$ について，処理状態を end に変更し,

$[6$, sh,$c$, check $]$ の処理状態を pass に変更.

(23) $[3, \mathrm{sh}, c, \mathrm{pass}]$ について，処理状態を end に変更し,

$[7$, sh,$d$, check $]$ の処理状態を pass に変更.

(24) 以下，同様に処理を続け，処理状態が pass の要素がなくなったら終了（図 5 (4)).

アルゴリズムを適用後，処理状態が end である動作要素をたどることにより，成功パスを抽出できる（図 5（4）の実線のリンクが成功パスである）。作成される LR 表を表 2 に示す。また，表 2 において，括弧で囲まれた動作は，Liの手法で削除できず，提案手法により削除されたものを表す。

表 2 提案手法により作成される LR 表

## 4 実験と評価

提案手法の効果を調べるため, 従来手法との比較実験を行った. コーパスは東工大コーパス 20,190 文（1 文あたり約 23 形態素）(Noro, Koike, Hashimoto, Tokunaga, and Tanaka 2005) を利用する，20,190 文すべてから抽出した文法 $G_{\text {all }}$ を使用し，MSLR パーザで構文解析を行う.入力は平文とする。解析結果の順位付けは PGLR モデルにより行う。比較は, 提案手法により生成される $\mathrm{LR}$ 表と, $\mathrm{Li}$ の手法により生成される LR 表, 接続制約を組み込まない LR 表の 3 つで行う.

抽出した CFG 規則数は 2,722 規則（非終端記号 294 個, 終端記号 412 個）である. 各手法により生成された LR 表中の状態数と動作数を表 3 に示す. 状態数において, 「shift 後」,「reduce 後」とは，それぞれ shift/reduce を実行した直後に到達する状態を指す. PGLR モデルによる確率計算ではこの 2 種類の状態を区別する必要があるため，参考として内訳を示している。また, 動作数において，丸括弧，角括弧で囲まれた数字は，それぞれ，コンフリクトが生じる動作の数, PGLR モデルによる確率が 1 ではない動作の数を表す. 前者は解析途中での曖昧性の大小の目安に, 後者は PGLR モデルによる確率計算の影響の大小（パラメータ数の大小）の目安になる。この表より, 状態数にはそれほど大きな差は生じないが，総動作数については，接続制約を組み込まない場合と比較して約 $64 \%$ 削減できていることが分かる.コンフリクトが生じる動作数, PGLR モデルによる確率が 1 にならない動作数は, それぞれ約 $56 \%, 71 \%$ 削減できている。一方, $\mathrm{Li}$ の手法と比較すると, 総動作数では約 $1.2 \%$, コンフリクトが生じる動作数と PGLR モデルによる確率が 1 ではない動作数はどちらも約 $1.4 \%$ 削減できている.

表 3 各 LR 表中の状態数と動作数

 &  &  \\

次に，全 20,190 文を構文解析する際の所要時間（ユーザ CPU 時間）を計測した。結果を表 4 に示す。ただし，計測は Dual-Core Intel Xeon $3 \mathrm{GHz}$, メモリ 4 GBの環境で行った. 結果より，接続制約を組み込まない場合と比較して約 $52 \%, \mathrm{Li}$ の手法と比較して約 $2.4 \%$ 短縮された。接続制約を組み込まない場合，接続制約を満たさない構文木も解析結果として出力される.速度向上の要因は, 接続制約を組み达んだことによる曖昧性の減少にあると考えられる。一方, Li の手法では, 接続制約が組み込まれているため, 最終的に出力される解析結果は提案手法の場合と同じである。しかし, 不要な動作が残っているため, 解析途中での無駄な曖昧性（最終的に acc に到達できない解析途中状態）が多く存在する。例えば，第 2.4 節で示した動作実行列の場合, 提案手法では, 状態 2 , 先読み記号 $c$ における動作が LR 表中に存在しないことが分かった時点で解析を終了するが， $\mathrm{Li}$ の手法では，状態 13 ，先読み記号 $d$ となるまで解析が継続する。提案手法と $\mathrm{Li}$ の手法の解析所要時間の差は, ここで生じる.

最後に，PGLR モデルによる順位付けの評価を 10 分割交差検定により行った. すなわち，全体の 10 分の 9 にあたる 18,171 文を利用してモデルの学習を行い, 残りの 2,019 文で評価を行った（文法は $G_{\text {all }}$ を使用した） ${ }^{5}$. 解析精度は, 文正解率により比較した. 文正解率は以下のように定義する。

$
\text { 文正解率 }=\frac{\text { 上位 } n \text { 位までに正解が含まれる文の数 }}{\text { 解析した文の総数 }}
$

ここで「正解」とは, 出力された解析木が正解とすべき構文木と完全に一致する場合を指す。結果を表 5 に示す。提案手法では，PGLR モデルによる順位が 1 位の解析木のみを見た場合，接続制約を組み込まない場合と比較して $0.74 \%$ 向上している。一方, $\mathrm{Li}$ の手法と比較すると, 1 位の解析木のみでは $0.16 \%$ 向上しているが，上位 10 位までを見るとほとんど差がなく，LR 表中の不要動作の削除が解析精度に与える影響は大きくないことが分かる.

表 4 構文解析所要時間（ユーザ CPU 時間）

表 5 各順位における文正解率 (\%)

解析所要時間の差と同様, 解析精度の差についても, 提案手法と接続制約を組み込まない場合との間では, 最終的に出力される解析木の数の違いが要因と考えられる。一方, Li の手法による LR 表での最終的な解析結果の曖昧性は提案手法の場合と同じである。また, 提案手法でのみ削除可能な動作は, どのような動作実行列をたどっても, 最終的に acc に到達することのないものであるため, 学習データ中にも存在しない. PGLR モデルによる LR 表中の各動作の確率は，学習データに付与された構文木を生成する際に実行する動作の使用回数をもとに計算されるが, 最終的に acc に到達できない動作に対する確率は 0 となり, 最終的に出力される各解析木の確率は提案手法の場合と同じになるはずである。しかし, MSLRパーザでは, 確率計

果, 学習データ中で使用されない動作についても0ではない確率が与えられ, 最終的に出力される各解析木の確率が提案手法の場合と $\mathrm{Li}$ の手法の場合との間で異なる場合があり，それが，解析精度に差が生じる要因になる。平滑化を行わなければ同じ結果になるが, その場合, accに到達可能であり, かつ, 妥当な動作であるにもかかわらず学習デー夕に偶然出現しなかった動

作に対する確率も 0 となる。確率が 0 である動作が，接続制約を組み达んだことによって acc に到達不可能となった動作であるか, 偶然学習デー夕に出現しなかった動作であるかを, 学習の段階で区別することは困難である．LR 表を作成する段階で acc に到達不可能な動作を削除しておけば, この問題を回避することが可能であり, その点においても提案手法が有効であることが分かる.

## 5 提案アルゴリズムの完全性の証明

本節では, 提案アルゴリズムの完全性について考察する。ここで, 完全性とは, 作成される LR 表に不要なアクションが存在しないことである。これを示すためには, LR 表が以下の $2 \supset$ の性質を満たすことを示せばよい.
- 妥当性

任意の構文木 $\operatorname{tr}$ に対し, 以下が成り立つ.

$
\operatorname{Generate}(t r, G, C)=\operatorname{GenerateLR}(\operatorname{tr}, T)
$

ただし，

$G, C, T: \mathrm{CFG}$, 接続制約, LR 表

Generate $(t r, G, C)$ : 文法 $G$, 接続制約 $C$ から構文木 $t r$ を生成可能ならば 1 , 不可能ならば 0

GenerateLR $(t r, T)$ ：LR 表 $T$ から構文木 $t r$ を生成可能ならば 1 , 不可能ならば 0
- 最小性
妥当性を満たす LR 表中の任意の要素（動作） $a$ に対し，以下が成り立つような構文木 tr が存在する。

$
\operatorname{GenerateLR}(t r, T)=1 \wedge \operatorname{GenerateLR}\left(t r, T_{a}\right)=0
$

ただし，

$T_{a}: \quad \mathrm{LR}$ 表 $T$ から要素 $a$ を除いた LR 表

文法 $G$ は，第 2.1 節で述べた， $\varepsilon$ 規則を含まないという条件のほかに，以下の条件を満たすことを前提とする。

(1) 文法規則は重複しない. すなわち, 文法 $G$ 中の任意の 2 つ文法規則 $A \rightarrow \alpha, B \rightarrow \beta$ について, $A \neq B \vee \alpha \neq \beta$

(2) 循環する導出は存在しない. すなわち, 文法 $G$ 中の任意の非終端記号 $A$ について, $A \xrightarrow{*} A$ となるような導出は存在しない

## 5.1 妥当性の証明

提案アルゴリズムによって作成される LR 表が妥当性を満たすことを示すためには，以下の 2 つを示せばよい.

(1) $\operatorname{Generate}(\operatorname{tr}, G, C)=1$ ならば $\operatorname{GenerateLR}(\operatorname{tr}, \operatorname{Table}(A C G))=1$

(2) $\operatorname{GenerateLR}(t r, \operatorname{Table}(A C G))=1$ ならば $\operatorname{Generate}(t r, G, C)=1$ ただし，

$A C G:$ 提案アルゴリズムによって生成されるアクションチェイングラフ

Table $(A C G): A C G$ から生成される $\mathrm{LR}$ 表

提案アルゴリズムでは, 開始記号から最右導出を行いながらアクションチェイングラフを生成し，その中に含まれる成功パスから $\mathrm{LR}$ 表を生成する. ここで, Generate $(t r, G, C)=1$ を満たす構文木 $t r$ に相当する最右導出の際に，提案アルゴリズムによって生成されるアクションチェインは, 成功パスである。この成功パス中の要素に対応する動作は, このアクションチェイングラフから生成される $\mathrm{LR}$ 表に含まれるので, $t r$ は Table $(A C G)$ から生成可能である。 すなわち，（1）が成り立つ.

一方，ある構文木 $\operatorname{tr}$ が $\operatorname{GenerateLR}(\operatorname{tr}, \operatorname{Table}(A C G))=1$ を満たすと仮定する.このとき， Table $(A C G)$ から $t r$ を生成する際の実行動作列について, 先頭の実行動作から順に, 以下の法則に従って $A C G$ 中のアクションチェイン要素をたどることにより, 成功パスを得ることができる。

・ 注目する実行動作が acc 動作の場合, $\left[0, \mathrm{re}_{0}, \$, \mathrm{end}\right]$ をたどる.
- 注目する実行動作が状態 $s$, 先読み $l a$ における shift 動作の場合, $[s, \mathrm{sh}, l a, \mathrm{end}]$ をたどる.
- 注目する実行動作が状態 $s$, 先読み $l a$ における規則番号 $n$ による reduce 動作, さらにその次

をたどる。

$A C G$ 中の成功パスに対応する構文木は文法 $G$, 接続制約 $C$ を満たすので, (2) が成り立つ.

以上より，提案アルゴリズムによって作成される LR 表は妥当性を満たす.

## 5.2 最小性の証明

$T=\operatorname{Table}(A C G)$ が最小性を満たさないと仮定すると, 次を満たす要素 $a$ が $T$ 中に少なくとも 1 つ存在する.

任意の $t r \in\{t r \mid \operatorname{GenerateLR}(t r, T)=1\}$ に対して, $\operatorname{GenerateLR}\left(t r, T_{a}\right)=1$

このとき， $\{t r \mid \operatorname{GenerateLR}(t r, T)=1\} \equiv\left.\{t r \mid \operatorname{GenerateLR}\left(t r, T_{a}\right)=1\right.\}$ となり，aに対応する $A C G$ 中の要素を $e$ とすると, $\left.\{\operatorname{tr} \mid \operatorname{GenerateLR}\left(t r, T_{a}\right)=1\right.\}$ 中の任意の構文木を生成する際の実行動作列に対応する $A C G$ 中の成功パスは, $e$ を含まない.

一方，T中に $a$ が存在することから， $A C G$ 中には $e$ を含む成功パスが存在する. その成功パスに対応する実行動作列は $a$ を含み，その実行動作列で生成される構文木を $t r^{\prime}$ とすると，以下が成り立つ.

$
\operatorname{GenerateLR}\left(t r^{\prime}, T\right)=1 \wedge \operatorname{GenerateLR}\left(t r^{\prime}, T_{a}\right)=0
$

これは $T$ が最小性を満たさないという仮定に矛盾する。

以上より，提案アルゴリズムによって作成される LR 表は最小性を満たす.

## 6 結論と今後の課題

コーパスベースの自然言語処理技術は, 音声認識などにおいて, 精度向上のブレイクスルー を持たらした。これは，コーパスの量を増やすことによって精度が向上したからであるが，それには限界が見えはじめている。この限界を越える技術として，コーパスの量を増やすのではなく，ルールベースの手法を再考すべき時期に来ていると考えている.

本論文では, ルールベースの構文解析の 1 つである一般化 LR 構文解析に注目し, 品詞間接続制約を LR 表に組み込み，不要な動作を削除する手法を提案した。提案手法により，接続制約による削除を行わない場合と比較して約 $64 \%$ の不要動作を削除でき, 従来手法と比較するとさらに約 $1.2 \%$ の不要動作を削減できた。提案手法により作成した LR 表で構文解析を行った場合,解析所要時間は，接続制約を組み込まない LR 表で構文解析を行った場合と比較して約 $52 \%$, 従来手法と比較して約 $2.4 \%$ 短縮された。解析精度（文正解率）は，接続制約を組み込まない場合と比較すると向上が見られたが，従来手法と比較すると大きな差は見られなかった。しかし，

PGLR モデルによる確率計算の平滑化における問題を回避するためにも，不要な動作を削除することは有効であり，今後，コーパスベースの手法を取り入れた場合の精度向上の効果が大きくなると考えている.

実験で示した解析精度（文正解率）はコーパスベースの解析と比較すると低いと思われるかもしれない。しかし，MSLRパーザは品詞間の接続制約と CFGのみを利用して構文解析を行う。この結果に共起データ等の情報を加えれば，コーパスベースの解析と同程度の正解率が得られるものと期待される ${ }^{6}$. 筆者らはルールベースの自然言語処理にはまだ検討の余地があると考えている.

## 参考文献

Aho, A. V., Sethi, R., and Ullman, J. D. (1986). Compilers: Principles, Techniques, and Tools. Addison Wesley.

Briscoe, T. and Carroll, J. (1993). "Generalized Probabilistic LR Parsing of Natural Language (Corpora) with Unification-Based Grammars." Computational Linguistics, 19 (1), pp. 25-59.

Charniak, E. (1996). Statistical Language Learning. The MIT Press.

DeRemer, F. and Pennello, T. (1982). "Efficient Computation of LALR(1) Look-Ahead Sets." ACM Transactions on Programming Languages and Systems, 4 (4), pp. 615-649.

Inui, K., Sornlertlamvanich, V., Tanaka, H., and Tokunaga, T. (2000). "Probabilistic GLR Parsing." In Bunt, H. and Nijholt, A. (Eds.), Advances in Probabilistic and Other Parsing Technologies, chap. 5, pp. 85-104. Kluwer Academic Publishers.

Jelinek, F. (1998). Statistical Methods for Speech Recognition. The MIT Press.

工藤拓, 松本裕治 (2002). “チャンキングの段階適用による日本語係り受け解析.”情報処理学会論文誌, 43 (6), pp. 1834-1842.

Li, H. and Tanaka, H. (1995). "A Method for Integrating the Connection Constraints into an LR Table." In Natural Language Processing Pacific Rim Symposium, pp. 703-708.

Noro, T., Koike, C., Hashimoto, T., Tokunaga, T., and Tanaka, H. (2005). "Evaluation for a Japanese CFG Grammar Derived from Syntactically Annotated Corpus with Respect to Dependency Measures." In the 5th Workshop on Asian Language Resources, pp. 9-16.

白井清昭, 植木正裕, 橋本泰一, 徳永健伸, 田中穂積 (2000). “自然言語解析のための MSLR パーザ・ツールキット.”自然言語処理, 7 (5), pp. 93-112.

Tanaka, H., Tokunaga, T., and Aizawa, M. (1995). "Integration of Morphological and Syntactic Analysis Based on LR Parsing Algorithm.” 自然言語処理, 2 (2), pp. 59-74.

Tomita, M. (1991). Generalized LR Parsing. Kluwer Academic Publishers.

内元清貴, 関根聡, 井佐原均 (1999). “最大エントロピー法に基づくモデルを用いた日本語係り受け解析.”情報処理学会論文誌, 40 (9), pp. 3397-3407.

## 略歴

野呂智哉：2000 年東京工業大学工学部情報工学科卒業. 2005 年同大学大学院情報理工学研究科博士課程修了. 同年同大学同研究科計算工学専攻助手. 現在, 同大学同研究科計算工学専攻助教. 博士 (工学). 自然言語処理, Web 情報処理等の研究に従事. 言語処理学会, 情報処理学会, 日本ソフトウェア科学会各会員.

田中穂積：1964 年東京工業大学工学部情報工学科卒業. 1966 年同大学院理工学研究科修士課程修了. 同年電気試験所 (現産業技術総合研究所) 入所. 1980 年東京工業大学工学部情報工学科助教授. 1983 年同教授. 1994 年東京工業大学大学院情報理工学研究科教授. 2005 年中京大学情報科学部認知科学科教授. 2006 年東京工業大学先進研究機構機構長. 2009 年北陸先端科学技術大学院大学情報科学研究科特任教授, 現在に至る. 工学博士. 人工知能, 自然言語処理に関する研究に従事. 情報処理学会, 電子情報通信学会, 認知科学会,人工知能学会, 計量国語学会, Association for Computational Linguistics, 各会員.

橋本泰一：1997 年東京工業大学工学部情報工学科卒業. 2002 年同大学大学院情報理工学研究科博士課程修了. 同年同大学同研究科計算工学専攻助手. 2006 年同大学統合研究院特任助教授. 現在, 同大学統合研究院特任准教授.博士 (工学). 自然言語処理, 情報検索に関する研究に従事. 言語処理学会,情報処理学会, 人工知能学会, 科学技術社会論学会, 各会員.

白井清昭：1993 年東京工業大学工学部情報工学科卒業. 1998 年同大学院情報理工学研究科博士後期課程修了. 同年同大学院情報理工学研究科計算工学専攻助手. 2001 年北陸先端科学技術大学院大学情報科学研究科助教授. 現在
同准教授. 博士 (工学). 自然言語処理に関する研究に従事. 言語処理学会,情報処理学会, 人工知能学会, Association for Computational Linguistics, 各会員.