(57)【要約】【課題】高精度の類義語辞書を構築する。【解決手段】文書データ中において所定規則で出現する文字列ペアを類義語候補抽出部１２で相互の類義語候補として抽出した後、関連度管理部１３で、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、他方の文字列に対する一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、第１関連値及び第２関連値を当該文字列ペアと関連付けて保持する。類義語辞書登録部１４は、一方の文字列に対して第１関連値が第１閾値以下で、且つ、第２関連値が第２閾値以下となる他方の文字列を一方の文字列の類義語として、類義語辞書２６に辞書登録する。【選択図】図１
2010267047.tif 000002
【特許請求の範囲】
【請求項１】
文書データ中において所定規則で出現する文字列ペアを相互の類義語候補として抽出する類義語候補抽出手段と、
抽出された文字列ペアについて、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、前記他方の文字列に対する前記一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、前記第１関連値及び前記第２関連値を当該文字列ペアと関連付けて保持する関連度管理手段と、
前記一方の文字列に対して前記第１関連値が第１閾値以下で、且つ、前記第２関連値が第２閾値以下となる前記他方の文字列を前記一方の文字列の類義語として辞書登録する辞書登録手段と、を備えて成る、
類義語辞書構築装置。
【請求項２】
前記関連度管理手段は、前記文書データを含む複数の文書データにおける前記文字列ペアの出現頻度を累積し、その累積値を後順にソートして得たランキング順位により、前記第１関連値及び前記第２関連値を導出する、
請求項１記載の類義語辞書構築装置。
【請求項３】
前記関連度管理手段は、前記第１関連値及び前記第２関連値を前記文字列ペアと関連付けて更新自在に保持しており、最新の前記第１関連値及び前記第２関連値に基づいて、辞書登録すべき類義語を決定する、
請求項２記載の類義語辞書構築装置。
【請求項４】
メモリにアクセス可能なコンピュータが実行する方法であって、
文書データを取り込み、取り込んだ文書データ中において所定規則で出現する文字列ペアを相互の類義語候補として抽出し、抽出した文字列ペアを前記メモリに保持する段階と、
前記メモリに保持されている前記文字列のペアについて、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、前記他方の文字列に対する前記一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、前記第１関連値及び前記第２関連値を当該文字列ペアと関連付けて前記メモリに保持する段階と、
前記一方の文字列に対して前記第１関連値が第１閾値以下で、且つ、前記第２関連値が第２閾値以下となる前記他方の文字列を前記一方の文字列の類義語として辞書登録する段階とを含む、
類義語辞書構築方法。
【請求項５】
コンピュータを、文書データ中において所定規則で出現する文字列ペアを相互の類義語候補として抽出する類義語候補抽出手段；
抽出された文字列ペアについて、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、前記他方の文字列に対する前記一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、前記第１関連値及び前記第２関連値を当該文字列ペアと関連付けて保持する関連度管理手段；及び、
前記一方の文字列に対して前記第１関連値が第１閾値以下で、且つ、前記第２関連値が第２閾値以下となる前記他方の文字列を前記一方の文字列の類義語として辞書登録する辞書登録手段；として機能させる、
類義語辞書構築のためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、類義語辞書の構築技術に関する。類義語とは、語形は異なっていても意味の似かよった２つ以上の語をいう。
【背景技術】
【０００２】
言葉の言い換え表現をしたいときに、類義語辞書がしばしば使用される。この類義語辞書を構築する方法として、従来、以下の３つの方法がある。
（１）第１の方法
専門知識を有する者が、人手によって類義語を体系化して構築する。
（２）第２の方法
ベクトル統計量に基づいて類義語を自動抽出して辞書登録する。例えば、文書データの内容を形態素解析して名詞や動詞等の品詞、あるいはそれらの係り受け関係を抽出し、対象となる名詞に対する動詞格との共起ベクトルを求め、ベクトル同士の距離が近いもの同士は類義語関係になるとして、当該共起ベクトルの対象名詞の集合を類義語群として抽出し、これらを辞書登録する。この方法については、特許文献１の記載を参考にすることができる。
（３）第３の方法
特殊記号の前後単語が類義語関係となることに着目して、文書中の特殊記号、例えば丸括弧で囲まれた文字列は、開き丸括弧直前の文字列の類義語となる場合が多いとして、両者を相互に類義語として抽出する。この方法については、特許文献２，３の記載を参考にすることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３３１５１５号公報
【特許文献２】特開平１１−３２８２０５号公報
【特許文献３】特開２００６−１６４１７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の３つの方法には、それぞれ、以下のような問題がある。
（１）第１の方法の課題
新規の分野に対する大規模な類義語辞書を構築しようとする場合、多大な時間と労力が必要となる上に、その分野特有の専門用語を抽出できるかどうかは、類義語収集者の知識やスキルに依存するため、一般化できない。
【０００５】
（２）第２の方法の課題
基本的に単語データ間の共起ベクトル間の類似性を判別する統計的手法であるため、高頻度に表れる用語に対する類義語の信頼性は比較的高いものの、低頻度に表れる用語に対する類義語に対する信頼性が低い。
また、市販の汎用的な類義語辞書に記載されるような類義語を自動抽出してもメリットは小さいが、対象テキスト中の頻度が高い用語は、市販の類義語辞書にあることが容易に想像される。加えて、係り受け関係を持つ可能性が高い「文書」と「検索」という単語対と、「文書」と「処理」という単語対が共起性が高いとしても、「検索」と「処理」との間に類義語関係があるとは、いえない場合が多いため、得られる類義語に対する信頼性が低い。
【０００６】
（３）第３の方法の課題
特許文献２では丸括弧に着目し、丸括弧で囲まれた文字列は、開き丸括弧の直前の文字列となることを利用して類義語を抽出しているが、常に類義語関係を有するとは限らないため、開き括弧前後の文字列に関して、類義語とならない排除パターン、例えば括弧内が数式相当である物等に合致するか否かに基づいて類義語かどうかを判定している。この排除パターンルールは、限定した分野では効果が期待できるものの、一般化は難しく、汎用性に乏しいため、新しい分野が創設された場合、既存ルールの修正や新規ルールの作成並びにルール追加による影響の有無を検証する必要がある。そのため、ルールが膨大になるほど多大な労力を必要とする。
【０００７】
また、特許文献３に開示された技術では、開き丸括弧前後の文字列の対における、表記上の順序関係に着目し、一方の順序でしか現れない文字列の対は、類義語ではないとして、除外するルールを適用している。しかし、文章中に、低頻度で現れる新しい語、例えば「ヘッドレスト（頭支持部）」という類義語候補を発見したとしても、頭支持部（ヘッドレスト）が対象文章中になければ、類義語とならない。このことは、開き括弧前後の文字列の対の頻度統計をとると、低頻度の文字列の対が大多数を占めることを考えると、重要な問題となる。
【０００８】
本発明は、高精度の類義語辞書を迅速に構築する技術を提供することを課題とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明は、類義語辞書構築装置、方法、及びコンピュータプログラムを提供する。
本発明の類義語辞書構築装置は、文書データ中において所定規則で出現する文字列ペアを相互の類義語候補として抽出する類義語候補抽出手段と、抽出された文字列ペアについて、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、前記他方の文字列に対する前記一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、前記第１関連値及び前記第２関連値を当該文字列ペアと関連付けて保持する関連度管理手段と、
前記一方の文字列に対して前記第１関連値が第１閾値以下で、且つ、前記第２関連値が第２閾値以下となる前記他方の文字列を前記一方の文字列の類義語として辞書登録する辞書登録手段と、を備えて成る。
【００１０】
本発明の類義語辞書構築装置では、文字列ペア毎に第１関連値と第２関連値とを導出し、一方の文字列について、第１関連値が第１閾値以下で、且つ、第２関連値が第２閾値以下となる他方の文字列を当該一方の文字列の類義語として辞書登録するようにしたので、一方の文字列だけからは判らない他方の文字列からの関連度を辞書登録すべき類義語決定のパラメータとして利用することができるので、一方の文字列だけを用いた場合よりも、格段に高精度となる類義語辞書を構築することができる。
【００１１】
本発明の類義語構築装置において、前記関連度管理手段は、例えば、前記文書データを含む複数の文書データにおける前記文字列ペアの出現頻度を累積し、その累積値を後順にソートして得たランキング順位により前記第１関連値及び前記第２関連値を導出するように構成する。これにより、文書データ中にさほど高くない頻度で出現する文字列ペアであっても、その関連度を正しく定量化することができる。
【００１２】
ある実施の態様では、前記関連度管理手段は、前記第１関連値及び前記第２関連値を前記文字列ペアと関連付けて更新自在に保持しており、最新の前記第１関連値及び前記第２関連値に基づいて前記辞書登録すべき類義語を決定する。各関連値を適宜修正することにより、文字列ペアの関連度の精度をさらに高めることができる。
【００１３】
本発明の方法は、メモリにアクセス可能なコンピュータが実行する方法であって、文書データを取り込み、取り込んだ文書データ中において所定規則で出現する文字列ペアを相互の類義語候補として抽出し、抽出した文字列ペアを前記メモリに保持する段階と、前記メモリに保持されている前記文字列のペアについて、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、前記他方の文字列に対する前記一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、前記第１関連値及び前記第２関連値を当該文字列ペアと関連付けて前記メモリに保持する段階と、前記一方の文字列に対して前記第１関連値が第１閾値以下で、且つ、前記第２関連値が第２閾値以下となる前記他方の文字列を前記一方の文字列の類義語として辞書登録する段階とを含む、類義語辞書構築方法である。
【００１４】
本発明のコンピュータプログラムは、コンピュータを、文書データ中において所定規則で出現する文字列ペアを相互の類義語候補として抽出する類義語候補抽出手段；抽出された文字列ペアについて、一方の文字列に対する他方の文字列の関連性が高くなるほど小さくなるように重み付けされた第１関連値を導出するとともに、前記他方の文字列に対する前記一方の文字列の関連性が高くなるほど小さくなるように重み付けされた第２関連値を導出し、前記第１関連値及び前記第２関連値を当該文字列ペアと関連付けて保持する関連度管理手段；及び、前記一方の文字列に対して前記第１関連値が第１閾値以下で、且つ、前記第２関連値が第２閾値以下となる前記他方の文字列を前記一方の文字列の類義語として辞書登録する辞書登録手段；として機能させる、類義語辞書構築のためのコンピュータプログラムである。
【発明の効果】
【００１５】
本発明によれば、文書データ中から抽出される文字列ペアのうち、双方の文字列からみた重み付けにより関連度を定量化するようにしたので、一方の文字列からの重み付けによる定量化結果に基づく場合に比べて、関連度の判定結果の精度が高まるという優れた効果が得られる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態における類義語辞書構築装置の構成図。
【図２】形態素解析の結果例を示す説明図。
【図３】（ａ），（ｂ）は度数テーブルの内容例を示した図であり、（ａ）は登録前、（ｂ）は登録後の状態を示す。
【図４】類義語候補のフィルタリング処理の手順説明図。
【図５】「アイスクリーム」に対する類義語候補群と各度数の例を示した図。
【図６】「食品」に対する類義語群と各度数の例を示した図。
【図７】類義語候補テーブルに登録された文字列ペアと関連度の例を示した説明図。
【図８】類義語を決定するためのフィルタリング処理の手順説明図。
【図９】スタックに格納した類義語候補テーブルの例を示した説明図。
【図１０】類義語辞書に登録される文字列ペアの例を示した説明図。
【発明を実施するための形態】
【００１７】
以下、図面を参照して、本発明の実施の形態例を説明する。
図１は、本実施形態における類義語辞書構築装置の構成図である。この類義度辞書構築装置１は、コンピュータ本体１０と、ハードディスク等の外部記憶装置２０と、キーボード等から成る入力装置３０と、ＯＣＲやＵＳＢメモリ等の読み取り機構を備えた文書データ取込装置４０と、液晶ディスプレイ等の表示装置４０とを備えて構成される。
【００１８】
コンピュータ本体１０は、外部記憶装置２０にインストールされた本発明のコンピュータプログラムを実行することにより、コンピュータ本体を、入出力（Ｉ／Ｏ）制御部１１、類義語候補抽出部１２、関連度管理部１３、及び、類義語辞書登録部１４として機能させる。
【００１９】
外部記憶装置２０には、上記のコンピュータプログラム及び必要なデータのほか、品詞の内容を定めた品詞テーブル２１と、類義語辞書構築のルール及び閾値を設定したルールテーブル２２と、文字列ペアの関連度を定量化する際に用いられる度数テーブル２３及び類義語候補テーブル２４と、文書データ取込装置で取り込んだ文書データを保持するための文書データベース（以下、データベースを「ＤＢ」と称する。）２５と、類義語辞書２６とが格納される。ルールテーブル２２に設定されるルールは、文字列ペア抽出ルール、関連度の定量化に用いる重み付けルールである。
【００２０】
入出力制御部１１は、入力装置３０からの処理の指示や検索語等の入力の受付、文書データ取込装置４０からの文書データの取込、表示装置５０への処理内容又は処理結果の出力、外部記憶装置２０へのデータ登録及びその読み出しを制御する。
【００２１】
類義語候補抽出部１２は、文書データ取込装置４０より取り込んだ文書データを、後段の処理のために文書ＩＤを付して文書ＤＢ２５に保持する。取り込んだ文書データを「元文書データ」と呼ぶ。
類義語候補抽出部１２は、また、文書ＤＢ２５に保持されている元文書データに対して品詞テーブル２１に基づく形態素解析を行い、文字及び文字列を抽出する。なお、本発明は、文書データから抽出した文字を扱うことに主眼があるので、ここにいう文字には、記号、数値も含まれるものとする。
文字列の抽出は、ルールテーブル２２に設定されている文字列ペア抽出ルールに従って行う。例えば、元文書データに存在する文字列のうち、言い換え表現のために用いる特定情報の有無を調べ、存在するときは、その特定情報の前後の文字列を類義語候補を表す文字列として特定する。特定情報は、本実施形態では、開き括弧「（」のような記号を用いる。
【００２２】
例えば、『画像には、エッジ（輪郭線）という特徴がある。』という元文書データが取り込まれたとすると、品詞テーブル２１に基づく元文書データの形態素解析の結果は図２のようになり、『画像／に／は／、／エッジ／（／輪郭線／）／という／特徴／が／ある／。』の文字列が抽出される。類義語候補抽出部１２は、この元文書データから、開き括弧の前後に存在する「エッジ」と「輪郭線」の文字列ペアを、それぞれ相互の類義語候補として抽出する。
【００２３】
類義語候補となる文字列ペアを抽出すると、類義語候補抽出部１２は、文字列の一方を検索語、他方を類義語候補として、検索語及び類義語候補のペアを２パターン、度数テーブル２３に登録する。すなわち「エッジ」を検索語、「輪郭線」を類義語候補として登録するとともに、”輪郭線”を検索語、”エッジ”を類義語候補としても登録する。登録前の度数テーブル２３ａの例を図３（ａ）、登録後の度数テーブル２３ｂの例を図３（ｂ）に示す。ここで「度数」は、抽出された文字列ペアの出現頻度の累積値、つまり「のべ数」であり、図３（ａ）、（ｂ）のように随時更新される。
【００２４】
図１に戻り、関連度管理部１３は、文字列ペアの関連度を重み付けすることによりフィルタリング処理を行う。
関連度を重み付けする処理は、ルールテーブル２２に設定された重み付けルールに従い、文字列ペア毎に、一方の文字列から見た他方の文字列の関連度と、他方の文字列から見た一方の文字列の関連度とを定量化することにより行う。
【００２５】
このフィルタリング処理の手順を図４を参照して、詳しく説明する。
関連度管理部１３は、入力装置３０を通じて、処理の開始を指定されると、いずれかの文字列と、その文字列とペアになるすべての文字列とを取得し、メモリの一種であるスタックに格納する（ステップＳ１０１）。
【００２６】
スタックが１未満の場合は、処理を終える（ステップＳ１０２：Yes）。
スタックが１以上の場合は、スタックから検索語とペアになる類義語候補を１つずつ取得し（ステップＳ１０２：Ｎｏ,Ｓ１０３）、取得した文字列ペアについて、当該検索語に対する類義語候補の関連度を定量化し、その結果を第１関連値として、類義語候補テーブル２４に登録する（ステップＳ１０４）。
関連度の定量化に際しては、まず、文字列ペア（検索語に対する類義語候補）の度数を降順にソートする。そして、度数の多い順にランキングされた結果（１位、２位・・・）により、関連度を定量化する。これにより、ランキングの順位が高いほど、つまり、順位を表す数値が小さくなるほど、関連度が高くなるように重み付けられる。この重み付けの結果を第１関連値とする。
【００２７】
関連度管理部１３は、また、上記の類義語候補を検索語としたときに文字列ペアとなる他の類義語候補をスタックから取得する（ステップＳ１０５）。例えば図５の例でいえば「アイスクリーム」の類義語候補とされた「食品」を検索語としたときの他の類義語候補（図６に例示される「商品」、「内容物」、「食材」・・・）を取得する。
そして、当該検索語（「食品」）と各類義語候補との関連度を定量化し、その結果を第２関連値として、文字列ペアと関連付けて類義語候補テーブル２４に、登録する（ステップＳ１０６）。関連度の定量化については、第１関連値と同様に行う。
以上の処理を、スタックサイズが１未満になるまで（ステップＳ１０２：Ｎｏ）繰り返す。
【００２８】
このようにして、類義語候補テーブル２４に登録された文字列ペア、第１関連値及び第２関連値の内容例を図７に示す。図７を参照すると、「アイスクリーム」から「食品」を見たときの関連度を表す第１関連値は“１”であるが、「食品」から「アイスクリーム」を見たときの関連度を表す第２関連値は“４９”となり、両者の順位は、必ずしも一致しないことがわかる。
【００２９】
類義語候補テーブル２４への各関連値の登録を終えると、類義語辞書登録部１４において、類義語辞書２６に登録すべき類義語の決定及び辞書登録のための処理を行う。この処理の手順を図８に示す。
図８を参照し、類義語辞書登録部１４は、入力装置３０から検索語を１つ取得する（ステップＳ２０１）。そして、当該検索語に対するすべての類義語候補と、当該文字列ペアについての第１関連値及び第２関連値を類義語候補テーブル２４から読み出してスタックに格納する（ステップＳ２０２）。ここでは、図９に例示する内容のうち、検索語「アイスクリーム」に対する７つの類義語候補と、各類義語候補とのペアによる第１関連値及び第２関連値とをスタックに格納するものとする。
【００３０】
スタックが１未満のときには処理を終了する（ステップＳ２０３：Ｎｏ）。
スタックが１以上のときは、スタックから、検索語「アイスクリーム」と類義語候補、ペア毎の第１関連値及び第２関連値を１件取得する（ステップＳ２０４）。
そして、取得した類義語候補の第１関連値に対して第１閾値以下であるかを判定し、第１閾値を越える場合はスタックサイズの判定に戻る（ステップＳ２０５：Ｎｏ）。
【００３１】
第１関連値が第１閾値以下である場合は、第２閾値以下であるかを判定し、第２閾値を越える場合はスタックサイズの判定に戻る（ステップＳ２０６：Ｎｏ）。第１閾値以下で、且つ、第２閾値以下でもある場合は、ペアとなる類義語候補を検索語「アイスクリーム」に対する類義語と決定し、類義語辞書２６に登録する（ステップＳ２０５：Ｙｅｓ、Ｓ２０６：Ｙｅｓ、Ｓ２０７）。
【００３２】
例えば、第１閾値及び第２閾値がともに“５”に設定されているものとすると、図９の例（図７の拡張）では、検索語「アイスクリーム」と類義語候補「商品」とのペアについては第１関連値は“１”であるが第２関連値が“４９”であり、検索語「アイスクリーム」と類義語候補「食品」とのペアについては第１関連値は“４”であるが第２関連値が“５８”なので、いずれも「アイスクリーム」の類義語からは除外される。
この例では、第１関連値が“２”で第２関連値が“３”の「冷菓」、第１関連値が“３”で第２関連値が“５”の「冷凍食品」、第１関連値が“５”で第２関連値が“１”の「氷菓子」の３つが「アイスクリーム」の類義語として決定され、図１０に示すように真の類義語ペアとして、類義語辞書２６に登録される。
以上の処理を、スタックサイズが１未満になるまで（ステップＳ２０３：Ｎｏ）繰り返す。
【００３３】
このように、本実施形態では、類義語候補として抽出された文字列ペアについて、一方の文字列から見た他方の文字列の関連度のみならず、他方の文字列から見た一方の文字列の関連度についても重み付けを行うようにしたので、元文書データにさほど高くない頻度で出現する文字列ペアであっても、その関連度を正しく定量化することができる。
これにより、類義語辞書２６の構築精度が、一方の文字列から見た他方の文字列の関連度のみに基づいて構築する場合に比べて格段に向上した。
【００３４】
また、関連度を定量化する際に、文字列ペアの出現頻度を度数として蓄積し、最新の度数に基づいて第１関連値及び第２関連値を導出するようにしたので、関連度の高い文字列ペアの抽出がより容易となった。
【００３５】
［変形例］
本実施形態では、文字列ペアを抽出する場合、言い換え表現を表す特定情報として開き括弧を用いた場合の例を示したが、同じ又は類似の意味合いの文字列に導く他の文字列、例えば「；」、「：」、「＝」のような記号を用いても良い。また、言い換え表現を表す特定情報であれば、特定の文字列、例えば「つまり」、「すなわち」、「例えば」、「具体的には」等であっても良い。また、特定の形態素、例えば、名詞と未知語とが連続する文字列ペアを類義語候補として抽出するように定めても良い。
【００３６】
本実施形態では、また、度数テーブル２３と類義語候補テーブル２４とを別々に設けた場合の例を示したが、度数と第１関連値及び第２関連値とを同じテーブルに格納するようにしても良い。さらに、本実施形態では、これらのテーブル２３，２４を外部記憶装置２０に格納することを前提として説明したが、外部記憶装置２０ではなく、コンピュータ本体１０の内部メモリ（図示省略）に格納するようにしても良い。
【００３７】
さらに、第１関連値及び第２関連値は、度数をランキングした順位により導出したが、Ａ、Ｂ、Ｃ・・・のような順列に従って導出するようにしても良い。
【符号の説明】
【００３８】
１・・・類義度辞書構築装置、１０・・・コンピュータ本体、１１・・・入力受付部、１２・・・類義語候補抽出部、１２１・・・文書データ入力部、１２２・・・類義語候補抽出部、１２３・・・類義語候補登録部、１３・・・関連度管理部、１４・・・類義語管理部、２０・・・外部記憶装置、２１・・・品詞テーブル、２２・・・ルールテーブル、２３（２３ａ〜２４ｄ）・・・度数テーブル、２４・・・類義語候補テーブル、３０・・・入力装置、４０・・・文書データ取込装置、５０・・・表示装置。
【図１】
2010267047.tif 000003
【図２】
2010267047.tif 000004
【図３】
2010267047.tif 000005
【図４】
2010267047.tif 000006
【図５】
2010267047.tif 000007
【図６】
2010267047.tif 000008
【図７】
2010267047.tif 000009
【図８】
2010267047.tif 000010
【図９】
2010267047.tif 000011
【図１０】
2010267047.tif 000012