(57)【特許請求の範囲】
【請求項１】
複数の文字列を取得する取得部と、
前記複数の文字列に対して形態素解析を実行する形態素解析実行部と、
前記複数の文字列に対して形態素解析を実行することで得られた複数の品詞付単語の中の複数の述語である複数の単語と、前記複数の品詞付単語の中の複数の単語とに基づいて、前記複数の品詞付単語の中の複数の単語のうちの第１の単語の意味を推論するための推論情報を生成する生成部と、
を有し、
前記推論情報は、前記複数の述語である複数の単語のそれぞれと、複数の関係情報のそれぞれとの対応関係を示す情報であり、かつ３次元情報であり、
前記関係情報は、前記複数の品詞付単語の中の複数の単語のそれぞれの関係性を示す情報であり、かつ２次元情報である、
情報処理装置。
【請求項２】
前記生成部は、前記複数の品詞付単語の中の複数の動詞である複数の単語と、前記複数の品詞付単語の中の複数の単語とに基づいて、前記推論情報を生成する、
請求項１に記載の情報処理装置。
【請求項３】
前記複数の文字列は、質問文の文字列と、前記質問文に対する応答文の文字列とである、
請求項１又は２に記載の情報処理装置。
【請求項４】
指定受付部と、
推論部と、
をさらに有し、
前記取得部は、前記第１の単語を含む文字列である文字列データを取得し、
前記形態素解析実行部は、前記文字列データに対して形態素解析を実行し、
前記指定受付部は、前記文字列データに対して形態素解析を実行することで得らえた複数の単語の中の前記第１の単語の指定を受付け、
前記推論部は、前記文字列データに対して形態素解析を実行することで得らえた複数の単語と前記推論情報とに基づいて、前記第１の単語の意味を推論する、
請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１の単語の意味の尤度を出力する出力部をさらに有する、
請求項４に記載の情報処理装置。
【請求項６】
特定部と、
出力部と、
をさらに有し、
前記取得部は、語義を示す複数の文字列である複数の語義文字列を取得し、
前記特定部は、前記複数の語義文字列の中から、推論された前記第１の単語の意味と同じ意味の語義文字列を特定し、
前記出力部は、特定された語義文字列を出力する、
請求項４に記載の情報処理装置。
【請求項７】
情報処理装置が、
複数の文字列を取得し、
前記複数の文字列に対して形態素解析を実行し、
前記複数の文字列に対して形態素解析を実行することで得られた複数の品詞付単語の中の複数の述語である複数の単語と、前記複数の品詞付単語の中の複数の単語とに基づいて、前記複数の品詞付単語の中の複数の単語のうちの第１の単語の意味を推論するための推論情報を生成し、
前記推論情報は、前記複数の述語である複数の単語のそれぞれと、複数の関係情報のそれぞれとの対応関係を示す情報であり、かつ３次元情報であり、
前記関係情報は、前記複数の品詞付単語の中の複数の単語のそれぞれの関係性を示す情報であり、かつ２次元情報である、
生成方法。
【請求項８】
情報処理装置に、
複数の文字列を取得し、
前記複数の文字列に対して形態素解析を実行し、
前記複数の文字列に対して形態素解析を実行することで得られた複数の品詞付単語の中の複数の述語である複数の単語と、前記複数の品詞付単語の中の複数の単語とに基づいて、前記複数の品詞付単語の中の複数の単語のうちの第１の単語の意味を推論するための推論情報を生成する、
処理を実行させる生成プログラムであり、
前記推論情報は、前記複数の述語である複数の単語のそれぞれと、複数の関係情報のそれぞれとの対応関係を示す情報であり、かつ３次元情報であり、
前記関係情報は、前記複数の品詞付単語の中の複数の単語のそれぞれの関係性を示す情報であり、かつ２次元情報である、
生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、生成方法、及び生成プログラムに関する。
【背景技術】
【０００２】
膨大なテキストの中から所望のテキストを検索する全文検索技術、記述内容に即してテキストを分類する文書分類技術、及び人間の質問に計算機が回答する質問応答技術が、長年研究されている。これらの技術では、自然言語で記述されたテキストの内容の意味を解析する意味処理が重要である。ここで、意味処理に関する技術が提案されている（特許文献１を参照）。また、意味処理に関する技術が、非特許文献１に記載されている。例えば、非特許文献１には、分散表現に基づく学習が例示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭６２−２２１７７６号公報
【非特許文献】
【０００４】
【非特許文献１】岡崎直観「言語処理における分散表現学習のフロンティア」、人工知能、Ｖｏｌ．３１、Ｎｏ２、ｐ１８９−２０１、２０１６．３
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１に記載の技術では、１つの単語に１つの単語ベクトルが割当てられている。そのため、単語ベクトルが割当てられた単語は、１つの意味しか推論されない。しかし、単語の意味は、文脈によって変わる。よって、非特許文献１に記載の技術は、単語の多義性に対応できていない。また、非特許文献１に記載の技術は、ベクトルが次元圧縮されるため、学習時に膨大な処理時間を必要とする。【０００６】
本開示の目的は、短い処理時間で多義性に対応する学習済モデルを生成することである。
【課題を解決するための手段】
【０００７】
本開示の一態様に係る情報処理装置が提供される。情報処理装置は、複数の文字列を取得する取得部と、前記複数の文字列に対して形態素解析を実行する形態素解析実行部と、前記複数の文字列に対して形態素解析を実行することで得られた複数の品詞付単語の中の複数の述語である複数の単語と、前記複数の品詞付単語の中の複数の単語とに基づいて、前記複数の品詞付単語の中の複数の単語のうちの第１の単語の意味を推論するための推論情報を生成する生成部と、を有する。前記推論情報は、前記複数の述語である複数の単語のそれぞれと、複数の関係情報のそれぞれとの対応関係を示す情報であり、かつ３次元情報である。前記関係情報は、前記複数の品詞付単語の中の複数の単語のそれぞれの関係性を示す情報であり、かつ２次元情報である。
【発明の効果】
【０００８】
本開示によれば、短い処理時間で多義性に対応する学習済モデルを生成できる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１の情報処理装置が有するハードウェアの構成を示す図である。
【図２】実施の形態１の学習フェーズにおける情報処理装置が有する機能ブロックを示す図である。
【図３】実施の形態１の学習フェーズにおける情報処理装置が実行する処理の例を示すフローチャート（その１）である。
【図４】実施の形態１の学習処理の例を示すフローチャートである。
【図５】実施の形態１のサブ単語文脈行列の例（その１）を示す図である。
【図６】実施の形態１のサブ単語文脈行列の例（その２）を示す図である。
【図７】実施の形態１の学習フェーズにおける情報処理装置が実行する処理の例を示すフローチャート（その２）である。
【図８】実施の形態１の質問文と応答文とに基づいて学習済モデルが生成される場合の具体例を示す図である。
【図９】実施の形態１の活用フェーズにおける情報処理装置が有する機能ブロックを示す図である。
【図１０】実施の形態１の活用フェーズにおける情報処理装置が実行する処理の例を示すフローチャートである。
【図１１】比較例を示す図である。
【図１２】実施の形態２の活用フェーズにおける情報処理装置が有する機能ブロックを示す図である。
【図１３】実施の形態２の活用フェーズにおける情報処理装置が実行する処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照しながら実施の形態を説明する。以下の実施の形態は、例にすぎず、本開示の範囲内で種々の変更が可能である。
【００１１】
実施の形態１．
＜学習フェーズ＞
図１は、実施の形態１の情報処理装置が有するハードウェアの構成を示す図である。情報処理装置１００は、生成方法を実行する装置である。情報処理装置１００は、学習装置と呼んでもよい。例えば、情報処理装置１００は、クラウドサーバと考えてもよい。また、情報処理装置１００は、システムの一部であってもよい。
情報処理装置１００は、プロセッサ１０１、揮発性記憶装置１０２、及び不揮発性記憶装置１０３を有する。
【００１２】
プロセッサ１０１は、情報処理装置１００全体を制御する。例えば、プロセッサ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などである。プロセッサ１０１は、マルチプロセッサでもよい。情報処理装置１００は、処理回路によって実現されてもよく、又は、ソフトウェア、ファームウェア若しくはそれらの組み合わせによって実現されてもよい。なお、処理回路は、単一回路又は複合回路でもよい。
【００１３】
揮発性記憶装置１０２は、情報処理装置１００の主記憶装置である。例えば、揮発性記憶装置１０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。不揮発性記憶装置１０３は、情報処理装置１００の補助記憶装置である。例えば、不揮発性記憶装置１０３は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）である。
【００１４】
次に、情報処理装置１００が有する機能を説明する。
図２は、実施の形態１の学習フェーズにおける情報処理装置が有する機能ブロックを示す図である。情報処理装置１００は、記憶部１１０、取得部１２０、形態素解析実行部１３０、述語分割部１４０、及び生成部１５０を有する。
【００１５】
記憶部１１０は、揮発性記憶装置１０２又は不揮発性記憶装置１０３に確保した記憶領域として実現してもよい。
取得部１２０、形態素解析実行部１３０、述語分割部１４０、及び生成部１５０の一部又は全部は、処理回路によって実現してもよい。取得部１２０、形態素解析実行部１３０、述語分割部１４０、及び生成部１５０の一部又は全部は、プロセッサ１０１が実行するプログラムのモジュールとして実現してもよい。例えば、プロセッサ１０１が実行するプログラムは、生成プログラムとも言う。例えば、生成プログラムは、記録媒体に記録されている。
【００１６】
取得部１２０は、学習用データを取得する。詳細には、取得部１２０は、複数の文字列を取得する。例えば、取得部１２０は、複数の文字列を含む学習用データを取得する。学習用データは、テキストデータである。また、学習用データは、学習用例文と呼んでもよい。
【００１７】
形態素解析実行部１３０は、複数の文字列に対して形態素解析を実行する。これにより、複数の品詞付単語が得られる。
ここで、取得部１２０は、学習用データである文字列を順次取得してもよい。これにより、複数の文字列が取得される。そして、形態素解析実行部１３０は、順次取得された複数の文字列に対して形態素解析を実行してもよい。これにより、複数の品詞付単語が得られる。
述語分割部１４０の機能については、後で説明する。なお、述語分割部１４０の機能は、生成部１５０に含まれてもよい。すなわち、情報処理装置１００は、記憶部１１０、取得部１２０、形態素解析実行部１３０、及び述語分割部１４０の機能を含む生成部１５０を有してもよい。
【００１８】
生成部１５０は、複数の文字列に対して形態素解析を実行することで得られた複数の品詞付単語の中の複数の述語である複数の単語と、当該複数の品詞付単語の中の複数の単語とに基づいて、学習済モデルを生成する。言い換えれば、生成部１５０は、当該複数の品詞付単語の中の複数の述語に対応する複数の単語と、当該複数の品詞付単語の中の複数の単語とに基づいて、学習済モデルを生成する。ここで、当該複数の品詞付単語の中の複数の単語は、品詞が動詞、名詞、形容詞などの単語である。すなわち、当該複数の品詞付単語の中の複数の単語は、どんな品詞の単語でもよい。また、述語である単語は、動詞、形容詞、形容動詞、又はサ変名詞の単語である。
【００１９】
また、学習済モデルは、推論情報と呼んでもよい。推論情報は、複数の述語である複数の単語のそれぞれと、複数の関係情報のそれぞれとの対応関係を示す情報である。関係情報とは、複数の単語のそれぞれの関係性を示す。関係情報は、２次元のテーブルで表されると考えてもよい。すなわち、関係情報は、２次元情報と考えてもよい。推論情報では、述語である単語と関係情報とが対応付いている。そのため、推論情報は、３次元情報と考えてもよい。よって、学習済モデルは、３次元情報と考えてもよい。
なお、後で例示するように、生成部１５０は、複数の品詞付単語の中の「運転する」、「作業する」、「飛ばす」などと、当該複数の品詞付単語の中の「ドライバー」、「車」などとに基づいて、学習済モデルを生成する。
【００２０】
また、生成部１５０は、当該複数の品詞付単語の中の複数の述語である複数の単語と、当該複数の品詞付単語の中の複数の単語とに基づいて、学習済モデルを生成してもよい。
以下の説明では、生成部１５０は、当該複数の品詞付単語の中の複数の述語である複数の単語と、当該複数の品詞付単語の中の複数の名詞である複数の単語とに基づいて、学習済モデルを生成するものとする。
【００２１】
なお、後の活用フェーズで説明するが、情報処理装置は、学習済モデルを用いて、複数の品詞付単語の中の複数の単語のうちの第１の単語の意味を推論することができる。例えば、情報処理装置は、学習済モデルを用いて、「ドライバー」の意味を推論することができる。なお、例えば、「ドライバー」は、第１の単語である。
【００２２】
次に、情報処理装置１００が実行する処理を、フローチャートを用いて説明する。
図３は、実施の形態１の学習フェーズにおける情報処理装置が実行する処理の例を示すフローチャート（その１）である。
（ステップＳ１１）取得部１２０は、複数の文字列を取得する。
（ステップＳ１２）形態素解析実行部１３０、述語分割部１４０、及び生成部１５０は、学習処理を実行する。学習処理では、学習済モデルが生成される。
（ステップＳ１３）生成部１５０は、学習済モデルを記憶部１１０に格納する。また、生成部１５０は、情報処理装置１００に接続可能な外部装置に学習済モデルを格納してもよい。
【００２３】
図４は、実施の形態１の学習処理の例を示すフローチャートである。図４の処理は、ステップＳ１２に対応する。
（ステップＳ２１）形態素解析実行部１３０は、複数の文字列に対して形態素解析を実行する。詳細には、形態素解析実行部１３０は、複数の文字列を、複数の品詞付単語に分割する。具体例を用いて、形態素解析を説明する。例えば、形態素解析実行部１３０は、複数の文字列のうちの文字列「車を運転するドライバー」を、「車（名詞）」、「を（助詞）」、「運転する（動詞）」、及び「ドライバー（名詞）」に分割する。
【００２４】
（ステップＳ２２）述語分割部１４０は、複数の品詞付単語に基づいて、述語ごとにファイルを生成する。述語分割部１４０は、述語ごとに、述語を含む文字列の中の複数の名詞をファイルに登録する。例えば、述語分割部１４０は、述語である「運転する（動詞）」を含む文字列「車を運転するドライバー」の中の「車（名詞）」と「ドライバー（名詞）」を、「運転する（動詞）」のファイルに登録する。上記の例では、述語として動詞が用いられているが、述語として他の用言が用いられてもよい。
なお、述語を含む文字列の中の複数の名詞は、サブ学習用例文と呼ぶ。例えば、サブ学習用例文は、「車（名詞）」と「ドライバー（名詞）」である。
【００２５】
（ステップＳ２３）生成部１５０は、学習済モデルを生成する。学習済モデルは、強化学習、教師あり学習、転移学習、又は半教師あり学習などに基づいて、生成される。一例として、述語について階数を増やしたサブ単語文脈行列を用いた教師なし学習を説明する。ここで、教師なし学習とは、結果（すなわち、ラベル）を含まない学習用データを学習装置に与えることで、学習用データの特徴を学習する手法である。
【００２６】
学習データに出現する単語のＭ種類の集合をｗ１，…，ｗＭとした場合、サブ学習例文から得られるサブ単語文脈行列は、学習データ内の単語ｗｉと単語ｗｊがサブ学習例文で共起して出現した回数の総和＃（ｉ，ｊ）をｍｉ，ｊの要素とする行列Ｍに、それぞれの述語ラベルが付与されたモデルで表される。ｍｉ，ｊは、次の式（１）で表される。
【００２７】
【数１】
0006976482.tif 000002
【００２８】
最終的に生成されるモデルは、階数３のテンソルで表現される。具体的には、生成されるモデルは、それぞれの述語ラベルＶＫが付与されたサブ単語文脈行列で表される。なお、学習データ内のＫ種類の述語は、Ｖ１，…，ＶＫとする。なお、活用フェーズでは、情報処理装置は、複数のサブ単語文脈行列を用いて、単語の共起に紐づく意味として、紐づく述語ラベルを出力する。
【００２９】
生成部１５０は、自己相互情報量の尺度を用いて学習済モデルを生成してもよい。単語ｗｉの出現回数がｍｉであり、単語ｗｊの出現回数がｍｊであり、学習データ内の総単語数がＮである場合、自己相互情報量ＰＭＩｉ，ｊは、次の式（２）で表される。
【００３０】
【数２】
0006976482.tif 000003
【００３１】
次に、具体的に処理を説明する。生成部１５０は、述語ごとに生成されたファイルを用いる。生成部１５０は、同じ述語のサブ学習用例文をカウントすることで、述語ラベルが付されたサブ単語文脈行列を生成する。サブ単語文脈行列を具体的に示す。
【００３２】
図５は、実施の形態１のサブ単語文脈行列の例（その１）を示す図である。例えば、生成部１５０は、述語である「運転する（動詞）」のファイルに登録されている「車（名詞）」と「ドライバー（名詞）」に基づいて、ｍｉ，ｉ（「ドライバー（名詞）」、「ドライバー（名詞）」）、ｍｊ，ｊ（「車（名詞）」、「車（名詞）」）、ｍｉ，ｊ（「ドライバー（名詞）」、「車（名詞）」）、及びｍｊ，ｉ（「車（名詞）」、「ドライバー（名詞）」）に、１を加算する。なお、サブ単語文脈行列の初期状態は、０である。
【００３３】
このように、生成部１５０は、述語ラベルが付されたサブ単語文脈行列を生成する。生成部１５０は、同じ述語のサブ学習用例文をカウントすることを繰り返すことで、複数の述語ラベルが付された複数のサブ単語文脈行列を生成できる。すなわち、生成部１５０は、複数のサブ学習用例文に基づく学習により、複数の述語ラベルが付された複数のサブ単語文脈行列を用いる学習済モデルを生成する。ここで、複数の述語ラベルが付された複数のサブ単語文脈行列の具体例を示す。
【００３４】
図６は、実施の形態１のサブ単語文脈行列の例（その２）を示す図である。図６は、述語ラベル「運転する（動詞）」のサブ単語文脈行列を示している。図６は、述語ラベル「作業する（動詞）」のサブ単語文脈行列を示している。図６は、述語ラベル「飛ばす（動詞）」のサブ単語文脈行列を示している。
ステップＳ２３が終了した後、処理は、ステップＳ１３に進む。
【００３５】
このように、情報処理装置１００は、複数のサブ単語文脈行列を用いる学習済モデルを生成する。なお、情報処理装置１００は、学習済モデルを再学習してもよい。
【００３６】
上記では、取得部１２０が複数の文字列を取得する場合を説明した。当該複数の文字列は、質問文の文字列と、当該質問文に対する応答文の文字列とでもよい。そこで、取得部１２０が質問文の文字列と応答文の文字列とを取得する場合を説明する。
【００３７】
図７は、実施の形態１の学習フェーズにおける情報処理装置が実行する処理の例を示すフローチャート（その２）である。
図７の処理では、ステップＳ１１ａ，１１ｂ，１１ｃが実行される点が、図３の処理と異なる。そのため、図７では、ステップＳ１１ａ，１１ｂ，１１ｃを説明する。図７における他のステップについては、図３のステップ番号と同じ番号を付することによって、処理の説明を省略する。
【００３８】
（ステップＳ１１ａ）取得部１２０は、質問文の文字列を取得する。また、取得部１２０は、複数の質問文を取得してもよい。
（ステップＳ１１ｂ）取得部１２０は、応答文の文字列を取得する。また、取得部１２０は、複数の応答文を取得してもよい。
（ステップＳ１１ｃ）形態素解析実行部１３０は、質問文の文字列と応答文の文字列とを結合する。
【００３９】
なお、ステップＳ１２では、形態素解析実行部１３０は、結合された文字列に対して形態素解析を実行する。
また、取得部１２０は、質問文の文字列を取得する前に、応答文の文字列を取得してもよい。さらに、形態素解析実行部１３０は、質問文の文字列と応答文の文字列とを結合しなくてもよい。結合が実行されない場合、ステップＳ２１の形態素解析実行部１３０は、複数の文字列（すなわち、質問文の文字列と応答文の文字列）に対して形態素解析を実行する。
【００４０】
図８は、実施の形態１の質問文と応答文とに基づいて学習済モデルが生成される場合の具体例を示す図である。
図８では、質問文の文字列と応答文の文字列との具体例が示されている。例えば、形態素解析によって、「飛ばす（動詞）」、「ドライバー（名詞）」、「飛距離（名詞）」、及び「ゴルフ（名詞）」が得られたとする。生成部１５０は、「飛ばす（動詞）」に対応するサブ単語文脈行列の「ドライバー（名詞）」と「飛距離（名詞）」との関係性を示す情報に１を加算する。生成部１５０は、「飛ばす（動詞）」に対応するサブ単語文脈行列の「ドライバー（名詞）」と「ゴルフ（名詞）」との関係性を示す情報に１を加算する。
【００４１】
このように、情報処理装置１００は、質問文と応答文とに基づいて学習済モデルを生成することができる。
【００４２】
＜活用フェーズ＞
図９は、実施の形態１の活用フェーズにおける情報処理装置が有する機能ブロックを示す図である。図２に示される構成と同じ図９の構成は、図２に示される符号と同じ符号を付している。情報処理装置１００ａは、記憶部１１０、取得部１２０ａ、形態素解析実行部１３０ａ、指定受付部１６０、推論部１７０、及び出力部１８０を有する。
【００４３】
ここで、情報処理装置１００と情報処理装置１００ａは、同じ装置でもよいし、異なる装置でもよい。例えば、情報処理装置１００と情報処理装置１００ａが同じ装置である場合、情報処理装置１００ａは、述語分割部１４０及び生成部１５０を有する。また、情報処理装置１００と情報処理装置１００ａが同じ装置である場合、取得部１２０ａは、取得部１２０の機能を有し、形態素解析実行部１３０ａは、形態素解析実行部１３０の機能を有する。
【００４４】
取得部１２０ａ、形態素解析実行部１３０ａ、指定受付部１６０、推論部１７０、及び出力部１８０の一部又は全部は、情報処理装置１００ａが有する処理回路によって実現してもよい。取得部１２０ａ、形態素解析実行部１３０ａ、指定受付部１６０、推論部１７０、及び出力部１８０の一部又は全部は、情報処理装置１００ａが有するプロセッサが実行するプログラムのモジュールとして実現してもよい。例えば、当該プログラムは、記録媒体に記録されている。
【００４５】
取得部１２０ａは、文字列データを取得する。また、取得部１２０ａは、学習済モデルを取得する。例えば、取得部１２０ａは、学習済モデルを記憶部１１０から取得する。ここで、学習済モデルが外部装置に格納されている場合、取得部１２０ａは、学習済モデルを外部装置から取得する。
形態素解析実行部１３０ａは、取得部１２０ａが取得した文字列データに対して形態素解析を実行する。
【００４６】
指定受付部１６０は、取得部１２０ａが取得した文字列データに対して形態素解析を実行することで得らえた複数の単語を表示装置に表示させる。ここで、当該複数の単語は、品詞が動詞、名詞、形容詞などの単語である。すなわち、当該複数の単語は、どんな品詞の単語でもよい。また、述語である単語は、動詞、形容詞、形容動詞、又はサ変名詞の単語である。
また、例えば、当該表示装置は、情報処理装置１００ａに接続可能なディスプレイである。ユーザは、表示装置に表示された複数の単語の中から対象単語を指定する。指定受付部１６０は、対象単語の指定を受付ける。対象単語は、第１の単語とも言う。
【００４７】
推論部１７０は、学習済モデルを用いて、対象単語の意味を推論する。
出力部１８０は、推論の結果を出力する。また、出力部１８０は、対象単語の意味の尤度を出力する。
【００４８】
次に、情報処理装置１００ａが実行する処理を、フローチャートを用いて説明する。
図１０は、実施の形態１の活用フェーズにおける情報処理装置が実行する処理の例を示すフローチャートである。
（ステップＳ３１）取得部１２０ａは、文字列データを取得する。例えば、文字列データは、「車のドライバー」を示す。
【００４９】
（ステップＳ３２）形態素解析実行部１３０ａは、文字列データに対して形態素解析を実行する。例えば、形態素解析実行部１３０ａは、文字列データ「車のドライバー」を、「車（名詞）」、「の（助詞）」、及び「ドライバー（名詞）」に分割する。
【００５０】
（ステップＳ３３）指定受付部１６０は、分割された単語の中から、助詞、助動詞、及び記号を除いた単語Ｓ（「車（名詞）」、「ドライバー（名詞）」）を表示装置に表示させる。
【００５１】
ユーザは、表示装置に表示された単語の中から、対象単語を指定する。ｗｉ「ドライバー（名詞）」が対象単語に指定されたものとする。
【００５２】
（ステップＳ３４）指定受付部１６０は、指定された対象単語を受付ける。
【００５３】
（ステップＳ３５）推論部１７０は、学習済モデルを用いて、対象単語の意味を推論する推論処理を実行する。詳細に処理を説明する。説明では、図６が用いられる。例えば、推論部１７０は、学習済モデルのｗｉ「ドライバー（名詞）」の行を参照する。推論部１７０は、単語Ｓ（「車（名詞）」、「ドライバー（名詞）」）が「ドライバー（名詞）」の行に存在するかを判定する。単語Ｓ（「車（名詞）」、「ドライバー（名詞）」）が「ドライバー（名詞）」の行に存在する場合、推論部１７０は、式（３）を用いて、カウント数Ｃｗｉを算出する。なお、カウント数Ｃｗｉは、ｗｊの総和である。
【００５４】
【数３】
0006976482.tif 000004
【００５５】
例えば、述語ラベルが「運転する（動詞）」である場合、推論部１７０は、式（４）の結果を算出する。
【００５６】
【数４】
0006976482.tif 000005
【００５７】
推論部１７０は、全ての述語ラベルに対しても、同様に、カウント数Ｃｗｉを算出する。推論部１７０は、述語ラベルのそれぞれのカウント数Ｃｗｉの中から最大値を算出する。最大値は、意味の尤度Ｓｃｏｒｅｗｉとする。尤度Ｓｃｏｒｅｗｉは、式（５）を用いて、算出される。
【００５８】
【数５】
0006976482.tif 000006
【００５９】
これにより、推論部１７０は、式（６）の結果を算出する。
【００６０】
【数６】
0006976482.tif 000007
【００６１】
最大値の述語ラベルは、意味Ｌａｂｅｌｗｉとする。意味Ｌａｂｅｌｗｉは、次の式（７）で表現される。なお、例えば、意味Ｌａｂｅｌｗｉは、「運転する（動詞）」である。
【００６２】
【数７】
0006976482.tif 000008
【００６３】
このように、推論部１７０は、取得部１２０ａが取得した文字列データに対して形態素解析を実行することで得らえた複数の単語と学習済モデルとに基づいて、対象単語の意味を推論する。例えば、推論部１７０は、「車のドライバー」に対して形態素解析を実行することで得らえた「車（名詞）」と「ドライバー（名詞）」、及び学習済モデルに基づいて、「ドライバー（名詞）」の意味を推論する。
【００６４】
（ステップＳ３６）出力部１８０は、推論の結果を出力する。例えば、出力部１８０は、意味Ｌａｂｅｌｗｉである「運転する（動詞）」を出力する。言い換えれば、出力部１８０は、意味ラベル「運転する（動詞）」を出力する。また、出力部１８０は、尤度Ｓｃｏｒｅｗｉを出力する。
【００６５】
このように、情報処理装置１００ａは、文字列データ「車のドライバー」の「ドライバー」の意味が「運転する  ドライバー」であることを推論できる。また、文字列データに述語が含まれていない場合でも、情報処理装置１００ａは、意味を推論することができる。
【００６６】
また、例えば、情報処理装置１００ａは、文字列データ「工具のドライバー」を取得する。文字列データ「工具のドライバー」の対象単語が「ドライバー」である場合、情報処理装置１００ａは、「ドライバー」の意味が「作業する  ドライバー」であることを推論する。また、情報処理装置１００ａは、尤度Ｓｃｏｒｅｗｉが９であることを示す情報を出力する。
【００６７】
また、例えば、情報処理装置１００ａは、文字列データ「ゴルフのドライバー」を取得する。文字列データ「ゴルフのドライバー」の対象単語が「ドライバー」である場合、情報処理装置１００ａは、「ドライバー」の意味が「飛ばす  ドライバー」であることを推論する。また、情報処理装置１００ａは、尤度Ｓｃｏｒｅｗｉが６であることを示す情報を出力する。
【００６８】
このように、情報処理装置１００ａは、学習済モデルを用いて、同一単語に対して文脈により異なる意味を推論できる。また、情報処理装置１００ａは、意味ラベルを出力する。これにより、ユーザは、直観的に意味ラベルを理解することができる。さらに、情報処理装置１００ａは、尤度を出力する。これにより、ユーザは、対象単語の意味の尤度を知ることができる。
【００６９】
ここで、比較例を示す。
図１１は、比較例を示す図である。図１１は、１つのサブ単語文脈行列を示している。ある装置が、学習済モデルとして、図１１のサブ単語文脈行列を用いて、意味を推論した場合、当該装置は、サブ単語文脈行列が１つであるため、１つの意味しか推論しない。
【００７０】
一方、情報処理装置１００が生成した学習済モデルには、複数のサブ単語文脈行列が含まれている。そのため、情報処理装置１００が生成した学習済モデルは、多義性に対応できる。例えば、上記で示したように、情報処理装置１００ａは、学習済モデルを用いて、同一単語に対して文脈により異なる意味を推論できる。また、情報処理装置１００は、学習済モデルを生成する場合、次元圧縮を行わない。さらに、情報処理装置１００は、サブ学習用例文をカウントすることを繰り返すという低コストの計算を行う。そのため、情報処理装置１００は、短い処理時間で学習済モデルを生成できる。よって、実施の形態１によれば、情報処理装置１００は、短い処理時間で多義性に対応する学習済モデルを生成できる。
【００７１】
実施の形態２．
＜活用フェーズ＞
次に、実施の形態２を説明する。実施の形態２では、実施の形態１と相違する事項を主に説明する。そして、実施の形態２では、実施の形態１と共通する事項の説明を省略する。実施の形態２の説明では、図１〜１０を参照する。
【００７２】
図１２は、実施の形態２の活用フェーズにおける情報処理装置が有する機能ブロックを示す図である。図９に示される構成と同じ図１２の構成は、図９に示される符号と同じ符号を付している。
【００７３】
情報処理装置１００ａは、特定部１９０をさらに有する。取得部１２０ａは、さらに語義文データを取得する。語義文データは、語義を示す複数の文字列である複数の語義文字列である。言い換えれば、語義文データは、対象単語に対応する語義を示す複数の文字列である複数の語義文字列である。例えば、語義文データは、「車のドライバー」、「工具のドライバー」、及び「ゴルフのドライバー」を含む。言い換えれば、語義文データは、「ドライバー」に対応する「車のドライバー」、「工具のドライバー」、及び「ゴルフのドライバー」を含む。
【００７４】
特定部１９０は、複数の語義文字列の中から、対象単語の意味と同じ意味の語義文字列を特定する。特定された語義文字列は、正解語義文字列と呼ぶ。出力部１８０は、正解語義文字列を出力する。
【００７５】
次に、情報処理装置１００ａが実行する処理を、フローチャートを用いて説明する。
図１３は、実施の形態２の活用フェーズにおける情報処理装置が実行する処理の例を示すフローチャートである。
図１３の処理では、ステップＳ３１ａ，３５ａが実行され、ステップＳ３６の代わりにステップＳ３６ａが実行される点が、図１０の処理と異なる。そのため、図１３では、ステップＳ３１ａ，３５ａ，３６ａを説明する。図１３における他のステップについては、図１０のステップ番号と同じ番号を付することによって、処理の説明を省略する。
【００７６】
（ステップＳ３１ａ）取得部１２０ａは、語義文データを取得する。例えば、語義文データは、「車のドライバー」、「工具のドライバー」、及び「ゴルフのドライバー」を含む。取得部１２０ａは、語義文データを記憶部１１０に格納する。
【００７７】
ここで、ステップＳ３１で、取得部１２０ａは、文字列データ「タクシードライバー」を取得する。ステップＳ３５で、推論部１７０は、「タクシードライバー」の意味が「運転する  ドライバー」であることを推論する。尤度は、１５である。
【００７８】
（ステップＳ３５ａ）特定部１９０は、取得部１２０ａを介して、語義文データを取得する。ここで、推論部１７０は、「タクシードライバー」の意味が「運転する  ドライバー」であることを推論した。特定部１９０は、「運転する  ドライバー」と同じ意味の語義を、語義文データの中から特定する。例えば、「車」と「運転する」は、関係性がある。特定部１９０は、「車」と「運転する」との関係を示す情報に基づいて、「車のドライバー」が「運転する  ドライバー」と同じ意味であることを特定する。そして、特定部１９０は、語義文データの中から「車のドライバー」を特定する。
【００７９】
（ステップＳ３６ａ）出力部１８０は、正解語義文字列を出力する。例えば、出力部１８０は、「タクシードライバー」の「ドライバー」の正解語義文字列が「車のドライバー」であることを出力する。
【００８０】
また、例えば、取得部１２０ａが文字列データ「精密ドライバー」を取得した場合、特定部１９０は、語義文データの中から「工具のドライバー」を特定する。そして、出力部１８０は、「精密ドライバー」の「ドライバー」の正解語義文字列が「工具のドライバー」であることを出力する。
【００８１】
実施の形態２によれば、情報処理装置１００ａは、語義文データを用いることで、意味の尤度を向上できる。
【００８２】
以上に説明した各実施の形態では、一例として、名詞の意味を推論する場合を説明したが、名詞以外の品詞も同様に推論することができる。また、各実施の形態における特徴は、互いに適宜組み合わせることができる。
【符号の説明】
【００８３】
１００，１００ａ  情報処理装置、  １０１  プロセッサ、  １０２  揮発性記憶装置、  １０３  不揮発性記憶装置、  １１０  記憶部、  １２０，１２０ａ  取得部、  １３０，１３０ａ  形態素解析実行部、  １４０  述語分割部、  １５０  生成部、  １６０  指定受付部、  １７０  推論部、  １８０  出力部、  １９０  特定部。
【要約】
情報処理装置（１００）は、複数の文字列を取得する取得部（１２０）と、複数の文字列に対して形態素解析を実行する形態素解析実行部（１３０）と、複数の文字列に対して形態素解析を実行することで得られた複数の品詞付単語の中の複数の述語である複数の単語と、複数の品詞付単語の中の複数の単語とに基づいて、複数の品詞付単語の中の複数の単語のうちの第１の単語の意味を推論する学習済モデルを生成する生成部（１５０）と、を有する。【図１】
0006976482.tif 000009
【図２】
0006976482.tif 000010
【図３】
0006976482.tif 000011
【図４】
0006976482.tif 000012
【図５】
0006976482.tif 000013
【図６】
0006976482.tif 000014
【図７】
0006976482.tif 000015
【図８】
0006976482.tif 000016
【図９】
0006976482.tif 000017
【図１０】
0006976482.tif 000018
【図１１】
0006976482.tif 000019
【図１２】
0006976482.tif 000020
【図１３】
0006976482.tif 000021