JP6846617B2 - 情報提供方法、サーバ、情報端末装置、システム及び音声対話システム - Google Patents

情報提供方法、サーバ、情報端末装置、システム及び音声対話システム Download PDF

Info

Publication number
JP6846617B2
JP6846617B2 JP2016574669A JP2016574669A JP6846617B2 JP 6846617 B2 JP6846617 B2 JP 6846617B2 JP 2016574669 A JP2016574669 A JP 2016574669A JP 2016574669 A JP2016574669 A JP 2016574669A JP 6846617 B2 JP6846617 B2 JP 6846617B2
Authority
JP
Japan
Prior art keywords
information
voice
condition
notification signal
character string
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
JP2016574669A
Other languages
English (en)
Other versions
JPWO2016129276A1 (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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management 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 Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JPWO2016129276A1 publication Critical patent/JPWO2016129276A1/ja
Application granted granted Critical
Publication of JP6846617B2 publication Critical patent/JP6846617B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Navigation (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)

Description

本開示は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムにおける情報提供方法に関する。
音声認識、対話処理及び音声合成を組み合わせることで、ユーザが自然言語によって装置に命令を与えることができる音声対話装置が広く知られている。近年では、対話技術として一往復の応答にとどまらず、一つの話題に関して繰り返し応答を行う中で得た情報を保持して活用したり、複数の話題に対応できるなど、より自然な会話を実現できる対話システムが提案されている(例えば特許文献1の参照)。これにより、ある話題の対話中に、別の話題の対話を割り込ませるような複雑な対話を実現することも可能である。
また、対話処理をサーバで行い、クライアント装置がサーバとの通信する音声対話システム(サーバ・クライアント型の音声対話システム)では、上記のような複雑な対話を構築する場合に重要である対話シナリオ(対話の応答内容を記述する部分)のメンテナンスも容易に行え、かつ拡張性も高くなると考えられている。
また、特許文献2のようにプッシュ型の発話を行うシステムが提案されている。
特開2007−52043号公報 特開平11−37766号公報
このような対話処理の一部をサーバで行う音声対話システムでは、クライアント装置が保持するデータベースの量を削減できるとともに、サーバとクライアント装置との間で伝送されるデータ量を削減できることが望まれている。
本開示は、クライアント装置が保持するデータベースの量を削減できるとともに、サーバとクライアント装置との間で伝送されるデータ量を削減できる情報提供方法を提供することを目的とする。
上記目的を達成するために、本開示の一態様に係る情報提供方法は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムにおける情報提供方法である。音声対話システムは、音声を取得する情報端末装置と、サーバとを含み、情報提供方法は、サーバが、情報端末装置に、移動体又はユーザの状態の条件を示すトリガ情報を送信するトリガ情報送信ステップと、情報端末装置が、トリガ情報を受信した場合、条件が満たされたか否かを判定する判定ステップと、情報端末装置が、条件が満たされた場合に、サーバに、移動体の状態を示す情報を含まない通知信号を送信する送信ステップと、サーバが、通知信号を受信した場合、条件が満たされた場合の音声対話用処理を行うことで音声情報を生成する生成ステップと、サーバが、音声情報を情報端末装置に送信する音声情報送信ステップと、情報端末装置が、音声情報を受信し、音声情報をユーザに提供する提供ステップとを含
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
本開示は、クライアント装置が保持するデータベースの量を削減できるとともに、サーバとクライアント装置との間で伝送されるデータ量を削減できる情報提供方法を提供する。
実施の形態における音声対話システムの全体構成を示す図 実施の形態におけるクライアント装置の構成を示すブロック図 実施の形態における対話処理部の構成を示すブロック図 実施の形態における音声対話システムの動作を示す図 実施の形態におけるクライアントシステムの動作を示すフローチャート 実施の形態におけるサーバの動作を示すフローチャート 実施の形態における音声対話システムの動作の一例を示す図 実施の形態における音声対話システムの動作の一例を示す図 実施の形態における音声対話システムの動作の一例を示す図 実施の形態におけるキーワードDBに保持される情報の一例を示す図 実施の形態における対話処理における状態遷移の一例を示す図 実施の形態における合成文字列テンプレートの一例を示す図 実施の形態におけるトリガテンプレートの一例を示す図 実施の形態におけるトリガ条件の一例を示す図 実施の形態における対話スタックの例を示す図 実施の形態における音声対話システムの動作の一例を示す図 実施の形態における音声対話システムの動作の一例を示す図 実施の形態におけるトリガ条件の一例を示す図 実施の形態におけるトリガ条件の一例を示す図
(本開示の基礎となった知見)
本発明者は、「背景技術」の欄において記載した、音声対話システムに関し、以下の問題が生じることを見出した。
プッシュ型の発話を行うシステムでは、車両の状態(例えば、車両の位置又は移動速度等)等の逐次変化する情報に基づき、音声対話システムからの発話が行なわれる。よって、サーバで全ての対話処理を行う場合には、クライアント装置で検出されたこれらの情報を、逐次サーバに送信する必要がある。これにより、サーバとクライアント装置との間で伝送されるデータ量が増加するという問題が生じる。
さらに、車両の位置情報等をサーバに送信することは、個人データ保護等の観点からも好ましくない。
一方で、このようなプッシュ型の対話を実現するための処理を、クライアント装置において行う場合には、予め決められた振る舞いをデータベースとしてクライアント装置に組み込んでおかなければならない。具体的には、このようなトリガは無数にあり、その条件の組み合わせを判定するためには、膨大なデータベースが必要になる。また、クライアント装置の処理量も増加するという問題が生じる。特に、サーバ・クライアント型の音声対話システムに組み込んだ場合、クライアント装置に膨大なデータベースを持たなければならず、サーバ・クライアント型にしたメリット(メンテナンス性及び拡張性)が活かされないという問題が生じる。
これらの問題に対して、本実施の形態は、サーバ・クライアント方式の音声対話装置において、クライアントに膨大なデータベースを持つことなく、サーバからの必要最小限の情報提供のみでプッシュ型の対話を行うことができ、かつユーザからの発話に応じた柔軟な振る舞いを行うことのできる音声対話システムを実現する。
本開示の一態様に係る情報提供方法は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムに含まれるサーバにおける情報提供方法である。情報提供方法は、音声対話システムに含まれ、音声を取得し、ユーザに音声情報を提供する情報端末装置に、移動体又はユーザの状態の条件を示すトリガ情報を送信し、当該条件を満たすときに通知信号を送信することを依頼するトリガ情報送信ステップと、通知信号を受信した場合、条件が満たされた場合の音声対話用処理を行うことで音声情報を生成する生成ステップと、音声情報を情報端末装置に送信する音声情報送信ステップとを含む。
これによれば、サーバとクライアント装置(情報端末装置)との間で伝送されるデータ量を削減できる。また、クライアント装置では、条件の判定のみを行なうので、クライアント装置が対話処理のための膨大なデータベースを保持する必要がない。また、クライアント装置における処理量の増加を抑制できる。
例えば、条件は、移動体又は情報端末装置が備えるセンサにより取得される移動体又はユーザの状態の条件を含んでもよい。
例えば、条件は、移動体の位置の条件を含んでもよい。
例えば、条件は、移動体の移動距離の条件を含んでもよい。
例えば、通知信号は、当該通知信号に基づく音声対話用処理の優先度を示す情報を含み、生成ステップでは、優先度に基づき、現在実行中の音声対話用処理と、通知信号に基づく音声対話用処理とのうち、優先度の高い音声対話用処理を実行してもよい。
これによれば、優先度に応じた適切な対話処理を実現できる。また、サーバは、通知信号に含まれる優先度を用いて直ちに処理の優先度を把握できる。
例えば、通知信号は、当該通知信号に基づく音声対話用処理における状態遷移の遷移先を示す情報を含み、生成ステップでは、遷移先に状態を遷移させ、遷移後の状態に基づき音声情報を生成してもよい。
これによれば、サーバは、通知信号に含まれる遷移先の情報を用いて直ちに対話処理を実行できる。
また、本開示の一態様に係る情報提供方法は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムに含まれ、音声を取得する情報端末装置における情報提供方法である。情報提供方法は、音声対話システムに含まれるサーバから、移動体又はユーザの状態の条件を示すトリガ情報を受信するトリガ情報受信ステップと、条件が満たされたか否かを判定する判定ステップと、条件が満たされた場合に、サーバに通知信号を送信する送信ステップと、サーバから、条件が満たされた場合の音声対話用処理により生成された音声情報を受信する音声情報受信ステップと、音声情報をユーザに提供する提供ステップとを含む。
これによれば、サーバとクライアント装置(情報端末装置)との間で伝送されるデータ量を削減できる。また、クライアント装置では、条件の判定のみを行なうので、クライアント装置が対話処理のための膨大なデータベースを保持する必要がない。また、クライアント装置における処理量の増加を抑制できる。
また、本開示の一態様に係る情報提供方法は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムにおける情報提供方法である。音声対話システムは、音声を取得する情報端末装置と、サーバとを含み、情報提供方法は、サーバが、情報端末装置に、移動体又はユーザの状態の条件を示すトリガ情報を送信するトリガ情報送信ステップと、情報端末装置が、トリガ情報を受信した場合、条件が満たされたか否かを判定する判定ステップと、情報端末装置が、条件が満たされた場合に、サーバに通知信号を送信する送信ステップと、サーバが、通知信号を受信した場合、条件が満たされた場合の音声対話用処理を行うことで音声情報を生成する生成ステップと、サーバが、音声情報を情報端末装置に送信する音声情報送信ステップと、情報端末装置が、音声情報を受信し、音声情報をユーザに提供する提供ステップとを含む。
これによれば、サーバとクライアント装置(情報端末装置)との間で伝送されるデータ量を削減できる。また、クライアント装置では、条件の判定のみを行なうので、クライアント装置が対話処理のための膨大なデータベースを保持する必要がない。また、クライアント装置における処理量の増加を抑制できる。
また、本開示の一態様に係るサーバは、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムに含まれるサーバであって、情報端末装置と、トリガ情報送信部と、生成部と、音声情報送信部とを備える。
情報端末装置は、音声対話システムに含まれ、音声を取得し、ユーザに音声情報を提供する。トリガ情報送信部は、情報端末装置に、移動体又はユーザの状態の条件を示すトリガ情報を送信し、当該条件を満たすときに通知信号を送信することを依頼する。生成部は、通知信号を受信した場合、条件が満たされた場合の音声対話用処理を行うことで音声情報を生成する。音声情報送信部は、音声情報を情報端末装置に送信する。
また、本開示の一態様に係る情報端末装置は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムに含まれ、トリガ情報受信部と、判定部と、送信部と、音声情報受信部と、提供部とを備える。
情報端末装置は音声を取得する。トリガ情報受信部は、音声対話システムに含まれるサーバから、移動体又はユーザの状態の条件を示すトリガ情報を受信する。判定部は、条件が満たされたか否かを判定する。送信部は、条件が満たされた場合に、サーバに通知信号を送信する。音声情報受信部は、サーバから、条件が満たされた場合の音声対話用処理により生成された音声情報を受信する。提供部は、音声情報をユーザに提供する。
また、本開示の一態様に係る音声対話システムは、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムであって、音声を取得し、ユーザに音声情報を提供する情報端末装置と、サーバとを含み、サーバは、情報送信部と、生成部と、音声情報送信部とを備え、情報端末装置は、トリガ情報受信部と、判定部と、送信部と、音声情報受信部と、提供部と備える。
トリガ情報送信部は、情報端末装置に、移動体又はユーザの状態の条件を示すトリガ情報を送信し、当該条件を満たすときに通知信号を送信することを依頼する。生成部は、通知信号を受信した場合、条件が満たされた場合の音声対話用処理を行うことで音声情報を生成する。音声情報送信部は、音声情報を情報端末装置に送信する。トリガ情報受信部は、サーバからトリガ情報を受信する。判定部は、条件が満たされたか否かを判定する。送信部は、条件が満たされた場合に、サーバに通知信号を送信する。音声情報受信部は、サーバから音声情報を受信する。提供部は、音声情報をユーザに提供する。
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
以下、本開示の実施の形態について、図面を参照しながら説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態)
本実施の形態に係る音声対話システムでは、基本的には、サーバにおいて音声対話のための対話処理を行う。また、当該対話処理において、車両情報の条件を判定する処理が発生した場合には、当該条件が、クライアント装置に通知される。クライアント装置は、車両情報が上記条件を満たすかを判定し、判定結果をサーバに通知する。このように、条件の判定のみがクライアント装置で行われることにより、クライアント装置からサーバに車両情報を逐次送信する必要がない。これにより、サーバとクライアント装置との間で伝送されるデータ量を削減できる。また、クライアント装置では、条件の判定のみを行なうので、クライアント装置が対話処理のための膨大なデータベースを保持する必要がない。また、クライアント装置における処理量の増加を抑制できる。
まず、本実施の形態に係る音声対話システム100の構成を説明する。図1は、本実施の形態における音声対話システム100の全体構成を示す図である。図1に示す音声対話システム100は、クライアントシステム110とサーバ120とを含む。クライアントシステム110とサーバ120とは、ネットワークを介して、通信可能である。クライアントシステム110は、例えば、ユーザが搭乗している車両(例えば自動車)内に設定されている。
クライアントシステム110は、サーバ120と通信を行うクライアント装置101と、ユーザの音声を取得するデバイスの一例であるマイク102と、合成音声を再生するデバイスの一例であるスピーカ103と、車両の状態を示す車両情報を取得する車両情報取得部104とを備える。
また、サーバ120は、ユーザの発話音声を示す発話音声信号を発話文字列に変換する音声認識部107と、発話文字列に基づき音声対話処理を行うことで合成文字列を生成する対話処理部108と、合成文字列を合成音声信号に変換する音声合成部109と備える。なお、以下では、音声認識部107、対話処理部108及び音声合成部109は、それぞれ個別のサーバ装置である場合の例を説明する。なお、音声認識部107、対話処理部108及び音声合成部109の全て又はいずれか2つが、単一のサーバ装置として実現されてもよい。
図2は、クライアント装置101のブロック図である。図2に示すように、クライアント装置101は、マイク102からのマイク入力信号から発話音声信号を生成する音声取得部201と、合成音声信号に基づくスピーカ出力信号をスピーカ103へ出力する音声出力部202と、サーバ120とのデータの送受信を行う通信部203とを備える。さらに、サーバ120から受け取ったトリガ情報を解釈するトリガ情報解釈部204と、トリガ情報で示されるトリガ条件を保持するクライアントトリガ条件保持部205と、車両情報取得部104で取得された車両情報を保持する車両状態管理部206と、トリガ条件の判定を行う判定部207と、トリガ条件が満たされたことをサーバ120に通知するための通知信号を生成する通知部208とを備える。
図3は、対話処理部108のブロック図である。図3に示すように、対話処理部108は、発話文字列及び通知信号を受信する入力文字列管理部301と、状態遷移処理を行う状態管理部302と、キーワードを保持するキーワードDB(データベース)303と、発話文字列に対するマッチング処理を行うマッチング処理部304と、キーワード文字列を保持するキーワード保持部305と、対話処理を実行する対話処理実行部306とを備える。さらに合成文字列テンプレートを保持する合成文字列テンプレートDB(データベース)307と、トリガテンプレートを保持するトリガテンプレートDB(データベース)308と、合成文字列及びトリガ情報を出力する出力文字列管理部309と、トリガ条件を保持するサーバートリガ条件保持部310とを備える。
以下、以上のように構成された音声対話システム100の動作を説明する。図4は、本実施の形態における音声対話システム100の動作を示す図である。
まず、ユーザが発話すると、クライアント装置101のマイク102はマイク入力信号を生成する。音声取得部201は、マイク入力信号を取得し、当該マイク入力信号を符号化することでデジタル信号である発話音声信号を生成する。通信部203は、生成された発話音声信号を音声認識部107に送信する(S101)。
音声認識部107は、受信した発話音声信号を音声認識により発話文字列に変換し、発話文字列を、クライアント装置101を経由して対話処理部108に送信する(S102)。
対話処理部108の入力文字列管理部301は、発話文字列を受け取り、受け取った発話文字列を保持する。マッチング処理部304は、状態管理部302で管理されている現在の状態においてマッチング処理を行う対象のキーワードをキーワードDB303から取得する。マッチング処理部304は、取得した発話文字列とキーワードとのマッチング処理を行い、合致したキーワードをキーワード保持部305に保持する(S103)。
そして、状態管理部302は、合致したキーワードに基づき状態遷移を行う。対話処理実行部306は、当該状態遷移に伴う対話処理を行うことで合成文字列及びトリガ情報を生成する。
具体的には、対話処理実行部306は、(1)データベースの取得、変更又は設定、(2)条件の判定、(3)情報の検索、取得又は加工、及び(4)合成文字列の生成などを行う。より具体的には、対話処理実行部306は、合成文字列テンプレートDB307から合成文字列テンプレートを取得し、取得した合成文字列テンプレートに、キーワード保持部305から読み出した文字列を設定し、後述する<VOICE>タグによりタグ付けを行うことで合成文字列を生成する。
さらに、対話処理実行部306は、トリガテンプレートDB308からトリガテンプレートを取得し、取得されたトリガテンプレートに、キーワード保持部305から読み出した文字列を設定することでトリガ情報を生成する。また、このトリガ情報で示されるトリガ条件はサーバートリガ条件保持部310に保持される。そして、対話処理実行部306は、生成されたトリガ情報に後述する<RULE>タグによりタグ付けを行ったうえで合成文字列に付与する(S104)。
出力文字列管理部309は、生成された合成文字列をクライアント装置101経由で音声合成部109に送信する。このとき、クライアント装置101の通信部203は、合成文字列に付与されたトリガ情報を取得する。
音声合成部109は、受信した合成文字列から合成音声信号を生成し、生成された合成音声信号をクライアント装置101に送信する(S105)。クライアント装置101の通信部203は合成音声信号を受信し、音声出力部202は合成音声信号を復号化することでスピーカ出力信号を生成する。スピーカ103は、生成されたスピーカ出力信号に基づき合成音声を再生する(S106)。
一方、トリガ情報解釈部204は、通信部203で取得されたトリガ情報を解釈し、トリガ情報で示されるトリガ条件をクライアントトリガ条件保持部205に保持する。例えば、クライアントトリガ条件保持部205に保持されるトリガ条件は、サーバ120に含まれるサーバートリガ条件保持部310に保持されるトリガ条件と同じである。
この一連の流れが繰り返されることで音声対話が成立する。
さらに、クライアント装置101の車両状態管理部206は、車両情報取得部104で取得された車両情報を保持する。判定部207は、車両情報で示される車両状態が、クライアントトリガ条件保持部205に保持されたトリガ条件を満たすかを定期的に判定する(S107)。車両状態がトリガ条件に合致した場合(トリガ発火)、通知部208は通知信号を生成する。また、通信部203は、生成された通知信号を対話処理部108に送信する。また、このとき、対話処理部108はクライアントトリガ条件保持部205に保持される、車両状態に合致したトリガ条件を削除する。
対話処理部108の入力文字列管理部301は、通知信号を受信する。マッチング処理部304は、通知信号が状態遷移を行うためのメッセージであることを解釈する。状態管理部302は通知信号に基づき状態遷移を行う。このとき状態管理部302は、サーバートリガ条件保持部310に保持され、通知信号に対応しているトリガ条件を削除する。また、対話処理実行部306は、遷移後の状態に基づき、合成文字列を生成する(S108)。また、出力文字列管理部309は、生成された合成文字列を、クライアント装置101を介して音声合成部109へ送信する。
音声合成部109は、合成文字列から合成音声信号を生成し、生成された合成音声信号をクライアント装置101に送信する(S109)。クライアント装置101の通信部203は合成音声信号を受信し、音声出力部202は合成音声信号を復号化することでスピーカ出力信号を生成する。スピーカ103は、生成されたスピーカ出力信号を出力することで合成音声を再生する(S110)。このようにして、プッシュ型の対話が実現される。
このとき、プッシュ型の対話におけるシステム側からの発話は、任意のタイミングで行われる。従って、既に対話の最中であることも考えられる。そこで、対話に優先度というパラメータが設定される。そして、現在行われている対話とプッシュ対話との優先度が比較され、優先度の高い方の対話が完了後に優先度の低い対話が行われる。
すなわち、通知信号に優先度が記載されることで、状態管理部302は、状態遷移を行うべきかを判断できる。プッシュ対話の優先度が低い場合は、この状態遷移処理は対話スタックに格納され、優先度の高い対話が終了後にロードされる。例えば、優先度は予め対話シナリオ内で記述される。優先度は、対話の内容に従い記述されており、クライアント側から通知される通知信号の優先度と現在行われている対話の優先度を比較し、状態遷移を行うかどうかを制御する。
次に、クライアントシステム110及びサーバ120の各々における処理の流れを説明する。
図5は、クライアントシステム110による処理の流れを示すフローチャートである。なお、図5の処理は、所定の周期毎に繰り返し行われる。
まず、クライアント装置101は、音声取得部201が発話音声(マイク入力信号)を取得したかを判定する(S201)。音声取得部201がマイク入力信号を取得した場合(S201でYes)、音声取得部201は、マイク入力信号から発話音声信号を生成し、通信部203は、発話音声信号をサーバ120へ送信する(S202)。
また、クライアント装置101は、通信部203が音声合成信号を受信したかを判定する(S203)。通信部203が音声合成信号を受信した場合(S203でYes)、音声出力部202は、合成音声信号を復号化することでスピーカ出力信号を生成する。スピーカ103は、生成されたスピーカ出力信号を出力する(S204)。
また、クライアント装置101は、通信部203がトリガ情報を受信したかを判定する(S205)。通信部203がトリガ情報を受信した場合(S205でYes)、トリガ情報解釈部204は、通信部203で取得されたトリガ情報を解釈し、トリガ情報で示されるトリガ条件をクライアントトリガ条件保持部205に保持する。そして、判定部207は、車両状態管理部206で管理される車両状態が、クライアントトリガ条件保持部205に保持されたトリガ条件を満たすかのトリガ判定を開始する(S206)。
また、トリガ判定が行われている場合(S207でYes)、判定部207は、トリガ判定を行う(S208)。車両状態がトリガ条件に合致した場合(トリガ発火)(S208でYes)、通知部208は通知信号を生成する。また、通信部203は、生成された通知信号を対話処理部108に送信する(S209)。
なお、ステップS201及びS202の処理と、ステップS203及びS204の処理と、ステップS205及びS206の処理と、ステップS207〜S209の処理との順序は一例であり、図5に示す順序以外であってもよいし、一部の処理が同時(並列)あるいは、処理時間が重複して行なわれてもよい。
次に、サーバ120による処理の流れを説明する。図6は、サーバ120による処理の流れを示すフローチャートである。なお、図6の処理は、所定の周期毎に繰り返し行われる。
サーバ120は、発話音声信号を受信したかを判定する(S301)。発話音声信号が受信された場合(S301でYes)、音声認識部107は、音声認識により発話音声信号を発話文字列に変換する(S302)。
次に、対話処理部108の入力文字列管理部301は、発話文字列を受け取り、受け取った発話文字列を保持する。マッチング処理部304は、状態管理部302で管理されている現在の状態において、マッチング処理を行う対象のキーワードをキーワードDB303から取得する。マッチング処理部304は、取得した発話文字列とキーワードとのマッチング処理を行い、合致したキーワードをキーワード保持部305に保持する(S303)。
そして、状態管理部302は、合致したキーワードに基づき状態遷移を行う。対話処理実行部306は、当該状態遷移に伴う対話処理を行うことで合成文字列を生成する(S304)。
音声合成部109は、合成文字列から合成音声信号を生成し、生成された合成音声信号をクライアント装置101に送信する(S305)。
また、ステップS304での状態遷移に伴いトリガ条件を伴う判定が発生した場合(S306でYes)、対話処理実行部306は、トリガ条件を示すトリガ情報を生成し、出力文字列管理部309は、生成されたトリガ情報をクライアント装置101へ送信する(S307)。
また、サーバ120は、通知信号を受信したかを判定する(S308)。通知信号が受信された場合(S308でYes)、マッチング処理部304は、通知信号が状態遷移を行うためのメッセージであることを解釈する。状態管理部302は通知信号に基づき状態遷移を行う。また、対話処理実行部306は、遷移後の状態に基づき、対話処理を行うことで合成文字列を生成する(S309)。
音声合成部109は、合成文字列から合成音声信号を生成し、生成された合成音声信号をクライアント装置101に送信する(S310)。
なお、ステップS301〜S307の処理と、ステップS308〜S310の処理との順序は一例であり、図6に示す順序以外であってもよいし、一部の処理が同時(並列)あるいは、処理時間が重複して行なわれてもよい。
また、ここでは、サーバ120に含まれる音声認識部107、対話処理部108及び音声合成部109が、それぞれ個別のサーバ装置である場合の例を説明したが、音声認識部107、対話処理部108及び音声合成部109の全て又はいずれか2つが、単一のサーバ装置として実現されてもよい。この場合、発話文字列は、クライアント装置101を経由せずに、音声認識部107から対話処理部108に送られる。同様に、合成文字列は、クライアント装置101を経由せずに、対話処理部108から音声合成部109に送られる。
また、音声認識部107及び音声合成部109の少なくとも一方が、クライアントシステム110に含まれてもよい。
ここまでの流れの具体例を、図7A〜図12を用いて説明する。図7A〜図7Cは、具体的な動作例を説明するための図である。図8は、キーワードDB303に保持されるキーワードの一例を示す図である。図9は、対話処理における状態遷移の一例を示す図である。図10は、合成文字列テンプレートDB307に保持される合成文字列テンプレートの一例を示す図である。図11は、トリガテンプレートDB308に保持されるトリガテンプレートの一例を示す図である。図12は、クライアントトリガ条件保持部205及びサーバートリガ条件保持部310に保持されるトリガ条件の一例を示す図である。
図7Aに示すようにユーザが「AAAタワーに行きたい」と発話した音声を音声認識部107で認識する(S401)。対話処理部108のマッチング処理部304は、音声認識結果の発話文字列に対してキーワードマッチングを行う(S402)。ここで、図8に示すように、キーワードDB303には、キーワード410と、参照キーワードグループ420とが格納されている。キーワード410は、複数のテーブル401〜405を含む。テーブル401〜405の各々は、1以上のキーワード(例えば、テーブル401における「{場所}に行きたい」)を含むキーワードリストである。また、テーブル401〜405の各々には、遷移元の状態と、遷移先の状態とが設定されている。
また、各キーワードにはキーワードグループ(図8では{}で示されている)が含まれる場合がある。参照キーワードグループ420は、各々がこのキーワードグループを示すリスト406〜409を含む。リスト406〜409の各々は、キーワードグループに含まれる複数の単語のリストである。
また、初期状態として遷移状態は、図9に示す「通常状態0100」に設定されている。
まず、マッチング処理部304は、図8に示すキーワード410の中から、遷移元として現在の状態0100が設定されているテーブル401、404及び405を取得し、テーブル401、404及び405に含まれるキーワードから、発話文字列に合致するキーワードを検索する。ここでは、テーブル401に含まれる「{場所}に行きたい」が検索される。
また、マッチング処理部304は、キーワードにキーワードグループが含まれている場合、参照キーワードグループ420からそのキーワードグループ(この例では{場所}のリスト406)の単語全てをキーワード保持部305に保持する。
また、状態管理部302は、テーブル401に設定されている遷移先の状態0101に状態遷移を行う。このように、状態管理部302は、「AAAタワーに行きたい」という発話文字列とマッチングした結果に基づき、遷移先を状態0101に決定できる。つまり、状態管理部302は、図9に示す通常状態0100から目的地設定対話を行なうための目的地設定状態0101に状態遷移を行う。その際、キーワード保持部305は、「AAAタワー」を目的地として保持する。また、対話処理部108は、AAAタワーの位置取得などの処理を行う。
次に、対話処理実行部306は、遷移状態に基づき対話処理を行うことで合成文字列を生成する。
図10に示すように、合成文字列テンプレートDB307に格納されている合成文字列テンプレートは、遷移状態を示す状態501と、合成文字列を生成する条件502と、合成文字列のテンプレート503とを含む。
対話処理実行部306は、図10に示す合成文字列テンプレートから状態501が0101であり、条件502を満たすテンプレート503「<VOICE>[目的地]を目的地に設定しますか?</VOICE>」を取得する。次に、対話処理実行部306は、先ほど目的地に設定したキーワード「AAAタワー」をキーワード保持部305から取得し、取得した文字列を[目的地]にあてはめることで、「<VOICE>AAAタワーを目的地に設定しますか?</VOICE>」という合成文字列を生成する(S403)。
また、対話処理実行部306は、トリガテンプレートDB308からトリガテンプレートを取得する。図11に示すように、トリガテンプレートは、遷移状態を示す状態511と、トリガ情報を生成する条件512と、トリガ条件のテンプレート513とを含む。
対話処理実行部306は、図11に示すトリガテンプレートから状態511が0101であり、条件512を満たすテンプレート513を取得する。今回の例では合致するテンプレート513が存在しないので、合成文字列がそのままクライアント装置101に送信される。
クライアント装置101は、<VOICE>タグの中身を音声合成部109に送信し、音声合成結果である合成音声信号を受け取る。そして、クライアント装置101は、合成音声信号で示される「AAAタワーを目的に設定しますか?」を出音する(S404)。また、クライアント装置101は、トリガ情報を受け取っていないため、トリガ条件は更新しない。
次に、ユーザが「はい」と発話した音声を音声認識部107で認識した場合(S405)、対話処理部108のマッチング処理部304は、音声認識部107から取得した発話文字列「はい」に対してキーワードマッチングを行う。具体的には、テーブル402が選択され、状態管理部302は、図9に示す目的地設定状態0101から目的地決定状態0102へ状態を遷移させる(S406)。
また、対話処理実行部306は、図10に示すテンプレート「<VOICE>[目的地]を目的地に設定しました</VOICE>」を取得し、[目的地]に「AAAタワー」を設定することで、合成文字列「<VOICE>AAAタワーを目的地に設定しました</VOICE>」を生成する(S407)。
さらに、対話処理実行部306は、トリガテンプレートDB308からトリガテンプレートを取得し、トリガ情報を生成する(S408)。
具体的には、対話処理実行部306は、図11に示すトリガテンプレートから状態511が0102であり、条件512を満たすテンプレート513「<RULE>[ID],GPS,[緯度],[経度],5,0301,M</RULE>」を取得する。なお、ここでは、目的地が現在地から5km圏内でなく、かつ駐車場のない施設であるとする。また、上記テンプレートは、目的地の5km圏内に車両が入ったときに駐車場を案内する対話[図9に示す目的地接近状態0301]を優先度「中」でプッシュ発話するという内容である。
対話処理実行部306は、[ID]に固有の値(ここでは「AAA」)を、[緯度]には目的地の緯度を、[経度]には目的地の経度を設定することで、トリガ情報を生成する。このトリガ情報の内容を元にサーバートリガ条件保持部310は、図12に示すトリガ条件を保持する。図12に示すように、トリガ条件は、トリガ条件を識別するための固有の識別子であるID521と、判定対象の条件を示す条件522と、判定内容を示す内容523と、トリガ条件が満たされた場合の遷移先の状態を示す遷移先524と、トリガ条件が満たされた後の処理の優先度を示す優先度525とを含む。
また、対話処理部108は、トリガ情報にタグ<RULELIST>を追加し、合成文字列に付与することで、文字列「<VOICE>AAAタワーを目的地に設定しました</VOICE><RULELIST><RULE>AAA,GPS,[緯度],[経度],5,0301,M</RULE></RULELIST>」を生成し、生成された文字列をクライアント装置101に送信する。
クライアント装置101は<VOICE>タグの中身を音声合成部109に送信し、音声合成結果である合成音声信号を受け取る。そして、クライアント装置101は、合成音声信号で示される「AAAタワーを目的に設定しました」を出音する(S409)。
また、クライアント装置101は、<RULE>タグの中身をトリガ情報として取得し、図12に示すように、トリガ情報で示されるトリガ条件をクライアントトリガ条件保持部205に保持する。そして、クライアント装置101は、トリガ条件に従い判定を行う。すなわち、判定部207は、車両情報としてGPS情報を取得し、GPS情報で示される車両の位置と目的地の緯度及び経度との距離を求め、求めた距離が5km以上かどうかを判定する処理を、例えば、10[s]程度の周期で行う。
そして、目的地の距離が5km以下になった場合、通知部208は、トリガ条件のID「AAA」と、遷移先を示す「0301」と、優先度中を示す「M」とを含む通知信号「<STATE>AAA,0301,M</STATE>」を生成する。このように、通知信号は、トリガ条件を一意に識別するための情報と、トリガ条件が満たされた場合の遷移状態の遷移先を示す情報と、トリガ条件が満たされた場合に行われる対話処理の優先度を示す情報とを含む。そして、この通知信号が対話処理部108に送信される。また、クライアントトリガ条件保持部205に格納されているID「AAA」のトリガ条件が削除される(S410)。
対話処理部108は、受信した通知信号に含まれる優先度に基づき、現在行われている対話処理と通知信号に基づく対話処理との優先度を判断する。図13を用いて、この処理の具体例を説明する。なお、図13では、通知信号に基づき、優先度が通常(中)の駐車場検索処理が行なわれる場合の例を示している。
(1)図13の(a)に示すように対話中でない場合、または、(2)図13の(b)に示すように、優先度が低いスケジュール確認の対話中などの、通知信号に基づく駐車場検索処理の優先度の方が、現在行なわれている対話処理の優先度より高い場合は、状態管理部302は、通知信号に基づき、図9に示す通常状態0100から目的地接近状態0301に状態を遷移させる。また、対話処理実行部306は、ID521が「AAA」のトリガ条件をサーバートリガ条件保持部310から削除し、対話処理により「目的地近辺に到着しました。駐車場を案内いたしましょうか?」を示す合成文字列を生成し、生成された合成文字列をクライアント装置101に送信する(S411)。
これにより、クライアント装置101は、「目的地近辺に到着しました、駐車場を案内いたしましょうか?」を出音する(S412)。なお、その際に、クライアント装置101は、目的地近辺であることを表す何らかの音を再生してもよいし、車内のディスプレイに何らかのキャラクター又は絵を表示してもよい。
また、図13の(c)に示すように優先度が高いコンビニ検索処理の対話中などのように、通知信号に基づく駐車場検索処理の優先度の方が、現在行なわれている対話処理の優先度より低い場合は、駐車場検索処理は対話スタックに格納され、現在行われている対話処理が優先される。
なお、上記では、目的地近辺で駐車場を案内する例を説明したが、ユーザ側から条件付指示を与えられたときにも本実施の形態を対応できる。図14A及び図14Bは、この動作例を説明するための図である。例えば、図14Aに示すように、ユーザが「あと10km走ったらガソリンを入れたい」と発話する(S501)。対話処理部108のマッチング処理部304は、音声認識結果の発話文字列に対してキーワードマッチングを行う(S502)。キーワードマッチングの結果に基づき、状態管理部302は、図9に示す通常状態0100から条件付指示状態0200に状態を遷移させる。
その際、トリガ条件が、車の走行距離に関する条件であること、あと10km走行することを条件とすることを示す情報(「走行距離」=10」、[条件]=「10km走行」)がキーワード保持部305に保持される。
次に、遷移後の状態に基づき、対話処理実行部306は、「ガソリンを入れたい」に対応する対話状態であるガソリンスタンド検索状態0400を取得する。その後、対話処理実行部306は、車のガソリンの状態からあと10km走行できることを確認したうえで、トリガリスト文字列テンプレート「<RULE>[ID],CAN,dist,[走行距離],[遷移対話状態],H</RULE>」を呼び出す。そして、対話処理実行部306は、[ID]には固有の値「BBB」を設定する。なお、ここでは、図15に示すようにガソリン残量に関わるトリガ条件(ID521=「BBB])が既に存在しており、かつこのトリガ条件を上書きされる場合を説明する。
また、対話処理実行部306は、[走行距離]に「10」、[遷移対話状態]にガソリンスタンド検索状態を示す「0400」を設定する。以上により、トリガ情報「<RULE>BBB,CAN,dist,10,0400,H</RULE>」が生成される。また、対話処理実行部306は、この内容でトリガ条件を上書きする。これにより、サーバートリガ条件保持部310は、図16に示すように更新される。また、対話処理実行部306は、合成文字列「<VOICE>了解しました。あと10km走ったらお知らせします。</VOICE>」を生成し、生成されたトリガ情報及び合成文字列をクライアント装置101に送信する(S503)。
クライアント装置101は、合成文字列を受信し、「了解しました。あと10km走ったらお知らせします。」を出音する(S504)。
また、クライアント装置101は、トリガ情報を受信し、受信したトリガ情報で示されるトリガ条件にクライアントトリガ条件保持部205に格納されているトリガ条件を上書きする。例えば、クライアントトリガ条件保持部205には図15に示すトリガ条件が保持されており、受信されたトリガ情報で示されるトリガ条件に、当該トリガ条件のIDと同じID「BBB」のトリガ条件が上書きされる。これにより、クライアントトリガ条件保持部205は、図16に示すように更新される。
また、クライアント装置101は、更新されたトリガ条件に従い目標走行距離と現在の走行距離とを比較し、走行距離が目標走行距離に達したかを定期的に判定する。走行距離が目標走行距離に達した場合、通知部208は、通知信号「<STATE>BBB,0400,H</STATE>」を生成し、対話処理部108に送信する(S505)。
対話処理部108は、通知信号を受信し、状態管理部302は、図9に示す通常状態0100からガソリンスタンド検索状態0400に状態を遷移させる。対話処理実行部306は、遷移後の状態に基づき、「10km走行しました。ガソリンスタンドを検索しますか?」を示す合成文字列を生成する(S506)。生成された合成文字列は、クライアント装置101に送信され、クライアント装置101は、「10km走行しました。ガソリンスタンドを検索しますか?」を出音する(S507)。
このように、10km走行後にガソリンスタンドを検索するプッシュ対話を開始できる。
なお、上記説明では、対話処理部108のサーバートリガ条件保持部310と、クライアント装置101のクライアントトリガ条件保持部205との両方が、ID521、条件522、内容523、遷移先524及び優先度525をそれぞれ保持する例を述べたが、これらの情報の一部又は全てが一方の保持部にのみ保持されてもよい。
また、上記説明では、トリガ情報及び通知信号に、IDと、遷移先を示す情報と、優先度を示す情報とが含まれているが、これらの少なくとも一つが含まれなくてもよい。
例えば、遷移先524及び優先度525の少なくとも一方は、対話処理部108でのみ管理されてもよい。この場合、トリガ情報及び通知信号にはこの情報は含まれない。対話処理部108は、通知信号を受信した際に、通知信号に含まれるIDと、管理している情報とに基づき、遷移先及び優先度を判断する。
または、遷移先524及び優先度525の少なくとも一方は、クライアント装置101でのみ管理されてもよい。この場合、トリガ情報及び通知信号にこの情報が含まれる。対話処理部108は、通知信号を受信した際に、通知信号に含まれる遷移先又は優先度に基づき、遷移先又は優先度を判断する。
また、通知信号に遷移先及び優先度が含まれる場合には、対話処理部108でトリガ条件を保持しておく必要はない。この場合、対話処理部108は、通知信号を受信した際に、通知信号に含まれる遷移先又は優先度に基づき、遷移先又は優先度を判断する。また、通知信号に遷移先が含まれる場合には、対話処理部108は、この遷移先のみに基づき処理を行うこともできるので、通知信号にIDが含まれなくてもよい。
つまり、トリガ情報は少なくともトリガ条件を示せばよい。また、通知信号はトリガ情報で示されるトリガ条件が満たされたことを示せばよい。
また、上記説明では、対話の内容をすぐにトリガ条件として活用したが、キーワード保持部305に過去の対話のキーワードが蓄積され、対話処理部108は、蓄積された情報に基づきトリガ条件を生成してもよい。例えば、対話処理部108は、初めて訪れる地域である旨の対話が行なわれていた場合に、ユーザがその地域に到着したことを判定する第1のトリガ条件が生成する。さらに、その第1のトリガ条件が満たされた場合に、観光地のスポット情報又は店舗のスポット広告に、ユーザが近付いたことを判定する第2のトリガ条件を生成する。この第2のトリガ条件が満たされた場合に、対話処理部108は、観光案内又は広告に関する対話を行う。このように、対話処理部108は、二段階のトリガ条件を生成してもよい。
また、ユーザが車に詳しくない旨がいくつかの対話(運転暦又は事故対応の回数に関する対話など)で確認された場合に、対話処理部108は、車に異常が発生したことを判定するトリガ条件を生成する。対話処理部108は、この条件が満たされた場合に、どのような異常が発生していて、どう対処すべきかを示す情報を対話により与える。これにより、複数の対話の結果を利用して、初心者だけを対象としたヘルプ機能を実現できる。
さらに、お昼にイタリアンレストランが頻繁に検索されている場合に、対話処理部108は、お昼の時間帯になったかを判定するトリガ条件を生成し、条件が満たされた場合に、イタリアンレストランの店を対話で案内する。これにより、レコメンド機能を実現することも可能である。
また、上記説明では、トリガ条件が、車両の走行距離等の条件である例を説明したが、トリガ条件は、車両の状態の条件であればよい。例えば、トリガ条件は、車に実装されているクライアント装置で取得可能なパラメータの条件であればよい。例えば、トリガ条件は、CAN(Controller Area Network)などから取得される車両情報(アクセル踏み込み量、ブレーキの踏み込み量、ステアリングの蛇角、シフト位置、ウィンカーの状態、ワイパーの状態、ライト状態、ガソリン残量、走行距離、車速、車体加速度、車体角速度、車間距離、近接センサ、水温、オイル量、各種警告、ウィンドウの開閉度、又はエアコンの設定など)の条件であってもよい。
また、トリガ条件は、車に乗車しているユーザの状態の条件であってもよい。例えば、トリガ条件は、ドライバ周囲に配置されているセンサで得られるユーザの状態を示す情報(視線、顔の向き、音声、乗車人数、個人認識情報、体重、体温、脈拍、血圧、発汗、脳波、覚醒度又は集中度など)の条件であってもよい。
また、トリガ条件は、その他の車載のセンサで得られる情報(GPS情報、車内温度、外気温、湿度又は時刻など)などの条件であってもよい。
つまり、トリガ条件は、車両又はクライアント装置が備えるセンサにより取得される車両又はユーザの状態の条件である。言い換えると、トリガ条件は、車両又はユーザの状態であって、逐次変化する状態の条件である。
さらに、上記説明では、クライアント装置101が自動車に搭載される例を述べたが、クライアント装置101は、移動体(例えば、電車、飛行機、又は自転車等)に搭載されてもよい。また、クライアント装置101は、これらの移動体に搭乗するユーザに所持又は携帯されてもよい。つまり、トリガ条件は、移動体の状態の条件、又は移動体に搭乗しているユーザの状態の条件であってもよい。
また、トリガ条件はAND条件、OR条件又はその組み合わせであってもよい。例えば、<RULELIST><AND><RULE>[ID],GPS,[緯度],[経度],5,0301,H</RULE><RULE>[ID],TIME,[時刻],0301,H</RULE></AND></RULELIST>により、二つのルールのAND条件が定義されてもよい。これにより、位置の条件と時刻の条件とが共に満たされた場合にプッシュ発話が行われる。
また、<RULELIST><OR><RULE>[ID],GPS,[緯度1],[経度1],5,0301,H</RULE><RULE>[ID],GPS,[緯度2],[経度2],5,0301,H</RULE></AND></RULELIST>により、二つのルールのOR条件が定義されてもよい。これにより、どちらかの条件が満たされた場合にプッシュ対話が開始される。
これらを組み合わせることによって、例えば、ユーザが、オートクルーズコントロールを使ってみたい旨を対話で話した場合、対話処理部108は、車両が高速道路付近でかつ高速定常走行している場合を検知し、オートクルーズコントロールの機能を音声で案内することも可能である。また、対話で目的地が設定されており、その目的地が遠い場合、対話処理部108は、ユーザの覚醒度の低下又は集中度の低下のいずれかを検知し、ユーザに休憩を勧めたりすることも可能である。
また、対話処理部108は、(1)車内の人同士の会話をモニタリングし、会話が途切れたとき、(2)運転負荷をモニタリングし、運転負荷が低くなったとき、(3)ユーザの脳波又は心拍などからユーザの精神状態を検知し、ユーザの精神状態が安静状態のときに、プッシュ型の発話を行ってもよい。
さらに、本実施の形態では、各機能をサーバ120とクライアントシステム110とに分けて説明したが、サーバ120の機能の一部をクライアントシステム110が有してもよい。
また、本実施の形態では、音声認識部107と対話処理部108と音声合成部109とが直接接続されていない例を述べたが、音声認識部107の出力信号が対話処理部108に直接入力されてもよいし、対話処理部108の出力信号のうち、合成文字列が音声合成部109に直接入力され、トリガ情報がクライアント装置101に送信されてもよい。
さらに、上記説明では、トリガ条件はその条件が満たされた場合に消去されていたが、トリガ条件に消去条件が付与され、消去条件が満たされた場合に、クライアント装置101のクライアントトリガ条件保持部205からトリガ条件が消去されてもよい。この場合、クライアント装置101はサーバ120に消去指令を送信し、消去命令を受信したサーバ120は、サーバートリガ条件保持部310のトリガ条件を削除する。
以上のように、本実施の形態に係る音声対話システム100は、移動体に搭乗しているユーザからの音声に基づき、ユーザと対話する音声対話システムであって、ユーザからの音声を取得し、ユーザに音声情報を提供する情報端末装置であるクライアント装置101と、サーバ120とを含む。
サーバ120は、クライアント装置101に、移動体又はユーザの状態の条件を示すトリガ情報を送信し、当該条件を満たすときに通知信号をサーバ120に送信することを依頼する(図6のS307)。サーバ120は、通知信号を受信した場合(S308でYes)、上記条件が満たされた場合の音声対話用処理を行うことで音声情報(合成文字列又は音声合成信号)を生成する(S309)。サーバ120は、音声情報をクライアント装置101に送信する(S310)。
また、クライアント装置101は、サーバ120からトリガ情報を受信し(図5のS205)、トリガ情報で示される条件が満たされたか否かを判定する(S206及びS208)。クライアント装置101は、トリガ情報で示される条件が満たされた場合に(S208でYes)、サーバ120に通知信号を送信する(S209)。また、クライアント装置101は、サーバ120から音声情報(合成文字列又は音声合成信号)を受信し(S203)、受信された音声情報をユーザに提供する(S204)。
例えば、トリガ情報で示される条件は、移動体又はクライアント装置101が備えるセンサにより取得される移動体又はユーザの状態の条件を含む。例えば、この条件は、移動体の位置の条件又は移動体の移動距離の条件を含む。
このように、サーバ・クライアント型の音声対話システムにおいて、サーバ120で生成したトリガ条件をクライアント装置101で判断することにより、クライアント装置101を非常にシンプルで安価な構造で実現できる。また、サーバ120がプッシュ型対話の条件を保持できるためメンテナンス性及び拡張性を十分に確保できる。かつ、従来のシステムでは実現の難しかった、ユーザから「〜になったら、〜して」といった条件付指示を受けた場合についても、同様の仕組みで実現できる。
また、通知信号は、当該通知信号に基づく音声対話用処理の優先度を示す情報を含む。サーバ120は、優先度に基づき、現在実行中の音声対話用処理と、通知信号に基づく音声対話用処理とのうち、優先度の高い音声対話用処理を実行する。
これによれば、優先度に応じた適切な対話処理を実現できる。また、サーバは、通知信号に含まれる優先度を用いて直ちに処理の優先度を把握できる。
また、通知信号は、当該通知信号に基づく音声対話用処理における状態遷移の遷移先を示す情報を含む。サーバ120は、上記情報で示される遷移先に状態を遷移させ、遷移後の状態に基づき音声情報を生成する。
これによれば、サーバは、通知信号に含まれる遷移先の情報を用いて直ちに対話処理を実行できる。
以上、本開示の実施の形態に係る音声対話システムについて説明したが、本開示は、この実施の形態に限定されるものではない。
例えば、本開示は、上記音声対話システムに限らず、音声対話システムに含まれるサーバ、又はクライアント装置(情報端末装置)として実現されてもよいし、音声対話システム、サーバ又はクライアント装置における情報提供方法として実現されてもよい。
また、上記実施の形態に係る音声対話システムに含まれる処理部の一部又は全ては典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
また、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
さらに、本開示は上記プログラムであってもよいし、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
また、上記で用いた対話内容又は数字等は、全て本開示を具体的に説明するために例示するものであり、本開示は例示された対話内容又は数字等に制限されない。
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
同様に、上記の音声対話システムにおける情報提供方法は、本開示を具体的に説明するために例示するためのものであり、本開示に係る情報提供方法は、上記ステップの全てを必ずしも含む必要はない。また、上記のステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)あるいは、処理時間が重複して実行されてもよい。
以上、一つまたは複数の態様に係る音声対話システムについて、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
本開示は、音声対話システムに適用でき、例えば、車に搭乗しているユーザと音声対話を行なうシステムに有用である。
100 音声対話システム
101 クライアント装置
102 マイク
103 スピーカ
104 車両情報取得部
107 音声認識部
108 対話処理部
109 音声合成部
110 クライアントシステム
120 サーバ
201 音声取得部
202 音声出力部
203 通信部
204 トリガ情報解釈部
205 クライアントトリガ条件保持部
206 車両状態管理部
207 判定部
208 通知部
301 入力文字列管理部
302 状態管理部
303 キーワードDB
304 マッチング処理部
305 キーワード保持部
306 対話処理実行部
307 合成文字列テンプレートDB
308 トリガテンプレートDB
309 出力文字列管理部
310 サーバートリガ条件保持部
401,402,403,404,405 テーブル
406,407,408,409 リスト
410 キーワード
420 参照キーワードグループ
501,511 状態
502,512,522 条件
503,513 テンプレート
521 ID
523 内容
524 遷移先
525 優先度

