(57)【特許請求の範囲】
【請求項１】
ユーザが入力装置を通じてコンピュータシステムに入力した第１のテキストセグメントと、コーパス中のテキストセグメントを表す複数の論理グラフを有する語彙知識ベース(LKB)内のテキスト情報との関係性を判定するための、前記LKBを記憶する手段、入力分析手段及び照合手段を含むコンピュータシステムによって実行される方法であって、前記論理グラフは、単一の論理形式、または複数の論理形式および/または部分グラフを合成したものであり、前記論理形式は、テキストセグメントを表す論理的関係のセットを含み、共通の語彙項目を含むノードをつなぐことによって作成され、樹構造であり、前記部分グラフは、前記論理形式または論理グラフ中の論理的関係のサブセットであり、前記方法は、
前記入力分析手段によって、前記第１のテキストセグメントを受け取り、前記第１のテキストセグメントに基づいて入力論理形式を得るステップと、
前記照合手段によって前記入力論理形式を前記LKBの論理グラフと照合するステップであって、前記照合によって照合論理グラフが識別される、ステップと、
前記照合手段によって、前記照合論理グラフに基づいて、前記照合論理グラフに関連付けられた内容を出力するステップと
を備え、
前記入力論理形式を得るステップは、
前記第１のテキストセグメントを表す論理的関係のセットを得るステップであって、各論理的関係はある関係によって結合される少なくとも第１および第２の単語を含む、ステップ
を含み、
前記照合するステップは、前記LKBの論理グラフが前記入力論理形式と語彙的または構造的に異なる場合に、
前記入力論理形式中の論理的関係を選択するステップと、
前記選択した論理的関係の前記第１の単語と第２の単語とを結合するパスのセットを前記LKB内で取得するステップであって、前記パスは、論理的関係が線形的順序で結合された部分グラフである線形パスと、論理的関係が２つの異なる論理形式から発生している合成パスとを含み、ステップと、
前記論理的関係中の前記第１および第２の単語を除く、前記取得されたパス中の各単語が、前記論理的関係中の前記第１または第２の単語と類似性があるかどうかを判定し、類似性がある場合には前記パス中の前記単語を類似語(simword)として識別するステップと、
前記識別された類似語を前記第１または第２の単語と置換した入力論理形式について、前記LKB内で照合論理グラフを識別するステップと
を含むことを特徴とする方法。
【請求項２】
論理的関係を選択するステップ、パスのセットを取得するステップ、前記取得したパス中の各単語が前記選択された論理的関係中の前記第１または第２の単語と類似性があるかどうかを判定するステップ、類似語を識別するステップおよび、前記識別された類似語を前記第１または第２の単語と置換した入力論理形式について照合論理グラフを識別するステップを繰り返すステップ
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項３】
照合するステップは、前記照合論理グラフの複数の異なる組み合わせの１つまたは複数を、選択された照合論理グラフとして選択するステップをさらに含み、前記出力するステップは、前記選択された照合論理グラフに基づいて、前記選択された照合論理グラフに関連付けられた内容を出力するステップを含む
ことを特徴とする請求項１に記載の方法。
【請求項４】
照合の前に、前記入力論理形式中の各ノードの単語を調べて、所定の特有性を有するノードを前記入力論理形式中の開始点として識別するステップと、
開始点として識別されたノードを前記入力論理形式のルートにするステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項５】
照合するステップは、
前記ルート上の単語であるルート語に類似する類似語を前記LKBで識別することと、
前記識別したルート語の類似語をルート語と置換した入力論理形式について、前記LKB内で照合論理グラフを識別することと
を含むことを特徴とする請求項４に記載の方法。
【請求項６】
類似語を識別するステップは、
シソーラスにアクセスするステップ
を含むことを特徴とする請求項５に記載の方法。
【請求項７】
類似語を識別するステップは、
類似性の度合いに基づいて類似語にスコアをつけるステップ
をさらに含むことを特徴とする請求項５に記載の方法。
【請求項８】
類似語を識別するステップは、
識別される類似語の数を制限するために、品詞であるかどうかに基づいて、類似語として識別する単語を制限するステップ
を含むことを特徴とする請求項５に記載の方法。
【請求項９】
照合するステップは、
前記入力論理形式中の前記単語および論理関係を前記LKBの論理グラフと照合して、１つまたは複数の照合論理グラフを得るステップ
をさらに含むことを特徴とする請求項５に記載の方法。
【請求項１０】
照合するステップは、
前記入力論理形式のルート語または前記ルート語の類似語をルートとして有する論理グラフを前記LKB中で識別して、前記識別した論理グラフを前記LKB中の論理グラフの候補セットと特定し、前記候補セットに対して照合するステップ
をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１１】
照合するステップは、
前記論理グラフセットの各候補が前記入力論理形式中の単語または類似語を含むかどうかと、含まれる類似語の数とに基づいて前記論理グラフの候補セットに順序をつけるステップと、
前記順序で前記候補セットに対して照合するステップと
をさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
照合するステップは、
前記候補セット中の論理グラフを選択するステップと、
前記入力論理形式中のノードの単語および関係タイプを、前記候補セット中の論理グラフのうち選択された論理グラフ中のノードの単語および関係タイプと比較するステップであって、前記比較によって、単語および関係タイプの照合を識別して前記単語および関係タイプの照合にあるスコアを与える、ステップと、
選択ステップおよび比較ステップを複数回繰り返すステップと
をさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１３】
関係タイプを比較するステップは、
前記入力論理形式中の関係タイプと全く同じ関係タイプを前記候補セット中の前記選択された論理グラフ内で識別するステップと、
前記全く同じ関係タイプの照合に最高のスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
関係タイプを比較するステップは、
前記入力論理形式中の関係タイプの言い換えである関係タイプを前記候補セット中の前記選択された論理グラフ内で識別するステップと、
前記関係タイプの照合に、全く同じ関係タイプの照合のスコアよりも低いスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項１５】
関係タイプを比較するステップは、
前記候補セット中の前記選択された論理グラフ中の部分グラフのパターンを、前記入力論理形式中の部分グラフのパターンと比較するステップであって、前記パターンは１つ以上の論理関係を含むことができる、ステップ
を含むことを特徴とする請求項１２に記載の方法。
【請求項１６】
ノードの単語を比較するステップは、
前記論理形式中の前記ノードの単語と全く同じであるノード上の単語を前記候補セット中の前記選択された論理グラフ内で識別するステップと、
前記全く同じ単語の照合に最高のスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項１７】
ノードの単語を比較するステップは、
前記入力論理形式におけるノード上の単語が前記選択された論理グラフにおけるノード上の単語の一部である場合、または、前記選択された論理グラフにおけるノード上の単語が前記入力論理形式におけるノード上の単語の一部である場合に、部分的な単語の照合として識別するステップと、
前記部分的な単語の照合にあるスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項１８】
ノードの単語を比較するステップは、
「誰（who）」を、人間または有生のエンティティを表す任意の単語と照合させるステップと、
前記照合にあるスコアを与えるステップと、
を含むことを特徴とする請求項１２に記載の方法。
【請求項１９】
ノードの単語を比較するステップは、
「いつ（when）」を時間または日付のエンティティを表す任意の単語と照合させるステップと、
前記照合にあるスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項２０】
ノードの単語を比較するステップは、
「どこ（where）」を位置のエンティティを表す任意の単語と照合させるステップと、
前記照合にあるスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項２１】
ノードの単語を比較するステップは、
疑問詞を、それに対応する特性を有する単語と照合させるステップと、
前記照合にあるスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項２２】
ノードの単語を比較するステップは、
人称代名詞を、人間または有生のエンティティを指すか、またはそれに対応する特性を有する任意の人称代名詞または単語と照合させるステップと、
前記照合にあるスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項２３】
ノードの単語を比較するステップは、
２つの類似する単語を照合させるステップと、
前記照合にあるスコアを与えるステップと
を含むことを特徴とする請求項１２に記載の方法。
【請求項２４】
照合するステップは、
前記ノードの単語の比較および前記関係タイプの比較にあるスコアを与えるステップと、
前記単語および関係タイプの比較に与えられたスコアをまとめることにより、
前記入力論理形式と前記候補セット中の選択論理グラフとの照合についての合計スコアを得るステップと
をさらに含むことを特徴とする請求項１２に記載の方法。
【請求項２５】
前記照合の合計スコアの順に並べられた順序付きの照合リストを保持するステップ
をさらに備えたことを特徴とする請求項２４に記載の方法。
【請求項２６】
出力するステップは、
ある閾値スコアを超える合計スコアを有する前記LKB中の論理グラフのコピーを出力するステップ
を含むことを特徴とする請求項２５に記載の方法。
【請求項２７】
前記LKBは、第１の言語から第２の言語への翻訳を表す翻訳情報を含み、出力するステップは、
前記照合論理グラフの少なくとも１つと関連付けられた前記翻訳情報を提供するステップ
を含むことを特徴とする請求項９に記載の方法。
【請求項２８】
前記LKBは第１の言語に基づき、出力するステップは、
前記第１の言語と異なる第２の言語に基づく第２のLKB中の論理グラフへのリンクを提供するステップ
を含むことを特徴とする請求項９に記載の方法。
【請求項２９】
出力するステップは、
前記第２のLKB内でポイントされる論理グラフを生成する際に使用されるテキストセグメントを提供するステップ
を含むことを特徴とする請求項２８に記載の方法。
【請求項３０】
出力するステップは、
前記第２のLKB内でポイントされる論理グラフを生成する際に使用されるテキストセグメントへのポインタを提供するステップ
を含むことを特徴とする請求項２８に記載の方法。
【請求項３１】
出力するステップは、
前記照合論理グラフの少なくとも１つを生成する際に使用されたテキストセグメントへのポインタを提供するステップ
を含むことを特徴とする請求項９に記載の方法。
【請求項３２】
出力するステップは、
前記照合論理グラフの少なくとも１つを生成する際に使用されたテキストセグメントを提供するステップ
を含むことを特徴とする請求項９に記載の方法。
【請求項３３】
出力するステップは、
アプリケーションプログラムへの入力を提供するステップ
を含むことを特徴とする請求項９に記載の方法。
【請求項３４】
前記アプリケーションプログラムは埋めるべき１つまたは複数のフレームを含み、アプリケーションプログラムへの入力を提供するステップは、
前記アプリケーションプログラム中のフレームを埋めるテキスト入力を提供するステップ
を含むことを特徴とする請求項３３に記載の方法。
【請求項３５】
前記照合論理グラフは、前記フレームを埋めさせるモジュールへのリンクを含み、出力するステップは、
前記入力論理形式中の単語とともに前記リンクを提供して、前記アプリケーションプログラムのフレームを前記単語で埋めるステップ
を含むことを特徴とする請求項３３に記載の方法。
【請求項３６】
前記第１のテキストセグメントについて得た１つまたは複数の照合論理グラフの重み付け値を増加するステップと、
第２のテキストセグメントを受け取るステップと、
前記第２のテキストセグメントに基づいて第２の入力論理形式を得るステップと、
前記第２の入力論理形式を、前記重み付け値が増加された１つまたは複数の照合論理グラフと優先的に照合するステップと
をさらに備えたことを特徴とする請求項９に記載の方法。
【請求項３７】
ユーザが入力装置を通じてコンピュータシステムに入力した第１のテキストセグメントと、コーパス中のテキストセグメントを表す複数の論理グラフを有する語彙知識ベース(LKB)内に含まれる第２のテキストセグメントとの関係性を判定する装置であって、前記論理グラフは、単一の論理形式、または複数の論理形式および/または部分グラフを合成したものであり、前記論理形式は、テキストセグメントを表す論理的関係のセットを含み、共通の語彙項目を含むノードをつなぐことによって作成されており、前記部分グラフは、前記論理形式または論理グラフ中の論理的関係のサブセットであり、前記装置は、
前記LKBを記憶するLKB記憶手段と、
前記第１のテキストセグメントを受け取り、前記第１のテキストセグメントに基づいて入力論理形式を得るように構成された入力分析手段であって、前記入力論理形式を得ることは、前記第１のテキストセグメントを表す論理的関係のセットを得ることを含み、各論理的関係はある関係によって結合される少なくとも第１および第２の単語を含む、入力分析手段と、
前記入力分析手段および前記LKB記憶手段に結合された照合手段であって、前記照合手段は、前記入力論理形式を前記LKBの論理グラフと照合して照合論理グラフを識別し、および、前記照合論理グラフに基づいて、前記照合論理グラフに関連付けられた内容を出力するように構成された照合手段と
を備え、
前記照合することは、前記LKBの論理グラフが前記入力論理形式と語彙的または構造的に異なる場合に、
前記入力論理形式中の論理的関係を選択することと、
前記選択した論理的関係の前記第１の単語と第２の単語とを結合するパスのセットを前記LKB内で取得することであって、前記パスは、論理的関係が線形的順序で結合された部分グラフである線形パスと、論理的関係が２つの異なる論理形式から発生している合成パスとを含み、ことと、
前記論理的関係中の前記第１および第２の単語を除く、前記取得されたパス中の各単語が、前記論理的関係中の前記第１または第２の単語と類似性があるかどうかを判定し、類似性がある場合には前記パス中の前記単語を類似語(simword)として識別することと、
前記識別された類似語を前記第１または第２の単語と置換した入力論理形式について、前記LKB内で照合論理グラフを識別することと
を含むことを特徴とする装置。
【発明の詳細な説明】
【０００１】
(発明の背景)
本発明は、テキストの２部分間の関係(例えば意味の類似性)を判定するシステムおよび方法を対象とする。より詳細には、本発明は、テキスト入力を語彙知識ベースの一部分と照合（match）させ、その照合の結果を活用することに関する。
【０００２】
現在開発される複数のアプリケーション領域は、テキスト入力の意味を「理解」することを試みている。このような領域の例には、情報検索、機械翻訳、会話インタフェースおよびユーザインタフェース、および自然言語処理が挙げられる。例えば、情報検索システムのユーザがクエリを入力する際には、クエリ中の単語を検索するデータベース内の単語と正確に照合するだけでなく、クエリの意味を理解して、その意味に関連してはいるが、同じ単語を使用していない可能性のある文書を識別できることが情報検索システムにとって有用である。
【０００３】
同様に、機械翻訳システムでは、ある言語から別の言語に正確に翻訳されない単語や句がある。このような例では、翻訳をより正確に行うことができるように、翻訳するテキストの意味を理解することが翻訳システムにとって有用であると思われる。
【０００４】
会話インタフェースまたはユーザインタフェースでは、いくつかのコンピュータが、自然言語入力(話された(この場合は音声認識コンポーネントも利用する)、または書かれた、またはタイプされた形態)を受け取り、その入力を認識し、その入力に基づいて指定の動作を行うことを試みる。当然のことながら、すべて同じ事柄を意味する幅広い種類の入力が異なるユーザから受け取られる可能性がある。したがって、自然言語処理技術の上記の応用例や他の多くの応用例は、テキスト入力の意味を理解することによって益を得ることができる。
【０００５】
テキスト入力の意味の理解は非常に有用であるが、当業界がそのようなシステムを開発しようとする際にはいくつかの問題が伴う。
【０００６】
第１の問題は、言い換え(paraphrase)の識別に関する。諸システムにとって、テキストセグメント間の言い換えの関係が厳密に同じ内容語や構文的構造を備えていなくとも「同じことを意味する」ことを認識するのに十分なまでに入力テキストを理解するのは非常に難しい。
【０００７】
言い換えの識別に密接に関連する問題は、単語の意味のあいまいさを除くことの問題である。ほぼすべての単語は、使用される文脈に応じて様々な意味合いを有するという意味である程度多義である。こうした異なる意味合いは、しばしば、文脈の微妙な変化に基づいて、ある意味合いが別の意味合いと混ざり合うように連続的に並べられる。単語の意味のあいまいさを除くには、発話中のあいまいな単語に１つまたは複数の意味を割り当てることが必要である。従来の単語のあいまいさを除く手法は、各多義語に複数の「バケット（bucket）」を作成し、各バケットに個々の意味の番号をつけるものである。バケットを作成すると、分析者は、複数の所定の基準に応じて、テキスト入力中の単語を所与のバケットに入れることを試みる。この手法は、情報検索や機械翻訳などの応用例で大きな困難を伴う。これは、(１)単語の使用は常にこのような個別の入れ物に従うわけではないことと、(２)現行技術のあいまいさ除去技術は信頼性が低いことによる。
【０００８】
関連する別の問題は、会話インタフェースを実装するために、ソフトウェアアプリケーション開発者が、各自が開発するアプリケーションを自然言語入力に対応するように容易にカスタマイズできる必要があることである。従来、そうした開発者は、単に、ユーザがあるアプリケーション機能を指定または要求する際のあらゆる可能な方式を考えることを試みていた。システムは、ユーザ入力を受け取ると、開発者が作成した可能性の１つとそのユーザ入力を照合することを試みる。自然言語をプログラム機能と対応させるという課題は基本的な課題である。しかし、その重要性にも関わらず、開発者が、ユーザがアプリケーションに指示するために使用しうる幅広い発話と、それらの発話をどのように機能呼び出しに対応付けるかを余すところなく指定することはできない。
【０００９】
過去に言い換えの識別に使用されたいくつかの方法論には、辞書ベース、用例ベース、およびコーパスベースのシステムがある。辞書ベースの作業は、主に、機械可読の辞書から、語彙知識ベース、具体的には分類(taxonomy)を作成することを中心とする。用例ベースの研究の大半が目的とするのは、大規模な用例ベースあるいは関係や句の用例の収集を作成し、送られてくるテキストを記憶された用例と一致させる方法を開発することである。コーパスベースの研究の作業では、テキストコーパスの量的な分析を使用して、より深い類似性の関係と単純な共起を含む単語間の関係の統計モデルを開発する。
【００１０】
(発明の概要)
本発明は、テキスト入力部分の理解を得るため、または２つのテキストセグメント間の関係性(意味の類似性など)を識別するために、自然言語処理システムで使用することができる。テキストセグメントは論理グラフによって表すことができる。２つのセグメント間の照合が不正確な場合でも、２つのセグメントが類似していると判断される限り、論理グラフは照合すると識別される。
【００１１】
例えば、一実施形態では、第１のグラフがテキスト入力セグメントを表し、第２のグラフが語彙知識ベース(LKB)内の情報を表す。
【００１２】
第１の論理グラフと第２の論理グラフ間に正確な一致があるかどうかに関係なく、第１のグラフと第２のグラフ間の関係性を判定することができる。２つのグラフが語彙的または構造的に異なっている場合でも、入力グラフを第２のグラフと照合することができる。不完全な一致は、２つのグラフ中の単語間および関係間の関係性(類似性など)に基づいて識別する。
【００１３】
(例示的実施形態の詳細な説明)
概要
本発明は、語彙的または構造的に互いと異なる可能性のある論理グラフを一致させることを対象とする。論理的関係は、指向性の関係タイプ(例えば、Part、Time、Hypernym、Logical-Subject)によって結合された２つの単語からなる。本発明の詳細な説明に入る前に、本明細書を通じて使用するいくつかの用語について述べる。意味関係は、指向性の関係タイプを使用して、明確に定義された方式で単語の対の意味を関連づける。例えば、次の関係は、名詞「boat」が動詞「float」の主語として出現することを意味する。
【００１４】
boat  ←  LogicalSubject  -  float
【００１５】
この意味関係は、「LogicalSubject(論理的主語)」の関係タイプを有するということになる。関係タイプには意味における多くの共通の関係が含まれ、次のようなタイプがある。Cause(原因)、Domain(領域)、Hypernym(上位語)、Location(場所)、Manner(方法)、Material(材料)、Means(手段)、Modifier(修飾語)、Part(部分)、Possessor(所有者)、Purpose
(目的)、QuasiHypernym(準上位語)、Synonym(類義語)、Time(時)、LogicalObject(論理的目的語)、 LogicalSubject(論理的主語)、およびUser(使用者)。下記でさらに詳しく説明する語彙知識ベースは、このような意味関係を多数含んでいる。したがって、任意に選択した単語の対の間には意味関係のパス(あるいは単に「パス」)が存在しうる。
【００１６】
論理形式は、文章など単一のテキスト入力を表す結合された論理関係グラフである。これは最小限に１つの論理的関係からなる。
【００１７】
具体的には、論理形式は、入力文字列中の重要語間の構造的関係性(すなわち構文的関係性および意味関係性)を表し、具体的には文法項および/または付加詞の関係性を表す。
【００１８】
部分グラフ(タイプＡ)は、論理形式中の結合された論理的関係の連続したサブセットである。
【００１９】
論理形式は、共通の語彙項目を含むノードをつなぐことによって作成される。
【００２０】
論理グラフは、単一の論理形式、または複数の論理形式および/または部分グラフを合成したものである。
【００２１】
部分グラフ(タイプB)は、論理グラフ中の結合された論理的関係の連続したサブセットである。
【００２２】
パスは、論理的関係が線形的順序で結合された部分グラフ(タイプＡまたはB)である。
【００２３】
合成パスは、論理的関係が２つの異なる論理形式から発生しているパスである。
【００２４】
語彙知識ベースは、テキストコーパスを表す論理グラフの集合である。この論理グラフは、共通する単語で作成されたコーパス中の各テキストセグメントについての論理形式からなる。
【００２５】
上記の用語を、参照によって先に組み込んだ文書(work)におけるその対応語句と関連付けるために、次の表を参照されたい。
【００２６】
【表１】
0004942901.tif 000002
【００２７】
本発明は、例示的な一実施形態で、テキスト入力を表す論理グラフを、語彙知識ベース(LKB)内の論理グラフと一致させることを対象とする。本発明の一実施形態は、LKBの論理グラフを外部の情報と結びつけることも対象とする。グラフの照合は、入力グラフとLKBの論理グラフ間に構造的および語彙的な差異がある場合でもグラフの一致を可能にする「ファジー」方式で行う。LKB内の論理グラフと外部の情報間のリンクは各種形態の１つをとることができ、これには、情報検索タスクのための文書オフセットまたは文書へのポインタ、アプリケーションフレーム中のスロットを埋めるのに使用される情報、機械翻訳のためのあるいは別のLKBにある他言語の対応する構造のノードへのリンクなどがある。
【００２８】
以下の図１の説明では、単に、本発明を使用することのできる１つの例示的環境を示すが、本発明はこの他の環境でも使用することができる。
【００２９】
図１は、本発明の一例示的実施形態によるコンピュータ２０のブロック図である。図１およびそれに関連する説明は、本発明を実施することが可能な適切なコンピューティング環境を簡潔かつ一般的に説明するものである。これは必要ではないが、少なくとも部分的には、本発明はプログラムモジュールなどパーソナルコンピュータによって実行されるコンピュータ実行可能命令の一般的な状況で説明する。一般に、プログラムモジュールには、特定のタスクを行う、または特定の抽象データ型を実装するルーチンプログラム、オブジェクト、コンポーネント、データ構造などが含まれる。さらに、当業者には、本発明は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラマブルな消費者家電製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成を用いて実施することが可能であることが認識されよう。本発明はまた、通信ネットワークを通じてリンクされたリモートの処理装置によってタスクを行う分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルおよびリモートどちらのメモリ記憶デバイスに置いてもよい。
【００３０】
図１で、本発明を実施するための例示的システムは、従来型のパーソナルコンピュータ２０の形態をとる汎用コンピューティングデバイスを含み、これは、処理装置２１、システムメモリ２２、およびシステムメモリを含む各種のシステム構成要素を処理装置２１に結合するシステムバス２３を含む。システムバス２３は、各種のバスアーキテクチャの任意のものを使用したメモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含むいくつかのタイプのバス構造のいずれでもよい。システムメモリは、読み取り専用メモリ(ROM)２４、およびランダムアクセスメモリ(RAM)２５を含む。起動時などにパーソナルコンピュータ２０内の要素間の情報転送を助ける基本ルーチンを含んだ基本入出力(BIOS)２６はROM２４に記憶される。パーソナルコンピュータ２０はさらに、ハードディスク(図示せず)との読み取りおよび書き込みを行うためのハードディスクドライブ２７、リムーバル可能磁気ディスク２９との読み取りおよび書き込みを行うための磁気ディスクドライブ２８、およびCD ROMや他の光学媒体などのリムーバル可能光ディスク３１との読み取りまたは書き込みを行うための光ディスクドライブ３０を含む。ハードディスクドライブ２７、磁気ディスクドライブ２８、および光ディスクドライブ３０は、それぞれ、ハードディスクドライブインタフェース３２、磁気ディスクドライブインタフェース３３、および光ディスクドライブインタフェース３４によってシステムバス２３に接続される。これらのドライブおよび関連するコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびその他パーソナルコンピュータ２０用のデータの不揮発性の記憶を提供する。
【００３１】
ここで説明する例示的環境では、ハードディスク、リムーバル可能磁気ディスク２９、およびリムーバル可能光ディスク３１を用いるが、当業者には、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)など、コンピュータからアクセスすることが可能なデータを記憶することができる他タイプのコンピュータ可読媒体もこの例示的動作環境で使用できることが認識されよう。
【００３２】
オペレーティングシステム３５、１つまたは複数のアプリケーションプログラム３６、他のプログラムモジュール３７、およびプログラムデータ３８を含む複数のプログラムモジュールを、ハードディスク、磁気ディスク２９、光ディスク３１、ROM２４またはRAM２５に記憶することができる。ユーザは、キーボード４０やポインティングデバイス４２などの入力装置を通じて、コマンドや情報をパーソナルコンピュータ２０に入力することができる。この他の入力装置(図示せず)には、マイクロフォン、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどがある。これらの入力装置およびその他の入力装置は、しばしば、システムバス２３に結合されたシリアルポートインタフェース４５を通じて処理装置２１に接続されるが、サウンドカード、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)など他のインタフェースによって接続してもよい。モニタ４７または他タイプの表示装置も、ビデオアダプタ４８などのインタフェースを介してシステムバス２３に接続される。モニタ４７に加えて、パーソナルコンピュータは通例スピーカやプリンタ(図示せず)などの他の周辺出力装置を含むことができる。
【００３３】
パーソナルコンピュータ２０は、リモートコンピュータ４９など１つまたは複数のリモートコンピュータへの論理接続を使用するネットワーク環境で動作することが可能である。リモートコンピュータ４９は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、または他のネットワークノードでよく、また図１にはメモリ記憶デバイス５０しか示していないが、通例は、パーソナルコンピュータ２０に関して上記で挙げた要素の多くまたはすべてを含む。図１に表す論理接続には、ローカルエリアネットワーク(LAN)５１およびワイドエリアネットワーク(WAN)５２が含まれる。このようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットに一般的に見られる。
【００３４】
LANネットワーキング環境で使用する場合、パーソナルコンピュータ２０は、ネットワークインタフェースまたはアダプタ５３を通じてローカルエリアネットワーク５１に接続される。WANネットワーキング環境で使用する場合、パーソナルコンピュータ２０は通例、インターネットなどのワイドエリアネットワーク５２を介した通信を確立するためのモデム５４またはその他の手段を含む。モデム５４は内蔵型でも外付け型でもよく、シリアルポートインタフェース４６を介してシステムバス２３に接続される。ネットワーク環境では、パーソナルコンピュータ２０に関連して図に示すプログラムモジュール、またはその一部は、リモートのメモリ記憶デバイスに記憶してもよい。図のネットワーク接続は例示的なものであり、コンピュータ間に通信リンクを確立する他の手段を使用してもよいことは理解されよう。
【００３５】
図２Ａは、本発明の例示的実施形態による照合システム１００のブロック図である。照合システム１００は、入力アナライザ１０２、照合コンポーネント１０４、および語彙知識ベース(LKB)１０６を含む。システム１００のすべてあるいはその一部は、図１に示すコンピュータ２０に含むことができることに留意されたい。例えば、入力アナライザ１０２および照合コンポーネント１０４は、例えばアプリケーションプログラム３６またはプログラムモジュール３７としてメモリ２２に記憶されたソフトウェアモジュールでよく、あるいはオペレーティングシステム３５に組み込むこともできる。同様に、LKB１０６も、メモリ２２、またはハードドライブ２７、リムーバル可能ストレージ２９、光ドライブ３１、またはメモリデバイスなどの他の記憶デバイスに記憶するか、あるいは、ワイドエリアネットワーク５２またはローカルエリアネットワーク５１上に記憶することができる。
【００３６】
いずれの場合も、システム１００の動作は図２Ｂ-２Ｄとの関連で説明する。本発明の広い態様は、単に論理グラフの照合のために示すが、この説明は、照合する項目の１つがテキスト入力を表し、もう一方が語彙知識ベース内の情報を表す例示的実施形態との関連で進める。テキスト入力と語彙知識ベース内の論理グラフを照合する際の最初のステップは、図２Ａに示す語彙知識ベース１０６を得ることである。これを図２Ｂのブロック１０８に示す。語彙知識ベース１０６の入手は各種の周知の方式で行うことができるが、この１つを図２Ｃにより詳細に示し、下記で詳しく説明する。
【００３７】
語彙知識ベース１０６を得ると、システム１００はテキスト入力を受け取る。これを図２Ｂのブロック１１０に示す。テキスト入力は、書かれた形態でも話された形態でもよいことに留意されたい。入力が話された形態である場合、入力アナライザ１０２は、受け取った音声による単語を認識しそれを機械可読の形態に変える音声認識コンポーネントを含む。これは、実質的にどの周知の方式でも行うことができる。テキスト入力が書かれた形態である場合は、通例ポインティングデバイス、キーボード、筆跡分析コンポーネントなどを通じて入力を提供することができる。
【００３８】
いずれの場合も、テキスト入力が機械可読形態になると、それを入力アナライザ１０２によって分析する。入力アナライザ１０２の機能については、図３との関連でさらに詳しく説明する。簡単に述べると、入力アナライザ１０２はテキスト入力を分析し、そのテキスト入力を表す論理形式を生成する。この論理形式は照合コンポーネント１０４に提供され、照合コンポーネントはLKB１０６内の情報にアクセスする。これを図２Ｂのブロック１１２に示す。
【００３９】
照合コンポーネント１０４は、テキスト入力を表す論理形式をLKB１０６内の論理グラフと照合することを試みる。照合が見つかると、照合コンポーネント１０４は、LKB１０６で照合した論理グラフに対応する注釈に基づいた出力を提供する。これを図２Ｂのブロック１１４に示す。
【００４０】
LKB１０６の生成
図２Ｃは、LKB１０６の入手をより詳細に示す流れ図である。ここに説明する実施形態では、LKB１０６は、計算的な語彙集と高度に構造化された語彙用例ベース両方の構成要素を含む自動的に構築されるリソースであり、ワシントン州レドモンドのマイクロソフト社によって開発されたMindNet（商標）として知られるものである。MindNet語彙知識ベースの開発方法は上記で組み込んだ文書に詳細に記され、また、Richardson、Dolan、Vanderwende著「MindNet:Acquiring and Structuring Semantic Information From Text」(１９９８年)と題する文書にも記載される。読者は、より詳しい説明のためにこれらの文書を参照されたい。ただし、ここでは完全性のためにこの方法については簡潔に述べる。この説明における術語の対応語句は、上記の概要の項の表１に示している。ただし、この項で使用する術語は、参照により組み込んだ文書で使用されるもの(すなわち、（上記の）表１の左側)と一致している。
【００４１】
例示的な一実施形態では、まず機械可読の辞書を入手する。これをブロック１１６に示す。次いで、この機械可読の辞書で使用される定義または文章に基づいて意味関係の構造を得る。この意味関係の構造は、構文解析木とより深い論理形式を作成することによって得る。この論理形式の処理では、論理的主語や目的語のような文法的役割を識別し、長距離の依存関係を解明し、能動/受動のような構文上の何らかの交替を標準化する。また、代名詞の前方参照性の参照も解明する。定義または文章用例から意味関係(semrel:semantic relation)を抽出することにより、それらの関係が含まれていた定義または文章全体を表す、それら関係の階層構造を得る。この構造は完全にLKB１０６に記憶される。このような意味関係の構造を得るステップを図２Ｃのブロック１１８に示す。
【００４２】
次いでこの意味関係の構造を完全に反転してLKB１０６全体に伝播させ、その構造に現れるすべての単語とリンクする。これを図２Ｃのブロック１２０および１２２に示す。LKB１０６に記憶された完全に反転された構造では、すべての単語はそれがどこに現れるかに関係なく相互にリンクされる。
【００４３】
この反転され、伝播された構造を図２Ｄに示す。図２Ｄに示す構造は、「motorist」の定義から生成され、「car」の項目(反転された構造のルートとして現れる)にリンクされている。
【００４４】
構造を反転することにより、その構造を含んでいるMindNet LKB項目の見出し語である各構造のルート語と、その構造に含まれるすべての他の単語との直接的および間接的な関係へのアクセスが容易になる。これらの関係は、互いと線形に結合された１つまたは複数の意味関係を含んでおり、２つの単語間にsemrelパスを構築する。例えば、図２Ｄの「car」と「person」の間のsemrelパスは、
【００４５】
Car<T_obj-drive-T_sub>motorist-Hyp>person
【００４６】
となる。
【００４７】
拡張されたsemrelパスは、反転された２つの異なる意味関係構造内のサブパスから作成されるパスである。例えば、「car」と「truck」は、意味関係、またはどの単一の意味関係からのsemrelパスによっても直接には関連付けられていない。しかし単語「vehicle」についての異なる意味関係構造にそれぞれ含まれる意味関係car-Hyp-vehicleとvehicle-Hyp-truckの結合を可能にすると、semrelパス「car-Hyp>vehicle-Hyp>truck」が得られる。適切に抑制を加えると、拡張semrelパスは、それ以外では結合されることのないMindNet LKB内の単語間の関係を判定する際に非常に有用であることが分かっている。
【００４８】
semrelパスには、その顕著性を反映する重みが自動的に割り当てられる。MindNet LKBにおける重みは、中程度の頻度で出現する意味関係を優先する平均頂点確率（averaged vertex probability）の計算に基づく。さらに、異なる構造にある２つのsemrelパスを結合して得られる拡張semrelパスには重みを余分につける。例示的な重み付けの手法の１つが、参照により本明細書に組み込まれるRichardsonの論文に詳細に記載されている。意味関係構造内のsemrelパスへの重みの割り当てを図２Ｃのブロック１２６に示す。
【００４９】
図２Ｅは、MindNet LKBの一部分を表す。具体的には、図２Ｅは、単語「handle」と「sword」をリンクする、重み付けが上位のsemrelパスと直接関連付けられたMindNet LKBの一部を示している。この部分は、分類された関係の複雑な連鎖を示している。言うまでもなく、図２Ｅは、図面を見やすくするために重みおよびその他のグラフ構造と注釈を図から除いて簡略化した図である。
【００５０】
入力の処理およびLKBへのアクセス
図３Ａは、本発明の例示的な一実施形態による、テキスト入力の受け取りとLKBへのアクセスをより詳細に説明する流れ図である。テキスト入力は、上記で図２Ａとの関連で説明した要領で受け取られる。これを図３Ａのブロック１２８に示す。
【００５１】
次いで、このテキスト入力を表す論理形式を生成する。言うまでもなく、テキスト入力は、文章の断片であっても、完全な文章であっても、あるいは何らかのより大きな談話の単位であってもよい。いずれの場合も入力論理形式は作成されて、そのテキスト入力の分析を表す。
【００５２】
例えば、情報検索の応用例では、テキスト入力は通例、「When did Germany cross the border of Poland?(ドイツがポーランドの国境を越えたのはいつか)」といったクエリである。図３Ｂは、このテキスト入力を表す論理形式の一実施形態を表す。この論理形式は、このクエリに含まれる内容語間の論理的関係を表す。テキスト入力を表す入力論理形式の生成を図３Ａのブロック１３０に示す。
【００５３】
次いで、照合コンポーネント１０４(図２Ａ)が、ブロック１３０で生成された入力論理形式と、LKB１０６内の１つまたは複数の論理グラフとの「ファジー照合」を行う。本発明の一実施形態により使用するファジー照合技術では、例えば次のようなテキスト断片が見つけられる。
Hitler invaded Poland's border in １９３９.(ヒットラーは１９３９年にポーランド国境に侵攻した。)
【００５４】
この答えに対応する論理グラフを図３Ｃに示す。この論理グラフは、LKB１０６に記憶された論理形式を合成したものであることに留意されたい。言うまでもなく、図３Ｃに示す答えの論理形式は、図３Ｂに示すクエリの論理形式と同じではない。しかし、本発明の一態様により使用するファジー照合技術は、図３Ｃに示す論理グラフを照合するグラフとして識別する。この照合技術の実行については下記で図４Ａとの関連でさらに詳しく説明し、また図３Ａのブロック１３２に示す。この照合技術により、グラフ間に構造的または語彙的な差異がある場合でもグラフの照合が可能になる。
【００５５】
LKBで照合する論理グラフを見つけると、そのグラフと関連付けられたポインタまたはリンクを入力論理形式にコピーする。アプリケーションが適切な動作を行うために使用する、この注釈付きの論理形式がこの照合手順の出力である。これをブロック１３４に示し、下記で図４Ｄ-４Ｆとの関連でさらに詳しく説明する。このポインタまたはリンクは、例えば、照合した論理グラフの元となったテキスト断片を識別する文書オフセット、機械翻訳のために可能性としては別のLKBにある他言語の対応グラフ、または意味フレーム中のスロットを埋める情報、を含むことができる。
【００５６】
ファジー照合
図４Ａは、本発明の例示的な一実施形態による照合技術を表す流れ図である。照合コンポーネント１０４はまず、テキスト入力に基づいて生成された入力論理形式(図３Ｂに示すものなど)内の最初の論理的関係を選択する。
【００５７】
例として、最初に選択される論理的関係が「cross-Lsub>Germany」と指定されるとする。この論理的関係の２つの内容語は、「cross」と「Germany」である。照合コンポーネント１０４は次いで、選択された論理的関係内の２つの内容語間の上位n個の重み付きパスをLKBで見つける。すなわち、LKBには「cross」と「Germany」との間に、それぞれが関連する重みを有する多くの異なるパスがある可能性がある。数nは、任意の所望の整数でよい。
【００５８】
例えば、照合コンポーネントは、単に論理的関係「cross-Lsub>Germany」を見つける代わりに、次のように「cross」と「Germany」との間の重み付けが高いパスを見つけることができる。
【００５９】
cross-Lsub>Hitler-Possr>Germany
【００６０】
上位n個のパスを見つけると、照合コンポーネント１０４は論理的関係を推測し、入力論理形式中で選択された論理的関係(この場合は論理的関係「cross-Lsub>Germany」)中の単語と、識別されたn個のパス内のその入力論理形式にはない単語の類似性を判定する。これを行う一方式は、上記で参照し、本明細書に組み込んだ文書「DETERMINING SIMILARITY BETWEEN WORDS」および「INFERRING SEMANTIC RELATIONS」に記載される。したがって、上記の例では、照合コンポーネント１０４は「Hitler」と「Germany」との類似性を判定することになる。
【００６１】
semrelを推測し、類似性を判断するための一例示的実施形態が、上記で特定し、本明細書に組み込んだ論文および特許出願に詳細に記載されるが、ここでは説明を簡潔にするために要約して述べる。この説明では、組み込まれた参照文献で使用される従来の用語(上記の概要の項の表１の左側にある用語)を再度使用する。簡潔に述べると、この技術は、連辞的（syntagmatic）な情報と系列的情報の両方を単一のリポジトリ、すなわちLKBにまとめる。類似性判断の手順は、単語間の上位パス(重みによる)に基づく。例えば、MindNet LKBで単語「pen」と単語「pencil」間にある上位パスの一部を図４Ｂに示す。図４Ｂに示す例では、パスの多くにsemrelパターンの対称性が明確に現れている。この対称性が認められることから、類似する単語は通例MindNet LKB内で、頻繁に特定の関係パターンを示す(それらが実際に結合する単語は除く)パスによって結合されており、パターンの多くは対称形であるが、対称形でないものもあることの理解に至った。
【００６２】
semrelパターンの対称性を利用して２つの単語間の類似性を判定するために、本発明の例示的実施形態では、認められるパスパターンを識別して重み付けするトレーニング段階と、トレーニング段階で判定されたパスパターンの重みを使用して、単語の対間の類似性レベルを判定する類似性判定段階を必要とする。トレーニング段階では、類義語の対を入手し、各類義語の対についてその類義語の対をつなぐ最も顕著な対を識別する。このような各パスのパスパターンを抽出し、そのパスパターンが出現する頻度を計数する。この頻度をパスパターン頻度またはパスパターン重みと呼び、これは、各パスパターンの傾向を特徴化して、そのパスパターンを備えるパスによって結合される単語の類似性を表す。
【００６３】
類似性判定段階で、照合コンポーネント１０４は、類似性を判定する単語の対を入力として受け取り、その入力語の類似性を量的に判定する。照合コンポーネント１０４は、入力語間の最も顕著なパスを識別し、そのパスのパスパターンを抽出する。照合コンポーネント１０４は次いで、抽出された各パスパターンについてトレーニング段階で計数された頻度を判定し、それら頻度の平均を計算する。この平均頻度は、入力語の類似性の相対的な尺度を表す。これと同じプロセスを量的に適用して、同じ単語が有する２つの意味間の相対的類似性のレベルを判定することができる。
【００６４】
照合コンポーネント１０４が２つの単語間の最も顕著な意味関係パスを識別するのに使用する、顕著な意味関係パスジェネレータは、一例として、ある特定の主題領域を表す文書コーパスからその主題領域について自動的に編集される語彙知識ベースから最も顕著なパスを導出する。このような顕著な意味関係パスジェネレータの例示的実装の１つが、上記で参照した「IDENTIFYING SALIENT SEMANTIC RELATION PATHS BETWEEN TWO WORDS」という名称の米国特許出願第            号に詳細に記載される。
【００６５】
すなわち、現在MindNet LKBにない意味関係を現在LKBにある意味関係から推測することが可能な推測手順が開発されている。この手順も、上記で参照した文書、および「INFERRING SEMANTIC RELATIONS」という名称の出願に詳細に記される。これら文書はいずれも参照により組み込む。簡潔に述べると、この手順は、推測する関係内の単語間の上位パスを利用する。例えば、関係「watch-Means>telescope」がMindNet LKBにない場合は、まず「watch」と「telescope」の間のパスを見つけ、それらのパスを調べて、「telescope」との「Means」の関係に別の単語が出現するかどうかを確かめることによってその関係を推測することができる。別の単語が出現する場合は、上記のように、その単語と単語「watch」との類似性を判定する。この結果、単語「observe」がそのパスのその条件を満たすことが分かる。
【００６６】
watch-Hyp-observe>Means>telescope
【００６７】
したがって、「telescope」を「means」として「watch」することができるものと推測することができる。
【００６８】
以下では、概要の項の表１の右側に示した対応用語を用いて説明を進める。先に図３Ｂおよび３Ｃとの関連で挙げた例では、「cross」と「Germany」との論理的関係を推測する副次作用として、単語「Hitler」と「Germany」に類似性があることが判断される。したがって、単語「Hitler」は類似語、すなわち「simword」として識別される。この「cross」と「Germany」間の論理的関係の推測をブロック１４０のプロセスとして示す。
【００６９】
次いで照合コンポーネント１０４は、入力論理形式内に推測を行っていない論理的関係が残っているかどうかを判定する。これを図４Ａのブロック１４２に示す。まだ論理的関係がある場合、照合コンポーネント１０４は次の論理的関係を選択し(ブロック１４３)、入力論理形式内の各論理的関係にブロック１３８および１４０のステップを繰り返す。例えば、第２の論理的関係「cross-Lobj>border」を次に推測する。LKBでパス「cross-HypOf>invade-Lobj>border」が見つかると仮定すると、照合コンポーネント１０４は単語「cross」と「invade」の類似性分析を行い、２つの単語に類似性があることを発見し、したがって「invade」を別のsimwordとして分類する。
【００７０】
この例では、照合コンポーネント１０４は、単語「cross」と「time」の間には上位の重み付きパスを見つけず、論理的関係「border Locn-Poland」について１つの論理的関係「border-possessor>Poland」からなるパスを見つけると仮定する。これら２つの論理的関係は同じではないが、言い換えの関係にあると識別することができる。したがって、「border-Possr>Poland」という論理的関係は、入力論理的関係の構造的な言い換えと識別される。
【００７１】
次いで、先行するステップで識別されたsimwordを使用してこの検索を拡張する。したがって、例えば、照合コンポーネント１０４は、用語「cross」のsimword「invade」と「Germany」に代わるsimword「Hitler」を使用して、単一の論理的関係「invade Lsub>Hitler」からなるパスを識別する。さらに、用語「cross」と「invade」は類似性があると判断されているので、照合コンポーネント１０４は、単一の論理的関係パス「invade-Lobj>border」を識別する。さらに、照合コンポーネント１０４は、３番目のパス(「cross-Time>time」)については用語「invade」を「cross」の代わりとして、パス「invade>Time-１９３９-Hyp>time」を識別する。このようなsimwordを使用した検索の拡張を図４Ａのブロック１４４-１４９に表す。
【００７２】
簡単に述べると、ブロック１４４に示すように、入力論理形式中の第１の論理的関係を選択する。選択された論理的関係内にある２つの対応する単語のsimword間の上位n個のパスを見つける。これをブロック１４５に示す。次いで、ブロック１４０で識別されたsimwordを使用して、選択された論理的関係に推測手順を実行する。これをブロック１４６に示す。入力論理形式に論理的関係が残っている場合は次の論理的関係を選択し、処理はブロック１４５に戻る。これをブロック１４８および１４９に示す。入力論理形式に論理的関係が残っていない場合、処理はブロック１５０に進む。
【００７３】
simwordを使用した検索の拡張ステップと、論理的関係の推測ステップを完了すると、照合コンポーネント１０４は、各論理的関係の推測から得られた上位n個のパスを保持する。これを図４Ａのブロック１５０に示す。照合コンポーネント１０４は次いで、入力論理形式内の各論理的関係を推測することによって得られたパスの様々な組み合わせで構成された異なる出力論理グラフを作成する。これをブロック１５１に示す。出力論理グラフは、LKBを作成する際に論理形式に重み付けするのと同じ方式で重み付けをする(図２Ｃとの関連で詳細に説明している)。これをブロック１５２に示す。
【００７４】
上位m個の出力論理グラフを保持する。例えば、図４Ｃは、図４Ａに示す手順で得られる重み付けが最上位の論理グラフを表している。図４Ｃに示すグラフの構造は、図３Ｃに示すものと同形であることが分かる。どの論理グラフを保持するかを決めるために、重み付けの仕組みを使用する。本発明の一態様によると、論理グラフの重みには次の２つの要素が寄与する。(１)入力論理形式中の各論理的関係の推測によって得られるパスの重み、および(２)得られた論理グラフ内の論理的関係が同じ論理形式にあったかどうか。同じ論理形式にあった論理的関係を含む論理グラフは、より高い重みを有する。
【００７５】
照合結果の使用
ファジー照合を終えると、LKBの論理グラフから作成されたその結果得られる論理グラフは、所望のタスクを行うために使用できる、関連付けられたポインタまたはリンクを有することができる。そのタスクの一部を図４Ｄ-４Ｆに示す。
【００７６】
図４Ｄは、本発明の一実施形態による、情報検索動作アプリケーションを説明する流れ図である。図４Ｄに示す複数のブロックは図３Ａに示すものと同様であり、同様の番号をつけている。したがって、入力クエリを受け取り、その入力クエリに基づいてクエリの論理形式を生成する。これをブロック１２８および１３０に示す。次いで、「ファジー照合」を行い、クエリの論理形式とLKB中の１つまたは複数の論理グラフを照合する。これをブロック１３２に示す。ファジー照合が完了すると、照合コンポーネント１０４または別のコンポーネントは、(１)LKB内で一致した論理グラフの元となった実際のテキスト、(２)そのテキストを含む文書、または(３)LKB内の一致した論理グラフの元となったテキストまたは文書へのポインタ、を出力する。これをブロック１５４に示す。
【００７７】
テキスト入力は、文書全体をアナライザに供給して、類似する文書のクラスタに入れる文書クラスタリング操作を行うためにも使用することができる。同様に、このシステムは、「同様のものを見つける」タイプの操作を行うためにも使用することができる。この応用例では、テキストコーパスがアナライザに提供され、システムに類似タイプの文書を見つけるように求める要求が提供される。この他の応用例も同様に実装することができる。
【００７８】
図４Ｅは、機械翻訳タスクを行う際のシステム１００の動作を表す流れ図である。この応用例では言語Ａのテキスト入力を受け取り、それを言語Bに翻訳する。これをブロック１２８に示す。次いで、ブロック１２８で受け取ったテキスト入力に基づいて入力論理形式を生成する。これをブロック１３０に示す。入力論理形式と、言語Ａで生成されたLKB中の１つまたは複数の論理グラフとのファジー照合を行う。これをブロック１３２に示す。
【００７９】
この次には、複数のことを行うことができる。例えば言語ＡのLKBは、入力を言語Bに翻訳するための翻訳情報を含むことができる。したがって照合コンポーネント１０４は、LKB中の一致した論理グラフと関連付けられた、テキスト入力の言語Bへの翻訳を表す情報を出力する。あるいは、照合コンポーネント１０４は、言語BのLKB内の論理グラフへのリンクを出力することができ、この場合このリンクは言語ＡのLKBで一致した論理グラフと関連付けられる。このようにして、関連付けられた論理グラフの元となった言語Bのテキストを見つけることができる。このテキストは、翻訳する入力と同じ、あるいは似た意味を有する。これをブロック１５６に示す。さらに別の選択肢として、照合コンポーネント１０４は、言語BのLKBでポイントされる論理グラフの元となったテキストへのポインタを出力することができる。これをブロック１５８に示す。あるいは、照合コンポーネント１０４は、言語BのLKBでポイントされる論理グラフの元となった実際のテキストを出力することもできる。これは、実質的に言語Ａのテキスト入力の予備的な翻訳に相当する。これをブロック１６０に示す。この出力からより精製された翻訳を得るには、追加的な処置が必要となる場合もある。
【００８０】
図４Ｆは、自然言語インタフェースの応用例を示す別の図である。アプリケーションの中には、１つまたは複数のタスクを行い、自然言語の入力コマンドに基づいてそのタスクを行うように設計されるものがある。例えば、スケジュール管理アプリケーションは、自然言語の入力に基づいて予定を生成できる自然言語インタフェースを有するものがある。同様に、マルチメディアアプリケーションには、ユーザが自然言語入力を提供して、コンパクトディスクプレーヤを制御できる(コンパクトディスクを選んでそのディスクの所与の曲を再生するなど)ようにしたものもある。
【００８１】
アプリケーションプログラム開発者は、特定の動作を取らせるリンクをLKBに提供することができる。一例として、「I want to set up a meeting with John at noon.(ジョンとの面会を正午に設定したい)」という入力は、開発者による記述によって生成されたLKB論理形式「Someone [SCHEDULER] can schedule an appointment:[ACTIVITY] with someone [SCHEDULEE] at a time [TIME].(誰か[予定を立てる者]は、ある時間[時間]に誰か[予定を立てる相手]との面会[行動]をスケジュールすることができる)」と照合することが可能である。この一致はしたがって、スケジュール管理アプリケーションが面会の約束:「予定を立てる者=私」、「行動=面会」、「予定を立てる相手=John」、および「時間=正午」を構築するのに必要とする情報をアプリケーションに提供する。
【００８２】
したがって、このような実装を実現するには、ブロック１２８に示すようにまず自然言語のテキスト入力を受け取る。ブロック１３０に示すように、自然言語のテキスト入力に基づいて入力論理形式を生成し、その論理形式とLKBの１つまたは複数の論理グラフとの間でファジー照合を行う。これをブロック１３２に示す。この例示的実施形態では、照合システムからの出力は、アプリケーションフレームのスロットを埋めるのに使用される、照合した論理グラフからのリンクを含む単語である。これを図４Ｆのブロック１６２に示す。
【００８３】
図５は、本発明の一例示的実施形態により行われる別の技術を表す。この技術をここではプライミング(priming:下準備)と呼ぶ。プライミングは、LKB内の論理グラフが、ファジー照合プロセスで優先される(preferred)照合ターゲットとなるようにその重みを調整するのに使用される。このようにして、LKBは特定種類の入力を見込むように「プライミング」され、ファジー照合プロセスでは照合を識別するためにその領域周辺の言い換え空間にその検索を絞る。
【００８４】
例として、テキスト入力が、予定をスケジュールするコンピュータシステムへの自然言語入力であると仮定する。また、最初の自然言語入力が、「I want to schedule an appointment with John at noon.(ジョンとの面会を正午に予定したい)」であるとする。この入力に基づくと、照合プロセスでは、予定のスケジューリングに関連するLKB内の論理グラフとの照合を行うことになる。そこで、その論理グラフの重みをプライミングすなわち増大する。したがって、すぐ後に続く自然言語入力が「Make that in the library.(面会は図書館で)」であるとすると、照合プロセスでは、他の領域ではなく、スケジューラアプリケーションによる面会予定のスケジューリングに関連するLKB領域に的を絞る。この結果、「図書館」が面会の場所と解釈される可能性が高い。
【００８５】
プライミングプロセスは、図５に示す流れ図のように行うことができる。ブロック１７０に示すように、システムは最初のテキスト入力を受け取り、それを照合する。テキスト入力をLKB内のある領域と照合すると、LKBで照合した拡張パスまたは論理グラフの重みを偏りの量だけ増す。これをブロック１７２に示す。このように重みを増すことにより、特定タイプの入力を探すように効果的にLKBに偏りをつける。
【００８６】
次いで第２のテキスト入力を入手する。これをブロック１７４に示す。この第２のテキスト入力を処理して、偏りをかけた重みを有する、以前に照合した論理グラフを含むLKBと照合される第２の入力論理形式を得る。このように、このシステムは、重みが増加された論理グラフとの照合を優先的に行うことを実証している。これをブロック１７６に示す。第２の論理形式をLKBの論理グラフと照合すると適切な出力が提供される。例えば、上述の例示的実施形態では場所「図書館」を用いて面会予定を作成することができる。出力の提供をブロック１７８に示す。
【００８７】
図６は、本発明の一態様による、ファジー照合を行う別の実施形態を説明する流れ図である。まず照合コンポーネント１０４によって論理形式を得る。これをブロック２００に示す。
【００８８】
次いで、コンポーネント１０４によって入力論理形式中の開始点を識別する。これをブロック２０２に示す。開始点は、例えば入力論理形式中の各ノードの単語を調べることによって識別する。開始点は例えば「最も特有な」ノードでよく、特有性は任意数の適切な方式で判定することができる。特有性は例えば、テキストコーパスにおけるその単語の出現頻度、その単語が関係するLKB中の論理形式の数、その単語が有するsimwordの数、コーパス中のその単語とそのsimwordの合計頻度、その単語とそのsimwordが関係するLKB中の論理形式の総数、その単語が固有名詞であるかどうか、などに基づいて判断することができる。これらの方法あるいはその組み合わせを使用することができる。
【００８９】
開始点を識別すると、開始点として識別された単語がその論理形式のルートになるように入力論理形式を反転する。これをブロック２０４に示す。
【００９０】
次いで、新しいルートのすべてのsimwordを見つける。これをブロック２０６に示す。これも任意数の適切な方式で行うことができ、これには、シソーラスを使用してsimwordを見つける、上記のようにその単語が含まれるLKBの論理グラフを調べ、類似性パターンを論理グラフ中のパスに対して適用する、などがある。この方法の一部では、比較的多数のsimwordが得られることに留意されたい。したがって、いくつかの方式のいずれかでこの数に制約を加えることができ、これには、品詞によってsimwordとして識別される単語を限定する、密接に関連するデータから抽出された論理グラフへのパス形成を制限する(百科事典の同じ項目内に限るなど)、あるいは任意数の他の方式、がある。また、ルートノードに対して見つけるsimwordの数を拡大または制限するには、複数のsimword識別法およびヒューリスティックスを適用することができる。一例として、類似性の度合いによってsimwordにスコアをつけるが、これも任意数の適切な方式で行うことができる。類似性の度合いは、例えば、類似性を得るために適用する類似性パターンの重み、その類似性パターンが見つかったパスの重み、これら技術の組み合わせ、あるいは任意の他の適切な技術によって識別することができる。
【００９１】
入力論理形式のルート語およびそのsimwordを得ると、アルゴリズムは、その論理形式のルート語、またはそのsimwordの１つをそのルートとして有するLKB中の論理形式の候補セットを識別する。アルゴリズムは次いで、入力論理形式と、その候補セットの論理形式の照合を試みる。これをブロック２０８および２０９に示す。例示的実施形態では候補を順番に検索し、すなわち、入力論理形式中の元の単語を含む候補を最初に検索し、次いで最も類似性の高い単語を含む候補を検索し、次いでその次に類似性の高い単語を含むものを検索し、最後に最も類似性の低い単語を含む候補を比較する。言うまでもなく、十分な数の適切な照合を見つけると何時でも検索を終了することができるが、ここで適切な数とは、その合計スコアが何らかの定義された閾値を超える照合を意味することができる。
【００９２】
見つけた各論理形式について、入力論理形式中のノードにある単語と関係のタイプを調べ、それを、現在調べているLKBの論理形式のノードにある単語の関係のタイプと比較することにより、入力論理形式との照合を進める。
【００９３】
例示的な一実施形態では、論理形式のノードにある単語の照合は次のように行われる。入力論理形式の単語と、LKBの論理形式中の対応する単語とが同じであれば、その照合には完全なスコアを与える。下に挙げるものを含む(ただしこれに限定しない)その他の照合には、照合の度合いが下がるにつれてより低い値のスコアをつける。次のリストは、可能な単語照合のタイプのいくつかの例を示す。
【００９４】
１.入力論理形式のノードにある単語、またはLKBの論理形式のノードにある単語は、他の単語のサブコンポーネントと一致することができる(例えば、「Lincoln」が「President Lincoln」に照合するなど)。
【００９５】
２.疑問詞「who」は、「person(人)」のHypernymを有するか、または[+human]、[+first name]、[+last name]などの適切な特性を有する任意の単語と照合することができる。例示的な一実施形態では、これらの特性は、調べている論理形式の元となったテキストの解析中に識別される。
【００９６】
３.疑問詞「when」は、「time(時)」または「date(日付)」のHypernymを有するか、または[+time]、[+AM]、[+PM]、[+Date]などの適切な特性を有する任意の単語と照合することができる。
【００９７】
４.疑問詞「where」は、「place(場所)」のHypernymを有するか、または[+location]など何らかの適切な特性を有する任意の単語と照合することができる。
【００９８】
５.「how」、「what」、「why」などその他の疑問詞は、他の適切なHypernymまたは特性を有する単語と照合することができる。
【００９９】
６.「I」、「you」、「he」、「she」、「we」、「they」などの人称代名詞は、「person(人)」のHypernymを有するか、または[+human]、[+first name]、[+last name]などの何らかの適切な特性を有する任意の単語と照合することができる。
【０１００】
７.上に挙げるような特性を有する単語は、それと同じ、あるいは互換性のある特性を有する単語と照合することができる。
【０１０１】
８.人称代名詞は、それと同じ、または別の異なる人称代名詞と照合することができる。
【０１０２】
９.入力論理形式中の調べる単語と、LKBの論理形式の単語は互いに類似している可能性があるが、この類似性は上記の要領で判定し、スコアをつける。
【０１０３】
これらの照合の中には他の照合に比べて好ましくないものもあり、その相対的なスコアを相応に調整することができる。言うまでもなくスコアリングは複数の方式で決定することができ、例えば、言語学者の直感を使用して手動でセットする、あるいは機械学習アルゴリズム(例えばベイズネットワーク)を通じて学習する、収集した統計に基づく、などがある。
【０１０４】
関係タイプの照合は次のように行うことができる。入力論理形式中の関係タイプと、LKBの論理形式内の対応する関係タイプが同じである場合は、その照合に完全なスコアを与える。下記で挙げるものを含む(ただしそれに限定しない)その他の照合には、照合の度合いが下がるにつれてより低い値のスコアを与えることができる。次のリストは、可能な関連タイプのタイプの一部を示す。
【０１０５】
１.どの関係タイプも、その言い換えであると考えられる別の関係タイプと照合させることができる。例えば、特定の条件下では、LsubとLobjを互いの言い換えであるとみなすことができる。同様に、Locn、Possr、Partも、互いの言い換えとすることができる。
【０１０６】
２.関係タイプは、複数の関係タイプと、１つまたは複数の間にある単語を含む可能性のあるより長いパターンとも照合させることができる。例えば、X--LsubOf--have--Lobj--Yは、X--Possr--Yと一致させることができる。また、X--LsubOf--be--Lobj--Yは、X--Equiv--YまたはX--Hyp--Yと一致させることができる。
【０１０７】
これらの言い換えパターンは、異なるスコアを有することができる。言い換えパターンとそれに関連付けられたスコアは、いくつかの方式の１つで知ることができる。例えば、特定の関係タイプによってリンクされていることが知られている単語の対を使用して、コーパスをトレーニングすることができる(例えば、単語の対とその単語間の関係タイプを手動で調べてコーパスを作成することができる)。次いで上述のパスアルゴリズムを実行して、LKB内の各単語の対の間のパスをすべて得る。それらパス内の単語をリンクする関係タイプのパターンを使用して、どのパターンが最も確実にその２つの単語間の既知の関係タイプの言い換えを提供するかを知る。この技術では互いの類義語であることが分かっている単語間のパターンを見つける代わりに、任意の所望の関係タイプについてそのようなパターンを見つけるという点で、これは、上述の類似性パターンを見つける際に使用した方法を一般化したものであることに留意されたい。
【０１０８】
照合の検索が完了すると、単語と関係タイプ両方の照合についての個々のスコアをまとめることにより、入力論理形式とLKBの論理形式間の照合についての合計スコアを決定する。照合のない関係の単語には任意で低スコアを与える。これをブロック２１０に示す。例示的な一実施形態では、これらのスコアを単に乗算する(または、スコアの対数を加算する)。
【０１０９】
一例として、順序をつけた照合のリストを保持する。スコアが所望の閾値を上回る指定数の照合を見つけると検索手順は終了する。照合手順の出力は、LKB中で最もスコアが高い照合論理形式の照合部分のコピーである。言うまでもなく、上記のように、文書へのポインタなど、この照合した論理形式と関連付けられたアプリケーションタスクで助けとなるアプリケーション固有のデータ項目があってもよい。
【０１１０】
また、より多くの文章を処理できるように、図６に示す方法を何らかの用途のために精製することが可能であることに留意されたい。精製された方法では、節の境界で入力テキストを分割し、上記の照合技術を使用してそれぞれの節を個別に照合する。そして、それぞれの節の最良の一致を組み合わせて、すべての最良の一致のリストを提供する。
【０１１１】
あるいは、入力をアプリオリ（a priori）に分割する代わりに入力全体に照合技術を実行することができ、この実行後照合しない入力部分が残る。古い入力論理形式から、うまく照合した部分を除去することにより新しい入力論理形式を作成することができる。そして、この新しい(縮小した)入力論理形式に照合アルゴリズムを実行することができる。新しい照合が見つからなくなるまでこの手順を繰り返し適用することにより、複数の節がある大きな入力の全体を、LKB内の複数の論理形式(すなわち論理グラフ)と照合することができる。
【０１１２】
以上により、本発明のファジー照合プロセスの結果は、翻訳上の対応語句を識別するリンク、照合した論理グラフの元となったテキスト断片へのリンク、または固有のシステム動作へのリンクと関連付けられた、重み付けが高い論理グラフのセットであることが分かる。この照合プロセスは、入力論理形式とLKB中の論理グラフとの間に存在する豊富に相互の言語学的制約を活用する。
【０１１３】
具体的には、本発明は、言い換えの識別、単語の意味のあいまいさの除去、および会話インタフェースのカスタマイズを扱うことが見て取れる。本発明は、幅広い各種の用途に有益に実施することができる。
【０１１４】
好適実施形態を参照して本発明を説明したが、当業者は、本発明の趣旨および範囲から逸脱することなく形態および詳細に変更を加えることが可能であることを認識されよう。
【図面の簡単な説明】
【図１】  本発明を使用することのできるコンピュータシステムのブロック図である。
【図２Ａ】  本発明の一態様による簡略化したブロック図である。
【図２Ｂ】  本発明の一態様による図２Ａに示すシステムの動作を示す流れ図である。
【図２Ｃ】  現在知られる語彙知識ベースを入手する一実施形態を示す流れ図である。
【図２Ｄ】  反転した意味関係の構造である。
【図２Ｅ】  本発明の一実施形態による語彙知識ベースの一部を表す簡略化した図である。
【図３Ａ】  本発明の一態様による図２Ａに示すシステムの動作をより詳しく示すブロック図である。
【図３Ｂ】  本発明の一実施形態により形成されたテキスト入力のグラフ構造の図である。
【図３Ｃ】  本発明の一実施形態によるLKBに含まれるグラフ構造の図である。
【図４Ａ】  ファジー照合の実行をより詳細に示す流れ図である。
【図４Ｂ】  「pen」と「pencil」の間の重み付けが高いsemrelパスを示す図である。
【図４Ｃ】  図４Ａに示す手順で得られる重み付けが上位の一致した構造を示す図である。
【図４Ｄ】  情報検索、機械翻訳、および自然言語インタフェースについての図２Ａに示すシステムの動作を示す流れ図である。
【図４Ｅ】  情報検索、機械翻訳、および自然言語インタフェースについての図２Ａに示すシステムの動作を示す流れ図である。
【図４Ｆ】  情報検索、機械翻訳、および自然言語インタフェースについての図２Ａに示すシステムの動作を示す流れ図である。
【図５】  本発明の一態様によるプライミング動作を示す流れ図である。
【図６】  ファジー照合を実行する別の実施形態をより詳細に示す流れ図である。
【図１】
0004942901.tif 000003
【図２Ａ】
0004942901.tif 000004
【図２Ｂ】
0004942901.tif 000005
【図２Ｃ】
0004942901.tif 000006
【図２Ｄ】
0004942901.tif 000007
【図２Ｅ】
0004942901.tif 000008
【図３Ａ】
0004942901.tif 000009
【図３Ｂ】
0004942901.tif 000010
【図３Ｃ】
0004942901.tif 000011
【図４Ａ】
0004942901.tif 000012
【図４Ｂ】
0004942901.tif 000013
【図４Ｃ】
0004942901.tif 000014
【図４Ｄ】
0004942901.tif 000015
【図４Ｅ】
0004942901.tif 000016
【図４Ｆ】
0004942901.tif 000017
【図５】
0004942901.tif 000018
【図６】
0004942901.tif 000019