(57)【要約】【課題】手軽に利用でき、ユーザの発想を支援できる発想支援装置を提供する。【解決手段】文書情報を取得し、当該取得した文書情報から複数のキー文要素を抽出し、当該抽出した複数のキー文要素から、予め定めた条件を満足する一対のキー文要素を検索する。この検索の結果、見いだされた一対のキー文要素に基づいて、合成文を生成して、当該生成された合成文を出力する発想支援装置である。【選択図】図１
2019086815.tif 000002
【特許請求の範囲】
【請求項１】
複数の語を含む文を、少なくとも一つ含む文書情報を取得する取得手段と、
前記取得した文書情報から複数のキー文要素を抽出する抽出手段と、
前記抽出した複数のキー文要素から、予め定めた条件を満足する一対のキー文要素を検索する検索手段と、
前記検索の結果、見いだされた一対のキー文要素に基づいて、合成文を生成する生成手段と、
前記生成された合成文を出力する出力手段と、
を含む発想支援装置。
【請求項２】
請求項１記載の発想支援装置であって、
前記抽出手段は、前記取得した文書情報に含まれる文のそれぞれから、名詞句を含む名詞部と、動詞句を含む動詞部とを抜き出して、当該抜き出した少なくとも一対の前記名詞部と動詞部とを含んだ文要素を、キー文要素として抽出し、
前記検索手段が用いる前記条件は、一対のキー文要素に含まれる名詞部または動詞部が互いに所定の関連を有する条件である発想支援装置。
【請求項３】
請求項２記載の発想支援装置であって、
前記名詞句または動詞句ごとに、予め演算されている特徴量ベクトルを取得し、一対の前記名詞部または動詞部が所定の関連を有する条件として、各名詞部または動詞部に含まれる一対の名詞句または動詞句の各特徴量ベクトル間の距離情報が予め定めたしきい値を下回るときに、当該名詞句または動詞句が互いに所定の関連を有すると判断する発想支援装置。
【請求項４】
請求項２記載の発想支援装置であって、
前記名詞句または動詞句ごとに、予め演算されている特徴量ベクトルを取得し、一対の前記名詞部または動詞部が所定の関連を有する条件として、各名詞部または動詞部に含まれる一対の名詞句または動詞句の各特徴量ベクトル間の距離情報が予め定めたしきい値を上回るときに、当該名詞句または動詞句が互いに所定の関連を有すると判断する発想支援装置。
【請求項５】
請求項１に記載の発想支援装置であって、
前記抽出手段は、
前記取得した文書情報に含まれる文のそれぞれから、名詞句を含む名詞部と、動詞句を含む動詞部とを抜き出すとともに、当該名詞句または動詞句ごとに、予め演算されている特徴量ベクトルを取得し、
前記取得した特徴量ベクトルに含まれる特徴量ベクトル間の加重平均ベクトル近傍の特徴量ベクトルを有する語を、複数のキー文要素として抽出する発想支援装置。
【請求項６】
複数の語を含む文を、少なくとも一つ含む文書情報を取得する取得手段と、
前記取得した文書情報に含まれる文のそれぞれから、名詞句を含む名詞部と、動詞句を含む動詞部とを抜き出すとともに、当該名詞句または動詞句ごとに、予め演算されている特徴量ベクトルを取得し、前記取得した特徴量ベクトルに含まれる特徴量ベクトル間の加重平均ベクトル近傍の特徴量ベクトルを有する語を、複数のキー文要素として抽出する抽出手段と、
当該抽出したキー文要素に関わる文書情報を検索する検索手段と、
当該検索の結果を出力する出力手段と、
を含む発想支援装置。
【請求項７】
コンピュータを、
複数の語を含む文を、少なくとも一つ含む文書情報を取得する取得手段と、
前記取得した文書情報から複数のキー文要素を抽出する抽出手段と、
前記抽出した複数のキー文要素から、予め定めた条件を満足する一対のキー文要素を検索する検索手段と、
前記検索の結果、見いだされた一対のキー文要素に基づいて、合成文を生成する生成手段と、
前記生成された合成文を出力する出力手段と、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発想支援装置及びプログラムに関する。
【背景技術】
【０００２】
近年では、情報検索のシステムが広く利用されており、ユーザが所望する情報やそれに関連する情報を簡便に検索することが可能となっている。例えば特許文献１には、与えられた文に含まれる語句を所定の規則で他の語に置換して提示することで、いわば、ユーザの課題を別の言葉で表現することとし、それにより発想を支援する例が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５７１６２２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来の情報検索方法では、ユーザは、自らが主体的に課題を表明した文を提示する必要があり、そもそも課題が漠然としている場合などでは利用できず、また、主体的に操作を行う必要があって、手軽に利用できないという問題点があった。
【０００５】
本発明は上記実情に鑑みて為されたもので、手軽に利用でき、ユーザの発想を支援できる発想支援装置及びプログラムを提供することを、その目的の一つとする。
【課題を解決するための手段】
【０００６】
上記従来例の問題点を解決する本発明の一態様に係る発想支援装置は、複数の語を含む文を、少なくとも一つ含む文書情報を取得する取得手段と、前記取得した文書情報から複数のキー文要素を抽出する抽出手段と、前記抽出した複数のキー文要素から、予め定めた条件を満足する一対のキー文要素を検索する検索手段と、前記検索の結果、見いだされた一対のキー文要素に基づいて、合成文を生成する生成手段と、前記生成された合成文を出力する出力手段と、を含む。
【発明の効果】
【０００７】
本発明によると、手軽に利用でき、ユーザの発想が支援される。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態に係る発想支援装置の構成例を表すブロック図である。
【図２】本発明の実施の形態に係る発想支援装置の例を表す機能ブロック図である。
【図３】本発明の実施の形態に係る発想支援装置の動作例を表すフローチャート図である。
【図４】本発明の実施の形態に係る発想支援装置が用いる特徴量ベクトルの特性を表す説明図である。
【図５】本発明の実施の形態に係る発想支援装置のもう一つの動作例を表すフローチャート図である。
【発明を実施するための形態】
【０００９】
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る発想支援装置１は、図１に例示するように制御部１１と、記憶部１２と、操作部１３と、表示部１４と、通信部１５とを含んで構成されている。
【００１０】
ここで制御部１１は、ＣＰＵ等のプログラム制御デバイスであり、記憶部１２に格納されたプログラムに従って動作する。本実施の形態の一例では、この制御部１１は、複数の語を含む文を、少なくとも一つ含む文書情報を取得し、当該取得した文書情報から複数のキー文要素を抽出する。そして制御部１１は、当該抽出した複数のキー文要素から、予め定めた条件を満足する一対のキー文要素を検索し、当該検索の結果、見いだされた一対のキー文要素に基づいて、合成文を生成して、当該生成された合成文を出力する。この制御部１１の詳しい動作については後に説明する。
【００１１】
記憶部１２は、メモリデバイスや、ディスクデバイスであり、制御部１１によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読、かつ非一時的な記録媒体に格納されて提供され、この記憶部１２に格納されたものであってもよい。また本実施の形態の記憶部１２は、制御部１１のワークメモリとしても動作する。
【００１２】
操作部１３は、マウスやキーボード等であり、ユーザが入力する指示操作の内容を受け入れて制御部１１に出力する。この操作部１３は、例えば文の入力指示に従い、当該入力された文のデータ等を制御部１１に出力する。表示部１４は、ディスプレイ等であり、制御部１１から入力される指示に従ってデータを表示出力する。
【００１３】
通信部１５は、ネットワークインタフェース等であり、制御部１１から入力される指示に従って、指示された宛先に対し、ネットワークを介して処理の要求やデータ等を送出する。またこの通信部１５は、ネットワークを介して受信したデータを制御部１１に出力する。
【００１４】
次に、制御部１１の動作について説明する。本実施の形態の制御部１１は、図２に例示するように、文書情報取得部２１と、抽出処理部２２と、検索処理部２３と、生成処理部２４と、出力処理部２５とを機能的に含んで構成される。
【００１５】
文書情報取得部２１は、複数の語を含む文を、少なくとも一つ含む文書情報を取得する。本実施の形態の一例では、この文書情報取得部２１は、ネットワーク上のウェブサーバにアクセスして、当該ウェブサーバから複数の文書情報を取得する。また本実施の形態の別の例では、発想支援装置１は、記憶部１２に予め複数の文書情報を蓄積しておき、文書情報取得部２１は、当該記憶部１２に蓄積された文書情報を読み出して取得する。
【００１６】
抽出処理部２２は、文書情報取得部２１が取得した文書情報のそれぞれからキー文要素を抽出する。本実施の形態の一例では、この抽出処理部２２は、文書情報に含まれる文ごとに、形態素に分割する。抽出処理部２２は分割して得られた形態素ごとに、少なくとも原形と品詞との情報を取得する。抽出処理部２２は、文ごとに抽出した順に形態素を調べ、単独して抽出される名詞または連続して抽出される名詞の原形（連続して抽出されるときには当該名詞の原形を連接して得た文字列としてもよい）と、動詞の原形とを少なくとも取り出す。
【００１７】
抽出処理部２２は、取り出した名詞の原形と動詞の原形とから選択される少なくとも一対の語の組み合わせを、キー文要素として抽出して出力する。
【００１８】
例えば、この抽出処理部２２は、文書情報に「自動車用の情報機器には、音声等、運転に支障のない情報入力が必要である。」との文が含まれる場合、この文を次のように処理する。抽出処理部２２は、この文を、まず形態素に分割し、
自動車，名詞（一般）
用，名詞（接尾・一般）
の，助詞（連体）
、，記号（読点）
情報機器，名詞（一般）
に，助詞（格助詞）
は，助詞（係助詞）
…
必要，名詞（形容動詞語幹）
だ，助動詞（「である」のうち「で」の原形）
ある，助動詞
。，記号（句点）
のように、少なくとも語の原形（活用する品詞の場合、終止形としたもの）と、品詞の情報とを得る。
【００１９】
本実施の形態の一例では、この抽出処理部２２は、名詞が連続して出現する箇所では名詞の原形（名詞句）を連接して名詞部とする。すなわち、上述の例では、「自動車」と「用」とを連接して、「自動車用」との語を名詞部として得る。また抽出処理部２２は、名詞であってもサ行変格活用する名詞に、原形「する」が連接する場合、例えば「固定される」（原形は「固定」「する」「れる」）のように、サ行変格活用する名詞「固定」に、「する」が接続している場合は、「固定」「する」までを動詞部として扱う。同様に、抽出処理部２２は、形容動詞語幹の名詞に原形が「だ」である形容動詞が連接している場合は、当該形容動詞語幹の名詞＋「だ」を動詞部として扱ってもよい。このようにすると、上述の例では、本実施の形態の抽出処理部２２は、学術上の文法的品詞分類に関わらず、「必要だ」を、少なくとも一つの動詞句を含む動詞部として得ることとなる。
【００２０】
こうして抽出処理部２２は、上述の例については、
名詞部：「自動車用」，「情報機器」，「音声等」，「運転」，「支障」，「情報入力」
動詞部：「必要だ」
を得る。
【００２１】
抽出処理部２２は、これらから一対以上の語の組み合わせを、キー文要素として生成する。具体的に、生成され得るキー文要素を、ひとつずつ括弧で区切って表すと、
（「自動車用」，「情報機器」）
（「自動車用」，「音声等」）
（「自動車用」，「運転」）
…
（「自動車用」，「必要だ」）
…
（「情報入力」，「必要だ」）
といった組み合わせがキー文要素として生成される。
【００２２】
また、組み合わせは３以上の語を含んでもよく、例えば、抽出処理部２２は、（「自動車用」，「運転」，「必要だ」）などのようなキー文要素を得てもよい。
【００２３】
また、この抽出処理部２２は、少なくとも一つの動詞部を含む組み合わせのみを、キー文要素を得てもよい。具体的にこの例の抽出処理部２２は、上述の文の例では、
（「自動車用」，「必要だ」）
（「情報機器」，「必要だ」）
…
といったキー文要素を生成することとなる。抽出処理部２２は、このキー文要素を、抽出元となった文書情報を特定する文書特定情報に関連付けて記憶部１２に格納する。ここで文書特定情報は、抽出処理部２２が文書情報取得部２１が取得した文書情報ごとに固有の情報として設定すればよく、例えば文書情報取得部２１による文書情報の取得元のＵＲＬ、あるいは文書情報取得部２１が当該文書情報を取得した順序を表す連番などとすればよい。
【００２４】
検索処理部２３は、抽出処理部２２が抽出した複数のキー文要素から、予め定めた条件を満足する一対のキー文要素を検索する。一例として、この検索処理部２３は、ここで条件は、一対のキー文要素に含まれる名詞部または動詞部が関連するとの条件としてもよい。
【００２５】
例えば、検索処理部２３は、抽出処理部２２が抽出したキー文要素からランダムに、あるいは所定の順序で２つ取り出して、取り出した２つのキー文要素の一方に含まれる語（名詞部または動詞部）と、他方のキー文要素に含まれる語（以下、「対比語対」と呼ぶ）とが所定の条件（例えば互いに関連するとの条件）を満足するか否かを調べる。ここで、互いに関連するとの条件は、対比語対に含まれる各語が互いに
（１）共通（同一）の語であるか、
（２）類語の関係にあるか、
（３）対義語の関係にあるか、
等の条件でよい。
【００２６】
なお、類語または対義語の関係にあるか否かの判断を行う検索処理部２３は、予め用意された類語または対義語の辞書を参照して、当該辞書に対比語対に含まれる各語が類語または対義語の関係にあるとして含まれているか否かにより、当該対比語対に含まれる各語が類語または対義語の関係にあるか否かを判断してもよい。
【００２７】
また検索処理部２３は、別の方法により、対比語対に含まれる各語が類語または対義語の関係にあるか否かを判断することとしてもよい。例えば検索処理部２３は、語ごとの特徴量情報を用いて判断してもよい。ここで特徴量情報は例えば所定の参考文書情報（予め参考用に収集された複数の文書情報であり、文書情報取得部２１が取得する文書情報に含まれていても、含まれていなくてもよい）から形態素解析により抽出された複数の語に係る機械学習処理により生成される。このような機械学習による特徴量情報の取得は、例えばword2vec（Tomas Mikolov, et.al., “Efficient Estimation of Word Representation in Vector Space”, https://arxiv.org/pdf/1301.3781.pdf）等、広く知られた方法を用いて行う。
【００２８】
具体的に検索処理部２３がword2vecによる特徴量情報（特徴量ベクトル）を用いる場合、検索処理部２３は、対比語対に含まれる各語について、予め取得された特徴量ベクトル（特徴量ベクトルが演算されていない語を含む対比語対については処理をしないこととしてもよい）を参照し、これらの特徴ベクトル間の距離が予め定めたしきい値を下回るか否かを調べることにより、類語または対義語の関係にあるか否かを調べる。word2vecでは、互いに類語または対義語の関係にある語に係る特徴量ベクトル間のコサイン距離（特徴量ベクトルの内積に比例する量）は、互いに類語または対義語の関係にない語に係る特徴量ベクトル間のコサイン距離に比べて小さくなるよう機械学習されることが知られているので、しきい値を経験的に設定すれば、一対の語が互いに類語または対義語の関係にあるか否かが判断できる。
【００２９】
なお、ここでは特徴量情報としてword2vecの例について述べたが、他の特徴量情報が用いられてもよい。他の特徴量情報を用いる場合、特徴量情報間の距離は、コサイン距離に限られず、特徴量情報ごとに適した距離（例えばユークリッド距離、ジャッカード係数など）に基づいて、類語または対義語の関係にあるか否かを判断することとすればよい。
【００３０】
検索処理部２３は、一対のキー文要素に含まれる名詞部または動詞部（上述の例では、上記の対比語対に含まれる各語）が互いに関連する等の予め定めた条件が満足される一対のキー文要素が見いだされると、当該キー文要素の対を生成処理部２４に出力する。
【００３１】
生成処理部２４は、検索処理部２３が出力する一対のキー文要素に基づいて合成文を生成する。ここで合成文は、必ずしも文法上の文としての体裁が整っていなくてもよく、一対のキー文要素に含まれる語を連接しただけのものであってもよい。出力処理部２５は、生成処理部２４が生成した合成文を、例えば表示部１４に表示出力する。
【００３２】
［動作］
本実施の形態の一例に係る発想支援装置１は、以上の構成を備えており、次の例のように動作する。以下の例では、発想支援装置１が取得する文書情報のうち、文書情報Ｄａに、文Ｓａ：「自動車用の情報機器には、音声等、運転に支障のない情報入力が必要である。」なる文が含まれ、文書情報Ｄｂに、文Ｓｂ：「Ｘ社、手を触れずに医療機器を操作できる非接触センサへの進出を目論む。」なる文が含まれ、文書情報Ｄｃに、文Ｓｃ：「鉄道では、車掌室にある押しボタンを、モールス符号を打電するように車掌が操作することで、車掌が運転手へ危険を知らせるなどの連絡が行われている。」なる文が含まれるものとする。
【００３３】
発想支援装置１は、図３に例示するように、これらの文からキー文要素を抽出する（Ｓ１）。上述の例では、発想支援装置１は、例えば文書情報Ｄａの文Ｓａから、
キー文要素Ｋａ：（自動車用，情報入力）
などのキー文要素を抽出し、文書情報Ｄｂの文Ｓｂから、
キー文要素Ｋｂ：（医療機器，非接触センサ）
などのキー文要素を抽出し、文書情報Ｄｃの文Ｓｃから、
キー文要素Ｋｃ：（鉄道，モールス符号）
などのキー文要素を抽出する。
【００３４】
発想支援装置１は、互いに異なる文書情報から抽出される一対のキー文要素を例えばランダムに取り出す（Ｓ２）。例えば、発想支援装置１は、キー文要素Ｋａ，Ｋｂの対と、キー文要素Ｋｂ，Ｋｃの対と…というように一対のキー文要素を抽出する。発想支援装置１は、抽出した一対のキー文要素のそれぞれから一つずつの語を取り出して、対比語対とする（Ｓ３）。例えば発想支援装置１は、キー文要素Ｋａ，Ｋｂの対から、
対１：（自動車用，医療機器）
対２：（自動車用，非接触センサ）
対３：（情報入力，医療機器）
対４：（情報入力，非接触センサ）
の対比語対を得る。また、発想支援装置１は、キー文要素Ｋａ，Ｋｂの対から、
対１：（自動車用，鉄道）
対２：（自動車用，モールス符号）
対３：（情報入力，鉄道）
対４：（情報入力，モールス符号）
の対比語対を得る。
【００３５】
そして発想支援装置１は、各対比語対について順次、それぞれに含まれる語が所定の条件を満足するか否か（例えば互いに類語または対義語の関係にあるか否かなど）を調べる（Ｓ４）。上述の例において発想支援装置１が、キー文要素Ｋａ，Ｋｂの対から得られた対比語対には、いずれも互いに類語または対義語の関係にある語が見いだせないと判断した場合には（処理Ｓ４：Ｎｏ）、発想支援装置１は、キー文要素Ｋａ，Ｋｂの対から得られた上記対比語対に基づく合成文の生成は行わない。
【００３６】
一方、発想支援装置１が、キー文要素Ｋａ，Ｋｃの対から得られた対比語対（自動車用，鉄道）に含まれる各語が互いに類語の関係にあると判断すると（処理Ｓ４：Ｙｅｓ）、発想支援装置１は、これらの対比語対の元となったキー文要素Ｋａ，Ｋｃから合成文を生成する（Ｓ５）。例えば発想支援装置１は、これらキー文要素Ｋａ，Ｋｃに含まれる語を（予め定めた記号を介して）連接して、
「自動車用−情報入力：鉄道−モールス符号」
のような合成文を生成して出力する（Ｓ６）。
【００３７】
または発想支援装置１は、含まれる各語が互いに類語の関係にある等、所定の条件を満足しているキー文要素Ｋａ，Ｋｃに含まれる語から一部の語を抽出して組み合わせて、
「自動車用−情報入力−モールス符号」
「自動車用−鉄道−モールス符号」
「情報入力−鉄道−モールス符号」
等、複数の合成文を生成して出力してもよい。
【００３８】
発想支援装置１は、以上の処理Ｓ４からＳ６を、処理Ｓ３で得たすべての対比語対について実行した後、処理を終了する。
【００３９】
この処理において出力された合成文を参照することで、ユーザは、関連性を想起しなかった複数の文（あるいは複数の文書情報）の内容を組み合わせることで、例えば「自動車用の情報入力方法として、モールス符号のような操作による情報入力方法」といった発想が支援されることとなる。
【００４０】
［合成文の連鎖的な生成］
また本実施の形態の発想支援装置１は、３以上のキー文要素から合成文を生成してもよい。例えば生成した合成文のもととなったキー文要素（合成済キー文要素と呼ぶ）に含まれる語と、当該生成した合成文のもととなったキー文要素の抽出元となった文書情報とは異なる文書情報から抽出されたキー文要素（追加キー文要素と呼ぶ）に含まれる語との間で、さらに対比語対を得て所定の条件を満足する場合に、合成済キー文要素と追加キー文要素とに含まれる語を連結してさらに合成文を生成してもよい。
【００４１】
一例として上述のキー文要素Ｋａ，Ｋｂ，Ｋｃを用い、キー文要素Ｋａ，Ｋｃに含まれる語から一部の語を抽出して組み合わせて、「自動車用−情報入力−モールス符号」なる合成文が得られているとき（合成済キー文要素はＫａ，Ｋｃとなる）、キー文要素Ｋｂ「（医療機器，非接触センサ）」の「非接触センサ」の語と「情報入力」の語とが互いに類語の関係にあるとして発想支援装置１が判断すると、発想支援装置１はこのキー文要素Ｋｂを追加キー文要素として、合成済キー文要素と追加キー文要素とに含まれる語を連結して、例えば、
「自動車用−情報入力−モールス符号−医療機器−非接触センサ」
といった合成文を生成して出力する。
【００４２】
この例によると、ユーザは、関連性を想起しなかった複数の文（あるいは複数の文書情報）の内容を組み合わせることで、例えば「自動車用の情報入力方法として、モールス符号のような操作を非接触センサで検出させる情報入力方法」といった発想が支援されることとなる。
【００４３】
［係り受け情報を用いる例］
また、ここまでの説明では、キー文要素に含まれる語の組み合わせは、文から抽出される名詞部または動詞部から任意に取り出した組み合わせとしていたが、本実施の形態はこれに限られない。
【００４４】
例えば発想支援装置１は、文から抽出される名詞部と動詞部との係り受け関係を分析して、係り受け関係のある名詞部または動詞部の順列（係り、受けの順とする）をキー文要素として抽出してもよい。
【００４５】
この場合、発想支援装置１は、さらに、一対のキー文要素から対比語対を得るときには、一方の受け側の語と、他方の係り側の語とを取り出して対比語対とすることとしてもよい。一例として文書情報Ｄａに含まれる文Ｓａからキー文要素Ｋａ′が、（係り：自動車用，受け：情報入力）として抽出され、文書情報Ｄｃに含まれる文Ｓｃからキー文要素Ｋｃ′が、（係り：モールス符号，受け：打電する）として抽出された場合、発想支援装置１は、これらのキー文要素Ｋａ′，Ｋｃ′から対比語対を得る場合、一方の係り語と他方の受け語との対とするので、
（自動車用，打電する）
（モールス符号，情報入力）
の二つを対比語対として、これらの対とした語の間に所定の関係がある場合に、キー文要素Ｋａ′，Ｋｃ′を組み合わせて合成文を生成する。
【００４６】
ここでの例で、例えば（モールス符号，情報入力）の対の語が互いに類語の関係にあるとして発想支援装置１が判断したときには、キー文要素Ｋａ′，Ｋｃ′内の語を（所定の記号を介して）連接して、
「自動車用→情報入力→モールス符号→打電する」
というように合成文を生成して出力する。
【００４７】
［無関係の語の提示］
また以上の説明では、発想支援装置１は、キー文要素の対から得た対比語対に含まれる語が互いに類語または対義語の関係にある場合に、予め定めた条件が満足されたものとして、当該対となったキー文要素に基づいて合成文を生成するものとしていたが、本実施の形態はこれに限られない。
【００４８】
例えば本実施の形態の他の例に係る発想支援装置１は、キー文要素の対から得た対比語対に含まれる語が互いに関連性の低い語（類語でも対義語でもない語）と判断されるときに、予め定めた条件が満足されたものとして、当該対となったキー文要素に基づいて合成文を生成するものとしてもよい。
【００４９】
このような類語でも対義語でもない語（無関係語）であるか否かの判断も、上述のword2vecによる特徴量情報（特徴量ベクトル）を用いて行ってもよい。例えば発想支援装置１は、対比語対に含まれる各語について、予め取得された特徴量ベクトル（特徴量ベクトルが演算されていない語を含む対比語対については処理をしないこととしてもよい）を参照し、これらの特徴ベクトル間の距離が予め定めたしきい値を上回る場合に、無関係語であると判断することとしてもよい。
【００５０】
このように無関係語を含むキー文要素を組み合わせて合成文を生成して提示する例では、無関係語であると判断された一対の語をキーとして、インターネット上の検索エンジンを利用したウェブページの検索を行い、当該検索の結果として得られたウェブページの内容を、合成文として提示することとしてもよい。この例では、例えば、「自動車用」と、「医療機器」とが無関係語と判断された場合に、発想支援装置１は、「自動車用」と「医療機器」とを検索キーとしてインターネット上の検索エンジンに検索の要求を行う。
【００５１】
そして発想支援装置１は、検索エンジンの応答に含まれる情報を、合成文として提示する。これにより例えば、
「自動車用バルブの生産ノウハウ活かし、医療機器分野へ参入したＹ社」
のような記事がユーザに提示されることとなる。
【００５２】
［情報提示の例］
またここまでの説明では発想支援装置１は、処理の結果として合成文を提示することとしていたが、本実施の形態はこれに限られない。例えば本実施の形態の一例に係る発想支援装置１は、合成文とともに、当該合成文の元となったキー文要素の抽出元である文書情報を特定する情報（例えば文書情報のＵＲＬ等）を併せて提示してもよい。これにより、合成文の生成根拠が明示される。
【００５３】
また発想支援装置１は、所定のタイミングごとに繰り返して図３に例示した処理を実行し、図３における処理Ｓ６にて表示部１４に対して合成文を出力する代わりに、当該合成文を表題とした電子メールをユーザ宛に送信してもよい。この例によると、ユーザは自分が認識する課題を文章化して入力する等の操作を行うことなく、例えば発想支援装置１に対して電子メールの送信先アドレスとして自己が所持する端末で利用しているメールアドレスを設定するだけで、定期的に繰り返して発想支援のための合成文が提示されることとなり、手軽に発想支援装置１による発想支援のサービスを受けることが可能となる。
【００５４】
［潜在的な課題］
さらに本実施の形態のここまでの説明においては、発想支援装置１は、文書情報から抽出したキー文要素を、ランダムに、あるいは所定の順に総当たりで一対ずつ選択し、対比語対を得ることとしていたが、本実施の形態はこれに限られず、ユーザが予め指定した単語（文の入力を受けて、当該文に含まれる単語を抽出してもよい）、またはそれの類語あるいは対義語を含むキー文要素を含む、キー文要素の対を選択することとしてもよい。
【００５５】
また別の例では、発想支援装置１は、ユーザのウェブブラウザの閲覧履歴等を参照し、ユーザが閲覧しているウェブページに含まれる単語のうち、所定の方法で選択した重要語（例えば広く知られたtf-idf値の大きい語を重要語とするなどして選択できる）、またはそれの類語あるいは対義語を含むキー文要素を含む、キー文要素の対を選択することとしてもよい。
【００５６】
［キー文要素の抽出の別の例］
本実施の形態のここまでの説明では、取得した文書情報に含まれる語からキー文要素となる名詞句または動詞句等を抽出する例について説明したが、この方法では、発想の元となる文に表れる語が、元となる文書情報に含まれる語に限られてしまうこととなる。一般的には、文書情報の量が多数であるため、この点は問題にはならないが、取得した文章情報に含まれないが、そこから得られる観念を表す他の語や、取得した文書情報の量が少数であるためにキー文要素として抽出する語を豊富化したいという場合もある。そこで、本実施の形態におけるキー文要素の抽出方法は、以上に述べた方法に代えて、次のようにしてもよい。
【００５７】
例えば、発想支援装置１の制御部１１は、本実施の形態では次のようにしてキー文要素を抽出してもよい。
【００５８】
制御部１１は、取得した文書情報に含まれる文を形態素に分割する。そして制御部１１は、分割して得られた形態素ごとに、例えば、word2vec（Tomas Mikolov, et.al., “Efficient Estimation of Word Representation in Vector Space”, https://arxiv.org/pdf/1301.3781.pdf）のように、互いに類語または対義語の関係にある語に係る特徴量ベクトル間のコサイン距離（特徴量ベクトルの内積に比例する量）は、互いに類語または対義語の関係にない語に係る特徴量ベクトル間のコサイン距離に比べて小さくなるよう機械学習された特徴量情報（以下、原文語特徴量情報と呼ぶ）を得る。なお、以下の説明では、各語の特徴量ベクトルは、規格化（大きさ「１」のベクトルと）されているものとする。
【００５９】
なお、このような特徴量情報は、加減算により語の意味を加減算できるとする加法則があることが知られている。例えば、「王」の語の特徴量ベクトルから「男性」の語の特徴量ベクトルを引き、さらに「女性」の語の特徴量ベクトルを加算して得たベクトルは、「女王」の語の特徴量ベクトルに近接する（コサイン距離が他の語に比べて小さくなる）ことが知られている。
【００６０】
そこで本実施の形態のこの例の制御部１１は、原文語特徴量情報から複数の原文語特徴量情報を含む複数組の候補をランダムに選択し、それぞれの線形和を演算して、当該それぞれの線形和として得た各ベクトルに最も近い特徴量ベクトルに対応する語を、キー文要素として抽出してもよい。
【００６１】
一例として、制御部１１は、取得した文書情報に含まれる語「自動車」と、「携帯電話」とのそれぞれに対応する特徴量ベクトルをｖ１，ｖ２として、この特徴量ベクトルの組（ｖ１，ｖ２）の線形和のベクトル
Ｖ＝α１・ｖ１＋α２・ｖ２
を求める。なお、α１，α２のそれぞれは実数であり、制御部１１がそれぞれランダムに決定する。なお、ここでは２つの語に対応する２つの原文語特徴量の線形和としたが、３以上の語に対応する３つ以上の原文語特徴量の線形和であっても構わない。
【００６２】
制御部１１は、このベクトルＶを規格化（大きさ「１」のベクトル化）し、当該規格化したベクトルＶに最も近い特徴量ベクトルを有する語をキー文要素として抽出する（語と特徴量ベクトルとを関連付けたデータベースを参照して抽出する。このデータベースは、word2vec等によって生成されるものであり、広く知られているのでここでの詳しい説明は省略する）。
【００６３】
制御部１１は、この処理を、候補とした原文語特徴量情報の各組について行い、各組に対応して得られたキー文要素を取得して、以下、検索処理部２３としての処理に供する。
【００６４】
この例によると、原文に含まれる語の概念間にある語が、キー文要素として抽出されることが期待される（図４（Ｐ））。しかしながら、語の豊富化を求めるのであれば、さらに広く、取得した文書情報に含まれる語の特徴量ベクトル（の線形和）に近接しつつ、しかしながら、この線形和としては表現できないベクトルの語も、キー文要素として含めることがより好適である場合もある。
【００６５】
そこで、本実施の形態では制御部１１がさらに、次の処理（ベクトル更新処理と呼ぶ）を行ってもよい。すなわち、制御部１１は、候補とした原文語特徴量情報の各組について上述の処理により得た線形和のベクトルＶ1，Ｖ2…について、
（１）一対の線形和ベクトルＶi，Ｖjの成分の少なくとも一つを交換する。すなわち、
Ｖi＝（ａ1，ａ2…，ａN）なるベクトルであり、
Ｖj＝（ｂ1，ｂ2…，ｂN）なるベクトルであるとき、１以上Ｎ以下の整数値ｐをランダムに決定して、
Ｖ′i＝（ａ1，…，ａp-1，ｂp，ａp+1，…ａN）、
Ｖ′j＝（ｂ1，…，ｂp-1，ａp，ｂp+1，…ｂN）、
とする。
（２）線形和ベクトルＶiの成分の一つを、所定の方法で異なる値とする。すなわち、Ｖi＝（ａ1，ａ2…，ａN）なるベクトルについて、１以上Ｎ以下の整数値ｐをランダムに決定して、
Ｖ′i＝（ａ1，…，ａp-1，ｘp，ａp+1，…ａN）、
（ただし、ｘpは一般にａpとは異なる値）
（３）任意の一対の線形和ベクトルＶiとＶjとの間で、所定の評価値（大小関係が定まる、スカラ量等の値）Ｅi，Ｅjをそれぞれ演算し、Ｅi＞Ｅjであれば、
Ｖj＝Ｖi
とする、
の操作を適宜行う。
【００６６】
以下、便宜的に、（１）の処理をクロスオーバ、（２）の処理をミューテーション、（３）の処理を（ベクトルＶi，Ｖj間での）テイクオーバと呼び、この処理について具体的に説明する。
【００６７】
制御部１１は、図５に例示するように次の処理を繰り返し行う。すなわち制御部１１は、候補とした原文語特徴量情報の各組について上述の処理により得た線形和のベクトルＶ1，Ｖ2…のそれぞれを順次、注目ベクトルとして選択しつつ、クロスオーバを実行するか否かを判断する（Ｓ１１）。この判断は、０以上１以下の乱数を発生させ、当該乱数が、予め定められたクロスオーバ発生確率以下であればクロスオーバの処理を実行することで行う。
【００６８】
制御部１１は、クロスオーバを実行すると判断したときには（Ｓ１１：Ｙｅｓ）、その時点で選択されている注目ベクトルＶiと異なる線形和ベクトルＶjをランダムに選択し、当該ランダムに選択された線形和ベクトルＶi，Ｖjの組についてクロスオーバを実行する（Ｓ１２）。なお、クロスオーバを実行しないと判断したときには（Ｓ１１：Ｎｏ）、制御部１１は、処理Ｓ１２を行わずに、次の処理Ｓ１３に移行する。
【００６９】
そして制御部１１は、注目ベクトルについてミューテーションの処理を実行するか否かを判断する（Ｓ１３）。この判断も、０以上１以下の乱数を発生させ、当該乱数が、予め定められたミューテーション発生確率以下であればミューテーションの処理を実行することで行う。そして制御部１１は、ミューテーションを実行すると判断したときには（Ｓ１３：Ｙｅｓ）、その時点で選択されている注目ベクトルＶiについてミューテーションを実行する（Ｓ１４）。なお、ミューテーションを実行しないと判断したときには（Ｓ１３：Ｎｏ）、制御部１１は、処理Ｓ１４を行わずに、次の処理Ｓ１５に移行する。
【００７０】
制御部１１は、線形和のベクトルＶ1，Ｖ2…のすべてについて注目ベクトルとして選択したとき（Ｓ１５）には（注目ベクトルとして選択されていない線形和ベクトルがなくなると）、各線形和ベクトル（クロスオーバ、ミューテーションの処理を行ったものは処理後のもの）の評価値を所定の方法で演算する（Ｓ１６）。
【００７１】
なお、処理Ｓ１５において線形和のベクトルＶ1，Ｖ2…に注目ベクトルとして選択していないベクトルがあれば、制御部１１は、当該選択していない線形和ベクトルの一つを注目ベクトルとして選択して処理Ｓ１１に戻って処理を続ける。
【００７２】
処理Ｓ１６における評価値は例えば、各線形和ベクトルに最も近い、いずれかの語の特徴量ベクトルまでのコサイン距離の逆数としてよい。この場合、特徴量ベクトルが演算されている語に最も近いベクトルが比較的評価の高いベクトルとして扱われる。
【００７３】
また、この評価値は、例えば、最も近い特徴量ベクトルに対応する語の品詞に基づいて定めてもよい。例えば、当該品詞が固有名詞である場合は、評価値を、演算により得られる評価値の最低値に設定してもよい。この場合、固有名詞の語に近いベクトルは、評価値が最低値として設定される。
【００７４】
制御部１１は、評価値が演算されると、次の方法でテイクオーバ処理を実行する（Ｓ１７）。すなわち制御部１１は、各線形和ベクトルを評価値が高いものから順に配列し、線形和ベクトルの数Ｍのうち、評価値が比較的高い上位１／２（［Ｍ／２］個のベクトル、ただし［ｘ］はｘを超えない最大の整数とする）を選択する。そして選択されていない線形和ベクトルを、選択した線形和ベクトルで置き換えるテイクオーバ処理を実行する。一例として、
Ｋ＝２×ｋ
として、評価値順に並べた線形和ベクトルの上位からｋ番目（１≦ｋ≦［Ｍ／２］）を逐次的に選択しつつ、Ｖｋ，ＶK間でテイクオーバの処理を行う。
【００７５】
なお、評価値順に並べた線形和ベクトルの下位Ｍ−［Ｍ／２］個のベクトルのうち、上記の処理でテイクオーバされなかったベクトルＶについては、制御部１１は、上位ｋ番目のベクトルのいずれか、例えばＶ1（最上位のベクトル），Ｖ間でテイクオーバ処理を実行してもよい。
【００７６】
制御部１１は、この処理（クロスオーバ、ミューテーション、テイクオーバの各処理）を予め定めた回数だけ繰り返して行う（Ｓ１８）。
【００７７】
そして制御部１１は、当該処理後の線形和のベクトル（テイクオーバの処理のため、互いに異なるベクトルは最大で［Ｍ／２］個となるが、最終回はテイクオーバの処理を行わず、最大でＭ個の互いに異なるベクトルを得てもよい）をそれぞれ規格化（大きさ「１」のベクトル化）し、当該規格化した各ベクトルに最も近い特徴量ベクトルを有する語をキー文要素として抽出することとしてもよい（Ｓ１９）。
【００７８】
さらに、この例においては概念的に共通するキー文要素が複数得られる場合もある。そこで、この例では、さらに得られたキー文要素を、所定の方法（例えばK-meansや、agglomerative classification等の方法）によって所定数のクラスに分類し、各分類により得られたクラスからそれぞれ一つの語を選択して（例えばランダムに選択してよい）、キー文要素としてもよい。
【００７９】
この例では、発想支援装置１は、取得した文書情報から、「自動車」、「電話」…等の語を得た後、これらの語の特徴量ベクトルから、その線形和のベクトルを求め、そこから各線形和のベクトルの成分を所定の規則に従ってランダムに、あるいは他のベクトルの成分に近接させるように更新して、新たな線形和ベクトルとする。
【００８０】
そして発想支援装置１は、得られた線形和ベクトルを所定の方法で定めた評価方法で評価し、評価の比較的低い線形和ベクトルを消去して新たな線形和ベクトルを得る。
【００８１】
このとき、得られる線形和ベクトルは、例えば「自動車」と「電話」とを組み合わせて得られる「携帯電話」等の語の特徴量ベクトルだけでなく、これに近い成分を有しつつ、「自動車」や「電話」とは全く異なる「電池」等の語の特徴量ベクトルが偶発的に現れ得ることが期待される。
【００８２】
発想支援装置１は、この成分の更新と、評価により新たな線形和ベクトルを得る処理とを繰り返して実行し、得られた線形和ベクトルについて、それぞれに最も近い特徴量ベクトルを有する語を選択する。そして発想支援装置１は、当該語をクラス分類して、各クラス分類結果からそれぞれ一つ以上の語を選択して、キー文要素とする。これにより、偶発的に得られる語をキー文要素として選択し、発想の支援を行うことが可能となる。
【００８３】
［別の利用例］
なお、上記のベクトル更新処理により得られたキー文要素は、それ自体、偶発的に選択された語を含むため、元の文書情報に含まれない語を含んでいる場合がある。そこで、本実施の形態の一例に係る発想支援装置１は、当該キー文要素から合成文を作成する処理に代えて、当該キー文要素をそのまま検索キーとして用いて、ウェブ上の検索エンジン等、キーワード検索エンジンから、文書を検索してもよい。
【００８４】
この場合、発想支援装置１は、当該検索の結果、得られた文書を特定する情報（ＵＲＬ）または、当該文書の要約や抜粋、あるいは当該文書そのものをユーザに提示してもよい。
【符号の説明】
【００８５】
１  発想支援装置、１１  制御部、１２  記憶部、１３  操作部、１４  表示部、１５  通信部、２１  文書情報取得部、２２  抽出処理部、２３  検索処理部、２４  生成処理部、２５  出力処理部。
【図１】
2019086815.tif 000003
【図２】
2019086815.tif 000004
【図３】
2019086815.tif 000005
【図４】
2019086815.tif 000006
【図５】
2019086815.tif 000007