説明

用語の対応を見出す方法、プログラム及びシステム

【課題】 ランダムウォークの技法を用いて、多数の用語を対象としても妥当な計算量で異言語の単語集合を列挙することが可能な技法を提供すること。
【解決手段】 第1の言語(例えば日本語)の専門用語集合と、第1の言語の一般用語集合と、第2の言語(例えば英語)の専門用語集合と、第2の言語の一般用語集合とを生成する。次に、第1の言語と第2の言語それぞれにおいて、同一言語の専門用語集合と一般用語集合の間に、コーパスの情報に基づきリンクで結び、2部グラフを生成する。次に、異なる言語の一般用語の対訳辞書(例えば、英和辞書)で一般用語間のリンクを生成し、異なる言語の一般用語間で2部グラフを連結する。次に、同一言語内、及び異なる言語間の2部グラフのリンクの重み付けされた情報に基づき、関連度行列Mを生成する。次に、Q=(1-c)(I-cM)-1という、類似度行列Qを計算する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、コンピュータ可読な情報として提供された既存の文書情報に基づき、文書に含まれる単語または用語の間の対応関係を作成する技法に関し、より詳しくは、異なる外国語の文書に含まれる単語または用語の間の対応関係を作成する技法に関する。
【背景技術】
【0002】
従来より、異なる言語の間で文書を翻訳したり、あるいは多言語のデータを活用するために、目的に応じた適切な対訳・関連表現を把握することが必要とされている。このためには、異なる言語間で単語または用語の間の対応関係を見出す必要があるが、よく使われる単語や用語の場合、既存の辞書を活用することができる。
【0003】
ところが、専門用語となると、同一言語内での一般用語と専門用語の対応を示す辞書は用意されていることは少なくないが、異なる言語間の辞書を見出すことは困難である。例えば、自動車分野をみてみると、日本語の「ハンドル」が自動車のデータにおいては、英語の「steering wheel」に相当し、データ次第では「handle」に相当する。これらの対訳語・関連語は日本語−英語だけでなく、他の言語ペアにおいても作成する必要がある。
【0004】
専門用語において、異なる言語間の辞書が整備されていない理由は、そのような辞書を用意する作業には、言語知識に加えて専門分野の知識も必要であるため、実現可能なスキルセットを有する人が少ないからである。また、意味が通じる翻訳では不十分であり、実用レベルなものとするためには、対象データにおいて、実際に用いられている表現から翻訳を選ぶ必要がある。このような対応を作成することは、莫大なコストと時間がかかり、各場合に対してこのような方法で対訳語・関連語を作成するのは極めて非効率的である。
【0005】
この分野の従来技術の特許文献として、下記のものがある。
特開2002−91965号公報は、複数のユーザが利用する自然言語処理装置に設けられる辞書装置に関し、カテゴリー毎の複数の専門用語辞書を、一般用語辞書をルートノードとしたツリー構造で階層化している辞書本体と、任意の専門用語辞書に関連付けて、ユーザ辞書を設定させるユーザ辞書登録手段と、自然言語処理対象のカテゴリーが指示された際に、そのカテゴリーの専門用語辞書から一般用語辞書に至るツリー構造の経路上にある全ての専門用語辞書と、それら専門用語辞書に関連付けられている、処理依頼ユーザのユーザ辞書の全てを適用する辞書に決定する適用辞書決定手段を有するシステムを開示する。
【0006】
特開2002−269085号公報は、単語グラフ生成部と、単語グラフメモリと、検索選択部を有する機械翻訳装置に関し、単語グラフ生成部は、入力される文字列からなる原言語の文に対して、原言語の少なくとも1つの表現に対して少なくとも1つの目的言語の表現の複数の対を含む対訳辞書を参照して、原言語の表現と照合して一致する言語表現に対応する目的言語の表現を抽出し、目的言語の表現の組み合わせを単語グラフの形式で生成して単語グラフメモリに格納する。検索選択部は、目的言語のコーパスデータを参照して、単語グラフメモリに格納された単語グラフ上の単語列とコーパスデータとを照合して単語グラフ上の単語に対するコーパスデータ内での出現頻度を計数することにより、原言語の文に対応する目的言語の訳文のスコアを計算し、計算されたスコアに基づいて最適な目的言語の訳文を選択する。
【0007】
特開2004−280316号公報は、文書データが属する分野を判定し、更には、判定された分野の専門的な辞書や学習データを用いて当該文書データを言語処理するために、複数の分野に係る一般的な言葉情報を含む基本辞書と、専門分野に係る言葉情報を含む専門辞書とを備え、文書データが入力されると、解析部が基本辞書を参照して、入力された文書データから記述内容に含まれる単語の単語ベクトルを算出し、分野判定部が分野を特徴付ける分野ベクトルと算出された単語ベクトルとの類似性を算出して、類似性が最も高い分野を入力された文書データが属する分野として判定し、言語処理部が、判定された分野の専門辞書を参照して、前記入力された文書データに関する言語処理を行うことを開示する。
【0008】
特開2008−146218号公報は、区切り設定の困難な専門用語を正しく区分して形態素を抽出し形態素解析用辞書を生成して正確な形態素解析を実現するために、日本語と外国語との対訳辞書の登録データから日本語と外国語の対訳ペアが一単語対一単語と異なる一単語対多単語の登録データを持つ対訳ペアを抽出し、抽出した対訳ペアの日本語の形態素解析を行い、生成した区分語または区分語列に対応する外国語の単語を特定し、外国単語対応の区分語または区分語列を形態素として形態素解析用辞書に登録し、登録した形態素情報に基づく形態素解析を行なうことを開示する。
【0009】
特開2010−55298公報は、母国語又は習熟した言語以外の言語で記述された文書データをテキスト・マイニングしたり、検索したいという要望に応える手段を提供するため、第1言語のコーパスから、上記第1言語の用語に共起する共起用語を抽出する第1の抽出部と、上記抽出された共起用語の少なくとも1に対応する第2言語の訳語を出力する出力部と、上記第1言語のコーパスに対応する第2言語のコーパスから、上記出力された第2言語の訳語の少なくとも1に共起する訳語候補を抽出する第2の抽出部と、上記抽出された訳語候補それぞれに重み付けをする重付部と、上記重みを最適化し、該最適化された重みに従い上記第1言語の用語についての翻訳対のリストを生成する生成部とを含むシステムを開示する。
【0010】
また、非特許文献として、下記のものがある。
Guihong Cao, Jianfeng Gao, Jian-Yun Nie, Jing Bai, "Extending query translation to cross-language query expansion with markov chain models", CIKM '07 Proceedings of the sixteenth ACM conference on Conference on information and knowledge managementは、単語をノードとする有向グラフ上のランダムウォークでクエリー単語に近い異言語の単語集合を列挙する手法を開示する。
【0011】
Daniel Andrade, Tetsuya Nasukawa, Jun'ichi Tsujii, "Robust measurement and comparison of context similarity for finding translation pairs", COLING '10 Proceedings of the 23rd International Conference on Computational Linguisticsは、各単語(専門用語)の特徴ベクトルをその単語と高頻度かつ高相関で共起する一般用語から構成し、類似する単語を列挙する手法を開示する。
【0012】
Guihong Caoらの文献に記述されているランダムウォークの技法は、クエリー単語に近い異言語の単語集合を列挙する手法として有望であるが、クエリー単語毎にグラフを生成し、グラフの構造を考慮せずにランダムウォークすることで、計算が非効率になる。そこで、ランダムウォークを低ステップで止めることにより計算の複雑度を減らそうとすると、出現頻度の低いキーワードには適さなくなる、という問題がある。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】特開2002−91965号公報
【特許文献2】特開2002−269085号公報
【特許文献3】特開2004−280316号公報
【特許文献4】特開2008−146218号公報
【特許文献5】特開2010−55298号公報
【非特許文献】
【0014】
【非特許文献1】Guihong Cao, Jianfeng Gao, Jian-Yun Nie, Jing Bai, "Extending query translation to cross-language query expansion with markov chain models", CIKM '07 Proceedings of the sixteenth ACM conference on Conference on information and knowledge management
【非特許文献2】Daniel Andrade, Tetsuya Nasukawa, Jun'ichi Tsujii, "Robust measurement and comparison of context similarity for finding translation pairs", COLING '10 Proceedings of the 23rd International Conference on Computational Linguistics
【発明の概要】
【発明が解決しようとする課題】
【0015】
従って、この発明の目的は、ランダムウォークの技法を用いて、多数の用語を対象としても妥当な計算量で異言語の対応する用語を列挙することが可能な技法を提供することにある。
【課題を解決するための手段】
【0016】
本発明に従うシステムは先ず、コーパスから、第1の言語(例えば日本語)の専門用語集合と、第1の言語の一般用語集合と、第2の言語(例えば英語)の専門用語集合と、第2の言語の一般用語集合とを生成する。
【0017】
本発明に従うシステムは次に、第1の言語と第2の言語それぞれにおいて、同一言語の専門用語集合と一般用語集合の間を、コーパスの情報に基づきリンクで結び、2部グラフを生成する。
【0018】
本発明に従うシステムは次に、異なる言語の一般用語の対訳辞書(例えば、英和辞書)を用いて一般用語間のリンクを生成し、異なる言語の一般用語間で2部グラフを連結する。
【0019】
本発明に従うシステムは次に、ランダムウォークのスコアで、第1の言語の専門用語の各単語と、第2の言語の専門用語の各単語の類似度を計算する。この計算をするために、本発明に従うシステムはまず、同一言語内、及び異なる言語間の2部グラフのリンクの重み付けされた情報に基づき、関連度行列Mを生成する。このとき、同一言語内の専門用語集合と、一般用語集合の間のリンクの重みは、例えば共起頻度もしくは共起相関度であり、所定のテキスト・マイニング・ツールにより計算することができる。また、異なる言語の一般用語間のリンクの重みは、例えば、辞書での表示順序に基づき計算される。
【0020】
こうして関連度行列Mが求まると、本発明に従うシステムは次に、Q=(1-c)(I-cM)-1という式により、類似度行列Qを計算する。ここでcは、1より小さい適当な正の数である。ここでは、第1の言語の専門用語と、第2の言語の専門用語の間の類似度が求めるべき値であるので、必要なのは、類似度行列Qの一部の部分行列のみである。
【0021】
本発明に従うシステムは次に、類似度行列Qの対応する成分に基づき、第2の言語の専門用語の各単語から、類似度の高い順に第1の言語の専門用語の単語を出力する。
【発明の効果】
【0022】
本発明によれば、関連度行列の行列計算を用いたランダムウォークの技法を用いて、多数の用語を対象としても妥当な計算量で異言語の単語集合を列挙することが可能な技法が提供される。
【図面の簡単な説明】
【0023】
【図1】本発明を実施するための一例のハードウェア構成のブロック図である。
【図2】本発明を実施するための一例の機能構成のブロック図である。
【図3】本発明の処理全体の概要フローチャートである。
【図4】日本語の専門用語集合、日本語の一般用語集合、英語の専門用語集合、及び英語の一般用語集合の間のリンクを示す図である。
【図5】2部グラフのリンクの例を示す図である。
【図6】2部グラフに基づく関連度行列の一部を示す図である。
【図7】日本語の専門用語集合、日本語の一般用語集合、英語の専門用語集合、及び英語の一般用語集合全体の関連度行列を示す図である。
【図8】ランダムウォークを示す図である。
【図9】類似度行列の計算を示す図である。
【図10】類似度行列を、より簡易に計算する処理を示す図である。
【発明を実施するための形態】
【0024】
以下、図面に基づき、この発明の実施例を説明する。特に断わらない限り、同一の参照番号は、図面を通して、同一の対象を指すものとする。尚、以下で説明するのは、本発明の一実施形態であり、この発明を、この実施例で説明する内容に限定する意図はないことを理解されたい。
【0025】
図1を参照すると、本発明の一実施例に係るシステム構成及び処理を実現するためのコンピュータ・ハードウェアのブロック図が示されている。図1において、システム・パス102には、CPU104と、主記憶(RAM)106と、ハードディスク・ドライブ(HDD)108と、キーボード110と、マウス112と、ディスプレイ114が接続されている。CPU104は、好適には、32ビットまたは64ビットのアーキテクチャに基づくものであり、例えば、インテル社のPentium(商標) 4、Core(商標)2 Duo、Xeon(商標)、AMD社のAthlon(商標)などを使用することができる。主記憶106は、好適には、4GB以上の容量をもつものである。ハードディスク・ドライブ108は、大量のデータを格納できるように、例えば、500GB以上の容量をもつものであることが望ましい。
【0026】
ハードディスク・ドライブ108には、図示しないが、オペレーティング・システムが、予め格納されており、システムのスタートアップ時に、BIOSによってブートされて主記憶106にロードされ、動作する。オペレーティング・システムは、Linux(商標)、マイクロソフト社のWindows XP(商標)、Windows(商標)7、アップルコンピュータのMac OS(商標)などの、CPU104に適合する任意のものでよい。
【0027】
ハードディスク・ドライブ108はさらに、後述するコーパス・データ、辞書データ、用語間の関連度行列を生成するための行列生成ルーチン、関連度行列からランダムウォークのために類似度行列を計算する行列計算ルーチンなどが格納されている。これらのデータ・ファイルや処理ルーチンの詳細は、図2を参照して後で説明する。
【0028】
キーボード110及びマウス112は、オペレーティング・システムまたは、ハードディスク・ドライブ108から主記憶106にロードされ、ディスプレイ114に表示されたプログラム(図示しない)を起動したり、文字を打ち込んだりするために使用される。
【0029】
ディスプレイ114は、好適には液晶ディスプレイであり、例えば、XGA(1024×768の解像度)、またはUXGA(1600×1200の解像度)などの任意の解像度のものを使用することができる。ディスプレイ114は、図示しないが、本発明の処理を開始するための操作ウインドウや、処理の結果である、関連する専門用語のリスト等を表示するために使用される。
【0030】
次に、図2の機能ブロック図を参照して、本発明を実施するための処理ルーチン及び、用意されるデータ・ファイルなどについて説明する。なお、この実施例では、日本語の用語と、英語の用語を対応を見出すことに関して説明するが、日本語・英語だけでなく、任意の異なる2つの外国語について本発明は適用可能であることを理解されたい。
【0031】
図2において、日本語文コーパス202、英文コーパス204、及び英和辞書206は、予め用意されて、ハード・ディスク・ドライブ108に保存されているファイルである。
【0032】
メイン・ルーチン208は、全体の処理を開始したり、停止したり、処理すべきファイルを指定したり、オプション・パラメータを指定したりするなどの機能をもつ処理プログラムであり、C、C++、C#、Java(R)などの既存の任意のプログラム言語で書かれて、その実行可能形式のプログラムが、ハード・ディスク・ドライブ108に保存され、ユーザーのキーボード110やマウス112の操作に応答して、オペレーティング・システムの機能により主記憶106にロードされて実行される。
【0033】
用語集合作成ルーチン210は、メイン・ルーチン208から呼び出し可能に、C、C++、C#、Java(R)などの既存の任意のプログラム言語で書かれており、好適には、メイン・ルーチン208と同じ実行可能形式のプログラムに静的リンクされるかまたは、個別の動的リンク・ファイルとして、ハード・ディスク・ドライブ108に保存されている。用語集合作成ルーチン210は、日本語文コーパス202と英文コーパス204の内容を読み取って、日本語専門用語集合212と、日本語一般用語集合214と、英語専門用語集合216と、英語専門用語集合218を生成して、ファイルとして、ハード・ディスク・ドライブ108に保存する。このための処理として、特許文献として上記に掲げた特開2002−269085号公報、特開2008−146218号公報あるいは特開2010−55298号公報などに記述されている技法、もしくは、IBM(R) Content Analyticsなどの既存のテキスト・マイニング・ツールを使用することができる。用語集合作成ルーチン210は、好適には、英和辞書206にもアクセスして、専門用語集合と一般用語集合のリンクと、そのリンクの重みとしての共起頻度もしくは共起相関度などの関連度を計算して生成し、予め保存して、後述する行列生成ルーチン220によって利用されるようにする。
【0034】
行列生成ルーチン220は、メイン・ルーチン208から呼び出し可能に、C、C++、C#、Java(R)などの既存の任意のプログラム言語で書かれており、好適には、メイン・ルーチン208と同じ実行可能形式のプログラムに静的リンクされるかまたは、個別の動的リンク・ファイルとして、ハード・ディスク・ドライブ108に保存されている。行列生成ルーチン220は、用語集合作成ルーチン210によって生成された日本語専門用語集合212、日本語一般用語集合214、英語専門用語集合216及び、英語専門用語集合218と、英和辞書206から、関連度行列Mを生成する。関連度行列Mの各々の成分は、用語の間の共起頻度もしくは共起相関度で特徴づけられる重みである。行列生成ルーチン220は、生成した関連度行列Mのデータを、行列データ222として、ハード・ディスク・ドライブ108に書き出す機能をもつ。なお、行列生成ルーチン220は、独立のルーチンではなく、用語集合作成ルーチン210の一部の機能として実装してもよい。
【0035】
行列計算ルーチン224も、メイン・ルーチン208から呼び出し可能に、C、C++、C#、Java(R)などの既存の任意のプログラム言語で書かれており、好適には、メイン・ルーチン208と同じ実行可能形式のプログラムに静的リンクされるかまたは、個別の動的リンク・ファイルとして、ハード・ディスク・ドライブ108に保存されている。行列生成ルーチン224は、ハード・ディスク・ドライブ108に書き込まれた行列データ222を読み込んで、関連度行列Mから類似度行列Qを計算する機能を有する。このより具体的な処理について、後でより詳しく説明する。
【0036】
出力ルーチン226もまた、メイン・ルーチン208から呼び出し可能に、C、C++、C#、Java(R)などの既存の任意のプログラム言語で書かれており、好適には、メイン・ルーチン208と同じ実行可能形式のプログラムに静的リンクされるかまたは、個別の動的リンク・ファイルとして、ハード・ディスク・ドライブ108に保存されている。出力ルーチン226は、行列計算ルーチン224によって計算された結果の類似度行列Qから、日英の専門用語の対応などの結果を、ディスプレイ114に表示したり、ファイルとしてハード・ディスク・ドライブ108に書き出したりする機能を有する。
【0037】
次に、図3のフローチャートを参照して、本発明の処理について説明する。図3のステップ302では、メイン・ルーチン208が用語集合作成ルーチン210を呼び出す。すると、用語集合作成ルーチン210は、日本語文コーパス202と英文コーパス204の内容を読み取って、日本語専門用語集合(JS)212と、日本語一般用語集合(JG)214と、英語専門用語集合(ES)216と、英語一般用語集合(EG)218を生成して、ファイルとして、ハード・ディスク・ドライブ108に保存する。
【0038】
用語集合作成ルーチン210は、ステップ304で、同じ言語の各専門用語と、一般用語の間に、コーパスの情報によりリンクで結び、2部グラフ(bipartite graph)を生成する。ここで、2部グラフとは、頂点集合を2つの部分集合に分割して各集合内の頂点同士の間には辺がないようにできるグラフのことである。部分集合のうちの一方が一般用語集合であり、他方が専門用語集合である。
【0039】
用語集合作成ルーチン210は、専門用語集合を、コーパスにおいて、限られた文脈にしか現れない用語として特定する。情報処理関連や、自動車関連など、その分野の専門用語を参照して専門用語を抽出してもよい。
【0040】
一方で、用語集合作成ルーチン210は、専門用語と関連が高く、相対的により多くの文書にあらわれる用語として、一般用語を認識する。用語集合作成ルーチン210は、こうしてコーパスにおいて、専門用語集合と一般用語集合を確定しておいて、それの間に関連度に基づきリンクを張ることにより、2部グラフを形成する。この際、リンクには関連度の重みがつけられる。好適には、関連度の重みとは、共起頻度もしくは共起相関度である。共起頻度及び共起相関度は例えば、IBM(R) Content Analyticsなどの既存のテキスト・マイニング・ツールを使用して計算することができる。
【0041】
図4は、日本語と英語における、専門用語集合と一般用語集合の間の2部グラフを示す。すなわち、日本語においては、専門用語集合JSと一般用語集合JGの間にリンクA1が形成され、英語においては、専門用語集合ESと一般用語集合EGの間にリンクA3が形成される。尚、一般的に、一般用語集合JGは数千語のレベルであり、専門用語集合JSは数百語のレベルであり、一般用語集合EGも数千語のレベルであるが、専門用語集合ESは、この段階では候補なので、数万語のレベルでありえる。
【0042】
図3のフローチャートに戻って、用語集合作成ルーチン210は、ステップ306で、異言語、すなわちこの場合、日本語と英語の間の一般用語の単語の対訳辞書(英和辞書206)で一般用語間のリンクを生成し、異言語間の2部グラフを連結させる。ここでの要素間のリンクの重みは、好適には辞書での表示順序であるが、同一の値を入れてもよい。このようにして作成されたリンクが、図4のリンクA2である。
【0043】
そこで、以下の目標は、(j,e) ∈ JS × ESのような用語の組み合わせ(j,e)を求めることである。
【0044】
ステップ308では、ランダムウォークのスコアの計算のため、先ず、行列生成ルーチン220が、図4に示す2部グラフのリンクとその重みの情報に従い、関連度行列Mを生成する。
【0045】
そのことは、図5と図6を参照することにより、理解される。図5は、日本語の一般用語集合JGの要素g1,g2,g3,g4,g5,g6・・・と、日本語の一般用語集合JSの要素
s1,s2,s3,s4・・・の間のリンクA1の例を示す図である。
【0046】
図6は、図5の2部グラフに対応する関連度行列Mの要素の一部を示す図である。一般化して言うと、JGの要素giとJSの要素sjの間の共起頻度がMijであることを示している。また、リンクがない箇所の要素は0である。
【0047】
図7は、日本語専門用語集合JSと日本語一般用語集合JGの間のリンクA1、日本語一般用語集合JGと英語一般用語集合EGの間のリンクA2、及び英語専門用語集合ESと英語一般用語集合EGの間のリンクA3に基づき行列生成ルーチン220が作成した関連度行列M全体を示す。図7において、A1、A1T、A2、A2T、A3、A3Tとあるのはそれぞれ、リンクA1に基づき生成された関連度行列とその転置行列、リンクA2に基づき生成された関連度行列とその転置行列、及びリンクA3に基づき生成された関連度行列とその転置行列である。ここで、
|JS|、|JG|、|ES|、|EG|とあるのはそれぞれ、JS、JG、ES、EGの集合の要素の数をあらわす。0は、示されているサイズの零行列である。
【0048】
換言すると、行列生成ルーチン220は、これらの部分行列の集まりとして、全体の関連度行列Mを生成する。さらに行列生成ルーチン220は、全体の関連度行列Mを、各行の和が1になるように正規化する。この正規化の意味は、以下の説明で明らかになる。
【0049】
図3のステップ308の、ランダムウォークのスコアで英語の専門用語の各単語と、日本語の専門用語の各単語の類似度を計算するステップとは、行列計算ルーチン224が、関連度行列Mに基づき、下記の式により定義された、類似度行列Qを計算することである。
【数1】


