JP6969491B2 - 音声対話システム、音声対話方法及びプログラム - Google Patents

音声対話システム、音声対話方法及びプログラム Download PDF

Info

Publication number
JP6969491B2
JP6969491B2 JP2018092139A JP2018092139A JP6969491B2 JP 6969491 B2 JP6969491 B2 JP 6969491B2 JP 2018092139 A JP2018092139 A JP 2018092139A JP 2018092139 A JP2018092139 A JP 2018092139A JP 6969491 B2 JP6969491 B2 JP 6969491B2
Authority
JP
Japan
Prior art keywords
response
utterance
learning model
user
voice dialogue
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.)
Active
Application number
JP2018092139A
Other languages
English (en)
Other versions
JP2019197182A (ja
Inventor
達朗 堀
生聖 渡部
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2018092139A priority Critical patent/JP6969491B2/ja
Priority to US16/360,238 priority patent/US10971149B2/en
Priority to EP19165062.1A priority patent/EP3567586B1/en
Priority to CN201910354070.XA priority patent/CN110473533B/zh
Priority to KR1020190053429A priority patent/KR102217917B1/ko
Publication of JP2019197182A publication Critical patent/JP2019197182A/ja
Application granted granted Critical
Publication of JP6969491B2 publication Critical patent/JP6969491B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/02Feature extraction for speech recognition; Selection of recognition unit
    • 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/04Segmentation; Word boundary detection
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • 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/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • 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/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/26Recognition of special voice characteristics, e.g. for use in lie detectors; Recognition of animal voices
    • 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
    • G10L2015/221Announcement of recognition results
    • 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
    • G10L2015/223Execution procedure of a spoken command
    • 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
    • G10L2015/225Feedback of the input speech
    • 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
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Manipulator (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、音声対話システム、音声対話方法及びプログラムに関し、特に、ユーザと音声を用いた対話を行うことが可能な音声対話システム、音声対話方法及びプログラムに関する。
ユーザが音声対話ロボット(音声対話システム)と日常会話を楽しむための技術が普及しつつある。この技術にかかる音声対話ロボットは、ユーザが発声した音声の音韻情報等を解析して、解析結果に応じた応答を実行する。ここで、音声対話ロボットが学習モデルを用いて応答を決定することが、行われている。
上記の技術に関連し、特許文献1は、ユーザの発する音声からそのユーザの感情状態を判断して適切な対応動作を実行する感情状態反応動作装置を開示する。特許文献1にかかる感情状態反応動作装置は、音声情報の音韻スペクトルに係る特徴量を抽出する音韻特徴量抽出手段と、音韻特徴量を入力して、予め備えた状態判断テーブルに基づき音声情報の感情状態を判断する状態判断手段と、感情状態を入力して、予め備えた対応動作選択テーブルに基づき対応動作処理を決定する対応動作選択手段とを有する。さらに、特許文献1にかかる感情状態反応動作装置は、感情状態学習用テーブルと感情状態学習手段を備え、感情状態学習手段は、感情状態学習テーブルに基づいて所定の機械学習モデルにより音韻特徴量と感情状態との関連を取得して状態判断テーブルに学習結果を保存し、状態判断手段は、状態判断テーブルに基づいて上記機械学習モデルによる感情状態の判断を行う。
特開2005−352154号公報
ユーザの状態(ユーザの違い、又は、ユーザの感情等)によっては、機械学習モデルが適切でないおそれがある。この場合、例えば、ユーザの発話と装置の発話とが衝突する発話衝突、又は、ユーザの発話と装置の発話との間の期間が長期に亘ってしまう長期沈黙といった、応答誤りが発生するおそれがある。一方、特許文献1にかかる技術では、1つの機械学習モデルを用いて対応動作処理を決定している。したがって、特許文献1にかかる技術では、学習モデルが適切でないために応答誤りが発生する場合であっても、応答誤りが発生しないように適切に対処することが困難である。
本発明は、応答誤りが発生しないように適切に対処することが可能な音声対話システム、音声対話方法及びプログラムを提供するものである。
本発明にかかる音声対話システムは、ユーザと音声を用いた対話を行う音声対話システムであって、前記ユーザの発話であるユーザ発話を取得する発話取得部と、前記取得されたユーザ発話の特徴を抽出する特徴抽出部と、予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定する応答決定部と、前記決定された応答を実行するための制御を行う応答実行部と、前記ユーザ発話に対する前記実行された応答のタイミング又は前記実行された応答に対する前記ユーザ発話のタイミングに応じて、前記実行された応答が誤りであるか否かを判定する応答誤り判定部と、前記応答誤り判定部による判定結果に応じて、前記複数の学習モデルから前記学習モデルを選択する学習モデル選択部とを有し、前記応答決定部は、前記学習モデル選択部によって選択された学習モデルを用いて、前記応答を決定する。
また、本発明にかかる音声対話方法は、ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法であって、前記ユーザの発話であるユーザ発話を取得し、前記取得されたユーザ発話の特徴を抽出し、予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定し、前記決定された応答を実行するための制御を行い、前記ユーザ発話に対する前記実行された応答のタイミング又は前記実行された応答に対する前記ユーザ発話のタイミングに応じて、前記実行された応答が誤りであるか否かを判定し、前記判定の結果に応じて、前記複数の学習モデルから前記学習モデルを選択し、前記選択された学習モデルを用いて、前記応答を決定する。
また、本発明にかかるプログラムは、ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法を実行するプログラムであって、前記ユーザの発話であるユーザ発話を取得するステップと、前記取得されたユーザ発話の特徴を抽出するステップと、予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定するステップと、前記決定された応答を実行するための制御を行うステップと、前記ユーザ発話に対する前記実行された応答のタイミング又は前記実行された応答に対する前記ユーザ発話のタイミングに応じて、前記実行された応答が誤りであるか否かを判定するステップと、前記判定の結果に応じて、前記複数の学習モデルから前記学習モデルを選択するステップと、前記選択された学習モデルを用いて、前記応答を決定するステップとをコンピュータに実行させる。
応答誤りが発生する要因は、学習モデルが適切でないことが多い。本発明は、上記のように構成されているので、応答誤りが発生した場合に、応答を決定するための学習モデルを適切なものに切り替えることができる。したがって、本発明は、応答誤りが発生しないように適切に対処することが可能となる。
また、好ましくは、前記学習モデル選択部は、前記誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記誤りと判定された応答を選択しない確率が高い学習モデルを選択する。
本発明は、このように構成されていることによって、応答の精度がより良くなる学習モデルを選択することが可能となる。
また、好ましくは、前記学習モデル選択部は、予め定められた第1の期間の間に予め定められた複数回数以上、前記応答が誤りであると判定されたときに、前記誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記誤りと判定された応答を選択しない確率が高い学習モデルを選択する。
本発明は、このように構成されていることによって、応答誤りを誘発したユーザ発話の特徴ベクトルを複数用いて、新たな学習モデルを選択するように構成されている。このように、複数の特徴ベクトルを用いて学習モデルを評価することで、選択される学習モデルの精度をより向上させることが可能となる。
また、好ましくは、前記応答誤り判定部は、前記ユーザ発話の途中で前記応答実行部によって発話応答が実行された場合、又は、前記応答実行部によって発話応答が実行されている途中で前記ユーザ発話がなされた場合に、前記応答が発話衝突の誤りであると判定し、前記学習モデル選択部は、前記発話衝突の誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記発話応答を出力しない確率が高い学習モデルを選択する。
本発明は、このように構成されていることによって、発話衝突の応答誤りが発生したときに、発話衝突のきっかけとなったユーザ発話の特徴に対して発話応答を出力しないような学習モデルを選択し直すことができる。したがって、本発明は、発話衝突の発生を抑制することができる。
また、好ましくは、前記応答誤り判定部は、前記ユーザ発話が終了してから前記応答実行部によって発話応答が実行されるまでの期間が予め定められた第2の期間以上である場合に、前記応答が長期沈黙の誤りであると判定し、前記学習モデル選択部は、前記長期沈黙の誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記発話応答を出力する確率が高い学習モデルを選択する。
本発明は、このように構成されていることによって、長期沈黙の応答誤りが発生したときに、長期沈黙のきっかけとなったユーザ発話の特徴に対して発話応答を出力するような学習モデルを選択し直すことができる。したがって、本発明は、長期沈黙の発生を抑制することができる。
また、好ましくは、複数の学習モデルを生成する学習モデル生成部をさらに有し、前記学習モデル生成部は、前記学習モデルの生成に用いるサンプルデータ群を複数の分類法で分類し、前記複数の分類法それぞれについて、分類されて得られた複数のグループごとに機械学習を行って得られる学習モデルの精度を算出することで、前記複数の分類法それぞれの精度を算出し、前記精度が最高となる分類法で分類された前記複数のグループそれぞれを用いて、複数の学習モデルを生成する。
本発明は、このように構成されていることによって、予め精度のよい学習モデルを複数生成しておくことが可能となる。したがって、学習モデルを選択し直したときに、より応答精度のよい対話を行うことが可能となる。
また、好ましくは、前記学習モデルを生成するためのサンプルデータを取得するデータ取得部をさらに有し、前記データ取得部が前記サンプルデータを取得する際に、前記発話取得部は、サンプルデータを取得するための前記ユーザ発話を取得し、前記特徴抽出部は、前記取得されたユーザ発話の特徴を抽出し、前記応答決定部は、予め機械学習によって生成された判別モデルを用いて、前記抽出された特徴に応じた応答を決定し、前記応答実行部は、前記決定された応答を実行するための制御を行い、前記応答誤り判定部は、前記サンプルデータを取得するためのユーザ発話に対して実行された応答が誤りであるか否かを判定し、前記データ取得部は、前記サンプルデータを取得するためのユーザの発話に対して実行された応答が誤りである場合に、当該ユーザ発話に対応する特徴に不正解ラベルを付与することで、前記サンプルデータを取得する。
本発明は、このように構成されていることによって、効率的に学習モデルを生成することが可能となる。
本発明によれば、応答誤りが発生しないように適切に対処することが可能な音声対話システム、音声対話方法及びプログラムを提供できる。
実施の形態1にかかる音声対話システムのハードウェア構成を示す図である。 実施の形態1にかかる音声対話システムの構成を示すブロック図である。 実施の形態1にかかる特徴抽出部によって生成される特徴ベクトルを例示する図である。 実施の形態1にかかる学習モデルの生成方法を説明するための図である。 実施の形態1にかかる学習モデルの生成方法を説明するための図である。 実施の形態1にかかる学習モデルの生成方法を説明するための図である。 実施の形態1にかかる音声対話システムによってなされる音声対話方法を示すフローチャートである。 実施の形態1にかかる音声対話システムによってなされる音声対話方法を示すフローチャートである。 発話衝突を例示する図である。 発話衝突を例示する図である。 発話衝突を例示する図である。 発話衝突が発生したときの学習モデル選択部の処理を示すフローチャートである。 長期沈黙を例示する図である。 長期沈黙が発生したときの学習モデル選択部の処理を示すフローチャートである。 実施の形態2にかかる音声対話システムの構成を示すブロック図である。 実施の形態2にかかる学習モデル生成部の処理を示すフローチャートである。 サンプルデータ群を例示する図である。 サンプルデータが分類された例を示す図である。 実施の形態3にかかる音声対話システムの構成を示すブロック図である。 実施の形態3にかかる音声対話システムによって行われる、サンプルデータの取得方法を示すフローチャートである。 実施の形態3にかかる音声対話システムによって行われる、サンプルデータの取得方法を説明するための図である。 実施の形態3にかかる、学習モデルの生成で使用されるサンプルデータを例示する図である。 実施の形態3にかかる、学習モデルの生成で使用されるサンプルデータを例示する図である。
(実施の形態1)
以下、図面を参照して本発明の実施の形態について説明する。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
図1は、実施の形態1にかかる音声対話システム1のハードウェア構成を示す図である。音声対話システム1は、ユーザと音声を用いて対話を行う。具体的には、音声対話システム1は、ユーザからの発話(ユーザ発話)に応じて、ユーザに対して音声等の応答を実行することで、ユーザと対話を行う。音声対話システム1は、例えば、生活支援ロボット及び小型ロボット等のロボット、クラウドシステム及びスマートフォン等に搭載可能である。以下の説明では、音声対話システム1がロボットに搭載された例を示している。
音声対話システム1は、周囲の音声を収集するマイク2と、音声を発するスピーカ4と、ロボットの首等を動作させるマニピュレータ8と、制御装置10とを有する。なお、音声対話システム1は、カメラ等の撮像装置を有してもよい。制御装置10は、例えばコンピュータとしての機能を有する。制御装置10は、マイク2、スピーカ4及びマニピュレータ8と、有線又は無線で接続されている。
制御装置10は、主要なハードウェア構成として、CPU(Central Processing Unit)12と、ROM(Read Only Memory)14と、RAM(Random Access Memory)16と、インタフェース部(IF;Interface)18とを有する。CPU12、ROM14、RAM16及びインタフェース部18は、データバスなどを介して相互に接続されている。
CPU12は、制御処理及び演算処理等を行う演算装置としての機能を有する。ROM14は、CPU12によって実行される制御プログラム及び演算プログラム等を記憶するための機能を有する。RAM16は、処理データ等を一時的に記憶するための機能を有する。インタフェース部18は、有線又は無線を介して外部と信号の入出力を行う。また、インタフェース部18は、ユーザによるデータの入力の操作を受け付け、ユーザに対して情報を表示する。
制御装置10は、マイク2によって集音されたユーザ発話を解析して、そのユーザ発話に応じて、ユーザに対する応答を決定して実行する。ここで、本実施の形態では、「応答」は、「沈黙」、「頷き」及び「発話」を含む。「沈黙」は、音声対話システム1が何もしないという動作である。「頷き」は、ロボットの首部を縦に振るという動作である。また、「発話」は、音声対話システム1が音声を出力するという動作である。決定された応答が「頷き」である場合、制御装置10は、マニピュレータ8を制御して、ロボットの首部を動作させる。また、決定された応答が「発話」である場合、制御装置10は、スピーカ4を介して、生成された応答に対応する音声(システム発話)を出力する。
図2は、実施の形態1にかかる音声対話システム1の構成を示すブロック図である。実施の形態1にかかる音声対話システム1は、発話取得部102と、特徴抽出部104と、特徴格納部106と、選択モデル格納部108と、応答データベース110(応答DB;Database)と、応答決定部120と、応答実行部130と、応答履歴格納部132とを有する。さらに、実施の形態1にかかる音声対話システム1は、応答誤り判定部140と、学習モデル選択部150と、学習モデルデータベース160(学習モデルDB)とを有する。
図2に示す各構成要素は、マイク2、スピーカ4、マニピュレータ8及び制御装置10の少なくとも1つによって実現可能である。また、各構成要素の少なくとも1つは、例えば、CPU12がROM14に記憶されたプログラムを実行することによって実現可能である。また、必要なプログラムを任意の不揮発性記録媒体に記録しておき、必要に応じてインストールするようにしてもよい。なお、各構成要素は、上記のようにソフトウェアによって実現されることに限定されず、何らかの回路素子等のハードウェアによって実現されてもよい。さらに、図2に示す構成要素の全てが1つの装置に設けられている必要はなく、図2に示す構成要素の1つ以上は、他の構成要素とは物理的に別個の装置に設けられていてもよい。例えば、学習モデルデータベース160がサーバに設けられ、その他の構成要素が、サーバと通信可能な音声対話ロボット等に設けられるようにしてもよい。これらのことは、後述する他の実施の形態においても同様である。
発話取得部102は、マイク2を含み得る。発話取得部102は、ユーザ発話(及びシステム発話)を取得する。具体的には、発話取得部102は、ユーザの発話(及び音声対話システム1の発話)を集音してデジタル信号に変換する。そして、発話取得部102は、ユーザ発話の音声データ(ユーザ音声データ)を、特徴抽出部104に対して出力する。また、発話取得部102は、ユーザ音声データと、システム発話の音声データ(システム音声データ)とを、応答誤り判定部140に対して出力する。
特徴抽出部104は、ユーザ発話の特徴を抽出する。具体的には、特徴抽出部104は、ユーザ発話について、発話の具体的な意味内容を示す言語情報とは異なる非言語情報の解析を行う。また、特徴抽出部104は、非言語情報の解析結果である非言語情報解析結果として、後述する特徴ベクトルを生成する。そして、特徴抽出部104は、非言語情報解析結果(特徴ベクトル)を、応答決定部120に対して出力する。また、特徴抽出部104は、抽出された特徴ベクトルを、特徴格納部106に格納する。特徴格納部106には、発話取得部102がユーザ発話を取得するごとに、対応する特徴ベクトルが格納され得る。
ここで、非言語情報とは、処理対象のユーザ発話の言語情報(文字列)とは異なる情報であり、ユーザ発話の韻律情報、及び、応答履歴情報の少なくとも一方を含む。韻律情報とは、ユーザ発話の音声波形の特徴を示す情報であり、例えば、基本周波数、音圧、周波数等の変化量、変動帯域、振幅の最大値及び平均値等である。また、応答履歴情報とは、応答決定部120によって決定(生成)され、応答実行部130によって実行された応答に関する過去の履歴を示す情報である。応答履歴格納部132は、応答実行部130によって応答が実行されると、この応答履歴情報を格納(更新)する。
具体的には、特徴抽出部104は、発話取得部102によって取得されたユーザ音声データについて音声分析等を行って、音声波形から韻律情報を解析する。そして、特徴抽出部104は、韻律情報を示す特徴量を示す値を算出する。なお、特徴抽出部104は、ユーザ音声データについて、例えば32msecごとに区切られたフレームごとに、基本周波数等を算出してもよい。また、特徴抽出部104は、応答履歴格納部132から応答履歴情報を抽出して、応答履歴の特徴を示す特徴量を算出する。
なお、ユーザ発話の言語情報を用いた構文解析は、パターン認識等を用いるため、多大な時間を要することが多い。一方、非言語情報の解析(韻律情報の解析及び応答履歴情報の解析)については、解析に用いられるデータ量が構文解析と比較して少なく、演算手法が、構文解析と比較して単純である。したがって、非言語情報の解析に要する時間は、構文解析と比較してかなり短くなり得る。
選択モデル格納部108は、後述する学習モデル選択部150によって選択された学習モデルを格納する。ここで、本実施の形態においては、学習モデル選択部150は、学習モデルデータベース160に格納された複数の学習モデルから、後述する方法によって、適切な学習モデルを選択する。なお、音声対話の開始前など、学習モデル選択部150によって学習モデルの選択処理がなされていない場合は、選択モデル格納部108は、任意の1つの学習モデルを格納してもよい。
応答データベース110は、音声対話システム1が応答を行う際に必要なデータを格納する。例えば、応答データベース110は、応答が「発話」である場合のシステム発話を示す複数のシステム音声データを、予め記憶している。
応答決定部120は、非言語情報解析結果(特徴ベクトル)に応じて、どの応答を実行するかを決定する。ここで、本実施の形態においては、応答決定部120は、予め、教師あり学習等の機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、抽出された特徴(特徴ベクトル)に応じた応答を決定する。詳しくは後述する。
本実施の形態においては、応答決定部120は、「沈黙」、「頷き」及び「発話」のうちの1つを、応答として決定する。応答決定部120は、決定された応答を示すデータ(応答データ)を、応答実行部130に対して出力する。なお。応答決定部120は、応答として「発話」を行うと決定した場合、応答データベース110に記憶された複数のシステム発話から、順番に、又はランダムに、システム発話(システム音声データ)を選択してもよい。応答決定部120は、選択されたシステム音声データを、応答実行部130に対して出力する。
応答実行部130は、応答決定部120によって決定された応答を実行するための制御を行う。具体的には、応答決定部120から出力された応答データが「沈黙(沈黙応答)」を示す場合、応答実行部130は、スピーカ4及びマニピュレータ8を動作させないように制御する。また、応答決定部120から出力された応答データが「頷き(頷き応答)」を示す場合、応答実行部130は、マニピュレータ8を制御してロボットの首部を動作させる。また、応答決定部120から出力された応答データが「発話(発話応答)」を示す場合、応答実行部130は、スピーカ4を制御して、応答決定部120によって選択されたシステム音声データを示す音声を出力させる。
応答履歴格納部132は、応答実行部130によって実行された応答を識別するデータを、応答履歴情報として格納する。さらに、応答履歴格納部132は、応答履歴情報として対話に関する時間を含む場合に、その時間を計測し、計測された時間を応答履歴情報として格納してもよい。
図3は、実施の形態1にかかる特徴抽出部104によって生成される特徴ベクトルを例示する図である。なお、図3に例示する特徴ベクトルは、一例にすぎず、他の様々な特徴ベクトルが可能である。i番目のユーザ発話についての特徴ベクトルをvとすると、特徴ベクトルのn個の成分は、v=(vi1,vi2,・・・,vim−1),vim,vi(m+1),・・・,vin)と表される。ここで、i、n及びmは整数(但しn>m)である。また、vi1〜vi(m−1)が、i番目のユーザ発話情報に関する韻律情報の解析結果に対応する。また、vim〜vinが、応答履歴情報の解析結果に対応する。なお、vim〜vinについては、応答履歴格納部132に格納された情報そのものであってもよい。つまり、特徴抽出部104は、応答履歴情報については、応答履歴格納部132から応答履歴を抽出するのみでもよく、特別な解析を行わなくてもよい。
図3に示す例では、例えば、vi1は、i番目のユーザ発話の句末のT1msec(ユーザ発話の終了時点からT1msec(Tミリ秒)遡った時間から終了時点までの期間)における基本周波数f0(f0T1)についてのパラメータを示す。また、vi7は、i番目のユーザ発話の長さ(ユーザ発話長)L1[sec]を示す。なお、基本周波数f0は、フレームごとに、SPTK(Speech Signal Processing Toolkit)のSWIPE(Saw-tooth Waveform Inspired Pitch Estimation)のロジックを用いて算出され得る。
また、vimは、直前の応答タイプを示す。直前の応答タイプは、直前(i番目のユーザ発話の直前)に、応答実行部130によって実行された応答のタイプ(「沈黙」、「頷き」、及び「発話」のいずれか)である。ここで、vimのような、数値ではない成分の成分値(特徴量)については、各タイプに数値が割り当てられている。例えば、vimにおいて、成分値「1」は「沈黙」を示し、成分値「2」は「頷き」を示し、成分値「3」は「発話」を示す。
応答誤り判定部140(図2)は、ユーザ発話に対する応答実行部130によって実行された応答のタイミング、又は、応答実行部130によって実行された応答に対するユーザ発話のタイミングに応じて、実行された応答が誤りであるか否かを判定する。詳しくは後述する。ここで、実施の形態1においては、「応答誤り」が発生した場合とは、「発話衝突」又は「長期沈黙」が発生した場合であるとする。「発話衝突」とは、ユーザ発話とシステム発話とが衝突することである。「発話衝突」の一例は、ユーザ発話の途中(ユーザ発話が終了する前)に応答実行部130がシステム発話(発話応答)を実行した場合である。「発話衝突」の他の例は、応答実行部130によって発話応答が実行されている途中でユーザの発話がなされた場合である。また、「長期沈黙」とは、ユーザ発話が終了してから応答実行部130によって発話応答が実行されるまでの期間が予め定められた期間(Ts秒;第2の期間)以上であることである。このように、応答誤り判定部140は、応答実行部130によって実行された応答が誤りであったことを検出することができる。したがって、応答誤り判定部140は、現在の学習モデルが不適切であることを検出することができる。
学習モデル選択部150は、応答誤り判定部140による判定結果に応じて、学習モデルデータベース160に記憶された複数の学習モデルから学習モデルを選択する。詳しくは後述する。学習モデルデータベース160は、予め機械学習によって生成された複数の学習モデルを記憶する。複数の学習モデルの生成方法の具体例については後述する。
応答誤りが発生する要因は、学習モデルが適切でないことが多い。例えば、あるユーザにとって適切な学習モデルが、別のユーザにとっては適切でないことがある。また、同じユーザであっても、そのユーザの感情等の変化によって、適切であった学習モデルが適切でなくなることがある。ここで、学習モデルが適切でないとは、ユーザ発話に対する応答の精度が悪いことである。学習モデルの応答の精度が悪いと、ロボットは、あるユーザ発話に対して「沈黙応答」を実行すべきときに「発話応答」を実行してしまい、又は、あるユーザ発話に対して「発話応答」を実行すべきときに「沈黙応答」を実行してしまう。
これに対し、本実施の形態においては、応答誤りが発生した場合に、応答を決定するための学習モデルを適切なものに切り替えることができる。したがって、本実施の形態にかかる音声対話システム1は、応答誤りが発生しないように適切に対処することが可能となる。つまり、本実施の形態にかかる音声対話システム1は、応答の精度を良好にすることが可能となる。
次に、学習モデルの生成方法の概略を説明する。
図4〜図6は、実施の形態1にかかる学習モデルの生成方法を説明するための図である。まず、学習モデルを生成するためのサンプルデータを取得する。図4で示すように、ユーザAの発話に対して、ロボット(音声対話システム1)が応答するといった、ユーザAとロボットとの対話によって、特徴ベクトルと正解ラベルとが対応付けられたサンプルデータを収集する。このとき、オペレータは、ユーザAの発話に対して適切な応答をロボットが実行するように、ロボット(音声対話システム1)を操作する。
図4に示す例では、正解ラベル「A」が、「沈黙応答」に対応する。正解ラベル「B」が、「頷き応答」に対応する。正解ラベル「C」が、「発話応答」に対応する。オペレータは、ユーザAの発話の途中では、沈黙応答が実行されるように、ロボットを操作する。このとき、オペレータは何もしなくてもよい。また、オペレータは、ユーザAの発話の読点レベルの切れ目で頷き応答が実行されるように、ロボットを操作する。このとき、ロボットは、オペレータの操作によって頷く動作を行う。また、オペレータは、ユーザAの発話の句点レベルの切れ目で発話応答が実行されるように、ロボットを操作する。このとき、ロボットは、オペレータの操作によって発話を行う。
図4の例では、ユーザAの発話「結局」と「1人で聴いたよ。」との間には切れ目がないので、オペレータは、ユーザAの発話の途中であると判断し、沈黙応答が実行されるように、ロボットを操作する。また、ユーザAの発話「1人で聴いたよ。」が終了すると、句点レベルの切れ目があったと判断し、発話応答が実行されるようにロボットを操作する。このとき、ロボットは、発話「まじですか」を出力する。
図5は、図4の例によって取得された特徴ベクトルと正解ラベルとの組であるサンプルデータを例示する図である。ユーザ発話「結局」のユーザ発話長は0.5秒であったので、特徴ベクトルの成分(図3のvi7)に「0.5」が入力される。また、ユーザ発話「結局」に対する応答は「沈黙応答」であったので、ユーザ発話「結局」の特徴ベクトルには、正解ラベル「A」が対応付けられる。
また、ユーザ発話「1人で聴いたよ。」のユーザ発話長は1.5秒であったので、特徴ベクトルの成分(図3のvi7)に「1.5」が入力される。また、ユーザ発話「1人で聴いたよ。」に対する応答は「発話応答」であったので、ユーザ発話「1人で聴いたよ。」の特徴ベクトルには、正解ラベル「C」が対応付けられる。
次に、上記のようにして収集されたサンプルデータ群を、M個のグループに分類する。分類方法については例えばk−fold Cross Validation(クロスバリデーション;交差検証)によって行われ得る。詳しくは後述する。このとき、サンプルデータ群は、応答が正解となる精度が良くなるように、分類される。言い換えると、サンプルデータ群は、そのサンプルデータ群を分類して得られたグループを用いて得られる学習モデルによる応答と正解ラベルとの一致度が高くなるように、分類される。なお、各分類されたグループには、ユーザ発話長の合計が15分以上となる程度の数のサンプルデータが含まれることが望ましい。これにより、1つの学習モデルは、合計15分以上となるサンプルデータによって生成されることとなる。
図6は、分類されたサンプルデータ群から学習モデルが生成される態様を例示する図である。グループ#1のサンプルデータ群から、例えば教師あり学習等の機械学習によって、学習モデル#1が生成される。同様にして、グループ#Mのサンプルデータ群から、機械学習によって、学習モデル#Mが生成される。学習モデル#1〜#Mの正解ラベル「A」,「B」,「C」の境界が互いに異なっているので、学習モデル#1〜#Mそれぞれに同じ特徴ベクトルを入力した場合であっても、出力される応答は異なり得る。このように生成された複数の学習モデルが、学習モデルデータベース160に格納される。
図7及び図8は、実施の形態1にかかる音声対話システム1によってなされる音声対話方法を示すフローチャートである。まず、発話取得部102は、上述したようにユーザ発話を取得する(ステップS102)。特徴抽出部104は、上述したように、取得されたユーザ発話について非言語情報(韻律情報及び応答履歴情報)の解析を行って、ユーザ発話の特徴(特徴ベクトル)を抽出する(ステップS104)。
次に、応答決定部120は、現在の学習モデル(選択モデル格納部108に格納された学習モデル)を用いて、抽出された特徴ベクトルに応じた、ユーザ発話に対する応答を決定する(ステップS110)。応答実行部130は、上述したように、S110で決定された応答を実行する(ステップS120)。
図8は、S110の処理を示すフローチャートである。応答決定部120は、抽出された特徴ベクトルを、学習モデルに入力する(ステップS112)。応答決定部120は、学習モデルの出力を判定する(ステップS114)。
出力が「沈黙応答」である場合(S114の「沈黙」)、応答決定部120は、沈黙応答を実行すると決定する(ステップS116A)。つまり、応答決定部120は、その特徴ベクトルに対応するユーザ発話に対して、何もしないと決定する。また、出力が「頷き応答」である場合(S114の「頷き」)、応答決定部120は、頷き応答を実行すると決定する(ステップS116B)。つまり、応答決定部120は、その特徴ベクトルに対応するユーザ発話に対して、ロボットの首部を縦に振るようにマニピュレータ8を動作させると決定する。また、出力が「発話応答」である場合(S114の「発話」)、応答決定部120は、発話応答を実行すると決定する(ステップS116C)。つまり、応答決定部120は、その特徴ベクトルに対応するユーザ発話に対して、システム発話を出力させるようにスピーカ4を動作させると決定する。
次に、応答誤り判定部140は、上述したように、応答が誤りであったか否かを判定する(ステップS130)。応答が誤りでなかったと判定された場合(S130のNO)、処理はS102に戻る。一方、応答が誤りであったと判定された場合(S130のYES)、応答誤り判定部140は、応答誤りが検出されたことを示す誤り検出トリガを、学習モデル選択部150に対して出力する(ステップS132)。ここで、誤り検出トリガは、誤りであった応答に対応する特徴ベクトル、及び、どの応答誤り(「発話衝突」又は「長期沈黙」)が発生したかを示すデータを含み得る。「誤りであった応答に対応する特徴ベクトル」とは、誤りと判定された応答が学習モデルから出力されたときに学習モデルに入力された特徴ベクトルである。
学習モデル選択部150は、T秒間にN回以上の誤りが検出されたか否かを判定する(ステップS134)。つまり、学習モデル選択部150は、予め定められた期間(第1の期間)の間に予め定められた複数回数以上、応答が誤りであると判定されたか否かを判定する。具体的には、学習モデル選択部150は、同じ種類の応答誤りが発生したことを示す誤り検出トリガが、T秒間にN回以上出力されたか否かを判定する。T秒間にN回以上の誤りが検出されていない場合(S134のNO)、処理はS102に戻る。一方、T秒間にN回以上の誤りが検出された場合(S134のYES)、学習モデル選択部150は、学習モデルデータベース160に格納された複数の学習モデルから、学習モデルを選択する(ステップS140)。
このとき、学習モデル選択部150は、応答誤りと判定されたときの応答に対応する特徴ベクトルを入力した場合に、その応答誤りと判定された応答を選択しない確率が高い学習モデルを選択する。例えば、学習モデル選択部150は、「発話衝突」と判定されたときの応答に対応する特徴ベクトルを入力した場合に、発話応答を出力しない確率が高い学習モデルを選択する。また、学習モデル選択部150は、「長期沈黙」と判定されたときの応答に対応する特徴ベクトルを入力した場合に、沈黙応答又は頷き応答を出力しない(つまり発話応答を出力する)確率が高い学習モデルを選択する。このように、実施の形態1にかかる学習モデル選択部150は、応答誤りと判定された応答に対応する特徴ベクトルを用いて新たな学習モデルを選択するように構成されているので、応答の精度がより良くなる学習モデルを選択することが可能となる。
また、学習モデル選択部150は、T秒間にN回以上発生した応答誤りに対応する特徴ベクトル(N個以上の特徴ベクトル)を入力した場合に、発話応答を選択しない確率が高い学習モデルを選択する。ここで、Nが複数である場合、学習モデル選択部150は、応答誤りを誘発したユーザ発話の特徴ベクトルを複数用いて、新たな学習モデルを選択するように構成されている。このように、複数の特徴ベクトルを用いて学習モデルを評価することで、選択される学習モデルの精度をより向上させることが可能となる。
以下、応答誤りが「発話衝突」である場合、及び、「長期沈黙」である場合について、さらに詳述する。つまり、「発話衝突」がT秒間にN回以上発生した場合、及び、「長期沈黙」がT秒間にN回以上発生した場合について説明する。
図9〜図11は、発話衝突を例示する図である。図9に示す例では、ユーザ発話「1人で聴いたよ。」が、対話開始から2.4秒後に開始し、対話開始から3.9秒後に終了する。また、システム発話「まじですか」が、対話開始から3.1秒後に開始し、対話開始から4.3秒後に終了する。この場合、応答誤り判定部140は、ユーザ発話「1人で聴いたよ。」が終了する前にシステム発話「まじですか」が開始しているので、「発話衝突」を検出する。
また、図10に示す例では、ユーザ発話「今週末はね、」の後にユーザ発話「新幹線に乗って東京に行くよ。」が続き、システム発話「いいね」が、ユーザ発話「今週末はね、」に対する応答として実行されている。この例では、応答誤り判定部140は、システム発話「いいね」が終了する前にユーザ発話「新幹線に乗って東京に行くよ。」が開始しているので、「発話衝突」を検出する。なお、この発話衝突は、ユーザ発話「今週末はね、」の後にさらに句点レベルの切れ目がなくユーザ発話が続くと音声対話システム1が判断できなかったことに起因する。
また、図11に示す例では、ユーザ発話「今週末は新幹線に乗って東京に行くよ。」の最中にシステム発話「いいね」が実行されている。この例では、応答誤り判定部140は、ユーザ発話「今週末は新幹線に乗って東京に行くよ。」が終了する前にシステム発話「いいね」が開始しているので、「発話衝突」を検出する。
図12は、発話衝突が発生したときの学習モデル選択部150の処理(S140)を示すフローチャートである。まず、学習モデル選択部150は、応答誤りが発生したときの応答に対応する特徴ベクトル(エラー特徴ベクトル)を、特徴格納部106から抽出する(ステップS142A)。この場合、エラー特徴ベクトルは、少なくともN個抽出され得る。例えば、図9に示す例では、特徴抽出部104がユーザ発話の一部「1人で」の特徴ベクトルを抽出したときに応答決定部120が発話応答を実行すると決定してしまったので、ユーザ発話「1人で」の特徴ベクトルが抽出される。また、図10に示す例では、ユーザ発話「今週末はね、」の特徴ベクトルが抽出される。また、図11に示す例では、特徴抽出部104がユーザ発話の一部「今週末は」の特徴ベクトルを抽出したときに応答決定部120が発話応答を実行すると決定してしまったので、ユーザ発話「今週末は」の特徴ベクトルが抽出される。
次に、学習モデル選択部150は、S142Aの処理で抽出されたエラー特徴ベクトルを、学習モデルデータベース160に格納された学習モデル#1〜#Mのそれぞれに入力する(ステップS144A)。そして、学習モデル選択部150は、「発話応答」を出力しない確率の高い学習モデルを選択する(ステップS146A)。つまり、学習モデル選択部150は、「沈黙応答」又は「頷き応答」を出力する確率の高い学習モデルを選択する。
例えば、N=3、M=3とする。そして、学習モデル#1が使用されていたときに発話衝突が発生したとする。この場合、3個のエラー特徴ベクトルを学習モデル#1に入力したときに学習モデル#1が「発話応答」を出力した回数は、3回となる。この場合、「発話応答」を出力しない確率は、0/3である。また、3個のエラー特徴ベクトルを学習モデル#2に入力したときに学習モデル#2が「発話応答」を出力した回数が、2回であるとする。この場合、「発話応答」を出力しない確率は、1/3である。また、3個のエラー特徴ベクトルを学習モデル#3に入力したときに学習モデル#3が「発話応答」を出力した回数が、1回であるとする。この場合、「発話応答」を出力しない確率は、2/3である。この場合、学習モデル選択部150は、「発話応答」を出力する回数が最も少ない学習モデル、つまり、「発話応答」を出力しない確率が最も高い学習モデル#3を選択する。
なお、学習モデル選択部150は、「発話応答」を出力する回数が0回である学習モデル、つまり、「発話応答」を出力しない確率が100%である学習モデルを検出できたときに処理を打ち切って、その他の学習モデルについての処理を省略してもよい。また、学習モデル選択部150は、「発話応答」を出力する回数が予め定められた閾値以下である任意の学習モデル、つまり、「発話応答」を出力しない確率が予め定められた閾値以上である任意の学習モデルを選択してもよい。
このように、実施の形態1にかかる音声対話システム1は、発話衝突の応答誤りが発生したときに、発話衝突のきっかけとなったユーザ発話の特徴ベクトルに対して発話応答を出力しないような学習モデルを選択し直すことができる。したがって、実施の形態1にかかる音声対話システム1は、発話衝突の発生を抑制することができる。
図13は、長期沈黙を例示する図である。この例では、ユーザ発話とシステム発話との間にTs秒間(第2の期間)以上の沈黙があったとする。そして、Ts=2.5(sec)とする。図13に示す例では、ユーザ発話「1人で聴いたよ。」が、対話開始から2.4秒後に開始し、対話開始から3.9秒後に終了する。また、システム発話「まじですか」が、対話開始から6.5秒後に開始し、対話開始から7.3秒後に終了する。この場合、応答誤り判定部140は、ユーザ発話「1人で聴いたよ。」が終了してからシステム発話「まじですか」が開始するまでの期間が2.6秒であり、Ts秒間よりも長く沈黙が続いたので、「長期沈黙」を検出する。
図14は、長期沈黙が発生したときの学習モデル選択部150の処理(S140)を示すフローチャートである。まず、学習モデル選択部150は、応答誤りが発生したときの応答に対応する特徴ベクトル(エラー特徴ベクトル)を、特徴格納部106から抽出する(ステップS142B)。この場合、エラー特徴ベクトルは、少なくともN個抽出され得る。例えば、図13に示す例では、特徴抽出部104がユーザ発話の一部「1人で聴いたよ。」の特徴ベクトルを抽出したときに応答決定部120が沈黙応答を実行すると決定してしまったので、ユーザ発話「1人で聴いたよ。」の特徴ベクトルが抽出される。
次に、学習モデル選択部150は、S142Bの処理で抽出されたエラー特徴ベクトルを、学習モデルデータベース160に格納された学習モデル#1〜#Mのそれぞれに入力する(ステップS144B)。そして、学習モデル選択部150は、「発話応答」を出力する確率の高い学習モデルを選択する(ステップS146B)。
例えば、N=3、M=3とする。そして、学習モデル#1が使用されていたときに長期沈黙が発生したとする。この場合、3個のエラー特徴ベクトルを学習モデル#1に入力したときに学習モデル#1が「発話応答」を出力した回数は、0回となる。この場合、「発話応答」を出力する確率は、0/3である。また、3個のエラー特徴ベクトルを学習モデル#2に入力したときに学習モデル#2が「発話応答」を出力した回数が、1回であるとする。この場合、「発話応答」を出力する確率は、1/3である。また、3個のエラー特徴ベクトルを学習モデル#3に入力したときに学習モデル#3が「発話応答」を出力した回数が、2回であるとする。この場合、「発話応答」を出力する確率は、2/3である。この場合、学習モデル選択部150は、「発話応答」を出力する回数が最も多い学習モデル、つまり、「発話応答」を出力する確率が最も高い学習モデル#3を選択する。
なお、学習モデル選択部150は、「発話応答」を出力しない回数が0回である学習モデル、つまり、「発話応答」を出力する確率が100%である学習モデルを検出できたときに処理を打ち切って、その他の学習モデルについての処理を省略してもよい。また、学習モデル選択部150は、「発話応答」を出力しない回数が予め定められた閾値以下である任意の学習モデル、つまり、「発話応答」を出力する確率が予め定められた閾値以上である任意の学習モデルを選択してもよい。
このように、実施の形態1にかかる音声対話システム1は、長期沈黙の応答誤りが発生したときに、長期沈黙のきっかけとなったユーザ発話の特徴ベクトルに対して発話応答を出力するような学習モデルを選択し直すことができる。したがって、実施の形態1にかかる音声対話システム1は、長期沈黙の発生を抑制することができる。
(実施の形態2)
次に、実施の形態2について説明する。実施の形態2においては、音声対話システム1が複数の学習モデルを生成する点で、実施の形態1と異なる。なお、実施の形態2にかかる音声対話システム1のハードウェア構成については、図1に示した実施の形態1にかかる音声対話システム1のハードウェア構成と実質的に同様であるので、説明を省略する。
図15は、実施の形態2にかかる音声対話システム1の構成を示すブロック図である。実施の形態2にかかる音声対話システム1は、発話取得部102と、特徴抽出部104と、特徴格納部106と、選択モデル格納部108と、応答データベース110と、応答決定部120と、応答実行部130と、応答履歴格納部132とを有する。さらに、実施の形態2にかかる音声対話システム1は、応答誤り判定部140と、学習モデル選択部150と、学習モデルデータベース160と、学習モデル生成部210とを有する。学習モデル生成部210以外の構成要素については、実施の形態1にかかるものと実質的に同様の機能を有するので、説明を省略する。
なお、学習モデル生成部210は、その他の構成要素と物理的に一体となっている必要はない。つまり、その他の構成要素が設けられた装置(ロボット等)と、学習モデル生成部210が設けられた装置(コンピュータ等)とが、同一である必要はない。学習モデル生成部210の具体的な機能について、以下に説明する。なお、学習モデル生成部210の処理(後述する図16の処理)は、図4〜図6に対応し、ユーザとの対話(図7の処理)の前段階で行われる。
図16は、実施の形態2にかかる学習モデル生成部210の処理を示すフローチャートである。まず、学習モデル生成部210は、学習モデルを生成するために必要なサンプルデータを取得する(ステップS200)。ここで、実施の形態2においては、図4で示したように、オペレータが正解ラベルを付与することで、図5に例示するような、特徴ベクトルと正解ラベルとが対応付けられたサンプルデータ群が生成されてもよい。
図17は、サンプルデータ群を例示する図である。図17に例示したサンプルデータ群は、ユーザA〜ユーザZの26人のサンプルデータを含むとする。各サンプルデータでは、ユーザA〜ユーザZそれぞれのユーザ発話に対応する特徴ベクトルと正解ラベルとが対応付けられている。
次に、学習モデル生成部210は、Mc通りの方法で、サンプルデータを分類する(ステップS202)。ここで、分類方法は、ランダムであってもよいし、ユーザごとであってもよいし、サンプルデータを生成したときの話題ごとであってもよい。以下に示す例では、ユーザごとにランダムに分類するとする。つまり、あるユーザについての複数のサンプルデータが纏めて分類される(つまりあるユーザについての複数のサンプルデータは分離して分類されない)とする。
図18は、サンプルデータが分類された例を示す図である。図18に示した例では、10通り(Mc=10)の分類法でサンプルデータが分類されている。したがって、分類法#1〜分類法#10ごとに異なる方法で、図17に例示したサンプルデータが分類されている。また、図18に例示した方法では、各分類法で、サンプルデータが2〜5個のグループに分類されている。例えば、分類法#1では、サンプルデータが2個のグループに分類されている。分類法#10では、3個のグループに分類されている。
次に、学習モデル生成部210は、分類法#1〜#Mcそれぞれの精度を算出する(ステップS204)。具体的には、学習モデル生成部210は、分類法#1〜#Mcそれぞれを用いて生成される学習モデルの精度を算出する。さらに具体的には、学習モデル生成部210は、各分類法について、各グループに対してk−fold Cross Validationを適用してグループごとに学習モデルを生成して、それらの学習モデルの精度を算出する。そして、学習モデル生成部210は、グループに対する精度を平均したものを、その分類法の精度とする。
例えば、図18に示した例について、学習モデル生成部210は、分類法#1について、グループ#1及びグループ#2の精度を算出する。このとき、学習モデル生成部210は、グループ#1のサンプルデータ群をK個のサブグループに分割する。そして、学習モデル生成部210は、そのうちの1個のサブグループのサンプルデータをテストデータとし、残りのK−1個のサブグループのサンプルデータ訓練データとして用いることで、機械学習により検証用学習モデルを生成する。学習モデル生成部210は、生成された検証用学習モデルをテストデータとしたサンプルデータで検証する。つまり、学習モデル生成部210は、検証用学習モデルにテストデータを入力して、正解ラベルと一致する応答が得られる確率(一致度)を算出する。学習モデル生成部210は、この処理を、テストデータとするサブグループを変えながら、K回行う。これにより、学習モデル生成部210は、グループ#1の精度(正解ラベルとなる確率)を算出する。
学習モデル生成部210は、同様の処理をグループ#2についても行う。そして、学習モデル生成部210は、グループ#1の精度及びグループ#2の精度を平均して、分類法#1の精度を算出する。例えば、グループ#1の精度が68%であり、グループ#2の精度が70%であるとすると、分類法#1の精度は、69%となる。学習モデル生成部210は、他の分類法#2〜#10についても同様の処理を行って、各分類法の精度を算出する。
次に、学習モデル生成部210は、精度が最高となる分類法#jを選択する(ステップS206)。学習モデル生成部210は、選択した分類法#jのグループそれぞれについて、学習モデルを生成する(ステップS208)。例えば、図18に示した例において、分類法#10の精度が75%で最高であったとすると、学習モデル生成部210は、分類法#10を選択する。そして、学習モデル生成部210は、分類法#10のグループ#1〜#3をそれぞれ用いて、学習モデルを生成する。つまり、グループ#1のサンプルデータを用いて1つの学習モデルが生成され、グループ#2のサンプルデータを用いて1つの学習モデルが生成され、グループ#3のサンプルデータを用いて1つの学習モデルが生成される。したがって、この例では、3個の学習モデルが生成される。このようにして、複数の学習モデルが生成される。実施の形態2においては、このようにして学習モデルを生成することによって、予め精度のよい学習モデルを複数生成しておくことが可能となる。したがって、学習モデルを選択し直したときに、より応答精度のよい対話を行うことが可能となる。
(実施の形態3)
次に、実施の形態3について説明する。実施の形態3においては、音声対話システム1が自律的にサンプルデータを収集する点で、他の実施の形態と異なる。なお、実施の形態3にかかる音声対話システム1のハードウェア構成については、図1に示した実施の形態1にかかる音声対話システム1の構成と実質的に同様であるので、説明を省略する。実施の形態1及び実施の形態2においては、図4に示すように、オペレータの操作によって特徴ベクトルに正解ラベルが付与されていたが、実施の形態3においては、音声対話システム1が、ユーザ発話の特徴ベクトルに自律的に正解ラベルを付与する。ここで、実施の形態3においては、音声対話システム1が、図2に示した構成要素を用いて、自律的にサンプルデータを収集し得る。しかしながら、音声対話システム1とは異なるシステム(自律型ロボット)が、自律的にサンプルデータを収集してもよい。
図19は、実施の形態3にかかる音声対話システム1の構成を示すブロック図である。実施の形態3にかかる音声対話システム1は、発話取得部102と、特徴抽出部104と、特徴格納部106と、選択モデル格納部108と、応答データベース110と、応答決定部120と、応答実行部130と、応答履歴格納部132とを有する。さらに、実施の形態3にかかる音声対話システム1は、応答誤り判定部140と、学習モデル選択部150と、学習モデルデータベース160と、データ取得部310とを有する。データ取得部310以外の構成要素については、実施の形態1にかかるものと実質的に同様の機能を有するので、説明を省略する。
図20は、実施の形態3にかかる音声対話システム1によって行われる、サンプルデータの取得方法を示すフローチャートである。まず、発話取得部102は、図7のS102の処理と同様にして、ユーザ発話を取得する(ステップS302)。特徴抽出部104は、図7のS104の処理と同様にして、取得されたユーザ発話について特徴(特徴ベクトル)を抽出する(ステップS304)。
次に、図7のS110の処理と同様にして、応答決定部120は、ある判別モデルを用いて、抽出された特徴ベクトルに応じた応答を決定する(ステップS310)。なお、S310で用いる判別モデルは、予め機械学習等によって生成された学習モデルであってもよいが、学習モデルデータベース160に格納されたものではなくてもよい。応答実行部130は、図7のS120の処理と同様にして、S310で決定された応答を実行する(ステップS320)。
応答誤り判定部140は、図7のS130の処理と同様にして、応答が誤りであったか否かを判定する(ステップS330)。応答が誤りであったと判定された場合(S330のYES)、データ取得部310は、特徴ベクトルに不正解ラベルを付与したサンプルデータを取得する(ステップS332)。一方、応答が誤りでなかったと判定された場合(S330のNO)、データ取得部310は、特徴ベクトルに正解ラベルを付与したサンプルデータを取得する(ステップS334)。そして、ユーザ発話が終了していない場合には(ステップS336のNO)、処理はS302に戻る。
図21は、実施の形態3にかかる音声対話システム1によって行われる、サンプルデータの取得方法を説明するための図である。音声対話システム1は、何らかの判別モデルを用いて、ユーザ発話「結局」に応じて、発話応答であるシステム発話R1「まじですか」を出力する。そして、音声対話システム1の応答誤り判定部140は、このシステム発話R1が応答誤り(発話衝突)であると判定する(S330のYES)。したがって、データ取得部310は、ユーザ発話「結局」の特徴ベクトルに不正解ラベルを付与したサンプルデータを取得する(S332)。また、音声対話システム1は、何らかの判別モデルを用いて、ユーザ発話「1人で聴いたよ。」に応じて、発話応答であるシステム発話R2「まじですか」を出力する。そして、音声対話システム1の応答誤り判定部140は、このシステム発話R1が応答誤りでないと判定する(S330のNO)。したがって、データ取得部310は、ユーザ発話「1人で聴いたよ。」の特徴ベクトルに正解ラベルを付与したサンプルデータを取得する(S334)。
図22及び図23は、実施の形態3にかかる、学習モデルの生成(図6,図16)で使用されるサンプルデータを例示する図である。図22に示すサンプルデータ群では、不正解ラベルが付与された、ユーザ発話「結局」についてのサンプルデータが除外されている。また、図23に示すサンプルデータ群では、ユーザ発話「結局」についてのサンプルデータには、不正解ラベル「not C」が付与されている。実施の形態3においては、図22に示したサンプルデータ群又は図23に示したサンプルデータ群を用いて、機械学習が実行されて学習モデルが生成される。
このように、実施の形態3にかかる音声対話システム1は、自律的にサンプルデータを取得することができる。したがって、オペレータの操作を必要とすることなく、サンプルデータを取得することが可能となる。さらに、学習モデルデータベース160に格納された学習モデルを用いて自律的にサンプルデータを取得することによって、その学習モデルに対してオンライン学習を行い、学習モデルを更新することが可能となる。したがって、実施の形態3にかかる音声対話システム1は、効率的に学習モデルを生成することが可能となる。
(変形例)
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述したフローチャートにおいて、複数の処理の順序は、適宜、変更可能である。また、上述したフローチャートにおいて、複数の処理のうちの1つは、省略されてもよい。
また、上述した実施の形態は、相互に適用され得る。例えば、実施の形態3は、実施の形態2に対しても適用可能である。つまり、音声対話システム1は、学習モデル生成部210及びデータ取得部310を有してもよく、データ取得部310によって取得されたサンプルデータを用いて、学習モデル生成部210が学習モデルを生成してもよい。
また、図7のS134の処理では、N回の応答誤りが同じ種類のものである必要はない。つまり、S134の処理では、「発話衝突」の回数及び「長期沈黙」の回数の合計がN回以上となったか否かが判定されてもよい。例えば、N=3のとき、「発話衝突」が2回、「長期沈黙」が1回検出されたときに、S140の処理で学習モデルが選択されてもよい。この場合、学習モデル選択部150は、図12の処理と図14の処理とを組み合わせた処理を行う。具体的には、学習モデル選択部150は、「発話衝突」となった応答に対応する特徴ベクトルを入力したときに「発話応答」を出力せず、「長期沈黙」となった応答に対応する特徴ベクトルを入力したときに「発話応答」を出力する確率の高い学習モデルを選択する。
例えば、N=3、M=3であって、「発話衝突」が2回、「長期沈黙」が1回検出されたとする。そして、学習モデル#1が使用されていたときに発話衝突が発生したとする。この例において、2個の「発話衝突」に関するエラー特徴ベクトルを学習モデル#2に入力したときに学習モデル#2が「発話応答」を出力しなかった回数が1回であるとする。そして、1個の「長期沈黙」に関するエラー特徴ベクトルを学習モデル#2に入力したときに学習モデル#2が「発話応答」を出力した回数が1回であるとする。この場合、学習モデル#2についての、応答誤りとなった応答を出力しない確率は、2/3である。また、2個の「発話衝突」に関するエラー特徴ベクトルを学習モデル#3に入力したときに学習モデル#3が「発話応答」を出力しなかった回数が0回であるとする。そして、1個の「長期沈黙」に関するエラー特徴ベクトルを学習モデル#3に入力したときに学習モデル#3が「発話応答」を出力した回数が1回であるとする。この場合、学習モデル#3についての、応答誤りとなった応答を出力しない確率は、1/3である。この場合、学習モデル選択部150は、応答誤りとなった応答を出力する回数が最も少ない学習モデル、つまり、応答誤りとなった応答を出力しない確率が最も高い学習モデル#2を選択する。
また、上述した実施の形態においては、非言語情報のみからユーザ発話に対する応答を決定しているが、このような構成に限られない。ユーザ発話の言語情報を用いた構文解析を用いてユーザ発話の意味内容を認識して、その意味内容に応じたシステム発話を実行してもよい。しかしながら、上述したように、構文解析に要する時間は非言語情報の解析に要する時間よりも多大であるため、非言語情報の解析のみを用いることで、よりリアルタイムな対話を実現することができる。
また、上述した実施の形態においては、音声対話システム1がロボットに搭載された例を示しているが、このような構成に限られない。音声対話システム1は、スマートフォン又はタブレット端末等の情報端末にも搭載可能である。この場合、「頷き応答」を行うときは、マニピュレータ8を動作させる代わりに、情報端末の表示画面に、人物、動物、又はロボット等が頷くような動画を表示させてもよい。
また、上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
1・・・音声対話システム、2・・・マイク、4・・・スピーカ、10・・・制御装置、102・・・発話取得部、104・・・特徴抽出部、106・・・特徴格納部、108・・・選択モデル格納部、110・・・応答データベース、120・・・応答決定部、130・・・応答実行部、132・・・応答履歴格納部、140・・・応答誤り判定部、150・・・学習モデル選択部、160・・・学習モデルデータベース、210・・・学習モデル生成部、310・・・データ取得部

Claims (9)

  1. ユーザと音声を用いた対話を行う音声対話システムであって、
    前記ユーザの発話であるユーザ発話を取得する発話取得部と、
    前記取得されたユーザ発話の特徴を抽出する特徴抽出部と、
    予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定する応答決定部と、
    前記決定された応答を実行するための制御を行う応答実行部と、
    前記ユーザ発話に対する前記実行された応答のタイミング又は前記実行された応答に対する前記ユーザ発話のタイミングに応じて、前記実行された応答が誤りであるか否かを判定する応答誤り判定部と、
    前記応答誤り判定部による判定結果に応じて、前記複数の学習モデルから前記学習モデルを選択する学習モデル選択部と
    を有し、
    前記応答決定部は、前記学習モデル選択部によって選択された学習モデルを用いて、前記応答を決定する
    音声対話システム。
  2. 前記学習モデル選択部は、前記誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記誤りと判定された応答を選択しない確率が高い学習モデルを選択する
    請求項1に記載の音声対話システム。
  3. 前記学習モデル選択部は、予め定められた第1の期間の間に予め定められた複数回数以上、前記応答が誤りであると判定されたときに、前記誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記誤りと判定された応答を選択しない確率が高い学習モデルを選択する
    請求項2に記載の音声対話システム。
  4. 前記応答誤り判定部は、前記ユーザ発話の途中で前記応答実行部によって発話応答が実行された場合、又は、前記応答実行部によって発話応答が実行されている途中で前記ユーザ発話がなされた場合に、前記応答が発話衝突の誤りであると判定し、
    前記学習モデル選択部は、前記発話衝突の誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記発話応答を出力しない確率が高い学習モデルを選択する
    請求項3に記載の音声対話システム。
  5. 前記応答誤り判定部は、前記ユーザ発話が終了してから前記応答実行部によって発話応答が実行されるまでの期間が予め定められた第2の期間以上である場合に、前記応答が長期沈黙の誤りであると判定し、
    前記学習モデル選択部は、前記長期沈黙の誤りであると判定されたときの前記応答に対応する特徴を入力した場合に前記発話応答を出力する確率が高い学習モデルを選択する
    請求項3又は4に記載の音声対話システム。
  6. 複数の学習モデルを生成する学習モデル生成部
    をさらに有し、
    前記学習モデル生成部は、
    前記学習モデルの生成に用いるサンプルデータ群を複数の分類法で分類し、
    前記複数の分類法それぞれについて、分類されて得られた複数のグループごとに機械学習を行って得られる学習モデルの精度を算出することで、前記複数の分類法それぞれの精度を算出し、
    前記精度が最高となる分類法で分類された前記複数のグループそれぞれを用いて、複数の学習モデルを生成する
    請求項1〜5のいずれか1項に記載の音声対話システム。
  7. 前記学習モデルを生成するためのサンプルデータを取得するデータ取得部
    をさらに有し、
    前記データ取得部が前記サンプルデータを取得する際に、
    前記発話取得部は、サンプルデータを取得するための前記ユーザ発話を取得し、
    前記特徴抽出部は、前記取得されたユーザ発話の特徴を抽出し、
    前記応答決定部は、予め機械学習によって生成された判別モデルを用いて、前記抽出された特徴に応じた応答を決定し、
    前記応答実行部は、前記決定された応答を実行するための制御を行い、
    前記応答誤り判定部は、前記サンプルデータを取得するためのユーザ発話に対して実行された応答が誤りであるか否かを判定し、
    前記データ取得部は、前記サンプルデータを取得するためのユーザの発話に対して実行された応答が誤りである場合に、当該ユーザ発話に対応する特徴に不正解ラベルを付与することで、前記サンプルデータを取得する
    請求項1〜6のいずれか1項に記載の音声対話システム。
  8. ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法であって、
    前記ユーザの発話であるユーザ発話を取得し、
    前記取得されたユーザ発話の特徴を抽出し、
    予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定し、
    前記決定された応答を実行するための制御を行い、
    前記ユーザ発話に対する前記実行された応答のタイミング又は前記実行された応答に対する前記ユーザ発話のタイミングに応じて、前記実行された応答が誤りであるか否かを判定し、
    前記判定の結果に応じて、前記複数の学習モデルから前記学習モデルを選択し、
    前記選択された学習モデルを用いて、前記応答を決定する
    音声対話方法。
  9. ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法を実行するプログラムであって、
    前記ユーザの発話であるユーザ発話を取得するステップと、
    前記取得されたユーザ発話の特徴を抽出するステップと、
    予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定するステップと、
    前記決定された応答を実行するための制御を行うステップと、
    前記ユーザ発話に対する前記実行された応答のタイミング又は前記実行された応答に対する前記ユーザ発話のタイミングに応じて、前記実行された応答が誤りであるか否かを判定するステップと、
    前記判定の結果に応じて、前記複数の学習モデルから前記学習モデルを選択するステップと、
    前記選択された学習モデルを用いて、前記応答を決定するステップと
    をコンピュータに実行させるプログラム。
JP2018092139A 2018-05-11 2018-05-11 音声対話システム、音声対話方法及びプログラム Active JP6969491B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018092139A JP6969491B2 (ja) 2018-05-11 2018-05-11 音声対話システム、音声対話方法及びプログラム
US16/360,238 US10971149B2 (en) 2018-05-11 2019-03-21 Voice interaction system for interaction with a user by voice, voice interaction method, and program
EP19165062.1A EP3567586B1 (en) 2018-05-11 2019-03-26 Voice interaction system, voice interaction method, and program
CN201910354070.XA CN110473533B (zh) 2018-05-11 2019-04-29 语音对话***、语音对话方法以及程序
KR1020190053429A KR102217917B1 (ko) 2018-05-11 2019-05-08 음성대화 시스템, 음성대화 방법 및 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018092139A JP6969491B2 (ja) 2018-05-11 2018-05-11 音声対話システム、音声対話方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2019197182A JP2019197182A (ja) 2019-11-14
JP6969491B2 true JP6969491B2 (ja) 2021-11-24

Family

ID=65991549

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018092139A Active JP6969491B2 (ja) 2018-05-11 2018-05-11 音声対話システム、音声対話方法及びプログラム

Country Status (5)

Country Link
US (1) US10971149B2 (ja)
EP (1) EP3567586B1 (ja)
JP (1) JP6969491B2 (ja)
KR (1) KR102217917B1 (ja)
CN (1) CN110473533B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11568135B1 (en) * 2020-09-23 2023-01-31 Amazon Technologies, Inc. Identifying chat correction pairs for training models to automatically correct chat inputs
US11676593B2 (en) 2020-12-01 2023-06-13 International Business Machines Corporation Training an artificial intelligence of a voice response system based on non_verbal feedback
US11798551B2 (en) * 2021-03-25 2023-10-24 Bank Of America Corporation System and method for voice controlled automatic information access and retrieval
WO2022215104A1 (ja) * 2021-04-05 2022-10-13 三菱電機株式会社 音声対話装置および音声対話方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321854B2 (en) * 2002-09-19 2008-01-22 The Penn State Research Foundation Prosody based audio/visual co-analysis for co-verbal gesture recognition
JP2005221679A (ja) 2004-02-04 2005-08-18 Advanced Telecommunication Research Institute International 発話スタイル評価装置及び発話スタイル分類装置
KR100612839B1 (ko) 2004-02-18 2006-08-18 삼성전자주식회사 도메인 기반 대화 음성인식방법 및 장치
US7542903B2 (en) * 2004-02-18 2009-06-02 Fuji Xerox Co., Ltd. Systems and methods for determining predictive models of discourse functions
JP2005352154A (ja) 2004-06-10 2005-12-22 National Institute Of Information & Communication Technology 感情状態反応動作装置
KR100622019B1 (ko) * 2004-12-08 2006-09-11 한국전자통신연구원 음성 인터페이스 시스템 및 방법
CN100347741C (zh) * 2005-09-02 2007-11-07 清华大学 移动语音合成方法
JP2007072331A (ja) 2005-09-09 2007-03-22 Matsushita Electric Ind Co Ltd 音声対話方法および音声対話システム
JP5051882B2 (ja) 2007-06-20 2012-10-17 学校法人早稲田大学 音声対話装置、音声対話方法及びロボット装置
JP5119055B2 (ja) 2008-06-11 2013-01-16 日本システムウエア株式会社 多言語対応音声認識装置、システム、音声の切り替え方法およびプログラム
JP5703491B2 (ja) 2010-01-26 2015-04-22 国立大学法人山梨大学 言語モデル・音声認識辞書作成装置及びそれらにより作成された言語モデル・音声認識辞書を用いた情報処理装置
JP5431282B2 (ja) * 2010-09-28 2014-03-05 株式会社東芝 音声対話装置、方法、プログラム
JP2015087718A (ja) 2013-11-01 2015-05-07 トヨタ自動車株式会社 音声対話システム及び音声対話方法
JP2017102247A (ja) 2015-12-01 2017-06-08 国立研究開発法人産業技術総合研究所 音声対話システム、音声対話制御法およびプログラム
JP2017125921A (ja) 2016-01-13 2017-07-20 日本電信電話株式会社 発話選択装置、方法、及びプログラム
JP6461058B2 (ja) * 2016-09-06 2019-01-30 国立大学法人京都大学 音声対話装置および音声対話装置を用いた自動対話方法
JP6515897B2 (ja) * 2016-09-28 2019-05-22 トヨタ自動車株式会社 音声対話システムおよび発話意図理解方法
CN106448670B (zh) * 2016-10-21 2019-11-19 竹间智能科技(上海)有限公司 基于深度学习和强化学习的自动回复对话***
JP6731326B2 (ja) * 2016-10-31 2020-07-29 ファーハット ロボティクス エービー 音声対話装置及び音声対話方法
CN108010523B (zh) * 2016-11-02 2023-05-09 松下电器(美国)知识产权公司 信息处理方法以及记录介质

Also Published As

Publication number Publication date
KR102217917B1 (ko) 2021-02-19
US20190348038A1 (en) 2019-11-14
CN110473533A (zh) 2019-11-19
EP3567586B1 (en) 2020-10-14
KR20190129731A (ko) 2019-11-20
CN110473533B (zh) 2023-03-10
US10971149B2 (en) 2021-04-06
EP3567586A1 (en) 2019-11-13
JP2019197182A (ja) 2019-11-14

Similar Documents

Publication Publication Date Title
JP7063779B2 (ja) 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法
US10388279B2 (en) Voice interaction apparatus and voice interaction method
JP6969491B2 (ja) 音声対話システム、音声対話方法及びプログラム
JP6731326B2 (ja) 音声対話装置及び音声対話方法
US11430430B2 (en) System and method for determining the compliance of agent scripts
JP6436088B2 (ja) 音声検出装置、音声検出方法及びプログラム
JP2020064253A (ja) 学習装置、検出装置、学習方法、学習プログラム、検出方法、および検出プログラム
KR102019470B1 (ko) 음성 발화 양식을 이용한 발화자 감정인식 방법 및 시스템
CN111901627A (zh) 视频处理方法、装置、存储介质及电子设备
CN113571096B (zh) 语音情绪分类模型训练方法、装置、计算机设备及介质
JP2018132624A (ja) 音声対話装置
JP2018005122A (ja) 検出装置、検出方法及び検出プログラム
JP2013257418A (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP2019045831A (ja) 音声処理装置、方法およびプログラム
JP6772881B2 (ja) 音声対話装置
US11250853B2 (en) Sarcasm-sensitive spoken dialog system
CN111354358B (zh) 控制方法、语音交互装置、语音识别服务器、存储介质和控制***
US11922927B2 (en) Learning data generation device, learning data generation method and non-transitory computer readable recording medium
KR20230013826A (ko) 인공 지능 모델을 이용하여 음성 인식 서비스를 제공하는 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210914

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: 20210928

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211011

R151 Written notification of patent or utility model registration

Ref document number: 6969491

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151