(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024138678
(43)【公開日】2024-10-09
(54)【発明の名称】仮説生成装置及び仮説生成方法
(51)【国際特許分類】
G06F 40/279 20200101AFI20241002BHJP
G06F 40/56 20200101ALI20241002BHJP
G06F 16/90 20190101ALI20241002BHJP
【FI】
G06F40/279
G06F40/56
G06F16/90 100
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023049274
(22)【出願日】2023-03-27
(71)【出願人】
【識別番号】301022471
【氏名又は名称】国立研究開発法人情報通信研究機構
(74)【代理人】
【識別番号】100099933
【弁理士】
【氏名又は名称】清水 敏
(72)【発明者】
【氏名】飯田 龍
(72)【発明者】
【氏名】鳥澤 健太郎
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175EA01
(57)【要約】
【課題】入力の内容に関連しつつも容易には思い付かない興味深い仮説が得られ、しかもその信頼性が高い仮説を生成できる仮説生成装置及び仮説生成方法を提供する。
【解決手段】仮説生成装置100は、テキスト110の入力を受けて、当該テキスト110に関連する関連テキストを作成するための関連テキスト作成部114と、テキスト110と関連テキストとを入力として受け、テキスト110から仮説を生成するようにあらかじめ学習した仮説生成モデル122とを含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
テキストの入力を受けて、当該テキストに関連する関連テキストを作成するための関連テキスト作成部と、
前記テキストと前記関連テキストとを入力として受け、前記テキストから仮説を生成するようにあらかじめ学習した仮説生成モデルとを含む、仮説生成装置。
【請求項2】
前記関連テキスト作成部は、
前記テキストに基づいて1又は複数の質問を生成する質問生成部と、
前記質問生成部により生成された前記1又は複数の質問に対する回答を含むパッセージを、既存のテキストアーカイブから検索し、前記関連テキストとして出力するための質問応答部とを含む、請求項1に記載の仮説生成装置。
【請求項3】
前記仮説生成装置はさらに、
入力された前記テキストに代えて、前記仮説生成モデルにより生成された前記仮説を前記関連テキスト作成部に入力して、前記仮説生成モデルにより新たな仮説を生成させる仮説連続生成部を含む、請求項1に記載の仮説生成装置。
【請求項4】
前記仮説生成装置はさらに、
入力された前記テキストと、前記仮説生成モデルにより生成された前記仮説とのいずれかを選択して前記関連テキスト作成部に入力する第1セレクタと、
前記仮説生成モデルへの入力として、入力された前記テキストと、前記仮説生成モデルにより生成された前記仮説とのいずれかを選択し、前記関連テキストとともに前記仮説生成モデルに入力して、前記仮説生成モデルにより新たな仮説を生成させる第2セレクタとを含む、請求項1に記載の仮説生成装置。
【請求項5】
前記仮説生成装置はさらに、入力された前記テキストと、前記関連テキスト作成部により生成された前記関連テキストとのいずれかを選択して前記関連テキスト生成部に入力する入力セレクタを含む、請求項1に記載の仮説生成装置。
【請求項6】
コンピュータが、テキストの入力を受けて、当該テキストに関連する関連テキストを作成するステップと、
コンピュータが、前記テキストと前記関連テキストとを入力として受け、前記テキストから仮説を生成するようにあらかじめ学習した仮説生成モデルに入力することにより新たな仮説を生成する仮説生成ステップとを含む、仮説生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
この出願は、仮説生成技術に関し、特に、多様な仮説を生成できる仮説生成装置及び仮説生成方法に関する。
【背景技術】
【0002】
将来起こり得る事象を予測することは、例えば学問、ビジネス、政治などの世界において大きな意味を持つ。そうした予測に基づいて、将来のチャンス及びリスクに基づいた適切な意思決定を行うことが可能になる。
【0003】
このような予測を文又は文章など、人間に理解可能な形態にしたものを、この明細書においては、「仮説」という。仮説を生成する技術は大きく2種類に分類される。第1は、ウェブから収集した大量のテキスト(以下、「ウェブテキスト」という。)から、人が書いた知識を抽出し、それらを連結して仮説とする技術である。第2は、深層学習の生成技術を利用した、自動的な仮説生成技術である。
【0004】
第1の技術として、後掲の特許文献1に開示された技術がある。特許文献1に開示された技術は、大量の日本語ウェブテキストから、「名詞+助詞+述語」というテキストの対で表された因果関係を表すと考えられる単語列を収集する。この単語列のうち、先行するテキストが原因を表し、後続するテキストが帰結を表す。第1の因果関係のテキストの帰結部が別の因果関係の原因部と一致すれば、第1の因果関係の原因部と第2の因果関係の帰結部とを連鎖させて新たな単語列を作成する。特許文献1においては、この単語列を「社会シナリオ」と呼んでいる。このようにして因果関係を連鎖させる処理を繰り返すことにより、大量の社会シナリオを生成できる。
【0005】
第2の技術としてはChatGPTと呼ばれる技術が知られている。この技術は、いわゆる深層学習により学習したニューラルネットワークからなる言語モデルに関する。具体的には、入力されたテキストをもとに、仮説をニューラルネットワークにより生成して出力する。
【先行技術文献】
【特許文献】
【0006】
【非特許文献】
【0007】
【非特許文献1】OpenAI、“Introducing ChatGPG”、[online]、OpenAIホームページ、[令和5年3月5日検索]、インターネット<URL:https://openai.com/blog/chatgpt>
【発明の概要】
【発明が解決しようとする課題】
【0008】
上記した従来技術のうち、第1の技術においては、もともと存在しているデータを仮説の生成に利用する。そのため、どこにも存在していないような仮説は生成されにくく、生成される仮説の信頼性は高い。しかしその半面、どこにも存在していないような仮説は得られないという問題がある。
【0009】
第2の技術においては、逆に、生成処理の出力として仮説が得られるため、どのような入力に対しても何らかの出力が得られ、しかもその出力が全く新しいものである可能性もある。しかし、第2の技術においては、得られる内容に制限がないため、どのような内容が生成されるかが、実際に結果が得られるまで分からないという問題がある。また出力が明らかに誤っていることがあるため、出力の信頼性が低く、またその出力が妥当か否かを確認することが難しいというも問題もある。
【0010】
したがって、この発明の目的は、入力の内容に関連しつつも容易には思い付かない興味深い仮説が得られ、しかもその信頼性が高い仮説を生成できる仮説生成装置及び仮説生成方法を提供することである。
【課題を解決するための手段】
【0011】
本発明の第1の局面に係る仮説生成装置は、テキストの入力を受けて、当該テキストに関連する関連テキストを作成するための関連テキスト作成部と、テキストと関連テキストとを入力として受け、テキストから仮説を生成するようにあらかじめ学習した仮説生成モデルとを含む。
【0012】
好ましくは、関連テキスト作成部は、テキストに基づいて1又は複数の質問を生成する質問生成部と、質問生成部により生成された1又は複数の質問に対する回答を含むパッセージを、既存のテキストアーカイブから検索し、関連テキストとして出力するための質問応答部とを含む。
【0013】
より好ましくは、仮説生成装置はさらに、入力されたテキストに代えて、仮説生成モデルにより生成された仮説を関連テキスト作成部に入力して、仮説生成モデルにより新たな仮説を生成させる仮説連続生成部を含む。
【0014】
さらに好ましくは、仮説生成装置はさらに、入力されたテキストと、仮説生成モデルにより生成された仮説とのいずれかを選択して関連テキスト作成部に入力する第1セレクタと、仮説生成モデルへの入力として、入力されたテキストと、仮説生成モデルにより生成された仮説とのいずれかを選択し、関連テキストとともに仮説生成モデルに入力して、仮説生成モデルにより新たな仮説を生成させる第2セレクタとを含む。
【0015】
好ましくは、仮説生成装置はさらに、入力されたテキストと、関連テキスト作成部により生成された関連テキストとのいずれかを選択して関連テキスト作成部に入力する入力セレクタを含む。
【0016】
本発明の第2の局面に係る仮説生成方法は、コンピュータが、テキストの入力を受けて、当該テキストに関連する関連テキストを作成するステップと、コンピュータが、テキストと関連テキストとを入力として受け、テキストから仮説を生成するようにあらかじめ学習した仮説生成モデルに入力することにより新たな仮説を生成する仮説生成ステップとを含む。
【0017】
この発明の上記及び他の目的、特徴、局面及び利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
【発明の効果】
【0018】
この発明によれば、入力の内容に関連しつつも容易には思い付かない興味深い仮説が得られ、しかもその信頼性が高い仮説を生成できる仮説生成装置及び仮説生成方法を提供できる。また、仮説が導かれる過程で使われた関連テキストを仮説とあわせて提示することにより、ユーザは仮説が導かれた理由及び根拠を推察できる。このように理由及び根拠を推察できる仮説は、根拠が全く分からない仮説よりも有用性が非常に高い。
【図面の簡単な説明】
【0019】
【
図1】は、この発明の第1実施形態に係る仮説生成システムの機能的構成を示すブロック図である。
【
図2】は、
図1に示す関連テキスト作成部の機能的構成を示すブロック図である。
【
図3】は、
図1に示す仮説生成ニューラルネットワークの入力と出力の関係を示す模式図である。
【
図4】は、
図2に示す質問生成部の学習データを生成するための学習データ生成システムの機能的構成を示すブロック図である。
【
図5】は、
図1に示す仮説生成ニューラルネットワークの学習データを生成するための学習データ生成システムの機能的構成を示すブロック図である。
【
図6】は、
図5に示す文間意味的関係DB(DataBase)を生成するプロセスを示す模式図である。
【
図7】は、
図5に示す学習データ組み立て部により生成される学習データの生成プロセスを示す模式図である。
【
図8】は、第1実施形態の変形例における学習データの構成とその生成プロセスとを示す模式図である。
【
図9】は、第1実施形態の変形例における学習データの生成プロセスの他の例を示す模式図である。
【
図10】は、第1実施形態の変形例における学習データの変形例を生成するための学習データ生成システムの機能的構成を示すブロック図である。
【
図11】は、第2実施形態において使用される関連テキスト作成部の機能的構成を示すブロック図である。
【
図12】は、第3実施形態において使用される関連テキスト作成部の機能的構成を示すブロック図である。
【
図13】は、第4実施形態に係る仮説生成システムの機能的構成を示すブロック図である。
【
図14】は、
図13に示す関連テキスト作成部の機能的構成を示すブロック図である。
【
図15】は、第5実施形態に係る仮説生成システムの機能的構成を示すブロック図である。
【
図16】は、
図15に示す関連テキスト作成部の学習データを生成するための学習データ生成システム620の機能的構成を示すブロック図である。
【
図17】は、第5実施形態に係る仮説生成ニューラルネットワークの学習データを生成するための学習データ生成システムの機能的構成を示すブロック図である。
【
図18】は、第6実施形態に係る仮説生成システムの機能的構成を示すブロック図である。
【
図19】は、第7実施形態に係る仮説生成システムの機能的構成を示すブロック図である。
【
図20】は、第8実施形態に係る仮説生成ニューラルネットワークのための学習データを生成する学習データ生成システムの機能的構成を示すブロック図である。
【
図21】は、第9実施形態に係る仮説生成ニューラルネットワークのための学習データを生成する学習データ生成システムの機能的構成を示すブロック図である。
【
図22】は、第10実施形態に係る仮説生成ニューラルネットワークのための学習データを生成する学習データ生成システムの機能的構成を示すブロック図である。
【
図23】は、第11実施形態に係る仮説生成ニューラルネットワークのための学習データを生成する学習データ生成システムの機能的構成を示すブロック図である。
【
図24】は、第12実施形態に係る仮説生成ニューラルネットワークのための学習データの構成を示す模式図である。
【
図25】は、第8実施形態、第9実施形態及び第10実施形態において使用される類似度計算モデルのための学習システムの機能的構成を示すブロック図である。
【
図26】は、第8実施形態、第9実施形態及び第10実施形態における類似度計算のためのモデルの学習方法を説明するための模式図である。
【
図27】は、
図25に示す類似度計算モデル学習データ生成部の機能的構成を示すブロック図である。
【
図28】は、第8実施形態、第9実施形態及び第10実施形態における類似度計算の算出方法を説明する模式図である。
【
図29】は、この発明の各実施形態に係る仮説生成システム及び学習データ生成システムなどを実現するためのコンピュータの外観図である。
【
図30】は、
図29に示すコンピュータのハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【0020】
以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
【0021】
1.第1実施形態
[構成]
図1から
図7を参照して、この発明の第1実施形態に係る仮説生成システム100について説明する。
図1を参照して、仮説生成システム100は、入力テキスト110及びキーワード112を入力として受ける。この例においては、キーワード112は入力テキスト110と別のものとして示すが、後述するように、キーワード112を入力テキスト110から抽出するようにしてもよい。
【0022】
仮説生成システム100は、入力テキスト110を受ける第1入力と、後述する用意既に作成された仮説のテキストを受ける第2入力とを持ち、最初は入力テキスト110を、それ以後の処理においては仮説のテキストを、それぞれ選択して出力するセレクタ180と、セレクタ180の出力とキーワード112とを入力として受けて、これらに基づいて、セレクタ180から入力されたテキストの関連テキストを生成するための関連テキスト作成部114と、関連テキスト作成部114により生成された関連テキストを記憶するための関連テキスト記憶部116とを含む。
【0023】
仮説生成システム100はさらに、入力されたテキスト及び関連テキスト記憶部116に記憶された関連テキストのいずれかとに基づいて、仮説を生成して出力するよう予め学習済の仮説生成ニューラルネットワーク122と、仮説生成ニューラルネットワーク122が出力した仮説を記憶するための仮説記憶部124と、関連テキスト作成部114に記憶された複数の関連テキストのいずれかを選択して、仮説生成ニューラルネットワーク122への入力の一部として出力するためのセレクタ120とを含む。セレクタ118の第2入力には、仮説記憶部124に記憶された仮説のいずれかが入力される。また、セレクタ118の出力は、関連テキスト作成部114の入力とともに、仮説生成ニューラルネットワーク122の入力にも接続される。
【0024】
仮説生成システム100はさらに、入力テキスト110の入力を第1段階とし、仮説生成ニューラルネットワーク122から仮説が出力された後を第2段階以降として、仮説生成ニューラルネットワーク122に入力テキスト110又は仮説記憶部124に記憶された仮説の一つと、セレクタ120により選択された関連テキストの一つとを組み合わせて仮説生成ニューラルネットワーク122に入力して新たな仮説を生成するよう、セレクタ118、120及び仮説生成ニューラルネットワーク122を制御するための仮説連続生成制御部126とを含む。
【0025】
なお、この例において、関連テキスト作成部114は、多段の繰り返しのいずれにおいても、セレクタ118の出力するテキストとともにキーワード112を使用して複数の関連テキストを出力する。しかしこの発明はそのような実施形態には限定されない。例えば、第1段階目は入力テキスト110及びキーワード112を入力とし、第2段階以降はセレクタ118により選択された仮説と、仮説から抽出したキーワードとを使用して複数の関連テキストを生成するようにしてもよい。また、第2段階以降はセレクタ118により選択された仮説と、最初に入力されたキーワード112と、さらに仮説から抽出されたキーワードとを入力に加えるようにしてもよい。
【0026】
図2に、
図1の関連テキスト作成部114の機能的構成を示す。
図2を参照して、関連テキスト作成部114は、セレクタ118の出力するテキストとキーワード112とを使用して、1又は複数の質問文142を生成するための質問生成部140と、例えば予めウェブから収集した大量のテキストを記憶するための大規模コーパス144と、質問文142の各々について、大規模コーパス144を検索して、その質問文に対する回答を含む1又は複数の文からなるパッセージである回答パッセージを大規模コーパス144から抽出し、それらをランキングし、適切な回答を含むパッセージを残すようにフィルタリングして出力するための質問応答部146とを含む。質問応答部146により大規模コーパス144から抽出された回答パッセージが関連テキスト作成部114に入力されたテキストに対する関連テキスト148となる。
【0027】
図3に仮説生成ニューラルネットワーク122の入出力の関係を示す。
図3を参照して、仮説生成ニューラルネットワーク122には、入力の先頭を示す[CLS]トークンと、入力されるテキスト(セレクタ118の出力)と、[SEP]と、関連テキストと[SEP]トークンとを連結した文字列が入力170として与えられる。なお、これら文字列を構成する各単語は、予め単語IDに変換されているものとする。仮説生成ニューラルネットワーク122は、この入力170に対して、仮説である出力単語列172を出力するよう予め学習済である。なお、出力単語列172の先頭は[CLS]トークンに対応するベクトルとなっている。この実施形態においては、このベクトルは使用しない。
【0028】
図2に示す質問生成部140としては、例えばルールベースのもの、ニューラルネットワークによる生成モデルを使用するものなどが考えられる。ルールベースの方法として、入力されたテキストの一部を疑問詞に置換する方法がある。この方法も言語によりそれぞれ変化する。日本語の場合、例えば入力されたテキスト内の名詞を「誰」「何」に変更したり、名詞及び名詞句を一部除外した上で、「なぜ」「どうやって」「いつ」などの文字列を付与したりすることにより疑問文を生成できる。又は、入力されたテキスト内の名詞に質問表現を追加することによっても疑問文が生成できる。質問表現としては「~は何をしたい」「~は何をする」「~で何を使うか」「~で何をする」「~には何がある」「~は何がよい」「~は何がまずい」「~はどうやってするか」「~はどうやって使うか」「~はなぜするか」「~はなぜ使うか」などがある。これらを名詞に付加することにより質問文が生成できる。
【0029】
逆に、入力されたテキストの前に「何で」「なぜ」「どうやって」「何を使って」などを付加したり、入力されたテキストの後ろに「とどうなる」「ことで何が起きる」「ことでどのようなトラブルが起きる」などの文字列を付加したりしてもよい。
【0030】
質問文の生成としてはさらに、入力されたテキストの一部を削除した上で、上記したいずれかの規則を適用することも可能である。この場合、入力されたテキストの一部が削除されるため、得られる質問文は入力されたテキストから生成したものよりも抽象的な質問となる。
【0031】
この実施形態においては、質問生成部140としてニューラルネットワークからなる生成モデルを用いる。このモデルの学習データとしては、入力と、その入力から得られる、入力と何からの形により関連した質問とを組にしたものを用いればよい。例えば、入力として「名古屋が好きです。」、出力として「名古屋のどんな観光スポットが好きですか。」を持つものが考えられる。
【0032】
学習データを人手により作成することも考えられる。しかし、この実施形態においては、ウェブテキストなどから大規模に機械的に学習データを作成する。この実施形態においては、質問生成部140の学習データは以下のようにして生成する。
【0033】
図4は、質問生成部220のニューラルネットワークのための学習ベクトルを生成するための学習データ生成システム200の機能的構成を示すブロック図である。
図4を参照して、学習データ生成システム200は、大規模コーパス210と、大規模コーパス210に記憶されているテキストのうちの質問文に着目し、その質問文と、その質問文の直前の所定数の文からなる前文脈とを抽出するための質問文+前文脈抽出部212とを含む。質問文の発見方法は、対象となる言語により異なる。例えば日本語であれば文末が「か。」により終わっているような文が質問文として取り扱うことができる。英語であれば、文頭が疑問詞により始まる文、又は、「Do」若しくは「Does」により始まる文を質問文として取り扱うことができる。
【0034】
学習データ生成システム200はさらに、質問文+前文脈抽出部212により抽出された質問文と前文脈との組の各々から学習データを生成するための学習データ生成部214と、学習データ生成部214により生成された学習データを記憶するための学習データ記憶部216と、学習データ記憶部216に記憶された学習データを使用して質問生成部220の学習を行うための学習処理部218とを含む。
【0035】
例えば、テキスト内に「風邪のような症状で熱っぽい感じがするのに、熱がないというのは、どういうことでしょうか。」という文があり、その直前に前文脈として「おかしいと思い、何度か計ったのですが、36.5度~37度で変わりません。体も相当しんどく、食欲もないし倦怠感も酷いので、仕事にも行けない状態です。体を起こすのもしんどく、病院にも行けていません。」という文章があったとすれば、前者、すなわち質問を出力、後者、すなわち前文脈を入力として学習データが生成される。
【0036】
質問生成部220の学習データの構造は、質問の前文脈と、質問文をペアにしたものである。すなわち、前文脈を質問生成部220に入力したときの質問生成部220の出力が、その前文脈に続く質問文を生成するように質問生成部220のパラメータの学習を行う。
【0037】
質問を含むテキストを利用した、質問文の自動生成方法としてはこれ以外にも様々なものが考えられる。上記した学習データに加え、出力に含まれる表現の一部(名詞など)を自動的に抽出し、それを入力に追加することも考えられる。こうすることにより、入力に与えられた表現を含むような質問を生成するようにニューラルネットワークの学習が行える。又は、質問のタイプ(なぜ型、何型、どうやって型など)を事前に特定し、質問のタイプを指定する情報を入力に加えることも考えられる。こうすることにより、特定のタイプの質問が生成されるように質問生成部220の学習を行える。この場合、1つの入力テキストに対して異なるタイプの質問を生成するよう、複数ある質問タイプそれぞれに対して質問生成部220の入力を作成してもよい。
【0038】
質問のタイプとしては、上記した以外にも、例えば記述のスタイル(常語、敬語)、テンス(時制。過去形か否か)、人称代名詞を含むか否か、要求か否か、などが考えられる。こうした質問のタイプは、例えば特定のキーワードとともに入力に付与してもよい。この処理の詳細については、
図16を参照して後述する。
【0039】
図5に、仮説生成ニューラルネットワーク122のための学習データを生成する学習データ生成システム250の構成を示す。
図5を参照して、学習データ生成システム250は、予めウェブから収集した大量のウェブテキストを含むウェブテキストアーカイブ262と、ウェブテキストアーカイブ262から予め抽出された因果関係を表す単語列の対とそれを含むテキストパッセージとから生成され、整形、省略補完などの処理を経て得られた、所定の文間意味的関係を表すテキスト対を多数記憶するための文間意味的関係DB260とを含む。文間意味的関係は、例えば、先に記載した因果関係と同様、2つのテキストからなるテキスト対の間の特定の関係のことをいう。例えば解決策関係(第1テキストが課題、第2テキストがその課題に対する解決策)、目的-事態・動作・状態関係(第1テキストが目的、第2テキストがその目的のための事態、動作、状態)などがある。
【0040】
文間意味的関係DB260に含まれる各テキスト対は、いずれもウェブテキストアーカイブ262から抽出されたものであり、文間意味的関係DB260の各テキスト対には、ウェブテキストアーカイブ262の対応部分へのアクセス情報が付与されている。
【0041】
学習データ生成システム250はさらに、文間意味的関係DB260に含まれる各テキスト対に対し、そのテキスト対に付与されたアクセス情報に基づき、そのテキスト対を含むパッセージをウェブテキストアーカイブ262から抽出し、元のテキスト対と、抽出されたパッセージとから仮説生成ニューラルネットワーク122のための学習データを生成するための学習データ生成部264とを含む。学習データ生成部264により生成された学習データは学習データ記憶部266に格納される。学習部268がこの学習データを学習データ記憶部266から読み出して仮説生成ニューラルネットワーク122の学習を行う。
【0042】
学習データ生成部264は、文間意味的関係DB260から各テキスト対を含むレコードを読み出すためのレコード読出部290と、レコード読出部290により読み出されたレコードを、第1テキスト、第2テキスト及びアクセス情報に分割するためのレコード分割部292と、レコード分割部292により出力されるアクセス情報を使用して、ウェブテキストアーカイブ262からそのテキスト対を含むパッセージを読み出すための対応テキスト読出部294と、レコード分割部292が出力する第1テキスト及び第2テキストと、対応テキスト読出部294から出力されたパッセージとを使用して学習データの組み立てを行って出力するための学習データ組み立て部296とを含む。
【0043】
図6に、上記した文間意味的関係DB260のレコードとウェブテキストアーカイブ262のウェブテキストとの具体例を示す。
図6を参照して、例えばウェブテキストアーカイブ262にパッセージ300があるものとする。これを例えば予め学習済のニューラルネットワークによる文間意味的関係判定・生成処理302を実行することにより、文間意味的関係知識304が得られる。
【0044】
文間意味的関係知識304は、例えばパッセージ300から因果関係にあるテキスト対を抽出する。これら各テキストに、例えば人手により、又は自動的に、パッセージ300に存在する文字列310を主語として補うなどの省略補完を行ったりすることにより、原因部320と帰結部322とからなる因果関係に関する文間意味的関係知識304が得られる。他の文間関係についても同様である。
【0045】
図7に、文間意味的関係知識304及びウェブテキストから抽出されたパッセージ300から学習データ330を得る過程を模式図的に示す。
図7を参照して、文間意味的関係知識304の原因部320が学習データ330の入力340となる。パッセージ300が学習データ330の関連テキスト342となる。そして、文間意味的関係知識304の帰結部322が学習データ330の出力344となる。
【0046】
[動作]
上記第1実施形態に係る仮説生成システム100は以下のように動作する。
図1を参照して、仮説連続生成制御部126は、セレクタ118が最初に第1入力への入力を選択するようセレクタ118を制御する。その結果、入力テキスト110とキーワード112とが仮説生成システム100に入力される。キーワード112は関連テキスト作成部114に入力され、入力テキスト110は関連テキスト作成部とセレクタ118の第1入力とに入力される。
【0047】
図2を参照して、質問生成部140は、入力テキスト110とキーワード112とに基づいて1又は複数の質問文142を生成し質問応答部146に与える。質問応答部146は、与えられた1又は複数の質問文142の各々について、大規模コーパス144からその質問に対する回答を含む1又は複数の回答パッセージを抽出し、関連テキスト148として出力する。
【0048】
仮説連続生成制御部126は、セレクタ120が関連テキスト記憶部116の第1番目の関連テキストを選択するようにセレクタ120を制御し、セレクタ118の出力とセレクタ120の双方の出力を連結した単語列が仮説生成ニューラルネットワーク122に入力される。このとき、入力単語列の先頭には、[CLS]トークンが付与され、セレクタ118の出力とセレクタ120の出力との間には分離のための[SEP]トークンが挿入され、セレクタ120の出力の末尾には同じ[SEP]トークンが付加される。
【0049】
この入力に対して、仮説生成ニューラルネットワーク122が出力する単語列は、仮説記憶部124に記憶される。仮説生成ニューラルネットワーク122の出力として複数を選択してもよい。同様の処理が、セレクタ120が選択する関連テキストを切り替えながら繰り返される。関連テキスト記憶部116に記憶された関連テキストの全てについて上記した処理が完了すると第1段階の処理が終了する。
【0050】
第2段階においては、仮説連続生成制御部126は、セレクタ118が第2入力を選択し、セレクタ120が第2の関連テキストを選択するようにセレクタ118及び120を制御する。セレクタ118は仮説記憶部124に記憶された第1の仮説を選択し、関連テキスト作成部114に入力する。関連テキスト作成部114は、この仮設のテキストとキーワード112とに基づいて、第1段階と同様に複数の関連テキストを作成し関連テキスト記憶部116に出力する。セレクタ120は、関連テキスト記憶部116に記憶された関連テキストのうち、先頭の関連テキストを選択して出力する。セレクタ118が出力する仮説のテキストと、セレクタ120が出力する関連テキストとを連結した単語列が仮説生成ニューラルネットワーク122に入力され、仮説生成ニューラルネットワーク122の出力が仮説記憶部124に記憶される。以下、関連テキスト記憶部116に記憶された全ての関連テキストを使用するように上記した処理が繰り返される。
【0051】
関連テキスト記憶部116に記憶された全ての関連テキストが使用されると、仮説連続生成制御部126は、セレクタ118が仮説記憶部124に記憶された第2の仮説を選択するようにセレクタ118を制御する。第2の仮説のテキストは関連テキスト作成部114に入力され、複数の関連テキストが作成されて関連テキスト記憶部116に記憶される。仮説連続生成制御部126は、セレクタ120が関連テキスト記憶部116の第1の関連テキストを選択し出力するようセレクタ120を制御する。セレクタ118の出力及びセレクタ120の出力は連結され、仮説生成ニューラルネットワーク122に与えられる。仮説生成ニューラルネットワーク122の出力は新たな仮説として仮説記憶部124に記憶される。その後、仮説連続生成制御部126は、セレクタ120が第2番目の関連テキストを選択するようにセレクタ120を制御し、上記した処理を実行する。
【0052】
このようにして、仮説記憶部124に記憶された各仮説に対して、その仮説とキーワード112とから生成された関連テキストが作成される。そして、その仮説と、関連テキスト記憶部116に記憶された全ての関連テキストが組み合わされて新たな仮説が生成される。こうした処理が繰り返される。
【0053】
こうした処理を行い、所定の終了条件が充足された時点において仮説の生成を終了する。終了条件とは、例えば生成された仮説の数が一定数を超えたというような条件である。
【0054】
以上のように、この実施形態によれば、入力テキスト110に対してキーワード112を追加して仮説生成システム100に与え、関連テキスト作成部114においてキーワード112に基づいて複数の関連テキストを生成する。この関連テキストを入力テキスト110に付加して仮説生成ニューラルネットワーク122に入力する。こうした実験により、入力からは容易に予測できないような興味深い仮説が得られることが分かった。また、キーワードとして特定のキーワードを入力することにより、そのキーワードを含む仮説が得られる傾向があることも分かった。そして、それら仮説の生成の根拠が分かる。すなわち、各仮説を生成するために、質問応答を経由して関連テキストをウェブから取得し、それを利用して仮説を生成している。その結果、最終的に生成された仮説がなぜそのようになったのかを、仮説の作成の際に使用された関連テキストにより確認できる。その結果、各仮説の信頼性も高くなるという効果がある。
【0055】
1A.第1変形例
上記第1実施形態において、仮説生成ニューラルネットワーク122の学習には、
図7に示すように、入力となる単語列と、関連テキストの単語列と、出力となる単語列とからなる学習データが使用されている。しかし、この発明はそのような実施形態には限定されない。学習データには、入力340と出力344とが得られた文間意味的関係知識304のタイプ(例えば因果関係、解決策関係、目的-事態・動作・状態関係など)を示す情報を付加するようにしてもよい。
図8にそのための学習データの生成過程を示す。
【0056】
図8を参照して、この変形例においては、学習データ360は、文間意味的関係知識304の原因部320からなる入力340と、関連テキスト342及び文間意味的関係タイプ370と、出力344とを含む。関連テキスト342及び文間意味的関係タイプ370の組み合わせが関連テキストとして機能する。
【0057】
仮説生成ニューラルネットワーク122の学習をこのようにする場合、仮説生成時の入力には、第1実施形態と同様、
図1に示す入力テキスト110と、関連テキストとに加え、意味的関係を表す単語又は記号を含ませる必要がある。この場合の意味的関係としては、利用者が仮説生成時に定めて常に同じ値(例えば因果関係を表す記号)を入力に付与するようにしてもよいし、仮説生成時に意味的関係を表す任意の値を入力に付与するようにしてもよい。前者の場合には、仮説生成時に定めた値に従った関係に基づく仮説が得られるし、後者の場合には、よりバラエティに富んだ仮説が得られる可能性が高くなる。
【0058】
1B.第2変形例
仮説生成ニューラルネットワークの学習データの生成方法は上記第1実施形態及び第1変形例には限定されない。例えば
図9に示すような方法も考えられる。
図9を参照して、ウェブテキストアーカイブ中に、因果関係として原因部394と帰結部396とを含むパッセージ380が存在するものとする。パッセージ380には、原因部394に対応するテキスト390と、帰結部396に対応するテキスト392とが存在する。
【0059】
学習データの生成においては、このパッセージ380を原因部394及び帰結部396の関連テキストとしてもよい。このような学習データを用いる場合には、原因部394とパッセージ380とを入力して、帰結部396を抽出する処理が学習できる。その結果、パッセージ内に原因部と帰結部とが含まれている場合、そのパッセージを関連テキストとして原因部とともに入力して仮説の生成を行えば、帰結部が出力として得られる確率が高くなる。
【0060】
このような処理を仮説生成のためのニューラルネットワークに実行させるための学習データを生成するシステムの1例を
図17に示す。
図17を参照して、この学習データ生成システム680は、ウェブテキストアーカイブなど、大量のテキストを記憶した大規模コーパス210と、大規模コーパス210から互いに特定の関係にあるテキストペアとそのテキストペア(例えば
図9に示すテキスト390及び392)を含むパッセージ(
図9に示すパッセージ380)とを抽出し、それらをランキングし、適切な回答を含むパッセージを残すようにフィルタリングして出力するためのテキストペア抽出部690とを含む。ここでいう特定の関係とは、因果関係、解決策関係、目的-事態・動作・状態関係などを含む。
【0061】
学習データ生成システム680はさらに、テキストペア抽出部690により抽出されたテキストペアを構成する2つのテキストの間の意味的関係を推定する意味的関係推定部694と、テキストペア抽出部690により抽出されたパッセージ380を使用して関連テキストを生成するための関連テキスト作成部692とを含む。関連テキスト作成部692は関連テキストを生成するとはいうものの、この例においては抽出されたパッセージ380をそのまま使用する。
【0062】
学習データ生成システム680はさらに、テキストペア抽出部690により抽出されたテキストペアのうち、第1文(因果関係の場合には原因部)を入力とし、抽出されたパッセージを関連テキストとし、第2文(因果関係の場合には帰結部)を出力としてこれらを連結することにより学習データを生成するための学習データ生成部696を含む。学習データ生成部696により出力された学習データを学習データ記憶部698に保存し、学習処理部700がこの学習データを用いて仮説生成ニューラルネットワーク604の学習を行うことにより、仮説生成ニューラルネットワーク604が、入力に応答して、関連テキストに含まれている出力に相当する文を生成する処理を学習することになる。
【0063】
さらに、
図9に戻り、パッセージ380内において、原因部394及び帰結部396に対応するテキスト390とテキスト392とからなるテキスト400を削除するようにしてもよい。その結果得られたパッセージ382を関連テキストとして仮説生成ニューラルネットワーク604の学習を行う。
学習データをこのようにすることにより、入力+関連テキストに基づいて、いずれにも記載されていない内容(入力に対する帰結)を出力するように仮説生成ニューラルネットワーク604の学習が行える。
【0064】
1C.第3変形例
仮説生成ニューラルネットワークのための学習データは上記したものには限定されない。例えば、学習データの出力部に含まれる内容語又は句などを関連テキストとして入力に加えるようにしてもよい。
図10に、そのような学習を行う仮説生成ニューラルネットワーク452のための学習データを生成する学習データ生成システム440の機能的構成を示す。
【0065】
図10を参照して、学習データ生成システム440は、ウェブテキストアーカイブ262と、文間意味的関係DB260と、これらに記憶されている内容を使用して仮説生成ニューラルネットワーク452のための学習データを生成するための学習データ生成部450とを含む。
【0066】
学習データ生成部450は、レコード読出部290と、レコード読出部290により文間意味的関係DB260から読み出された文間意味的関係を表すレコードを、原因部と、帰結部と、アクセス情報とに分割するためのレコード分割部460と、レコード分割部460により出力されるアクセス情報を用いて、ウェブテキストアーカイブ262から処理中の因果関係の表現を含むパッセージである対応テキストを読み出すための対応テキスト読出部294と、レコード分割部460が出力する第2テキストから、第2テキストに含まれる内容語又は句を抽出するための内容語句抽出部462と、レコード分割部460が出力する第1テキスト及び第2テキストと、内容語句抽出部462が出力する語句と、対応テキスト読出部294から出力されたパッセージとを使用して学習データの組み立てを行って出力するための学習データ組み立て部464とを含む。
【0067】
このような学習データを使用して生成された学習データは学習データ記憶部266に記憶される。学習部268がこの学習データを使用して仮説生成ニューラルネットワーク452の学習を行う。仮説生成ニューラルネットワーク452による仮説生成時には、
図1に示すものと同様の入力テキスト110と、キーワード112とを受けて関連テキストを生成した後、入力テキスト110と、関連テキストと、キーワード112とを仮説生成ニューラルネットワーク452に入力する。その結果、仮説生成ニューラルネットワーク452への出力として仮説が得られる。なおこの場合、キーワード112とは異なる別のキーワードを利用者に入力させるようにしてもよい。
【0068】
この変形例によれば、例えば「漁業」に関する仮説の生成結果を特に得たい場合には、その「漁業」というキーワードが含まれるように仮説生成ニューラルネットワーク452の学習が行えるようになる。その結果、特定の分野の仮説を特に得たい場合に、精度よく求める分野の仮説を得ることができる。
【0069】
2.第2実施形態
上記第1実施形態において、
図1に示す関連テキスト作成部114は、
図2に示すようにニューラルネットワークを用いた質問生成部140により質問文142を生成している。しかしこの発明はそのような実施形態には限定されない。
【0070】
図11に、この第2実施形態に係る仮説生成システムにおいて
図2に示す関連テキスト作成部114に代えて使用できる関連テキスト作成部470の機能的構成を示す。
図11を参照して、関連文生成部470は、入力されたキーワード112をキーにインターネット472上においてウェブ検索をし、そのキーワード112を含む複数の文からなるスニペット482を集めるためのウェブ検索部480を含む。この第2実施形態においては、このスニペット482を関連テキスト474として使用する。
【0071】
こうした実施の形態によっても、第1実施形態と同様の作用及び効果を得ることができる。
【0072】
3.第3実施形態
図12に、この発明の第3実施形態に係る仮説生成システムにおいて使用される関連テキスト作成部490のさらに他の例を示す。
図1に示す関連テキスト作成部114に代えて、この関連テキスト作成部490を使用してもこの発明に係る仮説生成システムを実現できる。
【0073】
図12を参照して、関連テキスト作成部490は、入力テキスト110(
図1を参照)からキーワードを抽出するためのキーワード抽出部500と、キーワード抽出部500により抽出されたキーワードに基づいて1又は複数の質問文142を生成するための質問生成部140と、質問文142の各々を使用して大規模コーパス144から質問文に対する回答を含むパッセージを抽出するための質問応答部146と、質問応答部146が抽出した回答を含むパッセージの各々から、内容語又は句などを抽出する単語抽出部502とを含む。単語抽出部502が抽出した単語又は句が関連テキスト492として使用される。
【0074】
このような実施形態によっても、第1の実施形態と同様に、入力にその関連テキストとしての単語又は句を追加して仮説生成ニューラルネットワークに入力できる。その結果、第1実施形態と同様の効果を得ることができる。
【0075】
4.第4実施形態
図13に、この発明の第4実施形態に係る仮説生成システム510の機能的構成を示す。
図13を参照して、仮説生成システム510は、入力テキスト110の入力を受けて関連テキストを生成し出力する関連テキスト作成部520と、関連テキスト作成部520により生成された関連テキストを格納するための関連テキスト記憶部116と、関連テキスト記憶部116に記憶された複数の関連テキストの一つを順番に選択するためのセレクタ522と、入力テキスト110とセレクタ522の出力とを連結した入力を受けて、入力テキスト110に対する仮説を生成し出力するための、予め学習済の仮説生成ニューラルネットワーク524とを含む。
【0076】
仮説生成システム510はさらに、仮説生成ニューラルネットワーク524が出力した複数の仮説を記憶するための仮説記憶部124と、仮説生成ニューラルネットワーク524による仮説の生成と関連テキスト作成部520による関連テキストの生成と、セレクタ522による関連テキストの選択とを制御することにより、入力テキスト110のみから、仮説記憶部124に記憶された複数の仮説の各々と入力テキスト110とから、又は仮説の各々から、関連テキストを生成し、それら関連テキストと入力テキスト110とを組み合わせて仮説生成ニューラルネットワーク524に入力してさらに新たな仮説を生成するよう、関連テキスト作成部520の制御530及びセレクタ522の制御528を実行するための仮説連続生成制御部526とを含む。
【0077】
図14を参照して、関連テキスト作成部520は、これまでに生成された仮説と入力テキスト110とを入力として受け、両者を組み合わせて新たな質問文562を生成するための質問生成部560と、質問文562に対する回答を含むパッセージを大規模コーパス144において検索して、質問文562に対する回答を含む回答パッセージを大規模コーパス144から抽出し、それらをランキングし、適切な回答を含むパッセージを残すようにフィルタリングして関連テキスト540として出力するための質問応答部146とを含む。
【0078】
質問生成部560における質問文562の生成方法は様々に考えられる。例えば入力テキスト110が「地球温暖化が進む」であり、前段までの処理により生成された仮説の一つが「海水温が上昇する」であるとする。両者を組み合わせた質問文の1例は、「地球温暖化が進み、海水温が上昇するのはなぜか?」のようなものである。このような質問文の生成は、単純に最初の入力と前段までの仮説の一つを組み合わせ、最後に「のはなぜか?」という文字列を追加するという処理により行える。同様にして他の形式の質問文も生成できる。
【0079】
関連テキスト作成部520は、例えばまだ仮説が生成されていないときには入力テキスト110のみを用いて質問文を生成する。仮説が生成された後は、新たに生成された仮説を入力テキスト110と組み合わせて質問文を生成する。
【0080】
質問文をこのように生成することにより、質問応答部146に与えられる質問文562は、質問として、対象がより明確な質問となる。その結果、質問応答部146が大規模コーパス144において検索して抽出する関連テキストは、入力に対して高い関連性を持ったものとなる可能性が高くなるという効果がある。
【0081】
5.第5実施形態
上記したように、この発明の仮説生成システムによれば、一つの入力に基づいて複数の仮説を得ることができる。上記実施の形態においてはそうした仮説と仮説との関係は特に明確に指定できるわけではない。もちろん、前段の仮説をもとに後続の仮説が生成されるという関係がある場合もある。しかし、一連の仮説をまとめて見たときに、そこには特に明確な繋がりが見いだせるというわけではない。
【0082】
しかし、一連の仮説の間に、推論又は議論の筋道のようなストーリー性があれば、一連の仮説の説得力が増すと考えられる。そのためにこの第5実施形態においては、カテゴリという概念を導入する。
【0083】
この実施形態における「カテゴリ」とは、前段の仮説と後段の仮説との間の仮説の内容の推移を示すためのものであり、先行する仮説と後続する仮説との間の意味的関係、推論の筋道、話題の筋道などを指定するものである。例えば「順接」「逆説」「例示」のようなものが考えられる。一連の仮説にわたり「順接→逆説→例示」のような仮説の推移を指定して順番に仮説を生成することにより、一連の仮説にストーリー性を持たせることが可能になる。その結果、ストーリーとしての盛り上がりを持った、より興味深い仮説が生成できる可能性がある。
【0084】
図15に、第5実施形態に係る仮説生成システム590の機能的構成を示す。
図15を参照して、仮説生成システム590は、入力テキスト110を受ける第1入力と、入力テキスト110と異なる別の単語列(前段までの処理により生成された仮説)を受けるための第2入力とを持つセレクタ600と、セレクタ600の出力を受けるように接続され、入力に基づいて、入力に対する関連テキストを生成するための関連テキスト作成部570と、関連テキスト作成部570により生成された関連テキストを記憶するための関連テキスト記憶部572と、仮説生成ニューラルネットワーク604と、仮説生成ニューラルネットワーク604により出力される仮説を記憶するための仮説記憶部124とを含む。なお、この実施形態においてはキーワードの入力は使用していない。しかしこの発明はそのような実施形態には限定されず、第1実施形態と同様に、入力テキスト110に加えてキーワードの入力を受け、関連テキスト作成部570における関連テキストの作成において使用してもよい。
【0085】
関連テキスト作成部570の構成は
図2に示す関連テキスト作成部114と同様であるが、質問生成部140を構成するニューラルネットワークに対する学習データの構成においてこの実施形態は第1実施形態と異なる。その点については後述する。
【0086】
仮説生成システム590はさらに、入力テキスト110を受ける第1入力と、仮説記憶部124に新たに記憶された仮説の一つとのいずれかを選択して仮説生成ニューラルネットワーク604の入力に与えるためのセレクタ602と、生成される仮説に順番に設定すべきカテゴリ列を記憶するためのカテゴリ設定記憶部608と、仮説記憶部124に新たな仮説が記憶されるたびに、セレクタ600及び602を制御して処理段階に応じた入力を選択させるようにし、カテゴリ設定記憶部608に記憶されたカテゴリ列のうち、該当するカテゴリを示す情報(カテゴリ情報)を仮説生成ニューラルネットワーク604の入力に与える処理を行うための、仮説連続生成制御部606とを含む。
【0087】
仮説生成ニューラルネットワーク604には、セレクタ602の出力(入力テキスト110又は新規に生成された仮説)と、関連テキスト記憶部572に記憶された関連テキストの一つと、仮説連続生成制御部606からのカテゴリ情報とが与えられる。
【0088】
なお、関連テキスト記憶部572には複数の関連テキストが記憶されており、
図15には図示していないが、関連テキスト記憶部572からの出力には、関連テキスト記憶部572に記憶された関連テキストの一つを選択して仮説生成ニューラルネットワーク604に与えるためのセレクタが設けられる。このセレクタは仮説連続生成制御部606により制御され、例えばセレクタ600により選択される仮説が切り替えられると、関連テキスト記憶部572に記憶された関連テキストを順番に選択して仮説生成ニューラルネットワーク604に与える。こうした処理により、新規な仮説が生成されると、少なくとも関連テキスト記憶部572に記憶された関連テキストと同じ数の仮説が新たに生成され仮説記憶部124に記憶されることになる。
【0089】
図16に、
図15に示す関連テキスト作成部570に含まれる、質問文生成のためのニューラルネットワークのための学習データを生成する、学習データ生成システム620の機能的構成を示す。
図16を参照して、学習データ生成システム620は、大規模コーパス210から、質問文とその前文脈とを抽出するための質問文+前文脈抽出部212と、質問文+前文脈抽出部212により抽出された質問文とその前文脈とから質問文生成ニューラルネットワークの学習データを生成するための学習データ生成部630とを含む。大規模コーパス210及び質問文+前文脈抽出部212の構成は、
図4に示すものと同様である。
【0090】
学習データ生成部630は質問文+前文脈抽出部212により抽出された質問文と前文脈とのテキストを互いに分離するためのテキスト分離部640と、テキスト分離部640により分離されたテキストのうち、質問文を受けて、その一部の表現を自動的に抽出し、その一部を変数に置き換えた表現を出力する一部表現抽出部642と、質問文のテキスト表現のスタイル(常語・敬語など)を特定し、そのスタイルを示す情報を出力するスタイル特定部644と、質問文の時制(テンス)を特定し、時制を表す情報を出力するテンス特定部646と、質問文の型(なぜ型、何型、どうやって型など)を特定し、質問文の型を示す情報を出力するための質問タイプ特定部648と、一部表現抽出部642の出力、スタイル特定部644の出力、テンス特定部646の出力、及び質問タイプ特定部648の出力を[SEP]トークンにより互いに分離させて前文脈と連結し、さらに連結後の前文脈と質問文とを連結させて学習データ634として出力するための連結部650とを含む。
【0091】
このように前文脈に各種の情報を付与する場合、実際の質問生成時に、入力に対して、上記各種情報として所望の値を指定したものを付加することによって、意図した表現を含む質問、意図したスタイルの質問、意図した型の質問、意図した時制の質問などをニューラルネットワークにより生成させることが可能になる。
図16においては、各カテゴリを指定する値を組み合わせた例を示している。しかし、これらカテゴリは互いに独立である。したがって、学習データの作成時には、これらのカテゴリを表す値の一部のみを指定するようにしてもよい。
【0092】
なお、質問文+前文脈抽出部212により抽出された質問文から名詞などを抽出し、それらを前文脈に追加することもできる。そうすることにより、入力に含まれる名詞を含む質問を質問生成のためのニューラルネットワークに生成させることができる。また、上記した情報以外にも、質問に人称代名詞を含ませるか否か、質問を要求型とするか否か、などを示す情報を前文脈に付加することもできる。
【0093】
6.第6実施形態
図18に、この発明の第6実施形態に係る仮説生成システム730の機能的構成を示す。この仮説生成システム730は、入力テキスト110を受け、最初に関連テキストを生成した後、生成された関連テキストに基づいて新たな関連テキストを生成する、という処理を繰り返し実行する。所定の終了条件、例えば所定個数の関連テキストが生成された、という条件が成立した後、入力テキスト110が、生成済の関連テキストの各々とを組み合わされて仮説生成ニューラルネットワーク122に入力される。こうした処理により、長い仮説が生成される。
【0094】
図18を参照して、仮説生成システム730は、入力テキスト110を受ける第1入力と、第2入力とを持つセレクタ740と、セレクタ740の出力を受け、セレクタ740の出力に基づいて1又は複数の関連テキストを生成するための関連テキスト作成部570と、関連テキスト作成部570により生成された関連テキストを記憶するための関連テキスト記憶部572とを含む。関連テキスト作成部570及び関連テキスト記憶部572の構成は、
図15に示したものと同様である。
【0095】
仮説生成システム730はさらに、関連テキスト記憶部572に記憶された関連テキストの一つを選択してセレクタ740の第2入力に与えることにより、関連テキスト作成部570に新たな関連テキストを生成させるためのセレクタ742と、関連テキスト作成部570による関連テキストの生成が完了した後、関連テキスト記憶部572に記憶されている関連テキストを順番に選択して出力するためのセレクタ120と、入力テキスト110とセレクタ120の出力を連結した入力を受けて仮説を生成するよう、予め学習済の仮説生成ニューラルネットワーク122と、仮説生成ニューラルネットワーク122により生成された仮説を記憶するための仮説記憶部124と、最初の仮説生成のサイクルとそれ以後のサイクルとにおいて、適切な入力を選択するようにセレクタ740及び120を制御して、仮説生成ニューラルネットワーク122に繰り返し仮説を生成させるための仮説生成制御部744とを含む。なお、この実施形態においては、1つの関連テキストから複数の関連テキストを得る、という処理を繰り返していく。この処理により、これら関連テキストはツリー状の関係を持って広がっていく。後述するように、仮説生成においては、このツリーのルートに相当する部分から葉の方向に向かう経路に沿って存在する一連の関連テキストを連鎖させ、それらから長い仮説を生成する。したがって、関連テキスト記憶部572には、各関連テキストについて、その関連テキストが、どの入力から得られたか、つまり入力テキスト110又は複数の関連テキストのいずれを入力として得られたかに関する情報も保持しておく。
【0096】
この実施形態において、仮説生成の最初のサイクルにおいては、セレクタ740は入力テキスト110を選択し、関連テキスト作成部570に入力する。関連テキスト作成部570はこの入力テキスト110に応答し1又は複数の関連テキストを生成する。関連テキスト記憶部572は、これら1又は複数の関連テキストを格納する。入力テキスト110からの関連テキストの生成が終了すると、セレクタ742は、これら複数の関連テキストを一つずつ選択して順番にセレクタ740の第2入力に与える。セレクタ740は、この関連テキストを関連テキスト作成部570に入力する。この結果、1又は複数の関連テキストが関連テキスト記憶部572に新たに格納される。
【0097】
このように関連テキスト記憶部572に記憶された関連テキストを用いて新たな関連テキストを作成する処理を繰り返していくと、やがて関連テキスト記憶部572に記憶された関連テキストの数が所定の数を超える。するとセレクタ742は新たな関連テキストの選択を終了する。
【0098】
セレクタ742による新たな関連テキストの選択が終了すると、セレクタ120は、関連テキスト記憶部572に格納されている関連テキストについて、上記したツリーにおいてルートから各葉に至る経路を順番に選択し、さらにその経路上の関連テキストを順番に選択して、つまり各経路上の関連テキストを連鎖させて入力テキスト110とともに仮説生成ニューラルネットワーク122に入力する。仮説生成ニューラルネットワーク122は、入力テキスト110と、セレクタ120が順番に出力する関連テキストとを入力として、それぞれ新たな仮説を生成する。仮説記憶部124は、これら生成された仮説を仮説記憶部124に記憶する。この新たな仮説は、互いに連鎖する関連テキストに基づいて得られた長い仮説となる。
【0099】
仮説生成ニューラルネットワーク122が関連テキスト記憶部572に記憶された互いに連鎖する関連テキストを全て使用して仮説を生成すると仮説生成システム730による仮説生成が終了する。
【0100】
この仮説生成システム730によれば、最初に複数の関連テキストが生成された後、それら複数の関連テキストの各々と入力テキスト110との組み合わせにより仮説が生成される。その結果、単純な処理により長い仮説を生成できるという効果がある。
【0101】
7.第7実施形態
図19に、この発明の第7実施形態に係る仮説生成システム770の機能的構成を示す。
図19を参照して、仮説生成システム770は、
図1に示すものと同様の関連テキスト作成部114、関連テキスト記憶部116、セレクタ118、120、及び仮説記憶部124と、セレクタ118の出力とセレクタ120の出力とを組み合わせて1文とする入力整形部780と、
図1に示す仮説生成ニューラルネットワーク122と同様の機能を持つが、入力の形態として入力整形部780により整形された文を受けて仮説を生成するための仮説生成ニューラルネットワーク782と、入力テキスト110及びキーワード112の入力に応答して、複数の仮説を生成するよう、セレクタ118及び120を含む仮説生成システム770の各部を制御するための仮説連続生成制御部784とを含む。
【0102】
この仮説生成システム770が
図1に示す仮説生成システム100と異なるのは、仮説生成ニューラルネットワーク782の入力形式が
図1の仮説生成ニューラルネットワーク122と異なる点、及びそのために入力整形部780を設けているという点である。そのほかの点においては、仮説生成システム770は、仮説生成システム100と同じ構成を持つ。
【0103】
図1に示す仮説生成ニューラルネットワーク122への入力は、[CLS]+入力テキスト110の単語列+[SEP]+関連テキストの単語列+[SEP]というものである。それに対して、入力整形部780は、入力テキスト110とセレクタ120からの関連テキストとを連結して自然な1文として仮説生成ニューラルネットワーク782への入力とする。例えば入力整形部780は、入力テキスト110とセレクタ120からの関連テキストとを組み合わせ、整形して「[CLS]+関連テキストの単語列+「が、」+入力テキスト110の単語列+[SEP]」という単語列を生成し仮説生成ニューラルネットワーク782に入力する。
【0104】
例として、入力テキスト110が「対話システムを開発する。」であり、キーワード112が「高齢者」であったとして、関連テキストとして「移動手段の確保で高齢者は困っている。」が得られたものとする。入力整形部780は、これら2つの文を連結し整形して、「移動手段の確保で高齢者は困っているが、対話システムを開発する。」という文を生成して仮説生成ニューラルネットワーク782への入力とする。
【0105】
仮説生成ニューラルネットワーク782としてこうした入力に基づいて仮説を生成するためには、学習データも上記した入力整形部780の出力と同型式にする必要がある。つまり、学習時にも関連テキスト記憶部116を記憶しておき、入力テキスト110と連結して1文としたものを仮説生成ニューラルネットワーク782への入力とする必要がある。
【0106】
8.第8実施形態
図20に、この発明の第8実施形態に係る仮説生成ニューラルネットワーク826の学習のための学習データ生成システム810の機能的構成を示す。ここでは、学習の対象となる仮説生成ニューラルネットワーク826は、特に限定されないが、
図1の実施形態に示す仮説生成ニューラルネットワーク122と同様の構成であると想定する。仮説生成ニューラルネットワーク826を使用して仮説を生成するシステムも
図1に示す仮説生成システム100と同様のものでよい。
【0107】
この実施形態は、仮説生成ニューラルネットワーク826の学習データの生成方法に特徴を持つ。
【0108】
学習データ生成システム810は、文間意味的関係DB260と、文間意味的関係DB260に記憶されたテキスト対と、ウェブテキストアーカイブ262とに基づいて仮説生成ニューラルネットワーク826のための学習データを生成する学習データ生成部820とを含む。学習データ生成部820が生成した学習データは学習データ記憶部822に記憶される。学習部824が学習データ記憶部822に記憶された学習データを用いて仮説生成ニューラルネットワーク826の学習を行うことにより、仮説生成ニューラルネットワーク826が入力に応答して仮説を生成する。
【0109】
この実施形態においては、学習データの生成過程が第1実施形態における生成過程と異なる。その結果、仮説生成ニューラルネットワーク826は
図1に示す仮説生成ニューラルネットワーク122とは異なる仮説を生成すると考えられる。
【0110】
学習データ生成部820は、文間意味的関係DB260の各レコードに含まれるテキスト対を読み出すレコード読出部830と、レコード読出部830により読み出されたレコードのテキストを第1文(因果関係の場合には原因部)及び第2文(因果関係の場合には帰結部)に分割するためのレコード分割部832とを含む。
【0111】
学習データ生成部820はさらに、レコード分割部832が出力する原因部を使用して1又は複数の質問文を生成するための質問生成部834と、質問生成部834により生成された1又は複数の質問の各々に対する回答を含む複数の回答パッセージをウェブテキストアーカイブ262において検索し、ウェブテキストアーカイブ262から抽出し、適切な回答を含むパッセージを残すようにフィルタリングして出力するための質問応答部836と、質問応答部836により出力された複数の回答パッセージを記憶するための応答記憶部838とを含む。
【0112】
学習データ生成部820はさらに、応答記憶部838に記憶されている複数の回答パッセージの各々と、レコード分割部832から出力される帰結部(仮説生成における出力に相当)との類似度を算出するための類似度算出部840と、類似度算出部840により複数の回答パッセージの各々について算出された類似度に基づいて、最も高い類似度に対応する回答パッセージを、原因部(入力)に対する関連テキストとして選択するための関連テキスト選択部842と、レコード分割部832により出力される原因部を入力、関連テキスト選択部842により選択された回答パッセージを関連テキスト、レコード分割部832により出力される帰結部を出力としてこれらを連結することにより、仮説生成ニューラルネットワーク826のための学習データを組み立てるための学習データ組み立て部844とを含む。
【0113】
類似度算出部840による類似度算出の手法については、
図25から
図28を参照して後述する。
【0114】
この実施形態によれば、原因部から質問生成部834が質問文を生成し、質問応答部836がその質問文に対する複数の回答パッセージをウェブテキストアーカイブ262から検索し、ウェブテキストアーカイブ262から抽出して、適切な回答を含むパッセージを残すようにフィルタリングする。そして、回答パッセージの中において帰結部と最も類似したものを類似度算出部840及び関連テキスト選択部842により選択する。その結果、原因部を入力、その原因部を持つ因果関係の帰結部に最も関連が深い関連テキスト、及びその因果関係の帰結部を組み合わせることにより、仮説生成ニューラルネットワーク826の学習データが作成される。
【0115】
9.第9実施形態
図21に、この発明の第9実施形態に係る学習データ生成システム850の機能的構成を示す。第9実施形態において学習の対象となる仮説生成ニューラルネットワーク866は、特に限定されないが、
図1の実施形態に示す仮説生成ニューラルネットワーク122と同様の構成であると想定する。仮説生成ニューラルネットワーク866を使用して仮説を生成するシステムも
図1に示す仮説生成システム100と同様のものでよい。
【0116】
この実施形態は、仮説生成ニューラルネットワーク866の学習データの生成方法に特徴を持つ。
【0117】
学習データ生成システム850は、第8実施形態と同様の文間意味的関係DB260と、文間意味的関係DB260に記憶されたテキスト対と、ウェブテキストアーカイブ262とに基づいて仮説生成ニューラルネットワーク866のための学習データを生成する学習データ生成部860とを含む。学習データ生成部860が生成した学習データは学習データ記憶部862に記憶される。学習部864が学習データ記憶部862に記憶された学習データを用いて仮説生成ニューラルネットワーク866の学習を行うことにより、仮説生成ニューラルネットワーク866が入力に応答して仮説を生成する。
【0118】
この実施形態においては、学習データの生成過程が第1実施形態における生成過程とも、第8実施形態とも異なる。その結果、仮説生成ニューラルネットワーク866は
図1に示す仮説生成ニューラルネットワーク122とも、
図20に示す仮説生成ニューラルネットワーク826とも異なる仮説を生成すると考えられる。
【0119】
学習データ生成部860は、
図20に示すものと同様、文間意味的関係DB260の各レコードに含まれるテキスト対を読み出すレコード読出部830と、レコード読出部830により読み出されたレコードのテキストを第1文(因果関係の場合には原因部)及び第2文(因果関係の場合には帰結部)に分割するためのレコード分割部832とを含む。
【0120】
学習データ生成部860はさらに、レコード分割部832が出力する帰結部を使用して1又は複数の質問文を生成するための質問生成部870と、質問生成部870により生成された1又は複数の質問の各々に対する回答を含む複数の回答パッセージをウェブテキストアーカイブ262から抽出するための質問応答部872と、質問応答部872により抽出された複数の回答パッセージを記憶するための応答記憶部874とを含む。
【0121】
学習データ生成部860はさらに、応答記憶部874に記憶されている複数の回答パッセージの各々と、レコード分割部832から出力される原因部(仮説生成における入力に相当)との類似度を算出するための類似度算出部876と、類似度算出部876により複数の回答パッセージの各々について算出された類似度に基づいて、最も高い類似度に対応する回答パッセージを、関連テキストとして選択するための関連テキスト選択部878と、レコード分割部832により出力される原因部を入力、関連テキスト選択部878により選択された回答パッセージを関連テキスト、レコード分割部832により出力される帰結部を出力としてこれらを連結することにより、仮説生成ニューラルネットワーク866のための学習データを組み立てるための学習データ組み立て部880とを含む。
【0122】
類似度算出部840による類似度算出の手法については、第8実施形態と同様であり、
図25から
図28を参照して後述する。
【0123】
この実施形態によれば、帰結部から質問生成部870が質問文を生成し、質問応答部872がその質問文に対する複数の回答パッセージをウェブテキストアーカイブ262から抽出する。そして、回答パッセージの中において原因部と最も類似したものを類似度算出部876及び関連テキスト選択部878により選択する。その結果、因果関係の原因部に相当する入力テキストと、その因果関係の帰結部から得られた回答パッセージのうち、入力テキスト110に最も関連が深い関連テキストと、その因果関係の帰結部とを組み合わせることにより、仮説生成ニューラルネットワーク826の学習データが作成される。
【0124】
10.第10実施形態
図22に、この発明の第10実施形態の機能的構成を示す。
図22を参照して、この第10実施形態に係る学習データ生成システム920は、仮説生成ニューラルネットワーク936のための学習データを生成するための学習データ生成部930を含む。学習データ生成部930が生成した学習データは、学習データ記憶部932に記憶される。学習部934が学習データ記憶部932に記憶された学習データを使用して仮説生成ニューラルネットワーク936の学習を行うことにより、仮説生成ニューラルネットワーク936を
図1に示す仮説生成ニューラルネットワーク122に代えて使用できるようになる。
【0125】
学習データ生成部930は、
図20に示す学習データ生成部820と、
図21に示す学習データ生成部860との構成要素を組み合わせた部分を含む。より具体的には、学習データ生成部930は、
図20に示すものと同様のレコード読出部830、レコード分割部832、質問生成部834、質問応答部836、ウェブテキストアーカイブ262、応答記憶部838、及び類似度算出部840を含む。学習データ生成部930はさらに、
図21に示すものと同様の質問生成部870、質問応答部872、応答記憶部874、及び類似度算出部876を含む。
【0126】
学習データ生成部930はさらに、類似度算出部840により算出された類似度が最も高い回答パッセージを応答記憶部838から、類似度算出部876により算出された類似度が最も高い回答パッセージを応答記憶部874から、それぞれ読み出し、いずれか類似度が高い方の回答パッセージを関連テキストして選択し出力する関連テキスト選択部940と、レコード分割部832が出力する原因部を入力、関連テキスト選択部940が出力する回答パッセージを関連テキスト、レコード分割部832が出力する帰結部を出力としてこれらを結合し、学習データとして学習データ記憶部932に保存するための学習データ組み立て部942とを含む。
【0127】
類似度算出部840及び876による類似度計算までは、それぞれ第8実施形態及び第9実施形態における処理と同じである。この学習データ生成部930においては、関連テキスト選択部940が、類似度算出部840が算出した類似度と、類似度算出部876が算出した類似度とを比較し、いずれか高い方の類似度に対応する回答パッセージを応答記憶部838又は応答記憶部874から読み出して学習データ組み立て部942に出力する。その結果、第8実施形態と第9実施形態とを組み合わせて、いずれか学習結果として適切な回答パッセージを関連テキストとした学習データが生成できる。
【0128】
11.第11実施形態
図23に、この発明の第11実施形態に係る、仮説生成ニューラルネットワーク986のための学習データを生成する学習データ生成システム970の構成を示す。この例においては、仮説生成ニューラルネットワーク986の学習データは、これまでの学習データ生成システムにより生成されるものと同様、入力と、関連テキストと、出力とを組み合わせたものである。しかし、この実施形態においては、関連テキストの構成の点において他の実施形態、特に第10実施形態とは異なる。
【0129】
図23を参照して、この第11実施形態に係る学習データ生成システム970は、仮説生成ニューラルネットワーク986のための学習データを生成する学習データ生成部980を含む。学習データ生成部980が生成した学習データは、学習データ記憶部982に記憶される。学習部984が、学習データ記憶部932に記憶された学習データを使用して仮説生成ニューラルネットワーク986の学習を行う。この結果、仮説生成ニューラルネットワーク986を、
図1に示す仮説生成ニューラルネットワーク122に代えて使用できるようになる。
【0130】
図23を参照して、この第11実施形態に係る学習データ生成システム920は、仮説生成ニューラルネットワーク936のための学習データを生成するための学習データ生成部930を含む。学習データ生成部930が生成した学習データは、学習データ記憶部932に記憶される。学習部934が学習データ記憶部932に記憶された学習データを使用して仮説生成ニューラルネットワーク936の学習を行うことにより、仮説生成ニューラルネットワーク936を
図1に示す仮説生成ニューラルネットワーク122に代えて使用できるようになる。
【0131】
学習データ生成部980は、
図20に示す学習データ生成部820と、
図21に示す学習データ生成部860との構成要素を組み合わせた部分を含む。より具体的には、学習データ生成部930は、
図20に示すものと同様のレコード読出部830、レコード分割部832、質問生成部834、質問応答部836、ウェブテキストアーカイブ262、応答記憶部838、類似度算出部840、及び関連テキスト選択部842を含む。学習データ生成部930はさらに、
図21に示すものと同様の質問生成部870、質問応答部872、応答記憶部874、類似度算出部876、及び関連テキスト選択部878を含む。
【0132】
学習データ生成部980はさらに、レコード分割部832が出力する原因部を入力、関連テキスト選択部842が出力する回答パッセージと関連テキスト選択部878が出力する回答パッセージとを組み合わせたものを関連テキスト、レコード分割部832が出力する帰結部を出力としてこれらを結合し、学習データとして学習データ記憶部982に保存するための学習データ組み立て部990とを含む。
【0133】
この第11実施形態において、関連テキスト選択部842及び関連テキスト選択部878による回答パッセージの選択までは、それぞれ第8実施形態及び第9実施形態における処理と同じである。この学習データ生成部980においては、学習データ組み立て部990が、関連テキスト選択部842が選択した回答パッセージと、関連テキスト選択部878が選択した回答パッセージとを連結し、関連データとして学習データに組み込む点において第10実施形態と異なる。この場合、回答パッセージと回答パッセージとの間には、[SEP]が挿入される。
【0134】
図24に、学習データ組み立て部990が出力する学習データの1例の構成を示す。
図24を参照して、この学習データ1010は、「[CLS]+「対話システムを開発する」(入力1020)+[SEP]+第1関連テキスト1022+[SEP]+第2関連テキスト1024+[SEP]+「高齢者の移動を支援する」(出力1026)」という形式を持つ。第1関連テキスト1022及び第2関連テキスト1024は、それぞれ原因部及び帰結部から得られた回答パッセージのうちで、それぞれ原因部との間、及び帰結部との間の類似度が最も高いものである。
【0135】
実際の仮説生成時には、例えば、
図1に示すような構成において、関連テキスト記憶部116に記憶されている関連テキストを2つ選択して[SEP]を介して連結して入力テキスト110に付加して仮説生成ニューラルネットワーク986に入力することが考えられる。
【0136】
その結果、この第11実施形態によれば、第8実施形態と第9実施形態とを第10実施形態とは異なる形態により組み合わせて、学習結果として適切な回答パッセージを組み合わせて関連テキストとした学習データが生成できる。
【0137】
12.類似度計算
この発明の第8実施形態、第9実施形態、第10実施形態、及び第11実施形態においては、例えば原因部と回答パッセージ、及び帰結部と回答パッセージの間の類似度を算出している。以下、
図25から
図28を参照して、この類似度の算出方法について説明する。
【0138】
図25を参照して、この実施形態においては、類似度の算出に、深層学習による学習を行う類似度計算モデル1070を使用する。
図25は類似度計算モデル1070の学習を行うための学習システム1050の機能的構成を示す。
【0139】
図25を参照して、学習システム1050は、ウェブテキストアーカイブ262と、ウェブテキストアーカイブ262からトピックワードを抽出するトピックワード抽出部1060と、トピックワード抽出部1060により抽出されたトピックワードを記憶するためのトピックワード記憶部1062とを含む。
【0140】
ここで、トピックワードとは、特に限定さないが、例えば、ウェブテキストアーカイブ262において頻出する名詞であって、出現頻度が上位のN個の単語のことをいう。ただし事前に定めたストップワードはトピックワードとしては採用しない。
【0141】
学習システム1050はさらに、ウェブテキストアーカイブ262に記憶されたウェブテキストと、トピックワード記憶部1062に記憶されたトピックワードとに基づいて、類似度計算モデル1070の学習データを生成するための類似度計算モデル学習データ生成部1064とを含む。この実施形態における類似度計算モデル1070の機能は、文又はパッセージと、他の文又はパッセージとの類似度計算に使用される特徴ベクトルを、各文又は各パッセージについて出力する機能である。そのために必要な類似度計算モデル学習データ生成部1064の構成及び特徴ベクトルの構成については後述する。
【0142】
学習システム1050はさらに、類似度計算モデル学習データ生成部1064の生成する学習データを記憶するための学習データ記憶部1066と、学習データ記憶部1066に記憶された学習データを用いて、類似度計算モデル1070の学習を行うための学習部1068とを含む。
【0143】
図26に、この実施形態において使用する類似度計算モデル1070の学習形態を模式的に示す。
図26を参照して、類似度計算モデル1070の学習には、入力テキストとその入力テキストについて算出される特徴ベクトルとを教師データとして使用する。
【0144】
類似度計算モデル1070はBERT(Bidirectional Encoder Representations from Transformers)として知られる言語モデル1100と、言語モデル1100の出力のうち、先頭の「CLS」に対応する出力を入力として受けるリニア層+ソフトマックス層との組み合わせからなるベクトル出力部1102とを含む。言語モデル1100として使用するBERTは事前学習済であって、後述するような方法によりファインチューニングする。
【0145】
教師データ1104は、先頭と末尾にそれぞれ[CLS]と[SEP]が付加された入力テキストと、その入力テキストについて予め算出された特徴ベクトルとの組み合わせを含む。
【0146】
教師データ1104の特徴ベクトルは以下のようにして生成される。
図25に示すウェブテキストアーカイブ262から、特徴ベクトルの生成対象となる1文を入力文として抽出する。その1文の前後の1文をあわせた3文に出現するトピックワードを特定する。そして、それらトピックワードの数をmとする。このとき、1つのトピックワードが3文の中に複数回種出現しても、そのトピックワードの数は1と考える。
【0147】
特徴ベクトルとして、トピックワード記憶部1062に記憶されたトピックワードの数と同じ数の要素を持つベクトルを用いる。上記3文に出現するトピックワードについては、対応する要素の値を1/m、上記3文に出現しないトピックワードについては要素の値を0とする。こうして得られるベクトルが、上記入力文(1文)の特徴ベクトルである。
【0148】
ウェブテキストアーカイブ262に含まれる各文について、上記した方法により自動的に特徴ベクトルを予め算出できる。
【0149】
図26を参照して、類似度計算モデル1070の学習(ファインチューニング)においては、教師データ1104の入力テキストを言語モデル1100に入力する。類似度計算モデル1070のベクトル出力部1102の出力として出力ベクトル1106が得られる。学習においては、教師データ1104の特徴ベクトルと出力ベクトル1106との間において、以下の式により算出される損失Lの合計を最小とするように類似度計算モデル1070のパラメータの学習を行う。
【0150】
【数1】
ただし、この式において、Nは特徴ベクトルの要素数(トピックワードの数)、g
iは、教師データの特徴ベクトルのi番目の要素の値、p
iは、出力ベクトルのi番目の要素の値を、それぞれ示す。
【0151】
このようなファインチューニングを行うことにより、類似度計算モデル1070は、ある文が入力されると、その文を含む前後3文に出現するトピックワードを予測するようになる。
【0152】
図27に、
図25に示す類似度計算モデル学習データ生成部1064を実現するプログラムの制御構造をフローチャート形式により示す。
図27を参照して、このプログラムは、初期処理を実行するステップ1130と、
図25に示すウェブテキストアーカイブ262内の各テキストについてステップ1134を実行するステップ1132と、ステップ1132が完了したことに応答して終了処理を実行し、このプログラムの実行を終了するステップ1136とを含む。
【0153】
ステップ1134は、処理対象のテキスト内の各文について、ステップ1142を実行するステップ1140を含む。
【0154】
ステップ1142は、処理対象の文について、
図25に示すトピックワード記憶部1062を参照しながら、その前後の文とあわせて、上記した方法により特徴ベクトルを生成するステップ1150と、ステップ1150に続き、対象の文とステップ1150において算出された特徴ベクトルとを組み合わせ、学習データのレコードを生成するステップ1152と、ステップ1152において生成された学習データのレコードを
図25に示す学習データ記憶部1066に保存してステップ1142の実行を終了するステップ1154とを含む。
【0155】
このプログラムを実行することにより、類似度計算モデル1070の学習データが生成できる。
【0156】
このようにして学習が行われた類似度計算モデル1070を用いて、ある文又はパッセージと、ある回答パッセージとの類似度を算出する方法について説明する。なお、以下の説明においては、例として
図20に示すように、応答記憶部838に記憶された仮説のパッセージ(仮説の出力単語列)の一つと、文間意味的関係DB260から読み出されたテキスト対のうちの帰結部との間の類似度を算出する場合について述べる。
【0157】
図28を参照して、出力(帰結部)の単語列1180を類似度計算モデル1070に入力し、類似度計算モデル1070の出力として出力ベクトル1184が得られる。一方、対象となるパッセージの単語列1182を類似度計算モデル1070に入力し、同様に出力ベクトル1186が得られる。出力ベクトル1184と出力ベクトル1186とは同じ次元数のベクトルであり、これらの間のコサイン類似度が算出可能である。算出されたコサイン類似度を帰結部と対象パッセージとの類似度1190とする。対象パッセージの各々について、このコサイン類似度算出部1188が類似度1190の値を算出することにより、類似度が最大となるパッセージが特定できる。
【0158】
第8実施形態、第9実施形態、第10実施形態及び第11実施形態のいずれにおいても、この類似度計算モデル1070を利用して類似度が算出できる。
【0159】
13.コンピュータによる実現
図29は、上記実施形態を実現するコンピュータシステムの1例の外観図である。
図30は、
図29に示すコンピュータシステムのハードウェア構成の1例を示すブロック図である。
【0160】
図29を参照して、このコンピュータシステム1250は、DVD(Digital Versatile Disc)ドライブ1302を有するコンピュータ1270と、いずれもコンピュータ1270に接続された、ユーザと対話するためのキーボード1274、マウス1276、及びモニタ1272とを含む。もちろんこれらはユーザ対話が必要となったときのための構成の一例であって、ユーザ対話に利用できる一般のハードウェア及びソフトウェア(例えばタッチパネル、音声入力、ポインティングデバイス一般)であればどのようなものも利用できる。
【0161】
図30を参照して、コンピュータ1270は、DVDドライブ1302に加えて、CPU(Central Processing Unit)1290と、GPU(Graphics Processing Unit)1292と、CPU1290、GPU1292、DVDドライブ1302に接続されたバス1310と、バス1310に接続され、コンピュータ1270のブートアッププログラムなどを記憶するROM(Read-Only Memory)1296と、バス1310に接続され、プログラムを構成する命令、システムプログラム、及び作業データなどを記憶するRAM(Random Access Memory)1298と、バス1310に接続された不揮発性メモリであるSSD(Solid State Drive)1300とを含む。SSD1300は、CPU1290及びGPU1292が実行するプログラム、並びにCPU1290及びGPU1292が実行するプログラムが使用するデータなどを記憶するためのものである。コンピュータ1270はさらに、他端末との通信を可能とするネットワーク1286への接続を提供するネットワークI/F1308と、USB(Universal Serial Bus)メモリ1284が着脱可能で、USBメモリ1284とコンピュータ1270内の各部との通信を提供するUSBポート1306とを含む。
【0162】
コンピュータ1270はさらに、マイクロフォン1282、スピーカ1280及び図示しないモーションキャプチャ装置とバス1310とに接続され、CPU1290により生成されRAM1298又はSSD1300に保存された音声信号、映像信号及びテキストデータをCPU1290の指示に従って読み出し、アナログ変換及び増幅処理をしてスピーカ1280を駆動したり、マイクロフォン1282からのアナログの音声信号をデジタル化し、RAM1298又はSSD1300の、CPU1290により指定される任意のアドレスに保存したり、モーションキャプチャ装置からのモーションキャプチャ信号を受信しCPU1290により指定されるアドレスに保存したりするための入出力I/F1304を含む。
【0163】
上記実施形態においては、上記した仮説生成システム100、510、590、730、及び770、学習データ生成システム200、250、620、680、810、850、920、970、及び1050、並びにその各構成要素の機能などを実現するためのプログラム、ニューラルネットワークのパラメータ並びにニューラルネットワークプログラムなどは、いずれも例えば
図30に示すSSD1300、RAM1298、DVD1278、又はUSBメモリ1284、若しくはネットワークI/F1308及びネットワーク1286を介して接続された、図示しない外部装置の記憶媒体などに格納される。典型的には、これらのデータ及びパラメータなどは、例えば外部からSSD1300に書込まれ、コンピュータ1270による実行時にはRAM1298にロードされる。
【0164】
このコンピュータシステムを、上記した仮説生成システム100、510、590、730、及び770、学習データ生成システム200、250、620、680、810、850、920、970、及び1050、並びにその各構成要素の機能を実現するよう動作させるためのコンピュータプログラムは、DVDドライブ1302に装着されるDVD1278に記憶され、DVDドライブ1302からSSD1300に転送される。又は、これらのプログラムはUSBメモリ1284に記憶され、USBメモリ1284をUSBポート1306に装着し、プログラムをSSD1300に転送する。又は、このプログラムはネットワーク1286を通じてコンピュータ1270に送信されSSD1300に記憶されてもよい。
【0165】
プログラムは実行のときにRAM1298にロードされる。ニューラルネットワークの訓練及びテストには大量の計算が伴うため、特に数値計算を行う実体であるプログラム部分はスクリプト言語ではなくコンピュータのネイティブなコードからなるオブジェクトプログラムとして本発明の実施形態の各部を実現する方が好ましい。
【0166】
CPU1290は、その内部のプログラムカウンタと呼ばれるレジスタ(図示せず)により示されるアドレスに従ってRAM1298からプログラムを読み出して命令を解釈し、命令の実行に必要なデータを、命令により指定されるアドレスに従ってRAM1298、SSD1300又はそれ以外の機器から読み出して、命令により指定される処理を実行する。CPU1290は、実行結果のデータを、RAM1298、SSD1300、CPU1290内のレジスタなど、プログラムにより指定されるアドレスに格納する。このとき、プログラムカウンタの値もプログラムによって更新される。コンピュータプログラムは、DVD1278から、USBメモリ1284から、又はネットワークを介して、RAM1298に直接にロードしてもよい。なお、CPU1290が実行するプログラムの中で、一部のタスク(主として数値計算)については、プログラムに含まれる命令により、又はCPU1290による命令実行時の解析結果に従って、GPU1292にディスパッチされる。
【0167】
コンピュータ1270との協働により上記した実施形態に係る各部の機能を実現するプログラムは、それら機能を実現するようコンピュータ1270を動作させるように記述され配列された複数の命令を含む。この命令を実行するのに必要な基本的機能のいくつかはコンピュータ1270上において動作するオペレーティングシステム(OS)若しくはサードパーティのプログラム、又はコンピュータ1270にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令の中で、所望の結果が得られるように制御されたやり方により適切な機能又は「プログラミング・ツール・キット」の機能を静的にリンクすることで、又はプログラムの実行時に動的にそれら機能に動的リンクことにより、上記した各装置及びその構成要素としての動作を実行する命令のみを含んでいればよい。そのためのコンピュータ1270の動作方法は周知であるので、ここでは繰返さない。
【0168】
なお、GPU1292は並列処理を行うことが可能であり、機械学習に伴う多量の計算を同時並列的又はパイプライン的に実行できる。例えばプログラムのコンパイル時にプログラム中において発見された並列的計算要素、又はプログラムの実行時に発見された並列的計算要素は、随時、CPU1290からGPU1292にディスパッチされ、実行され、その結果が直接に、又はRAM1298の所定アドレスを介してCPU1290に返され、プログラム中の所定の変数に代入される。
【0169】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【0170】
100、510、590、730、770 仮説生成システム
110 入力テキスト
112 キーワード
114、470、490、520、570、692 関連テキスト作成部
116、572 関連テキスト記憶部
122、452、524、604、782、826、866、936、986 仮説生成ニューラルネットワーク
126、526、606、784 仮説連続生成制御部
140、220、560、834、870 質問生成部
144、210 大規模コーパス
146、836、872 質問応答部
148、342、474、492、540、1022、1024 関連テキスト
200、250、440、620、680、810、850、920、970 学習データ生成システム
212 質問文+前文脈抽出部
214、264、450、630、696、820、860、930、980 学習データ生成部
260 文間意味的関係DB
268、824、864、934、984、1068 学習部
304 文間意味的関係知識
370 文間意味的関係タイプ
1070 類似度計算モデル
1100 言語モデル
1188 コサイン類似度算出部