ここで、cは1より小さい正の定数であり、好適には、0.2から0.3の間の値である。δijは、クロネッカーのデルタであり、cと(1-c)δijが、再出発(restart)付きランダムウォークをあらわす。
【0050】
図8は、類似度行列Qの成分と、関連度行列Mの成分による、ランダムウォークの様子を模式的に示す図である。
【0051】
さて、上記式は、関連度行列Mの行正規化により、次のように簡易化される。
【数2】

【0052】
これを適宜移項して行列表記すると、次のようになる。
(1 - cM)Q = (1 - c)I
ここでIは、MやQと同じサイズの単位行列である。
【0053】
上記の式をQについて変形すると、
Q = (1 - c)(1 - cM)-1
【0054】
上記式を用いて関連度行列Mから類似度行列Qを計算することが、行列計算ルーチン224の役割である。(1 - c)は定数なので、とりあえず1とみなして省略すると、Qは図9のようにあらわされる。特に、下の方の等式の右辺は、計算された結果としてのQの部分行列の区画をあらわすものであり、この発明の目的には、JS × ESに対応するQ22が、一番求めたい値である。
【0055】
しかし、(1 - cM)は通常、数万×数万の極めて大きい行列であるので、このまま逆行列を計算するのは、一般的には計算量的に能率が悪い。
【0056】
そこで、図10に示すような、(1 - cM)の一部の部分行列を0にした、すなわち、日本語一般用語集合及び日本語専門用語集合の上でのランダムウォークに対応する部分と、英語一般用語集合及び英語専門用語集合の上でのランダムウォークに対応する部分のみを残した行列(1 - cM')を作ってそれの逆行列を求めると、図10の下の方の等式の右辺に示す行列のように、比較的容易に逆行列を求めることができる。
【0057】
しかしここには、求めるべきQ22は含まれておらず、Q22は、Q'12と、Q32を使って、次の式で計算される。
【数3】

【0058】
ここでさらに、Q32は次の式で計算される。
【数4】

【0059】
またさらに、X4は次の式で計算され、こうしてQ22が求まる。
【数5】

【0060】
こうして行列計算ルーチン224がQ22を計算し終わると、出力ルーチン226は、Q22の成分の大きさの順にソートして、その成分に関連付けられた日本語専門用語と、それに対応する英語専門用語集合を順次、ディスプレイ114に表示し、あるいはファイルとして、ハードディスク・ドライブ106に書き出す。これは、日本語専門用語に対する英語専門用語の訳語集、あるいは英語専門用語に対する日本語専門用語の訳語集として使用することができる。
【0061】
以上、日本語と英語の用語の対応を計算する例として説明してきたが、本発明は、日本語と英語の間だけでなく、一般用語の辞書が存在する任意の2つの言語の用語の間の対応を計算するためにも使用することができることを理解されたい。
【0062】
また、関連度行列の成分として、上記実施例では、共起頻度が用いられたが、テキスト・マイニング・ツールによって2つの用語の間の関連度として使用される任意の指標を用いることができる。
【0063】
さらに本発明は、コンピュータの特定のハードウェア、ソフトウェアに限定されず、また、スタンドアロンやネットワーク環境のどちらであるかにもかかわらず、任意のプラットフォーム上で実施可能であることをこの分野の当業者なら理解するであろう。
【符号の説明】
【0064】
102 システム・パス
104 CPU
106 ハードディスク・ドライブ
106 主記憶
108 ハード・ディスク・ドライブ
108 ハードディスク・ドライブ
110 キーボード
112 マウス
114 ディスプレイ
202 日本語文コーパス
204 英文コーパス
206 英和辞書
208 メイン・ルーチン
210 用語集合作成ルーチン
212 日本語専門用語集合
214 日本語一般用語集合
216 英語専門用語集合
218 英語専門用語集合
220 行列生成ルーチン
222 行列データ
224 行列計算ルーチン
226 出力ルーチン

【特許請求の範囲】
【請求項1】
コンピュータの処理により、異なる2つの言語の用語の間の対応を見出す方法であって、
第1の言語の専門用語集合と、前記第1の言語の一般用語集合と、第2の言語の専門用語集合と、前記第2の言語の一般用語集合とを生成して、前記コンピュータの記憶手段に保存するステップと、
前記第1の言語と前記第2の言語それぞれにおいて、同一言語の専門用語集合と一般用語集合の間を、コーパスの情報に基づきリンクで結び、前記リンクは用語間の関連度を重みとする2部グラフを生成するステップと、
前記第1の言語の一般用語と前記第2の言語の一般用語の間の対訳辞書を用いて一般用語間のリンクを生成し、前記リンクは用語間の関連度を重みとする2部グラフを生成するステップと、
前記同一言語の専門用語集合と一般用語集合の間の2部グラフと、前記第1の言語の一般用語と前記第2の言語の一般用語の間の2部グラフを含む、関連度行列Mを生成するステップと、
cを1より小さい正の数として、(I-cM)の逆行列を計算することにより、類似度行列Qを計算するステップと、
前記類似度行列Qの所定の成分に基づき、前記第1の言語の専門用語集合と前記第2の言語の専門用語集合の対応を出力するステップとを有する、
用語の対応を見出す方法。
【請求項2】
前記同一言語の専門用語集合と一般用語集合の間の2部グラフにおける関連度が、用語の共起頻度もしくは共起相関度である、請求項1に記載の方法。
【請求項3】
前記第1の言語の一般用語と前記第2の言語の一般用語の間の2部グラフにおける関連度が、辞書での表示順序に基づき計算される、請求項1に記載の方法。
【請求項4】
前記関連度行列Mが、行毎の合計が1になるように正規化される、請求項1に記載の方法。
【請求項5】
前記類似度行列Qの計算が、前記第1の言語の一般用語集合及び前記第1の言語の専門用語集合の両方に対応する部分と、前記第2の言語の一般用語集合及び前記第2の言語の専門用語集合の両方に対応する部分のみを残した行列の逆行列を一旦計算することを含む、請求項4に記載の方法。
【請求項6】
前記cは、0.2と0.3の間の数である、請求項1に記載の方法。
【請求項7】
コンピュータの処理により、異なる2つの言語の用語の間の対応を見出すプログラムであって、
前記コンピュータに、
第1の言語の専門用語集合と、前記第1の言語の一般用語集合と、第2の言語の専門用語集合と、前記第2の言語の一般用語集合とを生成して、前記コンピュータの記憶手段に保存するステップと、
前記第1の言語と前記第2の言語それぞれにおいて、同一言語の専門用語集合と一般用語集合の間を、コーパスの情報に基づきリンクで結び、前記リンクは用語間の関連度を重みとする2部グラフを生成するステップと、
前記第1の言語の一般用語と前記第2の言語の一般用語の間の対訳辞書を用いて一般用語間のリンクを生成し、前記リンクは用語間の関連度を重みとする2部グラフを生成するステップと、
前記同一言語の専門用語集合と一般用語集合の間の2部グラフと、前記第1の言語の一般用語と前記第2の言語の一般用語の間の2部グラフを含む、関連度行列Mを生成するステップと、
cを1より小さい正の数として、(I-cM)の逆行列を計算することにより、類似度行列Qを計算するステップと、
前記類似度行列Qの所定の成分に基づき、前記第1の言語の専門用語集合と前記第2の言語の専門用語集合の対応を出力するステップを実行させる、
用語の対応を見出すプログラム。
【請求項8】
前記同一言語の専門用語集合と一般用語集合の間の2部グラフにおける関連度が、用語の共起頻度もしくは共起相関度である、請求項7に記載のプログラム。
【請求項9】
前記第1の言語の一般用語と前記第2の言語の一般用語の間の2部グラフにおける関連度が、辞書での表示順序に基づき計算される、請求項7に記載のプログラム。
【請求項10】
前記関連度行列Mが、行毎の合計が1になるように正規化される、請求項7に記載のプログラム。
【請求項11】
前記類似度行列Qの計算が、前記第1の言語の一般用語集合及び前記第1の言語の専門用語集合の両方に対応する部分と、前記第2の言語の一般用語集合及び前記第2の言語の専門用語集合の両方に対応する部分のみを残した行列の逆行列を一旦計算することを含む、請求項10に記載のプログラム。
【請求項12】
前記cは、0.2と0.3の間の数である、請求項7に記載のプログラム。
【請求項13】
コンピュータの処理により、異なる2つの言語の用語の間の対応を見出すシステムであって、
記憶手段と、
第1の言語の専門用語集合と、前記第1の言語の一般用語集合と、第2の言語の専門用語集合と、前記第2の言語の一般用語集合とを生成して、前記記憶手段に保存する手段と、
前記第1の言語と前記第2の言語それぞれにおいて、同一言語の専門用語集合と一般用語集合の間を、コーパスの情報に基づきリンクで結び、前記リンクは用語間の関連度を重みとする2部グラフを生成する手段と、
前記第1の言語の一般用語と前記第2の言語の一般用語の間の対訳辞書を用いて一般用語間のリンクを生成し、前記リンクは用語間の関連度を重みとする2部グラフを生成する手段と、
前記同一言語の専門用語集合と一般用語集合の間の2部グラフと、前記第1の言語の一般用語と前記第2の言語の一般用語の間の2部グラフを含む、関連度行列Mを生成する手段と、
cを1より小さい正の数として、(I-cM)の逆行列を計算することにより、類似度行列Qを計算する手段と、
前記類似度行列Qの所定の成分に基づき、前記第1の言語の専門用語集合と前記第2の言語の専門用語集合の対応を出力する手段を有する、
用語の対応を見出すシステム。
【請求項14】
前記同一言語の専門用語集合と一般用語集合の間の2部グラフにおける関連度が、用語の共起頻度もしくは共起相関度である、請求項13に記載のシステム。
【請求項15】
前記第1の言語の一般用語と前記第2の言語の一般用語の間の2部グラフにおける関連度が、辞書での表示順序に基づき計算される、請求項13に記載のシステム。
【請求項16】
前記関連度行列Mが、行毎の合計が1になるように正規化される、請求項13に記載のシステム。
【請求項17】
前記類似度行列Qの計算が、前記第1の言語の一般用語集合及び前記第1の言語の専門用語集合の両方に対応する部分と、前記第2の言語の一般用語集合及び前記第2の言語の専門用語集合の両方に対応する部分のみを残した行列の逆行列を一旦計算することを含む、請求項16に記載のシステム。
【請求項18】
前記cは、0.2と0.3の間の数である、請求項13に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−190080(P2012−190080A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−50830(P2011−50830)
【出願日】平成23年3月8日(2011.3.8)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】