Claims (20)

  1. 移動体に搭乗しているユーザからの音声に基づき、前記ユーザと対話する音声対話システムにおける情報提供方法であって、
    前記音声対話システムは、
    前記音声を取得する情報端末装置と、
    サーバとを含み、
    前記情報提供方法は、
    前記サーバが、前記情報端末装置に、前記移動体又は前記ユーザの状態の条件を示すトリガ情報を送信するトリガ情報送信ステップと、
    前記情報端末装置が、前記トリガ情報を受信した場合、前記条件が満たされたか否かを判定する判定ステップと、
    前記情報端末装置が、前記条件が満たされた場合に、前記サーバに、前記移動体の状態を示す情報を含まない通知信号を送信する送信ステップと、
    前記サーバが、前記通知信号を受信した場合、前記条件が満たされた場合の音声対話用処理を行うことで音声情報を生成する生成ステップと、
    前記サーバが、前記音声情報を前記情報端末装置に送信する音声情報送信ステップと、
    前記情報端末装置が、前記音声情報を受信し、前記音声情報を前記ユーザに提供する提供ステップとを含む
    情報提供方法。
  2. 前記条件は、前記移動体又は前記情報端末装置が備えるセンサにより取得される前記移動体又は前記ユーザの状態の条件を含む
    請求項1に記載の情報提供方法。
  3. 前記条件は、前記移動体の位置の条件を含む
    請求項2に記載の情報提供方法。
  4. 前記条件は、前記移動体の移動距離の条件を含む
    請求項2に記載の情報提供方法。
  5. 前記通知信号は、当該通知信号に基づく音声対話用処理の優先度を示す情報を含み、
    前記生成ステップでは、前記優先度に基づき、現在実行中の音声対話用処理と、前記通知信号に基づく音声対話用処理とのうち、前記優先度の高い音声対話用処理を実行する
    請求項1〜4のいずれか1項に記載の情報提供方法。
  6. 前記通知信号は、当該通知信号に基づく音声対話用処理における状態遷移の遷移先を示す情報を含み、
    前記生成ステップでは、前記遷移先に状態を遷移させ、遷移後の状態に基づき前記音声情報を生成する
    請求項1〜4のいずれか1項に記載の情報提供方法。
  7. 移動体に搭乗しているユーザからの音声に基づき、前記ユーザと対話する音声対話システムであって、
    前記音声を取得し、前記ユーザに音声情報を提供する情報端末装置と、
    サーバとを含み、
    前記サーバは、
    前記情報端末装置に、前記移動体又は前記ユーザの状態の条件を示すトリガ情報を送信し、当該条件を満たすときに、前記移動体の状態を示す情報を含まない通知信号を送信することを依頼するトリガ情報送信部と、
    前記通知信号を受信した場合、前記条件が満たされた場合の音声対話用処理を行うことで前記音声情報を生成する生成部と、
    前記音声情報を前記情報端末装置に送信する音声情報送信部とを備え、
    前記情報端末装置は、
    前記サーバから前記トリガ情報を受信するトリガ情報受信部と、
    前記条件が満たされたか否かを判定する判定部と、
    前記条件が満たされた場合に、前記サーバに前記通知信号を送信する送信部と、
    前記サーバから前記音声情報を受信する音声情報受信部と、
    前記音声情報を前記ユーザに提供する提供部とを備える
    音声対話システム。
  8. 移動体に搭載される情報端末装置とサーバ間で情報を通信するシステムにおける情報提供方法であって、
    前記情報提供方法は、
    前記情報端末装置が、前記移動体に搭乗しているユーザからの入力情報を取得する情報取得ステップと、
    前記情報端末装置が、前記入力情報を前記サーバへ送信する情報送信ステップと、
    前記サーバが、前記入力情報から現在の状態に基づいて条件を生成する条件生成ステップと、
    前記サーバが、前記条件を示すトリガ情報を前記情報端末装置へ送信するトリガ情報送信ステップと、
    前記情報端末装置が、前記トリガ情報を受信した場合、前記条件が満たされたか否かを判定する判定ステップと、
    前記情報端末装置が、前記条件が満たされた場合に、前記移動体の状態を示す情報を含まない通知信号を前記サーバへ返信する通知信号返信ステップと、
    前記サーバが、前記通知信号を受信した場合、前記条件が満たされた場合の処理を行うことで文字列情報を生成する文字列情報生成ステップと、
    前記サーバが、前記文字列情報を前記情報端末装置に送信する文字列情報送信ステップと、
    前記情報端末装置が、前記文字列情報を受信し、前記文字列情報を出力する情報出力ステップとを含む
    情報提供方法。
  9. 前記入力情報は、音声情報である
    請求項8に記載の情報提供方法。
  10. 前記音声情報は、前記情報端末装置に入力された音声から生成される
    請求項9に記載の情報提供方法。
  11. 前記入力情報は、前記情報端末装置が受信したセンサの情報である
    請求項8に記載の情報提供方法。
  12. 前記入力情報は、前記情報端末装置に接続されたセンサの情報である
    請求項8に記載の情報提供方法。
  13. 前記情報端末装置が受信したセンサの情報は、前記移動体に設置されたセンサ又は前記情報端末装置の周辺に位置するセンサの情報である
    請求項11に記載の情報提供方法。
  14. 前記文字列情報は、音声情報である
    請求項8〜13のいずれか1項に記載の情報提供方法。
  15. 前記条件は、前記移動体の位置の条件を含む
    請求項13に記載の情報提供方法。
  16. 前記条件は、前記移動体の移動距離の条件を含む
    請求項13に記載の情報提供方法。
  17. 前記条件生成ステップでは、前記文字列情報は前記音声情報の音声対話用処理により生成され、
    前記通知信号は、当該通知信号に基づく音声対話用処理の優先度を示す情報を含み、
    前記優先度に基づき、現在実行中の音声対話用処理と、前記通知信号に基づく音声対話用処理とのうち、優先度の高い音声対話用処理を実行する
    請求項9又は10に記載の情報提供方法。
  18. 前記通知信号は、当該通知信号に基づく処理における状態遷移の遷移先を示す情報を含み、
    前記文字列情報生成ステップでは、前記遷移先に状態を遷移させ、遷移後の状態に基づき前記文字列情報を生成する
    請求項8〜17のいずれか1項に記載の情報提供方法。
  19. 移動体に搭載される情報端末装置とサーバ間で情報を通信するシステムであって、
    前記サーバは、
    情報受信部と、
    条件生成部と、
    トリガ情報送信部と、
    通知信号受信部と、
    文字列情報生成部と、
    文字列情報送信部とを備え、
    前記情報端末装置は、
    情報取得部と、
    情報送信部と、
    トリガ情報受信部と、
    判定部と、
    通知信号送信部と、
    文字列情報受信部と、
    出力部とを備え、
    前記情報取得部は、前記移動体に搭乗しているユーザからの入力情報を取得し、
    前記情報送信部は、前記情報受信部に前記入力情報を送信し、
    前記情報受信部は、前記入力情報を受信し、
    前記条件生成部は、前記入力情報から現在の状態に基づいて条件を生成し、
    前記トリガ情報送信部は、前記条件を示すトリガ情報を前記トリガ情報受信部に送信し、
    前記トリガ情報受信部は、前記サーバから、前記トリガ情報を受信し、
    前記判定部は、前記条件が満たされたか否かを判定し、
    前記通知信号送信部は、前記条件が満たされた場合に、前記通知信号受信部に、前記移動体の状態を示す情報を含まない通知信号を返信し、
    前記通知信号受信部は、前記条件が満たされた場合に、前記通知信号送信部から前記通知信号を受信し、
    前記文字列情報生成部は、前記通知信号受信部が前記通知信号を受信した場合に、前記通知信号に基づき文字列情報を生成し、
    前記文字列情報送信部は、前記文字列情報を前記文字列情報受信部に送信し、
    前記文字列情報受信部は、前記文字列情報を受信し、
    前記出力部は、前記文字列情報を出力する
    システム。
  20. 前記入力情報は、音声情報である
    請求項19に記載のシステム。
