(57)【要約】【課題】精度高く自動的に単語に対する意味タグ付けを行なうためのモデルを構築可能なモデル構築装置を提供する。【解決手段】モデル構築装置４５４は、各単語に意味タグと文法タグとが付された学習用コーパス４８６中の単語に関するコンテキスト系の特徴関数及び依存性特徴関数を抽出するプロセス４８８と、オントロジー４５２からオントロジー特徴関数を抽出するプロセス４９０と、これら特徴関数の各々に関し、学習用コーパス４８６中の各単語に対し算出される特徴関数の値の統計に基づき特徴関数の相互情報量を算出し、情報量の大きな特徴関数を選択する特徴選択プロセス４９４と、選択された特徴関数に関して学習用コーパス４８６中の各単語に対し得られた特徴関数の値の統計に基づき、入力文中の各単語に対し得られる特徴関数の値に基づき、当該単語に対して各意味タグが付与される尤度を与える統計的モデル４５６を算出するプロセス４９８とを含む。【選択図】      図９
2008021139.tif 000002
【特許請求の範囲】
【請求項１】
予め各単語に所定の意味タグセットに属する意味タグのいずれかと、所定の文法タグセットに属する文法タグのいずれかとが付された所定の言語のコーパスを用い、前記言語の単語に対する意味タグを自動的に付与するための統計的モデルを構築するための、意味タグ付け用モデル構築装置であって、
前記コーパス中の各文の各単語に関する所定のコンテキスト系の特徴関数を抽出するための第１の特徴関数抽出手段と、
前記コーパス中の各文について、各文に含まれる依存性の解析を行ない、依存性の特徴に関する特徴関数を抽出するための第２の特徴関数抽出手段と、
前記第１及び第２の特徴関数抽出手段により抽出された特徴関数の各々に関し、前記コーパス中の各文及び各単語に対して算出される値に関する統計に基づく所定の算出方法により算出される情報量を基準とし、情報量の大きな特徴関数のみを所定の基準にしたがって選択するための特徴関数選択手段と、
前記特徴関数選択手段により選択された特徴関数に関して前記コーパス中の各文及び各単語に対して得られた前記所定のコンテキスト系の特徴関数及び前記依存性の特徴に関する特徴関数に対して得られる特徴量の統計に基づき、前記所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる前記所定のコンテキスト系の特徴関数のうち前記特徴関数選択手段により選択された特徴関数の値、及び前記入力文に含まれる依存性の特徴に関する特徴関数のうち前記特徴関数選択手段により選択された特徴関数の値に基づいて、当該単語に対して前記所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出するためのモデル算出手段とを含む、意味タグ付け用モデル構築装置。
【請求項２】
前記所定のコンテキスト系の特徴関数は、
対象となる単語の前後の所定個数の単語からなる単語コンテキストの特徴関数と、
対象となる単語の前の所定個数の意味タグからなる意味タグのコンテキストの特徴関数と、
対象となる単語の前後の所定個数の文法タグからなる文法タグコンテキストの特徴関数とを含み、
前記第１の特徴関数抽出手段は、
前記コーパス中の各文の各単語に関し、当該単語に関する前記単語コンテキストの特徴関数と、前記意味タグのコンテキストの特徴関数と、前記文法タグコンテキストの特徴関数とをそれぞれ抽出するための手段を含む、請求項１に記載の意味タグ付け用モデル構築装置。
【請求項３】
前記第２の特徴関数抽出手段は、
前記コーパス中の各文について依存性解析を行ない、単語間の依存関係を出力するための依存性解析手段と、
前記依存性解析手段により得られた依存関係の各々について、当該依存関係を構成する第１の単語及び第２の単語と、当該依存関係の分類を示す依存性ラベルとの組からなる、依存性に関する第１の特徴関数を抽出するための手段と、
前記依存性解析手段により得られた依存関係の各々について、当該依存関係を構成する前記第２の単語及び第１の単語と、当該依存関係を逆転させた関係を示す分類を示す依存性ラベルとの組からなる、依存性に関する第２の特徴関数を抽出するための手段とを含む、請求項１又は請求項２に記載の意味タグ付け用モデル構築装置。
【請求項４】
前記特徴関数選択手段は、
前記第１及び第２の特徴関数抽出手段により抽出された特徴関数の各々に関し、前記コーパス中の各文及び各単語に対して算出される値に関する統計に基づく相互情報量を算出するための相互情報量算出手段と、
前記相互情報量算出手段により算出された情報量の大きな特徴関数のみを、前記所定の基準にしたがって選択するための手段とを含む、請求項１〜請求項３のいずれかに記載の意味タグ付け用モデル構築装置。
【請求項５】
前記モデル算出手段は、
前記特徴関数選択手段により選択された特徴関数に関し、前記コーパス中の各文及び各単語に対して特徴量を算出するための特徴量算出手段と、
前記特徴量算出手段により算出された特徴量の統計に基づき、前記所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる前記所定のコンテキスト系の特徴関数のうち前記特徴関数選択手段により選択された特徴関数、及び前記入力文に含まれる依存性の特徴に関する特徴関数のうち前記特徴関数選択手段により選択された特徴関数に基づいて、当該単語に対して前記所定の意味タグセットに属する意味タグが付与される尤度を与える、最大エントロピー法に基づくモデルを算出するための手段とを含む、請求項１〜請求項４のいずれかに記載の意味タグ付け用モデル構築装置。
【請求項６】
前記モデル構築装置はさらに、コンピュータ読取り可能な前記言語のオントロジーとともに用いられ、当該オントロジーは、前記言語の単語に関し、その意味に基づく階層的構造を与えるものであり、当該階層的構造は、階層的木構造を構成する複数のノードを含み、各ノードはそれぞれそのノードに属する単語の意味的カテゴリーに対応しており、
前記モデル構築装置はさらに、前記オントロジーの各ノードに対応し、コーパス中の各文の各単語が当該ノードに属するか否かを示す値をとる所定のオントロジー特徴関数を抽出するための第３の特徴関数抽出手段を含み、
前記特徴関数選択手段は、前記第１、第２、及び第３の特徴関数抽出手段により抽出された特徴関数の各々に関し、前記コーパス中の各文及び各単語に対して算出される値に関する統計に基づく所定の算出方法により算出される情報量を基準とし、情報量の大きな特徴関数のみを所定の基準にしたがって選択するための手段を含み、
前記モデル算出手段は、
前記選択するための手段により選択された特徴関数に関して前記コーパス中の各文及び各単語に対して得られた前記所定のコンテキスト系の特徴関数、前記依存性の特徴に関する特徴関数、及び前記所定のオントロジー特徴関数に対して得られる特徴量の統計を算出するための統計量算出手段と、
前記統計量算出手段により算出された統計量に基づき、前記所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる、前記所定のコンテキスト系の特徴関数のうち前記選択するための手段により選択された特徴関数の値、前記入力文に含まれる依存性の特徴に関する特徴関数のうち、前記選択するための手段により選択された特徴関数の値、及び前記入力文に含まれる単語の各々に対し、当該単語に対して得られる、前記所定のオントロジー特徴関数のうち前記選択するための手段により選択された特徴関数の値に基づいて、当該単語に対して前記所定の意味タグセットに属する意味タグが付与される尤度を与える前記モデルを算出するための手段を含む、請求項１〜請求項５のいずれかに記載の意味タグ付け用モデル構築装置。
【請求項７】
予め各単語に所定の意味タグセットに属する意味タグのいずれかと、所定の文法タグセットに属する文法タグのいずれかとが付された所定の言語のコーパスと、コンピュータ読取り可能な前記言語のオントロジーとを用い、前記言語の単語に対する意味タグを自動的に付与するための統計的モデルを構築するためのモデル構築装置であって、
前記オントロジーは、前記言語の単語に関し、その意味に基づく階層的構造を与えるものであり、当該階層的構造は、階層的木構造を構成する複数のノードを含み、各ノードはそれぞれそのノードに属する単語の意味的カテゴリーに対応しており、
前記モデル構築装置は、
前記コーパス中の各文の各単語に関する所定のコンテキスト系の特徴関数を抽出するための第１の特徴関数抽出手段と、
前記オントロジーの各ノードに対応し、コーパス中の各文の各単語が当該ノードに属するか否かを示す値をとる所定のオントロジー特徴関数を抽出するための第２の特徴関数抽出手段と、
前記第１及び第２の特徴関数抽出手段により抽出された特徴関数の各々に関し、前記コーパス中の各文及び各単語に対して算出される値に関する統計に基づく所定の算出方法により算出される情報量を基準とし、情報量の大きな特徴関数のみを所定の基準にしたがって選択するための特徴関数選択手段と、
前記特徴関数選択手段により選択された特徴関数に関して前記コーパス中の各文及び各単語に対して得られた前記所定のコンテキスト系の特徴関数及び前記所定のオントロジー特徴関数に対して得られる特徴量の統計に基づき、前記所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる前記所定のコンテキスト系の特徴関数のうち前記特徴関数選択手段により選択された特徴関数の値、及び前記入力文に含まれる単語の各々に対し、当該単語に対して得られる、前記所定のオントロジー特徴関数のうち前記選択するための手段により選択された特徴関数の値に基づいて、当該単語に対して前記所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出するためのモデル算出手段とを含む、意味タグ付け用モデル構築装置。
【請求項８】
前記特徴関数選択手段により選択された特徴関数を特定する情報を記憶するための、コンピュータにより読取り可能な記憶手段をさらに含む、請求項１〜請求項７のいずれかに記載の意味タグ付け用モデル構築装置。
【請求項９】
コンピュータにより実行されると、当該コンピュータを、請求項１〜請求項８のいずれかに記載の意味タグ付け用モデル構築装置として機能させる、コンピュータプログラム。
【請求項１０】
所定言語の入力文の各単語に対し、所定のコンテキスト系特徴関数と、単語間の依存関係に基づく依存性特徴関数及び予め準備されたオントロジーに基づくオントロジー特徴関数のいずれかとの組合せ、又はその双方との組合せを含む、予め定められた複数個の特徴関数の各々の値を算出するための特徴関数算出手段と、
前記入力文の各単語に対し、前記特徴関数算出手段により算出された特徴関数の値と、予め準備された、前記複数個の特徴関数の値と所定の意味タグとの組合せが与えられると当該単語に当該意味タグが付与される確率を出力する統計的モデルを適用することにより、前記入力文の各単語に付与される意味タグの可能な組合せの各々の尤度を算出するための手段と、
算出される前記尤度が最も大きくなる組合せにしたがい、前記入力文の各単語に対して意味タグを付与するための手段とを含む、意味タグ付け装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は自然言語処理技術に関し、特に、自然言語文に意味タグを自動的に付するための意味タグ付け技術に関する。
【背景技術】
【０００２】
自然言語処理を行なうための基本的な技術として、文法タグ付け技術が存在する。この技術は、文中の各語に対し、その文中におけるその後の文法的役割を示すタグを自動的に付するものである。文法的役割として主要なものには、品詞（Ｐａｒｔ−Ｏｆ−Ｓｐｅｅｃｈ：ＰＯＳ）がある。
【０００３】
文法タグ付け技術と同様に重要視され、研究されている技術に、文中の各語の意味のあいまい性を解消する技術がある。この技術では、単語がどのような意味で使用されているかを明らかにする。
【０００４】
本発明はこの文法タグ付け技術と、あいまい性の解消技術との双方に関連している。すなわち本発明は、入力文中の各単語に対し、文法的なタグ付けを行なうと同時に、あいまい性を解消するための一つの情報として、意味タグ付けを自動的に行なう技術に関する。あいまい性解消の技術では、単語の意味が、その単語が持つ複数通りの意味のうちから一意に決定されるが、本発明が関連する意味タグ付けでは、そこまでの明確さは必要ではなく、より広い粒度での意味的な分類が要請されているだけである。そしてこの場合、ある単語に元々付随しているような複数個の意味のみに基づいて意味タグが決定されるのではなく、その単語と同種の意味を表していると思われる単語についても適用可能な意味的なラベルとしてはどのようなものがあるかを把握し、それらから適切な意味タグを決定することが望ましい。
【０００５】
文法タグ付け技術として、従来よく知られているものに、Ｎグラムに基づくものがある。この場合のＮグラムとは、タグ付けの対象となる単語を中心とする、Ｎ個の単語列のことをいう。Ｎグラムに基づくタグ付け技術は、基本的には統計的なものである。すなわち、単語の生起が、自分自身を含む直前のＮ個の単語のみに依存していると考え、予め準備したコーパス中でのそれらの生起の統計情報を算出する。その統計情報に基づき、特定のＮグラムが生じる確率を求め、タグ付け対象の単語列にそれを適用し、最も確率が高くなるタグ列を作用する。
【０００６】
Ｎグラムを用いた技術は、非常に単純であるにもかかわらず、自然言語処理において強力なツールであることが知られており、非常によく利用されている。
【０００７】
意味タグ付けも、基本的にはこのＮグラムに基づく方式の拡張と考えられる。しかし、Ｎグラムに基づくタグ付けだけでは意味タグ付けを十分な信頼性をもって行なうことができず、あいまい性の解消を行なうために必要な何らかの特徴を補助的に使用することが必要である。
【０００８】
この点について有効と思われる自然言語処理ツールに、非特許文献１に開示された最大エントロピー（Ｍａｘｉｍｕｍ  Ｅｎｔｒｏｐｙ：ＭＥ）理論に基づくタグ付けプログラムがある。ＭＥを用いるアプローチは、意味タグ付けのようなラベリング処理に好適である。なぜなら、ＭＥによれば、多くの特徴量を用いることができるにもかかわらず、それらの間の干渉を明示的にモデル化する必要がないためである。
【０００９】
一方、あいまい性の解消に関する技術としては非常に広い範囲のものがある。本発明に直接関連する可能性の有る従来技術として、非特許文献２から非特許文献５がある。
【００１０】
非特許文献２は、あいまい性の解消の対象となる単語の前後の局部的な文脈を用いている。さらに、そのような局部的な情報だけでなく、より広い範囲での文脈を用いるために、ＷｏｒｄＮｅｔ等のように、単語をその意味に基づいて階層的なカテゴリーに分類した言語的資源を用いることも、例えば非特許文献３に記載されたようによく行なわれている。
【００１１】
非特許文献４に開示されたあいまい性解消のためのＭＥシステムは、あいまい性解消の対象となっている単語の前後±３つの単語と、ＰＯＳタグと、レンマとからなる局部的な特徴の配列を用いている。
【００１２】
非特許文献５に開示された技術は、ＭＥによるシステムであって、対象となる単語の直前の冠詞、前後のＰＯＳ、前後の前置詞、前後の単語の文法的カテゴリという、簡単な特徴量を用いている。
【００１３】
これら従来技術で使用されている特徴量は、通常のＮグラム系の特徴量を用いたタグ付けプログラムとよく似ている。
【非特許文献１】Ａ．ラトナパルキ、「最大エントロピー品詞タガー」、自然言語処理における経験法会議予稿集、１９９６（A.  Ratnaparkhi,  1996.  A  maximum  entropy  part-of-speech  tagger.  In  Proceedings  of  the  Empirical  Methods  in  Natural  Language  Processing  Conference.）
【非特許文献２】Ｄ．ヤロウスキー、「コローケーションにつき一つの意味」、ＡＲＰＡ人間言語ワークショップ予稿集、１９９３（D.  Yarowski,  1993.  One  sense  per  collocation.  In  the  Proceedings  of  ARPA  Human  Language  Technology  Workshop.）
【非特許文献３】Ｇ．ラマクリシュナン及びＢ．プリトビラジ、「単語の意味のソフトなあいまい性解消」、グローバル・ワードネットに関する国際会議（ＧＷＣ  ０４）、ブルノ、チェコ共和国、２００４（G.  Ramakrishnan  and  B.  Prithviraj,  2004.  Soft  word  sense  disambiguation.  In  International  Conference  on  Global  Wordnet  (GWC  04),  Brno,  Czeck  Republic.）
【非特許文献４】Ａ．スアレス、「最大エントロピーによる単語意味の曖昧性解消」システム」、計算機言語に関する国際会議予稿集、２００２（A.  Suarez,  2002.  A  maximum  entropy-based  word  sense  disambiguation  system.  In  Proc.  International  Conference  on  Computational  Linguistics.）
【非特許文献５】Ａ．Ｋ．ラムジリ、Ｏ．Ｅｌ  デメルダシュ、及びＬ．コサイム、「単語意味のあいまい性解消のための簡単な特徴量」、テキストの意味解析のためのシステム評価に関する第３回国際ワークショップ（Ｓｅｎｓｅｖａｌ−３）−ＡＣＬ２００４予稿集、２００４、バルセロナ、スペイン（A.K.  Lamjiri,  O.El  Demerdash,  and  L.  Kosseim,  2004.  Simple  features  for  statistical  word  sense  disambiguation.  In  Proc.  ACL  2004  -  Third  International  Workshop  on  the  Evaluation  of  Systems  for  the  Semantic  Analysis  of  Text  (Senseval-3),  Barcelona,  Spain.）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
一方、あいまい性解消の技術にＰＯＳタグ情報を使用したものとして、非特許文献４に記載されたものがある。しかし、一連の流れとして与えられる文の各単語に対し、ＰＯＳタグを付与するのと同時に意味タグ付けをも行なう、という技術について記載した文献は非常に少ない。
【００１５】
それ故に本発明の目的は、より精度高く自動的に単語に対する意味タグ付けを行なうためのモデルを構築可能な意味タグ付け用モデル構築装置を提供することである。
【００１６】
本発明のさらに他の目的は、より精度高く自動的に単語に対する意味タグ付けを行なうためのモデルを、従来より短い時間で構築可能な意味タグ付け用モデル構築装置を提供することである。
【００１７】
本発明の追加の目的は、より精度高く自動的に単語に対する意味タグ付けを行なうためのモデルであって、特に学習用のコーパスに存在しない単語についても高い精度で意味タグ付けを行なうことが可能な意味タグ付け用モデル構築装置を提供することである。
【課題を解決するための手段】
【００１８】
本発明の第１の局面に係る意味タグ付け用モデル構築装置は、予め各単語に所定の意味タグセットに属する意味タグのいずれかと、所定の文法タグセットに属する文法タグのいずれかとが付された所定の言語のコーパスを用い、上記言語の単語に対する意味タグを自動的に付与するための統計的モデルを構築するための、意味タグ付け用モデル構築装置であって、コーパス中の各文の各単語に関する所定のコンテキスト系の特徴関数を抽出するための第１の特徴関数抽出手段と、コーパス中の各文について、各文に含まれる依存性の解析を行ない、依存性の特徴に関する特徴関数を抽出するための第２の特徴関数抽出手段と、第１及び第２の特徴関数抽出手段により抽出された特徴関数の各々に関し、コーパス中の各文及び各単語に対して算出される値に関する統計に基づく所定の算出方法により算出される情報量を基準とし、情報量の大きな特徴関数のみを所定の基準にしたがって選択するための特徴関数選択手段と、特徴関数選択手段により選択された特徴関数に関してコーパス中の各文及び各単語に対して得られた所定のコンテキスト系の特徴関数及び依存性の特徴に関する特徴関数に対して得られる特徴量の統計に基づき、所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる所定のコンテキスト系の特徴関数のうち特徴関数選択手段により選択された特徴関数の値、及び入力文に含まれる依存性の特徴に関する特徴関数のうち特徴関数選択手段により選択された特徴関数の値に基づいて、当該単語に対して所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出するためのモデル算出手段とを含む。
【００１９】
第１の特徴関数抽出手段は、コーパスからコンテキスト系の特徴関数を抽出する。第２の特徴関数抽出手段は、コーパスから依存性の特徴に関する特徴関数を抽出する。特徴関数選択手段は、コーパス中の各文及び各単語に対し、これらの特徴関数の値を算出し、その統計に基づき、所定の算出方法により算出される情報量を基準として、情報量の大きな特徴関数のみを選択する。選択の基準としては、情報量の大きなものから所定個数だけ選択したり、情報量の大きなものから所定の割合の個数だけ選択したりすることが考えられる。モデル算出手段は、特徴関数選択手段により選択された特徴関数に関してコーパス中の各文及び各単語に対して得られた所定のコンテキスト系の特徴関数及び依存性の特徴に関する特徴関数に対して特徴量を算出する。さらにその統計に基づき、入力文に含まれる単語の各々に対して得られる特徴関数のうち特徴関数選択手段により選択された特徴関数の値に基づいて、当該単語に対して所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出する。
【００２０】
このように、コンテキスト系の特徴関数だけでなく、依存性の特徴に関する特徴関数を用いることにより、得られるモデルの精度が向上することが確かめられた。また、特徴関数選択手段により特徴関数の一部を選択し、それら特徴関数のみを使用することにより、モデル構築の際の計算量を削減することができ、モデル構築の時間を少なくできる。またモデル構築が不可能な場合にもこのように特徴関数を絞ることでモデル構築が可能になる。
【００２１】
好ましくは、所定のコンテキスト系の特徴関数は、対象となる単語の前後の所定個数の単語からなる単語コンテキストの特徴関数と、対象となる単語の前の所定個数の意味タグからなる意味タグのコンテキストの特徴関数と、対象となる単語の前後の所定個数の文法タグからなる文法タグコンテキストの特徴関数とを含み、第１の特徴関数抽出手段は、コーパス中の各文の各単語に関し、当該単語に関する単語コンテキストの特徴関数と、意味タグのコンテキストの特徴関数と、文法タグコンテキストの特徴関数とをそれぞれ抽出するための手段を含む。
【００２２】
実験では、このように単語コンテキストと、意味タグのコンテキストと、文法タグコンテキストとを用いて得られたモデルでは、意味タグ以外のコンテキストについては、対象となる単語の前後のコンテキストまで考慮するので、入力文の単語に対し自動的な意味タグ付けを行なったところ、良好な結果が得られた。一方、意味タグについてはその前の単語に付された意味タグしか使用しないので、このモデルを用いて入力文中の単語について、自動的に、単語が入力されるたびに意味タグを付与することができる。
【００２３】
好ましくは、第２の特徴関数抽出手段は、コーパス中の各文について依存性解析を行ない、単語間の依存関係を出力するための依存性解析手段と、依存性解析手段により得られた依存関係の各々について、当該依存関係を構成する第１の単語及び第２の単語と、当該依存関係の分類を示す依存性ラベルとの組からなる、依存性に関する第１の特徴関数を抽出するための手段と、依存性解析手段により得られた依存関係の各々について、当該依存関係を構成する第２の単語及び第１の単語と、当該依存関係を逆転させた関係を示す分類を示す依存性ラベルとの組からなる、依存性に関する第２の特徴関数を抽出するための手段とを含む。
【００２４】
文中のある依存関係については、一方の単語から見た関係と、他方の単語から見た関係との二通りの依存関係を表すと見ることができる。一つの依存関係からこのように二つの依存関係に関する特徴関数を抽出することにより、モデル構築の際に利用可能な特徴関数の候補の数が増加し、得られたモデルによる意味タグ付けの精度を向上させることができる。
【００２５】
好ましくは、特徴関数選択手段は、第１及び第２の特徴関数抽出手段により抽出された特徴関数の各々に関し、コーパス中の各文及び各単語に対して算出される値に関する統計に基づく相互情報量を算出するための相互情報量算出手段と、相互情報量算出手段により算出された情報量の大きな特徴関数のみを、所定の基準にしたがって選択するための手段とを含む。
【００２６】
相互情報量の大きな特徴関数のみを、モデル構築の際に使用する。利用可能な情報量を大きく保ったまま、モデル構築の際の計算量を削減することができ、モデル構築の時間を削減できる。相互情報量の小さな特徴関数のみを選択する場合と比較して、モデル構築の時間が同程度ならばより精度の高い意味タグ付けが可能なモデルを構築できる。
【００２７】
好ましくは、モデル算出手段は、特徴関数選択手段により選択された特徴関数に関し、コーパス中の各文及び各単語に対して特徴量を算出するための特徴量算出手段と、特徴量算出手段により算出された特徴量の統計に基づき、所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる所定のコンテキスト系の特徴関数のうち特徴関数選択手段により選択された特徴関数、及び入力文に含まれる依存性の特徴に関する特徴関数のうち特徴関数選択手段により選択された特徴関数に基づいて、当該単語に対して所定の意味タグセットに属する意味タグが付与される尤度を与える、最大エントロピー法に基づくモデルを算出するための手段とを含む。
【００２８】
好ましくは、モデル構築装置はさらに、コンピュータ読取り可能な言語のオントロジーとともに用いられ、当該オントロジーは、言語の単語に関し、その意味に基づく階層的構造を与えるものであり、当該階層的構造は、階層的木構造を構成する複数のノードを含み、各ノードはそれぞれそのノードに属する単語の意味的カテゴリーに対応しており、モデル構築装置はさらに、オントロジーの各ノードに対応し、コーパス中の各文の各単語が当該ノードに属するか否かを示す値をとる所定のオントロジー特徴関数を抽出するための第３の特徴関数抽出手段を含み、特徴関数選択手段は、第１、第２、及び第３の特徴関数抽出手段により抽出された特徴関数の各々に関し、コーパス中の各文及び各単語に対して算出される値に関する統計に基づく所定の算出方法により算出される情報量を基準とし、情報量の大きな特徴関数のみを所定の基準にしたがって選択するための手段を含み、モデル算出手段は、選択するための手段により選択された特徴関数に関してコーパス中の各文及び各単語に対して得られた所定のコンテキスト系の特徴関数、依存性の特徴に関する特徴関数、及び所定のオントロジー特徴関数に対して得られる特徴量の統計を算出するための統計量算出手段と、統計量算出手段により算出された統計量に基づき、所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる、所定のコンテキスト系の特徴関数のうち選択するための手段により選択された特徴関数の値、入力文に含まれる依存性の特徴に関する特徴関数のうち、選択するための手段により選択された特徴関数の値、及び入力文に含まれる単語の各々に対し、当該単語に対して得られる、所定のオントロジー特徴関数のうち選択するための手段により選択された特徴関数の値に基づいて、当該単語に対して所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出するための手段を含む。
【００２９】
コンテキスト系の特徴関数及び依存性の特徴に関する特徴関数だけでなく、オントロジー特徴関数を用いることにより、得られるモデルの精度が向上することが確かめられた。特に、コーパス内に存在しない単語についての意味タグ付けの精度が向上することが確かめられた。また、特徴関数選択手段により特徴関数の一部を選択し、それら特徴関数のみを使用することにより、モデル構築の際の計算量を削減することができ、モデル構築の時間を少なくできる。またモデル構築が不可能な場合にもこのように特徴関数を絞ることでモデル構築が可能になる。
【００３０】
本発明の第２の局面に係る意味タグ付け用モデル構築装置は、予め各単語に所定の意味タグセットに属する意味タグのいずれかと、所定の文法タグセットに属する文法タグのいずれかとが付された所定の言語のコーパスと、コンピュータ読取り可能な言語のオントロジーとを用い、上記言語の単語に対する意味タグを自動的に付与するための統計的モデルを構築するためのモデル構築装置であって、オントロジーは、言語の単語に関し、その意味に基づく階層的構造を与えるものであり、当該階層的構造は、階層的木構造を構成する複数のノードを含み、各ノードはそれぞれそのノードに属する単語の意味的カテゴリーに対応しており、モデル構築装置は、コーパス中の各文の各単語に関する所定のコンテキスト系の特徴関数を抽出するための第１の特徴関数抽出手段と、オントロジーの各ノードに対応し、コーパス中の各文の各単語が当該ノードに属するか否かを示す値をとる所定のオントロジー特徴関数を抽出するための第２の特徴関数抽出手段と、第１及び第２の特徴関数抽出手段により抽出された特徴関数の各々に関し、コーパス中の各文及び各単語に対して算出される値に関する統計に基づく所定の算出方法により算出される情報量を基準とし、情報量の大きな特徴関数のみを所定の基準にしたがって選択するための特徴関数選択手段と、特徴関数選択手段により選択された特徴関数に関してコーパス中の各文及び各単語に対して得られた所定のコンテキスト系の特徴関数及び所定のオントロジー特徴関数に対して得られる特徴量の統計に基づき、所定の言語の入力文に含まれる単語の各々に対し、当該単語に対して得られる所定のコンテキスト系の特徴関数のうち特徴関数選択手段により選択された特徴関数の値、及び入力文に含まれる単語の各々に対し、当該単語に対して得られる、所定のオントロジー特徴関数のうち選択するための手段により選択された特徴関数の値に基づいて、当該単語に対して所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出するためのモデル算出手段とを含む。
【００３１】
第１の特徴関数抽出手段は、コーパスからコンテキスト系の特徴関数を抽出する。第２の特徴関数抽出手段は、オントロジーからオントロジー特徴関数を抽出する。特徴関数選択手段は、コーパス中の各文及び各単語に対し、これらの特徴関数の値を算出し、その統計に基づき、所定の算出方法により算出される情報量を基準として、情報量の大きな特徴関数のみを選択する。選択の基準としては、情報量の大きなものから所定個数だけ選択したり、情報量の大きなものから所定の割合の個数だけ選択したりすることが考えられる。モデル算出手段は、特徴関数選択手段により選択された特徴関数に関してコーパス中の各文及び各単語に対して得られた所定のコンテキスト系の特徴関数及びオントロジー特徴関数に対して特徴量を算出する。さらにその統計に基づき、入力文に含まれる単語の各々に対して得られる特徴関数のうち特徴関数選択手段により選択された特徴関数の値に基づいて、当該単語に対して所定の意味タグセットに属する意味タグが付与される尤度を与えるモデルを算出する。
【００３２】
このように、コンテキスト系の特徴関数だけでなく、オントロジー特徴関数を用いることにより、得られるモデルの精度が向上することが確かめられた。特に、コーパス内に存在しない単語についての意味タグ付けの精度が向上することが確かめられた。特徴関数選択手段により特徴関数の一部を選択し、それら特徴関数のみを使用することにより、モデル構築の際の計算量を削減することができることは第１の局面に係るモデル構築装置と同様であり、モデル構築の時間を少なくできる。またモデル構築が不可能な場合にもこのように特徴関数を絞ることでモデル構築が可能になる。
【００３３】
好ましくは、意味タグ付け用モデル構築装置は、特徴関数選択手段により選択された特徴関数を特定する情報を記憶するための、コンピュータにより読取り可能な記憶手段をさらに含む。
【００３４】
本発明の第３の局面に係るコンピュータプログラムは、コンピュータにより実行されると、当該コンピュータを、上記したいずれかの意味タグ付け用モデル構築装置として機能させるものである。
【００３５】
本発明の第４の局面に係る意味タグ付け装置は、所定言語の入力文の各単語に対し、所定のコンテキスト系特徴関数と、単語間の依存関係に基づく依存性特徴関数及び予め準備されたオントロジーに基づくオントロジー特徴関数のいずれかとの組合せ、又はその双方との組合せを含む、予め定められた複数個の特徴関数の各々の値を算出するための特徴関数算出手段と、入力文の各単語に対し、特徴関数算出手段により算出された特徴関数の値と、予め準備された、複数個の特徴関数の値と所定の意味タグとの組合せが与えられると当該単語に当該意味タグが付与される確率を出力する統計的モデルを適用することにより、入力文の各単語に付与される意味タグの可能な組合せの各々の尤度を算出するための手段と、算出される尤度が最も大きくなる組合せにしたがい、入力文の各単語に対して意味タグを付与するための手段とを含む。
【発明を実施するための最良の形態】
【００３６】
本発明の一実施の形態について詳細に説明する。本実施の形態では、意味タグ付けを最大エントロピー法によって行なう。最初に本実施の形態で採用している最大エントロピーによるモデリングについて説明し、さらに、意味タグ付けの概念と、以下で説明する実施の形態で採用している意味タグ付けの方法の概要とについて説明する。なお、以下の説明において、同一の部品には同一の参照番号を付してある。それらの名称及び機能も同一である。したがって、それらについての詳細な説明は繰返さない。
【００３７】
本実施の形態で使用する最大エントロピー法によるモデル（ＭＥモデル）は以下の形式をしている。
【００３８】
【数１】
2008021139.tif 000003
ただし、ｔは確率を算出する対象となっているタグを示し、ｃはｔの文脈（コンテキスト）を示し、ガンマは以下の式を満足させるための正規化係数である。
【００３９】
【数２】
2008021139.tif 000004
ただしＫはモデル中の特徴の数であり、Ｌは実施の形態で使用する意味タグセット中のタグの数である。
【００４０】
さらに、αｋは特徴ｆｋの重みであり、ｆｋは特徴関数でかつその値はｆｋ＝｛０，１｝であり、ｐ０はデフォルトのタグ付けモデルである。本実施の形態では、デフォルトのタグ付けモデルとして一様分布を使用する。これは、モデル中の全ての情報が最大エントロピーの制約を用いて特定されているためである。これらの値の中で、コーパスを用いた最大エントロピー法によるモデルとして算出されるのは、結局、特徴ｆｋの重みαｋの値である。
【００４１】
図１に、意味タグ付けがされた文の例（文２０及び２２）を示す。図１に示す文２０は「Ｐｌｅａｓｅ  ｍｅｎｔｉｏｎ  ｔｈｉｓ  ｃｏｕｐｏｎ  ｗｈｅｎ  ｏｒｄｅｒｉｎｇ」という文に含まれる各単語に対し、意味タグ３０，３２，３４，３６，３８，４０を付した例を示す。例えば「ｃｏｕｐｏｎ」に付されている意味タグ「ＮＮ１ＤＯＣＵＭＥＮＴ」の「ＮＮ」は普通名詞であることを、「１」は単数であることを、「ＤＯＣＵＭＥＮＴ」はこの単語が文書という意味的カテゴリに属することを、それぞれ示している。文２２の各単語にも、同様に意味タグ５０，５２，５４，５６及び５８が付されている。
【００４２】
本発明では、このような意味タグ付けを自動的に行なうために、通常のＮグラム系の特徴だけでなく、句構造から求められる依存性の特徴、及びＷｏｒｄＮｅｔに代表されるオントロジー（シソーラスと同様、単語群をその意味に基づき複数の階層的なカテゴリーに分割したもの）による特徴という、複数種類の特徴を用いる。さらに、Ｎグラム系の特徴として、対象となる単語の前の単語又は品詞だけでなく、後の単語又は品詞を用いる。これらは、単語の前後の情報を用いるため、以下「コンテキスト系の特徴量」と呼ぶ。
【００４３】
図２に、本実施の形態で採用しているコンテキスト系の特徴量１００の構成を示す。図２を参照して、単語８０を中心とし、その前に二つの単語８２及び８４、その後に二つの単語８６及び８８が連続しているような単語列を考え、単語８０が意味タグ付けの対象であるものとする。各単語８０〜８８の単語をいずれも便宜的に単語ｗと表す。各単語には、その品詞を示すｐｏｓタグが既に付されているものとする。一方、意味タグｔについては、処理対象の単語８０及びこの単語の後の単語８６及び８８には付与されておらず、単語８０の前の単語８２及び８４には付与されているものとする。
【００４４】
本実施の形態では、単語８０のタグｔを定めるためのコンテキスト系特徴量として、単語８０自身の単語（これをｗ０とする。）と、その前後二つずつの計４つの単語（これらをｗ−１、ｗ−２、ｗ＋１、及びｗ＋２とする。）とからなる、合計五つの単語からなる単語コンテキストと、それらのｐｏｓタグｐｏｓ０、ｐｏｓ±１及びｐｏｓ±２からなる品詞コンテキストと、直前の二つの単語の意味タグｔ−１及びｔ−２からなる意味コンテキストと、処理対象の単語ｗ０の最初の１文字、２文字、及び３文字をそれぞれ示すｐｒｅｆ１（ｗ０）〜ｐｒｅｆ３（ｗ０）と、最後の１文字、２文字、及び３文字をそれぞれ示すｓｕｆｆ１（ｗ０），ｓｕｆｆ２（ｗ０），ｓｕｆｆ３（ｗ０）とを含む。すなわち、コンテキスト系の特徴量として、本実施の形態では１８種類の特徴量を使用する。
【００４５】
図３に、これらのコンテキスト系特徴量の形式を示す。図３を参照して、これら特徴量はいずれも特徴ベクトルとして表される。例えば単語に関する特徴量ｗ０、ｗ−１、ｗ−２、ｗ＋１、及びｗ＋２はいずれも同じ形式の特徴ベクトルで表される。この特徴ベクトルは、使用するコーパスに含まれる語彙数と同じだけの要素数を持つ。各要素はいずれも一つの単語に対応している。各要素の値は０又は１であり、着目している単語に対応した要素の値を「１」で、それ以外の要素の値を「０」で、それぞれ表す。コーパス中に出現する単語が例えば２００００種類あれば、この特徴量ベクトルの要素数は２００００であり、そのうち一つの要素の値が「１」、他の要素の値は「０」である。このように、ある単語のコンテキスト等の特定の情報によって値が０か１かのいずれかを取る関数を以下「特徴関数」と呼ぶ。すなわち、コーパス中に出現する一つ一つの単語に対し、一つの特徴関数が定められ、しかもそれらがｗ０、ｗ−１、ｗ−２、ｗ＋１、及びｗ＋２の全てに対して定められる。
【００４６】
意味タグｔ、文法タグｐｏｓの場合も同様に特徴関数が定められる。すなわち、これらに対しては、意味タグセット中のタグ数、及び文法タグセット中のタグ数に応じた数の特徴関数が定められる。ただしこれらタグの場合には、それらの種類がコーパス中の語彙数と比較して少ないため、特徴ベクトルの要素数もそれに応じて少なくなる。
【００４７】
ｐｒｅｆ１〜ｐｒｅｆ３，ｓｕｆｆ１〜ｓｕｆｆ３については、それぞれ１文字、２文字からなる文字列、及び３文字からなる文字列のバリエーションに応じた数の要素数を持つ特徴ベクトルにより表される。例えば英語の場合、アルファベットが２６文字とすると、ｐｒｅｆ１に対応する特徴ベクトルの要素数は２６、ｐｒｅｆ２に対応する特徴量ベクトルの要素数は２６２、ｐｒｅｆ３に対応する特徴量ベクトルの要素数は２６３となる。すなわち、コーパス中に出現する単語の一つ一つに対し、ほぼ２６＋２６２＋２６３と等しい数だけの特徴関数が定められる。
【００４８】
図４を参照して、句構造から得られる依存性の特徴について説明する。図４（Ａ）の文１４０と図４（Ｂ）の文１８０とは、いずれも「ｄｏｇ」という単語を含む。これらは同じ単語ではあるが、図４（Ａ）の文１４０の場合には、意味タグ１７０により示されるように、動物の犬を表し、図４（Ｂ）の文１８０の場合には意味タグ２２０により表されるように、「ホットドッグ」という食べ物を表す。このような意味的な相違は、文中におけるこれら単語の出現位置と、それら単語を含む句の構造とに依存して生じてくる。このような特徴を依存性による特徴と呼ぶ。学習用のコーパス中にはこうした意味タグ１７０又は２２０のような意味タグが付されている。本実施の形態の目的は、入力された意味タグの付されていない文の各単語に、こうした意味タグを自動的に付すために使用する統計的なモデルをコーパス等から作成する、ということである。
【００４９】
本実施の形態では、ある単語の特徴として、その単語を含む文が、予めコーパス中から抽出された依存関係のうちのどれと一致する依存関係を持っているかを使用する。そのために、コーパス中から以下のようにして特徴を抽出する。
【００５０】
図４（Ａ）を参照して、文１４０中の単語１５０「ｄｏｇ」は、単語１５２「ａｔｅ」の主語である。また、単語１５２「ａｔｅ」の目的語は単語１５４「ｃｏｏｋｉｅ」である。文１８０でも同様で、単語２００「ｍａｎ」は単語２０２「ａｔｅ」の主語であり、単語２０２「ａｔｅ」の目的語は単語２０４「ｄｏｇ」である。本実施の形態では、予めコーパス中の全ての文からこのような関係を抽出し、一つ一つを特徴とする。これらの特徴は、依存関係にある二つの単語と、その依存関係を表す記号（これを「依存性ラベル」と呼ぶ。）との組み合わせにより表される。
【００５１】
例えば、主語−動詞という依存関係は依存性ラベル「Ｓ」１６０及び２１０で表し、「動詞−目的語」という依存関係は依存性ラベル「Ｏ」１６２及び２１２で表すものとする。すると、図４（Ａ）に示す文１４０からは、「ｄｏｇ，ａｔｅ，Ｓ」という特徴と、「ａｔｅ，ｃｏｏｋｉｅ，Ｏ」という特徴とが抽出される。図４（Ｂ）に示す文１８０からは、「ｍａｎ，ａｔｅ，Ｓ」という特徴と、「ａｔｅ，ｄｏｇ，Ｏ」という特徴とが抽出される。コーパスに含まれる全ての文についてこの処理を行ない、図４（Ｃ）に示されるように、抽出された全ての依存関係２５０，２５２，２５４，２５６等を依存関係の集合２４０として記憶する。なお、上記した依存関係の各々に対し、それらの関係を逆にした関係を考えることもできる。すなわち、どの単語を主とみるかにより、依存関係は二通りに解釈できる。そこで、本実施の形態では、各依存関係ごとに、それら二通りの特徴を考える。
【００５２】
入力文中のある単語について、これらの特徴に対応する特徴量を定めるためには、入力文に対し文法的解析（これをここでは依存性解析と呼ぶ。）を行ない、依存関係の集合２４０に含まれる依存関係がある否かを調べる。あればその特徴に対する値を１、なければその特徴に対する値を０とする。これがこの場合の特徴関数である。すなわち、本実施の形態では、コーパスから抽出された依存関係の２倍の数だけの特徴関数が定められる。
【００５３】
こうして全ての依存関係に対してその値を調べ、その値を一定の順序によって配列することにより、特徴ベクトル２６０、２６２等の値が定められる。この特徴ベクトル２６０、２６２の各要素は、コーパスから抽出された特定の依存関係に対応している。図４（Ｃ）に示す特徴ベクトル２６０は図４（Ａ）に示す文１４０に対し、依存関係の集合２４０に基づいて得られた、依存関係の特徴関数の値のみからなる特徴ベクトルを示す。特徴ベクトル２６２は、同様にして図４（Ｂ）に示す文１８０に対し依存関係の集合２４０を適用して得られた特徴ベクトルである。
【００５４】
図５に、入力文２８０に対し、依存関係の集合２４０を適用して特徴ベクトル２８６を求めるプロセスを示す。依存性パーズプロセス２８２により、入力文２８０中に含まれる全ての依存関係を抽出する。依存関係の集合２４０に含まれる全ての依存関係について、依存性パーズプロセス２８２により得られた依存関係と一致するか否かを依存性特徴ベクトル作成プロセス２８４により調べる。一致していれば、特徴ベクトル２８６の、その依存関係に対応する要素の値を「１」、それ以外の場合にはその要素の値を「０」とする。こうして、入力文２８０から依存関係の集合２４０に基づく特徴ベクトル２８６が得られる。
【００５５】
次に、オントロジーによる特徴量の算出方法について説明する。本実施の形態では、オントロジーとしてＷｏｒｄＮｅｔによる単語の階層的分類を使用する。ＷｏｒｄＮｅｔによる単語の階層的分類の例を図６に示す。図６に示す分類は、単語３００「ａｐｐｌｅ」についてＷｏｒｄＮｅｔから得られる階層的カテゴリーを示している。これら階層的カテゴリーは、図示していないが木構造を有している。この木構造の各ノードには一意のカテゴリー名が与えられており、そのノードには、そのノードより下のノードに属する全ての単語が属する。
【００５６】
図６を参照して、単語３００「ａｐｐｌｅ」は、二つの意味の階層構造に属している。第１の意味の階層構造３２０と第２の意味の階層構造３２２とである。これらはそれぞれ、ＷｏｒｄＮｅｔの階層構造のトップレベルカテゴリ３１０に属するＯｂｊｅｃｔカテゴリ３４０及びＰｌａｎｔカテゴリ３４２に含まれる。
【００５７】
Ｏｂｊｅｃｔカテゴリ３４０から単語３００「ａｐｐｌｅ」までには、複数のカテゴリ３５０〜３６０のノードが存在している。これらノードは、下位ノードに属す単語は、上位ノードにも属している、という関係にある。同様に、Ｐｌａｎｔカテゴリ３４２から単語３００「ａｐｐｌｅ」までには、複数のカテゴリ３８０〜３９０が存在している。
【００５８】
単語３００「ａｐｐｌｅ」の直前のノード３６０にはＰｅａｒ（３７０）及びＧｒａｐｅ（３７２）などの他の果物を示す単語が属しており、同じく単語３００「ａｐｐｌｅ」の直前のノード３９０にはＷｉｌｄ  Ａｐｐｌｅ（４００）及びＣｒａｂ  Ａｐｐｌｅ（４０２）などの他の種類のりんごを示す単語が属している。
【００５９】
本実施の形態では、上記した意味的階層構造に出現する全てのノードを所定の順序で配列した、図７に示すようなオントロジーカテゴリーリスト４２０を作成し、ある単語が与えられたときに、オントロジーカテゴリーリスト４２０の各ノードについて、その単語が直接的又は間接的に属しているノードについてはその値を１、それ以外のノードについてはその値を０とするような特徴量を算出する。すなわち、オントロジーに含まれる各ノードにつき、一つの特徴関数が定義される。オントロジーによる特徴関数の数は、オントロジー中に含まれる意味的階層構造中のノード数と同じだけ存在する。
【００６０】
それらの値を図７の右側に示すように、オントロジーカテゴリーリスト４２０と同じ一定の順序で並べることにより、処理対象の単語に対する、オントロジー特徴ベクトル４２２が得られる。図７には、単語３００「ａｐｐｌｅ」に対し、オントロジーカテゴリーリスト４２０を適用した結果得られた特徴ベクトル４２２を示してある。
【００６１】
なお、本実施の形態ではＷｏｒｄＮｅｔをオントロジーとして使用したが、コーパスから自動的なクラスタリングにより作成した２分木をオントロジーとして使用してもよい。
【００６２】
以上述べた各特徴量ベクトルの要素数はいずれも非常に大きい。そのため、よほど性能のよいコンピュータでなければこの計算に要する時間は非常に大きくなり、そもそも計算ができるかどうかさえ怪しくなる。
【００６３】
本実施の形態では、以上のようにコンテキスト系の特徴関数、依存関係による特徴関数、及びオントロジーによる依存関数をいずれも使用する。これら特徴関数の数は、以上の説明から明らかなように極めて大きくなる。このように多数の特徴ベクトルの要素の中から、他と比較して、より多くの情報量を含むような特徴のみを抽出し、入力文に対する処理に適用する。そのために、相互情報量（ＭＩ）を使用して、情報量の多い、有用性の高い特徴属性のみを選択する。
【００６４】
ある特徴属性の有用性（Ｉ（ｆ，ｔ））は以下の式にしたがい算出される。
【００６５】
【数３】
2008021139.tif 000005
ただし、Ｔは使用タグの集合を示し、ｔはタグセットＴ中に含まれる各タグを示す。ｆ∈｛０，１｝は、各特徴属性の値を示す。ｐ（ｔ）はタグｔが生ずる事前確率を示し、ｐ（ｆ）はタグの値がｆとなる事前確率を示し、ｐ（ｆ，ｔ）はタグがｔで、その値がｆとなる同時確率を示す。
【００６６】
このように相互情報量を使用すると、特徴間の干渉について考慮していないことになる。そのため、ある特徴について、実際には他の特徴と同じ情報を異なる形で示しているに過ぎないにもかかわらず、情報量が多いと判断されることがある。それにもかかわらず、実際にはこの相互情報量という概念は有用である。相互情報量の少ないものを排除することにより、モデルに対して利益をもたらさないような特徴を排除することができ、その結果、学習の速度を上げることができる。ときには、相互情報量によって特徴の数を削減しなければそもそも学習そのものが不可能な場合さえある。したがって、このように相互特徴量を用いて、有用な特徴のみを使用することは、現実的な意味の有ることである。
【００６７】
＜構成＞
以下、本発明の一実施の形態に係る意味タグ付けシステムの構成について説明する。図８に、この実施の形態に係る意味タグ付けシステム４４０の全体構成をブロック図形式で示す。図８を参照して、意味タグ付けシステム４４０は、人手により予め意味タグ付けがされた文からなる、機械可読な英語の意味タグ付けコーパス４５０と、予め機械可読な形式で準備された、ＷｏｒｄＮｅｔにより実現された英語に関するオントロジー４５２と、意味タグ付けコーパス４５０及びオントロジー４５２を用い、前述した通り、多数の特徴属性の中から相互情報量の大きな特徴属性を抽出し、それらを用いて意味タグ付け用のモデルを算出するためのモデル作成プロセス４５４と、モデル作成プロセス４５４により作成されたモデルを記憶するためのモデル記憶部４５６と、モデル作成プロセス４５４によるモデル作成時に抽出される特徴関数を記述した特徴関数の集合（特徴セット）を記憶する特徴セット記憶部４５８とを含む。
【００６８】
意味タグ付けシステム４４０はさらに、入力文４６２を受け、モデル記憶部４５６に記憶されたモデル、特徴セット記憶部４５８に記憶された特徴セット、及びオントロジー４５２を用い、入力文４６２中の各単語に対し意味タグ付けを行なって意味タグ付出力文４６４を出力するための意味タグ付けプロセス４６０とを含む。
【００６９】
モデル作成プロセス４５４と意味タグ付けプロセス４６０とは、別システムとして作成されてもよい。モデル、特徴セット、及びオントロジー４５２があれば意味タグ付けプロセス４６０は独立で動作できる。ただし意味タグ付けプロセス４６０が使用する意味タグセットはモデル作成プロセス４５４で使用した意味タグセットと同一である必要がある。
【００７０】
図９に、モデル作成プロセス４５４のより詳細なブロック図を示す。図９を参照して、モデル作成プロセス４５４は、予め準備された意味タグ付けコーパス４５０に対し文法タグ付け処理を行なうための文法タグ付けプロセス４８０と、文法タグ付けプロセス４８０により文法タグ付けがされたコーパスを記憶するための意味タグ・文法タグ付コーパス記憶部４８２と、意味タグ・文法タグ付コーパス記憶部４８２に含まれる各文に対し依存性解析を行ない、依存関係を抽出し、（第１の単語、第２の単語、依存関係のラベル）という形式の依存性特徴関数を各文に付して出力するための依存性パーザプロセス４８４と、依存性パーザプロセス４８４により出力される、意味タグ、文法タグ、及び依存性特徴関数が付された学習用コーパスを記憶するための学習用コーパス記憶部４８６とを含む。
【００７１】
モデル作成プロセス４５４はさらに、学習用コーパス記憶部４８６に記憶された学習用コーパスの各単語について、前述したコンテキスト系特徴関数及び依存性特徴関数を抽出するためのコンテキスト系特徴及び依存性特徴抽出部４８８と、オントロジー４５２から、オントロジー特徴関数を抽出するためのオントロジー特徴抽出プロセス４９０と、コンテキスト系特徴及び依存性特徴抽出プロセス４８８により学習用コーパスから抽出された特徴関数及びオントロジー特徴抽出プロセス４９０によりオントロジー４５２から抽出された特徴関数を記憶するための特徴記憶部４９２とを含む。
【００７２】
モデル作成プロセス４５４はさらに、特徴記憶部４９２に記憶された特徴関数と、学習用コーパス記憶部４８６中の各文及び各単語を用いた統計的な処理とにより、既に述べた相互情報量を各特徴関数に関して算出し、相互情報量の大きなものから所定数の特徴関数のみを選択して、特徴セットとして出力するための特徴選択プロセス４９４と、特徴選択プロセス４９４により出力された特徴セットを記憶するための特徴セット記憶部４９６と、特徴選択プロセス４９４により出力された特徴セットに含まれる特徴関数を用い、学習用コーパス記憶部４８６に含まれる各文及び各単語を用いて、前述した最大エントロピー法によるモデルを算出しモデル記憶部４５６に出力し記憶させるための学習プロセス４９８とを含む。特徴セット記憶部４９６は、そのまま図８に示す特徴セット記憶部４５８として意味タグ付けプロセス４６０に渡される。
【００７３】
図１０に、意味タグ付けプロセス４６０のより詳細な構成をブロック図形式で示す。図１０を参照して、意味タグ付けプロセス４６０は、入力文４６２に対して図９に示す文法タグ付けプロセス４８０と同様の処理により文法タグ付けを行なうための文法タグ付けプロセス５１０と、文法タグ付けプロセス５１０により文法タグ付けがされた入力文に対し、図９に示す依存性パーザプロセス４８４と同様の依存性解析を行ない、解析結果を入力文に付して出力するための依存性パーザプロセス５１２とを含む。
【００７４】
意味タグ付けプロセス４６０はさらに、依存性パーザプロセス５１２により出力される、依存性解析がされた入力文から、特徴セット記憶部４９６に記憶された依存性の特徴セットに含まれる特徴関数の値を算出するための依存性特徴抽出プロセス５１４と、文法タグ付けプロセス５１０が出力する文法タグ付けがされた入力文から、特徴セット記憶部４９６に記憶された特徴セットのうちのコンテキスト系の特徴関数の値を算出するためのコンテキスト系特徴抽出プロセス５１６と、入力文４６２に対し、オントロジー４５２を参照し、特徴セット記憶部４９６に含まれるオントロジー特徴に関するオントロジー特徴関数の値を算出し出力するためのオントロジー特徴抽出プロセス５１８とを含む。依存性特徴抽出プロセス５１４、コンテキスト系特徴抽出プロセス５１６、及びオントロジー特徴抽出プロセス５１８により、コーパスから得られた特徴関数のうちで、相互情報量の大きなもののみからなる特徴関数の値の群がえられる。
【００７５】
意味タグ付けプロセス４６０はさらに、依存性特徴抽出プロセス５１４から出力される依存性特徴関数の値、コンテキスト系特徴量抽出プロセス５１６から出力されるコンテキスト系特徴関数の値、オントロジー特徴抽出プロセス５１８から出力されるオントロジー特徴関数の値に対し、モデル記憶部４５６に記憶された統計的モデルを適用し、入力文に含まれる各単語に対する意味タグの付与方法の各々に対してその尤度を算出するための尤度算出部５２０と、尤度算出部５２０により算出される尤度の最も大きな意味タグの組合せを決定し、その組合せにしたがい、入力文の各単語に意味タグを付与する処理を実行し意味タグ付出力文４６４として出力するためのタグ選択部５２２とを含む。
【００７６】
尤度算出部５２０における尤度の算出方法は、以下のとおりである。入力文に含まれる単語の全てに対して任意の意味タグを付与する。すると、モデル記憶部４５６に記憶された統計的モデルによって、各単語に対し、その意味タグが付与される確率が、その単語に対するコンテキスト系特徴関数の値と、依存性特徴関数の値と、オントロジー特徴関数の値とを用いて算出される。意味タグのある組合せについて、各単語にその意味タグが付与される確率を計算し、それらを互いに乗算することで、その組合せの尤度が算出できる。
【００７７】
＜動作＞
図８〜図１０に示す意味タグ付けシステム４４０は以下のように動作する。意味タグ付けシステム４４０の動作は大きく二つのフェーズに分割される。モデルの学習フェーズと、モデルを用いた入力文に対する意味タグ付けフェーズとである。最初に学習フェーズ、次に意味タグ付けフェーズにおける意味タグ付けシステム４４０の動作を説明する。
【００７８】
−モデルの学習フェーズ−
図８を参照して、意味タグ付けコーパス４５０、オントロジー４５２は予め準備されているものとする。また文法タグセット及び意味タグセットも予め選定されているものとする。
【００７９】
図９を参照して、文法タグ付けプロセス４８０は、意味タグ付けコーパス４５０に含まれる各文の各単語に対し文法タグ付けを行ない、意味タグ・文法タグ付コーパス記憶部４８２に意味タグ・文法タグ付コーパスを出力する。依存性パーザプロセス４８４は、意味タグ・文法タグ付コーパス記憶部４８２に記憶された各文に対し依存性解析を行ない、依存関係を抽出してコーパスの各文に付して学習用コーパス記憶部４８６に記憶させる。
【００８０】
コンテキスト系特徴及び依存性特徴抽出プロセス４８８は、学習用コーパス記憶部４８６に記憶された各文からコンテキスト系特徴関数を抽出し、さらに各文に付された依存性特徴関数を抽出して特徴記憶部４９２に記憶させる。
【００８１】
オントロジー特徴抽出プロセス４９０は、オントロジー４５２に含まれる階層構造中の各カテゴリをオントロジー特徴関数として抽出し特徴記憶部４９２に記憶させる。
【００８２】
特徴選択プロセス４９４は、特徴記憶部４９２に記憶された各特徴関数について、学習用コーパス記憶部４８６に記憶された、文法タグ、意味タグ、及び依存性特徴が付された学習用コーパスの各文の各単語を用いて相互情報量を算出し、上位の所定個数の特徴関数のみを選択し特徴セットとして特徴セット記憶部４９６に記憶させる。
【００８３】
学習プロセス４９８は、学習用コーパス記憶部４８６に記憶された学習用コーパスの各文の各単語と、それらに付された意味タグと、特徴セット記憶部４９６に記憶された特徴関数のセットとに基づき、特徴セット記憶部４９６に記憶された特徴セットに含まれる特徴関数のみを用いて既に述べた最大エントロピー法によるモデル（αｋの値）を算出し、モデル記憶部４５６に記憶させる。特徴セット記憶部４９６に記憶された学習用セットは、そのまま特徴セット記憶部４５８に与えられ、記憶される。モデルが算出されると、学習フェーズは終了である。
【００８４】
−意味タグ付けフェーズ−
図１０を参照して、意味タグ付けフェーズでは、オントロジー４５２、特徴セット記憶部４９６及びモデル記憶部４５６ともに意味タグ付けプロセス４６０に予め与えられている。入力文４６２が与えられると、入力文４６２は文法タグ付けプロセス５１０及びオントロジー特徴抽出プロセス５１８に与えられる。
【００８５】
文法タグ付けプロセス５１０は、入力文４６２に対して文法タグ付けを行ない、得られた文を依存性パーザプロセス５１２及びコンテキスト系特徴抽出プロセス５１６に与える。依存性パーザプロセス５１２は、文法タグ付けプロセス５１０から与えられた文法タグ付けがされた文に対し、依存性の解析処理を行ない、解析結果を依存性特徴抽出プロセス５１４に与える。依存性特徴抽出プロセス５１４は、特徴セット記憶部４９６に記憶されている特徴セットのうち、依存性特徴に関する特徴関数の値を、依存性パーザプロセス５１２から与えられる依存性解析後の入力文から算出し、尤度算出部５２０に与える。
【００８６】
一方、文法タグ付けプロセス５１０から文法タグ付けされた入力文を与えられたコンテキスト系特徴抽出プロセス５１６は、入力文から得られるコンテキスト系特徴関数のうち、特徴セット記憶部４９６に記憶された特徴関数の値のみを算出し、尤度算出部５２０に与える。
【００８７】
入力文４６２が与えられたオントロジー特徴抽出プロセス５１８は、入力文の各単語に対し、特徴セット記憶部４９６に記憶されたオントロジー特徴関数の値のみを、オントロジー４５２を参照して算出し、尤度算出部５２０に与える。
【００８８】
尤度算出部５２０は、依存性特徴抽出プロセス５１４から与えられた依存性特徴の特徴関数、コンテキスト系特徴抽出プロセス５１６から与えられたコンテキスト系特徴の特徴関数、オントロジー特徴抽出プロセス５１８から与えられたオントロジー特徴の特徴関数をモデル記憶部４５６に対し適用し、入力文の各単語に対する意味タグの可能な組合せの全てについてその尤度を算出し、それらを全てタグ選択部５２２に与える。
【００８９】
タグ選択部５２２は、尤度算出部５２０から与えられた意味タグの組合せのうち、尤度算出部５２０により算出された尤度が最も高いものを選択する。タグ選択部５２２はさらに、選択された組合せにしたがって各単語に意味タグを付し、意味タグ付出力文４６４として出力する。
【００９０】
図１１に、コンテキスト系の特徴関数のみを用いて得られた精度（モデル１の「ベースライン」）と、ベースラインに依存性特徴関数を付加して得られた精度（モデル２）と、ベースラインにオントロジー特徴関数を付加して得られた精度（モデル３）、ベースラインに依存性特徴関数及びオントロジー特徴関数の双方を付して得られた、本発明の実施の形態によって得られた精度（モデル４）とを対比して表形式で示す。
【００９１】
この実験には、出願人において作成した英文コーパスを用いた。使用したタグセットは、４２個の名詞／形容詞／副詞カテゴリ及び２９個の動詞／動詞的カテゴリ（両者の間には重複がある。）から選択した意味タグセットを用い、さらに、固有名詞と、ある主の名詞及び数量的表現についての３５個の「固有名詞」カテゴリを追加した。
【００９２】
これら意味カテゴリは、共通ドメインの「標準アメリカ英語」を意図して作成されたものである。カテゴリの例として、「ｐｈｙｓｉｃａｌ．ａｔｔｒｉｂｕｔｅ」（名詞／形容詞／副詞）、「ａｌｔｅｒ」（動詞／動詞的）、「ｉｎｔｅｒｐｅｒｓｏｎａｌ．ａｃｔ」（名詞／形容詞／副詞／動詞／動詞的）、「ｏｒｇｎａｍｅ」（固有名詞）、及び「ｚｉｐｃｏｄｅ」（数詞）等がある。
【００９３】
文法タグとしては１６５種類の基本的タグを使用した。
【００９４】
テスト用のコーパスは、学習用のコーパスとほぼ同じドメインから選ばれた５３，３６７個の単語を含んでいる。各単語には、６個までの許容できる意味タグが予め手作業で付されている。テストでは、本実施の形態に係るシステム及び比較用のシステムのいずれに対しても、ある単語に対して予測されたタグが、その単語に予め付されたタグのいずれとも一致しない場合のみエラーとした。
【００９５】
図１１において、「精度」は、全体として正しく意味タグ付けされた単語の率（％）を示す。「ＯＯＶ」とあるのは、学習用コーパスに出現しなかった単語（Ｏｕｔ−Ｏｆ−Ｖｏｃａｂｕｌａｒｙ）について正しく意味タグ付けされた率を示す。名詞、動詞、形容詞／副詞とある欄はそれぞれ、名詞、動詞、形容詞／副詞について正しく意味タグ付けされた率を示す。なお、複数の人間によって行なった同様の意味タグ付けでは、各人の間でのタグ付けの一致率と、タグ付けの精度とを調べたところ、いずれも９７％程度となった。したがって、本発明で実現した自動的な意味タグ付けにおける精度の、実質的な上限は９７％程度であるものと考えられる。
【００９６】
図１１を参照して明らかなように、ベースラインのコンテキスト系特徴関数のみでは全体的な精度は８２．５８％である。ＯＯＶに対する精度はわずか３０．５８％であった。これに対し、依存性特徴による特徴関数を追加して使用すると、全体的な精度は８３．３７％に、ＯＯＶに対する精度は３１．２４に、それぞれ向上した。さらに他の名詞等についてもいずれも精度が向上した。
【００９７】
一方、ベースラインに対しオントロジー特徴関数を加えた場合には、学習用コーパスでは得られない情報を使用できないため、ＯＯＶに対する精度が向上することが期待された。現実に、ＯＯＶに対する精度は３０．５８％から３６．１８％まで、大幅に向上し、名詞、動詞、形容詞／副詞についても同様で、全体の精度も８２．５８％から８３．９０％にまで向上した。
【００９８】
さらに、ベースラインに対し依存性特徴による特徴関数とオントロジー特徴関数との双方を用いてモデルを構築した場合には、他の三つのモデルよりも、いずれの面においても精度が向上していることが確認できた。その精度は全体として８４．９％程度であるが、上限が９７％程度であることを考えると、ベースラインと比較して、かなりよい結果であると考えることができる。
【００９９】
＜コンピュータによる実現＞
なお、上記したこの実施の形態に係る意味タグ付けシステム４４０は、コンピュータハードウェアと、そのコンピュータハードウェアにより実行されるプログラムと、コンピュータハードウェアに格納されるデータとにより実現される。図１２はこのコンピュータシステム５３０の外観を示し、図１３はコンピュータシステム５３０の内部構成を示す。
【０１００】
図１２を参照して、このコンピュータシステム５３０は、携帯型メモリが着脱可能なメモリポート５５２及びＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）装着可能なドライブ５５０を有するコンピュータ５４０と、キーボード５４６と、マウス５４８と、モニタ５４２と、マイクロフォン５７０及び一対のスピーカ５７２とを含む。
【０１０１】
図１３を参照して、コンピュータ５４０は、メモリポート５５２及びＤＶＤドライブ５５０に加えて、ＣＰＵ（中央処理装置）５５６と、ＣＰＵ５５６、メモリポート５５２及びＤＶＤドライブ５５０に接続されたバス５６６と、ブートアッププログラム等を記憶する読出専用メモリ（ＲＯＭ）５５８と、バス５６６に接続され、プログラム命令、システムプログラム、及び作業データ等を記憶するランダムアクセスメモリ（ＲＡＭ）５６０と、バス５６６に接続され、プログラム、コーパス、特徴セット、タグセットなどを記憶するためのハードディスクドライブ５５４と、バス５６６に接続され、図示しないローカルエリアネットワーク（ＬＡＮ）への接続をコンピュータ５４０に対し提供するネットワークインターフェース（Ｉ／Ｆ）５７６と、バス５６６、スピーカ５７２及びマイクロフォン５７０に接続されたサウンドボード５６８とを含む。
【０１０２】
コンピュータシステム５３０に意味タグ付けシステム４４０としての動作を行なわせるためのコンピュータプログラムは、ＤＶＤドライブ５５０又はメモリポート５５２に挿入されるＤＶＤ５６２又は携帯型メモリ５６４に記憶され、さらにハードディスクドライブ５５４に転送される。又は、プログラムは図示しないネットワークを通じてコンピュータ５４０に送信されハードディスクドライブ５５４に記憶されてもよい。プログラムは実行の際にはハードディスクドライブ５４０からＲＡＭ５６０にロードされる。ＤＶＤ５６２から、携帯型メモリ５６４から、又はネットワークを介して、直接にＲＡＭ５６０にプログラムをロードしてもよい。
【０１０３】
このプログラムは、コンピュータ５４０にこの実施の形態の意味タグ付けシステム４４０として動作を行なわせる複数の命令を含む。この動作を行なわせるのに必要な基本的機能のいくつかはコンピュータ５４０上で動作するオペレーティングシステム（ＯＳ）もしくはサードパーティのプログラム、又はコンピュータ５４０にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施の形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又は「ツール」を呼出すことにより、上記した意味タグ付けシステム４４０としての動作を実行する命令のみを含んでいればよい。コンピュータシステム５３０の動作は周知であるので、ここでは繰返さない。
【０１０４】
なお、既に述べたように、意味タグ付けシステム４４０は、図１に示すモデル作成プロセス４５４を実現する部分と、意味タグ付けプロセス４６０を実現する部分とに完全に分離できる。両者の間では、特徴セット記憶部４５８、モデル記憶部４５６、及びオントロジー４５２を共有するだけでよい。
【０１０５】
なお、上記した実施の形態では、オントロジーとしてＷｏｒｄＮｅｔを用いている。ＷｏｒｄＮｅｔのデータは容易に入手できるが、ＷｏｒｄＮｅｔではなく、何らかのコーパスから自動的なクラスタリングを用いてＷｏｒｄＮｅｔと同様のオントロジーを構築しこれをオントロジー特徴抽出に用いてもよい。
【０１０６】
また、上記実施の形態では、コンテキスト系特徴関数として図２に示すようなものを用いている。しかし本発明はそのような実施の形態には限定されず、コンテキスト系特徴関数の数を変更してもよいことはいうまでもない。
【０１０７】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内でのすべての変更を含む。
【図面の簡単な説明】
【０１０８】
【図１】意味タグ付けがされた文の例を示す図である。
【図２】本発明の一実施の形態で採用しているコンテキスト系の特徴関数を示す図である。
【図３】図２に示すコンテキスト系特徴量の形式を示す図である。
【図４】依存性の特徴を説明するための図である。
【図５】依存性特徴関数を作成するプロセスを説明するための図である。
【図６】オントロジーにおける階層構造を示す図である。
【図７】オントロジーによる特徴関数の構成を示す図である。
【図８】本発明の一実施の形態に係る意味タグ付けシステム４４０のブロック図である。
【図９】モデル作成プロセス４５４のより詳細な構成を示すブロック図である。
【図１０】意味タグ付けプロセス４６０のより詳細な構成を示すブロック図である。
【図１１】本発明の一実施の形態の効果を表形式で示す図である。
【図１２】本発明の一実施の形態に係る意味タグ付けシステム４４０を実現するコンピュータシステムの外観図である。
【図１３】図１２に示すコンピュータのブロック図である。
【符号の説明】
【０１０９】
１００  コンテキスト系の特徴量
２４０  依存関係の集合
４２０  オントロジーカテゴリーリスト
４２２  オントロジー特徴ベクトル
４４０  意味タグ付けシステム
４５０  意味タグ付けコーパス
４５２  オントロジー
４５４  モデル作成プロセス
４５６  モデル記憶部
４５８，４９６  特徴セット記憶部
４６０  意味タグ付けプロセス
４６２  入力文
４６４  意味タグ付出力文
４８０，５１０  文法タグ付けプロセス
４８２  意味タグ・文法タグ付コーパス記憶部
４８４，５１２  依存性パーザプロセス
４８６  学習用コーパス記憶部
４８８  コンテキスト系特徴及び依存性特徴抽出プロセス
４９０  オントロジー特徴抽出プロセス
４９２  特徴記憶部
４９４  特徴選択プロセス
４９８  学習プロセス
５１４  依存性特徴抽出プロセス
５１６  コンテキスト系特徴量抽出プロセス
５１８  オントロジー特徴抽出プロセス
５２０  尤度算出部
５２２  タグ選択部
【図１】
2008021139.tif 000006
【図２】
2008021139.tif 000007
【図３】
2008021139.tif 000008
【図４】
2008021139.tif 000009
【図５】
2008021139.tif 000010
【図６】
2008021139.tif 000011
【図７】
2008021139.tif 000012
【図８】
2008021139.tif 000013
【図９】
2008021139.tif 000014
【図１０】
2008021139.tif 000015
【図１１】
2008021139.tif 000016
【図１２】
2008021139.tif 000017
【図１３】
2008021139.tif 000018