JP2018028752A - 対話システム及びそのためのコンピュータプログラム - Google Patents

対話システム及びそのためのコンピュータプログラム Download PDF

Info

Publication number
JP2018028752A
JP2018028752A JP2016159505A JP2016159505A JP2018028752A JP 2018028752 A JP2018028752 A JP 2018028752A JP 2016159505 A JP2016159505 A JP 2016159505A JP 2016159505 A JP2016159505 A JP 2016159505A JP 2018028752 A JP2018028752 A JP 2018028752A
Authority
JP
Japan
Prior art keywords
question
utterance
unit
sentence
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016159505A
Other languages
English (en)
Other versions
JP6819990B2 (ja
Inventor
阿部 憲幸
Noriyuki Abe
憲幸 阿部
可奈子 大西
Kanako Onishi
可奈子 大西
健太郎 鳥澤
Kentaro Torisawa
健太郎 鳥澤
カナサイ クルンカライ
Canasai Kruengkrai
カナサイ クルンカライ
鍾勲 呉
Jong Hoon Oh
鍾勲 呉
龍 飯田
Ryu Iida
龍 飯田
豊 木俵
Yutaka Kidawara
豊 木俵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Information and Communications Technology
Original Assignee
National Institute of Information and Communications Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Institute of Information and Communications Technology filed Critical National Institute of Information and Communications Technology
Priority to JP2016159505A priority Critical patent/JP6819990B2/ja
Priority to KR1020197001187A priority patent/KR102388042B1/ko
Priority to PCT/JP2017/027011 priority patent/WO2018034118A1/ja
Priority to US16/321,988 priority patent/US10936664B2/en
Priority to CN201780043642.1A priority patent/CN109478188A/zh
Publication of JP2018028752A publication Critical patent/JP2018028752A/ja
Application granted granted Critical
Publication of JP6819990B2 publication Critical patent/JP6819990B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】トピックにかかわらずユーザとの自然な対話を行うことができる対話システムを提供する。
【解決手段】対話システム30は、ユーザからの入力文100を受け、係り受け関係を用いて入力文100に含まれる表現を用いた質問を生成する質問生成部120と、質問生成部120により生成された質問を質問・応答システム104に入力し、当該質問に対する回答を質問・応答システム104から取得する回答取得部122と、回答取得部122が取得した回答に基づいて、入力文100に対する出力文106を生成する発話生成部124とを含む。
【選択図】図1

Description

この発明はユーザとの間で対話を行う対話システムに関し、特に、自然な対話を可能にする対話システムに関する。
コンピュータがユーザと対話するシステムに関しては、これまでも多くの試みがなされている。最も簡単なものは、予め対話のルールを決めたスクリプトを準備しておき、コンピュータがこのスクリプトに沿って発話を行うというものである。スクリプトの中には、いずれかの単語で置換される変数が含まれており、ユーザの発話を音声認識して、そこから何らかの単語を抽出してこの変数を置換することにより応答する。すぐ分かるように、このような対話システムはスクリプトの数が制限されることにより、応答のパターンも制約を受ける。対話において生じうる場合の数は無限であるから、こうしたシステムで自然な対話を行うことは不可能である。
また、多くの対話データ中の文の係り受けを解析し、その結果を利用するものもある。例えばある文を解析した結果、「今日ゲーム機買ったのでマルコカーゴをやる」(「マルコカーゴ」はゲームの名前とする。)という文から「(今日)ゲーム機買った」と「マルコカーゴをやる」との組み合わせを抽出し、パターンとして記憶しておく。対話時、ユーザ発話の中に「今日ゲーム機買った」という表現が出てきたら、その表現に対応付けられていた「マルコカーゴをやる」という表現を抽出し、語尾変換して例えば「マルコカーゴがやれるね」というシステム発話を生成する。
さらに別の取り組みでは、ユーザの発話からキーワードを抽出し、キーワード検索を行ってその結果をシステム発話の生成に用いるものがある。例えばユーザ発話が「今日ゲーム機買う」というものであれば「ゲーム機」と「買う」をキーワードにしてウェブを検索し、複数個の文書を集め、その中でキーワードと近接して出現した単語(例えば「マルコカーゴ」)を抽出する。この単語を、予め準備したテンプレートに当てはめてシステム発話を生成する。
しかしこうしたものはいずれも、ユーザ発話又はウェブ上の文の係り受けの意味的関係(原因、結果、並列等)を正しく理解できていないという問題がある。そのため、不適切なシステム発話を生成してしまうことがある。例えば、「アキバ行ってゲーム機買ってラーメンを食べる。」という発話が例としてあったものとする。この発話から、「ゲーム機買う」という表現と「ラーメンを食べる」という表現とが抽出され、両者が一応は関係付けられる。しかし、対話時、「今日ゲーム機買う」というユーザ発話に対してこの関係のみに基づいて「ラーメンを食べられるね」というシステム発話を生成したら、通常は理解不可能であり、自然な対話を維持できない。
キーワード検索を用いる場合には、検索結果の文書が含む単語の語彙が大きすぎるため、検索結果には不要な情報が多く、本来欲しい情報を抽出することが困難である。またユーザ発話に含まれるキーワードに基づく検索結果を利用するので、システム側の発話意図(例えばユーザに情報を与えたいのか、感想を言いたいのか、共感したいのか、等)を制御することは不可能である。
こうした問題を解決するための提案が後掲の特許文献1においてなされている。特許文献1に記載の音声対話システムは、ユーザの発話を認識する音声認識装置と、この発話の意図を理解し、特定のドメインにおけるどのような情報を知りたがっているのかを理解するために、予め学習済の意図理解モデル及び問題解決知識を用いて発話の意図を理解するための意図理解部と、この意図に対応した応答文を生成するために、応答のための情報を情報源から取得するための対話管理部とを含む。特許文献1は、この情報源としてインターネット上の特定のウェブサイトと、様々な映画に関する人々の感想を保存している感想データベースとを挙げており、発話者の意図に応じて何れか一方を選択するとしている。例えば、ユーザの発話が、映画の監督を知りたいというものであればウェブサイトでその映画の監督を検索する。ユーザの発話が、映画の感想を知りたいというものであれば、感想ベータベースを検索してその映画に関する他人の感想を取り出す。
特許文献1に記載の音声対話システムはさらに、様々な意図が入力されたときにどのようなやり取りをすべきかという対話の流れを記述した対話シナリオを含む。
このシステムはさらに、対話管理部が情報源から取得した情報を用いて、発話者の発話に対する応答文を生成する応答文生成部と、応答文生成部が生成した応答文を音声合成して音声信号を生成する音声合成部と、この音声信号を音声に変換するスピーカとを含む。
特開2016-99381号公報(図2)
上記した特許文献1に記載のシステムは、ユーザに対する回答を広い範囲から収集するものの、その範囲は特定のドメイン(例えば映画)に限定される。しかも相手の発話が質問でしかもその意図が容易に判定できる場合には意味のある応答を生成することができる可能性があるが、そうでない場合にはどのような応答がなされるか、全く予測がつかないという問題がある。そもそも、ユーザが質問しか発することができないような対話はとても自然なものとは言えない。そのために、このシステムではユーザとの自然な対話を行うことは不可能である。
したがって、本発明の目的は、発話のトピックにかかわらず、ユーザの発話に基づいてユーザとの自然な対話を行うことができる対話システムを提供することである。
本発明の第1の局面に係る対話システムは、ユーザからの入力発話を受け、当該入力発話に含まれる表現を用いて、質問・応答システムを利用するためのパラメータを生成するパラメータ生成手段と、パラメータ生成手段により生成されたパラメータを質問・応答システムに入力し、当該パラメータに対する回答を取得する回答取得手段と、回答取得手段が取得した回答に基づいて、入力発話に対する応答を生成する応答生成手段とを含む。
好ましくは、パラメータ生成手段は、入力発話に対する形態素解析及び構文解析を行う発話解析手段と、発話解析手段により解析された結果から、入力発話の主題を推定する主題推定手段と、主題推定手段により推定された主題に基づいて、当該主題を構成する部分表現を含むファクトイド型質問を生成するファクトイド型質問生成手段とを含む。
より好ましくは、パラメータ生成手段は、発話解析手段により解析された結果から、入力発話を代表する部分表現を特定する部分表現特定手段と、部分表現特定手段により特定された部分表現に基づいて、ノン・ファクトイド型質問を生成するノン・ファクトイド型質問生成手段とを含む。
さらに好ましくは、応答生成手段は、回答に対して予め準備された発話生成規則を適用することにより、発話候補を生成する発話候補生成手段と、発話候補を予め準備された発話整形規則にしたがって整形して入力発話に対する応答を生成する発話整形手段とを含んでもよい。
さらに好ましくは、質問・応答システムは、1つのパラメータに対して複数個の回答を出力し、応答生成手段は、複数個の回答の各々に対して予め準備された発話生成規則を適用することにより、複数個の発話候補を生成する発話候補生成手段と、複数個の発話候補のいずれかを選択し、予め準備された発話整形規則にしたがって整形して入力発話に対する応答を生成する発話整形手段とを含む。
応答生成手段は、質問に対する回答が与えられると、当該回答から発話を生成するよう予め学習した発話生成モデルと、発話生成モデルが生成した発話を、予め準備された発話整形規則にしたがって整形して入力発話に対する応答を生成する発話整形手段とを含んでもよい。
質問・応答システムは、1つのパラメータに対して複数個の回答を出力し、応答生成手段は、質問に対する回答が与えられると、当該回答から発話を生成するよう予め学習した発話生成モデルと、発話生成モデルが複数個の回答の各々に対して生成した発話のいずれかを選択し、予め準備された発話整形規則にしたがって整形して入力発話に対する応答を生成する発話整形手段とを含んでもよい。
本発明の第2の局面に係るコンピュータプログラムは、コンピュータを、上記したいずれかの対話システムとして機能させる。
本発明の第1の実施の形態に係る対話システムの全体構成を示すブロック図である。 第1の実施の形態に係る対話システムの入力文・応答文ペア収集部の概略構成を示すブロック図である。 第1の実施の形態に係る対話システムのなに型質問・対話学習コーパス構築部の概略構成を示すブロック図である。 第1の実施の形態に係る対話システムのパターン照合部の概略構成を示すブロック図である。 第1の実施の形態に係る対話システムのなぜ型質問・対話学習コーパス構築部の概略構成を示すブロック図である。 第1の実施の形態に係る対話システムの質問生成部の概略構成を示すブロック図である。 第1の実施の形態に係る対話システムの発話生成部の概略構成を示すブロック図である。 第2の実施の形態に係る対話システムの質問生成部の概略構成を示すブロック図である。 第2の実施の形態に係る対話システムの発話生成部の概略構成を示すブロック図である。 第3の実施の形態に係る対話システムの発話生成部の概略構成を示すブロック図である。 第4の実施の形態に係る対話システムの全体構成を示すブロック図である。 本発明の各実施の形態に係る対話システムを実現するためのコンピュータシステムの外観図である。 図12に外観を示すコンピュータシステムの内部構成を示すブロック図である。
以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。なお、以下の実施の形態では、ファクトイド型の質問としてなに型質問を扱い、ノン・ファクトイド型の質問としてなぜ型質問を扱う。しかし本発明はそのような実施の形態には限定されない。例えばファクトイド型の質問は事実について問う質問(例えば「誰」、「いつ」、「どこ」等を伴う質問)であればどのようなタイプでもよい。ノン・ファクトイド型の質問としては、なぜ型以外に「どうなる」型、「どうやって」型等の質問を扱うようにしてもよい。
[第1の実施の形態]
<構成>
図1を参照して、本発明の第1の実施の形態に係る対話システム30は、インターネット70に接続され、なに型質問生成モデル82及びなぜ型質問生成モデル92のトレーニングを行うための質問生成モデル構築部50と、ユーザからの入力文100から、なに型質問生成モデル82及びなぜ型質問生成モデル92を用いて一連の質問を生成して質問・応答システム104からのその応答を受信し、その応答を用いて入力文100に対する出力文106を生成し出力する対話装置102とを含む。
〈質問生成モデル構築部50〉
質問生成モデル構築部50は、インターネット70に接続され、インターネット70上のウェブ及びSNS等で多数のユーザが行う対話から、ある文(これを「入力文」と呼ぶ。)と、入力文に対する応答文とからなるペア(入力文・応答文ペア)を大量に収集するための入力文・応答文ペア収集部72と、入力文・応答文ペア収集部72が収集した大量の入力文・応答文ペアを記憶する入力文・応答文ペア記憶部74とを含む。
質問生成モデル構築部50はさらに、入力文・応答文ペア記憶部74に記憶された大量の入力文・応答文ペアに基づいて、なに型質問・対話学習コーパス78を構築するためのなに型質問・対話学習コーパス構築部76と、なに型質問・対話学習コーパス78を用いてなに型質問生成モデル82をトレーニングするためのなに型質問生成モデルトレーニング部80とを含む。
質問生成モデル構築部50はさらに、入力文・応答文ペア記憶部74に記憶された大量の入力文・応答文ペアに基づいて、なぜ型質問・対話学習コーパス88を構築するためのなぜ型質問・対話学習コーパス構築部86と、なぜ型質問・対話学習コーパス構築部86を用いてなぜ型質問生成モデル92をトレーニングするためのなぜ型質問生成モデルトレーニング部90とを含む。
《入力文・応答文ペア収集部72》
図2を参照して、入力文・応答文ペア収集部72は、インターネット70から入力文・応答文ペアの候補(候補文ペア)を大量に収集するための候補文ペア収集部130と、候補文ペア収集部130が収集した候補文ペアのうち、応答文の長さが所定長以下のもののみを入力文・応答文ペアとして採用しそれ以外の候補文ペアを破棄するための長さ検査部132と、長さ検査部132により採用された入力文・応答文ペアの各々の文の形態素解析を行う形態素解析部134と、各々の文の構文解析を行って、品詞情報及び構文情報が付された入力文・応答文ペアを入力文・応答文ペア記憶部74に格納するための構文解析部136とを含む。本実施の形態では、長さ検査部132は、応答文に含まれる単語数が15未満の入力文・応答文ペアのみを採用する。
《なに型質問・対話学習コーパス構築部76》
図3を参照して、なに型質問・対話学習コーパス構築部76は、「プレイする」が「遊ぶ」を含意する、というような、述語の間の含意関係又は同義語関係を示す情報を記憶した含意関係辞書140と、「AでBをプレイする。」のように、2つの変数(A、B)と述部からなる表現であるバイナリパターンと、実際のコーパスでこのバイナリパターンと共起する、変数A及びBに相当する単語のペアとからなる組み合わせ(これを「バイナリトリブル」と呼ぶ。)を多数記憶したバイナリパターン辞書142と、入力文・応答文ペア記憶部74から読出した入力文・応答文ペアの各々について、入力文に含まれる単語と応答文に含まれる単語との組み合わせに対し、バイナリパターン辞書142にその組み合わせと一致する単語の組み合わせを含むバイナリトリプルが存在するか否かを判定し、もし存在すれば、その入力文・応答文ペアと、一致したバイナリトリプルとを採用し、存在しなければ何もしない(破棄する)パターン照合部150とを含む。
例えば、入力文が「ゲーム機かったよ」であり、応答文が「マルコカーゴできるね」というものであった場合を考える。バイナリトリプルの中にバイナリパターン=「AでBができるね」、A=「ゲーム機」、B=「マルコカーゴ」というものがあった場合、この入力文と応答文の組み合わせは採用される。バイナリトリプルも一緒に出力される。もしなければ入力文と応答文との組み合わせは破棄される。なお、バイナリパターン辞書は、質問・対話学習コーパスとは別のコーパスから作成される。
なに型質問・対話学習コーパス構築部76はさらに、含意関係辞書140及びバイナリパターン辞書142を用い、パターン照合部150から出力される各候補文ペアのうち、ノイズである可能性が高いペアを破棄し、それ以外のペアのみを採用し出力するクリーニング部152と、クリーニング部152により採用された入力文・応答文ペアに基づいて、質問生成規則記憶部146に記憶されている質問生成規則を参照して質問文を生成する質問文生成部154と、質問文生成部154により生成された質問文の各々について、付属する情報とともにコーパスに追加すべきレコードを作成するレコード作成部156と、レコード作成部156により作成されたレコードをなに型質問・対話学習コーパス78に追加するコーパス追加部158とを含む。
レコード作成部156が作成するレコードの形式は、例えばテーブル1の様なものである。なに型質問・対話学習コーパス78にもこの形式で各レコードが記憶される。
図4を参照して、図3に示すクリーニング部152は、入力文・応答文ペア記憶部74から読み出した各入力文・応答文ペアのうち、応答文に含まれる単語が15個以上のものを破棄し、残りを採用する長さ検査部132と、長さ検査部132が採用した入力文・応答文ペアのうち、応答文に含まれる述語を抽出する述語抽出部170と、述語抽出部170により抽出された述語とバイナリパターン辞書142に含まれる各バイナリパターン中の述語とを、含意関係辞書140を参照して含意関係・同義語関係も含めてマッチングする述語マッチング部172と、述語マッチング部172によりバイナリパターン辞書142にマッチするバイナリパターンが発見された場合に、処理中の入力文・応答文ペアと、そのペアから抽出された述語と、マッチされたバイナリパターンにしたがって入力文・応答文ペアから選択された1組の単語とからなるパターンを学習用のペアとして選択し質問文生成部154に与えるペア選択部174とを含む。ここでは、バイナリパターン辞書142に一つでもマッチするものがあればそのペアを採用することとする。
ここで「マッチする」とは次のようなことをいう。バイナリパターンが「AでBをプレイする」というものである場合を考える。このバイナリパターンは、「Bをプレイする」という、1つの変数と1つの述語との組み合わせを含む。この変数Bを、対応する変数(例えば「ゲーム」)で置換することにより、「ゲームをプレイする」という、1つの単語と1つの述語との組み合わせができる。これを「バイナリパターンから生成されるユナリフレーズ」又は単に「ユナリフレーズ」と呼ぶ。入力文・応答文ペアのうち、応答文がこのユナリフレーズを含む場合、その応答文はこのユナリフレーズのもとになったバイナリパターンとマッチする、という。述語部分を含意関係又は同義関係を持つ単語で置換したユナリパターンを応答文が持つ場合も同様である。
《なぜ型質問・対話学習コーパス構築部86》
図5を参照して、なぜ型質問・対話学習コーパス構築部86は、入力文・応答文ペア記憶部74から入力文・応答文ペアを読出し、入力文から、そのペアの主題を代表する部分表現を、係り受け情報等を参考にして抽出する部分表現抽出部190と、部分表現抽出部190により抽出された部分表現に対して所定の変形を施すことにより質問文を生成する質問文生成部192とを含む。質問文生成部192が行う変形は、例えば「なぜ」「どうなる」「どうやって」等の表現を部分表現に付加することにより行う。
なぜ型質問・対話学習コーパス構築部86はさらに、質問・回答システム196と、質問文生成部192により生成された質問文を質問・回答システム196に与えることにより、質問・回答システム196から回答を取得する回答取得部194と、質問・回答システム196に与えた質問文と質問・回答システム196からの回答文とが一定量以上の共通の単語を含むときに、処理対象の入力文・応答文ペアを選択し、それ以外の入力文・応答文ペアを破棄するペア選択部198と、ペア選択部198により選択された入力文・応答文ペアから、なぜ型質問・対話学習コーパス88に格納すべきレコードを作成するレコード作成部200と、レコード作成部200により作成されたレコードをなぜ型質問・対話学習コーパス88を構成するデータベースに追加するコーパス追加部202とを含む。
なぜ型質問・対話学習コーパス88のレコード構成は本実施の形態ではテーブル2の様なものである
〈対話装置102〉
《質問生成部120》
図6を参照して、図1に示す対話装置102の質問生成部120は、入力文100に対して形態素解析を行う形態素解析部230と、形態素解析部230により形態素解析された入力文100に対して構文解析を行い、構文解析情報を付して出力する構文解析部232とを含む。
質問生成部120はさらに、構文解析部232により構文解析情報が付された入力文100から、なに型質問用の素性を抽出するためのなに型質問用素性抽出部234と、なに型質問用素性抽出部234により抽出された素性からなる素性ベクトルをなに型質問生成モデル82に入力することによりなに型質問生成モデル82から出力される質問の仮説と尤度情報に基づいてなに型質問を生成するなに型質問生成部236と、入力文100からなぜ型質問用の素性を抽出するためのなぜ型質問用素性抽出部240と、なぜ型質問用素性抽出部240から抽出された素性からなる素性ベクトルをなぜ型質問生成モデル92に入力することによりなぜ型質問生成モデル92から出力される質問の仮説と尤度情報に基づいてなぜ型質問を生成するなぜ型質問生成部242と、なに型質問生成部236により生成されるなに型質問と、なぜ型質問生成部242により生成されるなぜ型質問とを記憶するための質問記憶部244とを含む。
《発話生成部124》
図7を参照して、図1に示す対話装置102の発話生成部124は、質問文から発話候補を生成するための複数個の規則を予め記憶した発話生成規則記憶部262と、回答取得部122から与えられる回答に対し、発話生成規則記憶部262に記憶されている発話生成規則を適用して複数個の発話候補を生成する発話候補生成部260と、発話候補生成部260が生成した発話候補を記憶する発話候補記憶部264と、発話候補記憶部264に記憶されている発話候補を何らかの基準にしたがってスコア付けし、ランク付けするためのランキング部266と、ランキング部266により最も高くランク付けされた発話候補を選択する発話選択部268と、発話選択部268により選択された発話を、対話に適した口語的表現等を加えることにより整形し出力文106を生成するための発話整形部270とを含む。発話整形部270による整形は、例えば語尾に「だよ!」とか「だね!」とかいうような、口語的な語尾を付加することである。
ランキング部266によるランキングは、例えば以下のようにして行われる。質問・応答システム104から回答取得部122に送られてくる応答には、その応答が質問に対してどの程度適切なものかを示すスコアが付けられている。一方、図7に示す発話生成規則記憶部262に記憶されている発話生成規則には予めそれらの重要度が重みとして与えられている。ランキング部266は、基本的には両者の積に基づいてランク付けを行う。なお、図示していないが、言語モデルを用いることにより、発話候補の各々について発話の自然さをスコア付し、これをさらに用いてランク付けしても良い。
[動作]
上記した対話システム30は以下のように動作する。対話システム30は、大きく分けて学習フェーズとサービスフェーズとの2つの動作フェーズを持つ。
〈学習フェーズ〉
学習フェーズでは、なに型質問生成モデル82及びなぜ型質問生成モデル92の学習について説明する。
図1に示される質問生成モデル構築部50は以下のように動作する。図2を参照して、入力文・応答文ペア収集部72の候補文ペア収集部130は、インターネット70上の様々なウェブサイト(特に投稿とそれに対する応答が主要な内容となっているサイト)を巡回し、入力文とそれに対する応答文とからなる候補文のペアを収集する。収集された候補文のペアは形態素解析部134に与えられる。
形態素解析部134は、与えられた候補ペアの内の入力文と応答文との双方について形態素解析を行い、得られた形態素列を構文解析部136に与える。構文解析部136は、各ペアに含まれる入力文と応答文との双方の形態素列に対して構文解析を行い、構文解析結果を付したペアを入力文・応答文ペア記憶部74に格納する。
図3を参照して、なに型質問・対話学習コーパス構築部76のパターン照合部150が、入力文・応答文ペア記憶部74から読み出された候補文ペアの入力文及び応答文の各々に存在する単語を抽出し、バイナリパターン辞書142に記憶されたバイナリペアのうちに、抽出された単語の組み合わせと一致するものがあるか否かを判定する。もしあれば、パターン照合部150は、その候補文ペアを、一致したバイナリペアに対応するバイナリパターンとともにクリーニング部152に与える。もしそのようなバイナリペアがなければ、バイナリパターン辞書142はその候補文ペアに対しては何もしない(破棄する)。
図4を参照して、長さ検査部132が、候補文ペアのうち応答文の長さが15単語以上か否かを判定する。長さ検査部132は、応答文が15単語以上である候補文ペアは破棄し、15単語未満のものは質問文生成部154に与える。述語抽出部170が、バイナリパターン辞書142から与えられる入力文・応答文ペアのうち、応答文に含まれる述語を抽出して述語マッチング部172に与える。述語マッチング部172はこの述語と一致する述語を含むバイナリパターンをバイナリパターン辞書142内で検索する。述語マッチング部172はこのとき、抽出された述語だけではなく、含意関係辞書140を参照して、抽出された述語と含意関係にある単語(含意関係の上下は問わない。)、又は同義関係にある単語についてもバイナリパターン辞書142内で該当するバイナリパターンを検索する。
述語マッチング部172は、該当するバイナリパターンがあればその結果を、なければ該当するバイナリパターンがなかったことを示す結果をペア選択部174に与える。ペア選択部174は、該当するバイナリパターンがあった場合にはその入力文・応答文ペアを質問文生成部154に与え、なかった場合には何もしない(破棄する)。
パターン照合部150及びクリーニング部152によるこのような処理により、なに型質問・対話学習コーパス78の学習を行うためのコーパスがノイジーになることを避けることができる。もちろん、学習データに対するこのようなクリーニング処理を行わなくても良い。
図3を参照して、質問文生成部154は、クリーニング部152から入力文・応答文ペアを受け取ると、質問生成規則記憶部146に記憶されている質問生成規則のうち、適用可能なものを適用して質問文を作成する。このとき、複数個の質問文が作成されてもよい。バイナリパターンは単純なパターンであるため、質問生成規則は比較的簡単なものでよい。例えば「AでBをプレイする。」というバイナリパターンの場合には、「Aで何をプレイするの?」「何でBをプレイするの?」のように変数の一部を疑問詞に置き換え、必要であればさらに文の末尾を疑問文らしく変形すればよい。
レコード作成部156は、入力文・応答文ペアを構成する入力文と応答文、バイナリペア、入力文・応答文ペアの内で、バイナリペアの変数に相当する単語のペア、質問文、及び質問のタイプをまとめて所定の形式のレコードを作成しコーパス追加部158に与える。コーパス追加部158は、このレコードをなに型質問・対話学習コーパス78に追加する。
図1に示すなに型質問生成モデルトレーニング部80は、このなに型質問・対話学習コーパス78に記憶されている多数のレコードからなに型質問生成モデル82をトレーニングするための学習データを作成し、なに型質問生成モデル82をトレーニングする。このトレーニングは、入力文が与えられると質問文の仮説とその尤度情報を生成するような統計的モデルとしてなに型質問生成モデル82をトレーニングするために行われる。この学習でどのような素性を用いるかについてはここでは詳細には述べないが、このモデルは基本的には入力文をソース言語、質問文をターゲット言語とする翻訳モデルと考えることができる。したがって、機械翻訳における翻訳モデルと同様の素性を用い、同じ技術を適用してトレーニングできる。もちろんこの場合、言語モデル等、通常の翻訳で使用するものと同様のモデルを、入力文と質問文との双方について別々に作成する必要があるが、図を見やすくするためにここではそれらについては図示はしていない。なお、このモデルは機械翻訳と同様の仕組みでトレーニングできるが、ソース言語とターゲット言語とが同じ言語なので、このモデルを用いて質問文を生成する場合には、入力文の部分表現(単語、単語列、述語等)が質問文にも出現することが通常である。このような性質は、なに型質問生成モデル82だけではなく、他のモデルであって、ソース言語とターゲット言語とが同一であるモデルには共通して現れる。
図5を参照して、図1に示すなぜ型質問・対話学習コーパス構築部86は以下のように動作する。部分表現抽出部190は、入力文・応答文ペア記憶部74から入力文・応答文ペアを1つずつ読み出し、入力文から、そのペアの主題を表す部分を係り受け関係を用いて抽出し、質問文生成部192に与える。質問文生成部192は、部分表現抽出部190により抽出された部分表現に対して所定の変形を施すことにより質問文を生成する。質問文生成部192が行う変形は、例えば「なぜ」「どうなる」「どうやって」等の表現を部分表現に付加することにより行われる。
さらに、回答取得部194が、質問文生成部192により生成された質問文を質問・回答システム196に与えることにより、質問・回答システム196から回答を取得しペア選択部198に与える。ペア選択部198は質問・回答システム196に与えた質問文と質問・回答システム196からの回答文とが一定量以上の共通の単語を含むときに、処理対象の入力文・応答文ペアを選択する。ペア選択部198は、それ以外の入力文・応答文ペアについては何もしない(破棄する)。レコード作成部200は、図3に示すなに型質問・対話学習コーパス構築部76のレコード作成部156と同様、ペア選択部198により選択された入力文・応答文ペアから、なぜ型質問・対話学習コーパス88に格納すべきレコードを作成する。コーパス追加部202は、レコード作成部200により作成されたレコードをなぜ型質問・対話学習コーパス88を構成するデータベースに追加する。
なぜ型質問・対話学習コーパス88が完成すると、なぜ型質問生成モデルトレーニング部90がこのなぜ型質問・対話学習コーパス88を用いてなぜ型質問生成モデル92のトレーニングを行う。なぜ型質問生成モデル92は、入力文が与えられるとその入力文に対するなぜ型の質問の仮説とその尤度情報を出力するような統計的モデルである。したがってなぜ型質問生成モデルトレーニング部90は、入力としてなぜ型質問・対話学習コーパス88の各入力文を用い、教師データとしてなぜ型質問・対話学習コーパス88の質問文を用いてなぜ型質問生成モデル92の学習を行う。このモデルも、基本的には、入力文をソース言語とし、質問文をターゲット言語とした翻訳モデルと考えられる。翻訳の際に必要となる言語モデルも入力文と質問文との双方に必要となるが、ここでは説明を簡略にするために図示していない。
なに型質問生成モデル82及びなぜ型質問生成モデル92のトレーニングが完了すると、対話装置102による対話動作が可能になる。
なお、これ以外のモデルについても、いずれも統計的モデルであり、上と同様にしてトレーニングを行うことができる。トレーニングにおける素性としてどのようなものを用いるかが問題となるが、通常の自然言語処理にしたがって、単語nグラム、品詞nグラム、構文解析木のパス上の単語nグラム又は品詞nグラム等を用いることが考えられる。教師データとしては、通常は人手で正解を与える。もちろん、教師データに相当するデータを推定できるプログラムツールがあれば、それらを用いてトレーニングデータを充実させることが可能である。
〈対話装置102による対話〉
図6を参照して、ユーザから入力文100が与えられると、質問生成部120の形態素解析部230はこの入力文100に対する形態素解析を行う。構文解析部232が形態素解析部230の出力する形態素列に基づいて構文解析を行い、その結果をなに型質問用素性抽出部234となぜ型質問用素性抽出部240に与える。
なに型質問用素性抽出部234は構文解析部232により構文解析情報が付された入力文100から、なに型質問用の素性を抽出する。なに型質問生成部236は、なに型質問用素性抽出部234により抽出された素性からなる素性ベクトルをなに型質問生成モデル82に入力することによりなに型質問生成モデル82から出力される質問の仮説と尤度情報に基づいてなに型質問を生成する。これと並行して、なぜ型質問用素性抽出部240は、入力文100からなぜ型質問用の素性を抽出する。なぜ型質問生成部242は、なぜ型質問用素性抽出部240から抽出された素性からなる素性ベクトルをなぜ型質問生成モデル92に入力することによりなぜ型質問生成モデル92から出力される質問の仮説と尤度情報に基づいてなぜ型質問を生成する。質問記憶部244は、なに型質問生成部236により生成されるなに型質問と、なぜ型質問生成部242により生成されるなぜ型質問とをともに記憶する。
図7を参照して、発話生成部124の発話生成規則記憶部262には、質問文から発話候補を生成するための複数個の規則が予め記憶されている。発話候補生成部260は、回答取得部122から与えられる回答に対し、発話生成規則記憶部262に記憶されている発話生成規則を適用して複数個の発話候補を生成する。発話候補記憶部264は、発話候補生成部260が生成した発話候補を記憶する。ランキング部266は、発話候補記憶部264に記憶されている発話候補を何らかの基準にしたがってランク付けする。発話選択部268は、ランキング部266により最も高くランク付けされた発話候補を選択する。発話整形部270は、発話選択部268により選択された発話に、対話に適した口語的表現等を加えることにより整形し出力文106を生成する。
以上のように本実施の形態によれば、単に入力文に関連すると思われる情報から出力文を生成するのではない。入力文から一旦質問文を生成して質問・応答システムに与えてその回答を得る。この質問は、ユーザ発話から不要な情報を除去して生成したものであり、かつウェブ上で頻繁に見られる情報に基づくもので、入力文におけるユーザの発話意図を明確に表している。質問・応答システムは、この質問に対し適切な関係を持つ回答を出力する。この回答を用いて、ユーザ発話に対する出力文が生成される。質問を生成することによってユーザ発話とシステム発話との関係が適切に捉えられ、対話の流れを適切に制御することができる。
[第2の実施の形態]
第1の実施の形態では、質問生成は質問生成規則によって行われている。質問生成は、比較的規則化し易いため、このように質問生成規則を用いることも可能である。しかし本発明は質問生成規則を用いる第1の実施の形態には限定されない。質問生成を規則ではなく統計的モデルによって行っても良い。第2の実施の形態はそのような構成を持つ。なお、この第2の実施の形態においては、図6に示す質問生成部120に代えて図8に示す質問生成部300を用い、図7に示す発話生成部124に代えて図9に示す発話生成部350を用いる。その他の点では第2の実施の形態は第1の実施の形態の各部と同様である。
図8を参照して、この質問生成部300は、入力文100を受けるように接続された形態素解析部230と、形態素解析部230の出力を受けるように接続された構文解析部232とを含む。質問生成部300はさらに、予め統計的に学習をしている主題推定用モデル310と、構文解析部232から出力される構文解析情報が付された入力文100から所定の素性ベクトルを生成し、主題推定用モデル310を参照して入力文100の主題を推定するための主題推定部312と、対話の主題が与えられると、その主題に基づいてなに型質問の仮説をそれらの尤度情報とともに出力するよう予めトレーニング済のなに型質問生成用モデル316と、主題推定部312の出力する主題から素性を抽出し、なに型質問生成用モデル316を用いてなに型質問を生成するためのなに型質問生成部314とを含む。
質問生成部300はさらに、構文解析情報が付された入力文100から得られた所定の素性ベクトルが与えられると、入力文100の中に含まれるユナリフレーズを部分表現の仮説とその尤度情報とを出力するように予めトレーニング済の部分表現推定用モデル320と、構文解析部232から出力される、構文解析情報が付された入力文100から所定の素性を抽出し素性ベクトルとして部分表現推定用モデル320に与え、その出力する部分表現仮説とその尤度情報に基づいて入力文100内の部分表現を特定するための部分表現特定部322とを含む。
質問生成部300はさらに、部分表現から抽出した所定の素性が与えられると、その部分表現に基づいて適切ななぜ型質問を生成するための質問仮説とそれらの尤度情報を出力するよう予めトレーニング済のなぜ型質問生成用モデル326と、部分表現特定部322により特定された部分表現から素性を抽出しなぜ型質問生成用モデル326に与えて、その出力に基づいて、入力文100に応じて対話を適切に制御するためのなぜ型質問を生成するためのなぜ型質問生成部324と、なに型質問生成部314により生成された質問及びなぜ型質問生成部324により生成された質問を記憶するための質問記憶部244とを含む。
一方、図9を参照して、この第2の実施の形態における発話生成部350は、発話の材料として何らかの文が与えられると、その文に基づいてユーザに対して出力する発話の仮説とそれらの尤度情報を出力するよう予め学習済の発話生成モデル362と、質問・応答システム104(図1参照)からの回答が回答取得部122(図1参照)から与えられると、その回答を発話生成モデル362に入力し、発話生成モデル362が出力する発話仮説と尤度情報に基づいて発話候補を生成するための発話候補生成部360と、発話候補生成部360により生成された発話候補を記憶するための発話候補記憶部264を始めとして図7に示すものと同様に接続されたランキング部266、発話選択部268、及び発話整形部270を含む。
この第2の実施の形態に係るシステムは以下のように動作する。ここでは、質問生成部300及び発話生成部350の動作のみについて説明する。
入力文100が図8に示す質問生成部300の形態素解析部230に与えられると、形態素解析部230は入力文100に対する形態素解析を行って形態素列を構文解析部232に与える。構文解析部232はこの形態素列に対して構文解析を行って構文解析情報を付した入力文100を主題推定部312及び部分表現特定部322に与える。
主題推定部312は、この構文解析情報と入力文100とから主題推定用モデル310に与える素性を抽出し、素性ベクトルの形で主題推定用モデル310に与え、その出力する主題の仮説と尤度情報に基づいて入力文100の主題を推定する。主題推定部312は、この主題をなに型質問生成部314に与える。なに型質問生成部314は、この主題に基づいて、なに型質問生成用モデル316のための素性を得て、素性ベクトルの形でなに型質問生成用モデル316に与える。なに型質問生成部314は、なに型質問生成用モデル316から出力される質問の仮説と尤度情報に基づいてなに型質問を生成し質問記憶部244に記憶させる。
一方、部分表現特定部322は、構文解析部232から与えられた構文解析情報と入力文100とから、部分表現を推定するための素性を抽出し、素性ベクトルの形で部分表現推定用モデル320に与える。部分表現推定用モデル320はこの素性ベクトルに基づいて入力文100内の部分表現の仮説とそれらの尤度情報を出力する。部分表現特定部322は尤度情報に基づいて部分表現を推定し、この部分表現をなぜ型質問生成部324に与える。なぜ型質問生成部324はこの部分表現に基づき、なぜ型質問を生成するための素性ベクトルを作成し、なぜ型質問生成用モデル326に与える。なぜ型質問生成用モデル326はこの素性ベクトルが与えられると、なぜ型質問の仮説とそれらの尤度情報を出力する。なぜ型質問生成部324は、この質問の仮説と尤度情報とに基づいて質問候補を生成し質問記憶部244に記憶させる。なお、なに型質問生成部314及びなぜ型質問生成部324は、いずれも質問候補を複数個生成する。
図1に示す回答取得部122は、これら複数個の質問を質問・応答システム104に与えることで、複数個の応答を質問・応答システム104から得る。質問・応答システム104は、これらの応答を図9に示す発話生成部350の発話候補生成部360に与える。発話候補生成部360は、これら応答の各々から、発話生成モデル362のための素性ベクトルを抽出し、発話生成モデル362に与え、その出力する発話仮説とそれらの尤度情報に基づいて発話候補を生成する。発話候補生成部360は、発話生成モデル362の出力に基づいて生成した発話候補を発話候補記憶部264に記憶させる。なお、発話生成モデル362の出力する発話仮説と尤度情報に基づいて生成された発話候補の各々には、発話生成モデル362によるスコアが付されている。このスコアは、与えられた素性ベクトルに対して発話候補がどの程度適切なものかを示す値である。
ランキング部266、発話選択部268及び発話整形部270の動作は第1の実施の形態と同様である。なお、ランキング部266が行うランク付けも第1の実施の形態と同様であるが、この第2の実施の形態では、発話規則の重要度ではなく、発話生成モデル362が各発話候補に付すスコアを用いる点が異なる。さらに本実施の形態では、質問・応答システム104に与えられる質問についても、質問生成部300において主題推定用モデル310、なに型質問生成用モデル316、部分表現推定用モデル320及びなぜ型質問生成用モデル326によりスコアが付されている。したがって、最終の発話候補のスコアリングにこれらのスコアを反映させるようにしてもよい。
[第3の実施の形態]
第2の実施の形態では、発話生成モデル362を用いている。この発話生成モデル362は、質問・応答システム104からの応答に対して適用されて回答仮説をそれらの尤度情報とともに出力する。ところが、質問・応答システム104からの応答は、質問のバリエーションに応じてバリエーションが非常に大きくなる可能性がある。そうした場合には、発話生成モデル362をトレーニングするための学習データが疎となり、発話生成モデル362を用いた発話候補の生成の精度が低くなる危険性がある。そのため、この第3の実施の形態では、例えば学習データがユナリフレーズを含むものとして、その中の名詞を一般的な変数に置換した上で発話生成モデルのトレーニングを行うことによってこうした問題を解決する。この場合、発話生成モデルが出力する仮説にも変数が含まれることになる。
図10を参照して、この第3の実施の形態に係る発話生成部380は、図9の発話生成モデル362に代えて、上記したように予めトレーニングした発話生成モデル394と、回答取得部122から与えられる質問・応答システムの応答のうち、ユナリフレーズの名詞部分を変数シンボルに置換するための単語置換部390と、単語置換部390から与えられた、変数シンボルを含む応答から素性を抽出し、素性ベクトルとして発話生成モデル394に与えることにより、発話生成モデル394に変数シンボルを含む発話仮説を尤度情報とともに出力させ、それらに基づいて発話候補を生成する発話候補生成部392と、発話候補生成部392が出力する発話候補に含まれる変数シンボルを、単語置換部390が置換した元の単語で置換することにより発話候補を完成し発話候補記憶部264に記憶させる変数置換部396を含む。
発話生成部380の構成及び動作は、これ以外の部分では図9に示す発話生成部350と同じである。
この実施の形態の装置によれば、発話生成モデル394のトレーニングデータが疎になることが防止でき、モデルによる発話候補の生成の精度を高めることができる。
[第4の実施の形態]
上記第1〜第3の実施の形態においては、対話装置102等は質問・応答システム104に対して自然言語文からなる質問を送り、その応答を用いて次の発話を生成することにより対話を制御していた。しかし本発明はそのような実施の形態には限定されない。質問・応答システム104に代えて、入力文から生成した何らかのパラメータに応答して、対話のための情報を出力する仕組みを持つシステムであればどのようなものでも利用できる。例えば、図1に示す質問・応答システム104のような一般的なシステムの場合、質問に対する応答のための情報を検索したり作成したりするためのコアシステムと、外部からの質問を分析し、コアシステムに与えるパラメータを生成する入力インターフェイス部分と、コアシステムが出力する、応答を生成するための情報(例えば単語群)を用いて応答文を生成し、質問を送ってきた端末などに送信する出力インターフェイスとを持つ。
仮に外部装置がこの入出力インターフェイスと同様の機能を持っていたならば、外部装置はわざわざ自然言語文を生成してこの装置に与えなくても、質問文を解析した結果をコアシステムの入力仕様にあわせてコアシステムに与えてやればよい。また、コアシステムからの出力は外部インターフェイスを介して自然言語の形で応答として外部装置に与えられるが、外部装置が人間ではない場合には、わざわざこのようにコアシステムの出力を自然言語に変換する必要はない。コアシステムの出力をそのまま受け取り、外部装置がそれを目的にあわせて処理すればよい。第4の実施の形態はそのようなシステムに関する。
図11を参照して、この第4の実施の形態に係る対話システム400は、第1の実施の形態と同様の構成を持つ質問生成モデル構築部50、なに型質問生成モデル82、及びなぜ型質問生成モデル92を含む他、第1の実施の形態の対話装置102に代えて、入力文100に応答し、なに型質問生成モデル82及びなぜ型質問生成モデル92を用いて生成される自然言語文から外部の質問・応答システム412のコアシステム450に直接与える、質問を表すパラメータを生成し、質問・応答システム412に与えて、質問・応答システム412から得られた情報から出力文414を生成するための対話装置410を含む。
対話装置410は、入力文100を受けて、なに型質問生成モデル82及びなぜ型質問生成モデル92を用いて得られる質問文から、質問・応答システム412のコアシステムに与えるパラメータを生成するためのパラメータ生成部430と、パラメータ生成部430により生成されたパラメータを質問・応答システム412のコアシステムに直接送信するためのパラメータ送信部432と、このパラメータに対して質問・応答システム412が出力する、応答を生成するための情報を受信するための応答受信部434と、応答受信部434が受信した情報に基づいて、入力文100に対する発話を生成し出力する発話生成部436とを含む。 質問・応答システム412は、コアシステム450と、外部から自然言語文の形で与えられる質問を解析し、コアシステム450に与えるパラメータを生成しコアシステム450に与えるための入力インターフェイス452と、質問に対してコアシステム450が出力する情報をコアシステム450から受け取り、その情報から自然言語文を生成して応答として出力するための出力インターフェイス454とを含む。コアシステム450は、入力インターフェイス452から入力パラメータを受信するための入力部470と、コアシステムが生成した、質問に対する応答を生成するための情報を出力する出力部472とを持つ。
通常は、入力インターフェイス452が外部装置から自然言語文の質問文の入力を受け、解析してコアシステム450への入力パラメータを生成して入力部470に与える。これに対してコアシステム450が内部DBを用いて応答するための情報を検索し、出力部472を介して出力する。出力インターフェイス454がこの情報に基づき、応答としてふさわしい自然言語文を生成して出力する。
しかし、こうした動作は、質問文の入力をしたものが人間であることを想定している。本実施の形態のように、対話装置410が質問・応答システム412を利用するときには、わざわざ自然言語文を用いた入出力を行う必要はない。そこで、本実施の形態では、パラメータ生成部430がコアシステム450の入力部470に質問を表すパラメータを直接与え、コアシステム450が出力する情報を応答受信部434が直接出力部472から受信する。発話生成部436が、この単語群から、ユーザに対する次の発話を生成し出力文414として出力する。
このようにすると、質問・応答システム412との間で自然言語文でのやり取りをする必要がなくなり、質問・応答システム412のコアシステムを利用してより効率よく対話を行うことができる。
なお、なに型質問生成モデル82及びなぜ型質問生成モデル92については、質問・応答システム412のコアシステム450の特性又は仕様にあわせて、入力文が与えられると、コアシステム450に対する適切な質問のパラメータを直接に生成できるように学習するとなお効率がよくなる。例えば、なに形質問生成モデル82及びなぜ型質問生成モデル92に代えて、入力文が与えられると、質問文を生成するのではなく、直接にコアシステム450に与えるパラメータを生成するようトレーニングしたモデルを用いればよい。そのためには、質問生成モデル構築部50において、モデルの学習データとして、入力文とそれ対応する質問文との組を用いるのではなく、入力文と、それに対応する質問と等価なパラメータを用いてこれらモデルをトレーニングする。このようなモデルを用いる場合、入力文100に対してなに型質問生成モデル82及びなぜ型質問モデル92からは、質問と等価なパラメータが得られる。パラメータ生成部430は、このパラメータをなんら加工することなく、そのままパラメータ送信部432を介してコアシステム450に与えてやれば良い。
パラメータ生成部430が生成するパラメータは、コアシステム450の入力仕様に依存する。コアシステム450の入力仕様が公表されていない場合には、本実施の形態に係る対話装置410は使用できない。
なお、パラメータ生成部430が生成するパラメータがコアシステム450の仕様に依存するため、異なる仕様のコアシステムを持つ質問・応答システムを複数個利用する場合には、なに型質問生成モデル82、なぜ型質問生成モデル92及び対話装置410を実質的に複数個組み合わせて使用する必要がある。
以上のように本発明によれば、ユーザの発話に対する応答を生成するにあたり、ユーザの発話の係り受け関係を有効に利用している。さらに、システムで使用する統計的モデル生成にあたり、実際にウェブ及びSNS上に出現している対話情報を基礎にしているので、対話の流れが不自然になることが防止できる。また、発話に含まれる多くの情報の中から、質問・応答システムへの質問を生成する際に不要な情報を削除している。したがって、ユーザ発話に対して自然な対話を導く適切なシステム発話を生成できる。また、質問・応答システムへの質問をユーザの発話に基づいて生成し、その質問に対する応答を用いて発話を生成しているので、生成された質問によってユーザの発話とシステム発話の関係を捉え、システム発話及び対話の流れを制御できる。
[コンピュータによる実現]
本発明の各実施の形態に係る対話システム、対話装置及び質問生成モデル構築部は、コンピュータハードウェアと、そのコンピュータハードウェア上で実行されるコンピュータプログラムとにより実現できる。図12はこのコンピュータシステム530の外観を示し、図13はコンピュータシステム530の内部構成を示す。
図12を参照して、このコンピュータシステム530は、メモリポート552及びDVD(Digital Versatile Disc)ドライブ550を有するコンピュータ540と、キーボード546と、マウス548と、モニタ542とを含む。
図13を参照して、コンピュータ540は、メモリポート552及びDVDドライブ550に加えて、CPU(中央処理装置)556と、CPU556、メモリポート552及びDVDドライブ550に接続されたバス566と、ブートプログラム等を記憶する読出専用メモリ(ROM)558と、バス566に接続され、プログラム命令、システムプログラム及び作業データ等を記憶するランダムアクセスメモリ(RAM)560と、ハードディスク554を含む。コンピュータシステム530はさらに、バス566に接続され、音声信号をデジタル化してコンピュータにおいて処理可能な形式に変換するためのサウンドボード568と、他端末との通信を可能とするネットワーク572への接続を提供するネットワークインターフェイスカード(NIC)574を含む。サウンドボード568にはマイクロフォン570が接続される。
コンピュータシステム530を上記した各実施の形態に係る対話システムの各機能部として機能させるためのコンピュータプログラムは、DVDドライブ550又はメモリポート552に装着されるDVD562又はリムーバブルメモリ564に記憶され、さらにハードディスク554に転送される。又は、プログラムはネットワーク568を通じてコンピュータ540に送信されハードディスク554に記憶されてもよい。プログラムは実行の際にRAM560にロードされる。DVD562から、リムーバブルメモリ564から又はネットワーク568を介して、直接にRAM560にプログラムをロードしてもよい。
このプログラムは、コンピュータ540を、上記各実施の形態に係る各対話システムの各機能部として機能させるための複数個の命令からなる命令列を含む。コンピュータ540にこの動作を行わせるのに必要な基本的機能のいくつかはコンピュータ540上で動作するオペレーティングシステム若しくはサードパーティのプログラム又はコンピュータ540にインストールされる、ダイナミックリンク可能な各種プログラミングツールキット又はプログラムライブラリにより提供される。したがって、このプログラム自体はこの実施の形態のシステム、装置及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又はプログラミングツールキット又はプログラムライブラリ内の適切なプログラムを実行時に動的に呼出すことにより、上記したシステム、装置又は方法としての機能を実現する命令のみを含んでいればよい。もちろん、プログラムのみで必要な機能を全て提供してもよい。
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
30、400 対話システム
50 質問生成モデル構築部
70 インターネット
72 入力文・応答文ペア収集部
74 入力文・応答文ペア記憶部
76 なに型質問・対話学習コーパス構築部
78 なに型質問・対話学習コーパス
80 なに型質問生成モデルトレーニング部
82 なに型質問生成モデル
86 なぜ型質問・対話学習コーパス構築部
88 なぜ型質問・対話学習コーパス
90 なぜ型質問生成モデルトレーニング部
92 なぜ型質問生成モデル
100 入力文
102、410 対話装置
104、412 質問・応答システム
106、414 出力文
120、300 質問生成部
122、194 回答取得部
124、350、380、436 発話生成部
130 候補文ペア収集部
132 長さ検査部
134、230 形態素解析部
136、232 構文解析部
140 含意関係辞書
142 バイナリパターン辞書
146 質問生成規則記憶部
150 パターン照合部
152 クリーニング部
154、192 質問文生成部
156、200 レコード作成部
158、202 コーパス追加部
170 述語抽出部
172 述語マッチング部
174、198 ペア選択部
190 部分表現抽出部
196 質問・回答システム
234 なに型質問用素性抽出部
236、314 なに型質問生成部
240 なぜ型質問用素性抽出部
242、324 なぜ型質問生成部
244 質問記憶部
260、360、392 発話候補生成部
262 発話生成規則記憶部
264 発話候補記憶部
266 ランキング部
268 発話選択部
270 発話整形部
268 発話選択部
310 主題推定用モデル
312 主題推定部
316 なに型質問生成用モデル
320 部分表現推定用モデル
322 部分表現特定部
326 なぜ型質問生成用モデル
362、394 発話生成モデル
390 単語置換部
396 変数置換部
430 パラメータ生成部
432 パラメータ送信部
434 応答受信部
450 コアシステム

Claims (6)

  1. ユーザからの入力発話を受け、当該入力発話に含まれる表現を用いて、質問・応答システムを利用するためのパラメータを生成するパラメータ生成手段と、
    前記パラメータ生成手段により生成されたパラメータを前記質問・応答システムに入力し、当該パラメータに対する回答を取得する回答取得手段と、
    前記回答取得手段が取得した回答に基づいて、前記入力発話に対する応答を生成する応答生成手段とを含む、対話システム。
  2. 前記パラメータ生成手段は、
    前記入力発話に対する形態素解析及び構文解析を行う発話解析手段と、
    前記発話解析手段により解析された結果から、前記入力発話の主題を推定する主題推定手段と、
    前記主題推定手段により推定された主題に基づいて、当該主題を構成する部分表現を含むファクトイド型質問を生成するファクトイド型質問生成手段とを含む、請求項1に記載の対話システム。
  3. 前記パラメータ生成手段は、
    前記発話解析手段により解析された結果から、前記入力発話を代表する部分表現を特定する部分表現特定手段と、
    前記部分表現特定手段により特定された部分表現に基づいて、ノン・ファクトイド型質問を生成するノン・ファクトイド型質問生成手段とを含む、請求項1に記載の対話システム。
  4. 前記応答生成手段は、
    前記回答に対して予め準備された発話生成規則を適用することにより、発話候補を生成する発話候補生成手段と、
    前記発話候補を予め準備された発話整形規則にしたがって整形して前記入力発話に対する前記応答を生成する発話整形手段とを含む、請求項1〜請求項3のいずれかに記載の対話システム。
  5. 前記応答生成手段は、
    質問に対する回答が与えられると、当該回答から発話を生成するよう予め学習した発話生成モデルと、
    前記発話生成モデルが生成した発話を、予め準備された発話整形規則にしたがって整形して前記入力発話に対する前記応答を生成する発話整形手段とを含む、請求項1〜請求項3のいずれかに記載の対話システム。
  6. コンピュータを、請求項1〜請求項5のいずれかに記載の対話システムとして機能させる、コンピュータプログラム。
JP2016159505A 2016-08-16 2016-08-16 対話システム及びそのためのコンピュータプログラム Active JP6819990B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2016159505A JP6819990B2 (ja) 2016-08-16 2016-08-16 対話システム及びそのためのコンピュータプログラム
KR1020197001187A KR102388042B1 (ko) 2016-08-16 2017-07-26 대화 시스템 및 그것을 위한 컴퓨터 프로그램
PCT/JP2017/027011 WO2018034118A1 (ja) 2016-08-16 2017-07-26 対話システム及びそのためのコンピュータプログラム
US16/321,988 US10936664B2 (en) 2016-08-16 2017-07-26 Dialogue system and computer program therefor
CN201780043642.1A CN109478188A (zh) 2016-08-16 2017-07-26 对话系统以及用于其的计算机程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016159505A JP6819990B2 (ja) 2016-08-16 2016-08-16 対話システム及びそのためのコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2018028752A true JP2018028752A (ja) 2018-02-22
JP6819990B2 JP6819990B2 (ja) 2021-01-27

Family

ID=61196539

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016159505A Active JP6819990B2 (ja) 2016-08-16 2016-08-16 対話システム及びそのためのコンピュータプログラム

Country Status (5)

Country Link
US (1) US10936664B2 (ja)
JP (1) JP6819990B2 (ja)
KR (1) KR102388042B1 (ja)
CN (1) CN109478188A (ja)
WO (1) WO2018034118A1 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111125330A (zh) * 2019-12-19 2020-05-08 厦门快商通科技股份有限公司 一种基于人机对话的智能问答方法和装置以及设备
CN111143527A (zh) * 2019-12-19 2020-05-12 厦门快商通科技股份有限公司 一种基于人机对话的自动问答方法和装置以及设备
JP2020102193A (ja) * 2018-12-20 2020-07-02 楽天株式会社 文章変換システム、文章変換方法、及びプログラム
JP2020140692A (ja) * 2019-03-01 2020-09-03 楽天株式会社 文抽出システム、文抽出方法、及びプログラム
CN111858869A (zh) * 2020-01-03 2020-10-30 北京嘀嘀无限科技发展有限公司 一种数据匹配方法、装置、电子设备和存储介质
JP2021128637A (ja) * 2020-02-14 2021-09-02 Kddi株式会社 受話文に対する応答文を推論するプログラム、装置及び方法
JP2022080691A (ja) * 2020-11-18 2022-05-30 西日本電信電話株式会社 文書作成支援装置、文書作成支援方法およびプログラム
CN117332072A (zh) * 2023-12-01 2024-01-02 阿里云计算有限公司 对话处理、语音摘要提取以及目标对话模型训练方法
CN111858869B (zh) * 2020-01-03 2024-06-04 北京嘀嘀无限科技发展有限公司 一种数据匹配方法、装置、电子设备和存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019187463A1 (ja) * 2018-03-27 2019-10-03 株式会社Nttドコモ 対話サーバ
US11106664B2 (en) * 2018-05-03 2021-08-31 Thomson Reuters Enterprise Centre Gmbh Systems and methods for generating a contextually and conversationally correct response to a query
JP6775545B2 (ja) * 2018-05-09 2020-10-28 日本電信電話株式会社 対話データ生成装置、対話データ生成方法、およびプログラム
KR20200097871A (ko) * 2019-02-08 2020-08-20 삼성디스플레이 주식회사 표시 장치 및 그 제조방법
US11410643B2 (en) * 2019-08-12 2022-08-09 Microsoft Technology Licensing, Llc Response generation for conversational computing interface
CN111400466A (zh) * 2020-03-05 2020-07-10 中国工商银行股份有限公司 一种基于强化学习的智能对话方法及装置
US11676496B2 (en) * 2020-03-19 2023-06-13 Honeywell International Inc. Methods and systems for querying for parameter retrieval
EP4229625A1 (en) 2020-10-13 2023-08-23 Merlin Labs, Inc. System and/or method for semantic parsing of air traffic control audio
US11521616B2 (en) 2020-10-13 2022-12-06 Merlin Labs, Inc. System and/or method for semantic parsing of air traffic control audio
KR102654480B1 (ko) 2020-11-05 2024-04-04 한국전자통신연구원 언어학습을 위한 지식 기반 대화 시스템 및 방법
EP4016502A1 (en) * 2020-12-17 2022-06-22 The Boeing Company Dialogue system for autonomous aircraft
US11862031B1 (en) 2023-03-24 2024-01-02 Merlin Labs, Inc. System and/or method for directed aircraft perception
CN117828017B (zh) * 2023-12-27 2024-05-28 中建八局第一数字科技有限公司 一种智能问答方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010002973A (ja) * 2008-06-18 2010-01-07 Oki Electric Ind Co Ltd 音声データ主題推定装置およびこれを用いたコールセンタ
WO2013080406A1 (ja) * 2011-11-28 2013-06-06 Necソフト株式会社 対話システム、冗長メッセージ排除方法および冗長メッセージ排除プログラム
JP2016045652A (ja) * 2014-08-21 2016-04-04 国立研究開発法人情報通信研究機構 質問文生成装置及びコンピュータプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1669172B1 (en) * 2003-08-12 2013-10-02 Advanced Telecommunications Research Institute International Communication robot control system
US8543565B2 (en) * 2007-09-07 2013-09-24 At&T Intellectual Property Ii, L.P. System and method using a discriminative learning approach for question answering
US10388178B2 (en) * 2010-08-27 2019-08-20 Arthur Carl Graesser Affect-sensitive intelligent tutoring system
CN102737042B (zh) * 2011-04-08 2015-03-25 北京百度网讯科技有限公司 建立问句生成模型的方法和装置以及问句生成方法和装置
CN103000052A (zh) * 2011-09-16 2013-03-27 上海先先信息科技有限公司 人机互动的口语对话系统及其实现方法
KR20150136583A (ko) * 2014-05-27 2015-12-07 얄리주식회사 사용자와 다국어 대화를 수행하는 장치 및 그 수행 방법
KR20160010190A (ko) * 2014-07-18 2016-01-27 정선호 문자 자동 응답 서비스 제공 방법
JP6433765B2 (ja) 2014-11-18 2018-12-05 三星電子株式会社Samsung Electronics Co.,Ltd. 音声対話システムおよび音声対話方法
TWI553491B (zh) * 2014-11-21 2016-10-11 財團法人工業技術研究院 問句處理系統及其方法
CN105513593B (zh) * 2015-11-24 2019-09-17 南京师范大学 一种语音驱动的智能人机交互方法
US10540967B2 (en) * 2016-11-14 2020-01-21 Xerox Corporation Machine reading method for dialog state tracking

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010002973A (ja) * 2008-06-18 2010-01-07 Oki Electric Ind Co Ltd 音声データ主題推定装置およびこれを用いたコールセンタ
WO2013080406A1 (ja) * 2011-11-28 2013-06-06 Necソフト株式会社 対話システム、冗長メッセージ排除方法および冗長メッセージ排除プログラム
JP2016045652A (ja) * 2014-08-21 2016-04-04 国立研究開発法人情報通信研究機構 質問文生成装置及びコンピュータプログラム

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102193A (ja) * 2018-12-20 2020-07-02 楽天株式会社 文章変換システム、文章変換方法、及びプログラム
US10872208B2 (en) 2018-12-20 2020-12-22 Rakuten, Inc. Sentence conversion system, sentence conversion method, and information storage medium
JP7061594B2 (ja) 2018-12-20 2022-04-28 楽天グループ株式会社 文章変換システム、文章変換方法、及びプログラム
JP2020140692A (ja) * 2019-03-01 2020-09-03 楽天株式会社 文抽出システム、文抽出方法、及びプログラム
CN111143527A (zh) * 2019-12-19 2020-05-12 厦门快商通科技股份有限公司 一种基于人机对话的自动问答方法和装置以及设备
CN111125330A (zh) * 2019-12-19 2020-05-08 厦门快商通科技股份有限公司 一种基于人机对话的智能问答方法和装置以及设备
CN111858869B (zh) * 2020-01-03 2024-06-04 北京嘀嘀无限科技发展有限公司 一种数据匹配方法、装置、电子设备和存储介质
CN111858869A (zh) * 2020-01-03 2020-10-30 北京嘀嘀无限科技发展有限公司 一种数据匹配方法、装置、电子设备和存储介质
JP2021128637A (ja) * 2020-02-14 2021-09-02 Kddi株式会社 受話文に対する応答文を推論するプログラム、装置及び方法
JP7200154B2 (ja) 2020-02-14 2023-01-06 Kddi株式会社 受話文に対する応答文を推論するプログラム、装置及び方法
JP7224327B2 (ja) 2020-11-18 2023-02-17 西日本電信電話株式会社 文書作成支援装置、文書作成支援方法およびプログラム
JP2022080691A (ja) * 2020-11-18 2022-05-30 西日本電信電話株式会社 文書作成支援装置、文書作成支援方法およびプログラム
CN117332072A (zh) * 2023-12-01 2024-01-02 阿里云计算有限公司 对话处理、语音摘要提取以及目标对话模型训练方法
CN117332072B (zh) * 2023-12-01 2024-02-13 阿里云计算有限公司 对话处理、语音摘要提取以及目标对话模型训练方法

Also Published As

Publication number Publication date
KR102388042B1 (ko) 2022-04-19
US20200183983A1 (en) 2020-06-11
CN109478188A (zh) 2019-03-15
WO2018034118A1 (ja) 2018-02-22
KR20190039079A (ko) 2019-04-10
JP6819990B2 (ja) 2021-01-27
US10936664B2 (en) 2021-03-02

Similar Documents

Publication Publication Date Title
WO2018034118A1 (ja) 対話システム及びそのためのコンピュータプログラム
KR102170563B1 (ko) 인공 지능에 기반한 휴먼 머신 인터랙티브 방법 및 장치
CN110413729B (zh) 基于尾句-上下文双重注意力模型的多轮对话生成方法
US8818926B2 (en) Method for personalizing chat bots
WO2017133165A1 (zh) 一种满意度自动测评的方法、装置、设备和计算机存储介质
Karri et al. Deep learning techniques for implementation of chatbots
EP1901283A2 (en) Automatic generation of statistical laguage models for interactive voice response applacation
JP6676110B2 (ja) 発話文生成装置とその方法とプログラム
JP2009193448A (ja) 対話システム、方法及びプログラム
CN114116994A (zh) 一种迎宾机器人对话方法
KR20220000046A (ko) 대화형 지능 서비스 제공 챗봇 제작 시스템 및 방법
KR101534413B1 (ko) 상담 정보를 이용하여 상담 대화를 제공하는 방법 및 장치
WO2019159986A1 (ja) 情報提供装置、情報提供方法、およびプログラム
KR101410601B1 (ko) 유머 발화를 이용하는 음성 대화 시스템 및 그 방법
US11907665B2 (en) Method and system for processing user inputs using natural language processing
KR101677859B1 (ko) 지식 베이스를 이용하는 시스템 응답 생성 방법 및 이를 수행하는 장치
Wärnestål User evaluation of a conversational recommender system
KR20180022156A (ko) 대화 관리 장치 및 방법
JP2013190985A (ja) 知識応答システム、方法およびコンピュータプログラム
Tsiakoulis et al. Dialogue context sensitive HMM-based speech synthesis
JP2019125154A (ja) 情報処理装置、会話データ処理方法及び情報処理システム
Le et al. Automatic quality estimation for speech translation using joint ASR and MT features
JP5718406B2 (ja) 発話文生成装置、対話装置、発話文生成方法、対話方法、発話文生成プログラム、及び対話プログラム
CN113971212A (zh) 多语种问答方法、装置、电子设备及存储介质
US12001465B2 (en) Response selecting apparatus, response selecting method, and response selecting program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170628

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200710

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201222

R150 Certificate of patent or registration of utility model

Ref document number: 6819990

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250