JP2016574669A 2015-02-12 2016-02-10 情報提供方法、サーバ、情報端末装置、システム及び音声対話システム Active JP6846617B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2015025654 2015-02-12
JP2015025654 2015-02-12
PCT/JP2016/000687 WO2016129276A1 (ja) 2015-02-12 2016-02-10 情報提供方法、サーバ、情報端末装置、システム及び音声対話システム

Publications (2)

Publication Number Publication Date
JPWO2016129276A1 JPWO2016129276A1 (ja) 2017-11-24
JP6846617B2 true JP6846617B2 (ja) 2021-03-24

Family

ID=56614517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016574669A Active JP6846617B2 (ja) 2015-02-12 2016-02-10 情報提供方法、サーバ、情報端末装置、システム及び音声対話システム

Country Status (2)

Country Link
JP (1) JP6846617B2 (ja)
WO (1) WO2016129276A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10636418B2 (en) 2017-03-22 2020-04-28 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US9865260B1 (en) 2017-05-03 2018-01-09 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US10742435B2 (en) 2017-06-29 2020-08-11 Google Llc Proactive provision of new content to group chat participants
JP6669342B2 (ja) * 2018-03-31 2020-03-18 Nl技研株式会社 認知支援システム、認知支援装置、および認知支援サーバ
JP7211013B2 (ja) * 2018-10-31 2023-01-24 トヨタ自動車株式会社 車両用音入出力装置
JP7359201B2 (ja) * 2019-03-15 2023-10-11 株式会社島津製作所 体調検知システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002221430A (ja) * 2001-01-29 2002-08-09 Sony Corp ナビゲーション装置、ナビゲーション方法及びナビゲーション装置のプログラム
JP3963698B2 (ja) * 2001-10-23 2007-08-22 富士通テン株式会社 音声対話システム
JP4060237B2 (ja) * 2003-05-30 2008-03-12 日本電信電話株式会社 音声対話システム、音声対話方法及び音声対話プログラム
JP4413564B2 (ja) * 2003-09-16 2010-02-10 三菱電機株式会社 情報端末および音声認識システム

