(57)【特許請求の範囲】
【請求項１】
テキスト分析機能を実現するためのプログラムコードを記憶するための記憶装置と、
入力文字列を受信する手段と、
前記記憶装置に記憶されたテキスト分析機能を実現するためのプログラムコードを用いて、入力文字列に対し、単語の基本形を分析する形態分析と、単語間の従属関係を分析する構文分析と、単語の意味を分析する意味分析と、を含む言語分析を実行することで、前記形態分析により生成した形態情報と、前記構文分析により生成した構文情報と、前記意味分析により生成した意味情報と、を含む言語情報を入力文字列から抽出し、さらに、当該言語情報を抽出した入力文字列のうち選択した部分を、少なくとも目的語、固有名詞を含む当該部分を抽象的に表示した抽象変数で置換する骨格化を実行するプロセッサと、
を有し、
前記プロセッサは、前記置換する処理を実行した入力文字列をデータベースに記憶することを特徴とするシステム。
【請求項２】
クエリを受信する手段をさらに有し、
前記プロセッサは、前記記憶装置に記憶されたテキスト分析機能を実現するためのプログラムコードを用いて、クエリに対し、前記形態分析と、前記構文分析と、前記意味分析と、を含む言語分析を実行することで、前記形態情報と、前記構文情報と、前記意味情報と、を含む言語情報をクエリから抽出し、さらに、当該言語情報を抽出したクエリのうち選択した部分を、少なくとも目的語、固有名詞を含む当該部分を抽象的に表示した抽象変数で置換する骨格化を実行し、
さらに、前記プロセッサは、前記置換する処理を実行したクエリを、前記データベースに記憶された文字列と比較することで、前記データベースからクエリに関連する文字列を検索することを特徴とする請求項１に記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は概して、例えば文章のような文字列の正規化表示を生成するシステムに関し、特に、文字列を第１言語から第２言語へ翻訳するための翻訳情報を提供するシステムに関するものである。
【０００２】
【従来の技術及び発明が解決しようとする課題】
大多数のアプリケーション、特に、翻訳メモリ、オーサリングメモリ、２ヶ国語オーサリングメモリ、インデックス付け等の範囲に含まれるアプリケーションは、文章のような文字列の正規化表示を使用するものである。重要な正規化表示のアプリケーションの１つは、翻訳システムにおける翻訳メモリである。これらの翻訳メモリは、テキストの言語ベースの正規化表示を記憶する。翻訳メモリレポジトリは、目標言語への翻訳に関連した文章または技術用語のようなテキストのセグメントを収集する。このようなレポジトリを利用すれば、翻訳者は、事前に記録されている翻訳に迅速にアクセスすることができる。これによって、翻訳に費やす労力、時間、費用を削減できる一方で、一貫性を向上させることが可能である。
【０００３】
翻訳メモリの機能はあいまいな整合を介して拡張することができる。このあいまいな整合とは、まだ翻訳処理していない入力セグメントと翻訳メモリに記憶されているセグメントとを、たとえ翻訳メモリ内のセグメントが入力セグメントと同一でなくても整合する技術である。整合処理中にあいまい整合を実行する一般的な方法は、事前定義した冠詞、接続詞等のような単語のセットを無視し、あるいは、事前定義した記号、特に句読点のセットを無視するものである。さらに、大文字および小文字、あるいは、数字のような特定の表現を正規化することができる。検索処理の整合ステップにおいて、その言語構造に関係なく、文字列セグメントを（命令された文字順序で）使用することが可能であり、また、特定数までの文字のミスマッチを許容できる。
【０００４】
検索システムは、ユーザが必要としている情報に関連したテキストまたはテキスト部分を検索するためのものである。一般に、テキストに含まれる関連情報は、正規化表示に従って構成および抽出される。このような表示は、その本来の言語形式からかけ離れて抽象化される。ユーザのデータベースクエリは一般的に、クエリ（問い合わせ文字列）の範囲を拡張するため、および／または、クエリシンタクスを解釈するため処理される。次に、テキスト中に含まれている特定の情報を検索するために、抽出したクエリ情報と記憶されている表示とが整合される。クエリに最も類似した様々なテキストユニットが、検索したテキストユニットとして出力される。
【０００５】
情報検索システムの検索パフォーマンスを評価するために、２つの基準、すなわち「コーリングレート（calling rate）」と「精度（precision）」を使用する。これらの基準は、検索する情報の関連性における主観的観点に基づいている。「コーリングレート（calling rate）」または「リコール（recall）」および精度（precision）は、以下のように定義される。
【０００６】
リコール（recall）は、データベースに記憶されている関連するテキストユニットの合計数に対する、検索した関連テキストユニットの数の比率であり、精度は、検索したテキストユニット数に対する、関連テキストユニットの数の比率である。通常、これら２つの基準の間にはトレードオフが存在する。情報検索では、これら２つの基準が最大値１に近似していることが望ましい。
【０００７】
本発明は上述の状況を考慮したものであり、また、本発明の第１の目的は、文字列の正規化表示を生成する方法および装置を提供することである。
【０００８】
本発明の別の目的は、データベースから検索した関連するテキストユニットの比率を増加させる方法および装置を提供することである。
【０００９】
本発明のまた別の目的は、高い精度で、データベースから情報を検索する方法および装置を提供することである。
【００１０】
本発明のさらに別の目的は、データベース内に記憶することができる正規化表示を生成する方法および装置を提供することであり、この正規化表示によって、情報検索システムの検索パフォーマンスが向上する。
【００１１】
本発明のさらにまた別の目的は、翻訳情報の検索パフォーマンスを向上させた翻訳システム用の翻訳メモリを提供することである。
【００１２】
本発明のさらに別の目的は、事前に翻訳したテキストユニットからの検索パフォーマンスを向上させた、翻訳情報の提供方法を提供することである。
【００１３】
【課題を解決するための手段】
本発明によるこれら、およびこれら以外の目的は、以降の説明から明らかになる。
【００１４】
これらの目的を達成するために、本発明は、テキスト分析機能を実現するためのプログラムコードを記憶するための記憶装置と、入力文字列を受信する手段と、前記記憶装置に記憶されたテキスト分析機能を実現するためのプログラムコードを用いて、入力文字列に対し、単語の基本形を分析する形態分析と、単語間の従属関係を分析する構文分析と、単語の意味を分析する意味分析と、を含む言語分析を実行することで、前記形態分析により生成した形態情報と、前記構文分析により生成した構文情報と、前記意味分析により生成した意味情報と、を含む言語情報を入力文字列から抽出し、さらに、当該言語情報を抽出した入力文字列のうち選択した部分を、少なくとも目的語、固有名詞を含む当該部分を抽象的に表示した抽象変数で置換する骨格化を実行するプロセッサと、を有し、前記プロセッサは、前記置換する処理を実行した入力文字列をデータベースに記憶する。例えば、形態分析、構文分析、意味分析を含む言語分析のために入力文字列を受信し、各入力文字列の第１表示を生成する。この第１表示の各々は、その意味に関連した例えば音声や単語のような符号といった言語情報を含んでおり、逆もまた同様である。第１表示の各々が骨格化され、その結果、各入力文字列について、関連する第２表示が生成される。骨格化は、言語情報を各第２表示内の抽象変数で置換する。次に、第２表示が、入力文字列の正規化表示として記憶される。
【００１５】
本発明の別の形態によれば、データベースから文字列を検索するための検索方法が得られる。データベースは、複数の文字列の正規化表示を備えている。この検索方法は、クエリを受信し、クエリの正規化表示を生成し、クエリの正規化表示を、データベースに記憶されている正規化表示と整合し、データベースから検出した最も類似した文字列を出力するステップを備えている。
【００１６】
さらに別の形態によれば、第１言語の文字列を第２言語に翻訳するための翻訳情報を提供する方法が得られる。翻訳情報は、第１言語における文字列と、事前に第２言語に翻訳された関連する文字列の複数の正規化表示に基づいている。翻訳情報を提供する方法は、第１言語における入力文字列を受信し、複数の正規化表示から第１言語における類似した文字列を検索し、検索した第１言語における文字列に関連した、第２言語における文字列に基づいた翻訳情報を出力するステップを備えている。
【００１７】
好ましい実施例では、言語情報を抽出する複数のオペレーティング機能から少なくとも１つのオペレーションを提供することにより、あるいは、抽出言語情報を概念化する機能を動作することにより、処理シーケンスに追加の処理ステップを適用することで、さらなる向上が達成される。
【００１８】
本発明の主要な用途は、インデックス付け、情報検索、翻訳メモリ、オーサリングメモリ、そして、人間が行い、機械編集した翻訳である。
【００１９】
添付の図面は、本発明の数例を例証するために、本願明細書中に組み込まれ、その１部を形成している。これらの図面と説明により、本発明の原理を説明する。図面は、本発明の製造および使用方法を示す好ましい例および代替例を例証することのみを目的とし、本発明を例証および説明した実施例のみに限定するものとして考慮されるものではない。以下の、添付の図面に示すとおりの本発明の様々な実施例のさらに特定的な説明から、さらなる特徴と利点が明らかになる。
【００２０】
【発明の実施の形態】
次に、図面を参照しながら、図面に示した本発明の実施例について説明する。
【００２１】
ここで図面、特に、情報検索システム１００の好ましい実施例を示した図1を参照する。このような情報検索システムは、翻訳情報を提供する１つの方法であろう。この検索システムには、テキスト処理ユニット１０１と、処理ユニット１０１から受信したテキストユニットの正規化表示を記憶するユニット１０２を含む「記憶ライン」が設けられている。このようなユニット１０２は、テキストユニットデータベース、特に、外国語補助としての翻訳システム内の翻訳メモリであってよい。
【００２２】
多くのデータベースが、データベース内で最も頻繁に要求される情報にインデックスを使用している。換言すれば、データベース内の各記録についての各分野の情報がインデックス付けされている。インデックスは、ポインタに関連した明確な属性レコード値のリストとして説明することができる。データベースの個々の分野をインデックス付けすることにより、インデックスフィールドへのクエリに対する応答時間が短くなる。好ましい実施例において、処理ユニット１０１は、複数のテキストユニットの正規化表示を、これらテキストユニットのインデックスとして作成する。
【００２３】
ユニット１０１における入力文字列またはテキストユニットの処理は、複数のテキスト分析機能に基づいている。本発明は、記憶、整合、検索テキストユニットのための表示スキームを提案する。一連の処理を使用して、様々な表示が生成される。本発明は、パートオブスピーチタグ付け、分類整理、構文的表記法または意味的表記法、骨格化（skeletisation）、そしてこれらの手法のあらゆる組み合せのような自然言語処理機能を使用する。正規化は、このような表示を生成するために使用される任意の処理である。
【００２４】
このような正規化を、以下のような文章を例にとって説明する。
【００２５】
Ｗｈｅｎ  ｙｏｕ  ａｒｅ  ｗｏｒｋｉｎｇ  ｗｉｔｈ  ｔｈｅ  ＨｏｍｅＣｅｎｔｅｒ  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ｔｈｅ  ｂｕｔｔｏｎｓ  ｔｏ  ｄｏ  ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ．
【００２６】
この例文を、以下に説明する処理の１つを用いて得た複数の異なるレベルの正規化によって正規化および表示することができる。
【００２７】
この例文に第１正規化処理を適用すると、個々の単語の形態可変性がその基本形に従って正規化される。単語をその基本形に従って正規化する１例を以下に示す。
【００２８】
"ｗｏｒｋｉｎｇ"が"ｗｏｒｋ"に正規化され、
"ｂｕｔｔｏｎｓ"が"ｂｕｔｔｏｎ"に正規化される。
【００２９】
さらに、各単語に対して好ましく一義化された構文カテゴリが当てはめられる。構文カテゴリはコンテキスト分析に基づいて決定される。上述の例文の各単語に以下に示す例を当てはめることもできる。
【００３０】
"ｕｓｅ"は「動詞」として認識され、
"ＨｏｍｅＣｅｎｔｅｒ"は「固有名詞」として認識され、
"ｂｏｔｔｏｎｓ"は「複数名詞」として認識される。
【００３１】
上述の正規化オペレーションに基づいて、特定の言語ユニット、いわゆるタグが各単語に割り当てられる。このような「パートオブスピーチ」タグは、構文カテゴリ「動詞」を示す＋ＶＢであってよい。例えば、"ｕｓｅ"を＋ＶＢで、"ＨｏｍｅＣｅｎｔｅｒ"を固有名詞を表す＋ＰＮで、"ｂｕｔｔｏｎｓ"を複数名詞を示す＋ＮＮＳでタグ付けすることができる。
【００３２】
【表１】
0004658420.tif 000002
【００３３】
上の表１は、例文に関連したＰＯＳ（パートオブスピーチ）タグ付けの結果を示している。単語間の整合技術は、この正規化情報を用いて、各単語の実際の形式に関係なくテキストユニットの単語を整合することができる。このアプローチに基づけば、副詞または形容詞を無視することができ、また、両シーケンスに特定の文字列部分の相違があるとしても、テキストシーケンス間の整合を成功させることができる。このような相違は、"ｕｓｅ  ｔｈｅ  ｂｕｔｔｏｎｓ"および"ｕｓｅ  ｏｎｌｙ  ｔｈｅ  ｒｅｌｅｖａｎｔ  ｂｕｔｔｏｎ"であろう。上述のアプローチを用いれば、両方の文字列を整合できる。
【００３４】
パーシング（parsing）はさらなる正規化オペレーションである。パーサが、サブ文字列（例えばフレーズ、チャンク）に分割された文字列の構成と、サブ構造間の関係を示す構文情報を抽出する。
【００３５】
上述した所与の例文をパーシングすることで、以下に示すような正規化表示が得られる。
【００３６】
結果として、サブ文字列"ｗｈｅｎ  ｙｏｕ  ａｒｅ  ｗｏｒｋｉｎｇ  ｗｉｔｈ  ｔｈｅ  ＨｏｍｅＣｅｎｔｅｒ"が従属節として認識されることを示している。従属節は"ｗｈｅｎ"によって導入されている。"Ｗｈｅｎ"従属節の始めと終わりは、例えば"ＳＣ＿ＷＨＥＮ"のようなマーカで示されている。不定詞節は、マーカ"ＩＶ"で囲まれている。さらに、上述の例は従属関係をいくつか示しており、これについて以下に詳細に説明する。
【００３７】
構文分析も、選択した事前定義された関係について抽出したサブ文字列間の明確な従属関係を示している。上述の第1例文を表す構文情報にあるように、"ｙｏｕ"は動詞"ｗｏｒｋ"の主語として示されている。さらに、用語"ｂｕｔｔｏｎ"は単語"ｕｓｅ"の目的語として示されている。表現"ｔａｓｋ"は単語"ｄｏ"の目的語として示されている。表現"ＨｏｍｅＣｅｎｔｅｒ"は、動詞"ｗｏｒｋ"を修飾するものとして示されている。このような従属関係は以下のようにも示すことができる。
【００３８】
ＳＵＢＪ（ｙｏｕ，ｗｏｒｋ）
ＳＵＢＪ（ｙｏｕ，ｎｅｅｄ）
ＯＢＪ（ｕｓｅ，ｂｕｔｔｏｎ）
ＯＢＪ（ｄｏ，ｔａｓｋ）
ＶＭＯＤＯＢＪ（ｗｏｒｋ，ｗｉｔｈ，ＨｏｍｅＣｅｎｔｅｒ）
【００３９】
このような関係は、実際の表面的な実現に関係なく、文章の共通の構文構造間の整合を見つけるために使用することができる。別の文章の整合処理の成功例を次に示す。
【００４０】
（ａ）  Ｔｈｅ  ｐａｒｔｓ  ｍｕｓｔ  ｂｅ  ｒｅｐｌａｃｅｄ  ｂｙ  a ｑｕａｌｉｆｉｅｄ  ｔｅｃｈｎｉｃｉａｎ．
（ｂ）  Ｏｎｌｙ  ｑｕａｌｉｆｉｅｄ  ｔｅｃｈｎｉｃｉａｎｓ  ｍａｙ  ｒｅｐｌａｃｅ  ｔｈｅ  ｐａｒｔｓ．
【００４１】
上述した両例文において、"ｔｅｃｈｎｉｃｉａｎ（ｓ）"は、動詞"ｒｅｐｌａｃｅ"の主語であり、用語"ｐａｒｔｓ"は動詞"ｒｅｐｌａｃｅ"の目的語である。
【００４２】
文字列、例えば文章の正規化についても、分類的関連および意味的関連を用いることができる。このような意味的関連は、１つの単語から、より一般的な意味を持つ上位語との接続、同義語との接続から、あるいは、同じ上位語についてのさらに専門的な別の用語との接続からも作成することができる。このような意味的関連は、"ｊｅｔ  ｐｌａｎｅ"と"ｃｉｖｉｌ  ａｉｒｃｒａｆｔ"の間、または"ｃａｔｔｌｅ"、"ｂｒｅｅｄｅｒ"及び"ｆａｒｍｅｒ"の間に存在する。
【００４３】
意味的正規化は、前から存在している言語リソース、例えばオントロジー、類語辞典、術語データベースや、意味的一義化処理に依存している。意味的関連を生成するオペレーションを採用することにより、上述した第１例文を、次に示す意味タグで注釈することができる。
【００４４】
Ｗｈｅｎ  ｙｏｕ  ａｒｅ  ｗｏｒｋｉｎｇ［ＷＯＲＫ＿ＰＲＯＣＥＳＳ］ｗｉｔｈ  ｔｈｅ  ＨｏｍｅＣｅｎｔｅｒ［ＭＡＣＨＩＮＥ］  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ｔｈｅ  ｂｕｔｔｏｎｓ［ＰＡＲＴＳ］  ｄｏ  ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ．
【００４５】
上述の言語処理は、レベルの異なる抽象名辞に関連し、増加する複雑性の情報を提供する。さらに、本発明の表示スキームは、別のタイプのオペレーション、つまり「骨格化」を利用する。骨格化は上述のような言語処理の出力上で動作し、別レベルの抽象名辞を提供する。より正確には、骨格化は、選択した言語ユニットを、抽象変数によって置換する。
【００４６】
例えば、表面的なパーサ（shallow parser）の出力上で動作し、直接目的語、固有名詞、技術用語にかけて抽象化する骨格化は、以下に示す第１例文の正規化表示を生成する。
【００４７】
Ｗｈｅｎ  ｙｏｕ  ａｒｅ  ｗｏｒｋｉｎｇ  ｗｉｔｈ＜ＰＲＯＰＥＲ１＞，ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ＜ＯＢＪ１＞  ｔｏ  ｄｏ  ＜ＯＢＪ２＞．
【００４８】
上述の例において、２つの直接目的語"ｔｈｅ  ｂｕｔｔｏｎｓ"および"ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ"は、インデックス変数ＯＢＪ１、ＯＢＪ２によって置換される。さらに、表現"ＨｏｍｅＣｅｎｔｅｒ"は、変数ＰＲＯＰＥＲ１によって置換される。
【００４９】
また、様々な言語パラメータに基づいた異なる骨格化スキームを使用することもできる。別の例では、副詞節を抽象化することができる。このような節は、第１例文中の"ｗｈｅｎ−ｃｌａｕｓｅ"である。このような骨格化処理により、次に示す複文の表示が得られる。
【００５０】
＜ＷＨＥＮ＿ＣＬＡＵＳＥ＞  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ｔｈｅ  ｂｕｔｔｏｎｓ  ｔｏ  ｄｏ  ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ．
【００５１】
使用可能な別タイプの骨格化オペレーションに加えて、オペレーションを複合オペレーションに組み込むことが可能である。上述において提案した骨格化オペレーションの両方を組み合わせて、次に示す表示を生成することができる。
【００５２】
＜ＷＨＥＮ＿ＣＬＡＵＳＥ＞  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ＜ＯＢＪ１＞  ｔｏ  ｄｏ  ＜ＯＢＪ２＞．
【００５３】
骨格化は、関数Ｓｋｅｌ（ｘ、Ａｂｓｔｒ、Ｆｉｌｔｅｒ（ｘ））としてより一般的に見ることができる。この関数において、"ｘ"は入力文字列に接続した言語表示であり、"Ａｂｓｔｒ"は"ｘ"内で抽象化される言語ユニットのセットであり、また、出力内での表示形態であり、"Ｆｉｌｔｅｒ（ｘ）"は、ｘの非抽象要素が再度書込みされる形態（例えば翻訳）を指定するものである。デフォルトにより、"Ｆｉｌｔｅｒ（ｘ）"が、両骨格化関数の表示例に示したような非抽象表面形式のシーケンスを生成する。
【００５４】
上述の骨格化処理は、このような骨格化関数によって定義することができる。最初に説明した骨格化オペレーションは、直接目的語、固有名詞、技術用語を抽象化することを目的としたものである。この骨格化関数は、関数Ｓｋｅｌ（ｘ、[ＯＢＪ、ＰＮ]、）によって説明することができる。この関数は、ＯＢＪまたはＰＮでマーキングした文のいくつかの部分を抽象化する一方で、同文の別の要素を不変のまま残すことを示している。
【００５５】
２番目に説明した骨格化処理は、次に示す骨格化関数Ｓｋｅｌ（ｘ、[ＷＨＥＮ＿ＣＬＡＵＳＥ]、）で説明することができる。最後に説明した、最初の２つを組み合せた骨格化手順は、Ｓｋｅｌ（ｘ、[ＯＢＪ、ＰＮ、ＷＨＥＮ＿ＣＬＡＵＳＥ]、）と説明できる。
【００５６】
選択した特定タイプの単語のみを抽象化するために、抽象化する言語ユニットをより詳細に指定することができる。例えば、女性目的語（female object）のみを抽象化することが可能である。このような骨格化関数は、抽象パラメータをＯＢＪ＆Ｆｅｍとして指定するパラメータを備えている。パラメータ"Ａｂｓｔｒ"は、文中の用語を置換するために、変数のタイプを直接指定する。このような変数の各々は、その文字列または文中での発生位置に従ってインデックス付けされる。従って、第１直接目的語は、この変数を独自に識別するために、ＯＢＪ１とマーキングされる。
【００５７】
この骨格化処理は、使用する言語表示に大きく依存する。上に挙げた例は、本発明の範囲を示すことのみを目的としている。当業者には、上述の所与例に基づいて複数の異なる骨格化関数が理解できるであろう。
【００５８】
複数の正規化機能を実行する場合、その各々から、入力文についての異なる表示が得られる。正規化手順は、様々な形で組み合せることができる。各入力文は採用した正規化手順によって提供された１つの表示セットとして保存できる。第１例文を、次に示す３つの表示のシーケンスで保存することができる。
【００５９】
基本形とパートオブスピーチタグ付け：
１．  Ｗｈｅｎ＋ＷＲＢ  ｙｏｕ＋ＰＰＳＳ  ｂｅ＋ＢＥＲ  ｗｏｒｋ＋ＶＢＧ  ｗｉｔｈ＋ＩＮ  ｔｈｅ＋ＡＴ  Ｈｏｍｅｃｅｎｔｅｒ＋ＮＰ  ｙｏｕ＋ＰＰＳＳｍａｙ＋ＭＤ  ｎｅｅｄ＋ＶＢ  ｔｏ＋ＴＯ  ｕｓｅ＋ＶＢ  ｔｈｅ＋ＡＴ  ｂｕｔｔｏｎ＋ＮＮＳ  ｔｏ＋ＴＯ  ｄｏ＋ＤＯ  ｏｎｅ＋ＣＤ  ｏｒ＋ＣＣ  ｍｏｒｅ＋ＡＰ  ｔａｓｋ＋ＮＮＳ  ．＋ＳＥＮＴ
【００６０】
２．  Ｗｈｅｎ＿ｃｌａｕｓｅｓにかかる抽象名辞
＜ＷＨＥＮ＿ＣＬＡＵＳＥ＞  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ｔｈｅ  ｂｕｔｔｏｎｓ  ｔｏ  ｄｏ  ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ．
【００６１】
３．  Ｗｈｅｎ＿ｃｌａｕｓｅｓおよび目的語にかかる抽象名辞
＜ＷＨＥＮ＿ＣＬＡＵＳＥ＞  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ＜ＯＢＪ１＞  ｔｏ  ｄｏ  ＜ＯＢＪ２＞．
【００６２】
既に述べたように、所与の文は、異なる言語処理と使用の骨格化関数に従い、多くの異なる表示のシーケンスから得られたものである。次に、適切な骨格化関数、または骨格化関数のシーケンスの選択について説明する。
【００６３】
Ｓｋｅｌ（ｘ、Ａｂｓｔｒ、Ｆｉｌｔｅｒ（ｘ））の形式において、"Ａｂｓｔｒ"は、文字列つまり文章ｘ内の、抽象化される要素、すなわち変数で置換される要素を定義する。変数で置換する要素は、語彙ユニット、フレーズ、節、または、抽象化されるべきあらゆるテキスト要素であってよい。
【００６４】
以下の説明では、骨格化関数の結果として用語「骨格（skeleton）」が使用される。
【００６５】
骨格を、その概念化の度合いによってランク付けすることができる。Ｓｋｅｌ１＝Ｓｋｅｌ（ｘ１、Ａｂｓｔｒ１、Ｆｉｌｔｅｒ（ｘ））、Ｓｋｅｌ２＝Ｓｋｅｌ（ｘ２、Ａｂｓｔｒ２，Ｆｉｌｔｅｒ（ｘ））と仮定すると、Ｓｋｅｌ１はＳｋｅｌ２よりも概念化の度合いが低い。Ｓｋｅｌ２によって生成されたこれらの表示は、Ｓｋｅｌ１に従って置換される要素を含んでいる。このような異なる概念化度合いの１例を、次の例で示す。この例では、骨格（ｂ）は骨格(ａ)から生成することができるために、骨格(ａ)が骨格（ｂ）よりも概念化の度合いが高い。
【００６６】
(ａ)  ＷＨＥＮ＿ＣＬＡＵＳＥ  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ＩＮＦ＿ＣＬＡＵＳＥ１  ＩＮＦ＿ＣＬＡＵＳＥ２
（ｂ）  ＷＨＥＮ＿ＣＬＡＵＳＥ  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅＮＰ１  ｔｏ  ｄｏ  ＮＰ２
【００６７】
骨格化関数は、以下のオーダリング属性に基づくその概念化の度合いに従ってランク付けすることができる。Ａｂｓｔｒ１⊆Ａｂｓｔｒ２である場合、抽象化する要素のエンプティでない"Ａｂｓｔｒ１"と"Ａｂｓｔｒ２"の任意のセットについて、Ｓｋｅｌ１で得た全ての骨格は、Ｓｋｅｌ２で得た骨格よりも概念化の度合いが低い。そのため、骨格化関数Ｓｋｅｌ１は、骨格化Ｓｋｅｌ２よりも概念化の度合いが低い。
【００６８】
異なるスキームを使用して、正規化表示のシーケンスを効率的に示す、また、選択することが可能である。以下に示す２進ツリー形式による表示の提案は、本発明の特定の１実施例である。しかし、当業者には、この他にも所与の例に基づいた複数の表示が可能であることが明らかであろう。
【００６９】
上述のオーダリング属性を使用する場合、骨格化関数のシーケンスを、２進ツリーを用いて示すことができる。このような２進ツリーの各ノードは、骨格化関数を示している。２進ツリー中の非端末ノードの各々は、２つの降順、すなわち左の枝と右の枝に分岐する。左の枝は、エンプティでない骨格化関数の適用を表し、その一方で、右の枝は、識別関数"ｉｄｔｙ"を表す。この識別関数"ｉｄｔｙ"により、入力が不変のまま残る。そのため、識別関数をエンプティ骨格化関数（すなわち、Ａｂｓｔｒがエンプティである骨格化）とみなすことができる。
【００７０】
次に実行される骨格化関数のシーケンスは、２進ツリー内のパスによって示される。このようなパスは、ツリーの頂部から始まり、複数のノード（骨格化オペレーション）を介して端末モードへとつながっている。
【００７１】
次に、図５に関連した例について説明する。次の２つの文は、骨格化オペレーションのシーケンスに従うものであると仮定する。
【００７２】
（１）  Ｗｈｅｎ  ｙｏｕ  ａｒｅ  ｗｏｒｋｉｎｇ  ｗｉｔｈ  ｔｈｅ  ＨｏｍｅＣｅｎｔｅｒ  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｏ  ｕｓｅ  ｔｈｅ  ｂｕｔｔｏｎｓ  ｔｏ  ｄｏ  ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ．
（２）  Ｗｈｅｎ  ｙｏｕ  ａｒｅ  ｗｏｒｋｉｎｇ  ｗｉｔｈ  ｔｈｅ  ＨｏｍｅＣｅｎｔｅｒ  ｙｏｕ  ｍａｙ  ｎｅｅｄ  ｔｈｅ  ｍａｎｕａｌ  ｔｏｄｏ  ｏｎｅ  ｏｒ  ｍｏｒｅ  ｔａｓｋｓ．
【００７３】
次に示す要素は変数によって置換される。
【００７４】
ＷＨＥＮ＿ＣＬＡＵＳＥ
ＩＮＦ＿ＣＬＡＵＳＥ（不定詞節）
ＮＰ（非複数）
ＶＩＮＦ（動詞、不定詞）
【００７５】
上に列挙した２つの例文についての骨格化オペレーションに基づき、図５の２進ツリーは骨格化関数のシーケンスを示すことができる。明確性のために、図５ではこのツリーの１部分のみを示している。
【００７６】
両文章、つまり文章１、２は、上述の骨格化機能の全セットを用いて抽象化されるため、ツリーの最も左のノード上に現れる。これらの表示を、所与の骨格化関数のセットに基づいてこれ以上抽象化することが不可能である旨を示すべく、このようなノードをマーキングすることができる。
【００７７】
これらのノードは、２進ツリー内にある任意の所与のノードＮについて、所与のノードＮの上または右に配置されており、また、深さがＮの１つよりも浅いか、あるいはこれと等しく、Ｎと等値であるノードのセットを定義する。
【００７８】
より特定の実施例では、抽象化するテキスト要素のセットを、文中に正確な順番で表されなくてはならない要素から成る第１部分と、文中のあらゆる箇所に表すことができる要素から成る第２部分との２つの部分に分割することが可能である。
【００７９】
上述の２進ツリー表示は、説明したオーダリング属性から引き出すことができる多数の内の１つに過ぎない。
【００８０】
文章への骨格の選択は、正規化手順の適用目的によって異なる。翻訳メモリに適した骨格が、検索または単一言語オーサリングに適しているとは限らない。検索用途では、保存された骨格化関数が文章のセットを効率的に区分することで、類似の文章の検索に要するステップをごく少数にすることが重要である。そのため、最良入力文章を識別し、また、関連する骨格化関数が少数の文章のみに該当する際に、文章の骨格化を停止する骨格化関数を選択するべきである。別タイプの用途に対しても、これと類似した考察を用いなければならない。オペレーション関数、特に骨格化関数の選択とその順序は、機械学習によって実行される。
【００８１】
再び図１を参照すると、情報検索システム１００の構造はさらに、クエリを初期化し、そのクエリについて正規化表示を生成するためのクエリ初期化ユニット１０４を具備した「サーチライン」を備えている。初期化ステップにおいて、クエリは、ユニット１０４により、テキストユニットについて説明した方法と同じ方法１０３を用いて、正規化表示に変換される。整合ユニット１０６が実行した検索オペレーションの結果は、検索された文字列として出力される。
【００８２】
図２に示すように、本発明によるコンピュータシステム２００は、プロセッサ２０１と、プロセッサ２０１に接続したメイン記憶装置２０２とを備えている。プロセッサはさらに、ユーザがデータベースクエリを入力するための入力ユニット２０３と接続している。クエリの結果は、ディスプレイユニット２０４に表示されるか、あるいはプリンタ２０５を介して印刷される。情報は、コンピュータシステム２００に記憶されているデータベース２０６から検索される。このデータベースは、コンピュータシステムのハードディスク、またはＣＤ、ＤＶＤのような特定の記憶媒体、もしくはテープレコーディング媒体上に提供される。あるいは、データベース２０６を、データ送信ネットワークを介してコンピュータシステムと接続した遠隔地に記憶することも可能である。さらに別の代替例では、データベース２０６は、ネットワークで高速接続した複数のコンピュータに記憶されたテキストを備えることができる。
【００８３】
プロセッサ２０１は、クエリの処理の他に、文章の処理に使用することもできる。プロセッサ２０１はさらに、シソーラスメモリ２０７を使用してもよい。シソーラスメモリは、用語、または複数の用語間の意味関係を提供する。全ての当業者は、本発明による方法および装置の用途が特定のメモリに限定されるものでないことを理解するであろう。メモリ２０６、２０７の全部品は、１つのメモリ内の明確な範囲として実現することができる。当業者はさらに、コンピュータシステム２００が、動作およびアプリケーションプログラム１０１、１０４、１０６、データ１０２、１０３、１０５のようなプログラムコードを記憶するためのメイン記憶装置２０２を備えることが好ましいということを理解するであろう。さらに、文字列またはクエリを処理するために、プロセッサ２０１がプログラムコードを実行することも当業者は理解するであろう。コンピュータ２００は、プロブレムコードおよびデータメモリを永久に記憶するために、ハードディスクドライブ、フレキシブルディスクドライブのような外部メモリを備えることが好ましい。
【００８４】
コンピュータシステム２００はさらに、文章中にある用語間の意味関係を抽出するために、パーシングユニット２０８を備えることができる。あるいは、パーシングユニット２０８を、プロセッサ２０１によって実行されるアプリケーションプログラムとして設けてもよい。
【００８５】
次に、図３、図４に示すフローチャートを参照しながら、情報検索処理についてより詳細に説明する。
【００８６】
図３は、情報検索システムの一般的なステップを示している。まず、文字列処理ステップ３０１で、データベース内の全ての文字列またはテキストユニットについて正規化表示が生成される。文字列処理の詳細を図４に示す。
【００８７】
データベースから文字列検索を行うには、ユーザは、所与の入力情報に関連したこれらの文字列を見つけるために、データベースクエリを入力する必要がある。ステップ３０２において、受信されたクエリが、データベースに記憶されているデータと比較可能な形式にするために、コンピュータシステム２００内で処理される。
【００８８】
検索を行うには、クエリを、記憶されているデータと比較する必要がある。ステップ３０３における文字列の検索は、データベースクエリに関連した各文字列の類似性に基づいて行われる。ステップ３０４において、翻訳バージョンを含んでいてよい検索情報が、データベースクエリに関連した各文字列の関連性に基づいて、ユーザに提示される。
【００８９】
図４は、本発明によるデータベースを得るための、文字列、つまりテキストユニットまたは文章の処理をより詳細に示す。ナレッジ表示方法、すなわちデータベースのアーキテクチャは、本発明の必須形態である。全ての当業者は、特定のナレッジ表示、およびこのようなナレッジ表示の生成方法が文書検索アプリケーションに限定されるものではなく、むしろ、これらはナレッジ抽出、翻訳情報装置等の基本であることを理解するであろう。
【００９０】
まず、ステップ４０１において、上述のように入力文章から言語情報が抽出される。言語情報は形態情報、構文情報、意味情報と、これらを一義化する方法を含んでいる。抽出した情報に基づいて、正規化表示が生成される。
【００９１】
このような正規化手順は、異なる形態に関連して複数回実行することができる。オペレーションのシーケンスを実行した結果、概念化の度合いの異なる、関連した複数の正規化表示が得られる。
【００９２】
さらに、ステップ４０２に示すように、単数または複数の正規化表示に対して、骨格化オペレーションが適用される。骨格化オペレーションは、情報検索処理中により優れた整合を得るべく、文字列または文章の特定の要素を変数で置換する。このような変数は、整合させるテキストユニットまたは文章中で元々使用されている特定のテキスト要素に関係なく、別の文章の関連する変数と整合する。
【００９３】
言語抽出ステップと骨格化ステップから得られた正規化表示の各々（または選択したもののみ）は、特定の文章、例えば文字列１０２と共に記憶される。
【００９４】
このようなデータベースを用いれば、記憶されている関連情報への向上したアクセスに基づいて、情報検索および翻訳情報の提供を向上することができる。
【図面の簡単な説明】
【図１】  情報検索システムの構成を示すブロック図である。
【図２】  コンピュータシステムのブロック図である。
【図３】  情報検索方法を示すフローチャートである。
【図４】  図３に示した処理のテキストユニット処理ステップをより詳細に示すフローチャートである。
【図５】  異なる骨格化関数を示すために使用した２進ツリーの例である。
【符号の説明】
１００  情報検索システム、１０１  テキスト処理ユニット、１０２  入力文字列の正規化表示、１０３  テキスト分析機能、１０４  クエリ初期化ユニット、１０５  クエリの正規化表示、１０６  整合ユニット、２００  コンピュータシステム、２０１  プロセッサ、２０２  メイン記憶装置、２０３  入力ユニット、２０４  ディスプレイユニット、２０５  プリンタ、２０６  データベース、２０７  シソーラスメモリ、２０８  パージングユニット、３０１  文字列処理、３０２  クエリ処理、３０３  文字列の検索、３０４  検索した文字列の表示。
【図１】
0004658420.tif 000003
【図２】
0004658420.tif 000004
【図３】
0004658420.tif 000005
【図４】
0004658420.tif 000006
【図５】
0004658420.tif 000007