(57)【要約】【課題】文章を特定するための負荷を軽減すること。【解決手段】情報処理装置１００は、文章に応じた情報を受け付ける。情報処理装置１００は、文章に対する他の文章の共起情報と他の文章に応じた情報とを前記文章に対応づけて記憶する記憶部を参照する。情報処理装置１００は、他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす他の文章に応じた情報に対応づけられた文章を特定する。【選択図】図２
2019046048.tif 000002
【特許請求の範囲】
【請求項１】
文章に応じた情報を受け付け、
文章に対する他の文章の共起情報と前記他の文章に応じた情報とを前記文章に対応づけて記憶する記憶部を参照して、前記他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす他の文章に応じた情報に対応づけられた文章を特定する
処理をコンピュータに実行させることを特徴とする特定プログラム。
【請求項２】
前記文章に応じた情報は、前記文章に応じたベクトル情報であり、前記他の文章に応じた情報は、前記他の文章に応じたベクトル情報であることを特徴とする請求項１に記載の特定プログラム。
【請求項３】
前記文章に応じたベクトル情報は、前記文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であり、前記他の文章に応じたベクトル情報は、前記他の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であることを特徴とする請求項１に記載の特定プログラム。
【請求項４】
前記文章に応じたベクトル情報は、前記文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であり、前記他の文章に応じたベクトル情報は、前記他の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であることを特徴とする請求項１に記載の特定プログラム。
【請求項５】
コンピュータが実行する特定方法であって、
文章に応じた情報を受け付け、
文章に対する他の文章の共起情報と前記他の文章に応じた情報とを前記文章に対応づけて記憶する記憶部を参照して、前記他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす他の文章に応じた情報に対応づけられた文章を特定する
処理を実行することを特徴とする特定方法。
【請求項６】
文章に応じた情報を受け付ける受付部と、
文章に対する他の文章の共起情報と前記他の文章に応じた情報とを前記文章に対応づけて記憶する記憶部を参照して、前記他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす他の文章に応じた情報に対応づけられた文章を特定する特定部と
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特定プログラム等に関する。
【背景技術】
【０００２】
ユーザからの質問文を受け付けた場合に、受け付けた質問文に対応する回答文を特定する従来技術の一例として、従来技術１および従来技術２がある。たとえば、従来技術１は、受け付けた質問文に対して形態素解析を行い、特徴キーワードを多く含む回答文の候補を抽出し、質問文と複数の回答文の素性ベクトルを算出し、最尤な回答文をランキング表示する。
【０００３】
従来技術２では、アパッチ（Apache）等で配布されているSolrを用いて、記憶部に記憶された各回答文に含まれる特徴単語毎に評価値を算出し、評価値に基づいて、質問文に対応する回答を含む可能性の高い回答文を複数の回答文から特定している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１７１５５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来技術では、文章を特定するための負荷を軽減することができないという問題がある。
【０００６】
たとえば、従来技術１では、質問文を形態素解析し、キーワード群を生成するものであるが、類語などの表現のゆれの影響により、回答文の候補が多くなる。また、質問文と多数の回答文の素性ベクトルの演算には、資源や時間の多大な負荷が発生する。
【０００７】
１つの側面では、本発明は、文章を特定するための負荷を軽減することができる特定プログラム、特定方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の案では、コンピュータに下記の処理を実行させる。コンピュータは、文章に応じた情報を受け付ける。コンピュータは、文章に対する他の文章の共起情報と他の文章に応じた情報とを文章に対応づけて記憶する記憶部を参照する。コンピュータは、他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす他の文章に応じた情報に対応づけられた文章を特定する。
【発明の効果】
【０００９】
文章を特定するための負荷を軽減することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施例１に係る情報処理装置の処理を説明するための図である。
【図２】図２は、本実施例１に係る情報処理装置の構成を示す機能ブロック図である。
【図３】図３は、本実施例１に係る質問文ＤＢのデータ構造の一例を示す図である。
【図４】図４は、本実施例１に係る文章ＨＭＭのデータ構造の一例を示す図である。
【図５】図５は、本実施例１に係る回答文ＤＢのデータ構造の一例を示す図である。
【図６】図６は、文章ベクトルを算出する処理の一例を説明するための図である。
【図７】図７は、本実施例１に係る情報処理装置の処理手順を示すフローチャートである。
【図８】図８は、本実施例２に係る情報処理装置の処理を説明するための図である。
【図９】図９は、本実施例２に係る情報処理装置の構成を示す機能ブロック図である。
【図１０】図１０は、本実施例２に係る文ＨＭＭのデータ構造の一例を示す図である。
【図１１】図１１は、本実施例２に係る情報処理装置の処理手順を示すフローチャートである。
【図１２】図１２は、本実施例３に係る情報処理装置の処理を説明するための図である。
【図１３】図１３は、本実施例３に係る情報処理装置の構成を示す機能ブロック図である。
【図１４】図１４は、本実施例３に係る文ＨＭＭのデータ構造の一例を示す図である。
【図１５】図１５は、文のベクトル（極値）を算出する処理の一例を説明するための図である。
【図１６】図１６は、本実施例３に係る情報処理装置の処理手順を示すフローチャートである。
【図１７】図１７は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する特定プログラム、特定方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１２】
図１は、本実施例１に係る情報処理装置の処理を説明するための図である。本実施例１に係る情報処理装置は、質問文データＦ１を取得すると、質問文データＦ１と、文章ＨＭＭ１４０ｃとを基にして、質問文データＦ１に対応する回答文データＦ３を特定する。
【００１３】
本実施例１に係る質問文データＦ１には、複数の「文章」が含まれる。文章は、複数の「文」から成り立つものである。また、文は、句点により区切られる文字列である。たとえば、文章「クラスタ環境を構成しています。操作ミスで共有リソースが全てなくなってしまいました。」には、文「クラスタ環境を構成しています。」、「操作ミスで共有リソースが全てなくなってしまいました。」が含まれる。
【００１４】
図１の説明では、説明の便宜上、質問文データＦ１には、文章ｘ、文章ｙが含まれているものとする。図示を省略するが、質問文データＦ１には、文章ｘ、文章ｙ以外の文章が含まれていてもよい。また、文章ｘを、質問文に対応する文章とし、質問文データＦ１に含まれる文章ｙ、他の文章を、質問文以外の文章とする。
【００１５】
文章ｘには、文ｘ１、文ｘ２、文ｘ３、・・・文ｘｎが含まれるものとする。文章ｙには、文ｙ１、文ｙ２、文ｙ３、・・・文ｙｎが含まれるものとする。
【００１６】
情報処理装置は、文章ｘ、文章ｙ、他の文章の文章ベクトルを算出する。たとえば、文章ｘの文章ベクトルを、ｘＶｅｃと表記する。文章ｙの文章ベクトルをｙＶｅｃと表記する。質問文データＦ１を基にして生成されるベクトルデータを、ベクトルデータＦ２と表記する。
【００１７】
情報処理装置が、文章ｘの文章ベクトルｘＶｅｃを算出する処理の一例について説明する。情報処理装置は、文章ｘに含まれる各文ｘ１〜ｘｎの文ベクトルｘＶｅｃ１〜ｘＶｅｃｎを算出し、各文ベクトルｘＶｅｃ１〜ｘＶｅｃｎを集積することで、文章ｘの文章ベクトルｘＶｅｃを算出する。
【００１８】
なお、情報処理装置は、文ベクトルを算出する場合には、Word2Vec技術に基づいて、文に含まれる各単語の単語ベクトルを算出し、各単語の単語ベクトルを集積することで、文ベクトルを算出する。Word2Vec技術は、ある単語と、隣接する他の単語との関係に基づいて、各単語のベクトルを算出する処理を行うものである。
【００１９】
なお、情報処理装置が、文章ｙの文章ベクトルｙＶｅｃを算出する処理は、文章ｘの文章ベクトルｘＶｅｃを算出する処理と同様であるため、説明を省略する。情報処理装置が、上記処理を行うことで、ベクトルデータＦ２を生成する。
【００２０】
情報処理装置は、ベクトルデータＦ２に含まれる文章ｘと共起する文章ｙおよび他の文章の文章ベクトルと、文章ＨＭＭ（Hidden  Markov  Model）１４０ｃとを比較することで、文章ｘに対応する回答文の文章ベクトルを特定する。
【００２１】
文章ＨＭＭ１４０ｃは、文章ベクトルと、複数の共起文章ベクトルとを対応づける。文章ＨＭＭ１４０ｃの文章ベクトルは、回答文（回答文の文章）から算出された文章ベクトルであり、この文章ベクトルにより、回答文が定まる。共起文章ベクトルは、質問文データに含まれる質問文の文章と共起する文章から求められる文章ベクトルである。
【００２２】
共起文章ベクトルは、共起率と対応づけられる。たとえば、質問文データＦ１の文章ｘの回答文が、回答文Ａ２である場合には、文章ｘと共起する文章の文章ベクトルが「Ｄα１０８Ｆ９７」となる可能性が「３７％」であり、文章ベクトルが「Ｄα１０８Ｆ１９」となる可能性が「２９％」であることが示される。
【００２３】
情報処理装置は、ベクトルデータＦ２に含まれる文章ベクトルｘＶｅｃの前後に出現する文章ベクトル（文章ベクトルｙＶｅｃ、あるいは他の文章ベクトル）と、文章ＨＭＭ１４０ｃの各共起文章ベクトルとを比較して、ヒットするレコードを判定する。たとえば、文章ベクトルｙＶｅｃが、共起文章ベクトル「Ｄα１０８Ｆ９７」と一致（あるいは類似）する場合には、情報処理装置は、回答文Ａ２を、文章ｘの回答文として特定する。
【００２４】
上記のように、情報処理装置は、質問文データＦ１に含まれる各文章の文章ベクトルを算出し、質問文に対応する文章と共起する文章の文章ベクトルと、文章ＨＭＭ１４０ｃの共起文章ベクトルとを比較し、回答文を特定する。情報処理装置は、質問文データＦ１の質問文の文章との共起関係に基づいて、回答文を特定するので、文章を特定するための負荷を軽減することができる。
【００２５】
次に、本実施例１に係る情報処理装置の構成の一例について説明する。図２は、本実施例１に係る情報処理装置の構成を示す機能ブロック図である。図２に示すように、情報処理装置１００は、通信部１１０と、入力部１２０と、表示部１３０と、記憶部１４０と、制御部１５０とを有する。
【００２６】
通信部１１０は、ネットワークを介して他の装置からデータを受信する通信装置である。たとえば、通信部１１０は、他の装置から質問文データＦ１を受信し、受信した質問文データＦ１を、制御部１５０に出力する。
【００２７】
入力部１２０は、情報処理装置１００に各種の情報を入力するための入力装置である。たとえば、入力部１２０は、キーボードやマウス、タッチパネル等に対応する。情報処理装置１００は、入力部１２０を介して、質問文データＦ１を受け付けてもよい。
【００２８】
表示部１３０は、制御部１５０から出力される情報を表示する表示装置である。表示部１３０は、液晶ディスプレイ、タッチパネル等に対応する。
【００２９】
記憶部１４０は、質問文ＤＢ（Data  Base）１４０ａ、一般文ＤＢ１４０ｂ、文章ＨＭＭ１４０ｃ、回答文ＤＢ１４０ｄ、静的辞書情報１４０ｅ、動的辞書情報１４０ｆを有する。記憶部１４０は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。
【００３０】
質問文ＤＢ１４０ａは、質問文データＦ１を格納するデータベースである。図３は、本実施例１に係る質問文ＤＢのデータ構造の一例を示す図である。図３に示すように、この質問文ＤＢは、質問文章番号と、文章内容（質問文データ）とを対応づける。質問文章番号は、質問文章に含まれる複数の文章のグループを一意に識別する情報である。文章内容は、質問文章番号に対応する各文章の内容を示すものである。
【００３１】
一般文ＤＢ１４０ｂは、各種の文章の中で、特徴のない一般的な文を格納するＤＢである。たとえば、一般文は、「いつもお世話になっております。」、「原因と対処方法を教えてください。」等に対応する文である。一般文は、予め、一般文ＤＢ１４０ｂに設定されているものとする。
【００３２】
文章ＨＭＭ１４０ｃは、質問文に対応する文章と共起する可能性の高い文章の情報と、回答文とを対応づける情報である。以下の説明では、適宜、質問文に対応する文章を「質問文章」と表記する。本実施例１では一例として、質問文ＤＢ１４０ａの文章内容には、質問文章と、他の文章が含まれているものとする。
【００３３】
図４は、本実施例１に係る文章ＨＭＭのデータ構造の一例を示す図である。図４に示すように、この文章ＨＭＭ１４０ｃは、文章ベクトルと、複数の共起文章ベクトルとを対応づける。文章ＨＭＭ１４０ｃの文章ベクトルは、回答文（回答文の文章）から算出された文章ベクトルであり、この文章ベクトルにより、回答文が定まる。
【００３４】
共起文章ベクトルは、共起率と対応づけられる。共起文章ベクトルは、質問文データに含まれる質問文章と共起する文章から求められるベクトルである。共起率は、該当する文章ベクトルの文章が、質問文章と共起する確率を示すものである。たとえば、ある質問文章に対応する回答文が回答文Ａ２である場合には、質問文章と文章（文章ベクトル「Ｄα１０８Ｆ９７」の文章）とが共起する可能性が「３７％」であることが、示されている。
【００３５】
回答文ＤＢ１４０ｄは、回答文の文章ベクトルと、回答文とを対応づけるデータベースである。図５は、本実施例１に係る回答文ＤＢのデータ構造の一例を示す図である。図５に示すように、文章ベクトルと、回答文とを対応づける。文章ベクトルは、回答文から算出された文章ベクトルである。回答文は、回答文の内容を示すものである。ここでは一例として、回答文を文章とするが、回答文は、文であってもよい。
【００３６】
静的辞書情報１４０ｅは、単語と、静的コードとを対応づける情報である。
【００３７】
動的辞書情報１４０ｆは、静的辞書情報１４０ｅで定義されていない単語（あるいは文字列）に動的コードを割り当てるための情報である。
【００３８】
図２の説明に戻る。制御部１５０は、受付部１５０ａ、抽出部１５０ｂ、特定部１５０ｃ、出力部１５０ｄを有する。制御部１５０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などによって実現できる。また、制御部１５０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによっても実現できる。
【００３９】
受付部１５０ａは、通信部１１０または入力部１２０から、質問文データＦ１を受け付ける。受付部１５０ａは、受け付けた質問文データを質問文ＤＢ１４０ａに登録する。
【００４０】
抽出部１５０ｂは、質問文ＤＢ１４０ａから、質問文データを取得し、質問文データに含まれる各文章と、一般文ＤＢ１４０ｂに登録された文とを基にして、特徴文章データを抽出する処理部である。抽出部１５０ｂは、特徴文章データを、特定部１５０ｃに出力する。
【００４１】
たとえば、抽出部１５０ｂは、質問文データに含まれる各文章の各文と、一般文ＤＢ１４０ｂに格納された一般文とを比較し、質問文データから特徴文章データを抽出する。
【００４２】
特定部１５０ｃは、特徴文章データと、文章ＨＭＭ１４０ｃとを基にして、質問文章に対応する回答文を特定する処理部である。たとえば、特定部１５０ｃは、特徴文章データに含まれる各文章の文章ベクトルを算出する処理を行った後に、各文章ベクトルと、文章ＨＭＭ１４０ｃとを基にして、回答文を特定する。
【００４３】
特定部１５０ｃが、文章ベクトルを算出する処理の一例について説明する。図６は、文章ベクトルを算出する処理の一例を説明するための図である。図６では一例として、文章ｘの文章ベクトルを算出する処理について説明する。
【００４４】
たとえば、文章ｘには、文ｘ１、文ｘ２、文ｘ３、・・・、文ｘｎが含まれる。特定部１５０ｃは、文ｘ１の文ベクトルｘＶｅｃ１を次のように算出する。特定部１５０ｃは、静的辞書情報１４０ｅおよび動的辞書情報１４０ｆを用いて、文ｘ１に含まれる各単語を符号化する。
【００４５】
たとえば、特定部１５０ｃは、単語が静的辞書情報１４０ｅにヒットした場合には、単語の静的コードを特定し、特定した静的コードに単語を置き換えることで、符号化を行う。特定部１５０ｃは、単語が静的辞書情報１４０ｅにヒットしない場合には、動的辞書情報１４０ｆを用いて、動的コードを特定する。たとえば、特定部１５０ｃは、単語が動的辞書情報１４０ｆに未登録である場合には、単語を動的辞書情報１４０ｆに登録して、登録位置に対応する動的コードを得る。特定部１５０ｃは、単語が動的辞書情報１４０ｆに登録済みである場合には、既に登録済みの登録位置に対応する動的コードを得る。特定部１５０ｃは、特定した動的コードに単語を置き換えることで、符号化を行う。
【００４６】
図６に示す例では、特定部１５０ｃは、単語ａ１から単語ａｎを、符号ｂ１からｂｎに置き換えることで、符号化を行う。
【００４７】
特定部１５０ｃは、各単語の符号化を行った後に、Word2Vec技術に基づいて、各単語（各符号）の単語ベクトルを算出する。Word2Vec技術は、ある単語（符号）と、隣接する他の単語（符号）との関係に基づいて、各符号のベクトルを算出する処理を行うものである。図６に示す例では、特定部１５０ｃは、符号ｂ１から符号ｂｎの単語ベクトルＶｅｃ１〜Ｖｅｃｎを算出する。特定部１５０ｃは、各単語ベクトルＶｅｃ１〜Ｖｅｃｎを集積することで、文ｘの文ベクトルｘＶｅｃ１を算出する。
【００４８】
上記のようにして、特定部１５０ｃは、文ｘ１の文ベクトルｘＶｅｃ１を算出する。特定部１５０ｃは、文ｘ２〜文ｎｘについても同様の処理を行うことで、文ベクトルｘＶｅｃ２〜ｘＶｅｃｎを算出する。
【００４９】
特定部１５０ｃは、文ベクトルｘＶｅｃ１〜ｘＶｅｃｎを集積することで、文章ｘの文章ベクトル「ｘＶｅｃ」を算出する。特定部１５０ｃは、文章ｙ、他の文章についても、同様の処理を行うことで、文章ｙの文章ベクトル「ｙＶｅｃ」、他の文章の文章ベクトル「ｎＶｅｃ」を算出する。
【００５０】
続いて、特定部１５０ｃが、各文章ベクトルと、文章ＨＭＭ１４０ｃとを基にして、質問文章に対応する回答文を特定する処理の一例について説明する。特定部１５０ｃは、質問文章と共起する文章の文章ベクトルと、文章ＨＭＭ１４０ｃの共起文章ベクトルとを比較して、文章ベクトルと一致する（あるいは類似する）共起文章ベクトルを特定する。なお、特定部１５０ｃは、文章ベクトルと、共起文章ベクトルとの距離が閾値未満となる共起文章ベクトルを、一致する共起文章ベクトルとして特定してもよい。
【００５１】
特定部１５０ｃは、特定した共起文章ベクトルに対応づけられた文章ベクトルを特定する。特定部１５０ｃは、特定した文章ベクトルを、出力部１５０ｄに出力する。
【００５２】
たとえば、図４において、特定部１５０ｃは、質問文章と共起する文章の文章ベクトルが「Ｄα１０８Ｆ９７」である場合には、「回答文Ａ２の文章ベクトル」を特定する。
【００５３】
特定部１５０ｃは、文章ベクトルと一致する共起文章ベクトルが複数存在する場合には、共起率が最大となる共起文章ベクトルを選択してもよいし、その他の選択ポリシーに基づいて、共起文章ベクトルを選択してもよい。
【００５４】
出力部１５０ｄは、特定部１５０ｃから受け付ける文章ベクトルに対応する回答文を、回答文ＤＢ１４０ｄから検出し、検出した回答文の情報を、出力する処理部である。出力部１５０ｄは、回答文データを、表示部１３０に表示させてもよいし、質問文データの送信元に送信してもよい。また、出力部１５０ｄは、回答文データを送信する場合には、静的辞書情報１４０ｅ、動的辞書情報１４０ｆを基にして、符号化を行った後に、送信してもよい。回答文データを符号化する説明は、特定部１５０ｃが特徴文章データを符号化する説明と同様である。
【００５５】
次に、本実施例１に係る情報処理装置１００の処理手順の一例について説明する。図７は、本実施例１に係る情報処理装置の処理手順を示すフローチャートである。図７に示すように、情報処理装置１００の受付部１５０ａは、質問文データを受け付ける（ステップＳ１０１）。
【００５６】
情報処理装置１００の抽出部１５０ｂは、質問文データから特徴文章データを抽出する（ステップＳ１０２）。
【００５７】
情報処理装置１００の特定部１５０ｃは、特徴文章データに含まれる各文章の文章ベクトルを算出する（ステップＳ１０３）。特定部１５０ｃは、質問文章と共起する文章の文章ベクトルと、文章ＨＭＭ１４０ｃとを比較して、共起条件を満たす回答文の文章ベクトルを特定する（ステップＳ１０４）。
【００５８】
情報処理装置１００の出力部１５０ｄは、文章ベクトルを基にして、回答文ＤＢ１４０ｄから回答文データを取得し、回答文データを符号化する（ステップＳ１０５）。出力部１５０ｄは、回答文データを送信する（ステップＳ１０６）。
【００５９】
次に、本実施例１に係る情報処理装置１００の効果について説明する。情報処理装置１００は、質問文データに含まれる各文章の文章ベクトルを算出し、質問文章と共起する文章の文章ベクトルと、文章ＨＭＭ１４０ｃの共起文章ベクトルとを比較し、回答文を特定する。このように、情報処理装置１００は、質問文章との共起関係づいて、回答文を特定するので、文章を特定するための負荷を軽減することができる。
【実施例２】
【００６０】
図８は、本実施例２に係る情報処理装置の処理を説明するための図である。本実施例２に係る情報処理装置は、質問文データＦ４を取得すると、質問文データＦ４と、文ＨＭＭ２４０ｃとを基にして、質問文データＦ４に対応する回答文データＦ６を特定する。
【００６１】
本実施例２に係る質問文データＦ４には、一つの「文章」が含まれる。文章は、複数の「文」から成り立つものである。また、文は、句点により区切られる文字列である。
【００６２】
図８の説明では、説明の便宜上、質問文データＦ４には、文章ｘが含まれているものとする。また、文章ｘに含まれる文ｘ１を、質問文に対応する文とし、他の文を、質問文以外の文とする。
【００６３】
情報処理装置は、文章ｘに含まれる各文のベクトルを算出する。たとえば、文ｘ１〜文ｘｎに対応するベクトルを、ｘＶｅｃ１〜ｘＶｅｃｎとする。情報処理装置が、文ｘ１〜文ｘｎに対応するベクトルを算出する処理は、実施例１で説明した情報処理装置１００が、文のベクトルを算出する処理と同様である。情報処理装置が、上記処理を行うことで、ベクトルデータＦ５を生成する。
【００６４】
情報処理装置は、ベクトルデータＦ５に含まれる文ｘ１と共起する文ｘ２〜ｘｎのベクトルと、文ＨＭＭ２４０ｃとを比較することで、文ｘ１に対応する回答文のベクトルを特定する。
【００６５】
文ＨＭＭ２４０ｃは、ベクトルと、複数の共起ベクトルとを対応づける。文ＨＭＭ２４０ｃのベクトルは、回答文（回答文の文章）から算出されたベクトルであり、このベクトルにより、回答文が定まる。共起ベクトルは、質問文データＦ４に含まれる文と共起する文から求められるベクトルである。
【００６６】
共起ベクトルは、共起率と対応づけられる。たとえば、質問文データＦ４の文ｘの回答文が、回答文Ａ２である場合には、文ｘ１と共起する文のベクトルが「Ｄβ１０８Ｆ９７」となる可能性が「３７％」であり、文ｘ１と共起する文のベクトルが「Ｄβ１０８Ｆ１９」となる可能性が「２９％」であることが示される。
【００６７】
情報処理装置は、ベクトルデータＦ５に含まれるｘＶｅｃ１の前後に出現するベクトルと、文ＨＭＭ２４０ｃの各共起ベクトルとを比較して、ヒットするレコードを判定する。たとえば、ベクトルｙＶｅｃ１が、共起ベクトル「Ｄβ１０８Ｆ９７」と一致（あるいは類似）する場合には、情報処理装置は、回答文Ａ２を、文ｘ１の回答文として特定する。
【００６８】
上記のように、情報処理装置は、質問文データＦ４に含まれる各文のベクトルを算出し、質問文に対応する文と共起する文のベクトルと、文ＨＭＭ２４０ｃの共起ベクトルとを比較し、回答文を特定する。情報処理装置は、質問文データＦ４の質問文の文との共起関係に基づいて、回答文を特定するので、文を特定するための負荷を軽減することができる。
【００６９】
次に、本実施例２に係る情報処理装置の構成について説明する。図９は、本実施例２に係る情報処理装置の構成を示す機能ブロック図である。図９に示すように、情報処理装置２００は、通信部２１０と、入力部２２０と、表示部２３０と、記憶部２４０と、制御部２５０とを有する。
【００７０】
通信部２１０は、ネットワークを介して他の装置からデータを受信する通信装置である。たとえば、通信部２１０は、他の装置から質問文データＦ４を受信し、受信した質問文データＦ４を、制御部２５０に出力する。
【００７１】
入力部２２０は、情報処理装置２００に各種の情報を入力するための入力装置である。たとえば、入力部２２０は、キーボードやマウス、タッチパネル等に対応する。情報処理装置２００は、入力部２２０を介して、質問文データＦ４を受け付けてもよい。
【００７２】
表示部２３０は、制御部２５０から出力される情報を表示する表示装置である。表示部２３０は、液晶ディスプレイ、タッチパネル等に対応する。
【００７３】
記憶部２４０は、質問文ＤＢ２４０ａ、一般文ＤＢ２４０ｂ、文ＨＭＭ２４０ｃ、回答文ＤＢ２４０ｄ、静的辞書情報２４０ｅ、動的辞書情報２４０ｆを有する。記憶部２４０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。
【００７４】
質問文章ＤＢ２４０ａは、質問文データＦ４を格納するデータベースである。たとえば、質問文章ＤＢ２４０ａは、質問文章番号と、質問文データとを対応づけて記憶する。
【００７５】
一般文ＤＢ２４０ｂは、一般的な文を格納するＤＢである。一般文ＤＢ２４０ｂの説明は、実施例１で説明した、一般文ＤＢ１４０ｂの説明に対応する。
【００７６】
文ＨＭＭ２４０ｃは、質問文に対応する文と共起する可能性の高い文の情報と、回答文とを対応づける情報である。以下の説明では、適宜、質問文に対応する文を単に「質問文」と表記する。本実施例２では一例として、質問文ＤＢ２４０ａには、質問文と、他の文が含まれているものとする。
【００７７】
図１０は、本実施例２に係る文ＨＭＭのデータ構造の一例を示す図である。図１０に示すように、この文ＨＭＭ２４０ｃは、ベクトルと、複数の共起ベクトルとを対応づける。文ＨＭＭ２４０ｃのベクトルは、回答文（回答文の文）から算出されたベクトルであり、このベクトルにより、回答文が定まる。
【００７８】
共起ベクトルは、共起率と対応づけられる。共起ベクトルは、質問文データに含まれる質問文と共起する文から求められるベクトルである。共起率は、該当するベクトルの文が、質問文と共起する確率を示すものである。たとえば、ある質問文に対応する回答文が回答文Ａ２である場合には、質問文と文（ベクトル「Ｄβ１０８Ｆ９７」の文）とが共起する可能性が「３７％」であることが、示されている。
【００７９】
回答文ＤＢ２４０ｄは、回答文のベクトルと、回答文とを対応づけるデータベースである。
【００８０】
静的辞書情報２４０ｅ、動的辞書情報２４０ｆに関する説明は、実施例１で説明した静的辞書情報１４０ｅ、動的辞書情報１４０ｆに関する説明と同様である。
【００８１】
制御部２５０は、受付部２５０ａ、抽出部２５０ｂ、特定部２５０ｃ、出力部２５０ｄを有する。制御部２５０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部２５０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。
【００８２】
受付部２５０ａは、通信部２１０または入力部２２０から、質問文データＦ４を受け付ける。受付部２５０ａは、受け付けた質問文データを質問文ＤＢ２４０ａに登録する。
【００８３】
抽出部２５０ｂは、質問文ＤＢ２４０ａから、質問文データを取得し、質問文データに含まれる各文と、一般文ＤＢ２４０ｂに登録された文とを基にして、特徴文データを抽出する処理部である。抽出部２５０ｂは、特徴文データを、特定部２５０ｃに出力する。
【００８４】
たとえば、抽出部２５０ｂは、質問文データに含まれる各文と、一般文ＤＢ２４０ｂに格納された一般文とを比較し、質問文データから特徴文データを抽出する。
【００８５】
特定部２５０ｃは、特徴文データと、文ＨＭＭ２４０ｃとを基にして、質問文に対応する回答文を特定する処理部である。たとえば、特定部２５０ｃは、特徴文データに含まれる各文のベクトルを算出する処理を行った後に、各ベクトルと、文ＨＭＭ２４０ｃとを基にして、回答文を特定する。
【００８６】
特定部２５０ｃが、文のベクトルを算出する処理の一例について説明する。たとえば、特定部２５０ｃが、文のベクトルを算出する処理は、図６で説明した、特定部１５０ｃが、文ｘ１のベクトルｘＶｅｃ１を算出する処理と同様である。
【００８７】
特定部２５０ｃが、各文のベクトルと、文ＨＭＭ２４０ｃとを基にして、質問文に対応する回答文を特定する処理の一例について説明する。特定部２５０ｃは、質問文と共起する文のベクトルと、文ＨＭＭ２４０ｃの共起ベクトルとを比較して、ベクトルと一致する（あるいは類似する）共起ベクトルを特定する。なお、特定部２５０ｃは、ベクトルと、共起ベクトルとの距離が閾値未満となる共起ベクトルを、一致する共起ベクトルとして特定してもよい。
【００８８】
特定部２５０ｃは、特定した共起ベクトルに対応づけられたベクトルを特定する。特定部２５０ｃは、特定したベクトルを、出力部２５０ｄに出力する。
【００８９】
たとえば、図１０において、特定部２５０ｃは、質問文と共起する文のベクトルが「Ｄβ１０８Ｆ９７」である場合には、「回答文Ａ２のベクトル」を特定する。
【００９０】
特定部２５０ｃは、ベクトルと一致する共起ベクトルが複数存在する場合には、共起率が最大となる共起ベクトルを選択してもよいし、その他の選択ポリシーに基づいて、共起ベクトルを選択してもよい。
【００９１】
出力部２５０ｄは、特定部２５０ｃから受け付けるベクトルに対応する回答文を、回答文ＤＢ２４０ｄから検出し、検出した回答文の情報を、出力する処理部である。出力部２５０ｄは、回答文データを、表示部２３０に表示させても良いし、質問文データの送信元に送信してもよい。また、出力部２５０ｄは、回答文データを送信する場合には、静的辞書情報２４０ｅ、動的辞書情報２４０ｆを基にして、符号化を行った後に、送信してもよい。回答文データを符号化する説明は、特定部２５０ｃが特徴文データを符号化する説明と同様である。
【００９２】
次に、本実施例２に係る情報処理装置２００の処理手順の一例について説明する。図１１は、本実施例２に係る情報処理装置の処理手順を示すフローチャートである。図１１に示すように、情報処理装置２００の受付部２５０ａは、質問文データを受け付ける（ステップＳ２０１）。
【００９３】
情報処理装置２００の抽出部２５０ｂは、質問文データから特徴文データを抽出する（ステップＳ２０２）。
【００９４】
情報処理装置２００の特定部２５０ｃは、特徴文データに含まれる各文のベクトルを算出する（ステップＳ２０３）。特定部２５０ｃは、質問文と共起する文のベクトルと、文ＨＭＭ２４０ｃとを比較して、共起条件を満たす回答文のベクトルを特定する（ステップＳ２０４）。
【００９５】
情報処理装置２００の出力部２５０ｄは、ベクトルを基にして、回答文ＤＢ２４０ｄから回答文データを取得し、回答文データを符号化する（ステップＳ２０５）。出力部２５０ｄは、回答文データを送信する（ステップＳ２０６）。
【００９６】
次に、本実施例２に係る情報処理装置２００の効果について説明する。情報処理装置２００は、質問文データに含まれる各文のベクトルを算出し、質問文と共起する文のベクトルと、文ＨＭＭ２４０ｃの共起ベクトルとを比較し、回答文を特定する。このように、情報処理装置２００は、質問文との共起関係づいて、回答文を特定するので、文を特定するための負荷を軽減することができる。
【実施例３】
【００９７】
図１２は、本実施例３に係る情報処理装置の処理を説明するための図である。本実施例３に係る情報処理装置は、質問文データＦ７を取得すると、質問文データＦ７と、文ＨＭＭ３４０ｃとを基にして、質問文データＦ７に対応する回答文データＦ９を特定する。
【００９８】
本実施例３に係る質問文データＦ７には、一つの「文章」が含まれる。文章は、複数の「文」から成り立つものである。また、文は、句点により区切られる文字列である。
【００９９】
図１２の説明では、説明の便宜上、質問文データＦ７には、文章ｘが含まれているものとする。また、文章ｘに含まれる文ｘ１を、質問文に対応する文とし、他の文を、質問文以外の文とする。
【０１００】
情報処理装置は、文章ｘに含まれる各文のベクトル（極値）を算出する。たとえば、文ｘ１〜文ｘｎに対応するベクトル（極値）を、ｘＶｅｃ１’〜ｘＶｅｃｎ’とする。情報処理装置が、文ｘ１〜文ｘｎに対応するベクトル（極値）を算出する処理は、次のようになる。
【０１０１】
たとえば、情報処理装置は、文ｘ１に含まれる各単語（符号）の単語ベクトルを、Word2Vec技術に基づいて算出する。情報処理装置は、算出した複数の単語ベクトルのうち、予め定められた「極値」に対応する単語ベクトルを選択し、選択した極値に対応する単語ベクトルを集積することで、文ｘ１のベクトルｘＶｅｃ１’を算出する。情報処理装置は、他の文ｘ２〜ｘｎについても同様にして、ベクトルｘＶｅｃ２’〜ｘＶｅｃｎ’を算出する。情報処理装置が、上記処理を行うことで、ベクトルデータＦ８を生成する。
【０１０２】
情報処理装置は、ベクトルデータＦ８に含まれる文ｘ１と共起する文ｘ２〜文ｘｎのベクトル（極値）と、文ＨＭＭ３４０ｃとを比較することで、文ｘ１に対応する回答文のベクトル（極値）を特定する。
【０１０３】
文ＨＭＭ３４０ｃは、ベクトル（極値）と、複数の共起ベクトル（極値）とを対応づける。文ＨＭＭ３４０ｃのベクトル（極値）は、回答文（回答文の文章）から算出されたベクトル（極値）であり、このベクトル（極値）により、回答文が定まる。共起ベクトル（極値）は、質問文データＦ７に含まれる文と共起する文から求められるベクトル（極値）である。
【０１０４】
共起ベクトル（極値）は、共起率と対応づけられる。たとえば、質問文データＦ７の文ｘの回答文が、回答文Ａ２である場合には、文ｘ１と共起する文のベクトル（極値）が「Ｄγ１０８Ｆ９７」となる可能性が「３７％」であり、文ｘ１と共起する文のベクトル（極値）が「Ｄγ１０８Ｆ１９」となる可能性が「２９％」であることが示される。
【０１０５】
情報処理装置は、ベクトルデータＦ８に含まれるベクトルｘＶｅｃ１’の前後に出現するベクトル（極値）と、文ＨＭＭ３４０ｃの各共起ベクトル（極値）とを比較して、ヒットするレコードを判定する。たとえば、ベクトルｙＶｅｃ１’が、共起ベクトル（極値）「Ｄγ１０８Ｆ９７」と一致（あるいは類似）する場合には、情報処理装置は、回答文Ａ２を、文ｘ１の回答文として特定する。
【０１０６】
上記のように、情報処理装置は、質問文データＦ７に含まれる各文のベクトル（極値）を算出し、質問文に対応する文と共起する文のベクトル（極値）と、文ＨＭＭ３４０ｃの共起ベクトル（極値）とを比較し、回答文を特定する。情報処理装置は、質問文データＦ７の質問文の文との共起関係に基づいて、回答文を特定するので、文を特定するための負荷を軽減することができる。また、ベクトルの極値を用いることで、計算負荷を更に削減することもできる。
【０１０７】
実施例３に関する、以下の説明では、ベクトルの極値を、単に「ベクトル」と表記する。
【０１０８】
次に、本実施例３に係る情報処理装置の構成について説明する。図１３は、本実施例３に係る情報処理装置の構成を示す機能ブロック図である。図１３に示すように、情報処理装置３００は、通信部３１０と、入力部３２０と、表示部３３０と、記憶部３４０と、制御部３５０とを有する。
【０１０９】
通信部３１０は、ネットワークを介して他の装置からデータを受信する通信装置である。たとえば、通信部３１０は、他の装置から質問文データＦ７を受信し、受信した質問文データＦ７を、制御部３５０に出力する。
【０１１０】
入力部３２０は、情報処理装置３００に各種の情報を入力するための入力装置である。たとえば、入力部３２０は、キーボードやマウス、タッチパネル等に対応する。情報処理装置３００は、入力部３２０を介して、質問文データＦ７を受け付けてもよい。
【０１１１】
表示部３３０は、制御部３５０から出力される情報を表示する表示装置である。表示部３３０は、液晶ディスプレイ、タッチパネル等に対応する。
【０１１２】
記憶部３４０は、質問文ＤＢ３４０ａ、一般文ＤＢ３４０ｂ、文ＨＭＭ３４０ｃ、回答文ＤＢ３４０ｄ、静的辞書情報３４０ｅ、動的辞書情報３４０ｆを有する。記憶部３４０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。
【０１１３】
質問文ＤＢ３４０ａは、質問文データＦ７を格納するデータベースである。たとえば、質問文ＤＢ３４０ａは、質問文章番号と、質問文データとを対応づけて記憶する。
【０１１４】
一般文ＤＢ３４０ｂは、一般的な文を格納するＤＢである。一般文ＤＢ３４０ｂの説明は、実施例１で説明した、一般文ＤＢ１４０ｂの説明に対応する。
【０１１５】
文ＨＭＭ３４０ｃは、質問文に対応する文と共起する可能性の高い文の情報と、回答文とを対応づける情報である。以下の説明では、適宜、質問文に対応する文を単に「質問文」と表記する。本実施例３では一例として、質問文ＤＢ３４０ａには、質問文と、他の文が含まれているものとする。
【０１１６】
図１４は、本実施例３に係る文ＨＭＭのデータ構造の一例を示す図である。図１４に示すように、この文ＨＭＭ３４０ｃは、ベクトルと、複数の共起ベクトルとを対応づける。文ＨＭＭ３４０ｃのベクトルは、回答文（回答文の文）から算出されたベクトルであり、このベクトルにより、回答文が定まる。
【０１１７】
共起ベクトルは、共起率と対応づけられる。共起ベクトルは、質問文データに含まれる質問文と共起する文から求められるベクトルである。共起率は、該当するベクトルの文が、質問文と共起する確率を示すものである。たとえば、ある質問文に対応する回答文が回答文Ａ２である場合には、質問文と文（ベクトル「Ｄγ１０８Ｆ９７」の文）とが共起する可能性が「３７％」であることが、示されている。
【０１１８】
回答文ＤＢ２４０ｄは、回答文のベクトルと、回答文とを対応づけるデータベースである。
【０１１９】
静的辞書情報３４０ｅ、動的辞書情報３４０ｆに関する説明は、実施例１で説明した静的辞書情報１４０ｅ、動的辞書情報１４０ｆに関する説明と同様である。
【０１２０】
制御部３５０は、受付部３５０ａ、抽出部３５０ｂ、特定部３５０ｃ、出力部３５０ｄを有する。制御部３５０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部２５０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。
【０１２１】
受付部３５０ａは、通信部３１０または入力部３２０から、質問文データＦ７を受け付ける。受付部３５０ａは、受け付けた質問文データＦ７を質問文ＤＢ３４０ａに登録する。
【０１２２】
抽出部３５０ｂは、質問文ＤＢ３４０ａから、質問文データを取得し、質問文データに含まれる各文と、一般文ＤＢ３４０ｂに登録された文とを基にして、特徴文データを抽出する処理部である。抽出部３５０ｂは、特徴文データを、特定部３５０ｃに出力する。
【０１２３】
たとえば、抽出部３５０ｂは、質問文データに含まれる各文と、一般文ＤＢ３４０ｂに格納された一般文とを比較し、質問文データＦ７から特徴文データを抽出する。
【０１２４】
特定部３５０ｃは、特徴文データと、文ＨＭＭ３４０ｃとを基にして、質問文に対応する回答文を特定する処理部である。たとえば、特定部３５０ｃは、特徴文データに含まれる各文のベクトルを算出する処理を行った後に、各ベクトルと、文ＨＭＭ３４０ｃとを基にして、回答文を特定する。
【０１２５】
特定部２５０ｃが、文のベクトルを算出する処理の一例について説明する。図１５は、文のベクトル（極値）を算出する処理の一例を説明するための図である。図１５では一例として、文ｘ１のベクトル（極値）ｘＶｅｃ１’を算出する処理について説明する。
【０１２６】
たとえば、文ｘ１には、単語ａ１〜単語ａｎが含まれている。特定部３５０ｃは、静的辞書情報３４０ｅおよび動的辞書情報３４０ｆを用いて、文ｘ１に含まれる各単語を符号化する。単語を符号化する処理は、実施例１で説明した特定部１５０ｃが、単語を符号化する処理と同様である。たとえば、各単語ａ１〜ａｎは、符号ｂ１〜ｂｎに符号化される。
【０１２７】
特定部３５０ｃは、各単語の符号化を行った後に、Word2Vec技術に基づいて、各単語（各符号）の単語ベクトルを算出する。Word2Vec技術は、ある単語（符号）と、隣接する他の単語（符号）との関係に基づいて、各符号のベクトルを算出する処理を行うものである。図１５に示す例では、特定部３５０ｃは、符号ｂ１から符号ｂｎの単語ベクトルＶｅｃ１〜Ｖｅｃｎを算出する。
【０１２８】
特定部３５０ｃは、算出した各単語ベクトルのうち、予め設定された極値に対応する単語ベクトルを選択する。たとえば、特定部３５０ｃは、極値と一致する単語ベクトルまたは、極値との距離が閾値未満となる単語ベクトルを選択する。図１５に示す例では、特定部３５０ｃは、極値に対応する単語ベクトルＶｅｃ１、Ｖｅｃ３を選択する。特定部３５０ｃは、選択した極値に対応する単語ベクトルを集積することで、文ｘ１の文ベクトルｘＶｅｃ１’を算出する。
【０１２９】
特定部３５０ｃが、各文のベクトルと、文ＨＭＭ３４０ｃとを基にして、質問文に対応する回答文を特定する処理の一例について説明する。特定部３５０ｃは、質問文と共起する文のベクトルと、文ＨＭＭ３４０ｃの共起ベクトルとを比較して、ベクトルと一致する（あるいは類似する）共起ベクトルを特定する。なお、特定部３５０ｃは、ベクトルと、共起ベクトルとの距離が閾値未満となる共起ベクトルを、一致する共起ベクトルとして特定してもよい。
【０１３０】
特定部３５０ｃは、特定した共起ベクトルに対応づけられたベクトルを特定する。特定部３５０ｃは、特定したベクトルを、出力部３５０ｄに出力する。
【０１３１】
たとえば、図１４において、特定部３５０ｃは、質問文と共起する文のベクトルが「Ｄγ１０８Ｆ９７」である場合には、「回答文Ａ２のベクトル」を特定する。
【０１３２】
特定部３５０ｃは、ベクトルと一致する共起ベクトルが複数存在する場合には、共起率が最大となる共起ベクトルを選択してもよいし、その他の選択ポリシーに基づいて、共起ベクトルを選択してもよい。
【０１３３】
出力部３５０ｄは、特定部３５０ｃから受け付けるベクトルに対応する回答文を、回答文ＤＢ３４０ｄから検出し、検出した回答文の情報を、出力する処理部である。出力部３５０ｄは、回答文データを、表示部３３０に表示させても良いし、質問文データの送信元に送信してもよい。また、出力部３５０ｄは、回答文データを送信する場合には、静的辞書情報３４０ｅ、動的辞書情報３４０ｆを基にして、符号化を行った後に、送信してもよい。回答文データを符号化する説明は、特定部３５０ｃが特徴文データを符号化する説明と同様である。
【０１３４】
次に、本実施例３に係る情報処理装置３００の処理手順の一例について説明する。図１６は、本実施例３に係る情報処理装置の処理手順を示すフローチャートである。図１６に示すように、情報処理装置３００の受付部３５０ａは、質問文データを受け付ける（ステップＳ３０１）。
【０１３５】
情報処理装置３００の抽出部３５０ｂは、質問文データから特徴文データを抽出する（ステップＳ３０２）。
【０１３６】
情報処理装置３００の特定部３５０ｃは、特徴文データに含まれる各文のベクトル（極値）を算出する（ステップＳ３０３）。特定部３５０ｃは、質問文と共起する文のベクトル（極値）と、文ＨＭＭ３４０ｃとを比較して、共起条件を満たす回答文のベクトル（極値）を特定する（ステップＳ３０４）。
【０１３７】
情報処理装置３００の出力部３５０ｄは、ベクトル（極値）を基にして、回答文ＤＢ３４０ｄから回答文データを取得し、回答文データを符号化する（ステップＳ３０５）。出力部３５０ｄは、回答文データを送信する（ステップＳ３０６）。
【０１３８】
次に、本実施例３に係る情報処理装置３００の効果について説明する。情報処理装置３００は、質問文データに含まれる各文のベクトルを算出し、質問文と共起する文のベクトルと、文ＨＭＭ３４０ｃの共起ベクトルとを比較し、回答文を特定する。このように、情報処理装置３００は、質問文との共起関係づいて、回答文を特定するので、文を特定するための負荷を軽減することができる。また、ベクトルの極値を用いることで、計算負荷を更に削減することもできる。
【０１３９】
ここで、本実施例で説明した情報処理装置１００（２００，３００）と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図１７は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【０１４０】
図１７に示すように、コンピュータ４００は、各種演算処理を実行するＣＰＵ４０１と、ユーザからのデータの入力を受け付ける入力装置４０２と、ディスプレイ４０３とを有する。また、コンピュータ４００は、記憶媒体からプログラム等を読み取る読み取り装置４０４と、無線ネットワークを介して他のコンピュータとの間でデータの授受を行うインタフェース装置４０５とを有する。また、コンピュータ４００は、各種情報を一時記憶するＲＡＭ４０６と、ハードディスク装置４０７とを有する。そして、各装置４０１〜４０７は、バス４０８に接続される。
【０１４１】
ハードディスク装置４０７は、受付プログラム４０７ａ、抽出プログラム４０７ｂ、特定プログラム４０７ｃ、出力プログラム４０７ｄを有する。ＣＰＵ４０１は、受付プログラム４０７ａ、抽出プログラム４０７ｂ、特定プログラム４０７ｃ、出力プログラム４０７ｄを有する。
【０１４２】
受付プログラム４０７ａは、受付プロセス４０６ａとして機能する。抽出プログラム４０７ｂは、抽出プロセス４０６ｂとして機能する。特定プログラム４０７ｃは、特定プロセス４０６ｃとして機能する。出力プログラム４０７ｄは、出力プロセス４０６ｄとして機能する。
【０１４３】
受付プロセス４０６ａの処理は、受付部１５０ａ，２５０ａ，３５０ａの処理に対応する。抽出プロセス４０６ｂの処理は、抽出部１５０ｂ，２５０ｂ，３５０ｂの処理に対応する。特定プロセス４０６ｃの処理は、特定部１５０ｃ，２５０ｃ，３５０ｃの処理に対応する。出力プロセス４０６ｄの処理は、出力部１５０ｄ，２５０ｄ，３５０ｄの処理に対応する。
【０１４４】
なお、各プログラム４０７ａ〜４０７ｄについては、必ずしも最初からハードディスク装置４０７に記憶させておかなくても良い。例えば、コンピュータ４００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ２００が各プログラム４０７ａ〜４０７ｄを読み出して実行するようにしても良い。
【０１４５】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１４６】
（付記１）第１の種別の文章に応じた情報を受け付け、
第２の種別の文章に対する第１の種別の他の文章の共起情報と前記第１の種別の他の文章に応じた情報とを前記第２の種別の文章に対応づけて記憶する記憶部を参照して、前記第１の種別の他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす第１の種別の他の文章に応じた情報に対応づけられた第２の種別の文章を特定する
処理をコンピュータに実行させることを特徴とする特定プログラム。
【０１４７】
（付記２）前記第１の種別の文章に応じた情報は、前記第１の種別の文章に応じたベクトル情報であり、前記第１の種別の他の文章に応じた情報は、前記第１の種別の他の文章に応じたベクトル情報であることを特徴とする付記１に記載の特定プログラム。
【０１４８】
（付記３）前記第１の種別の文章に応じたベクトル情報は、前記第１の種別の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であり、前記第１の種別の他の文章に応じたベクトル情報は、前記第１の種別の他の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であることを特徴とする付記１に記載の特定プログラム。
【０１４９】
（付記４）前記第１の種別の文章に応じたベクトル情報は、前記第１の種別の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であり、前記第１の種別の他の文章に応じたベクトル情報は、前記第１の種別の他の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であることを特徴とする付記１に記載の特定プログラム。
【０１５０】
（付記５）コンピュータが実行する特定方法であって、
第１の種別の文章に応じた情報を受け付け、
第２の種別の文章に対する第１の種別の他の文章の共起情報と前記第１の種別の他の文章に応じた情報とを前記第２の種別の文章に対応づけて記憶する記憶部を参照して、前記第１の種別の他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす第１の種別の他の文章に応じた情報に対応づけられた第２の種別の文章を特定する
処理を実行することを特徴とする特定方法。
【０１５１】
（付記６）前記第１の種別の文章に応じた情報は、前記第１の種別の文章に応じたベクトル情報であり、前記第１の種別の他の文章に応じた情報は、前記第１の種別の他の文章に応じたベクトル情報であることを特徴とする付記５に記載の特定方法。
【０１５２】
（付記７）前記第１の種別の文章に応じたベクトル情報は、前記第１の種別の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であり、前記第１の種別の他の文章に応じたベクトル情報は、前記第１の種別の他の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であることを特徴とする付記５に記載の特定方法。
【０１５３】
（付記８）前記第１の種別の文章に応じたベクトル情報は、前記第１の種別の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であり、前記第１の種別の他の文章に応じたベクトル情報は、前記第１の種別の他の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であることを特徴とする付記５に記載の特定方法。
【０１５４】
（付記９）第１の種別の文章に応じた情報を受け付ける受付部と、
第２の種別の文章に対する第１の種別の他の文章の共起情報と前記第１の種別の他の文章に応じた情報とを前記第２の種別の文章に対応づけて記憶する記憶部を参照して、前記第１の種別の他の文章に応じた情報のうち、対応づけられた共起情報が基準を満たす第１の種別の他の文章に応じた情報に対応づけられた第２の種別の文章を特定する特定部と
を有することを特徴とする情報処理装置。
【０１５５】
（付記１０）前記第１の種別の文章に応じた情報は、前記第１の種別の文章に応じたベクトル情報であり、前記第１の種別の他の文章に応じた情報は、前記第１の種別の他の文章に応じたベクトル情報であることを特徴とする付記９に記載の情報処理装置。
【０１５６】
（付記１１）前記第１の種別の文章に応じたベクトル情報は、前記第１の種別の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であり、前記第１の種別の他の文章に応じたベクトル情報は、前記第１の種別の他の文章に含まれる複数の単語にそれぞれ対応するベクトル情報に応じたベクトル情報であることを特徴とする付記９に記載の情報処理装置。
【０１５７】
（付記１２）前記第１の種別の文章に応じたベクトル情報は、前記第１の種別の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であり、前記第１の種別の他の文章に応じたベクトル情報は、前記第１の種別の他の文章に含まれる複数の単語のベクトルのうち、極値に対応するベクトルを集積することで算出されるベクトル情報であることを特徴とする付記９に記載の情報処理装置。
【符号の説明】
【０１５８】
１００，２００，３００  情報処理装置
１５０ａ，２５０ａ，３５０ａ  受付部
１５０ｂ，２５０ｂ，３５０ｂ  抽出部
１５０ｃ，２５０ｃ，３５０ｃ  特定部
１５０ｄ，２５０ｄ，３５０ｄ  出力部
【図１】
2019046048.tif 000003
【図２】
2019046048.tif 000004
【図３】
2019046048.tif 000005
【図４】
2019046048.tif 000006
【図５】
2019046048.tif 000007
【図６】
2019046048.tif 000008
【図７】
2019046048.tif 000009
【図８】
2019046048.tif 000010
【図９】
2019046048.tif 000011
【図１０】
2019046048.tif 000012
【図１１】
2019046048.tif 000013
【図１２】
2019046048.tif 000014
【図１３】
2019046048.tif 000015
【図１４】
2019046048.tif 000016
【図１５】
2019046048.tif 000017
【図１６】
2019046048.tif 000018
【図１７】
2019046048.tif 000019