JP6962105B2 - 対話装置、サーバ装置、対話方法及びプログラム - Google Patents

対話装置、サーバ装置、対話方法及びプログラム Download PDF

Info

Publication number
JP6962105B2
JP6962105B2 JP2017186013A JP2017186013A JP6962105B2 JP 6962105 B2 JP6962105 B2 JP 6962105B2 JP 2017186013 A JP2017186013 A JP 2017186013A JP 2017186013 A JP2017186013 A JP 2017186013A JP 6962105 B2 JP6962105 B2 JP 6962105B2
Authority
JP
Japan
Prior art keywords
voice
response
unit
information
server device
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
JP2017186013A
Other languages
English (en)
Other versions
JP2019061098A5 (ja
JP2019061098A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2017186013A priority Critical patent/JP6962105B2/ja
Priority to CN201811122774.6A priority patent/CN109568973B/zh
Priority to US16/142,585 priority patent/US20190096405A1/en
Publication of JP2019061098A publication Critical patent/JP2019061098A/ja
Publication of JP2019061098A5 publication Critical patent/JP2019061098A5/ja
Application granted granted Critical
Publication of JP6962105B2 publication Critical patent/JP6962105B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H3/00Dolls
    • A63H3/28Arrangements of sound-producing means in dolls; Means in dolls for producing sounds
    • 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/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/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • 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/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)
  • Toys (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、ロボット等が音声によってユーザと対話を行う技術に関する。
ユーザと対話することができる端末やロボットの開発が進められている。そして、これら端末やロボットがユーザと対話をする際に、例えば音声認識処理、言語理解処理等の負荷の高い処理や、ロボットの記憶手段に記憶されていない情報を検索する処理等を、外部のサーバに行わせるシステムの開発も進められている。例えば、特許文献1には、ユーザとのやり取りに応じて外部のサーバとネットワーク接続して、必要なデータやプログラムを動的に取得し、ユーザとのコミュニケーションに活用するロボット装置が記載されている。
特開2003−111981号公報
特許文献1に記載のロボット装置は、外部のサーバとの通信状況が悪い場合や通信が切断された場合には、必要なデータを取得することができないため、適当な対話や行動を続けることによって、ユーザとの対話が途切れないようにする。しかし、このロボット装置による適当な対話や行動はその場限りのものであるため、その後のユーザとのコミュニケーションに支障が生じる可能性がある。
例えば、外部のサーバとの通信が切断されている時にユーザがこのロボット装置に何らかの問い合わせを行うと、ロボット装置はその問い合わせに対する適当な行動としてうなずき続ける行動をすることが考えられる。しかし、このロボットはそのユーザの問い合わせを聞き流しているだけであるから、その後外部のサーバと通信可能な状態になったとしても、その問い合わせに対する適切な回答を行うことはできない。したがって、ユーザの問い合わせをうなずきながら聞いてくれていたにもかかわらず適切な回答を行うことができないこのロボットに対し、ユーザは不信感を抱く可能性がある。このように、従来の対話装置では、通信状況が悪い場合の受け答え技術に改善の余地がある。
本発明は、上記実情に鑑みてなされたものであり、対話装置の通信状況が悪い場合の受け答え技術を改善することを目的とする。
上記目的を達成するため、本発明に係る対話装置は、ユーザが発話した音声に対する応答文を外部のサーバ装置と通信しながら作成する対話装置であって、自己の位置データを取得する位置取得部と、ユーザが発話した音声を音声データとして取得する音声取得部と、前記音声取得部が取得した音声データに基づく音声情報を記録する音声記録部と、前記サーバ装置と通信する通信部と、前記通信部による前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録部が記録した音声情報及び通信切断中に前記位置取得部が取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得する、応答文情報取得部と、前記応答文情報取得部が取得した応答文情報を用い所定の応答文作成ルールに従って作成された応答文に前記応答文情報取得部が取得した場所名を含む前置きを追加した応答文でユーザに応答する応答部と、を備えることを特徴とする。
また、本発明に係る対話方法は、外部のサーバ装置との間で通信する通信部を有し、ユーザが発話した音声に対する応答文を前記通信部を介して前記サーバ装置と通信しながら作成する対話装置が実行する対話方法であって、自己の位置データを取得する位置取得処理と、ユーザが発話した音声に基づく音声情報を記録する音声記録処理と、前記通信部を介した前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録処理で記録した音声情報及び通信切断中に前記位置取得処理で取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得する、応答文情報取得処理と、前記応答文情報取得処理で取得した応答文情報を用いて所定の応答文作成ルールに従って作成された応答文に前記応答文情報取得処理で取得した場所名を含む前置きを追加した応答文でユーザに応答する応答処理と、を含むことを特徴とする。
また、本発明に係るサーバ装置は、ユーザが発話した音声に対する応答文をサーバ装置と通信しながら作成する対話装置と、前記サーバ装置と、を備える対話システムにおけるサーバ装置であって、前記対話装置と通信する通信部と、前記ユーザが発話した音声に基づく音声情報を前記対話装置から前記通信部を介して受信する受信部と、前記受信部が受信した音声情報に含まれる音声データを音声認識してテキストデータを生成する音声認識部と、前記音声認識部が生成したテキストデータから該テキストデータに含まれる特徴的な単語である特徴単語を抽出する特徴単語抽出部と、前記特徴単語抽出部が抽出した特徴単語と所定の応答文作成ルールとに基づき、応答文情報を作成する応答作成部と、前記応答作成部が作成した応答文情報を前記通信部を介して送信する送信部と、を備え、前記通信部による前記対話装置との通信が一時的に切断した後に回復した状態において、通信切断中の音声情報及び通信切断中の前記対話装置の位置データを前記対話装置から受信し、前記受信した音声情報に対して作成した応答文情報及び前記受信した位置データに対応する場所名を前記対話装置に送信する、ことを特徴とする。
また、本発明に係るプログラムは、外部のサーバ装置との間で通信する通信部を有し、ユーザが発話した音声に対する応答文を前記通信部を介して前記サーバ装置と通信しながら作成する対話装置のコンピュータに、自己の位置データを取得する位置取得処理、ユーザが発話した音声を音声データとして取得する音声取得処理、前記音声取得処理で取得した音声データに基づく音声情報を記録する音声記録処理、前記通信部を介した前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録処理で記録した音声情報及び通信切断中に前記位置取得処理で取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得する、応答文情報取得処理、及び、前記応答文情報取得処理で取得した応答文情報を用いて所定の応答文作成ルールに従って作成された応答文に前記応答文情報取得処理で取得した場所名を含む前置きを追加した応答文でユーザに応答する応答処理、を実行させることを特徴とする。
本発明によれば、対話装置の通信状況が悪い場合の受け答え技術を改善することができる。
本発明の第1実施形態に係る対話システムの構成を示す図である。 第1実施形態に係る対話装置の外観を示す図である。 第1実施形態に係る対話装置の構成を示す図である。 第1実施形態に係る対話装置が記憶する付加情報付音声情報の一例を示す図である。 第1実施形態に係るサーバ装置の構成を示す図である。 第1実施形態に係るサーバ装置が記憶する応答文作成ルールの一例を示す図である。 第1実施形態に係る対話装置の対話制御処理のフローチャートである。 第1実施形態に係る対話装置の見せかけスレッドのフローチャートである。 第1実施形態に係るサーバ装置の応答文作成処理のフローチャートである。 本発明の第2実施形態に係る対話装置の構成を示す図である。 第2実施形態に係る対話装置が記憶する応答文情報リストの一例を示す図である。 第2実施形態に係る対話装置の対話制御処理のフローチャートである。 第2実施形態に係るサーバ装置の応答文作成処理のフローチャートである。 本発明の第3実施形態に係る対話装置の構成を示す図である。 第3実施形態に係る対話装置が記憶する位置履歴データの一例を示す図である。 第3実施形態に係る対話装置の対話制御処理のフローチャートである。 第3実施形態に係るサーバ装置が対話装置に送信する特徴単語、応答文、及び場所名の例を示す図である。 第3実施形態に係るサーバ装置の応答文作成処理のフローチャートである。
以下、本発明の実施形態について、図表を参照して説明する。なお、図中同一又は相当部分には同一符号を付す。
(第1実施形態)
図1に示すように、本発明の第1実施形態に係る対話システム1000は、音声でユーザUと対話するロボットである対話装置100と、対話装置100がユーザUと対話する際に必要な各種処理(例えば音声認識処理、応答文作成処理等)を行うサーバ装置200と、を備える。対話装置100はユーザが発話した音声のデータ(音声データ)を外部のサーバ装置200に送信し、該サーバ装置200に音声認識処理や応答文情報作成等を行ってもらうことにより、ユーザUと対話する際の対話装置100自身の処理負荷を軽くしている。
図2に示すように、対話装置100は頭20と胴体30とからなる。そして、対話装置100の頭20には、マイク21と、カメラ22と、スピーカ23と、センサ群24と、が設けられている。
マイク21は、頭20の左右、人の顔でいうところの耳の位置に複数設けられており、アレイマイクを構成する。マイク21は、対話装置100の周囲にいるユーザUが発話した音声を音声データとして取得する音声取得部として機能する。
カメラ22は、頭20の前面の中央部、人の顔でいうところの鼻の位置に設けられている撮像装置である。カメラ22は、対話装置100の正面の画像のデータ(画像データ)を取得する画像取得部として機能し、取得した画像データを後述する制御部110に入力する。
スピーカ23は、カメラ22の下側、人の顔でいうところの口の位置に設けられている。スピーカ23は、音声を出力する音声出力部として機能する。
センサ群24は、人の顔でいうところの目の位置に設けられている。センサ群24は、加速度センサ、障害物検知センサ等を含み、各種物理量を検出して、対話装置100の姿勢制御、衝突回避、安全性確保等のために使用される。
対話装置100の頭20と胴体30とは、図2に示すように、破線で示される首関節31によって相互に連結されている。首関節31は、複数のモータを含む。後述する制御部110がこれら複数のモータを駆動することにより、対話装置100の頭20を上下方向、左右方向及び傾ける方向の3軸で回転させることができる。これにより、対話装置100は、例えばうなずきの動作をすることができる。
図2に示すように、対話装置100の胴体30の下部には足回り部32が設けられている。足回り部32は、4つの車輪(ホイール)と駆動モータとを含む。4つの車輪のうち、2つが前輪として胴体30の前側に、残り2つが後輪として胴体30の後ろ側に、それぞれ配置されている。車輪としては、例えば、オムニホイール、メカナムホイール等を使用してもよい。後述する制御部110が、駆動モータを制御して車輪を回転させると、対話装置100は移動する。
次に、図3を参照して、対話装置100の機能構成を説明する。図3に示すように、対話装置100は、上述の構成に加え、通信部25と、操作ボタン33と、制御部110と、記憶部120と、を備える。
通信部25は、サーバ装置200等の外部装置と無線通信するための、アンテナを含む無線モジュールである。例えば、通信部25は、無線LAN(Local Area Network)により無線通信を行うための無線モジュールである。通信部25を用いることにより、対話装置100は、サーバ装置200に音声データ等の音声情報を送信し、また、サーバ装置200から後述する応答文情報を受信することができる。対話装置100とサーバ装置200との無線通信は、ダイレクトな通信でもよいし、基地局、アクセスポイント等を介しての通信でもよい。
操作ボタン33は、図示しないが、胴体30の背中の位置に設けられている。操作ボタン33は、対話装置100を操作するための各種ボタンである。操作ボタン33は、電源ボタン、スピーカ23の音量調節ボタン等を含む。
制御部110は、CPU(Central Processing Unit)等で構成される。制御部110は、記憶部120に記憶されたプログラムを実行することにより、後述する音声記録部111、見せかけ部112、応答文情報取得部113及び応答部114として機能する。また、制御部110は、時計機能及びタイマー機能を備え、現在時刻(現在日時)や経過時間を取得することができる。
記憶部120は、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成され、制御部110のCPUが実行するプログラム、各種データ等を記憶する。また、記憶部120は、音声取得部(マイク21)が取得した音声データに発話日時等を付加した付加情報付音声情報121も記憶する。
付加情報付音声情報121は、図4に示すように、ユーザが発話した内容を、通信状態及び発話日時とともに記録したデータである。通信状態の値は、通信部25がサーバ装置200と通信可能な状態なら「接続」、通信不可能な状態なら「切断」となる。図4では、通信状態によらずに付加情報付音声情報121を記憶しているが、通信状態が「切断」の付加情報付音声情報121だけを記憶部120に記録するようにしてもよい。また、通信切断の検出をトリガにして付加情報付音声情報121の記録を開始するようにしてもよい。また、通信状態の値は付加情報付音声情報121に含めずに、サーバ装置200が発話日時に基づいて通信状態を判断してもよい。
次に、制御部110が実現する各機能について説明する。制御部110は、前述したように、記憶部120に記憶されたプログラムを実行することにより、音声記録部111、見せかけ部112、応答文情報取得部113及び応答部114として機能する。また、制御部110は、マルチスレッド機能に対応しており、複数のスレッド(異なる処理の流れ)を並行して実行することができる。
音声記録部111は、音声取得部(マイク21)が取得した音声データに発話日時等を付加して付加情報付音声情報121として、記憶部120に記録する。なお、本実施形態では後述するように音声認識処理をサーバ装置200で行うが、音声認識処理を対話装置100で行う実施形態も考えられる。この場合、音声記録部111は、音声データを音声認識したテキストデータを記憶部120に記録してもよい。そこで、対話装置100がサーバ装置200に送信する情報を音声情報と表現することとする。本実施形態では音声情報は音声取得部が取得した音声データであるが、音声情報が音声認識後のテキストデータである実施形態も考えられる。そして、音声情報に発話日時等を付加した情報が、付加情報付音声情報121である。
見せかけ部112は、通信部25によるサーバ装置200との通信が切断されている場合に、ユーザUにユーザUが発話している内容を聞いている風に見せかける動作をするための制御を行う。具体的には、うなずく、相づちを打つ等の動作をするように、首関節31やスピーカ23等を制御する。
応答文情報取得部113は、サーバ装置200が作成した応答文に関する情報(応答文情報)を、通信部25を介して取得する。応答文情報については後述する。
応答部114は、応答文情報取得部113が取得した応答文情報に基づいて作成された応答文で、ユーザUに対して応答する。具体的には、応答部114は、応答文情報に基づいて作成された応答文を音声合成し、スピーカ23から該応答文の音声を出力する。なお、音声合成処理をサーバ装置200が行う実施形態も考えられる。このような実施形態では音声合成後のボイスデータが応答文情報としてサーバ装置200から送信されるため、応答部114は、音声合成処理をする必要なく、そのままそのボイスデータをスピーカ23から出力することができる。
以上、対話装置100の機能構成を説明した。次に、サーバ装置200の機能構成を説明する。図5に示すように、サーバ装置200は、制御部210と、記憶部220と、通信部230と、を備える。
制御部210は、CPU等で構成される。制御部210は、記憶部220に記憶されたプログラムを実行することにより、後述する音声認識部211、特徴単語抽出部212及び応答作成部213として機能する。
記憶部220は、ROM、RAM等で構成され、制御部210のCPUが実行するプログラム、各種データ等を記憶する。また、記憶部220は、後述する応答文作成ルール221も記憶する。
応答文作成ルール221は、図6に示すように、特定の単語(特徴単語)毎に応答文を対応させたルールである。なお、図6では、応答文作成ルール221は、特徴単語として、「暑い」「映画」「かわいい」のような具体的な単語を割り当てたルールになっているが、これに限られない。例えば、特徴単語を「寒暖を表すネガティブな形容詞:○い」と定義し、これに対応する応答文を「○い○い言ってると余計○くなるよ。」とルール付けしてもよい。また、寒暖を表す形容詞の他の応答文作成ルール例として、例えば、特徴単語を「寒暖を表すポジティブな形容詞:○い」と定義し、これに対応する応答文を「最近は○くなってきたのかな。○いと気持ち良いね。」とルール付けしてもよい。ここで、「寒暖を表すネガティブな形容詞」としては、例えば「暑い」「寒い」等が挙げられ、「寒暖を表すポジティブな形容詞」としては、例えば「涼しい」「暖かい」等が挙げられる。
通信部230は、対話装置100等の外部装置と無線通信するための、アンテナを含む無線モジュールである。例えば、通信部230は、無線LAN(Local Area Network)により無線通信を行うための無線モジュールである。通信部230を用いることにより、サーバ装置200は、対話装置100から音声データ等の音声情報を受信し、また、対話装置100に後述する応答文情報を送信することができる。制御部210は、通信部230を介して対話装置100から音声情報を受信する際には受信部として機能し、通信部230を介して対話装置100に応答文情報を送信する際には送信部として機能する。
次に、制御部210が実現する各機能について説明する。制御部210は、前述したように、記憶部220に記憶されたプログラムを実行することにより、音声認識部211、特徴単語抽出部212及び応答作成部213として機能する。
音声認識部211は、対話装置100から送信された付加情報付音声情報121に含まれる音声データを音声認識して、ユーザUの発話内容を表すテキストデータを生成する。上述したように、音声認識を対話装置100が行う実施形態においては、音声認識部211は不要であり、この場合は、対話装置100から送信された付加情報付音声情報121に音声認識後のテキストデータが含まれている。
特徴単語抽出部212は、音声認識部211が生成したテキストデータ(又は付加情報付音声情報121に含まれているテキストデータ)から、該テキストデータに含まれる特徴的な単語である特徴単語を抽出する。特徴単語とは、例えば、テキストデータ中に含まれる特定ワード(名詞、動詞、形容詞、形容動詞)のうち、最も多く含まれる特定ワードである。また、テキストデータ中に含まれる特定ワードのうち、強調修飾語(「とても」、「すごく」等)に修飾された特定ワードも、特徴単語になり得る。
応答作成部213は、特徴単語抽出部212が抽出した特徴単語を、記憶部220に記憶されている応答文作成ルール221に適用して、応答文に関する情報(応答文情報)を作成する。なお、本実施形態では、応答作成部213が完成した応答文を作成しているが、これに限られない。対話処理においては、ユーザが発話した音声を音声認識し、構文解析等して、応答文を作成し、音声合成するという一連の処理が存在するが、この中の一部をサーバ装置200が行い、残りの処理を対話装置100が行うようにしてもよい。例えば、音声認識や構文解析等の重い処理をサーバ装置200が行い、応答文を完成させる処理は対話装置100が行ってもよい。これらの処理のどれをどちらの装置で行うかは任意である。そこで、サーバ装置200が対話装置100へ送信する情報を応答文情報と表現し、対話装置100がユーザUに発話する情報を応答文と表現するものとする。応答文情報と応答文が同一である(デジタルデータかアナログ音声であるか等の信号形態は異なるとしても、内容として同じ)場合もある。本実施形態では、応答文情報は応答文と同一である。
以上、サーバ装置200の機能構成を説明した。次に、対話装置100の制御部110が行う対話制御処理について、図7を参照して説明する。この処理は、対話装置100が起動して初期設定が完了すると開始される。
まず、制御部110は、通信部25によるサーバ装置200との通信が切断されているか否かを判定する(ステップS101)。例えば、通信部25がアクセスポイントを経由してサーバ装置200と通信している場合、該アクセスポイントの電波が受信できないならサーバ装置200との通信が切断されていると判断する。
サーバ装置200との通信が切断されているなら(ステップS101;Yes)、制御部110は、現在時刻(通信が切断された時刻)を記憶部120に記憶する(ステップS102)。そして、見せかけ部112としての制御部110は、後述する見せかけスレッドを起動し(ステップS103)、見せかけスレッドの処理を並行して行う。
そして、音声記録部111としての制御部110は、音声取得部(マイク21)が取得した音声データに、通信状態(切断)及び現在時刻の情報を付加して、付加情報付音声情報121として記憶部120に記録する(ステップS104)。ステップS104は、音声記録ステップとも呼ばれる。その後、制御部110は、サーバ装置200との通信が回復したか否かを判定する(ステップS105)。サーバ装置200との通信が回復していなければ(ステップS105;No)、制御部110は、ステップS104に戻って、通信が回復するまで付加情報付音声情報121を記録しながら待機する。サーバ装置200との通信が回復したら(ステップS105;Yes)、制御部110は、見せかけスレッドを終了させる(ステップS106)。
そして、制御部110は、ステップS102で記憶部220に記憶した通信切断時刻から現在時刻までの(通信切断中の)付加情報付音声情報121を、通信部25を介して、サーバ装置200に送信する(ステップS107)。なお、ここでは通信の回復を対話装置100が検出しているが、サーバ装置200が通信の回復を検出して、対話装置100に付加情報付音声情報121の送信をリクエストしてもよい。対話装置100がステップS107で送信した付加情報付音声情報121はサーバ装置200で音声認識され、サーバ装置200は対話装置100に応答文情報を送信する。
すると、応答文情報取得部113としての制御部110は、通信部25を介して、サーバ装置200が送信した応答文情報を取得する(ステップS108)。ステップS108は、応答文情報取得ステップとも呼ばれる。本実施形態では完成文としての応答文を応答文情報として取得するが、これに限らず、サーバ装置200が応答文作成の全部でなく一部を担当する場合は、部分的な情報としての応答文情報(例えば後述する特徴単語の情報)を取得し、対話装置100内で応答文を完成させてもよい。
そして、応答部114としての制御部110は、応答文情報取得部113が取得した応答文情報に基づき、ユーザに応答する(ステップS109)。本実施形態では、応答文情報は応答文そのものなので、具体的には、応答部114は、応答文の内容を音声合成して、スピーカ23から応答文を発話する。この応答文は、サーバ装置200と対話装置100との連携により、通信切断中の音声に対応する内容の応答文になっているので、ユーザは対話装置100が通信切断中もユーザの発話内容をきちんと聞いていてくれたことを確認できる。ステップS109は、応答ステップとも呼ばれる。そして、制御部110は、処理をステップS101に戻す。
一方、ステップS101で、サーバ装置200との通信が切断されていないなら(ステップS101;No)、音声記録部111としての制御部110は、マイク21が取得した音声に、通信状態(接続)及び現在時刻の情報を付加して、付加情報付音声情報121として記憶部120に記録する(ステップS110)。そして、制御部110は、ステップS110で記録した(通信接続中の)付加情報付音声情報121を、通信部25を介してサーバ装置200に送信する(ステップS111)。
なお、通信状態が「切断」の付加情報付音声情報121だけが記憶部120に記録されるようにした場合は、ステップS110の処理をスキップし、ステップS111の処理の代わりに、制御部110は、マイク21が取得した音声データに、通信状態(接続)及び現在時刻を付加して、付加情報付音声情報121として、通信部25を介してサーバ装置200に送信する。
本実施形態では、上記いずれの場合も、ここで送信された付加情報付音声情報121に含まれる音声データがサーバ装置200で音声認識され、サーバ装置200は対話装置100に応答文を送信する。このサーバ装置200による処理(応答文作成処理)については後述する。
すると、応答文情報取得部113としての制御部110は、通信部25を介して、サーバ装置200が送信した応答文情報を取得する(ステップS112)。そして、応答部114としての制御部110は、応答文情報取得部113が取得した応答文情報に基づき、ユーザに応答する(ステップS113)。本実施形態では、応答文情報は応答文そのものなので、具体的には、応答部114は、応答文の内容を音声合成して、スピーカ23から応答文を発話する。この応答文は、サーバ装置200と対話装置100との連携により、通信接続中の音声に対応する内容の応答文になっているので、従来技術により作成された応答文と同様の内容である。そして、制御部110は、処理をステップS101に戻す。
次に、ステップS103で起動される見せかけスレッドの処理について、図8を参照して説明する。
まず、制御部110は、制御部110が備えるタイマーを、釈明を行う間隔設定用に使うためにリセットする(ステップS201)。これ以降このタイマーを釈明用タイマーと呼ぶことにする。
そして、制御部110は、カメラ22が取得した画像を認識し(ステップS202)、ユーザに見つめられているか否かを判定する(ステップS203)。ユーザに見つめられているなら(ステップS203;Yes)、ユーザに例えば「今、頭がボーッとしていて、きちんとしたお返事ができないのです。ごめんなさい。」等のような釈明をする(ステップS204)。この時は、サーバ装置200との間の通信が切断されており、音声認識や応答文作成ができないからである。
そして、釈明をしたことにより、制御部110は、釈明用タイマーをリセットする(ステップS205)。そして、制御部110は、10秒待ってから(ステップS206)、ステップS202に戻る。ここで、この10秒という値は、対話装置100が頻繁に同じ動作を繰り返さないようにするための待ち時間の例であり、10秒に限定する必要はなく、3秒、1分等、任意の値に変更可能である。なお、ステップS206におけるこの待ち時間を、他の待ち時間と区別するために、見せかけ待ち基準時間と呼ぶことにする。
一方、ステップS203で、ユーザに見つめられていないなら(ステップS203;No)、制御部110は、釈明用タイマーの値がリセット後3分経過しているか否かを判定する(ステップS207)。なおこの3分という値は、対話装置100が頻繁に釈明しないようにするための待ち時間の例であり、3分に限定する必要はない。例えば、1分、10分等、任意の値に変更可能である。なお、この待ち時間を他の待ち時間と区別するために、釈明基準時間と呼ぶことにする。
3分経過しているなら(ステップS207;Yes)、ステップS204に進み、以降の処理は上述した通りとなる。3分経過していないなら(ステップS207;No)、制御部110は、マイク21から取得される音声が途切れたか否かを判定する(ステップS208)。この判定は、例えば、マイク21から取得される音声において、無音期間が基準無音時間(例えば1秒)以上続いたら、制御部110は音声が途切れたと判定する。
音声が途切れていなければ(ステップS208;No)、ステップS202に戻る。音声が途切れていれば(ステップS208;Yes)、制御部110は、「うなずく」、「相づちを打つ」、「つぶやく」の3つの中から1つランダムに選択し、選択した動作を行うように、首関節31、スピーカ23等を制御する(ステップS209)。
例えば、「うなずく」を選択したら、制御部110は、首関節31を用いて頭20を縦に振るように動かす。このうなずきの動作について、制御部110は、ステップS209を実行する度に、頭20を振る回数や速度をランダムに変更してもよい。また、「相づちを打つ」を選択したら、制御部110は、首関節31を用いて頭20を縦に振るように動かしながら、スピーカ23から「はい」、「そうですね」、「うん」等を発話する。この相づちの動作についても、制御部110は、ステップS209を実行する度に、制御部110は、頭20を振る回数や速度、スピーカ23から発話する内容をランダムに変更してもよい。
また「つぶやく」を選択したら、制御部110は、スピーカ23から適当なつぶやきを発話させる。ここで、適当なつぶやきとは、人間的なつぶやきでもよいが、動物の鳴き声を模倣した音や、ロボットにありがちな人間には理解不能な電子音等でもよい。このつぶやきについても、制御部110は、ステップS209を実行する度に、いくつかの種類の中から制御部110がランダムに選択したつぶやきを発話させるようにしてもよい。
そして、ステップS206に進み、以降の処理は上述した通りとなる。以上、説明した見せかけスレッドの処理により、対話装置100は、サーバ装置200との通信が切断している時でも、ユーザに聞いている風に見せかけることができる。
次に、サーバ装置200が行う応答文作成処理について、図9を参照して説明する。なお、サーバ装置200は起動すると応答文作成処理を開始する。
まず、サーバ装置200の通信部230は、対話装置100が送信した付加情報付音声情報121を受信する(ステップS301)。対話装置100から付加情報付音声情報121が送信されていないなら、送信されるまでステップS301で待機する。そして、制御部210は、受信した付加情報付音声情報121が、通信切断中のものであるか否かを判定する(ステップS302)。付加情報付音声情報121には、図4に示すように通信状態を示す情報が含まれているので、この情報を参照することにより、受信した付加情報付音声情報121が通信切断中のものであるか否かを判定することができる。また、サーバ装置200は、対話装置100との通信状況を把握できるので、付加情報付音声情報121に通信状態を示す情報が含まれていなくても、付加情報付音声情報121に含まれている発話日時の情報に基づいて、その付加情報付音声情報121が通信切断中のものであるか否かを判断することもできる。
受信した付加情報付音声情報121が、通信切断中のものであるなら(ステップS302;Yes)、音声認識部211としての制御部210は、付加情報付音声情報121に含まれる音声データを音声認識してテキストデータを生成する(ステップS303)。そして、特徴単語抽出部212としての制御部210は、生成されたテキストデータから特徴単語を抽出する(ステップS304)。そして、応答作成部213としての制御部210は、抽出された特徴単語と応答文作成ルール221に基づき、応答文情報(本実施形態では応答文そのもの)を作成する(ステップS305)。そして、応答作成部213は、作成した応答文(応答文情報)を、通信部230を介して対話装置100に送信する(ステップS306)。そして、ステップS301に戻る。
一方、受信した付加情報付音声情報121が、通信切断中のものでなければ(ステップS302;No)、音声認識部211としての制御部210は、付加情報付音声情報121に含まれる音声データを音声認識してテキストデータを生成する(ステップS307)。そして、応答作成部213としての制御部210は、生成されたテキストデータに対する応答文情報(本実施形態では応答文そのもの)を、従来の応答文作成技術を用いて作成する(ステップS308)。そして、応答作成部213は、作成した応答文(応答文情報)を、通信部230を介して対話装置100に送信する(ステップS309)。そして、ステップS301に戻る。
以上説明した応答文作成処理により、通信接続中は通常の応答文情報が生成され、通信切断中は、特徴単語及び応答文作成ルールに基づいて応答文情報が作成される。したがって、サーバ装置200は、対話装置100との通信が切断している間の音声情報に対して、ユーザの発話をきちんと聞いていたかのように思わせるための応答文情報を作成することができる。
そして、上述の対話装置100の対話制御処理により、サーバ装置200との通信が切断している間の音声情報に対する応答文情報をサーバ装置200から取得することにより、対話装置100は、ユーザの発話をきちんと聞いていたかのように思わせる応答文を発話することができる。
例えば、図4のNo1からNo.3に示すユーザの発話内容に対し、対話装置100はその時点では応答文を返答できないが、サーバ装置200との通信が回復した時点で、これらのNo.1からNo.3に示すユーザの発話内容がサーバ装置200に送信される。そして、サーバ装置200の特徴単語抽出部212により、これらのユーザの発話内容から、最も多く使われている特定ワードとして「暑い」が抽出される。この「暑い」を図6に示す応答文作成ルールに適用することにより、応答作成部213は「暑い暑い言っていると余計暑くなるよ。」という応答文情報(本実施形態では、応答文そのもの)を作成する。そして、対話装置100の応答文情報取得部113は、この応答文(応答文情報)を取得し、応答部114により、対話装置100はユーザに対して「暑い暑い言ってると余計暑くなるよ。」と発話することができる。
このように、対話装置100は、サーバ装置200との通信が切断している時には小まめな応答を行うことができないが、通信が回復した時に、切断中のユーザの発話内容に含まれる特徴単語(最も多く使われている特定ワード等)に基づいた応答文を発話することによって、比較的短い応答文で、通信切断中もきちんとユーザの発話内容を聞いていたことをユーザに示すことができる。このように、対話装置100は、通信状況が悪い場合の受け答え技術を改善することができる。
(第2実施形態)
上述した第1実施形態では、対話装置100は、サーバ装置200との通信が切断している間にユーザが発話した内容全体の中で最も多く使われている特定ワード等(1つの特徴単語)に対応する応答文で応答する。特徴単語はユーザの印象に残りやすいので、このような応答でもあまり問題は生じないと考えられるが、場合によってはユーザが発話中に話題が変化し、時間の経過とともに複数の特徴単語が同じ位多く使われることもあり得る。このような場合は、話題毎にそれぞれ最も多く使われている特徴単語を抽出して、抽出された複数の特徴単語それぞれに対応する応答文により複数回応答した方が望ましい場合もあると考えられる。そこで、このような複数の応答文により応答可能な第2実施形態について説明する。
第2実施形態に係る対話システム1001が対話装置101とサーバ装置201とを備える点は、第1実施形態に係る対話システム1000と同じである。第2実施形態に係る対話装置101は、第1実施形態に係る対話装置100と同じ外観である。対話装置101の機能構成は、図10に示すように、第1実施形態に係る対話装置100と比較して、記憶部120に、応答文情報リスト122を記憶する点が異なる。また、サーバ装置201の機能構成は、第1実施形態に係るサーバ装置200と同じである。
応答文情報リスト122は、図11に示すように、「発話日時」、「特徴単語」「ユーザの音声に対する応答文」を含み、これらは、サーバ装置201から送信された情報である。例えば、図11のNo.1は、ユーザが2017年9月5日10時3分5秒から2017年9月5日10時3分11秒までの間に発話した内容に含まれている特徴単語が「暑い」であり、このユーザの発話に対する応答文が「暑い暑い言ってると余計暑くなるよ。」であることを示している。No.2以降も同様である。なお、説明のための一例であるが、図11に示される「ユーザの音声に対する応答文」が対応する「ユーザの発話内容」は、図4に示す付加情報付音声情報121に示されているものである。
次に、対話装置101の制御部110が行う対話制御処理について、図12を参照して説明する。この処理は、第1実施形態に係る対話装置100の対話制御処理(図7)と比べ、一部を除いて同じなので、異なる点を中心に説明する。
ステップS101からステップS107及びステップS110からステップS113は、図7を参照して説明した処理と同じである。ステップS107の次のステップであるステップS121では、応答文情報取得部113としての制御部110は、通信部25を介して、サーバ装置201が送信した応答文情報リスト122を取得する。次に、応答文情報リスト122には、1つ以上の応答文情報が含まれているので、応答文情報取得部113としての制御部110は、応答文情報リスト122から応答文情報を1つ取り出す(ステップS122)。
応答文情報リスト122から取り出した応答文情報は、図11に示すように、「発話日時」が含まれている。制御部110は、「発話日時」の終了時刻が現在時刻より2分以上前であるか否かを判定する(ステップS123)。ここで2分とは、次に述べるステップS124で前置きを追加するか否かを判定するための時間なので、前置き判定基準時間とも言い、2分に限られない。前置き判定基準時間は、例えば3分、10分等、任意の値に変更可能である。
「発話日時」の終了時刻が現在時刻より2分以上前なら(ステップS123;Yes)、応答部114としての制御部110は、応答文情報に前置きを追加する。ここで前置きとは、例えば「そういえば、暑いと言ってましたけど」というような句である。より一般的には、「そういえば、[特徴単語]と言ってましたけど」と表すことができる。この前置きを追加することにより、「特徴単語」に対応する応答文が唐突に発話されたような印象をユーザに与えることを避けることができる。なお、「発話日時」の終了時刻が現在時刻より2分以上前ということではないなら(ステップS123;No)、前置きを追加すること無く、ステップS125に進む。
そして、応答部114としての制御部110は、応答文情報取得部113が取得した応答文情報(ステップS124で前置きが追加された場合は、前置き付きの応答文情報)に基づき、ユーザに応答する(ステップS125)。本実施形態では、応答文情報は応答文そのものなので、具体的には、応答部114は、応答文(又は前置き付きの応答文)の内容を音声合成して、スピーカ23から応答文を発話する。そして、制御部110は、応答文情報リスト122に次の応答文情報(まだ発話の対象になっていない応答文情報)が有るかないかを判定する(ステップS126)。
次の応答文情報があるなら(ステップS126;Yes)、ステップS122に戻り、応答文情報リストに存在する全ての応答文情報が発話されるまで、ステップS122からステップS125までの処理を繰り返す。次の応答文情報がないなら(ステップS126;No)、ステップS101に戻る。この応答文情報リストには、サーバ装置201で作成された、通信切断中の音声に対応する内容の、複数の応答文が含まれているので、ユーザは対話装置101が通信切断中もユーザの発話内容をきちんと聞いていてくれたことを確認できる。
次に、サーバ装置201が行う応答文作成処理について、図13を参照して説明する。この処理は、第1実施形態に係るサーバ装置200の応答文作成処理(図9)と比べ、一部を除いて同じなので、異なる点を中心に説明する。
ステップS301からステップS303及びステップS307からステップS309は、図9を参照して説明した処理と同じである。ステップS303の次のステップであるステップS321では、制御部210は、対話装置101が送信した音声情報(本実施形態では音声データ)から話の切れ目(話題)を抽出する。これは、ステップS303で生成されたテキストデータに基づいて話の切れ目(話題)を抽出してもよいし、音声データに基づいて例えば音声の途切れ等に基づいて話の切れ目(話題)を抽出してもよい。
次に、特徴単語抽出部212としての制御部210は、ステップS321で抽出した話の切れ目(話題)毎に、特徴単語を抽出する(ステップS322)。例えば、音声データの話の切れ目が発話開始から3分のところと5分のところに抽出された場合を想定する。この場合、発話開始後3分までの部分に最も多く含まれている特定ワードを最初の話題の特徴単語として抽出する。そして、発話開始後3分から5分までの部分に最も多く含まれている特定ワードを2番目の話題の特徴単語として抽出する。そして、発話開始後5分以降の部分に最も多く含まれている特定ワードを3番目の話題の特徴単語として抽出する。
そして、応答作成部213としての制御部210は、話の切れ目(話題)毎に抽出した特徴単語を応答文作成ルール221に適用して応答文情報(本実施形態では応答文そのもの)を作成し、その応答文に発話日時及び特徴単語を付加して、図11に示すような応答文情報リストを作成する(ステップS323)。そして、応答作成部213は、作成した応答文情報リストを、通信部230を介して対話装置101に送信する(ステップS324)。そして、ステップS301に戻る。
以上説明した応答文作成処理により、通信切断中に複数の話題からなる発話をユーザがしたとしても、各話題にそれぞれ含まれる特徴単語に基づいて応答文情報リストが作成される。したがって、サーバ装置201は、対話装置101との通信が切断している間に発話された複数の話題それぞれに対応する応答文情報を作成することができる。
そして、上述の対話装置101の対話制御処理により、サーバ装置201との通信が切断している間の音声情報に対する応答文情報リストをサーバ装置201から取得することにより、対話装置101は、複数の応答文による応答を行うことができる。これによって、1つの応答文による応答に比べ、ユーザの発話をよりきちんと聞いていたかのように思わせる応答を行うことができる。
例えば、図4のNo.8からNo.12に示すユーザの発話内容に対し、対話装置101はその時点では応答文を返答できないが、サーバ装置201との通信が回復した時点で、これらのNo.8からNo.12に示すユーザの発話内容がサーバ装置201に送信される。そして、サーバ装置201の応答文作成処理により、これらのユーザの発話内容から、図11のNo.2及びNo.3に示す応答文情報リストが作成される。そして、対話装置101の応答文情報取得部113は、この応答文情報リストを取得し、応答部114により、対話装置101はユーザに対して「そういえば、映画と言ってましたけど、映画って良いよね。私も映画大好き。」、「そういえば、かわいいと言ってましたけど、かわいいって私のこと?嬉しい。」等と発話することができる。
このように、対話装置101は、サーバ装置201との通信が切断している時には小まめな応答を行うことができないが、通信が回復した時に、切断中のユーザの発話内容に複数の話題が含まれていても、それぞれの話題中の特徴単語(最も多く使われている特定ワード等)に基づいた応答文を発話することができる。したがって、対話装置101は、各話題についてきちんとユーザの発話内容を聞いていたことを示すことができる。このように、対話装置101は、通信状況が悪い場合の受け答え技術をさらに改善することができる。
(第3実施形態)
対話装置が自己の位置を取得できるようにすると、応答文に位置に関する情報を含めることができるようになり、ユーザの発話内容をどこで聞いていたかということも示すことができるようになる。このような第3実施形態について説明する。
第3実施形態に係る対話システム1002が対話装置102とサーバ装置202とを備える点は、第1実施形態に係る対話システム1000と同じである。第3実施形態に係る対話装置102は、第1実施形態に係る対話装置100と同じ外観である。対話装置102の機能構成は、図14に示すように、第1実施形態に係る対話装置100と比較して、位置取得部26を備える点と、記憶部120に位置履歴データ123を記憶する点が異なる。また、サーバ装置202の機能構成は、第1実施形態に係るサーバ装置200と同じである。
位置取得部26は、GPS(Global Positioning System)衛星からの電波を受信することによって、自己位置の座標(位置データ)を取得することができる。自己位置の座標の情報は、緯度及び経度で表されている。
位置履歴データ123は、図15に示すように、自己位置を取得した日時と、自己位置の座標(緯度及び経度)と、のペアの履歴である。
次に、対話装置102の制御部110が行う対話制御処理について、図16を参照して説明する。この処理は、第1実施形態に係る対話装置100の対話制御処理(図7)と比べ、一部を除いて同じなので、異なる点を中心に説明する。
ステップS101からステップS103、ステップS105からステップS106及びステップS110からステップS113は、図7を参照して説明した処理と同じである。ステップS103の次のステップであるステップS131では、音声記録部111としての制御部110は、マイク21が取得した音声データを、通信状態(切断)及び現在時刻とともに、付加情報付音声情報121として記憶部120に記録し、また、制御部110は、位置取得部26が取得した位置データを取得日時とともに、位置履歴データ123として記憶部120に記憶する。
そして、ステップS106の次のステップであるステップS132では、制御部110は、ステップS102で記憶部220に記憶した通信切断時刻から現在時刻までの(通信切断中の)付加情報付音声情報121と位置履歴データ123とを、通信部25を介して、サーバ装置202に送信する。ここで送信した付加情報付音声情報121及び位置履歴データ123はサーバ装置202で音声認識及び場所名検索され、サーバ装置202は対話装置102に特徴単語、応答文及び位置に対応する場所名を送信する。具体例を示すと、位置に対応する場所名が存在すれば、サーバ装置202は、例えば、図17のNo.1に示すように、特徴単語「暑い」、応答文及び場所名「第一公園」を送信する。また、位置に対応する場所名が存在しなければ、サーバ装置202は、例えば、図17のNo.2に示すように、特徴単語「映画」、応答文及び場所名が無いことを示すデータ「−−−」を送信する。このサーバ装置202による処理(応答文作成処理)については後述する。
すると、応答文情報取得部113としての制御部110は、通信部25を介して、サーバ装置202が送信した特徴単語、応答文情報(本実施形態においては応答文そのもの)及び位置に対応する場所名を取得する(ステップS133)。そして、応答部114としての制御部110は、位置に対応する場所名が存在するか否かを判定する(ステップS134)。位置に対応する場所名が存在するなら(ステップS134;Yes)、応答文情報取得部113は、取得した応答文情報に、場所に関する前置きを追加する(ステップS135)。場所に関する前置きとは、例えば「そういえば、さっき公園にいたときに、暑いって言ってたけど」というような句である。より一般的には、「そういえば、さっき[位置に対応する場所名]にいたときに、[特徴単語]って言ってたけど」と表すことができる。なお、位置に対応する場所名が存在しないなら(ステップS134;No)、前置きを追加すること無く、ステップS136に進む。
そして、応答部114としての制御部110は、応答文情報取得部113が取得した応答文情報(ステップS135で前置きが追加された場合は、前置き付きの応答文情報)に基づき、ユーザに応答する(ステップS136)。本実施形態では、応答文情報は応答文そのものなので、具体的には、応答部114は、応答文(又は前置き付きの応答文)の内容を音声合成して、スピーカ23から応答文を発話する。そして、制御部110は、処理をステップS101に戻す。
次に、サーバ装置202が行う応答文作成処理について、図18を参照して説明する。この処理は、第1実施形態に係るサーバ装置200の応答文作成処理(図9)と比べ、一部を除いて同じなので、異なる点を中心に説明する。
ステップS301からステップS302、ステップS303からステップS305及びステップS307からステップS309は、図9を参照して説明した処理と同じである。ステップS302の判定がYesの場合の処理であるステップS331では、通信部230は、対話装置102が送信した位置履歴データ123を受信する。そして、制御部210は、位置履歴データ123に含まれる各座標について、緯度及び経度から場所名を取得するクラウドサービスを利用して、場所名を取得する(ステップS332)。例えば、google(登録商標)や、ゼンリン(登録商標)等の地図データベースを保有する企業から情報提供を受けることにより、ビル名などのかなり詳細な場所名を取得することができる。ただし、場所名が定義されていない座標も存在するので、場所名が取得できないこともある。
そして、ステップS305の次のステップであるステップS333では、制御部210は、ステップS332で場所名を取得できたか否かを判定する。場所名が取得できたなら(ステップS333;Yes)、応答作成部213は、ステップS304で抽出した特徴単語、ステップS305で作成した応答文情報、及び、ステップS332で取得した場所名を通信部230を介して対話装置102に送信する(ステップS334)。この送信データは、例えば図17のNo.1やNo.3に示すようなデータである。
場所名が取得できなかったなら(ステップS333;No)、応答作成部213は、ステップS304で抽出した特徴単語、ステップS305で作成した応答文情報、及び、場所名が無いことを示すデータを、通信部230を介して対話装置102に送信する(ステップS335)。この送信データは、例えば図17のNo.2に示すようなデータである。
そして、何れの場合(場所名が取得できた場合も取得できない場合も)も、その後、ステップS301に戻る。
以上説明した応答文作成処理により、通信切断中の発話内容に対する応答文情報には、特徴単語の情報と場所名の情報を付加して対話装置102に送信することができる。そして、上述の対話装置102の対話制御処理により、サーバ装置202との通信が切断している間の音声情報に対する応答文情報を、サーバ装置202から取得することにより、対話装置102は、ユーザがどの場所でどのような話をしたかをきちんと聞いていたかのように思わせる応答文で応答することができる。このように、対話装置102は、通信状況が悪い場合の受け答え技術をさらに改善することができる。
(変形例)
上述の各実施形態は任意に組み合わせることができる。例えば第2実施形態と第3実施形態とを組み合わせることにより、複数の話題に対応した応答文を、各話題を発話した場所についての前置きとともに発話させることができるようになる。これにより、例えば、「そういえば、さっき、第一公園にいたときに、暑いって言ってたけど、暑い暑い言ってると余計暑くなるよ。」、「そういえば、映画って言ってましたけど、映画って良いよね。私も映画大好き。」、「そういえば、さっき、第三食堂にいたときに、かわいいって言ってたけど、かわいいって私のこと?嬉しい。」のような発話を対話装置にさせることができる。これにより、対話装置がサーバ装置と通信できない状態のときのユーザの発話内容の話題の変化や各話題がどの場所で発話されたかに対して、あたかも対話装置がきちんと聞いていたかのように受け答えすることができる。したがって、この対話装置の変形例は、通信状況が悪い場合の受け答え技術をさらに改善することができる。
また、上述の各実施形態では、サーバ装置と対話装置の通信環境の乱れを想定して説明したが、節電等のために意図的に両装置間の通信を遮断した場合にも適用できるものである。
また、上述の各実施形態では、対話装置がユーザ1名に対応しているイメージで説明したが、対話装置が個人認識機能を搭載することにより、複数のユーザにそれぞれ対応した受け答えをすることが可能である。
なお、対話装置100,101,102の各機能は、通常のPC(Personal Computer)等のコンピュータによっても実施することができる。具体的には、上記実施形態では、対話装置100,101,102が行う対話制御処理等のプログラムが、記憶部120のROMに予め記憶されているものとして説明した。しかし、プログラムを、フレキシブルディスク、CD−ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)及びMO(Magneto−Optical Disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
(付記1)
ユーザが発話した音声に対する応答文を外部のサーバ装置と通信しながら作成する対話装置であって、
ユーザが発話した音声を音声データとして取得する音声取得部と、
前記音声取得部が取得した音声データに基づく音声情報を記録する音声記録部と、
前記サーバ装置と通信する通信部と、
前記通信部による前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録部が記録した音声情報を前記サーバ装置に送信し、前記音声情報に対する応答文情報を前記サーバ装置から取得する、応答文情報取得部と、
前記応答文情報取得部が取得した応答文情報に基づいて作成された応答文でユーザに応答する応答部と、
を備える対話装置。
(付記2)
前記通信部による前記サーバ装置との通信が切断している間ユーザに聞いている風に見せかける見せかけ部をさらに備える、
付記1に記載の対話装置。
(付記3)
前記見せかけ部は、前記音声取得部が取得した前記音声データに応じてうなずく、相づちを打つ、つぶやく、の少なくとも1つを実行する、
付記2に記載の対話装置。
(付記4)
前記見せかけ部は、釈明基準時間が経過すると、ユーザに対し適切な応答ができないことを釈明する、
付記2又は3に記載の対話装置。
(付記5)
前記応答文は、前記音声データを音声認識して取得したテキストデータに含まれる特徴単語に基づいて作成される、
付記1から4のいずれか1つに記載の対話装置。
(付記6)
前記特徴単語は、前記音声データを音声認識して取得したテキストデータに最も多く含まれる特定ワードである、
付記5に記載の対話装置。
(付記7)
前記特徴単語は、前記音声データを音声認識して取得したテキストデータに含まれる特定ワードのうち、強調修飾語に修飾された特定ワードである、
付記5に記載の対話装置。
(付記8)
前記応答文は、前記特徴単語に応答文作成ルールを適用することによって作成される、
付記5から7のいずれか1つに記載の対話装置。
(付記9)
前記応答文情報取得部は、通信切断中に前記音声記録部が記録した音声情報の話題毎の前記音声情報に対する応答文情報を前記サーバ装置から取得し、
前記応答部は、前記応答文情報取得部が取得した話題毎の応答文情報に基づいて作成した応答文でユーザに応答する、
付記1から8のいずれか1つに記載の対話装置。
(付記10)
前記応答部は、前記応答文情報取得部が取得した応答文情報に基づいて作成した応答文に前置きを追加した応答文で、ユーザに応答する、
付記1から9のいずれか1つに記載の対話装置。
(付記11)
自己の位置データを取得する位置取得部をさらに備え、
前記応答文情報取得部は、前記通信部による前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録部が記録した音声情報及び通信切断中に前記位置取得部が取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得し、
前記応答部は、前記応答文情報取得部が取得した応答文情報に基づいて作成された応答文に、前記応答文情報取得部が取得した場所名を含む前置きを追加した応答文でユーザに応答する、
付記1から10のいずれか1つに記載の対話装置。
(付記12)
制御部が、ユーザが発話した音声に基づく音声情報を記録し、
外部のサーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に記録された前記音声情報に対応する応答文情報を前記サーバ装置に作成させ、
前記サーバ装置から受信した前記応答文情報に基づいた応答文でユーザに応答する対話方法。
(付記13)
ユーザが発話した音声に対する応答文をサーバ装置と通信しながら作成する対話装置と、前記サーバ装置と、を備える対話システムにおけるサーバ装置であって、
前記対話装置と通信する通信部と、
前記ユーザが発話した音声に基づく音声情報を前記対話装置から前記通信部を介して受信する受信部と、
前記受信部が受信した音声情報に含まれる音声データを音声認識してテキストデータを生成する音声認識部と、
前記音声認識部が生成したテキストデータから該テキストデータに含まれる特徴的な単語である特徴単語を抽出する特徴単語抽出部と、
前記特徴単語抽出部が抽出した特徴単語に基づき、応答文情報を作成する応答作成部と、
前記応答作成部が作成した応答文情報を前記通信部を介して送信する送信部と、
を備え、
前記通信部による前記対話装置との通信が一時的に切断した後に回復した状態において、通信切断中の音声情報を前記対話装置から受信し、前記受信した音声情報に対する応答文情報を作成して前記対話装置に送信する、
ことを特徴とするサーバ装置。
(付記14)
ユーザが発話した音声に対する応答文を外部のサーバ装置と通信しながら作成する対話装置のコンピュータに、
ユーザが発話した音声に基づく音声情報を記録する音声記録ステップ、
前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録ステップで記録した音声情報を前記サーバ装置に送信し、前記音声情報に対する応答文情報を前記サーバ装置から取得する、応答文情報取得ステップ、及び、
前記応答文情報取得ステップで取得した応答文情報に基づいて作成された応答文でユーザに応答する応答ステップ、
を実行させるためのプログラム。
20…頭、21…マイク、22…カメラ、23…スピーカ、24…センサ群、25,230…通信部、26…位置取得部、30…胴体、31…首関節、32…足回り部、33…操作ボタン、100,101,102…対話装置、110,210…制御部、111…音声記録部、112…見せかけ部、113…応答文情報取得部、114…応答部、120,220…記憶部、121…付加情報付音声情報、122…応答文情報リスト、123…位置履歴データ、200,201,202…サーバ装置、211…音声認識部、212…特徴単語抽出部、213…応答作成部、221…応答文作成ルール、1000,1001,1002…対話システム、U…ユーザ

Claims (6)

  1. ユーザが発話した音声に対する応答文を外部のサーバ装置と通信しながら作成する対話装置であって、
    自己の位置データを取得する位置取得部と、
    ユーザが発話した音声を音声データとして取得する音声取得部と、
    前記音声取得部が取得した音声データに基づく音声情報を記録する音声記録部と、
    前記サーバ装置と通信する通信部と、
    前記通信部による前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録部が記録した音声情報及び通信切断中に前記位置取得部が取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得する、応答文情報取得部と、
    前記応答文情報取得部が取得した応答文情報を用い所定の応答文作成ルールに従って作成された応答文に前記応答文情報取得部が取得した場所名を含む前置きを追加した応答文でユーザに応答する応答部と、
    を備えることを特徴とする対話装置。
  2. 前記通信部による前記サーバ装置との通信が切断している間ユーザに聞いている風に見せかける見せかけ部をさらに備える、
    ことを特徴とする請求項1に記載の対話装置。
  3. 前記見せかけ部は、前記音声取得部が取得した前記音声データに応じてうなずく、相づちを打つ、つぶやく、の少なくとも1つを実行する、
    ことを特徴とする請求項2に記載の対話装置。
  4. 外部のサーバ装置との間で通信する通信部を有し、ユーザが発話した音声に対する応答文を前記通信部を介して前記サーバ装置と通信しながら作成する対話装置が実行する対話方法であって、
    自己の位置データを取得する位置取得処理と、
    ユーザが発話した音声に基づく音声情報を記録する音声記録処理と、
    前記通信部を介した前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録処理で記録した音声情報及び通信切断中に前記位置取得処理で取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得する、応答文情報取得処理と、
    前記応答文情報取得処理で取得した応答文情報を用いて所定の応答文作成ルールに従って作成された応答文に前記応答文情報取得処理で取得した場所名を含む前置きを追加した応答文でユーザに応答する応答処理と、
    を含むことを特徴とする対話方法。
  5. ユーザが発話した音声に対する応答文をサーバ装置と通信しながら作成する対話装置と、前記サーバ装置と、を備える対話システムにおけるサーバ装置であって、
    前記対話装置と通信する通信部と、
    前記ユーザが発話した音声に基づく音声情報を前記対話装置から前記通信部を介して受信する受信部と、
    前記受信部が受信した音声情報に含まれる音声データを音声認識してテキストデータを生成する音声認識部と、
    前記音声認識部が生成したテキストデータから該テキストデータに含まれる特徴的な単語である特徴単語を抽出する特徴単語抽出部と、
    前記特徴単語抽出部が抽出した特徴単語と所定の応答文作成ルールとに基づき、応答文情報を作成する応答作成部と、
    前記応答作成部が作成した応答文情報を前記通信部を介して送信する送信部と、
    を備え、
    前記通信部による前記対話装置との通信が一時的に切断した後に回復した状態において、通信切断中の音声情報及び通信切断中の前記対話装置の位置データを前記対話装置から受信し、前記受信した音声情報に対して作成した応答文情報及び前記受信した位置データに対応する場所名を前記対話装置に送信する、
    ことを特徴とするサーバ装置。
  6. 外部のサーバ装置との間で通信する通信部を有し、ユーザが発話した音声に対する応答文を前記通信部を介して前記サーバ装置と通信しながら作成する対話装置のコンピュータに、
    自己の位置データを取得する位置取得処理、
    ユーザが発話した音声を音声データとして取得する音声取得処理、
    前記音声取得処理で取得した音声データに基づく音声情報を記録する音声記録処理、
    前記通信部を介した前記サーバ装置との通信が一時的に切断した後に回復した状態において、通信切断中に前記音声記録処理で記録した音声情報及び通信切断中に前記位置取得処理で取得した位置データを前記サーバ装置に送信し、前記音声情報に対する応答文情報及び前記位置データに対応する場所名を前記サーバ装置から取得する、応答文情報取得処理、及び、
    前記応答文情報取得処理で取得した応答文情報を用いて所定の応答文作成ルールに従って作成された応答文に前記応答文情報取得処理で取得した場所名を含む前置きを追加した応答文でユーザに応答する応答処理、
    を実行させるためのプログラム。
JP2017186013A 2017-09-27 2017-09-27 対話装置、サーバ装置、対話方法及びプログラム Active JP6962105B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017186013A JP6962105B2 (ja) 2017-09-27 2017-09-27 対話装置、サーバ装置、対話方法及びプログラム
CN201811122774.6A CN109568973B (zh) 2017-09-27 2018-09-26 对话装置、对话方法、服务器装置及计算机可读存储介质
US16/142,585 US20190096405A1 (en) 2017-09-27 2018-09-26 Interaction apparatus, interaction method, and server device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017186013A JP6962105B2 (ja) 2017-09-27 2017-09-27 対話装置、サーバ装置、対話方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2019061098A JP2019061098A (ja) 2019-04-18
JP2019061098A5 JP2019061098A5 (ja) 2020-10-22
JP6962105B2 true JP6962105B2 (ja) 2021-11-05

Family

ID=65807771

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017186013A Active JP6962105B2 (ja) 2017-09-27 2017-09-27 対話装置、サーバ装置、対話方法及びプログラム

Country Status (3)

Country Link
US (1) US20190096405A1 (ja)
JP (1) JP6962105B2 (ja)
CN (1) CN109568973B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102637339B1 (ko) * 2018-08-31 2024-02-16 삼성전자주식회사 음성 인식 모델을 개인화하는 방법 및 장치
US10516777B1 (en) * 2018-09-11 2019-12-24 Qualcomm Incorporated Enhanced user experience for voice communication
US20200090648A1 (en) * 2018-09-14 2020-03-19 International Business Machines Corporation Maintaining voice conversation continuity
CN113555010A (zh) * 2021-07-16 2021-10-26 广州三星通信技术研究有限公司 语音处理方法和语音处理装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3925140B2 (ja) * 2001-10-09 2007-06-06 ソニー株式会社 情報提供方法及び情報提供装置、並びにコンピュータ・プログラム
JP3925326B2 (ja) * 2002-06-26 2007-06-06 日本電気株式会社 端末通信システム、連携サーバ、音声対話サーバ、音声対話処理方法および音声対話処理プログラム
JP2008083100A (ja) * 2006-09-25 2008-04-10 Toshiba Corp 音声対話装置及びその方法
JP2009198871A (ja) * 2008-02-22 2009-09-03 Toyota Central R&D Labs Inc 音声対話装置
JP6052610B2 (ja) * 2013-03-12 2016-12-27 パナソニックIpマネジメント株式会社 情報通信端末、およびその対話方法
JP6120708B2 (ja) * 2013-07-09 2017-04-26 株式会社Nttドコモ 端末装置およびプログラム
JP6054283B2 (ja) * 2013-11-27 2016-12-27 シャープ株式会社 音声認識端末、サーバ、サーバの制御方法、音声認識システム、音声認識端末の制御プログラム、サーバの制御プログラムおよび音声認識端末の制御方法
JP2015184563A (ja) * 2014-03-25 2015-10-22 シャープ株式会社 対話型家電システム、サーバ装置、対話型家電機器、家電システムが対話を行なうための方法、当該方法をコンピュータに実現させるためのプログラム
JP2017049471A (ja) * 2015-09-03 2017-03-09 カシオ計算機株式会社 対話制御装置、対話制御方法及びプログラム
CN106057205B (zh) * 2016-05-06 2020-01-14 北京云迹科技有限公司 一种智能机器人自动语音交互方法

Also Published As

Publication number Publication date
CN109568973A (zh) 2019-04-05
CN109568973B (zh) 2021-02-12
JP2019061098A (ja) 2019-04-18
US20190096405A1 (en) 2019-03-28

Similar Documents

Publication Publication Date Title
JP6962105B2 (ja) 対話装置、サーバ装置、対話方法及びプログラム
WO2017057170A1 (ja) 対話装置及び対話方法
US11151997B2 (en) Dialog system, dialog method, dialog apparatus and program
JP6420769B2 (ja) 二分岐音声認識
JP4595436B2 (ja) ロボット、その制御方法及び制御用プログラム
JP7038210B2 (ja) 対話セッション管理用のシステム及び方法
JP4622384B2 (ja) ロボット、ロボット制御装置、ロボットの制御方法およびロボットの制御用プログラム
JP6497372B2 (ja) 音声対話装置および音声対話方法
JP6376096B2 (ja) 対話装置及び対話方法
US11222634B2 (en) Dialogue method, dialogue system, dialogue apparatus and program
JP6589514B2 (ja) 対話装置及び対話制御方法
US11501768B2 (en) Dialogue method, dialogue system, dialogue apparatus and program
US11354517B2 (en) Dialogue method, dialogue system, dialogue apparatus and program
WO2018003196A1 (ja) 情報処理システム、記憶媒体、および情報処理方法
TW201909166A (zh) 主動聊天裝置
EP4336492A1 (en) Localized voice recognition assistant
WO2018107389A1 (zh) 语音联合协助的实现方法、装置及机器人
JP2006243555A (ja) 対応決定システム、ロボット、イベント出力サーバ、および対応決定方法
US20200082818A1 (en) Voice interaction device, control method for voice interaction device, and non-transitory recording medium storing program
KR20230133864A (ko) 스피치 오디오 스트림 중단들을 처리하는 시스템들및 방법들
WO2021153101A1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2017068359A (ja) 対話装置及び対話制御方法
CN112700783A (zh) 通讯的变声方法、终端设备和存储介质
Nakadai et al. Robot-audition-based human-machine interface for a car
WO2020031367A1 (ja) 情報処理装置、情報処理方法、およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200910

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210830

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210927

R150 Certificate of patent or registration of utility model

Ref document number: 6962105

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150