(58)【調査した分野】(Int.Cl.,DB名)
前記出力部は、前記理解度が所定値以上になるまで前記発話に対する問い合わせを出力し、前記理解度が前記所定値以上になった場合に前記応答を出力することを特徴とする請求項1に記載の情報処理装置。
【発明を実施するための形態】
【0015】
図1は、実施の形態に係る車載装置10の構成を示すブロック図である。車載装置10は、自動車である車両に搭載されている。車載装置10は、処理部20と、マイク22と、GPS受信部24と、スピーカ26と、表示部28と、記憶部30とを備える。
【0016】
マイク22は、車両の車室内に設けられ、車室内の音声を取得する。この音声は、ユーザである車両の乗員による発話を含む。マイク22は、取得した音声のデータを処理部20に出力する。
【0017】
GPS受信部24は、GPS衛星から信号を受信し、自車両の位置を導出する。自車両の位置は、緯度と経度を含む。GPS受信部24は、自車両の位置情報を処理部20に出力する。
【0018】
スピーカ26は、車両の車室内に設けられ、音声を出力する音声出力装置である。表示部28は、液晶ディスプレイなどの表示装置であり、車両のセンターコンソールやダッシュボードに設けられる。
【0019】
処理部20は、取得部40と、音声認識部42と、制御部44と、出力部46と、導出部48と、表示制御部50とを備える。処理部20は、情報処理装置として機能する。処理部20は、ユーザの発話に対する応答を出力し、各種情報を提供する対話型エージェントまたは対話装置と呼ぶこともできる。
【0020】
処理部20は、ユーザの発話に対して、発話の意図に最も合っていると推定される応答を出力する。処理部20は、このような応答を決定できない場合には、ユーザとの情報のやり取りを通じて、発話の意図の理解を段階的に進めていく。具体的には、処理部20は、ユーザの発話に対して応答を決定できない場合には、発話に基づいて問い合わせを出力し、この問い合わせに対するユーザの回答に基づいて応答を決定する。処理部20は、応答を決定できるまでこのような処理を繰り返す。
【0021】
取得部40は、マイク22から音声データを取得する。これは、取得部40が、ユーザによる発話の情報を取得することに相当する。取得部40は、GPS受信部24から自車両の位置情報を定期的に取得する。取得部40は、発話情報を音声認識部42へ出力し、位置情報を制御部44へ出力する。
【0022】
音声認識部42は、取得部40から出力された発話情報に基づいて、ユーザにより発話された音声を音声認識する。音声認識は、周知の技術を用いて実行できる。音声認識部42は、音声認識結果を制御部44に出力する。音声認識結果は、テキストデータを含む。
【0023】
記憶部30は、予め定められた複数の問い合わせ候補データを記憶している。各問い合わせ候補データのデータ構造は、複数のノードを有するツリー構造である。最上位のノードには、予め定められたユーザの発話が設定されている。最上位のノードより下位のノードのそれぞれには、最上位のノードのユーザの発話に対する応答を決定するための問い合わせ候補が設定されている。問い合わせ候補は、ユーザの発話の意図の理解を進めるためのものであるとも言える。問い合わせ候補データは、対話シナリオデータと呼ぶこともできる。
【0024】
図2は、
図1の記憶部30に記憶された問い合わせ候補データのデータ構造の一例を示す図である。
図2では、説明を明瞭にするために5つのノードを示しているが、ノード数はこれに限らない。最上位のノード100には、「お腹空いた」というユーザの発話が設定されている。最上位のノード100の直下の最下位のノード102には、「雑談しますか?」という問い合わせ候補が設定されている。最上位のノード100の直下のノード104には、「レストランを探しますか?」という問い合わせ候補が設定されている。ノード104の直下の最下位のノード106には、「周辺の人気店を探しますか?」という問い合わせ候補が設定されている。ノード104の直下の最下位のノード108には、「どのジャンルの店を探しますか?」という問い合わせ候補が設定されている。
【0025】
この例では、ユーザの発話「お腹空いた」の意図は、最下位のノード102に対応する「雑談したい」、最下位のノード106に対応する「周囲の人気店を知りたい」、または、最下位のノード108に対応する「周囲の希望のジャンルの店を知りたい」であることが想定されている。つまり、最下位のノードには、想定される発話の意図に対応する問い合わせ候補が設定されている。最下位のノードの問い合わせ候補は、ユーザの肯定的な発話が得られた場合に、応答を決定できる内容を含む。
【0026】
制御部44は、音声認識部42による音声認識結果をもとに、ユーザの発話に対応する内容が最上位のノードに設定された問い合わせ候補データに従って、問い合わせと応答を決定する。
【0027】
図3(a)は、ユーザによる発話の一例を示す図である。
図3(b)は、
図3(a)の発話により表示部28に表示された理解度に応じた画像210を示す図である。
【0028】
図3(a)の例では、ユーザによる発話が「My Agent、お腹空いた」であるため、
図2の問い合わせ候補データが選択される。なお、「My Agent」は、処理部20による対話機能を起動させるための起動ワードである。
【0029】
制御部44は、選択した問い合わせ候補データにおける最下位のノードの数「3」を導出部48に出力する。導出部48は、制御部44から出力された最下位のノードの数の逆数を導出し、その値を百分率で表した値を、ユーザによる発話の意図の理解度とする。この例では、理解度は、33%と導出される。これは、導出部48が、取得部40で取得された発話情報に基づいて、ユーザによる発話の意図の理解度を導出することに相当する。
【0030】
表示制御部50は、導出部48で導出された理解度に応じた画像210を表示部28に表示させる。具体的には、表示制御部50は、第1領域200と第2領域202とに分割された画像210を表示部28に表示させ、理解度が増加するほど、第1領域200の面積を増加させるとともに第2領域202の面積を減少させる。例えば、
図3(b)に示すように、表示部28は、約33%の面積の第1領域200と、約77%の面積の第2領域202を含む円形の画像210を表示する。この画像210は、対話型エージェントを表してもよい。この画像210は、例えば、目的地案内機能を有する地図などの所定の機能を有する画像の端に表示されてもよい。
【0031】
図4(a)は、
図3(a)に続く、ユーザによる発話等の一例を示す図である。
図4(b)は、
図4(a)の発話等により表示部28に表示された理解度に応じた画像210を示す図である。
図4(c)は、
図4(a)の発話等により非選択となったノードを示す図である。
【0032】
制御部44は、最上位のノード100から最下位のノードに向けてノードを選択していく。制御部44は、まず、最上位のノード100の直下のノードのいずれかを選択する。例えば、制御部44は、まず、最上位のノード100の直下のノードの中で最も多くの最下位のノードに接続されたノード104を選択する。制御部44は、選択したノード104に設定された問い合わせ候補「レストランを探しますか?」を、出力部46に供給する。なお、制御部44は、図示しないサーバ装置から複数のユーザが過去に最も高い確率で選択したノードの情報を取得して、そのノードを選択してもよい。
【0033】
出力部46は、制御部44から供給された問い合わせ候補に従った問い合わせを、スピーカ26を介して出力する。具体的には、出力部46は、制御部44から供給された問い合わせ候補の文字情報を音声信号に変換してスピーカ26に出力する。スピーカ26は、出力部46から出力された音声信号に基づいて、問い合わせを音声で出力する。
【0034】
図4(a)に示すように、問い合わせに対するユーザの回答として、ユーザの発話の意図と一致するという発話情報、例えば「お願い」を取得部40が取得した場合、制御部44は、選択されたノード104より下位の最下位のノードの数「2」を導出部48に出力し、選択されたノード104の直下のノードのいずれかを選択する。ノードの選択例は後述する。
図4(c)に示すように、ノード102は、ユーザの発話の意図と異なることが特定され、非選択となる。
【0035】
導出部48は、制御部44から出力された最下位のノードの数に基づいて、理解度を50%と導出する。
図4(b)に示すように、表示部28は、約50%の面積の第1領域200と、約50%の面積の第2領域202を含む画像210を表示する。
図3(b)の画像210と比較して、第1領域200の面積が増加しているため、ユーザは、発話の意図の理解が進んでいることを容易に把握できる。
【0036】
図5(a)は、
図4(a)に続く、ユーザによる発話等の一例を示す図である。
図5(b)は、
図5(a)の発話等により表示部28に表示された理解度に応じた画像210を示す図である。
図5(c)は、
図5(a)の発話等により非選択となったノードを示す図である。
【0037】
制御部44は、例えば、ノード104の直下の最下位のノード106を選択する。制御部44は、選択した最下位のノード106に設定された問い合わせ候補「周囲の人気店を探しますか?」を、出力部46に供給する。出力部46は、制御部44から供給された問い合わせ候補に従った問い合わせを、スピーカ26を介して出力する。
【0038】
図5(a)に示すように、最下位のノード106による問い合わせに対するユーザの回答として、ユーザの発話の意図と一致するという発話情報、例えば「お願い」を取得部40が取得した場合、制御部44は、確定した最下位のノード106の数「1」を導出部48に出力し、確定した最下位のノード106に対応する応答を作成する。
【0039】
制御部44は、取得部40から出力された位置情報と、記憶部30に記憶された地図データなどに基づいて、自車両の位置の周囲の人気店を検索する。制御部44は、検索結果に基づいて、例えば、「周囲の人気店を紹介します。近くにレストランXXXがあります。」という応答を作成し、出力部46に供給する。制御部44は、応答の作成に必要なデータを、図示しないサーバ装置や他車の車載装置から無線通信により取得してもよい。出力部46は、制御部44から供給された応答を、スピーカ26を介して出力する。
【0040】
導出部48は、制御部44から出力された最下位のノードの数に基づいて、理解度を100%と導出する。
図5(b)に示すように、表示部28は、約100%の面積の第1領域200を含む画像210を表示する。画像210を見たユーザは、発話の意図の理解が完了したことを把握できる。100%の理解度の画像は、表示しなくてもよい。
【0041】
一方、問い合わせに対するユーザの回答として、ユーザの発話の意図と異なるという発話情報、例えば「違う」などを取得部40が取得した場合、制御部44は、選択されたノードを非選択とし、非選択としたノードと同じ階層の他のノードを選択する。制御部44は、選択したノードに設定された問い合わせ候補を、出力部46に供給する。また、制御部44は、問い合わせ候補データにおける最下位のノードの総数から、非選択としたノードの下位の最下位のノードの数を減じた最下位のノードの数を、導出部48に出力する。
【0042】
例えば、ノード104に設定された問い合わせ候補による問い合わせ「レストランを探しますか?」に対して、「違う」という発話情報を取得部40が取得した場合、制御部44は、ノード104を非選択とし、非選択としたノード104と同じ階層の他のノード102を選択する。制御部44は、選択したノード102に設定された問い合わせ候補「雑談しますか?」を、出力部46に供給する。また、制御部44は、最下位のノードの総数「3」から、非選択としたノード104の下位の最下位のノードの数「2」を減じた最下位のノードの数「1」を、導出部48に出力する。
【0043】
このように、問い合わせに対する回答が取得部40で取得されるたびに、選択可能な最下位のノードの数は減少し、理解度は増加する。制御部44は、理解度が所定値以上になるまでノードの選択を行い、出力部46は、理解度が所定値以上になるまで発話に対する問い合わせを出力する。そして、出力部46は、理解度が所定値以上になった場合に、発話に対する応答を出力する。以上で説明した例では、所定値は100%である。
【0044】
所定値は、50%などでもよい。この場合、制御部44は、例えば、理解度が50%のときにノード104の直下の最下位のノード106を選択し、最下位のノード106に設定された問い合わせ候補「周囲の人気店を探しますか?」に基づいて、「周囲の人気店を紹介します。近くにレストランXXXがあります。」という応答を作成し、出力部46に供給する。つまり、出力部46は、最下位のノード106に設定された問い合わせ候補による問い合わせを出力せずに、応答を出力する。この応答に対して、「違う」などの発話を取得部40が取得した場合、制御部44は、他の最下位のノード108に設定された問い合わせ候補「どのジャンルの店を探しますか?」を出力部46に供給する。
【0045】
なお、記憶部30は、ユーザの履歴情報を記憶していてもよい。履歴情報は、ユーザの複数の過去の発話のそれぞれに関して、当該発話に対する過去の応答と、当該発話に対する当該過去の応答の出力確率とを含む。
【0046】
例えば、履歴情報は、「お腹空いた」というユーザの発話について、「イタリアンレストランを紹介します」という応答が80%の出力確率であり、「フレンチレストランを紹介します」という応答が15%の出力確率であり、「周辺の人気店を紹介します」という応答が5%の出力確率であるという情報を含む。
【0047】
制御部44は、取得部40で取得された発話についての過去の応答が記憶部30に記憶されている場合、発話に対する過去の応答と、過去の応答の出力確率とに基づいて、過去の応答を選択する。例えば、制御部44は、出力確率が最も高い過去の応答を選択する。制御部44は、選択した過去の応答に基づいて、その過去の応答がユーザの発話の意図と一致するか確認するための問い合わせを作成し、それを出力部46に供給する。
【0048】
過去の応答に基づいた問い合わせに対して、過去の応答がユーザの発話の意図と一致するという発話情報を取得部40が取得した場合、制御部44は、過去の応答に基づく応答を作成し、応答を出力部46に供給する。
【0049】
一方、過去の応答に基づいた問い合わせに対して、過去の応答がユーザの発話の意図と異なるという発話情報を取得部40が取得した場合、制御部44は、前述のように、問い合わせ候補データを用いて問い合わせと応答を決定する。
【0050】
このように履歴情報を用いる場合、過去の応答の出力確率のうち最大のものを理解度と呼んでもよい。
【0051】
この構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0052】
このように本実施の形態によれば、ユーザの発話の意図の理解度を導出し、理解度に応じた画像210を表示部28に表示させるので、理解度をユーザに容易に把握させることができる。これにより、あとどのくらいの入力を行えば応答が得られるかユーザに容易に把握させることができ、ユーザの利便性を向上できる。
【0053】
また、出力部46は、理解度が所定値以上になるまで発話に対する問い合わせを出力し、理解度が所定値以上になった場合に応答を出力するので、問い合わせに対するユーザの回答によって理解度を高め、発話の意図に最も合っていると推定される応答を出力することができる。
【0054】
また、第1領域200と第2領域202とに分割された画像210を表示部28に表示させ、理解度が増加するほど、第1領域200の面積を増加させるとともに第2領域202の面積を減少させるので、理解度の変化をユーザに容易に把握させることができる。
【0055】
以上、実施の形態をもとに本発明を説明した。実施の形態はあくまでも例示であり、各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0056】
例えば、理解度に応じた画像210の表示態様は、上述した例に限らない。
図6(a)と
図6(b)は、表示部28に表示された理解度に応じた画像210の他の例を示す図である。理解度に応じた画像210は、
図6(a)に示す円柱形状の画像210であってもよいし、
図6(b)に示す長方形の画像210であってもよいし、他の形状であってもよい。
【0057】
また、図示は省略するが、表示制御部50は、理解度に応じた画像としてキャラクタを表示部28に表示させ、理解度に応じてキャラクタの表情または動作を変化させてもよい。このキャラクタは、対話型エージェントを表すキャラクタであってもよい。また、表示制御部50は、理解度に応じて所定の画像の色を変化させてもよい。所定の画像は、対話型エージェントを表す画像またはキャラクタであってもよい。これらの変形例では、理解度に応じた画像の表示の自由度を向上できる。
【0058】
また、以上の実施の形態では、表示部28は、理解度に実質的に一致した割合の面積で第1領域200を表示する例について説明したが、これに限らない。例えば、表示部28は、理解度に所定値を加算した割合の面積で第1領域200を表示してもよい。例えば、問い合わせ候補データにおける最下位のノードの総数が100である場合、最初の理解度は1%である。ここで、理解度に例えば10%の所定値を加算した割合の面積で第1領域200を表示することで、ほとんど意図が理解されていないという印象をユーザに与え難くできる。
【0059】
また、出力部46は、制御部44から供給された問い合わせと応答を、表示制御部50と表示部28を介して文字として出力してもよい。
【0060】
また、一例として車載装置10を説明したが、車載装置10は、車両に搭載されないスマートフォン、パーソナルコンピュータなどとして構成されてもよい。