JP2020034835A - 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法 - Google Patents

音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法 Download PDF

Info

Publication number
JP2020034835A
JP2020034835A JP2018162774A JP2018162774A JP2020034835A JP 2020034835 A JP2020034835 A JP 2020034835A JP 2018162774 A JP2018162774 A JP 2018162774A JP 2018162774 A JP2018162774 A JP 2018162774A JP 2020034835 A JP2020034835 A JP 2020034835A
Authority
JP
Japan
Prior art keywords
user
learning model
utterance
response
state
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
JP2018162774A
Other languages
English (en)
Other versions
JP7063779B2 (ja
Inventor
達也 河原
Tatsuya Kawahara
達也 河原
達朗 堀
Tatsuro Hori
達朗 堀
生聖 渡部
Seisho Watabe
生聖 渡部
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
Kyoto University NUC
Original Assignee
Toyota Motor Corp
Kyoto University NUC
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, Kyoto University NUC filed Critical Toyota Motor Corp
Priority to JP2018162774A priority Critical patent/JP7063779B2/ja
Priority to EP19191406.8A priority patent/EP3618063B1/en
Priority to CN201910783430.8A priority patent/CN110875032B/zh
Priority to US16/555,603 priority patent/US20200075007A1/en
Publication of JP2020034835A publication Critical patent/JP2020034835A/ja
Application granted granted Critical
Publication of JP7063779B2 publication Critical patent/JP7063779B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • 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/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
    • 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
    • G10L25/66Speech 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 for extracting parameters related to health condition
    • 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
    • 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/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
    • 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
    • G10L25/63Speech 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 for estimating an emotional state
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Signal Processing (AREA)
  • Ophthalmology & Optometry (AREA)
  • Child & Adolescent Psychology (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Epidemiology (AREA)
  • Public Health (AREA)
  • User Interface Of Digital Computer (AREA)
  • Manipulator (AREA)

Abstract

【課題】応答誤りが発生しないように適切に対処することが可能な音声対話システムを提供する。【解決手段】発話取得部102は、ユーザ発話を取得する。特徴抽出部104は、ユーザ発話の特徴を抽出する。応答決定部120は、複数の学習モデルのうちのいずれかを用いて、抽出された特徴ベクトルに応じた応答を決定する。応答実行部130は、決定された応答を実行する。ユーザ状態検出部140は、ユーザ状態を検出する。学習モデル選択部150は、検出されたユーザ状態に応じて、複数の学習モデルから学習モデルを選択する。応答決定部120は、選択された学習モデルを用いて、応答を決定する。【選択図】図2

Description

本発明は、音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法に関し、特に、ユーザと音声を用いた対話を行うことが可能な音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法に関する。
ユーザが音声対話ロボット(音声対話システム)と日常会話を楽しむための技術が普及しつつある。この技術にかかる音声対話ロボットは、ユーザが発声した音声の音韻情報等を解析して、解析結果に応じた応答を実行する。ここで、音声対話ロボットが学習モデルを用いて応答を決定することが、行われている。
上記の技術に関連し、特許文献1は、ユーザの発する音声からそのユーザの感情状態を判断して適切な対応動作を実行する感情状態反応動作装置を開示する。特許文献1にかかる感情状態反応動作装置は、音声情報の音韻スペクトルに係る特徴量を抽出する音韻特徴量抽出手段と、音韻特徴量を入力して、予め備えた状態判断テーブルに基づき音声情報の感情状態を判断する状態判断手段と、感情状態を入力して、予め備えた対応動作選択テーブルに基づき対応動作処理を決定する対応動作選択手段とを有する。さらに、特許文献1にかかる感情状態反応動作装置は、感情状態学習用テーブルと感情状態学習手段を備え、感情状態学習手段は、感情状態学習テーブルに基づいて所定の機械学習モデルにより音韻特徴量と感情状態との関連を取得して状態判断テーブルに学習結果を保存し、状態判断手段は、状態判断テーブルに基づいて上記機械学習モデルによる感情状態の判断を行う。
特開2005−352154号公報
ユーザの状態(ユーザの違い、又は、ユーザの感情等)によっては、機械学習モデルが適切でないおそれがある。この場合、例えば、ユーザの発話と装置の発話とが衝突する発話衝突、又は、ユーザの発話と装置の発話との間の期間が長期に亘ってしまう長期沈黙といった、応答誤りが発生するおそれがある。一方、特許文献1にかかる技術では、1つの機械学習モデルを用いて対応動作処理を決定している。したがって、特許文献1にかかる技術では、学習モデルが適切でないために応答誤りが発生する場合であっても、応答誤りが発生しないように適切に対処することが困難である。
本発明は、応答誤りが発生しないように適切に対処することが可能な音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法を提供するものである。
本発明にかかる音声対話システムは、ユーザと音声を用いた対話を行う音声対話システムであって、前記ユーザの発話であるユーザ発話を取得する発話取得部と、前記取得されたユーザ発話の特徴を少なくとも抽出する特徴抽出部と、予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定する応答決定部と、前記決定された応答を実行するための制御を行う応答実行部と、前記ユーザの状態であるユーザ状態を検出するユーザ状態検出部と、前記検出されたユーザ状態に応じて、前記複数の学習モデルから前記学習モデルを選択する学習モデル選択部とを有し、前記応答決定部は、前記学習モデル選択部によって選択された学習モデルを用いて、前記応答を決定する。
また、本発明にかかる音声対話方法は、ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法であって、前記ユーザの発話であるユーザ発話を取得し、前記取得されたユーザ発話の特徴を少なくとも抽出し、予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定し、前記決定された応答を実行するための制御を行い、前記ユーザの状態であるユーザ状態を検出し、前記検出されたユーザ状態に応じて、前記複数の学習モデルから前記学習モデルを選択し、前記選択された学習モデルを用いて、前記応答を決定する。
また、本発明にかかるプログラムは、ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法を実行するプログラムであって、前記ユーザの発話であるユーザ発話を取得するステップと、前記取得されたユーザ発話の特徴を少なくとも抽出するステップと、予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定するステップと、前記決定された応答を実行するための制御を行うステップと、前記ユーザの状態であるユーザ状態を検出するステップと、前記検出されたユーザ状態に応じて、前記複数の学習モデルから前記学習モデルを選択するステップと、前記選択された学習モデルを用いて、前記応答を決定するステップとをコンピュータに実行させる。
応答誤りが発生する要因は、学習モデルが適切でないことが多い。本発明は、上記のように構成されているので、学習モデルが適切でない場合に、ユーザ状態に応じて適切な学習モデルに切り替えることができる。したがって、本発明は、応答誤りが発生しないように適切に対処することが可能となる。
また、好ましくは、前記ユーザ状態検出部は、前記ユーザ状態として対話に対する前記ユーザの積極性の度合を検出し、前記学習モデル選択部は、前記ユーザの積極性の度合に対応する前記学習モデルを選択する。
本発明は、このように構成されていることによって、ユーザの対話に対する積極性の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの積極性に合わせて応答を実行することができる。
また、好ましくは、前記ユーザ状態検出部は、予め定められた期間における前記ユーザの発話量、又は、前記期間において当該音声対話システムが応答として音声を出力した時間と前記ユーザが発話した時間との合計に対する前記ユーザが発話した時間の割合を検出し、前記学習モデル選択部は、前記ユーザの発話量又は前記ユーザが発話した時間の割合に対応する前記学習モデルを選択する。
本発明は、このように構成されていることによって、より正確に、ユーザの積極性の度合を判定することができる。
また、好ましくは、前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの識別情報を検出し、前記学習モデル選択部は、前記ユーザの識別情報に対応する前記学習モデルを選択する。
本発明は、このように構成されていることによって、ユーザに適合した学習モデルを用いて対話を行うので、対話を行うユーザに合わせて応答を実行することができる。
また、好ましくは、前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの感情を検出し、前記学習モデル選択部は、前記ユーザの感情に対応する前記学習モデルを選択する。
本発明は、このように構成されていることによって、ユーザの対話に対する感情の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの感情に合わせて応答を実行することができる。
また、好ましくは、前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの健康状態を検出し、前記学習モデル選択部は、前記ユーザの健康状態に対応する前記学習モデルを選択する。
本発明は、このように構成されていることによって、ユーザの健康状態の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの健康状態に合わせて応答を実行することができる。
また、好ましくは、前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの覚醒状態の度合を検出し、前記学習モデル選択部は、前記ユーザの覚醒状態の度合に対応する前記学習モデルを選択する。
本発明は、このように構成されていることによって、ユーザの覚醒状態の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの覚醒状態に合わせて応答を実行することができる。
また、本発明にかかる学習モデル生成装置は、ユーザと音声を用いた対話を行う音声対話システムで用いられる学習モデルを生成する学習モデル生成装置であって、1以上の任意ユーザと対話を行うことによって前記任意ユーザの発話であるユーザ発話を取得する発話取得部と、前記取得されたユーザ発話の特徴を少なくとも示す特徴ベクトルを抽出する特徴抽出部と、前記ユーザ発話に対する応答を示す正解ラベルと前記特徴ベクトルとが対応付けられたサンプルデータを生成するサンプルデータ生成部と、前記ユーザ発話を発したときの前記任意ユーザの状態であるユーザ状態を取得して、前記取得されたユーザ状態を前記ユーザ発話に対応する前記サンプルデータに対応付けるユーザ状態取得部と、前記ユーザ状態ごとに前記サンプルデータを分類するサンプルデータ分類部と、前記分類された前記サンプルデータごとに、機械学習によって複数の学習モデルを生成する学習モデル生成部とを有する。
また、本発明にかかる学習モデル生成方法は、ユーザと音声を用いた対話を行う音声対話システムで用いられる学習モデルを生成する学習モデル生成方法であって、1以上の任意ユーザと対話を行うことによって前記任意ユーザの発話であるユーザ発話を取得し、前記取得されたユーザ発話の特徴を少なくとも示す特徴ベクトルを抽出し、前記ユーザ発話に対する応答を示す正解ラベルと前記特徴ベクトルとが対応付けられたサンプルデータを生成し、前記ユーザ発話を発したときの前記任意ユーザの状態であるユーザ状態を取得して、前記取得されたユーザ状態を前記ユーザ発話に対応する前記サンプルデータに対応付け、前記ユーザ状態ごとに前記サンプルデータを分類し、前記分類された前記サンプルデータごとに、機械学習によって複数の学習モデルを生成する。
本発明は、ユーザ状態ごとにサンプルデータを分類して機械学習によって複数の学習モデルを生成することによって、ユーザ状態に対応した複数の学習モデルを生成することができる。したがって、音声対話システムは、ユーザ状態に応じて学習モデルを選択することができる。
本発明によれば、応答誤りが発生しないように適切に対処することが可能な音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法を提供できる。
実施の形態1にかかる音声対話システムのハードウェア構成を示す図である。 実施の形態1にかかる音声対話システムの構成を示すブロック図である。 実施の形態1にかかる特徴抽出部によって生成される特徴ベクトルを例示する図である。 実施の形態1にかかる学習モデルの生成方法の概略を説明するための図である。 実施の形態1にかかる学習モデルの生成方法の概略を説明するための図である。 実施の形態1にかかる学習モデルの生成方法の概略を説明するための図である。 実施の形態1にかかる音声対話システムによってなされる音声対話方法を示すフローチャートである。 実施の形態1にかかる音声対話システムによってなされる音声対話方法を示すフローチャートである。 ユーザ状態がユーザの識別情報である場合における処理を示す図である。 ユーザ状態がユーザの対話に対する積極性の度合である場合における処理を示す図である。 積極性の度合を判定するためのテーブルを例示する図である。 ユーザ状態がユーザの感情である場合における処理を示す図である。 ユーザ状態がユーザの健康状態である場合における処理を示す図である。 ユーザ状態がユーザの覚醒状態の度合である場合における処理を示す図である。 実施の形態2にかかる音声対話システムの構成を示すブロック図である。 実施の形態2にかかる学習モデル生成装置の構成を示す図である。 実施の形態2にかかる学習モデル生成装置によって実行される学習モデル生成方法を示すフローチャートである。
(実施の形態1)
以下、図面を参照して本発明の実施の形態について説明する。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
図1は、実施の形態1にかかる音声対話システム1のハードウェア構成を示す図である。音声対話システム1は、ユーザと音声を用いて対話を行う。具体的には、音声対話システム1は、ユーザからの発話(ユーザ発話)に応じて、ユーザに対して音声等の応答を実行することで、ユーザと対話を行う。音声対話システム1は、例えば、生活支援ロボット及び小型ロボット等のロボット、クラウドシステム及びスマートフォン等に搭載可能である。以下の説明では、音声対話システム1がロボットに搭載された例を示している。
音声対話システム1は、周囲の音声を収集するマイク2と、音声を発するスピーカ4と、ユーザの状態を検出するために使用される検出装置6と、ロボットの首等を動作させるマニピュレータ8と、制御装置10とを有する。制御装置10は、例えばコンピュータとしての機能を有する。制御装置10は、マイク2、スピーカ4、検出装置6及びマニピュレータ8と、有線又は無線で接続されている。検出装置6は、例えば、カメラ及び生体センサの少なくとも1つを含む。生体センサは、例えば、血圧計、体温計、脈拍計等である。
制御装置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と、選択モデル格納部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は、ユーザ発話(及び音声対話システム1の発話)を取得する。具体的には、発話取得部102は、ユーザの発話(及び音声対話システム1の発話)を集音してデジタル信号に変換する。そして、発話取得部102は、ユーザ発話の音声データ(ユーザ音声データ)を、特徴抽出部104に対して出力する。
特徴抽出部104は、少なくともユーザ発話の特徴を抽出する。具体的には、特徴抽出部104は、ユーザ発話について、発話の具体的な意味内容を示す言語情報とは異なる非言語情報の解析を行う。また、特徴抽出部104は、非言語情報の解析結果である非言語情報解析結果として、後述する特徴ベクトルを生成する。そして、特徴抽出部104は、非言語情報解析結果(特徴ベクトル)を、応答決定部120に対して出力する。なお、特徴抽出部104は、ユーザ発話以外のユーザの特徴を抽出して特徴ベクトルを生成してもよい。
ここで、非言語情報とは、処理対象のユーザ発話の言語情報(文字列)とは異なる情報であり、ユーザ発話の韻律情報、及び、応答履歴情報の少なくとも一方を含む。韻律情報とは、ユーザ発話の音声波形の特徴を示す情報であり、例えば、基本周波数、音圧、周波数等の変化量、変動帯域、振幅の最大値及び平均値等である。また、応答履歴情報とは、応答決定部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)は、ユーザ発話を発したユーザの状態(ユーザ状態)を検出する。詳しくは後述する。ユーザ状態検出部140は、検出されたユーザ状態を、学習モデル選択部150に対して出力する。ここで、ユーザ状態とは、例えば、ユーザの識別情報、対話に対するユーザの積極性、ユーザの感情、ユーザの健康状態、又は、ユーザの覚醒状態であるが、これらに限定されない。なお、ユーザの感情とは、例えば、ユーザの喜怒哀楽、又は驚き等であるが、これらに限定されない。また、ユーザの健康状態とは、例えば、ユーザの脈拍、体温又は血圧等であるが、これらに限定されない。ユーザ状態検出部140は、カメラによって撮影されたユーザの画像、生体センサによって検出されたユーザの脈拍、体温若しくは血圧、又はマイク2によって集音されたユーザ音声を用いて、上述したようなユーザ状態を検出する。
学習モデル選択部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人で聴いたよ。」が終了すると、句点レベルの切れ目があったと判断し、発話応答が実行されるようにロボットを操作する。このとき、ロボットは、発話「本当ですか」を出力する。
さらに、ユーザAのユーザ状態が検出される。ユーザ状態は、例えばオペレータによって判断されてもよいし、上述したユーザ状態検出部140のような機能により自動的に検出されてもよい。これにより、ユーザ状態#1〜#Nのいずれかが、サンプルデータに対応付けられる。ここで、Nは、2以上の整数であり、ユーザ状態の個数を示す。このNが、学習モデルの数に対応する。
図5は、図4の例によって取得された特徴ベクトルと正解ラベルとの組であるサンプルデータを例示する図である。ユーザ発話「結局」のユーザ発話長は0.5秒であったので、特徴ベクトルの成分(図3のvi7)に「0.5」が入力される。また、ユーザ発話「結局」に対する応答は「沈黙応答」であったので、ユーザ発話「結局」の特徴ベクトルには、正解ラベル「A」が対応付けられる。
また、ユーザ発話「1人で聴いたよ。」のユーザ発話長は1.5秒であったので、特徴ベクトルの成分(図3のvi7)に「1.5」が入力される。また、ユーザ発話「1人で聴いたよ。」に対する応答は「発話応答」であったので、ユーザ発話「1人で聴いたよ。」の特徴ベクトルには、正解ラベル「C」が対応付けられる。さらに、この一連のユーザ発話「結局1人で聴いたよ。」では、ユーザ状態(例えばユーザの識別情報)が「ユーザ状態#1」(例えば「ユーザA」)であったので、ユーザ発話「結局1人で聴いたよ。」に対応するサンプルデータ群に、ユーザ状態#1が対応付けられる。
図6は、分類されたサンプルデータ群から学習モデルが生成される態様を例示する図である。上記のようにして収集されたサンプルデータ群が、ユーザ状態#1〜#Nごとに、N個のグループに分類される。ユーザ状態#1のサンプルデータ群(例えば「ユーザA」のユーザ発話に対応するサンプルデータ群)から、例えば教師あり学習等の機械学習によって、学習モデル#1が生成される。同様にして、ユーザ状態#Nのサンプルデータ群(例えば「ユーザN」のユーザ発話に対応するサンプルデータ群)から、機械学習によって、学習モデル#Nが生成される。学習モデル#1〜#Nの正解ラベル「A」,「B」,「C」の境界が互いに異なっているので、学習モデル#1〜#Nそれぞれに同じ特徴ベクトルを入力した場合であっても、出力される応答は異なり得る。このように生成された複数の学習モデルが、学習モデルデータベース160に格納される。学習モデルを生成するために使用される機械学習の方法は、例えば、ランダムフォレストであってもよいし、サポートベクターマシン(SVM;Support Vector Machine)であってもよいし、ディープラーニングであってもよい。
なお、学習モデルは、ユーザ状態に応じて、正解ラベル「A」,「B」,「C」の境界が定められている。例えば、ユーザ状態が「積極性」である場合、積極性の度合が大きなユーザ状態に対応する学習モデルであるほど、「発話」が選択される確率が低くなり得、「沈黙」が選択される確率が高くなり得る。これは、対話に対する積極性の度合が大きいということは、ユーザが積極的に発話する傾向にあるということであるので、発話衝突を抑制するため、音声対話システム1はあまり発話しないようにするということである。逆に、対話に対する積極性の度合が小さい場合には、ユーザがあまり積極的に発話しない傾向にあるということであるので、長期沈黙を抑制するため、音声対話システム1がより発話するようにする。
また、学習モデルは、上述したユーザ状態検出部140によって検出されるユーザ状態に対応している。例えば、ユーザ状態検出部140がユーザ状態として「積極性の度合」を検出する場合、学習モデルは、積極性の度合ごとに、複数設けられている。また、ユーザ状態検出部140がユーザ状態として「ユーザの識別情報」を検出する場合、学習モデルは、ユーザの識別情報(ユーザA、ユーザB、・・・、ユーザN等)ごとに、複数設けられている。
図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)。学習モデル選択部150は、S130の処理で検出されたユーザ状態に対応する学習モデルを選択する(ステップS140)。具体的には、現在の学習モデルが、検出されたユーザ状態に対応するものと異なる場合、学習モデル選択部150は、現在の学習モデルを、検出されたユーザ状態に対応する学習モデルに切り替える。一方、現在の学習モデルが、検出されたユーザ状態に対応するものである場合、学習モデル選択部150は、学習モデルを変更しない。このように、実施の形態1にかかる学習モデル選択部150は、ユーザ状態に応じた新たな学習モデルを選択するように構成されているので、応答の精度がより良くなる学習モデルを選択することが可能となる。
以下、ユーザ状態の具体例を説明する。第1の例は、ユーザ状態がユーザの識別情報である場合の例である。第2の例は、ユーザ状態が対話に対するユーザの積極性の度合である場合の例である。第3の例は、ユーザ状態がユーザの感情の度合である場合の例である。第4の例は、ユーザ状態がユーザの健康状態の度合である場合の例である。第5の例は、ユーザ状態がユーザの覚醒状態の度合である場合の例である。
(ユーザ状態の第1の例)
図9は、ユーザ状態がユーザの識別情報である場合における処理を示す図である。図9は、ユーザ状態がユーザの識別情報である場合における、S130,S140(図7)の具体的な処理を示す。ユーザ状態検出部140は、カメラである検出装置6から、ユーザの画像を取得する(ステップS132A)。なお、「画像」とは、情報処理の対象としての、画像を示す画像データをも意味し得る(以下の説明において同様)。
ユーザ状態検出部140は、画像に対して顔認識処理を行って、ユーザの識別情報を検出する(ステップS134A)。具体的には、ユーザ状態検出部140は、例えば、画像の中からユーザの顔領域を決定し、顔特徴点の検出を行って、目、鼻、口端などの顔の特徴点位置を判定する。そして、ユーザ状態検出部140は、特徴点位置を用いて顔領域の位置及び大きさを正規化した後、予め登録された人物の画像との顔照合処理を行う。これにより、ユーザ状態検出部140は、照合された人物の識別情報を取得する。
次に、学習モデル選択部150は、検出された識別情報に対応する学習モデルを選択する(ステップS142A)。なお、予め、ユーザの識別情報ごとに、複数の学習モデルが学習モデルデータベース160に格納されているとする。例えば、ユーザ状態検出部140によって「ユーザA」の識別情報が検出された場合、学習モデル選択部150は、「ユーザA」に対応する学習モデルを選択する。
このようにして、第1の例にかかる音声対話システム1は、ユーザに適合した学習モデルを用いて対話を行うので、対話を行うユーザに合わせて応答を実行することができる。したがって、第1の例にかかる音声対話システム1は、応答誤りが発生しないように適切に対処することが可能となる。また、応答誤りが発生するということは、現在の対話のテンポ又はリズムが、そのユーザに適していないということである。第1の例にかかる音声対話システム1は、ユーザに対応する学習モデルを選択することによって、対話のテンポ又はリズムをそのユーザに適したものすることが可能となる。
また、第1の例においては、学習モデルを生成する際に、ユーザ状態としてユーザの識別情報が対応付けられる。言い換えると、ユーザの識別情報ごとに、複数の学習モデルが生成される。学習モデルを生成する際には、例えばオペレータが、ユーザの識別情報を入力することで、サンプルデータとユーザの識別情報とが対応付けられる。これにより、ユーザの識別情報ごとに、サンプルデータが分類され、分類されたサンプルデータを用いて、機械学習によって複数の学習データが生成される。したがって、例えば、ユーザAに対応する学習モデル、ユーザBに対応する学習モデル、及び、ユーザCに対応する学習モデルが生成されることとなる。
なお、上述した例では、画像を用いた顔認識処理によってユーザを識別するとしたが、ユーザを識別する方法は、この方法に限られない。ユーザ発話に対して話者認識処理を行うことによって、ユーザ発話を発したユーザを識別してもよい。さらに、ユーザの識別情報(ID)を入力することによって、ユーザを識別してもよい。
(ユーザ状態の第2の例)
図10は、ユーザ状態がユーザの対話に対する積極性の度合である場合における処理を示す図である。図10は、ユーザ状態がユーザの積極性の度合である場合における、S130,S140(図7)の具体的な処理を示す。ユーザ状態検出部140は、過去T分間におけるユーザ発話割合Rsを取得する(ステップS132B)。ここで、Tは、予め定められた期間を示す。例えば、T=1[分]であるが、これに限定されない。「過去T分間」とは、現在からT分間遡った時刻から現在までの期間である。ユーザ発話割合Rsは、過去T分間における、音声対話システム1が応答として音声を出力した時間tr[分]とユーザ発話した時間tu[分]との合計tu+tr[分]に対するユーザが発話した時間tuの割合である。つまり、Rs[%]=100*tu/(tu+tr)である。
ユーザ状態検出部140は、ユーザ発話割合Rsに対応する積極性の度合を検出する(ステップS134B)。具体的には、ユーザ状態検出部140は、図11に例示するテーブルを、予め記憶している。ユーザ状態検出部140は、このテーブルを用いて、ユーザ発話割合Rsが積極性のどの段階に対応するのかを判定する。
図11は、積極性の度合を判定するためのテーブルを例示する図である。図11に例示したテーブルでは、積極性の度合とユーザ発話割合Rsとが対応付けられている。図11の例では、積極性の度合が、#1〜#4の4つの段階で定められている。度合#1から度合#4にかけて、積極性の度合が大きくなる。ユーザ状態検出部140は、取得されたユーザ発話割合Rsが、度合#1〜#4のどの度合に対応するのかを判定する。例えば、Rs=20[%]である場合、ユーザ状態検出部140は、積極性の度合を#1と判定する。また、Rs=80[%]である場合、ユーザ状態検出部140は、積極性の度合を#4と判定する。
次に、学習モデル選択部150は、検出された積極性の度合に対応する学習モデルを選択する(ステップS142B)。なお、予め、ユーザの積極性の度合ごとに、複数の学習モデルが学習モデルデータベース160に格納されているとする。例えば、ユーザ状態検出部140によって「積極性の度合#1」が検出された場合、学習モデル選択部150は、「積極性の度合#1」に対応する学習モデルを選択する。また、ユーザ状態検出部140によって「積極性の度合#4」が検出された場合、学習モデル選択部150は、「積極性の度合#4」に対応する学習モデルを選択する。
なお、上述した説明では、ユーザ発話割合に応じてユーザの積極性の度合を判定するとしたが、ユーザの発話量に応じてユーザの積極性の度合を判定してもよい。具体的には、ユーザ状態検出部140は、過去T分間におけるユーザ発話量[分]を取得する(S132B)。ユーザ状態検出部140は、ユーザ発話量に対応する積極性の度合を検出する(S134B)。この場合、図11に例示したテーブルと同様に、ユーザ状態検出部140は、ユーザ発話量と積極性の度合(段階)とが対応付けられたテーブルを記憶していてもよい。ユーザ状態検出部140は、このテーブルを用いて、ユーザ発話量が積極性のどの段階に対応するのかを判定し得る。
このようにして、第2の例にかかる音声対話システム1は、ユーザの対話に対する積極性の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの積極性に合わせて応答を実行することができる。したがって、第2の例にかかる音声対話システム1は、応答誤りが発生しないように適切に対処することが可能となる。また、応答誤りが発生するということは、現在の対話のテンポ又はリズムが、ユーザの積極性の度合に適していないということである。第2の例にかかる音声対話システム1は、ユーザの積極性の度合に対応する学習モデルを選択することによって、対話のテンポ又はリズムをユーザの積極性の度合に適したものすることが可能となる。また、ユーザの対話に対する積極性の度合は、対話の話題等によって変化し得る。第2の例にかかる音声対話システム1は、積極性の度合の変化に応じて学習モデルを変更することができる。
また、第2の例においては、学習モデルを生成する際に、ユーザ状態としてユーザの積極性の度合が対応付けられる。言い換えると、積極性の度合ごとに、複数の学習モデルが生成される。学習モデルを生成する際には、例えばオペレータが、対話中のユーザの積極性の度合を入力することで、サンプルデータとユーザの積極性の度合とが対応付けられる。また、学習モデルの生成の際でも、図10に示したように、ユーザ発話割合又はユーザ発話量を用いて対話中のユーザの積極性の度合が判定されてもよい。この場合、オペレータが、期間Tを適宜設定してもよい。例えば、対話の話題が変更されたときに、ユーザの積極性の度合を計算するようにしてもよい。
これにより、ユーザの積極性の度合ごとに、サンプルデータが分類され、分類されたサンプルデータを用いて、機械学習によって複数の学習データが生成される。したがって、例えば、積極性の度合#1に対応する学習モデル、積極性の度合#2に対応する学習モデル、積極性の度合#3に対応する学習モデル、及び、積極性の度合#4に対応する学習モデルが生成されることとなる。
なお、上述したように、学習モデルは、ユーザ状態に応じて、正解ラベル「A(沈黙)」,「B(頷き)」,「C(発話)」の境界が定められている。ユーザ状態が「積極性」である場合、積極性の度合が大きなユーザ状態に対応する学習モデルであるほど、「発話」が選択される確率が低くなり得、「沈黙」が選択される確率が高くなり得る。つまり、学習モデル#1(度合#1)で「A(沈黙)」が選択される確率よりも、学習モデル#4(度合#4)で「A(沈黙)」が選択される確率の方が高くなるように、学習モデルが生成される。これにより、積極性の度合が大きなユーザとの対話において、発話衝突を抑制するため、音声対話システム1はあまり発話しないようにすることが可能となる。また、積極性の度合が小さいユーザとの対話において、長期沈黙を抑制するため、音声対話システム1はシステム発話を多くするようにすることが可能となる。
なお、上述した例では、ユーザ発話割合又はユーザ発話量を用いてユーザの対話に対する積極性の度合を検出するとしたが、ユーザの積極性の度合を検出する方法は、この方法に限られない。例えば、ユーザ状態検出部140は、ユーザの画像を取得することで、積極性の度合を検出してもよい。具体的には、ユーザ状態検出部140は、ユーザの顔画像に示されたユーザの表情及び視線を解析してユーザの積極性を判定し、積極性の度合を数値化してもよい。また、例えば、ユーザ状態検出部140は、ユーザ発話を取得することで、積極性の度合を検出してもよい。具体的には、ユーザ状態検出部140は、ユーザ発話の韻律を解析してユーザの積極性を判定し、積極性の度合を数値化してもよい。しかしながら、上述したように、ユーザ発話割合又はユーザ発話量を用いて積極性の度合を判定することにより、より正確に、ユーザの積極性の度合を判定することができる。したがって、ユーザ発話割合又はユーザ発話量を用いることにより、第2の例にかかる音声対話システム1は、応答誤りが発生しないように、より適切に対処することが可能となる。
(ユーザ状態の第3の例)
図12は、ユーザ状態がユーザの感情である場合における処理を示す図である。図12は、ユーザ状態がユーザの感情の度合である場合における、S130,S140(図7)の具体的な処理を示す。「感情の度合」とは、例えば「喜び」の度合である。しかしながら、「感情の度合」は、怒りの度合、悲しみの度合、又は驚きの度合であってもよい。
ユーザ状態検出部140は、カメラである検出装置6から、ユーザの顔画像を取得する(ステップS132C)。ユーザ状態検出部140は、顔画像を解析して、表情及び視線等から、ユーザの感情(喜び)の度合を検出する(ステップS134C)。例えば、ユーザ状態検出部140は、「Affdex」又は「Emotion API」等の人工知能を用いて、ユーザの感情(喜び)を数値化してもよい。そして、ユーザ状態検出部140は、図11に例示したような、感情を示す数値と感情の度合とを対応付けたテーブルを用いて、感情の度合を検出してもよい。
次に、学習モデル選択部150は、検出された感情(喜び)の度合に対応する学習モデルを選択する(ステップS142C)。なお、予め、ユーザの感情の度合ごとに、複数の学習モデルが学習モデルデータベース160に格納されているとする。例えば、ユーザ状態検出部140によって「感情(喜び)の度合#1」が検出された場合、学習モデル選択部150は、「感情(喜び)の度合#1」に対応する学習モデルを選択する。また、ユーザ状態検出部140によって「感情(喜び)の度合#4」が検出された場合、学習モデル選択部150は、「感情(喜び)の度合#4」に対応する学習モデルを選択する。
このようにして、第3の例にかかる音声対話システム1は、ユーザの対話に対する感情の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの感情に合わせて応答を実行することができる。したがって、第3の例にかかる音声対話システム1は、応答誤りが発生しないように適切に対処することが可能となる。また、応答誤りが発生するということは、現在の対話のテンポ又はリズムが、ユーザの感情の度合に適していないということである。第3の例にかかる音声対話システム1は、ユーザの感情の度合に対応する学習モデルを選択することによって、対話のテンポ又はリズムをユーザの感情の度合に適したものすることが可能となる。また、ユーザの対話に対する感情の度合は、対話の話題等によって変化し得る。第3の例にかかる音声対話システム1は、感情の度合の変化に応じて学習モデルを変更することができる。
また、第3の例においては、学習モデルを生成する際に、ユーザ状態としてユーザの感情の度合が対応付けられる。言い換えると、感情の度合ごとに、複数の学習モデルが生成される。学習モデルを生成する際には、例えばオペレータが、対話中のユーザの感情の度合を入力することで、サンプルデータとユーザの感情の度合とが対応付けられる。また、学習モデルの生成の際でも、ユーザの顔画像を用いて対話中のユーザの感情の度合が判定されてもよい。
これにより、ユーザの感情の度合ごとに、サンプルデータが分類され、分類されたサンプルデータを用いて、機械学習によって複数の学習データが生成される。したがって、例えば、感情の度合#1に対応する学習モデル、感情の度合#2に対応する学習モデル、感情の度合#3に対応する学習モデル、及び、感情の度合#4に対応する学習モデルが生成されることとなる。
なお、上述した例では、ユーザの顔画像を用いてユーザの感情の度合を検出するとしたが、ユーザの感情の度合を検出する方法は、この方法に限られない。例えば、ユーザ状態検出部140は、ユーザ発話を取得することで、感情の度合を検出してもよい。具体的には、ユーザ状態検出部140は、ユーザ発話の韻律を解析してユーザの感情を判定し、感情の度合を数値化してもよい。
また、上述した例では、ユーザ状態検出部140が感情の度合を検出するとした。しかしながら、ユーザ状態検出部140は、感情の種類、つまり、喜び、悲しみ、怒り、驚き等を検出してもよい。具体的には、ユーザ状態検出部140は、喜び、悲しみ、怒り、驚きのそれぞれを示す数値を検出する。そして、ユーザ状態検出部140は、これらの数値のうち最も大きな値に対応する感情(例えば「怒り」)を、ユーザの感情として検出してもよい。この場合、学習モデルが、感情の種類ごとに複数設けられている。そして、学習モデル選択部150は、検出された感情の種類(例えば「怒り」)に応じた学習モデルを選択するようにしてもよい。
また、ユーザ状態検出部140は、感情の種類ごとに度合を検出してもよい。この場合、学習モデルデータベース160は、例えば、怒りの度合がX1であり驚きの度合がY1である場合の学習モデル、怒りの度合がX1であり驚きの度合がY2である場合の学習モデル、怒りの度合がX2であり驚きの度合がY1である場合の学習モデル、怒りの度合がX2であり驚きの度合がY2である場合の学習モデルを格納してもよい。そして、学習モデル選択部150は、検出された怒りの度合及び驚きの度合に対応する学習モデルを選択してもよい。
(ユーザ状態の第4の例)
図13は、ユーザ状態がユーザの健康状態である場合における処理を示す図である。図13は、ユーザ状態がユーザの健康状態の度合である場合における、S130,S140(図7)の具体的な処理を示す。「健康状態の度合」とは、例えば、心拍数の度合である。しかしながら、「健康状態の度合」は、血圧の度合又は体温の度合であってもよい。
ユーザ状態検出部140は、生体センサである検出装置6から、ユーザの生体系パラメータを取得する(ステップS132D)。生体系パラメータは、例えば心拍数である。ユーザ状態検出部140は、生体系パラメータから、ユーザの健康状態の度合を検出する(ステップS134D)。例えば、ユーザ状態検出部140は、図11に例示したような、健康状態を示す数値(心拍数)と健康状態の度合とを対応付けたテーブルを用いて、健康状態の度合を検出してもよい。
次に、学習モデル選択部150は、検出された健康状態(心拍数)の度合に対応する学習モデルを選択する(ステップS142D)。なお、予め、ユーザの健康状態の度合ごとに、複数の学習モデルが学習モデルデータベース160に格納されているとする。例えば、ユーザ状態検出部140によって「健康状態(心拍数)の度合#1」が検出された場合、学習モデル選択部150は、「健康状態(心拍数)の度合#1」に対応する学習モデルを選択する。また、ユーザ状態検出部140によって「健康状態(心拍数)の度合#4」が検出された場合、学習モデル選択部150は、「健康状態(心拍数)の度合#4」に対応する学習モデルを選択する。
このようにして、第4の例にかかる音声対話システム1は、ユーザの健康状態の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの健康状態に合わせて応答を実行することができる。したがって、第4の例にかかる音声対話システム1は、応答誤りが発生しないように適切に対処することが可能となる。また、応答誤りが発生するということは、現在の対話のテンポ又はリズムが、ユーザの健康状態の度合に適していないということである。第4の例にかかる音声対話システム1は、ユーザの健康状態の度合に対応する学習モデルを選択することによって、対話のテンポ又はリズムをユーザの健康状態の度合に適したものすることが可能となる。また、ユーザの心拍数等の度合は、対話の話題等によって変化し得る。第4の例にかかる音声対話システム1は、心拍数等の健康状態の度合の変化に応じて学習モデルを変更することができる。
また、第4の例においては、学習モデルを生成する際に、ユーザ状態としてユーザの健康状態の度合が対応付けられる。言い換えると、健康状態の度合ごとに、複数の学習モデルが生成される。学習モデルを生成する際には、例えば、生体センサを用いて対話中のユーザの健康状態の度合を入力することで、サンプルデータとユーザの健康状態の度合とが対応付けられる。
これにより、ユーザの健康状態の度合ごとに、サンプルデータが分類され、分類されたサンプルデータを用いて、機械学習によって複数の学習データが生成される。したがって、例えば、健康状態の度合#1に対応する学習モデル、健康状態の度合#2に対応する学習モデル、健康状態の度合#3に対応する学習モデル、及び、健康状態の度合#4に対応する学習モデルが生成されることとなる。
なお、上述した例では、生体センサを用いてユーザの健康状態の度合を検出するとしたが、ユーザの健康状態の度合を検出する方法は、この方法に限られない。例えば、ユーザ状態検出部140は、カメラである検出装置6からユーザの顔画像を取得することで、ユーザの健康状態の度合を検出してもよい。この場合、ユーザ状態検出部140は、顔画像を解析してユーザの顔色(赤色、青色、白色、黄色、黒色)を検出してもよい。そして、ユーザ状態検出部140は、ユーザの顔色が赤色、青色、白色、黄色、黒色のどの色に近いかに応じて、健康状態を検出してもよい。この場合、ユーザの顔色ごとに、複数の学習モデルが格納されている。
また、ユーザ状態検出部140は、複数の生体系パラメータ(心拍数、血圧及び体温から、ユーザの健康状態が良好であるか劣悪であるか、又は、ユーザの疲労度を判定してもよい。また、ユーザ状態検出部140は、心拍数、血圧及び体温それぞれが予め定められた正常範囲にあるか否かを判定し、正常範囲を逸脱した生体系パラメータの数に応じて、健康状態の度合(健康状態が良好か劣悪かの度合)を判定してもよい。
(ユーザ状態の第5の例)
図14は、ユーザ状態がユーザの覚醒状態の度合である場合における処理を示す図である。図14は、ユーザ状態がユーザの覚醒状態の度合である場合における、S130,S140(図7)の具体的な処理を示す。
ユーザ状態検出部140は、カメラ又は生体センサである検出装置6から、ユーザの生体系パラメータを取得する(ステップS132E)。生体系パラメータは、例えば、瞬目、心拍及び脳波の少なくとも1つである。なお、瞬目は、カメラから取得されたユーザの顔画像を解析することによって取得され得る。心拍及び脳波は、それぞれ生体センサである心拍計及び脳波計を用いて取得され得る。
ユーザ状態検出部140は、生体系パラメータから、ユーザの覚醒状態の度合を検出する(ステップS134E)。例えば、ユーザ状態検出部140は、上述した生体系パラメータから、覚醒度を算出する。例えば、ユーザ状態検出部140は、瞬目の間隔、瞬目の開眼時間、目の開度等により、覚醒度を算出し得る。そして、ユーザ状態検出部140は、図11に例示したような、覚醒度と覚醒状態の度合とを対応付けたテーブルを用いて、覚醒状態の度合を検出してもよい。
次に、学習モデル選択部150は、検出された覚醒状態の度合に対応する学習モデルを選択する(ステップS142E)。なお、予め、ユーザの覚醒状態の度合ごとに、複数の学習モデルが学習モデルデータベース160に格納されているとする。例えば、ユーザ状態検出部140によって「覚醒状態の度合#1」が検出された場合、学習モデル選択部150は、「覚醒状態の度合#1」に対応する学習モデルを選択する。また、ユーザ状態検出部140によって「覚醒状態の度合#4」が検出された場合、学習モデル選択部150は、「覚醒状態の度合#4」に対応する学習モデルを選択する。
このようにして、第5の例にかかる音声対話システム1は、ユーザの覚醒状態の度合に適合した学習モデルを用いて対話を行うので、対話を行うユーザの覚醒状態に合わせて応答を実行することができる。したがって、第5の例にかかる音声対話システム1は、応答誤りが発生しないように適切に対処することが可能となる。また、応答誤りが発生するということは、現在の対話のテンポ又はリズムが、ユーザの覚醒状態の度合に適していないということである。第5の例にかかる音声対話システム1は、ユーザの覚醒状態の度合に対応する学習モデルを選択することによって、対話のテンポ又はリズムをユーザの覚醒状態の度合に適したものすることが可能となる。また、ユーザの覚醒度は、対話の話題等によって変化し得る。第5の例にかかる音声対話システム1は、覚醒度の変化に応じて学習モデルを変更することができる。
また、第5の例においては、学習モデルを生成する際に、ユーザ状態としてユーザの覚醒状態の度合が対応付けられる。言い換えると、覚醒状態の度合ごとに、複数の学習モデルが生成される。学習モデルを生成する際には、例えば、カメラ又は生体センサを用いて対話中のユーザの覚醒状態の度合を入力することで、サンプルデータとユーザの覚醒状態の度合とが対応付けられる。
これにより、ユーザの覚醒状態の度合ごとに、サンプルデータが分類され、分類されたサンプルデータを用いて、機械学習によって複数の学習データが生成される。したがって、例えば、覚醒状態の度合#1に対応する学習モデル、覚醒状態の度合#2に対応する学習モデル、覚醒状態の度合#3に対応する学習モデル、及び、覚醒状態の度合#4に対応する学習モデルが生成されることとなる。
なお、上述した例では、カメラ又は生体センサを用いてユーザの覚醒状態の度合を検出するとしたが、ユーザの覚醒状態の度合を検出する方法は、この方法に限られない。ユーザ状態検出部140は、ユーザ発話を取得することで、覚醒状態の度合を検出してもよい。具体的には、ユーザ状態検出部140は、ユーザ発話の韻律を解析してユーザの覚醒状態を判定し、覚醒状態の度合を数値化してもよい。
(実施の形態2)
次に、実施の形態2について説明する。実施の形態2においては、音声対話システム1が複数の学習モデルを生成する点で、実施の形態1と異なる。なお、実施の形態2にかかる音声対話システム1のハードウェア構成については、図1に示した実施の形態1にかかる音声対話システム1のハードウェア構成と実質的に同様であるので、説明を省略する。
図15は、実施の形態2にかかる音声対話システム1の構成を示すブロック図である。実施の形態2にかかる音声対話システム1は、発話取得部102と、特徴抽出部104と、選択モデル格納部108と、応答データベース110と、応答決定部120と、応答実行部130と、応答履歴格納部132とを有する。また、実施の形態1にかかる音声対話システム1は、ユーザ状態検出部140と、学習モデル選択部150と、学習モデルデータベース160とを有する。さらに、音声対話システム1は、学習モデル生成装置200を有する。学習モデル生成装置200以外の構成要素については、実施の形態1にかかるものと実質的に同様の機能を有するので、説明を省略する。
学習モデル生成装置200は、後述する方法によって、複数の学習モデルを生成する。学習モデル生成装置200によって生成された複数の学習モデルは、学習モデルデータベース160に格納される。学習モデルは、学習モデル生成装置200によって自動的に格納されてもよいし、オペレータ等の作業者によって手動で格納されてもよい。
なお、学習モデル生成装置200は、その他の構成要素と物理的に一体となっている必要はない。つまり、その他の構成要素が設けられた装置(ロボット等)と、学習モデル生成装置200が設けられた装置(コンピュータ等)とが、同一である必要はない。学習モデル生成装置200の具体的な構成について、以下に説明する。なお、学習モデル生成装置200の処理(後述する図17に示す処理)は、図4〜図6に対応し、ユーザとの対話(図7の処理)の前段階で行われる。
図16は、実施の形態2にかかる学習モデル生成装置200の構成を示す図である。また、図17は、実施の形態2にかかる学習モデル生成装置200によって実行される学習モデル生成方法を示すフローチャートである。学習モデル生成装置200は、発話取得部212、特徴抽出部214、サンプルデータ生成部216、ユーザ状態取得部218、サンプルデータ分類部220、及び、学習モデル生成部222を有する。なお、学習モデル生成装置200は、図1に示した音声対話システム1のハードウェア構成と実質的に同様のハードウェア構成を、独立して有しうる。
発話取得部212は、1以上の任意ユーザと対話を行うことによって、図7のS102の処理と同様にして、任意ユーザの発話であるユーザ発話を取得する(ステップS202)。ここで、「任意ユーザ」とは、音声対話システム1が対話を行う相手のユーザに限られない、任意のユーザである。特徴抽出部214は、図7のS104の処理と同様にして、取得されたユーザ発話の特徴を少なくとも示す特徴ベクトルを抽出する(ステップS204)。
次に、サンプルデータ生成部216は、ユーザ発話に対する応答を示す正解ラベルと特徴ベクトルとが対応付けられたサンプルデータを生成する(ステップS206)。具体的には、サンプルデータ生成部216は、図4を用いて上述したように、オペレータによって判定された応答(正解ラベル)を、対応するユーザ発話の特徴ベクトルに対応付ける。これにより、サンプルデータ生成部216は、サンプルデータを生成する。なお、正解ラベルを自動的に判定することができれば、サンプルデータ生成部216は、ユーザ発話から正解ラベル(応答)を自動的に判定して、判定された正解ラベルをユーザ発話の特徴ベクトルに対応付けてもよい。次に、学習モデル生成装置200(又は図2に示した応答実行部130)は、図7のS120の処理と同様にして、応答を実行する(ステップS208)。
ユーザ状態取得部218は、ユーザ発話を発したときの任意ユーザの状態であるユーザ状態を取得して、取得されたユーザ状態をユーザ発話に対応するサンプルデータに対応付ける(ステップS210)。具体的には、ユーザ状態取得部218は、図9〜図14を用いて説明したように、ユーザの画像、ユーザ発話、又は生体系パラメータ等を用いて、任意ユーザのユーザ状態を取得し得る。ユーザ状態の取得方法は、ユーザ状態の種類(第1の例〜第5の例)に応じて異なり得る。あるいは、ユーザ状態取得部218は、例えばオペレータによって判断された、任意ユーザのユーザ状態を取得してもよい。そして、ユーザ状態取得部218は、取得されたユーザ状態を、任意ユーザのユーザ発話に対応するサンプルデータに対応付ける。
学習モデル生成装置200は、ユーザ発話の取得を終了するか否かを判定する(ステップS212)。ユーザ発話の取得を継続する場合(S212のNO)、学習モデル生成装置200は、S202〜S210の処理を繰り返す。一方、サンプルデータを十分に取得できたためにユーザ発話の取得を終了する場合(S212のYES)、サンプルデータ分類部220は、図6を用いて説明したように、ユーザ状態ごとにサンプルデータを分類する(ステップS220)。そして、学習モデル生成部222は、図6を用いて説明したように、分類されたサンプルデータごとに、例えばランダムフォレスト又はサポートベクターマシン等の機械学習によって、複数の学習モデルを生成する(ステップS222)。
このように、実施の形態2にかかる学習モデル生成装置200は、ユーザ状態ごとにサンプルデータを分類して機械学習によって複数の学習モデルを生成することによって、ユーザ状態に対応した複数の学習モデルを生成することができる。したがって、音声対話システム1は、上述したように、ユーザ状態に応じて学習モデルを選択することができる。
(変形例)
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述したフローチャートにおいて、複数の処理の順序は、適宜、変更可能である。また、上述したフローチャートにおいて、複数の処理のうちの1つは、省略されてもよい。例えば、図7のS130の処理は、S102〜S120の間に行われてもよい。
また、図9〜図14を用いて説明したユーザ状態の第1の例〜第5の例は、相互に適用可能である。つまり、ユーザ状態検出部140は、複数の種類のユーザ状態を検出してもよい。そして、学習モデル選択部150は、検出された複数の種類のユーザ状態に対応する学習モデルを選択してもよい。例えば、ユーザ状態検出部140は、ユーザの識別情報及びユーザの積極性の度合を検出してもよい。この場合、学習モデルデータベース160は、例えば、ユーザAの積極性の度合ごと、ユーザBの積極性の度合ごとに、複数の学習モデルを格納し得る。そして、ユーザ状態検出部140が、「ユーザA」の「積極性の度合#1」を検出した場合に、学習モデル選択部150は、「ユーザA」の「積極性の度合#1」に対応する学習モデルを選択し得る。
また、上述した実施の形態では、特徴ベクトル(図3)は、ユーザ発話の韻律情報等から生成されるとしたが、このような構成に限られない。特徴ベクトルの成分は、韻律にかかるものだけでなく、カメラである検出装置6から取得されたユーザの特徴も含み得る。例えば、特徴ベクトルの成分は、ユーザの視線及び対話ロボットに対するユーザの距離を含んでもよい。
また、上述した実施の形態においては、音声対話システム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・・・スピーカ、6・・・検出装置、8・・・マニピュレータ、10・・・制御装置、102・・・発話取得部、104・・・特徴抽出部、108・・・選択モデル格納部、110・・・応答データベース、120・・・応答決定部、130・・・応答実行部、132・・・応答履歴格納部、140・・・ユーザ状態検出部、150・・・学習モデル選択部、160・・・学習モデルデータベース、200・・・学習モデル生成装置、212・・・発話取得部、214・・・特徴抽出部、216・・・サンプルデータ生成部、218・・・ユーザ状態取得部、220・・・サンプルデータ分類部、222・・・学習モデル生成部

Claims (11)

  1. ユーザと音声を用いた対話を行う音声対話システムであって、
    前記ユーザの発話であるユーザ発話を取得する発話取得部と、
    前記取得されたユーザ発話の特徴を少なくとも抽出する特徴抽出部と、
    予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定する応答決定部と、
    前記決定された応答を実行するための制御を行う応答実行部と、
    前記ユーザの状態であるユーザ状態を検出するユーザ状態検出部と、
    前記検出されたユーザ状態に応じて、前記複数の学習モデルから前記学習モデルを選択する学習モデル選択部と
    を有し、
    前記応答決定部は、前記学習モデル選択部によって選択された学習モデルを用いて、前記応答を決定する
    音声対話システム。
  2. 前記ユーザ状態検出部は、前記ユーザ状態として対話に対する前記ユーザの積極性の度合を検出し、
    前記学習モデル選択部は、前記ユーザの積極性の度合に対応する前記学習モデルを選択する
    請求項1に記載の音声対話システム。
  3. 前記ユーザ状態検出部は、予め定められた期間における前記ユーザの発話量、又は、前記期間において当該音声対話システムが応答として音声を出力した時間と前記ユーザが発話した時間との合計に対する前記ユーザが発話した時間の割合を検出し、
    前記学習モデル選択部は、前記ユーザの発話量又は前記ユーザが発話した時間の割合に対応する前記学習モデルを選択する
    請求項2に記載の音声対話システム。
  4. 前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの識別情報を検出し、
    前記学習モデル選択部は、前記ユーザの識別情報に対応する前記学習モデルを選択する
    請求項1に記載の音声対話システム。
  5. 前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの感情を検出し、
    前記学習モデル選択部は、前記ユーザの感情に対応する前記学習モデルを選択する
    請求項1に記載の音声対話システム。
  6. 前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの健康状態を検出し、
    前記学習モデル選択部は、前記ユーザの健康状態に対応する前記学習モデルを選択する
    請求項1に記載の音声対話システム。
  7. 前記ユーザ状態検出部は、前記ユーザ状態として前記ユーザの覚醒状態の度合を検出し、
    前記学習モデル選択部は、前記ユーザの覚醒状態の度合に対応する前記学習モデルを選択する
    請求項1に記載の音声対話システム。
  8. ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法であって、
    前記ユーザの発話であるユーザ発話を取得し、
    前記取得されたユーザ発話の特徴を少なくとも抽出し、
    予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定し、
    前記決定された応答を実行するための制御を行い、
    前記ユーザの状態であるユーザ状態を検出し、
    前記検出されたユーザ状態に応じて、前記複数の学習モデルから前記学習モデルを選択し、
    前記選択された学習モデルを用いて、前記応答を決定する
    音声対話方法。
  9. ユーザと音声を用いた対話を行う音声対話システムを用いて行われる音声対話方法を実行するプログラムであって、
    前記ユーザの発話であるユーザ発話を取得するステップと、
    前記取得されたユーザ発話の特徴を少なくとも抽出するステップと、
    予め機械学習によって生成された複数の学習モデルのうちのいずれかを用いて、前記抽出された特徴に応じた応答を決定するステップと、
    前記決定された応答を実行するための制御を行うステップと、
    前記ユーザの状態であるユーザ状態を検出するステップと、
    前記検出されたユーザ状態に応じて、前記複数の学習モデルから前記学習モデルを選択するステップと、
    前記選択された学習モデルを用いて、前記応答を決定するステップと
    をコンピュータに実行させるプログラム。
  10. ユーザと音声を用いた対話を行う音声対話システムで用いられる学習モデルを生成する学習モデル生成装置であって、
    1以上の任意ユーザと対話を行うことによって前記任意ユーザの発話であるユーザ発話を取得する発話取得部と、
    前記取得されたユーザ発話の特徴を少なくとも示す特徴ベクトルを抽出する特徴抽出部と、
    前記ユーザ発話に対する応答を示す正解ラベルと前記特徴ベクトルとが対応付けられたサンプルデータを生成するサンプルデータ生成部と、
    前記ユーザ発話を発したときの前記任意ユーザの状態であるユーザ状態を取得して、前記取得されたユーザ状態を前記ユーザ発話に対応する前記サンプルデータに対応付けるユーザ状態取得部と、
    前記ユーザ状態ごとに前記サンプルデータを分類するサンプルデータ分類部と、
    前記分類された前記サンプルデータごとに、機械学習によって複数の学習モデルを生成する学習モデル生成部と
    を有する学習モデル生成装置。
  11. ユーザと音声を用いた対話を行う音声対話システムで用いられる学習モデルを生成する学習モデル生成方法であって、
    1以上の任意ユーザと対話を行うことによって前記任意ユーザの発話であるユーザ発話を取得し、
    前記取得されたユーザ発話の特徴を少なくとも示す特徴ベクトルを抽出し、
    前記ユーザ発話に対する応答を示す正解ラベルと前記特徴ベクトルとが対応付けられたサンプルデータを生成し、
    前記ユーザ発話を発したときの前記任意ユーザの状態であるユーザ状態を取得して、前記取得されたユーザ状態を前記ユーザ発話に対応する前記サンプルデータに対応付け、
    前記ユーザ状態ごとに前記サンプルデータを分類し、
    前記分類された前記サンプルデータごとに、機械学習によって複数の学習モデルを生成する
    学習モデル生成方法。
JP2018162774A 2018-08-31 2018-08-31 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法 Active JP7063779B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018162774A JP7063779B2 (ja) 2018-08-31 2018-08-31 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法
EP19191406.8A EP3618063B1 (en) 2018-08-31 2019-08-13 Voice interaction system, voice interaction method and corresponding program
CN201910783430.8A CN110875032B (zh) 2018-08-31 2019-08-23 语音交互***和方法、程序、学习模型生成装置和方法
US16/555,603 US20200075007A1 (en) 2018-08-31 2019-08-29 Voice interaction system, voice interaction method, program, learning model generation apparatus, and learning model generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018162774A JP7063779B2 (ja) 2018-08-31 2018-08-31 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法

Publications (2)

Publication Number Publication Date
JP2020034835A true JP2020034835A (ja) 2020-03-05
JP7063779B2 JP7063779B2 (ja) 2022-05-09

Family

ID=67620297

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018162774A Active JP7063779B2 (ja) 2018-08-31 2018-08-31 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法

Country Status (4)

Country Link
US (1) US20200075007A1 (ja)
EP (1) EP3618063B1 (ja)
JP (1) JP7063779B2 (ja)
CN (1) CN110875032B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021260848A1 (ja) * 2020-06-24 2021-12-30 日本電信電話株式会社 学習装置、学習方法及び学習プログラム
WO2022215104A1 (ja) * 2021-04-05 2022-10-13 三菱電機株式会社 音声対話装置および音声対話方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7107248B2 (ja) * 2019-02-26 2022-07-27 トヨタ自動車株式会社 対話システム、対話方法及びプログラム
KR102314385B1 (ko) * 2019-08-08 2021-10-19 엘지전자 주식회사 로봇 및 그의 제어 방법
CN113163216B (zh) * 2020-01-22 2023-08-22 华为云计算技术有限公司 基于云手机的直播方法和直播***
US20220084504A1 (en) * 2020-09-11 2022-03-17 International Business Machines Corporation Artificial intelligence voice response system for speech impaired users
CN113035191B (zh) * 2021-02-26 2023-11-10 光禹莱特数字科技(上海)有限公司 语音交互方法、装置、存储介质和计算机设备
WO2024018400A2 (en) * 2022-07-20 2024-01-25 Q (Cue) Ltd. Detecting and utilizing facial micromovements
US11908478B2 (en) 2021-08-04 2024-02-20 Q (Cue) Ltd. Determining speech from facial skin movements using a housing supported by ear or associated with an earphone
CN116453027B (zh) * 2023-06-12 2023-08-22 深圳市玩瞳科技有限公司 用于教育机器人的ai识别管理方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271182A (ja) * 2002-03-18 2003-09-25 Toshiba Corp 音響モデル作成装置及び音響モデル作成方法
US20050182618A1 (en) * 2004-02-18 2005-08-18 Fuji Xerox Co., Ltd. Systems and methods for determining and using interaction models
JP2005331689A (ja) * 2004-05-19 2005-12-02 Yamaha Motor Co Ltd 落水対応音声認識装置、ならびにこれを用いた船舶用音声指示装置、船舶システムおよび救命胴衣、ならびに落水対応音声認識方法および落水者支援方法
JP2016218309A (ja) * 2015-05-22 2016-12-22 国立研究開発法人情報通信研究機構 音声認識装置及びコンピュータプログラム
JP2018031918A (ja) * 2016-08-25 2018-03-01 株式会社デンソー 車両用対話制御装置
JP2018040897A (ja) * 2016-09-06 2018-03-15 国立大学法人京都大学 音声対話装置および音声対話装置を用いた自動対話方法
JP2018072650A (ja) * 2016-10-31 2018-05-10 ファーハット ロボティクス エービー 音声対話装置及び音声対話方法
JP2018124432A (ja) * 2017-02-01 2018-08-09 トヨタ自動車株式会社 対話装置
JP2018132704A (ja) * 2017-02-16 2018-08-23 トヨタ自動車株式会社 対話装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7222074B2 (en) * 2001-06-20 2007-05-22 Guojun Zhou Psycho-physical state sensitive voice dialogue system
JP2005352154A (ja) 2004-06-10 2005-12-22 National Institute Of Information & Communication Technology 感情状態反応動作装置
US7729911B2 (en) * 2005-09-27 2010-06-01 General Motors Llc Speech recognition method and system
US8949266B2 (en) * 2007-03-07 2015-02-03 Vlingo Corporation Multiple web-based content category searching in mobile search application
CN101739870B (zh) * 2009-12-03 2012-07-04 深圳先进技术研究院 交互式语言学习***及交互式语言学习方法
KR20170033722A (ko) * 2015-09-17 2017-03-27 삼성전자주식회사 사용자의 발화 처리 장치 및 방법과, 음성 대화 관리 장치
US10289076B2 (en) * 2016-11-15 2019-05-14 Roborus Co., Ltd. Concierge robot system, concierge service method, and concierge robot

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271182A (ja) * 2002-03-18 2003-09-25 Toshiba Corp 音響モデル作成装置及び音響モデル作成方法
US20050182618A1 (en) * 2004-02-18 2005-08-18 Fuji Xerox Co., Ltd. Systems and methods for determining and using interaction models
JP2005331689A (ja) * 2004-05-19 2005-12-02 Yamaha Motor Co Ltd 落水対応音声認識装置、ならびにこれを用いた船舶用音声指示装置、船舶システムおよび救命胴衣、ならびに落水対応音声認識方法および落水者支援方法
JP2016218309A (ja) * 2015-05-22 2016-12-22 国立研究開発法人情報通信研究機構 音声認識装置及びコンピュータプログラム
JP2018031918A (ja) * 2016-08-25 2018-03-01 株式会社デンソー 車両用対話制御装置
JP2018040897A (ja) * 2016-09-06 2018-03-15 国立大学法人京都大学 音声対話装置および音声対話装置を用いた自動対話方法
JP2018072650A (ja) * 2016-10-31 2018-05-10 ファーハット ロボティクス エービー 音声対話装置及び音声対話方法
JP2018124432A (ja) * 2017-02-01 2018-08-09 トヨタ自動車株式会社 対話装置
JP2018132704A (ja) * 2017-02-16 2018-08-23 トヨタ自動車株式会社 対話装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021260848A1 (ja) * 2020-06-24 2021-12-30 日本電信電話株式会社 学習装置、学習方法及び学習プログラム
WO2022215104A1 (ja) * 2021-04-05 2022-10-13 三菱電機株式会社 音声対話装置および音声対話方法

Also Published As

Publication number Publication date
EP3618063B1 (en) 2022-09-14
US20200075007A1 (en) 2020-03-05
JP7063779B2 (ja) 2022-05-09
CN110875032B (zh) 2023-10-10
EP3618063A1 (en) 2020-03-04
CN110875032A (zh) 2020-03-10

Similar Documents

Publication Publication Date Title
JP7063779B2 (ja) 音声対話システム、音声対話方法、プログラム、学習モデル生成装置及び学習モデル生成方法
US10388279B2 (en) Voice interaction apparatus and voice interaction method
JP6617053B2 (ja) 感情分類によって文脈意味の理解精度を高める発話意味分析プログラム、装置及び方法
JP6465077B2 (ja) 音声対話装置および音声対話方法
US9549068B2 (en) Methods for adaptive voice interaction
Lee et al. Modeling mutual influence of interlocutor emotion states in dyadic spoken interactions.
US10573307B2 (en) Voice interaction apparatus and voice interaction method
US10702991B2 (en) Apparatus, robot, method and recording medium having program recorded thereon
CN110473533B (zh) 语音对话***、语音对话方法以及程序
Seng et al. Video analytics for customer emotion and satisfaction at contact centers
JP6585733B2 (ja) 情報処理装置
Rybka et al. Comparison of speaker dependent and speaker independent emotion recognition
JP2019020684A (ja) 感情インタラクションモデル学習装置、感情認識装置、感情インタラクションモデル学習方法、感情認識方法、およびプログラム
JP2018169506A (ja) 会話満足度推定装置、音声処理装置および会話満足度推定方法
JP7021488B2 (ja) 情報処理装置、及びプログラム
JP2017182261A (ja) 情報処理装置、情報処理方法、およびプログラム
Mannem et al. Acoustic and Articulatory Feature Based Speech Rate Estimation Using a Convolutional Dense Neural Network.
KR102350068B1 (ko) 생체 정보를 이용하는 거짓말 탐지 방법
US20240220016A1 (en) System and method for using gestures and expressions for controlling speech applications
Khan et al. Visual acuity test for isolated words using speech recognition
JP2005128242A (ja) 音声認識装置
JP2016091324A (ja) 発話検知装置、発話検知プログラムおよび発話検知方法
KR20210014088A (ko) 생체 정보를 이용하는 거짓말 탐지 방법
CN109313895A (zh) 信息处理装置和信息处理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211223

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220421

R150 Certificate of patent or registration of utility model

Ref document number: 7063779

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150