(57)【要約】  入力された単語ペアを構成する各単語を、データベースから検索する単語検索部（１０１）と、検索された各単語に対応する単語ベクトルを、単語ベクトルデータベース（１０３）から抽出する単語ベクトル抽出部（１０２）と、単語ペアを構成する文字を文字ベクトルに変換する文字ベクトル変換部（１０４）と、抽出された各単語の単語ベクトルと、変換された文字ベクトルとを結合して特徴量を取得する特徴量取得部（１０５）と、取得された特徴量から各単語間の意味関係を推定する推定部（１０６）とを備える
2019082362.tif 000002
【特許請求の範囲】
【請求項１】
入力された単語ペアを構成する各単語を、データベースから検索する単語検索部と、
前記単語検索部が検索した前記各単語に対応する単語ベクトルを、前記データベースから抽出する単語ベクトル抽出部と、
前記単語ペアを構成する文字を文字ベクトルに変換する文字ベクトル変換部と、
前記単語ベクトル抽出部が抽出した前記各単語の単語ベクトルと、前記文字ベクトル変換部が変換した前記文字ベクトルとを結合して特徴量を取得する特徴量取得部と、
前記特徴量取得部が取得した前記特徴量から前記各単語間の意味関係を推定する推定部とを備えた単語意味関係推定装置。
【請求項２】
前記単語検索部が前記各単語を前記データベースから検索したか否かに基づいて、前記単語ベクトルと前記文字ベクトルとを特徴量として前記各単語間の意味関係を推定する第１の推定器と、前記文字ベクトルのみを特徴量として前記各単語間の意味関係を推定する第２の推定器とを切り替える推定器切替部を備え、
前記特徴量取得部は、前記単語検索部が前記各単語を前記データベースから検索した場合に、前記単語ベクトルと前記文字ベクトルとを結合した特徴量を取得し、各単語を前記データベースから検索できなかった場合に、前記文字ベクトルを特徴量として取得し、
前記推定部は、前記推定器切替部の切り替えに応じて前記第１の推定器または前記第２の推定器を適用し、前記特徴量取得部が取得した特徴量から前記各単語間の意味関係を推定することを特徴とする請求項１記載の単語意味関係推定装置。
【請求項３】
前記単語検索部が、前記各単語を前記データベースから検索できなかった場合に、前記単語ペアに含まれる未知語を構成する文字に部分一致する単語を、前記データベースから検索する追加検索部を備え、
前記単語ベクトル抽出部は、前記追加検索部が検索した前記未知語を構成する文字に部分一致する単語に対応する単語ベクトルを、前記データベースから検索することを特徴とする請求項１記載の単語意味関係推定装置。
【請求項４】
前記単語検索部が、前記各単語を前記データベースから検索できなかった場合に、前記単語ペアに含まれる未知語を構成する文字に部分一致する単語を、前記データベースから検索する追加検索部を備え、
前記推定器切替部は、前記追加検索部が前記未知語を構成する文字に部分一致する単語を前記データベースから検索したか否かに基づいて、前記第１の推定器と前記第２の推定器とを切り替え、
前記特徴量取得部は、前記追加検索部が前記未知語を構成する文字に部分一致する単語を前記データベースから検索した場合に、前記単語ベクトルと前記文字ベクトルとを結合した特徴量を取得し、前記未知語を構成する文字に部分一致する単語を前記データベースから検索できなかった場合に、前記文字ベクトルを特徴量として取得することを特徴とする請求項２記載の単語意味関係推定装置。
【請求項５】
前記推定部は、前記各単語間の意味関係を推定する推定器の教師データの構造情報に基づいて、前記意味関係を推定した前記各単語間の上位下位関係の距離を示す抽出度合いを推定することを特徴とする請求項１記載の単語意味関係推定装置。
【請求項６】
単語検索部が、入力された単語ペアを構成する各単語を、データベースから検索するステップと、
単語ベクトル抽出部が、前記検索された前記各単語に対応する単語ベクトルを、前記データベースから抽出するステップと、
文字ベクトル変換部が、前記単語ペアを構成する文字を文字ベクトルに変換するステップと、
特徴量取得部が、前記抽出された前記各単語の単語ベクトルと、前記変換された前記文字ベクトルとを結合して特徴量を取得するステップと、
推定部が、前記取得された前記特徴量から前記各単語間の意味関係を推定するステップとを備えた単語意味関係推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、単語間の意味的な関係を推定する技術に関するものである。
【背景技術】
【０００２】
近年、パソコンおよびインターネットの普及により、ユーザがアクセス可能な電子化文書の量が増大している。大規模な文書情報の中から、ユーザの所望する文書を効率的に発見するための技術が求められている。文書検索技術に代表される、自然言語を扱う技術では、言語の曖昧性、すなわち多義性または同義性を適切に扱うことが求められる。多義性は、同一の単語に対して複数の意味が存在することであり、ノイズの原因となる。一方、同義性は、同一の意味を持つ単語が複数存在することであり、漏れの原因、すなわち情報の見落としの原因となる。【０００３】
上位下位関係等を考慮して単語を分類したシソーラスは、文書における言語表現の揺れを吸収し、多義性または同義性の問題を解決するための言語資源であり、各種の言語処理アプリケーションで使用される。一方、シソーラスを人手によって作成するためにはコストがかかることから、従来より、テキストデータから自動でシソーラスを作成することが試みられている。非特許文献１では、既存のシソーラスを正解として用いて、単語間の意味関係を推定する統計モデルの学習方式が提案されている。【０００４】
また、非特許文献１では、２つの単語（以下、単語ペアと記載する）間の上位下位同位関係のような意味関係を推定する統計モデルの学習に用いる特徴量として、単語を多次元の数値ベクトルに変換した単語ベクトルを利用することが開示されている。ここで、単語ベクトルに変換する技術は、例えば非特許文献２に開示された、文脈を考慮して文中の単語の位置関係を利用することにより、単語の意味を表す密な多次元の数値ベクトルに変換する方式が適用されている。単語ベクトルに変換する技術として、非特許文献２に開示された方式を適用した場合、対義語のように、類似した文脈で出現する意味の異なる単語が、類似する単語ベクトルに変換され、対義語となり得る単語を含む単語ペアについて、正しい意味関係が推定されない場合があるという問題があった。【０００５】
この問題を解消するための技術として、特許文献１には、テキスト中の任意の単語ペアについて、文脈ベース類似度、表記ベース類似度およびパターンベース類似度を計算し、計算した複数種類の類似度を要素する素性ベクトルを生成して単語間の意味関係を識別する単語意味関係抽出装置が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】ＷＯ２０１４／０３３７９９
【非特許文献】
【０００７】
【非特許文献１】Julie Weeds et al., “Learning to Distinguish Hypernyms and Co-Hyponyms”, COLING, 2014.
【非特許文献２】Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean, “Efficient Estimation of Word Representations in Vector Space”, ICLR 2013.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、上述した特許文献１に開示された技術では、類似度を算出する方法がスパースであり、当該類似度を要素とする素性ベクトルが有効な特徴量となり得ない場合があるという課題があった。【０００９】
この発明は、上記のような課題を解決するためになされたもので、単語間の意味関係を識別する有効な特徴量を取得し、対義語となり得る２つの単語間の意味関係を推定する精度を向上させることを目的とする。
【課題を解決するための手段】
【００１０】
この発明に係る単語意味関係推定装置は、入力された単語ペアを構成する各単語を、データベースから検索する単語検索部と、単語検索部が検索した各単語に対応する単語ベクトルを、データベースから抽出する単語ベクトル抽出部と、単語ペアを構成する文字を文字ベクトルに変換する文字ベクトル変換部と、単語ベクトル抽出部が抽出した各単語の単語ベクトルと、文字ベクトル変換部が変換した文字ベクトルとを結合して特徴量を取得する特徴量取得部と、特徴量取得部が取得した特徴量から各単語間の意味関係を推定する推定部とを備えるものである。
【発明の効果】
【００１１】
この発明によれば、単語間の意味関係を識別する有効な特徴量を取得することができる。これにより、対義語となり得る２つの単語間の意味関係を推定する精度を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係る単語意味関係推定装置の構成を示すブロック図である。
【図２】図２Ａ、図２Ｂは、実施の形態１に係る単語意味関係推定装置のハードウェア構成例を示す図である。
【図３】実施の形態１に係る単語意味関係推定装置の動作を示すフローチャートである。
【図４】実施の形態２に係る単語意味関係推定装置の構成を示すブロック図である。
【図５】実施の形態２に係る単語意味関係推定装置の動作を示すフローチャートである。
【図６】実施の形態３に係る単語意味関係推定装置の構成を示すブロック図である。
【図７】実施の形態３に係る単語意味関係推定装置の動作を示すフローチャートである。
【図８】シソーラスに登録された単語の上位下位関係を示した図である。
【発明を実施するための形態】
【００１３】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態１．
図１は、実施の形態１に係る単語意味関係推定装置１００の構成を示すブロック図である。
単語意味関係推定装置１００は、単語検索部１０１、単語ベクトル抽出部１０２、単語ベクトルデータベース（データベース）１０３、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６を備える。
また、単語意味関係推定装置１００には、入力装置２００および表示装置３００が接続されている。入力装置２００は、例えばマウスまたはキーボートで構成される。表示装置３００は、例えばディスプレイで構成される。
【００１４】
単語検索部１０１は、入力装置２００から入力された対義語となり得る２つの単語（以下、単語ペアと記載する）を構成する各単語を、単語ベクトルデータベース１０３から検索する。単語検索部１０１は、検索結果を単語ベクトル抽出部１０２に出力する。単語ベクトル抽出部１０２は、単語ベクトルデータベース１０３から、単語検索部１０１が検索した各単語に対応する単語ベクトルを抽出する。単語ベクトル抽出部１０２は、抽出した単語ベクトルを特徴量取得部１０５に出力する。単語ベクトルデータベース１０３は、ＷＥＢ上のテキストデータ等を用いて作成されるデータベースである。単語ベクトルデータベース１０３の作成には、上述した非特許文献２で開示されている公知の技術を利用することができる。単語ベクトルデータベース１０３は、種々の単語と、当該単語に対応する単語ベクトルとを対応付けて構成している。単語ベクトルデータベース１０３は、外部装置が備えて構成してもよい。
【００１５】
文字ベクトル変換部１０４は、入力装置２００から入力された単語ペアを構成する文字について、多次元のベクトルに変換して文字ベクトルを取得する。文字ベクトル変換部１０４は、取得した文字ベクトルを特徴量取得部１０５に出力する。文字ベクトルの生成方法には、非特許文献２で開示されている公知の技術を利用することができる。文字ベクトル変換部１０４は、文字と文字ベクトルとを対応付けて記憶した文字ベクトルデータベース（図示しない）を参照してもよいし、後述する機械学習アルゴリズムを用いて構築する推定器の学習時に文字ベクトルを学習してもよい。
【００１６】
特徴量取得部１０５は、単語ベクトル抽出部１０２が抽出した２つの単語の単語ベクトルと、文字ベクトル変換部１０４が変換した文字ベクトルとを結合する。例えば、特徴量取得部１０５は、単語ベクトル（１００次元）と、文字ベクトル（５０次元）とを結合すると、１５０次元のベクトルが作成される。特徴量取得部１０５は、単語ベクトルと文字ベクトルとを結合することにより、単語ベクトルに文字の意味を表す文字ベクトルを追加した特徴量を作成する。特徴量取得部１０５が単語ベクトルに文字ベクトルを追加した特徴量を作成することにより、単語ベクトルのみでは違いを判別し難い対義語となり得る単語を含む単語ペアについて文字ベクトルから意味の違いが判別可能となる。
【００１７】
例えば、「安定」と「不安定」との単語は、類似する文脈で用いられる単語である。そのため、例えば非特許文献２で開示された方式を適用して、「安定」および「不安定」との単語を単語ベクトルに変換すると、当該２つの単語は類似した単語ベクトルに変換され、単語ベクトルから２つの単語の意味の違いを判別することが難しい。
一方、この実施の形態１では、特徴量取得部１０５が２つの単語の単語ベクトルと、文字ベクトルとを結合することにより、２つの単語間の「不」の文字ベクトルが差異として確認され、文字ベクトルから２つの単語の意味の違いを判別することができる。特徴量取得部１０５は、結合によって得られた特徴量を推定部１０６に出力する。
【００１８】
推定部１０６は、特徴量取得部１０５から入力された特徴量を推定器に入力し、単語ペアの意味関係を推定する。ここで、推定器は、ＷｏｒｄＮｅｔ等の単語間の意味関係を明示したシソーラスを教師データとして教師あり学習により構築する。具体的には、推定部１０６は入力された単語ペアについて上位下位同位関係ラベルを「１」と推定し、それ以外を「０」と推定する２値分類器を構築する。このとき、上位関係ラベル、下位関係ラベル、同位関係ラベルのように、多クラス分類器としてもよい。推定器の学習方法は、任意の方法を適用することができる。例えば、以下に示す参考文献１に開示されている、One versus Rest(One-against-the-Rest)法を適用することができる。
・参考文献１
J. Weston and C. Watkins, "Multi-class support vector machines", Royal Holloway Technical Report CSD-TR-98-04, 1998.
【００１９】
なお、図１では、単語意味関係推定装置１００が単語ベクトルデータベース１０３を備える構成を示したが、当該構成に限定されるものではない。単語意味関係推定装置１００は、単語ベクトルデータベース１０３に替えて、クラウド上に存在する記憶装置（図示しない）に、通信インタフェース（図示しない）を介して単語検索部１０１または単語ベクトル抽出部１０２がアクセスするように構成してもよい。
【００２０】
次に、単語意味関係推定装置１００のハードウェア構成例を説明する。
図２Ａおよび図２Ｂは、実施に形態１に係る単語意味関係推定装置１００のハードウェア構成例を示す図である。
単語意味関係推定装置１００における単語ベクトルデータベース１０３は、ストレージ１００ａにより実現される。単語意味関係推定装置１００における単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６の各機能は、処理回路により実現される。即ち、単語意味関係推定装置１００は、上記各機能を実現するための処理回路を備える。当該処理回路は、図２Ａに示すように専用のハードウェアである処理回路１００ｂであってもよいし、図２Ｂに示すようにメモリ１００ｄに格納されているプログラムを実行するプロセッサ１００ｃであってもよい。
【００２１】
図２Ａに示すように、単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６が専用のハードウェアである場合、処理回路１００ｂは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-programmable Gate Array）、またはこれらを組み合わせたものが該当する。単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６の各部の機能それぞれを処理回路で実現してもよいし、各部の機能をまとめて１つの処理回路で実現してもよい。
【００２２】
図２Ｂに示すように、単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６がプロセッサ１００ｃである場合、各部の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ１００ｄに格納される。プロセッサ１００ｃは、メモリ１００ｄに記憶されたプログラムを読み出して実行することにより、単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６の各機能を実現する。即ち、単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６は、プロセッサ１００ｃにより実行されるときに、後述する図３に示す各ステップが結果的に実行されることになるプログラムを格納するためのメモリ１００ｄを備える。また、これらのプログラムは、単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６の手順または方法をコンピュータに実行させるものであるともいえる。
【００２３】
ここで、プロセッサ１００ｃとは、例えば、ＣＰＵ（Central Processing Unit）、処理装置、演算装置、プロセッサ、マイクロプロセッサ、マイクロコンピュータ、またはＤＳＰ（Digital Signal Processor）などのことである。
メモリ１００ｄは、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、フラッシュメモリ、ＥＰＲＯＭ（Erasable Programmable ROM）、ＥＥＰＲＯＭ（Electrically EPROM）等の不揮発性または揮発性の半導体メモリであってもよいし、ハードディスク、フレキシブルディスク等の磁気ディスクであってもよいし、ミニディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）等の光ディスクであってもよい。
【００２４】
なお、単語検索部１０１、単語ベクトル抽出部１０２、文字ベクトル変換部１０４、特徴量取得部１０５および推定部１０６の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、単語意味関係推定装置１００における処理回路は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
【００２５】
次に、単語意味関係推定装置１００の動作について説明する。
図３は、実施の形態１に係る単語意味関係推定装置１００の動作を示すフローチャートである。
入力装置２００から単語ペアが入力されると（ステップＳＴ１）、単語検索部１０１は、入力された単語ペアを構成する各単語を、単語ベクトルデータベース１０３から検索する（ステップＳＴ２）。単語検索部１０１は、各単語について、ステップＳＴ２の検索結果が一件以上存在するか否か判定を行う（ステップＳＴ３）。ステップＳＴ３の判定処理は、例えば単語ペアが第１の単語と第２の単語とで構成されていた場合に、第１の単語について検索結果が一件以上存在し、且つ第２の単語について検索結果が一件以上存在したか否かの判定を行うものである。検索結果が一件以上存在しない場合（ステップＳＴ３；ＮＯ）、単語検索部１０１は処理を終了する。
【００２６】
一方、検索結果が一件以上存在する場合（ステップＳＴ３；ＹＥＳ）、単語検索部１０１は検索結果を単語ベクトル抽出部１０２に出力する（ステップＳＴ４）。ステップＳＴ４の処理は、例えば、第１の単語について検索結果が一件以上存在し、且つ第２の単語について検索結果が一件以上存在した場合に、第１の単語の検索結果と、第２の単語の検索結果とを、単語ベクトル抽出部１０２に出力する。単語ベクトル抽出部１０２は、ステップＳＴ４で入力された検索結果の単語に対応する単語ベクトルを、単語ベクトルデータベース１０３から抽出する（ステップＳＴ５）。単語ベクトル抽出部１０２は、ステップＳＴ５で抽出した単語ベクトルを、特徴量取得部１０５に出力する。
【００２７】
文字ベクトル変換部１０４は、ステップＳＴ１で入力された単語ペアを構成する単語を文字単位に分割し、文字ベクトルに変換する（ステップＳＴ６）。文字ベクトル変換部１０４は、変換した文字ベクトルを特徴量取得部１０５に出力する。
【００２８】
特徴量取得部１０５は、ステップＳＴ５で抽出された単語ベクトルと、ステップＳＴ６で変換された文字ベクトルとを結合して特徴量を取得する（ステップＳＴ７）。特徴量取得部１０５は、ステップＳＴ７で取得した特徴量を推定部１０６に出力する。推定部１０６は、予め構築した単語意味推定器を用いて、特徴量取得部１０５から入力された特徴量から単語間の意味関係を推定する（ステップＳＴ８）。推定部１０６は、ステップＳＴ８で推定した単語間の意味関係を示す情報を表示装置３００に出力し（ステップＳＴ９）、処理を終了する。
【００２９】
以上のように、この実施の形態１によれば、入力された単語ペアを構成する各単語を、単語ベクトルデータベース１０３から検索する単語検索部１０１と、検索された各単語に対応する単語ベクトルを、単語ベクトルデータベース１０３から抽出する単語ベクトル抽出部１０２と、単語ペアを構成する文字を文字ベクトルに変換する文字ベクトル変換部１０４と、抽出された各単語の単語ベクトルと、変換された文字ベクトルとを結合して特徴量を取得する特徴量取得部１０５と、取得された特徴量から各単語間の意味関係を推定する推定部１０６とを備えるように構成したので、単語の意味を表す単語ベクトルに加え、文字の意味を表す文字ベクトルを特徴量とし、単語間の意味関係を推定することができる。これにより、意味関係の推定が単語ベクトルのみでは困難な対義語となる得る２つの単語間の意味関係を精度よく推定することができる。
【００３０】
実施の形態２．
この実施の形態２では、未知語を含む単語ペアから、単語間の意味関係を推定する構成を示す。
図４は、実施の形態２に係る単語意味関係推定装置１００Ａの構成を示すブロック図である。
単語意味関係推定装置１００Ａは、図１で示した実施の形態１の単語意味関係推定装置１００に、推定器切替部１０７を追加して構成している。また、図１で示した実施の形態１の単語意味関係推定装置１００の特徴量取得部１０５および推定部１０６に替えて、特徴量取得部１０５ａおよび推定部１０６ａを設けて構成している。
以下では、実施の形態１に係る単語意味関係推定装置１００の構成要素と同一または相当する部分には、実施の形態１で使用した符号と同一の符号を付して説明を省略または簡略化する。
【００３１】
入力装置２００に入力された単語ペアには、単語ベクトルデータベース１０３に存在しない単語、すなわち未知語が含まれる場合がある。実施の形態１で示した単語意味関係推定装置１００は、単語ペアに未知語が含まれる場合、当該未知語の単語ベクトルが抽出されないため、単語間の意味関係を推定することができない。そこで、この実施の形態２の単語意味関係推定装置１００Ａは、単語ペアに未知語が含まれる場合に、推定器切替部１０７が推定部１０６ａにおいて推定に用いられる推定器の切り替えを行う。
【００３２】
まず、単語検索部１０１は、実施の形態１と同様に単語ペアを構成する各単語を単語ベクトルデータベース１０３から検索する。単語検索部１０１は、各単語について検索結果が一件以上存在するか否か判定を行う。単語検索部１０１は、判定結果を推定器切替部１０７に出力する。また、単語検索部１０１は、各単語について検索結果が一件以上存在したと判定した場合には、単語ベクトル抽出部１０２に検索結果を出力する。
【００３３】
推定器切替部１０７は、単語検索部１０１の判定結果に応じて、単語ベクトルおよび文字ベクトルを特徴量とする第１の推定器と、文字ベクトルのみを特徴量とする第２の推定器とのいずれを、推定部１０６ａに適用するか決定する。すなわち、推定器切替部１０７は、単語検索部１０１から検索結果が一件以上存在したとの判定結果が入力された場合には、第１の推定器を適用すると決定し、検索結果が一件以上存在しなかったとの判定結果が入力された場合には、第２の推定器を適用すると決定する。推定器切替部１０７は、決定した推定器の適用を、推定部１０６ａに指示する。
【００３４】
特徴量取得部１０５ａは、単語ベクトル抽出部１０２から単語ベクトルが入力された場合には、当該単語ベクトルと、文字ベクトル変換部１０４で変換された文字ベクトルとを結合して特徴量を取得する。一方、特徴量取得部１０５ａは、単語ベクトル抽出部１０２から単語ベクトルが入力されない場合には、文字ベクトル変換部１０４で変換された文字ベクトルを特徴量として取得する。
【００３５】
推定部１０６ａは、推定器切替部１０７から入力された推定器の切り替え指示に基づいて、第１の推定器と第２の推定器との切り替えを行う。推定部１０６ａは、第１の推定器に切り替えた場合、当該第１の推定器を用いて、特徴量取得部１０５から入力された単語ベクトルと文字ベクトルとを結合して得られた特徴量から単語間の意味関係を推定する。また、推定部１０６ａは、第２の推定器に切り替えた場合、当該第２の推定器を用いて、特徴量取得部１０５から入力された文字ベクトルの特徴量から単語間の意味関係を推定する。
【００３６】
次に、単語意味関係推定装置１００Ａのハードウェア構成例を説明する。なお、実施の形態１と同一の構成の説明は省略する。
単語意味関係推定装置１００Ａにおける推定器切替部１０７、特徴量取得部１０５ａおよび推定部１０６ａは、図２Ａで示した処理回路１００ｂ、または図２Ｂで示したメモリ１００ｄに格納されるプログラムを実行するプロセッサ１００ｃである。
【００３７】
次に、単語意味関係推定装置１００Ａの動作について、図５のフローチャートを参照しながら説明する。
図５は、実施の形態２に係る発明の単語意味関係推定装置１００Ａの動作を示すフローチャートである。
以下では、実施の形態１に係る発明の単語意味関係推定装置１００と同一のステップには、図３で示した符号と同一の符号を付し、説明を省略または簡略化する。
ステップＳＴ３において、単語検索部１０１が、検索結果が一件以上存在すると判定した場合（ステップＳＴ３；ＹＥＳ）、推定器切替部１０７は当該判定結果に基づいて、推定部１０６ａに第１の推定器の適用を決定する（ステップＳＴ１１）。推定器切替部１０７は、第１の推定器の適用を、推定部１０６ａに指示する。推定部１０６ａは、推定器切替部１０７からの指示に基づいて、推定部１０６ａの切り替えを行う（ステップＳＴ１２）。その後、単語意味関係推定装置１００Ａは、ステップＳＴ４からステップＳＴ７の処理を行う。
【００３８】
一方、ステップＳＴ３において、単語検索部１０１が、検索結果が一件以上存在しないと判定した場合（ステップＳＴ３；ＮＯ）、推定器切替部１０７は当該判定結果に基づいて、推定部１０６ａに第２の推定器の適用を決定する（ステップＳＴ１３）。推定器切替部１０７は、第２の推定器の適用を、推定部１０６ａに指示する。推定部１０６ａは、推定器切替部１０７からの指示に基づいて、推定部１０６ａの切り替えを行う（ステップＳＴ１４）。
【００３９】
文字ベクトル変換部１０４は、ステップＳＴ１で入力された単語ペアを構成する各単語を文字単位に分割し、文字ベクトルに変換する（ステップＳＴ１５）。文字ベクトル変換部１０４は、変換した文字ベクトルを特徴量取得部１０５に出力する。特徴量取得部１０５は、ステップＳＴ１５で変換された文字ベクトルを特徴量として取得する（ステップＳＴ１６）。特徴量取得部１０５は、取得した特徴量を推定部１０６ａに出力する。
【００４０】
推定部１０６ａは、ステップＳＴ１２またはステップＳＴ１４で切り替えた推定器を用いて、ステップＳＴ７またはステップＳＴ１６において取得された特徴量から単語間の意味関係を推定する（ステップＳＴ１７）。推定部１０６ａは、ステップＳＴ１７で推定した単語間の意味関係を示す情報を表示装置３００に出力し（ステップＳＴ９）、処理を終了する。
【００４１】
以上のように、この実施の形態２によれば、単語検索部１０１が各単語を単語ベクトルデータベース１０３から検索したか否かに基づいて、単語ベクトルと文字ベクトルとを特徴量として各単語間の意味関係を推定する第１の推定器と、文字ベクトルのみを特徴量として各単語間の意味関係を推定する第２の推定器とを切り替える推定器切替部１０７を備え、特徴量取得部１０５ａは、単語検索部１０１が各単語を単語ベクトルデータベース１０３から検索した場合に、単語ベクトルと文字ベクトルとを結合した特徴量を取得し、各単語を単語ベクトルデータベースから検索できなかった場合に、文字ベクトルを特徴量として取得し、推定部１０６ａは、推定器切替部１０７の切り替えに応じて第１の推定器または第２の推定器を適用し、特徴量取得部１０５ａが取得した特徴量から各単語間の意味関係を推定するように構成したので、入力された単語ペアに未知語が含まれていた場合にも、推定器の切り替えにより単語間の意味関係を推定することができる。
【００４２】
実施の形態３．
この実施の形態３では、入力された単語ペアに未知語が含まれていた場合に、当該未知語を構成する文字列に部分一致する単語を検索し、単語間の意味関係を推定する構成を示す。
図６は、実施の形態３に係る単語意味関係推定装置１００Ｂの構成を示すブロック図である。
単語意味関係推定装置１００Ｂは、図４で示した実施の形態２の単語意味関係推定装置１００Ａに、追加検索部１０８を追加して構成している。また、図４で示した実施の形態２の単語意味関係推定装置１００Ａの推定器切替部１０７に替えて、推定器切替部１０７ａを設けて構成している。
以下では、実施の形態２に係る単語意味関係推定装置１００Ａの構成要素と同一または相当する部分には、実施の形態２で使用した符号と同一の符号を付して説明を省略または簡略化する。
【００４３】
入力装置２００に入力された単語ペアには、単語ベクトルデータベース１０３に存在しない単語、すなわち未知語が含まれる場合がある。実施の形態２で示した単語意味関係推定装置１００Ａは、単語ペアに未知語が含まれる場合、推定部１０６ａの推定器の切り替えを行い、文字ベクトルを特徴量として単語間の意味関係を推定した。一方、この実施の形態３の単語意味関係推定装置１００Ｂは、単語ペアに未知語が含まれる場合に、さらに追加検索部１０８が未知語を構成する文字列に部分一致する単語を、単語ベクトルデータベース１０３から検索する。
【００４４】
まず、単語検索部１０１は、実施の形態１と同様に単語ペアを構成する各単語を単語ベクトルデータベース１０３から検索する。単語検索部１０１は、検索結果が一件以上存在すると判定した場合に、その旨を推定器切替部１０７ａに通知し、単語ベクトル抽出部１０２に検索結果を出力する。一方、単語検索部１０１は、検索結果が一件以上存在しないと判定した場合に、追加検索部１０８に単語ペアを構成する各単語を出力する。
【００４５】
追加検索部１０８は、単語検索部１０１から入力された各単語から部分単語を取得する。追加検索部１０８は、取得した部分単語を単語ベクトルデータベース１０３から検索する。追加検索部１０８は、検索結果が一件以上存在するか否かの判定結果を推定器切替部１０７ａに出力する。また、追加検索部１０８は、検索結果が一件以上存在したと判定した場合には、単語ベクトル抽出部１０２に検索結果を出力する。
【００４６】
推定器切替部１０７ａは、単語検索部１０１から入力された検索結果および追加検索部１０８から入力された検索結果に応じて、単語ベクトルおよび文字ベクトルを特徴量とする第１の推定器と、文字ベクトルのみを特徴量とする第２の推定器とのいずれを推定部１０６ａに適用するか決定する。すなわち、推定器切替部１０７ａは、単語検索部１０１から入力された検索結果を参照し、検索結果が一件以上存在した場合、および追加検索部１０８から入力された検索結果を参照し、検索結果が一件以上存在した場合、第１の推定器を適用すると決定する、一方、推定器切替部１０７ａは、単語検索部１０１から入力された検索結果を参照し、検索結果が一件以上存在しない、且つ追加検索部１０８から入力された検索結果を参照し、検索結果が一件以上存在しない場合、第２の推定器を適用すると決定する。推定器切替部１０７ａは、決定した推定器の適用を、推定部１０６ａに指示する。
【００４７】
単語ベクトル抽出部１０２は、単語ベクトルデータベース１０３から、単語検索部１０１において検索された単語、または追加検索部１０８において検索された部分単語に対応する単語ベクトルを抽出する。単語ベクトル抽出部１０２は、抽出した単語ベクトルを特徴量取得部１０５ａに出力する。
【００４８】
特徴量取得部１０５ａは、実施の形態２と同様に、単語ベクトル抽出部１０２から単語ベクトルが入力された場合には、当該単語ベクトルと、文字ベクトル変換部１０４で変換された文字ベクトルとを結合して特徴量を取得する。一方、特徴量取得部１０５ａは、単語ベクトル抽出部１０２から単語ベクトルが入力されない場合には、文字ベクトル変換部１０４で変換された文字ベクトルを特徴量として取得する。
【００４９】
推定部１０６ａは、実施の形態２と同様に、推定器切替部１０７ａから入力された推定器の切り替え指示に基づいて、第１の推定器と第２の推定器との切り替えを行う。推定部１０６ａは、第１の推定器に切り替えた場合、当該第１の推定器を用いて、特徴量取得部１０５から入力された単語ベクトルと文字ベクトルとを結合して得られた特徴量から単語間の意味関係を推定する。また、推定部１０６ａは、第２の推定器に切り替えた場合、当該第２の推定器を用いて、特徴量取得部１０５から入力された文字ベクトルの特徴量から単語間の意味関係を推定する。
【００５０】
次に、単語意味関係推定装置１００Ｂのハードウェア構成例を説明する。なお、実施の形態１と同一の構成の説明は省略する。
単語意味関係推定装置１００Ｂにおける推定器切替部１０７ａ、特徴量取得部１０５ａ、推定部１０６ａおよび追加検索部１０８は、図２Ａで示した処理回路１００ｂ、または図２Ｂで示したメモリ１００ｄに格納されるプログラムを実行するプロセッサ１００ｃである。
【００５１】
次に、追加検索部１０８の処理を、具体例を挙げて説明する。
追加検索部１０８が、単語ベクトルデータベース１０３に登録されていない「瞬冷凍」という単語について、単語ベクトルデータベース１０３を検索する場合を例に説明する。追加検索部１０８は、「瞬冷凍」について、例えば２文字単位の部分単語を取得する。追加検索部１０８は、「瞬冷凍」を構成する文字列「瞬冷」および「冷凍」を部分単語として取得する。追加検索部１０８は、「瞬冷」および「冷凍」との部分単語を、単語ベクトルデータベース１０３から検索する。ここでは、単語ベクトルデータベース１０３に「冷凍」が登録されているものとする。追加検索部１０８は、単語ベクトルデータベース１０３を参照し、「冷凍」の部分単語を検索結果として取得する。追加検索部１０８は、検索結果が一件以上存在すると判定する。
【００５２】
このように、追加検索部１０８は、「瞬冷凍」という単語に替えて、「冷凍」の単語ベクトルを抽出する。追加検索部１０８は、未知語を構成する文字を手掛かりに、未知語に意味が近い別の単語を検索し、単語ベクトル抽出部１０２は未知語に意味が近い別の単語を単語ベクトルに変換する。
なお、追加検索部１０８は、上述した例では２文字単位の部分単語を取得する例を示したが、３文字単位の部分単語等、文字数を変化させて部分単語を取得してもよい。その結果、追加検索部１０８が、各文字数で複数の部分単語を検索結果として取得した場合、単語ベクトル抽出部１０２が部分単語の単語ベクトルの平均ベクトルを単語ベクトルとして抽出してもよい。また、平均ベクトルを用いる場合、単語ベクトル抽出部１０２は、文字数が多く一致した単語がより未知語の意味に近いとし、一致した部分単語の文字数に応じた重みを付して、平均ベクトルを算出してもよい。
【００５３】
次に、単語意味関係推定装置１００Ｂの動作について説明する。
図７は、実施の形態３に係る発明の単語意味関係推定装置１００Ｂの動作を示すフローチャートである。
以下では、実施の形態２に係る発明の単語意味関係推定装置１００Ａと同一のステップには、図５で示した符号と同一の符号を付し、説明を省略または簡略化する。
【００５４】
ステップＳＴ３において、単語検索部１０１が、検索結果が一件以上存在すると判定した場合（ステップＳＴ３；ＹＥＳ）、実施の形態２と同様にステップＳＴ１１，ステップＳＴ１２およびステップＳＴ４からステップＳＴ７の処理を行う。一方、ステップＳＴ３において、単語検索部１０１が、検索結果が一件以上存在しないと判定した場合（ステップＳＴ３；ＮＯ）、単語検索部１０１は単語ペアを構成する各単語を追加検索部１０８に出力する。追加検索部１０８は、単語検索部１０１から入力された単語から部分単語を取得する（ステップＳＴ２１）。追加検索部１０８は、ステップＳＴ２１で取得した部分単語を単語ベクトルデータベース１０３から検索する（ステップＳＴ２２）。追加検索部１０８は、検索結果が一件以上存在するか否か判定を行う（ステップＳＴ２３）。
【００５５】
検索結果が一件以上存在すると判定した場合（ステップＳＴ２３；ＹＥＳ）、推定器切替部１０７ａは当該判定結果に基づいて、推定部１０６ａに第１の推定器の適用を決定する（ステップＳＴ２４）。推定器切替部１０７ａは、第１の推定器の適用を、推定部１０６ａに指示する。推定部１０６ａは、推定器切替部１０７ａからの指示に基づいて、推定部１０６ａの切り替えを行う（ステップＳＴ２５）。追加検索部１０８は検索結果を単語ベクトル抽出部１０２に出力する（ステップＳＴ２６）。その後、単語意味関係推定装置１００Ｂは、ステップＳＴ５からステップＳＴ７の処理を行う。
【００５６】
一方、検索結果が一件以上存在しないと判定した場合（ステップＳＴ２３；ＮＯ）、ステップＳＴ１３からステップＳＴ１６の処理を行う。推定部１０６ａは、ステップＳＴ１２、ステップＳＴ２５またはステップＳＴ１４で切り替えた推定器を用いて、ステップＳＴ７またはステップＳＴ１６において取得された特徴量から単語間の意味関係を推定する（ステップＳＴ２７）。推定部１０６ａは、ステップＳＴ２７で推定した単語間の意味関係を示す情報を表示装置３００に出力し（ステップＳＴ９）、処理を終了する。
【００５７】
以上のように、この実施の形態３によれば、単語検索部１０１が、各単語を単語ベクトルデータベース１０３から検索できなかった場合に、単語ペアに含まれる未知語を構成する文字に部分一致する単語を、単語ベクトルデータベース１０３から検索する追加検索部１０８を備え、推定器切替部１０７ａは、追加検索部１０８が未知語を構成する文字に部分一致する単語を単語ベクトルデータベース１０３から検索したか否かに基づいて、第１の推定器と第２の推定器とを切り替え、特徴量取得部１０５ａは、追加検索部１０８が未知語を構成する文字に部分一致する単語を単語ベクトルデータベース１０３から検索した場合に、単語ベクトルと文字ベクトルとを結合した特徴量を取得し、未知語を構成する文字に部分一致する単語を単語ベクトルデータベース１０３から検索できなかった場合に、文字ベクトルを特徴量として取得するように構成したので、未知語を構成する文字を手掛かりとして、未知語に意味の近い別の単語の単語ベクトルを用いて単語間の意味関係を推定することができる。
【００５８】
なお、上述した実施の形態３では、実施の形態２で示した単語意味関係推定装置１００Ａに追加検索部１０８を追加して構成する場合を示したが、実施の形態１で示した単語意味関係推定装置１００に追加検索部１０８を追加して構成してもよい。
この場合、単語検索部１０１が、各単語を単語ベクトルデータベース１０３から検索できなかった場合に、単語ペアに含まれる未知語を構成する文字に部分一致する単語を、単語ベクトルデータベース１０３から検索する追加検索部１０８を備え、単語ベクトル抽出部１０２は、追加検索部１０８が検索した未知語を構成する文字に部分一致する単語に対応する単語ベクトルを、単語ベクトルデータベース１０３から検索するように構成する。当該構成により、未知語を構成する文字を手掛かりとして、未知語に意味の近い別の単語の単語ベクトルを用いて単語間の意味関係を推定することができる。
【００５９】
実施の形態４．
上述した実施の形態１から実施の形態３では、シソーラスを教師データとした推定器を備える推定部１０６，１０６ａが単語間の意味関係を推定する構成を示した。この実施の形態４では、当該シソーラスの構造情報に基づいて、推定部１０６，１０６ａが入力された単語ペアの意味関係を推定する際に、単語ペアの上位下位関係の距離、すなわち抽出度合いを推定する構成を示す。これにより、例えば、入力された文章を言い換えた文を作成する場合に、置き換える単語の抽出度合いを調節することができる。
【００６０】
推定部１０６，１０６ａは、実施の形態１から実施の形態３で示した、特徴量取得部１０５，１０５ａで取得された特徴量を推定器に入力して単語ペアの意味関係を推定する処理に加えて、推定した単語ペアの意味関係の抽出度合いを推定する。ここで、単語ペアの意味関係の抽出度合いとは、単語ペアの上位下位関係の距離である。推定部１０６，１０６ａは、単語ペアの意味関係の抽出度合いを、シソーラス上の構造情報から求める。
【００６１】
図８は、シソーラスに登録された単語の上位下位関係を示した図である。
図８の例では、単語「魚」の直下に定義されている単語「アジ」に着目すると、単語「魚」と単語「アジ」との抽出度合いは「１」となる。単語「魚」の上位に定義された「食べ物」と単語「アジ」との抽出度合いは「２」となる。推定部１０６，１０６ａは、例えば、図８で示した定義に基づいて、単語ペアの意味関係の抽出度合いを求める。
【００６２】
単語意味関係推定装置１００，１００Ａ，１００Ｂの推定結果を用いて、言い換え文を作成する場合に、抽出度合いが高い上位の単語で置き換えると、質問応答の際に必要な情報が抜け落ちる場合がある。例えば、「マグロをおいしく冷凍保存するにはどうすればいい？」との文を、「食べ物をおいしく冷凍保存するにはどうすればいい？」と言い換えた文を作成する場合を考える。上記の言い換えでは、「マグロ」を「食べ物」に置き換えている。図８で示した定義を参照すると、単語「マグロ」と単語「食べ物」との抽出度合いは「２」である。この例のように抽出度合いが高い関係の単語を用いて言い替えを行うと、言い換える前の文が「魚に関する質問文」であるのに対して、言い換え後の文では「魚」の情報が欠落する。
【００６３】
推定部１０６，１０６ａが、単語の抽出度合いを求めて推定結果として出力する。これにより、置き換える単語を選択する指標として当該抽出度合いを利用し、置き換える単語を選別することができる。
【００６４】
上述した「マグロをおいしく冷凍保存するにはどうすればいい？」との文の言い換え結果を、抽出度合いと共に示す。
（１）抽出度合い「２」の場合（抽出度合い高）の言い換え例
言い換え前：マグロをおいしく冷凍保存するにはどうすればいい？
言い換え後：食べ物をおいしく冷凍保存するにはどうすればいい？
（２）抽出度合い「１」の場合（抽出度合い普通）の言い換え例
言い換え前：マグロをおいしく冷凍保存するにはどうすればいい？
言い換え後：魚をおいしく冷凍保存するにはどうすればいい？
【００６５】
以上のように、この実施の形態４によれば、推定部１０６，１０６ａは、各単語間の意味関係を推定する推定器の教師データの構造情報に基づいて、意味関係を推定した各単語間の上位下位関係の距離を示す抽出度合いを推定するように構成したので、シソーラスの構造情報を反映させた単語の置き換えを行うことができる。
【００６６】
上記以外にも、本発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、各実施の形態の任意の構成要素の変形、または各実施の形態の任意の構成要素の省略が可能である。
【産業上の利用可能性】
【００６７】
この発明に係る単語意味関係推定装置は、例えば、文書検索技術等の自然言語を扱う技術において、対義語を適切に扱うことが求められる情報検索システムに用いられるのに適している。
【符号の説明】
【００６８】
１００，１００Ａ，１００Ｂ  単語意味関係推定装置、１０１  単語検索部、１０２  単語ベクトル抽出部、１０３  単語ベクトルデータベース、１０４  文字ベクトル変換部、１０５，１０５ａ  特徴量取得部、１０６，１０６ａ  推定部、１０７，１０７ａ  推定器切替部、１０８  追加検索部。
【図１】
2019082362.tif 000003
【図２】
2019082362.tif 000004
【図３】
2019082362.tif 000005
【図４】
2019082362.tif 000006
【図５】
2019082362.tif 000007
【図６】
2019082362.tif 000008
【図７】
2019082362.tif 000009
【図８】
2019082362.tif 000010
【国際調査報告】
2019082362.tif 000011
2019082362.tif 000012
2019082362.tif 000013
2019082362.tif 000014