(57)【要約】【課題】同一言語内の同一の文字集合から選択された文字からなる単語ペアが同義語であるかを高精度に判定する。【解決手段】装置は、単語リストからＮ−ｇｒａｍを生成し、Ｎ−ｇｒａｍそれぞれが単語ペアの単語双方に含まれることを示す次元と、Ｎ−ｇｒａｍそれぞれが単語ペアの一方の単語のみに含まれることを示す次元と、を含む特徴空間を定義し、単語リストから生成した単語ペアそれぞれと、Ｎ−ｇｒａｍそれぞれとを比較して、単語ペアそれぞれの、特徴空間における特徴ベクトルを決定し、単語ペアそれぞれが同義語であるかを、同義語辞書を参照して判定し、同義語と判定された単語ペアそれぞれの特徴ベクトルに同義語であることを示すラベルを付与し教師データに含め、非同義語と判定された単語ペアそれぞれの特徴ベクトルに非同義語であることを示すラベルを付与し教師データに含める。【選択図】図２
2016200978.tif 000002
【特許請求の範囲】
【請求項１】
単語ペアが同義語であるか判定するモデルを生成するために使用される教師データ、を生成する装置であって、
プロセッサと、メモリと、を含み
前記メモリは、同義語辞書と、単語リストと、を格納し、
前記プロセッサは、
前記単語リストからＮ−ｇｒａｍを抽出し、
前記Ｎ−ｇｒａｍそれぞれが単語ペアの単語双方に含まれることを示す次元と、前記Ｎ−ｇｒａｍそれぞれが単語ペアの一方の単語のみに含まれることを示す次元と、を含む特徴空間を定義し、
前記単語リストから生成した単語ペアそれぞれと、前記Ｎ−ｇｒａｍそれぞれとを比較して、前記単語ペアそれぞれの、前記特徴空間における特徴ベクトルを決定し、
前記単語ペアそれぞれが同義語であるかを、前記同義語辞書を参照して判定し、
同義語と判定された単語ペアそれぞれの特徴ベクトルに同義語であることを示すラベルを付与し前記教師データに含め、非同義語と判定された単語ペアそれぞれの特徴ベクトルに非同義語であることを示すラベルを付与し前記教師データに含める、装置。
【請求項２】
請求項１に記載の装置であって、
前記Ｎ−ｇｒａｍは、上限数以下の全ての自然数のＮ−ｇｒａｍである、装置。
【請求項３】
請求項１に記載の装置であって、
前記プロセッサは、
前記同義語辞書から同義語であるか不明であると判定された単語ペアそれぞれの特徴ベクトルに同義語であるか不明であることを示すラベルを付与して、前記教師データに含め、
前記教師データにおける、同義語であることを示すラベルが付与された特徴ベクトルと、同義語ではないことを示すラベルを付与された特徴ベクトルとを使用して、二つの単語が類似であるか否かを示す前記モデルを生成し、
同義語であるか不明であることを示すラベルを付与された第１単語ペアを選択し、
前記モデル及び前記第１単語ペアの特徴ベクトルから、前記第１単語ペアの単語が同義語であるか否かを判定し、
前記第１単語ペアの単語が同義語であると判定された場合、前記第１単語ペアを前記同義語辞書に追加する、装置。
【請求項４】
請求項１に記載の装置であって、
前記プロセッサは、
前記単語リストから、表記が類似する非同義語の単語ペアを抽出し、
前記抽出した単語ペアの単語間において、不一致のＮ−ｇｒａｍのペアを、特異ペアとして抽出し、
前記特異ペアの一方のＮ−ｇｒａｍが単語ペアの一方の単語に含まれ、前記特異ペアの他方のＮ−ｇｒａｍが前記単語ペアの他方の単語に含まれることを示す特異ペア次元を、前記特徴空間に含める、装置。
【請求項５】
請求項４に記載の装置であって、
前記プロセッサは、
前記単語リストから、表記が類似する非同義語の複数の単語ペアを抽出し、
前記複数の単語ペアそれぞれにおいて、単語間で不一致のＮ−ｇｒａｍのペアを特異ペア候補として抽出し、
前記特異ペア候補それぞれの前記単語リストにおける統計量に基づき、前記特徴空間に含める次元を定義する特異ペアを、前記特異ペア候補から選択する、装置。
【請求項６】
請求項４に記載の装置であって、
前記プロセッサは、
前記特異ペアを抽出した単語ペアから、前記特異ペアと異なるＮ−ｇｒａｍであって、前記特異ペアを抽出した単語ペアの単語に共通のＮ−ｇｒａｍを、文脈情報として抽出し、
選択された単語ペアの特徴ベクトルにおける前記特異ペア次元の値を、前記選択され単語ペアにおける前記特異ペア及び前記文脈情報のそれぞれの有無に基づき決定する、装置。
【請求項７】
単語ペアが同義語であるか判定するモデルを生成するために使用される教師データ、を生成する方法であって、
教師データ生成装置は、同義語辞書と、単語リストと、を保持し、
前記教師データ生成装置が、
前記単語リストからＮ−ｇｒａｍを抽出し、
前記Ｎ−ｇｒａｍそれぞれが単語ペアの単語双方に含まれることを示す次元と、前記Ｎ−ｇｒａｍそれぞれが単語ペアの一方の単語のみに含まれることを示す次元と、を含む特徴空間を定義し、
前記単語リストから生成した単語ペアそれぞれと、前記Ｎ−ｇｒａｍそれぞれとを比較して、前記単語ペアそれぞれの、前記特徴空間における特徴ベクトルを決定し、
前記単語ペアそれぞれが同義語であるかを、前記同義語辞書を参照して判定し、
同義語と判定された単語ペアそれぞれの特徴ベクトルに同義語であることを示すラベルを付与し前記教師データに含め、非同義語と判定された単語ペアそれぞれの特徴ベクトルに非同義語であることを示すラベルを付与し前記教師データに含める、方法。
【請求項８】
請求項７に記載の方法であって、
前記Ｎ−ｇｒａｍは、予め設定されている自然数以下の全ての自然数のＮ−ｇｒａｍである、方法。
【請求項９】
請求項７に記載の方法であって、
前記同義語辞書から同義語であるか不明であると判定された単語ペアそれぞれの特徴ベクトルに同義語であるか不明であることを示すラベルを付与して、前記教師データに含め、
前記教師データにおける、同義語であることを示すラベルが付与された特徴ベクトルと、同義語ではないことを示すラベルを付与された特徴ベクトルとを使用して、二つの単語が類似であるか否かを示す前記モデルを生成し、
同義語であるか不明であることを示すラベルを付与された第１単語ペアを選択し、
前記モデル及び前記第１単語ペアの特徴ベクトルから、前記第１単語ペアの単語が同義語であるか否かを判定し、
前記第１単語ペアの単語が同義語であると判定された場合、前記第１単語ペアを前記同義語辞書に追加する、方法。
【請求項１０】
請求項７に記載の方法であって、
前記単語リストから、表記が類似する非同義語の単語ペアを選択し、
前記抽出した単語ペアの単語間において不一致のＮ−ｇｒａｍを、特異ペアとして選択し、
前記特異ペアの一方のＮ−ｇｒａｍが単語ペアの一方の単語に含まれ、前記特異ペアの他方のＮ−ｇｒａｍが前記単語ペアの他方の単語に含まれることを示す特異ペア次元を、前記特徴空間に含める、方法。
【請求項１１】
請求項１０に記載の方法であって、
前記単語リストから、表記が類似する非同義語の複数の単語ペアを選択し、
前記複数の単語ペアそれぞれにおいて、単語間で不一致のＮ−ｇｒａｍのペアを特異ペア候補として選択し、
前記特異ペア候補それぞれの前記単語リストにおける統計量に基づき、前記特徴空間に含める次元を定義する特異ペアを、前記特異ペア候補から選択する、方法。
【請求項１２】
請求項１０に記載の方法であって、
前記特異ペアを抽出した単語ペアから、前記特異ペアと異なるＮ−ｇｒａｍであって、前記特異ペアを抽出した単語ペアの単語に共通のＮ−ｇｒａｍを、文脈情報として抽出し、
選択された単語ペアの特徴ベクトルにおける前記特異ペア次元の値を、前記選択され単語ペアにおける前記特異ペア及び前記文脈情報のそれぞれの有無に基づき決定する、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同義語の判定を行う識別モデルを生成するための教師データの生成に関する。
【背景技術】
【０００２】
パソコン及びインターネットの普及によって、ユーザがアクセス可能な電子化文書の量が増大している。大量の電子化文書を有効に活用するために、自然言語処理に対する期待が高まっている。自然言語処理を高度化するためには、単語の意味を適切に扱うことが必要であり、同義語、上位・下位語、対義語のような単語間の意味関係を抽出することが必要である。特に同義語は、情報検索における検索漏れやテキストマイニングにおける集計漏れを防ぐために極めて重要である。このような重要性を鑑み、同義語を自動抽出する公知技術が存在する。以下に、同義語を抽出する公知技術について説明する。
【０００３】
最も標準的な技術は、単語毎に単語の出現文脈、すなわち単語の前後に出現する単語の集合、を取得し、出現文脈間の類似性（ｄｉｓｔｒｉｂｕｔｅｄ  ｓｉｍｉｌａｒｉｔｙ）によって単語間の類似性を計算する。しかしながら、文脈の類似性による方法は、単語の出現頻度が小さい場合には、出現文脈を正確に計算できない。これは、本来なら出現文脈に含まれるべき単語が、偶然含まれないといった現象が発生し得るためである。また、大まかに類似しているかどうかを計算することは可能だが、専門用語の細かい差異を検出することが難しい。
【０００４】
そのため、単語の出現頻度に影響されにくく、意味の細かい差異を正確に検出できる同義語抽出技術が必要である。そのような技術として、単語の表記間の類似性を計算する技術が知られている。例えば、単語表記、すなわち文字列間の類似度を計算する技術として、編集距離が知られている（非特許文献１参照）。非特許文献１は、Ｌｅｖｅｎｓｈｔｅｉｎ距離と呼ばれる編集距離を用いて、単語の表記誤りを自動的に修正する技術を開示している。また、単語の表記を単語中の部分文字列の集合によって表現し、集合同士の類似度によって単語の表記の類似度を計算する技術が知られている（特許文献１）。
【０００５】
これらの技術では、教師なし、すなわち正解データを準備せずに文字列の類似度を計算している。一方、近年、電子化された大規模な辞書が入手可能となり、辞書を正解データとして用いて、教師あり学習を行うことが可能となっている。
【０００６】
例えば、翻字（ｔｒａｎｓｌｉｔｅｒａｔｉｏｎ）を教師あり学習によって行う技術が知られている（非特許文献２）。翻字とは、ある文字での表記を、異なる文字での表記に変換することであり、例えば、英語の「ｃｏｍｐｕｔｅｒ」を日本語の「コンピュータ」に変換することをいう。翻字は、異なる文字で表現された同義語の一種である。
【０００７】
同様に翻字を教師あり学習によって行う技術として非特許文献３が知られている。非特許文献３では、言語は異なるが、文字集合が同じである場合（英語と日本語のローマ字表記）に限定し、非特許文献２よりも高精度に翻字を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許７９２５６５２号
【非特許文献】
【０００９】
【非特許文献１】Okuda, Teruo, Eiichi Tanaka and Tamotsu Kasai. "A method for the correction of garbled words based on the Levenshtein metric." Computers, IEEE Transactions on 100.2 (1976): 172-178.
【非特許文献２】Klementiev, Alexandre and Dan Roth. "Named Entity Discovery in Multilingual Comparable Corpora." Urbana 51: 61801.
【非特許文献３】Bergsma, Shane and Grzegorz Kondrak. "Alignment-based discriminative string similarity." Annual meeting-Association for Computational Linguistics. Vol. 45. No. 1. 2007.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上述のように、非特許文献１、特許文献１に開示された技術は、教師なし学習に基づいている。大規模な同義語辞書を用いることができる場合には、一般に、教師あり学習に基づく技術の方が高い精度を達成できる。非特許文献２、非特許文献３に開示されている技術は、教師あり学習によって、単語のペアが翻字（異なる言語間の同義語）であるかどうかを識別する技術であり、同一文言語内の同義語にも適用することが可能である。しかしながら、従来技術には、以下の問題が存在する。
【００１１】
翻字の場合、単語ペアの一方の単語と他方の単語が、異なる文字集合からの文字で構成さえている場合がある。そのため、非特許文献２は、単語ペア同士で文字が一致するかどうかを判定できることを前提とせず、一方の単語中の部分文字列と他方の単語中の部分文字列の任意のペアを考慮し、単語ペアを部分文字列のペアによって表現する。例えば、教師あり学習によって、意味のある部分文字列のペア、例えば、”ｃｏ”と「コ」、が学習され、意味のあるペアに基づいて、単語ペア同士が類似しているかどうかを判定するモデルが学習される。
【００１２】
しかしながら、単語中の任意の部分文字列同士のペアを考慮することによって、ベクトルの次元数が非常に大きくなる。特に非特許文献２では、ベクトルの非ゼロの要素数が非常に大きくなるため、計算時間が増加するとともに、意味のない次元が特徴次元に含まれるため、精度低下の可能性も高まる。
【００１３】
非特許文献３では、非特許文献２の問題点を解決するために、予めＤＰ（Ｄｙｎａｍｉｃ  Ｐｒｏｇｒａｍｍｉｎｇ）マッチングにより、文字同士の対応付けを行い、対応付いた文字ペアをまたぐ部分文字列ペアを除去することによって、次元数を削減する。文字の対応付けを行うため、単語ペアを構成するための文字集合は、同じものでなければならない。
【００１４】
非特許文献３では、ベクトルの非ゼロの要素数は大きく削減されるものの、ベクトル空間の次元数そのものは、非特許文献２と同等レベルとなる。それは、負例、すなわち同義語ではない単語ペアから、多くの意味のない対応付けが発生するためである。そのため、精度が低下する。
【００１５】
本発明は、同一言語内の同一の文字集合から選択された文字からなる単語ペアが同義語であるかを高精度に判定することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の代表的な一例は、単語ペアが同義語であるか判定するモデルを生成するために使用される教師データ、を生成する装置であって、プロセッサと、メモリと、を含み前記メモリは、同義語辞書と、単語リストと、を格納し、前記プロセッサは、前記単語リストから文字Ｎ−ｇｒａｍ（以下、Ｎ−ｇｒａｍ）を抽出し、前記Ｎ−ｇｒａｍそれぞれが単語ペアの単語双方に含まれることを示す次元と、前記Ｎ−ｇｒａｍそれぞれが単語ペアの一方の単語のみに含まれることを示す次元と、を含む特徴空間を定義し、前記単語リストから生成した単語ペアそれぞれと、前記Ｎ−ｇｒａｍそれぞれとを比較して、前記単語ペアそれぞれの、前記特徴空間における特徴ベクトルを決定し、前記単語ペアそれぞれが同義語であるかを、前記同義語辞書を参照して判定し、同義語と判定された単語ペアそれぞれの特徴ベクトルに同義語であることを示すラベルを付与し前記教師データに含め、非同義語と判定された単語ペアそれぞれの特徴ベクトルに非同義語であることを示すラベルを付与し前記教師データに含める。
【発明の効果】
【００１７】
本発明の一態様によれば、同一言語内の同一の文字集合から選択された文字からなる単語ペアが同義語であるかを高精度に判定できる。上記以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１８】
【図１】同義語抽出装置の構成を示す。
【図２】同義語抽出プログラムによって実行される同義語抽出処理の概略を示す。
【図３】同義語抽出プログラムによる同義語抽出処理のフローチャートを示す。
【図４】特徴量データの構成例を示す。
【図５】教師データの構成例を示す。
【図６】特徴抽出処理のフローチャートを示す。
【図７】特異ペア抽出処理のフローチャートを示す。
【図８】特異ペアデータの構成例を示す。
【図９】特異ペアの特徴次元が追加された特徴量データの構成例を示す。
【図１０】文脈付きの特異ペアデータの構成例を示す。
【発明を実施するための形態】
【００１９】
以下、添付図面を参照して本発明の実施形態を説明する。本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。各図において共通の構成については同一の参照符号が付されている。
【００２０】
以下において、単語の表記に基づいて単語ペアが同義語か否かを判定する方法を開示し、より具体的には、予め作成されている辞書データを用いて表記に基づいて単語ペアが同義語か否かを判定する方法を開示する。本開示の目的の一つは、同一言語内の同一文字集合から作成される単語ペアが同義語であるか否かを高精度に判定することである。
【００２１】
本開示の技術の一例は、単語ペアの表記に基づく特徴ベクトルを用いて、単語ペアが同義語であるか否かを教師あり学習によって高精度に判定する。具体的には、当該技術は、単語ペアの特徴ベクトルのベクトル空間の次元（特徴次元）を、単語中のＮ−ｇｒａｍに基づいて定義する。
【００２２】
特徴次元は、Ｎ−ｇｒａｍが単語ペアの両方の単語に含まれることを示す次元と、単語ペアのいずれか一方のみに含まれることを示す次元との、２種類の次元を含む。つまり、単語ペアにおいてＮ−ｇｒａｍが一致することを示す次元と、単語ペアにおいてＮ−ｇｒａｍが一致しないことを示す次元とを含む。
【００２３】
単語ペアの類似性を判定するための特徴ベクトルを、Ｎ−ｇｒａｍのペアではなく、一致したＮ−ｇｒａｍ及び一致しなかったＮ−ｇｒａｍに基づいて生成することにより、少ない特徴次元数で高精度な判定を実現できる。
【００２４】
以下において、本開示の構成を具体的に説明する。図１は、本実施形態の同義語抽出装置１００の構成を示す。同義語抽出装置１００は、ＣＰＵ１０１、主メモリ１０２、入出力装置１０３、及びディスク装置１１０を備える。
【００２５】
ＣＰＵ１０１はプロセッサであって、主メモリ１０２に記憶されたプログラムを実行することによって各種処理を実行する。具体的には、ＣＰＵ１０１は、ディスク装置１１０に記憶されたプログラムを主メモリ１０２にロードし、主メモリ１０２にロードされたプログラムを実行する。プログラムは、ネットワークを介して外部サーバから主メモリ１０２にロードされてもよい。
【００２６】
主メモリ１０２は、ＣＰＵ１０１によって実行されるプログラム及びＣＰＵ１０１によって必要とされるデータを記憶する。入出力装置１０３は、ユーザからの情報の入力を受け付けるとともに、ＣＰＵ１０１の指示に応じて情報を出力する。例えば、入出力装置１０３は、キーボード及びマウス等の入力装置、並びに、ディスプレイ等の出力装置である。
【００２７】
ディスク装置１１０は、計算機読み取り可能な非一時的記憶媒体を含む補助メモリである。ディスク装置１１０は、各種プログラム及び各種データを記憶する。具体的には、ディスク装置１１０は、ＯＳ１１１、同義語抽出プログラム１１２、単語リスト１１３、同義語辞書１１４、特徴量データ１１５、教師データ１１６、識別モデル１１７、及び特異ペアデータ１１８を記憶する。
【００２８】
同義語抽出プログラム１１２は、入力された単語リスト１１３に含まれる単語の任意ペアが同義語であるかどうかを判定し、同義語であると判定された単語ペアを同義語として抽出する。同義語抽出プログラム１１２は、特徴抽出サブプログラム１１２１、教師データ作成サブプログラム１１２２、モデル学習サブプログラム１１２３、及び同義語識別サブプログラム１１２４を含む。これらのプログラムの処理は図２で詳細を説明する。
【００２９】
ＣＰＵ１０１は、上記プログラムを実行することによって所定の機能を実現する。プログラムはプロセッサによって実行されることで、定められた処理を行う。従って、本開示において、プログラムを主語とする説明は、ＣＰＵ１０１又は同義語抽出装置１００を主語とした説明でもよい。
【００３０】
ＣＰＵ１０１は、プログラムに従って動作することによって、所定の機能を実現する機能部（手段）として動作する。例えば、ＣＰＵ１０１は、同義語抽出プログラム１１２に従って動作することで同義語抽出部（同義語抽出手段）として機能する。同義語抽出装置１００は、これらの機能部（手段）を含む装置である。
【００３１】
単語リスト１１３は、同義語抽出プログラム１１２へ入力されるデータである。単語リスト１１３は、２個以上の異なる単語のリストであって、任意のフォーマットを持ち得る。例えば、テキストを形態素解析して単語に分割し、助詞等の不要な単語を除去した後、単語をソート及び重複除去することで、異なる単語の単語リスト１１３を生成できる。
【００３２】
同義語辞書１１４は、同義語のペア、つまり、同じ意味を持つ異なる表記の単語のペアを格納している。同義語辞書１１４には、人手又は自動で同義語のペアが登録される。後述するように、同義語識別サブプログラム１１２４は、単語リストから選択した単語ペアであって、同義語辞書１１４で同義語判定できなかった単語ペアを、識別モデル１１７を使用して同義語ペアであるか判定する。当該単語ペアが同義語ペアであると判定された場合、同義語識別サブプログラム１１２４は、当該単語ペアを同義語辞書１１４に追加する。
【００３３】
特徴量データ１１５は、単語ペアそれぞれの特徴ベクトルを、対応する単語ペアに関連付けて格納する。単語ペアの特徴ベクトルの特徴量（特徴次元の値）は、単語ペアの部分文字列（Ｎ−ｇｒａｍ）により決定される。特徴量データ１１５の詳細は、図４を参照して後述する。教師データ１１６は、特徴量データ１１５内の単語ペアに対し、同義語辞書１１４を用いて決定されたラベルを付与して作成される。教師データ１１６は、ラベルが付与された単語ペアを、対応する特徴ベクトルと関連付けて管理する。教師データ１１６の詳細は、図５を参照して後述する。
【００３４】
識別モデル１１７は、同義語識別サブプログラム１１２４が使用するデータであり、二つの単語が同義語であるか否かを判定するための基準を示す。具体的には、識別モデル１１７は、同義語である単語ペアと同義語ではない単語ペアの特徴ベクトル空間における境界を表現している。
【００３５】
特異ペアデータ１１８は、特徴抽出サブプログラム１１２１が作成、使用するデータである。特異ペアデータ１１８は、表記は類似しているにも関わらず、同義語ではない単語ペアを判別するために使用される。特異ペアデータ１１８の詳細は、図７を参照して後述する。
【００３６】
図２は、同義語抽出装置１００によって実行される同義語抽出処理の概略を示す。特徴抽出サブプログラム１１２１は、単語リスト１１３から単語ペアを選択し、各単語ペアのＮ−ｇｒａｍ表現による特徴ベクトルを生成する。特徴抽出サブプログラム１１２１は、生成した単語ペアの特徴ベクトルを、対応する単語ペアと関連付けて、特徴量データ１１５に含める。
【００３７】
教師データ作成サブプログラム１１２２は、特徴量データ１１５から単語ペアを順次選択し、同義語辞書１１４を用いて同義語か否か判定し、当該判定結果を示すラベルを、当該単語ペアに付与する。教師データ作成サブプログラム１１２２は、ラベルを付与した単語ペアを、対応する特徴量ベクトルと関連付けて、教師データ１１６に含める。教師データ１１６は、正例（同義語である単語ペア）と、負例（同義語ではない単語ペア）を含む。教師データ１１６は、同義語か否かが不明のレベルを付与された単語ペアを含んでもよい。
【００３８】
モデル学習サブプログラム１１２３は、教師データ１１６を読み込み、識別モデル１１７を学習する。同義語識別サブプログラム１１２４は、教師データ１１６を読み込み、識別モデル１１７を用いて、単語ペアが同義語のペアであるか否かを判定する。同義語と判定された単語ペアは、必要であれば人手のチェックを介して、同義語辞書１１４に格納される。
【００３９】
図３は、同義語抽出プログラム１１２による同義語抽出処理のフローチャートを示す。同義語抽出プログラム１１２は、単語リスト１１３内の単語を組み合わせて生成できる全ての処理すべき単語ペアに対して、ステップＳ１２〜Ｓ１４が実行されたか否かを判定する（Ｓ１１）。
【００４０】
全ての処理すべき単語ペアは、単語リスト１１３内の単語を組み合わせて生成できる全単語ペアの一部又は全ての単語ペアである。同義語抽出プログラム１１２は全ての単語ペアを処理していなくても、予め定められた終了条件が満足されれば、当該フローを終了する。
【００４１】
ステップＳ１１の判定結果がＹｅｓである場合、同義語抽出プログラム１１２は、ステップＳ１５に進む。一方、ステップＳ１１の判定結果がＮｏである場合、同義語抽出プログラム１１２は、ステップＳ１２〜Ｓ１４が未だ実行されていない新たな単語ペアを、単語リスト１１３から取得する（Ｓ１２）。
【００４２】
次に、同義語抽出プログラム１１２は、特徴抽出サブプログラム１１２１を呼び出すことによって、単語ペアの特徴ベクトルを生成し、特徴量データ１１５に格納する（Ｓ１３）。ステップＳ１３の詳細は、図６を参照して後述する。
【００４３】
次に、同義語抽出プログラム１１２は、教師データ作成サブプログラム１１２２を呼び出すことによって、特徴量データ１１５を読み込み、同義語辞書１１４を参照して、エントリのそれぞれにラベルを付与し、教師データ１１６に格納する（Ｓ１４）。
【００４４】
ラベルは、同義語である（正例）ことを示すラベル、例えば「＋１」と、同義語ではない（負例）ことを示すラベル、例えば「−１」の２種類のラベルを含む。これ以外に、同義語かどうかが不明であることを示すラベル、例えば「０」を付与するなど、アプリケーションに応じて、様々なラベルを付与してとい。以下に説明する例において、上記３種類のラベルが付与される。
【００４５】
教師データ作成サブプログラム１１２２は、例えば、以下のようにラベルを付与する。対象の単語ペアが同義語辞書１１４に含まれている場合、つまり、対象の単語ペアが同義語辞書１１４に登録されているいずれかの単語ペアと一致する場合、教師データ作成サブプログラム１１２２は、対象の単語ペアに「＋１」を付与する。
【００４６】
対象の単語ペアを構成する双方の単語が同義語辞書１１４に含まれ、かつ、対象の単語ペアは同義語辞書１１４に含まれない場合、教師データ作成サブプログラム１１２２は、対象の単語ペアに「−１」を付与する。言い換えれば、対象の単語ペアが同義語辞書１１４に登録されているいずれの単語ペアとも一致せず、対象の単語ペアの単語が同義語辞書１１４内の異なる単語ペアに含まれている場合、「−１」が付与される。
【００４７】
対象の単語ペアを構成する２個の単語の少なくとも一方が、同義語辞書１１４に含まれていない場合は、対象の単語ペアが同義語のペアであるか定めることができない。したがって、教師データ作成サブプログラム１１２２は、対象の単語ペアに、同義語かどうかが不明であることを示す「０」を付与する。
【００４８】
同義語抽出プログラム１１２は、モデル学習サブプログラム１１２３を呼び出すことによって、教師データ１１６を読み込み、識別モデル１１７を出力する（Ｓ１５）。識別モデルを学習するアルゴリズムとしては、例えば、以下に開示されているサポートベクターマシンを用いることができる。Burges, Christopher JC. "A tutorial on support vector machines for pattern recognition." Data mining and knowledge discovery 2.2 (1998): 121-167.
【００４９】
モデル学習サブプログラム１１２３は、サポートベクターマシン以外の任意のアルゴリズムを使用できる。種々のアルゴリズムを使用した識別モデル１１７の生成方法は公知の技術であり、詳細説明を省略する。
【００５０】
同義語抽出プログラム１１２は、教師データ１１６５中の全ての処理すべき単語ペアに対してステップＳ１７が実行されたか否かを判定する（Ｓ１６）。ステップＳ１７の判定結果がＹｅｓの場合、同義語抽出プログラム１１２は、当該フローを終了する。ステップＳ１７の判定結果がＮｏの場合、ステップＳ１７に進む。
【００５１】
全ての処理すべき単語ペアは、一例において、教師データ１１６中のラベルが「０」、すなわち同義語かどうかが不明の単語ペアのことを示す。ただし、それ以外の単語ペアに関しても、正解として用いた同義語辞書１１４が誤っている可能性があるため、全ての単語ペアに関して処理を行ってもよい。
【００５２】
同義語抽出プログラム１１２は、同義語識別サブプログラム１１２４を呼び出すことによって、特徴量データ１１５を読み込み、識別モデルに基づいて単語ペアが同義語であるかどうかを識別する（Ｓ１７）。同義語だと判定された単語ペアは、同義語辞書１１４に登録済みでない場合、同義語辞書１１４に追加される。
【００５３】
以下では、ステップＳ１３の特徴抽出を図４、図６を用いて詳細に説明する。図４は、特徴量データ１１５の構成例を示す。特徴量データ１１５は、単語ペアと特徴ベクトルを関連付ける。特徴ベクトルの次元は、単語ペアのＮ−ｇｒａｍを使用して定義される。
【００５４】
図４において、単語ペアのカラム１５１は、単語リスト１１３から選択された単語ペアを格納している。特徴ベクトルのカラム１５２は、各単語ペアに対応する特徴ベクトルを格納している。特徴ベクトルは、複数の特徴量で構成されており、特徴量それぞれは特徴ベクトル空間の特徴次元に対応する。一つの特徴次元は、一つのＮ−ｇｒａｍに対応する。
【００５５】
図４に示すように、一致するＮ−ｇｒａｍの特徴次元と、一致しないＮ−ｇｒａｍの特徴次元の、２種類の特徴次元が存在する。一致するＮ−ｇｒａｍの特徴次元は、単語ペアの双方の単語に当該Ｎ−ｇｒａｍが含まれているか否かを示す。一致しないＮ−ｇｒａｍの特徴次元は、単語ペアの一方の単語のみに当該Ｎ−ｇｒａｍが含まれているか否かを示す。
【００５６】
図４の例においては、各特徴次元は、１−ｇｒａｍ又は２−ｇｒａｍの情報を示す。例えば、「＋腎」は、１−ｇｒａｍである「腎」が、単語ペアの双方の単語に含まれていることを示す特徴次元であり、「−腎」は、１−ｇｒａｍである「腎」が、単語ペアの一方の単語のみに含まれていることを示す特徴次元である。
【００５７】
「＋腎静」は、２−ｇｒａｍである「腎静」が、単語ペアの双方の単語に含まれていることを示す特徴次元であり、「−腎静」は、２−ｇｒａｍである「腎静」が、単語ペアの一方の単語のみに含まれていることを示す特徴次元である。
【００５８】
「腎」が、単語ペアの双方の単語に含まれている場合、「＋腎」の値は「１」であり、「−腎」の値は「０」である。「腎」が、単語ペアの一方の単語のみに含まれている場合、「＋腎」の値は「０」であり、「−腎」の値は「１」である。「腎」が、単語ペアのいずれの単語にも含まれていない場合、「＋腎」及び「−腎」の値は、共に「０」である。
【００５９】
図５は、教師データ１１６の構成例を示す。教師データ１１６は、特徴量データ１１５同様の、単語ペアのカラム１６１及び特徴ベクトルのカラム１６２に加え、単語ペアの同義性を示すラベルのカラム１６３を有する。カラム１６３は、ラベルの値を格納し、各単語ペアが、同義語ペア、非同義語ペア、不明のいずれかであるかを示す。図５の例において、「＋１」は同義語ペアを示し、「−１」は非同義語ペアを示し、「０」は単語が同義語であるか否か不明であることを示す。
【００６０】
このように、特徴量データ１１５は、単語ペアの両方に含まれるＮ−ｇｒａｍ、一方のみに含まれるＮ−ｇｒａｍ、いずれにも含まれないＮ−ｇｒａｍを区別して表現することができる。
【００６１】
図６は、ステップＳ１３の特徴抽出処理のフローチャートを示す。以下では、「腎静脈塞栓症」、「腎動脈塞栓症」、「腎動脈血栓症」という３つの単語を例に挙げて説明する。
【００６２】
特徴抽出サブプログラム１１２１は、単語リスト１１３の全ての単語から、Ｎ≦ＭであるＮ−ｇｒａｍを全て生成する（Ｓ１３１）。上述のように、単語リスト１１３の全ての単語は、「腎静脈塞栓症」、「腎動脈塞栓症」、「腎動脈血栓症」である。Ｍは、予め設定されている自然数であり、ここでは、Ｍ＝２を仮定する。Ｍ以下の自然数の一部の数のＮ−ｇｒａｍを生成してもよい。Ｍ以下の全ての自然数のＮ−ｇｒａｍを抽出することで効率的に高精度判定可能な特徴ベクトルを生成できる。Ｎの上限Ｍは設定されていなくてもよい。この場合、Ｎの上限は、結果的に単語リスト１１３内の単語の最大文字数である。
【００６３】
特徴抽出サブプログラム１１２１は、「腎静脈塞栓症」、「腎動脈塞栓症」、「腎動脈血栓症」から、１−ｇｒａｍと２−ｇｒａｍの文字列を生成する。例えば、「腎」、「静」、「動」、・・・「静脈」、「動脈」といったＮ−ｇｒａｍが生成される。
【００６４】
次に、特徴抽出サブプログラム１１２１は、特徴次元を定義する（Ｓ１３２）。例えば、特徴抽出サブプログラム１１２１は、ステップＳ１３１で生成した全てのＮ−ｇｒａｍをソートし、重複排除することで、Ｎ−ｇｒａｍの異なりリスト（全種類のＮ−ｇｒａｍのリスト）を生成する。
【００６５】
さらに、特徴抽出サブプログラム１１２１は、異なりリストの各Ｎ−ｇｒａｍから二つの特徴次元を定義する。具体的には、特徴抽出サブプログラム１１２１は、各Ｎ−ｇｒａｍに対し、そのＮ−ｇｒａｍが単語ペアの両単語に含まれていることを示す特徴次元と、Ｎ−ｇｒａｍの一方単語にのみ含まれることを示す特徴次元と、を定義する。
【００６６】
Ｎ−ｇｒａｍが双方の単語に含まれる場合、単語ペアの単語間において当該Ｎ−ｇｒａｍが一致している。Ｎ−ｇｒａｍが単語ペアのいずれか一方のみに含まれている場合、当該Ｎ−ｇｒａｍは、単語間では一致していない。
【００６７】
Ｎ−ｇｒａｍが単語双方に含まれることを示す特徴次元と、Ｎ−ｇｒａｍが一方の単語のみに含まれることを示す特徴次元とを区別するために、図４を参照して説明したように、特徴抽出サブプログラム１１２１は、Ｎ−ｇｒａｍの前に接頭辞「＋」又は「−」を付与する。
【００６８】
次に、特徴抽出サブプログラム１１２１は、各単語ペアに関して、各特徴次元の値を決定し、特徴ベクトルを生成する（Ｓ１３３）。例えば、図４に示すように、＜腎静脈塞栓症、腎動脈塞栓症＞という単語ペアの１−ｇｒａｍにおいて、「静」、「動」という１−ｇｒａｍのみが不一致で、それ以外は一致している。２−ｇｒａｍにおいては、「腎静」、「腎動」等が不一致で、「塞栓」、「栓症」等は一致している。
【００６９】
＜腎動脈塞栓症、腎動脈血栓症＞という単語ペアの１−ｇｒａｍにおいて、「塞」、「血」という１−ｇｒａｍのみが不一致で、それ以外は一致している。２−ｇｒａｍにおいては、「塞栓」、「血栓」等が不一致で、「腎動」、「動脈」等が一致している。
【００７０】
＜腎静脈塞栓症、腎動脈塞栓症＞という単語ペアを例にして特徴ベクトルの決定方法を説明する。例えば、「腎」が一致していることから、「＋腎」の値は１であり、「−腎」の値は０である。「静」は一方の単語のみに含まれることから、「＋静」の値は０であり、「−静」の値は１である。「血」はいずれの単語にも含まれないことから、「＋血」、「−血」ともに、０である。
【００７１】
上記例において、特徴ベクトルにおける特徴次元の値（重み）は、２値、すなわち０、１のいずれかである。特徴ベクトルにおける特徴次元の値は、実数値でもよい。例えば、例えば文書検索で用いられるｉｄｆ値のように、Ｎ−ｇｒａｍの出現頻度により重要度を示す実数値でもよい。特徴次元の値（重み）は、Ｎ−ｇｒａｍのＮの値に応じて、変化してもよい。
【００７２】
以下では、ステップＳ１３の特徴抽出処理において、更に高精度な同義語判定を行うための特徴ベクトル（特徴次元）が得られる、特異ペアによる特徴抽出処理を、図７、図８を用いて詳細に説明する。特異ペアは、表記（文字列）が類似するが非同義である単語ペアに含まれるＮ−ｇｒａｍのペアである。単語ペア一方の単語が特異ペアの一方のＮ−ｇｒａｍを含み、単語ペアの他方が特異ペアの他方のＮ−ｇｒａｍを含む場合、当該単語ペアが類似していても、非同義となる。
【００７３】
例えば、上述と同様に、「腎静脈塞栓症」、「腎動脈塞栓症」、「腎動脈血栓症」という３つの単語を考える。これらは、文字列として非常に類似している。医療用語の体系を定めるＩＣＤ−１０によれば、「腎動脈塞栓症」と「腎動脈血栓症」は、同じコードが付与された同じ意味を持つ言葉である。一方、「腎静脈塞栓症」と「腎動脈塞栓症」は、文字列としては極めて類似しているにも関わらず、異なるコードが付与されている。すなわち、専門家の視点では、これらは異なる意味を持つ単語である。
【００７４】
特異ペアによる特徴抽出処理は、上述のような細かな意味の差異を検出できる同義語判定を実現する特徴次元を生成する。具体的には、特異ペアによる特徴抽出処理は、教師データ１１６が非同義語であることを示す単語ペアであって、類似する単語ペアを抽出する。さらに、特異ペアによる特徴抽出処理は、類似する単語ペア内で一致していないＮ−ｇｒａｍのペアを抽出し、特徴ベクトルの特徴次元に追加する。これにより、類似している単語ペアが同義語ペアであるか否か、より正しく判定できる。
【００７５】
図７は特異ペア抽出処理のフローチャートを示す。上述のように、「腎静脈塞栓症」、「腎動脈塞栓症」、「腎動脈血栓症」という３つの単語を考える。特徴抽出サブプログラム１１２１は、教師データ１１６内の単語ペアから、ラベルが「−１」、すなわち同義語ではない単語ペアのみを選択する（Ｓ１３４）。例えば、＜腎静脈塞栓症、腎動脈塞栓症＞が、同義語ではない単語ペアとして選択されたとする。
【００７６】
特徴抽出サブプログラム１１２１は、選択された非同義語の単語ペアから、類似する単語ペアのみを選択する（Ｓ１３５）。例えば、特徴抽出サブプログラム１１２１は、ＤＰ（Ｄｙｎａｍｉｃ  Ｐｒｏｇｒａｍｍｉｎｇ：動的計画法）マッチングを用いて、文字の対応付けを行った後、予め定められた条件、例えば、「不一致の文字が１文字以内」等の条件により、類似する単語ペアのみを選択できる。
【００７７】
＜腎静脈塞栓症、腎動脈塞栓症＞の例において、［腎−腎、静−動、脈−脈、塞−塞、栓−栓、症−症］という対応関係が得られ、［静−動］のみが不一致である。したがって、＜腎静脈塞栓症、腎動脈塞栓症＞は、類似する単語ペアとして選択される。
【００７８】
特徴抽出サブプログラム１１２１は、他の方法によって、表記が類似し、かつ非同義の単語のペアを抽出することもできる。例えば、同義語抽出プログラム１１２は、特異ペアを使用することなく特徴次元を定義して、特徴量データ１１５、教師データ１１６、及び識別モデル１１７を生成する。
【００７９】
さらに、特徴抽出サブプログラム１１２１は、教師データ１１６内の単語ペアから同義語ではない単語ペアを選択し、識別モデル１１７を使用して同義語判定を行う。特徴抽出サブプログラム１１２１は、識別モデル１１７により同義語であると判定された単語ペアを、類似する非同義の単語ペアと決定する。
【００８０】
特徴抽出サブプログラム１１２１は、選択された単語ペアの文字の対応関係を参照し、当該単語ペアから、一致していないＮ−ｇｒａｍのペアを抽出する（Ｓ１３６）。＜腎静脈塞栓症、腎動脈塞栓症＞の例において、［静−動、腎静−腎動、静脈−動脈］のようなＮ−ｇｒａｍのペアが得られる。
【００８１】
Ｎの値は特徴ベクトルの特徴次元を定義するＮの値と同一でよい。つまり、Ｎの値は、Ｍ以下の全ての自然数でもよい。特異ペアの構成要素となるＮ−ｇｒａｍが取り得るＮの値と、特徴次元を定義するＮ−ｇｒａｍが取りえるＮの値とは、異なっていてもよい。特徴抽出サブプログラム１１２１は、Ｍ以下の自然数から選択された一部の自然数のＮ−ｇｒａｍのペアを選択してもよく、Ｍより大きい値以下の全ての自然数のＮ−ｇｒａｍのペアを選択してもよい。
【００８２】
特徴抽出サブプログラム１１２１は、得られたＮ−ｇｒａｍのペアを集計して、統計量を計算する。特徴抽出サブプログラム１１２１は、統計量と閾値を比較して、統計量が閾値を超えるＮ−ｇｒａｍのペアを、特異ペアとして選択する（Ｓ１３７）。これにより、より適切な特異ペアを選択できる。なお、ステップＳ１３７は省略してもよい。
【００８３】
統計量が閾値を超える場合とは、統計量の種類によって、統計量が閾値よりも大きい又は小さい場合を示す。統計量の一例は、頻度であり、この場合、頻度が閾値よりも大きい場合を示す。頻度は、教師データ１１６から選択された、類似する非同義の単語からなる単語ペアにおいて、当該Ｎ−ｇｒａｍが含まれる単語ペアの数で表わすことができる。
【００８４】
他の統計量の例は、自己相互情報量や対数尤度比である。あるいは、類似する非同義の単語からなる単語ペアにおいて、当該Ｎ−ｇｒａｍが含まれる単語ペアの数の、全ての単語ペアにおいて、当該Ｎ−ｇｒａｍが含まれる単語ペアの数に対する割合を用いることもできる。
【００８５】
図８は、特異ペアデータ１１８の構成例を示す。図８の例において、特異ペアデータ１１８は、番号のカラム１８１、頻度のカラム１８２、及び特異ペア（本例で２−ｇｒａｍのペア）を示すカラム１８３を有する。図８の例は、頻度が上位の２−ｇｒａｍの特異ペアを選択し、頻度の高い順で特異ペアをリスト化している。
【００８６】
特異ペアペアが含まれる単語ペアは、他の部分（文字）が完全に一致していても、同義語ではない可能性が高い。図８の例を解釈すると、＃３、＃５、＃６は病名（症状）であり、病気（症状）異なる単語は、他の部分（文字）が完全に一致していても同義語ではないと判断されることを示している。例えば、＜末梢神経腫瘍、末梢神経損傷＞の単語ペアは、［腫瘍−損傷］の特異ペアを含み、類似するが非同義の単語ペアの例である。
【００８７】
また、＃１、＃２、＃４は部位であり、同じ病気（症状）であっても、部位が異なる場合は、専門用語としては、同義語ではないと判断されることを示している。例えば、＜腎静脈塞栓症、腎動脈塞栓症＞の単語ペアは、［静脈−動脈］の特異ペアを含み、類似するが非同義の単語ペアの例である。
【００８８】
特異ペアが生成された後、特徴抽出サブプログラム１１２１は、ステップＳ１３の特徴抽出処理において、特異ペアを特徴ベクトルの特徴量に追加する。これにより、同義語判定の精度を向上することができる。
【００８９】
具体的には、ステップＳ１３２の特徴次元設定において、特徴抽出サブプログラム１１２１は、特異ペアを特徴次元として特徴量データ１１５に追加する。更に、ステップＳ１３３の特徴ベクトル生成において、特徴抽出サブプログラム１１２１は、一致しなかったＮ−ｇｒａｍのペアが特異ペアであれば、その特異ペアに対応する次元に値（重み）を設定する。設定される値は、例えば、１やｉｄｆ値である。
【００９０】
図９は、特異ペアの次元が追加された特徴量データ１１５の構成例を示す。特徴量データ１１５は、図４に示す一致するＮ−ｇｒａｍの特徴次元と一致しないＮ−ｇｒａｍの特徴次元に加え、特異ペアの特徴次元を有している。単語ペアの一方が特異ペアの一方を含み、単語ペアの他方が特異ペアの他方を含む場合、当該特徴次元に「１」が設定されている。例えば、単語ペア＜腎静脈塞栓症、腎動脈塞栓症＞は、特異ペア［静脈−動脈］を含み、当該特徴次元に「１」が設定されている。
【００９１】
単語ペアの少なくとも一方が、特異ペアを構成するＮ−ｇｒａｍのいずれも含まない場合、当該特徴次元に「０」が設定されている。例えば、単語ペア＜腎静脈塞栓症、腎動脈塞栓症＞は、特異ペア［上腕−大腿］を含まず、当該特徴次元に「１」が設定されている。図９の特徴量データ１１５に対応する教師データ１１６は、図９の特徴量データ１１５のそれぞれのレコード（単語ペア）に、ラベルが付与されたデータである。
【００９２】
特異ペアによる非同義語判定は、以下のような方法で更に精度を向上させることができる。例えば、［静脈−動脈］のＮ−ｇｒａｍペアを例として考える。［静脈−動脈］というＮ−ｇｒａｍペアを含む類似した単語ペアが１００種類あり、これらが１００％負例、すなわちラベルが「−１」である場合には、問題は発生しない。
【００９３】
しかしながら、負例の割合が高いが１００％には満たないＮ−ｇｒａｍペアが存在する。このような特異ペアを、全ての単語ペアの同義語判定に対して同様に適用することは、同義語判定精度を低下させ得る。したがって、特異ペアに対して予め設定されている文脈情報を参照することで、特異ペアによる非同義語判定の精度を向上する。
【００９４】
特異ペアの文脈情報は、特異ペアが抽出される類似非同義（負例）の単語ペアにおいて、特異ペア以外の部分から抽出されるＮ−ｇｒａｍである。例えば、＜上腕骨骨折、大腿骨骨折＞の単語ペアから、［上腕−大腿］という特異ペアが抽出されるとする。例えば、Ｎ−ｇｒａｍ「骨」、「骨折」は、文脈情報である。
【００９５】
図１０は、文脈情報付きの特異ペアデータ１１８の例を示す。特異ペアデータ１１８は、特異ペアと、特ペアに対応する文脈情報を格納している。特徴抽出サブプログラム１１２１は、非同義単語ペアから特異ペアを抽出する際に、文脈情報を抽出し、特異ペアとともに、特異ペアデータ１１８に格納する。
【００９６】
一つの単語ペアから抽出される文脈情報は、例えば、単語ペアに共通するＮ−ｇｒａｍであって、特異ペアの構成要素以外の全てのＮ−ｇｒａｍである。文脈情報は、特異ペアの構成要素以外のＮ−ｇｒａｍの一部でもよく、例えば、Ｍ以下の自然数のＮ−ｇｒａｍでもよい。特異ペアを含む複数の類似非同義の単語ペアが存在する場合、文脈情報はそれら全ての単語ペアから抽出されたＮ−ｇｒａｍを特異ペア毎に集約したものになる。
【００９７】
特徴抽出サブプログラム１１２１は、単語ペアの特徴ベクトル生成において、一致しなかったＮ−ｇｒａｍのペアが特異ペアである場合、それ以外の単語ペアに共通するＮ−ｇｒａｍが文脈情報と一致するかどうかを判定する。一致する度合いが高い場合、例えば予め定められた閾値を超える場合、特徴抽出サブプログラム１１２１は、特異ペアに対応する次元に「１」を設定する。文脈情報が一致する度合いが低い場合、特徴抽出サブプログラム１１２１は、特異ペアに対応する次元には「０」を設定する。特異ペアによる特異次元の値を文脈情報に基づいて決定することによって、更に同義語判定の精度を向上できる。
【００９８】
一致する度合いの計算は、文脈として設定されたＮ−ｇｒａｍが予め定められた個数や、単語ペアの共通するＮ−ｇｒａｍのうち文脈情報と一致する割合等を用いることができる。文書の類似検索技術で用いられる類似度の計算式を用いてもよい。特異ペアに対応する次元が０以外の複数の値を取りえる場合、その値は、一致する度合いに応じて決定されてもよい。
【００９９】
たとえば、「上腕軟部腫瘍」と「大腿軟部腫瘍」とは、共に、ＩＣＤ−１０において「Ｄ４８１」というコードを持ち同義語である。一方、「上腕骨骨折」は「Ｓ４２３」、「大腿骨骨折」は「Ｓ７２９」というコードを持ち、これらは同義語ではない。
【０１００】
単語ペア＜上腕軟部腫瘍、大腿軟部腫瘍＞は、［上腕、大腿］という特異ペアを含むが、文脈情報である「骨折」や「損傷」を含まないため、特徴抽出サブプログラム１１２１は、特異ペアに対応する次元に「０」を設定する。一方、＜上腕骨骨折、大腿骨骨折＞の場合は、［上腕、大腿］を含むだけでなく、「骨折」という文脈情報を含む。特徴抽出サブプログラム１１２１は、特異ペアに対応する次元に「１」を設定する。
【０１０１】
なお、本実施例では、日本語の同義語を例に説明したが、英語や中国語等、日本語以外の言語の同義語についても本発明の同義語判定を適用することができる。また、本実施例では、医療分野の専門用語における同義語を例に説明したが、他の分野における同義語についても本発明の同義語判定を適用することができる。
【０１０２】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１０３】
また、上記の各構成・機能・処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード等の記録媒体に置くことができる。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆どすべての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１０４】
１００  同義語抽出装置
１０１  ＣＰＵ
１０２  主メモリ
１０３  入出力装置
１１０  ディスク装置
１１１  ＯＳ
１１２  同義語抽出プログラム
１１２１  特徴抽出サブプログラム
１１２２  教師データ作成サブプログラム
１１２３  モデル学習サブプログラム
１１２４  同義語識別サブプログラム
１１３  単語リスト
１１４  同義語辞書
１１５  特徴量データ
１１６  教師データ
１１７  識別モデル
１１８  特異ペアデータ
【図１】
2016200978.tif 000003
【図２】
2016200978.tif 000004
【図３】
2016200978.tif 000005
【図４】
2016200978.tif 000006
【図５】
2016200978.tif 000007
【図６】
2016200978.tif 000008
【図７】
2016200978.tif 000009
【図８】
2016200978.tif 000010
【図９】
2016200978.tif 000011
【図１０】
2016200978.tif 000012