Also Published As

Publication number Publication date
JPWO2016129276A1 (ja) 2017-11-24
WO2016129276A1 (ja) 2016-08-18

Similar Documents

Publication Publication Date Title
JP6846617B2 (ja) 情報提供方法、サーバ、情報端末装置、システム及び音声対話システム
KR102562227B1 (ko) 대화 시스템, 그를 가지는 차량 및 차량의 제어 방법
JP6571118B2 (ja) 音声認識処理のための方法、車載システム及び不揮発性記憶媒体
KR102426171B1 (ko) 대화 시스템, 이를 포함하는 차량 및 대화 서비스 처리 방법
US10875525B2 (en) Ability enhancement
US8903651B2 (en) Information terminal, server device, searching system, and searching method thereof
KR20180086718A (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
JP6173477B2 (ja) ナビゲーション用サーバ、ナビゲーションシステムおよびナビゲーション方法
JP5677647B2 (ja) ナビゲーション装置
JP7190952B2 (ja) 制御装置、制御方法およびプログラム
EP3367651A2 (en) Communication system and terminal device
KR102445365B1 (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
KR102403355B1 (ko) 차량, 그와 통신하는 모바일 기기 및 차량의 제어 방법
JP2006317573A (ja) 情報端末
JP2011179917A (ja) 情報記録装置、情報記録方法、情報記録プログラムおよび記録媒体
JP2020095475A (ja) マッチング方法、マッチングサーバ、マッチングシステム、およびプログラム
KR102487669B1 (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
KR20200006738A (ko) 대화 시스템 및 대화 처리 방법
JP2018059721A (ja) 駐車位置探索方法、駐車位置探索装置、駐車位置探索プログラム及び移動体
KR20190031935A (ko) 대화 시스템과 이를 포함하는 차량 및 모바일 기기와 대화 처리 방법
US11797261B2 (en) On-vehicle device, method of controlling on-vehicle device, and storage medium
JP2019016153A (ja) 情報提供装置および情報提供方法
JP2022103675A (ja) 情報処理装置、情報処理方法、及びプログラム
WO2010073406A1 (ja) 情報提供装置、通信端末、情報提供システム、情報提供方法、情報出力方法、情報提供プログラム、情報出力プログラムおよび記録媒体
JP2020160285A (ja) エージェント装置、情報提供方法、及びプログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20190118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201006

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210125

R151 Written notification of patent or utility model registration

Ref document number: 6846617

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

SZ03 Written request for cancellation of trust registration

Free format text: JAPANESE INTERMEDIATE CODE: R313Z03