(57)【要約】【課題】ローカルで得られる情報と外部から得られる情報との双方を有効利用することが可能な技術の提供。【解決手段】利用者の入力を受け付ける入力受付部と、ローカル記憶媒体に記録されたローカルデータベースに基づいて前記入力に対する応答であるローカル応答を生成するローカル応答生成部と、前記ローカル応答を出力するローカル応答出力部と、外部記憶媒体に記録された外部データベースに基づいて生成された前記入力に対する応答である外部応答を取得する外部応答取得部と、前記外部応答と前記ローカル応答との差分を抽出し、当該差分を前記ローカル応答の出力に追加して出力する差分出力部と、を備える応答システムを構成する。【選択図】図１
2017161815.tif 000002
【特許請求の範囲】
【請求項１】
利用者の入力を受け付ける入力受付部と、
ローカル記憶媒体に記録されたローカルデータベースに基づいて前記入力に対する応答であるローカル応答を生成するローカル応答生成部と、
前記ローカル応答を出力するローカル応答出力部と、
外部記憶媒体に記録された外部データベースに基づいて生成された前記入力に対する応答である外部応答を取得する外部応答取得部と、
前記外部応答と前記ローカル応答との差分を抽出し、当該差分を前記ローカル応答の出力に追加して出力する差分出力部と、
を備える応答システム。
【請求項２】
前記入力は、
前記利用者の発話音声であり、
前記ローカル応答および前記外部応答は、
前記発話音声を認識した結果に基づいて生成される、
請求項１に記載の応答システム。
【請求項３】
前記差分は、
前記発話音声の中に前記ローカル応答生成部において認識されなかった未知語が含まれ、当該未知語に基づいて前記外部応答が生成されたことによって前記外部応答に含まれる情報である、
請求項２に記載の応答システム。
【請求項４】
前記ローカルデータベースおよび前記外部データベースは、
複数の項目を有するレコードを複数個有しており、
前記ローカル応答および前記外部応答は、
前記入力が示す検索対象についての検索結果を示し、
前記差分は、
前記ローカルデータベースに存在しない前記項目に関して前記外部データベースに基づいて検索された結果である、
請求項１〜請求項３のいずれかに記載の応答システム。
【請求項５】
コンピュータを、
利用者の入力を受け付ける入力受付部、
ローカル記憶媒体に記録されたローカルデータベースに基づいて前記入力に対する応答であるローカル応答を生成するローカル応答生成部、
前記ローカル応答を出力するローカル応答出力部、
外部記憶媒体に記録された外部データベースに基づいて生成された前記入力に対する応答である外部応答を取得する外部応答取得部、
前記外部応答と前記ローカル応答との差分を抽出し、当該差分を前記ローカル応答の出力に追加して出力する差分出力部、
として機能させる応答プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、応答システムおよび応答プログラムに関する。
【背景技術】
【０００２】
従来、利用者が入力した音声を認識し、入力された音声に対して回答を行う音声対話システムが知られている。例えば、特許文献１においては、端末とサーバによって音声認識を行い、端末側認識結果に基づいて第１応答文を生成して音声出力部から出力し、サーバ側認識結果に基づいて第２応答文を生成して音声出力部から出力する構成が開示されている。また、第１応答文と第２応答文とが異なる場合に、第２応答文が正しいと見なして第１応答文の誤りを訂正する構成が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１９１０３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した従来技術においては、端末側の認識結果とサーバ側の認識結果との双方を有効利用することができなかった。すなわち、従来技術においては、第１応答文が誤りであった場合に第２応答文を利用しているが、第１応答文と第２応答文との双方が正しい場合もある。従来技術においては、このように両者が補完関係にある場合が想定されておらず、端末側の認識結果とサーバ側の認識結果との双方を有効利用することができなかった。
本発明は、前記課題にかんがみてなされたもので、ローカルで得られる情報と外部から得られる情報との双方を有効利用することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
前記の目的を達成するため、利用者の入力を受け付ける入力受付部と、ローカル記憶媒体に記録されたローカルデータベースに基づいて前記入力に対する応答であるローカル応答を生成するローカル応答生成部と、前記ローカル応答を出力するローカル応答出力部と、外部記憶媒体に記録された外部データベースに基づいて生成された前記入力に対する応答である外部応答を取得する外部応答取得部と、前記外部応答と前記ローカル応答との差分を抽出し、当該差分を前記ローカル応答の出力に追加して出力する差分出力部と、を備える応答システムが構成される。
【０００６】
さらに、前記の目的を達成するため、コンピュータを、利用者の入力を受け付ける入力受付部、ローカル記憶媒体に記録されたローカルデータベースに基づいて前記入力に対する応答であるローカル応答を生成するローカル応答生成部、前記ローカル応答を出力するローカル応答出力部、外部記憶媒体に記録された外部データベースに基づいて生成された前記入力に対する応答である外部応答を取得する外部応答取得部、前記外部応答と前記ローカル応答との差分を抽出し、当該差分を前記ローカル応答の出力に追加して出力する差分出力部、として機能させる応答プログラムが構成される。
【０００７】
すなわち、応答システム、応答プログラムが実施されている状況下では、利用者の入力に対する応答がローカルデータベースおよび外部データベースの双方に基づいて生成され、ローカル応答が先に出力され、さらに、外部応答とローカル応答との差分が追加で出力される。ローカルデータベースと外部データベースとのそれぞれに基づいてローカル応答と外部応答とが生成される場合、一般的にはローカル応答の方が早期に生成される。
【０００８】
一方、外部データベースは、利用者が利用する応答システムの外部に存在し、利用者自身が所有する必要がないため、複数の応答システムからアクセス可能なシステム内に構成することが可能である。従って、システム運用者が外部データベースを集中管理する構成とすることができ、応答システムが複数の利用者に配布された後（製造販売開始後等）であっても外部データベースの内容を更新、追加等することが容易である。このため、一般的には、外部データベースの方がローカルデータベースよりも情報量が多く、より詳細な内容の応答を生成することが可能である。
【０００９】
そこで、応答システム、応答プログラムにおいては、まず、ローカル応答を出力し、外部応答が取得されたら両者の差分を抽出し、追加で出力する。従って、利用者が入力を行うとローカル応答がすぐに生成されて出力され、利用者の入力に対して早期に応答を行うことができる。さらに、外部応答が取得されると、ローカル応答と外部応答との差分が抽出されて出力されるため、利用者はローカル応答のみからは知り得なかった情報を取得することができる。従って、応答システム、応答プログラムにおいては、ローカル応答と外部応答との双方を利用者に対する回答に利用しており、ローカルで得られる情報と外部から得られる情報との双方を有効利用することが可能である。
【図面の簡単な説明】
【００１０】
【図１】ナビゲーションシステムを示すブロック図である。
【図２】図２Ａは応答処理を示すフローチャート、図２Ｂは外部応答生成処理を示すフローチャートである。
【図３】図３Ａはローカル応答の表示例、図３Ｂは差分の追加例を示す図である。
【発明を実施するための形態】
【００１１】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
（１）ナビゲーションシステムの構成：
（２）応答処理：
（３）外部応答生成処理：
（４）他の実施形態：
【００１２】
（１）ナビゲーションシステムの構成：
図１は、本発明の一実施形態であるナビゲーションシステム１０の構成を示すブロック図である。ナビゲーションシステム１０は、ＣＰＵ、ＲＡＭ、ＲＯＭ等を備える制御部２０を備えており、制御部２０は、当該ＲＯＭやローカル記憶媒体３０に記録された所望のプログラムを実行することができる。本実施形態においては、このプログラムの一つとしてナビゲーションプログラムを実行可能である。当該ナビゲーションプログラムは、表示部に現在地と現在地周辺の地図を表示する機能と目的地までの経路を探索して案内する機能を制御部２０に実現させることができる。
【００１３】
また、ナビゲーションプログラムは、応答プログラムを含んでおり、制御部２０は、応答プログラム２１の処理により、利用者とナビゲーションシステム１０とで音声による対話を行う機能を実行する。対話は、利用者の発話音声による入力と、ナビゲーションシステム１０からの応答とが１回以上実行されることによって実現される。
【００１４】
ナビゲーションシステム１０が使用される車両は、ＧＰＳ受信部４１と車速センサ４２とジャイロセンサ４３とユーザＩ／Ｆ部４４と通信部４５とを備えている。ＧＰＳ受信部４１は、ＧＰＳ衛星からの電波を受信し、図示しないインタフェースを介して車両の現在地を算出するための信号を出力する。車速センサ４２は、車両が備える車輪の回転速度に対応した信号を出力する。制御部２０は、図示しないインタフェースを介してこの信号を取得し、車速を取得する。ジャイロセンサ４３は、車両の水平面内の旋回についての角加速度を検出し、車両の向きに対応した信号を出力する。
【００１５】
制御部２０は、この信号を取得して車両の進行方向を取得する。制御部２０は、車速センサ４２およびジャイロセンサ４３等の出力信号に基づいて車両の走行軌跡を特定することで車両の現在地を取得する。ＧＰＳ受信部４１の出力信号は、車速センサ４２およびジャイロセンサ４３等から特定される車両の現在地を補正するなどのために利用される。
【００１６】
ユーザＩ／Ｆ部４４は、利用者に種々の情報を提供し、また、利用者から種々の入力を受け付けるためのインタフェース部であり、図示しない表示部や操作入力部、スピーカー、マイク等を備えている。制御部２０は、ナビゲーションプログラムの機能により、当該車両の現在地周辺の地図や経路、施設の検索結果等を表示部に表示することができる。また、制御部２０は、マイクによって利用者の発話音声を取得することが可能であり、各種の音データに基づいてスピーカーから音声を含む任意の音を出力することが可能である。
【００１７】
通信部４５は、外部システム５０と無線通信するための回路を備えており、制御部２０と外部システム５０の間では、通信部４５を介して任意の情報が授受される。本実施形態において、制御部２０は、利用者の発話音声を示す情報を、通信部４５を介して外部システム５０に対して送信することができる。
【００１８】
外部システム５０は図示しない外部記憶媒体を備えており、当該外部記憶媒体には外部データベース５０ａが記録されている。外部システム５０が、当該発話音声を示す情報を取得すると、外部システム５０は、外部データベース５０ａに基づいて音声認識を行い、認識結果としての文字列に対する応答である外部応答を生成する。外部応答が生成されると、外部システム５０は、外部応答を示す情報をナビゲーションシステム１０に対して送信する。制御部２０は、通信部４５を介して、当該外部応答を示す情報を受信することができる。
【００１９】
ローカル記憶媒体３０には、ローカルデータベース３０ａが記録されている。ローカルデータベース３０ａには、地図情報３０ａ１と音声データベース３０ａ２とが含まれている。地図情報３０ａ１は、現在地の特定や施設の検索等に利用される情報であり、道路上に設定されたノードの位置等を示すノードデータ，ノード間の道路の形状を特定するための形状補間点データ，ノード同士の連結を示すリンクデータ，道路やその周辺に存在する施設の位置、属性および名称等を示す施設データ等を含んでいる。
【００２０】
従って、施設データは、複数個の施設のそれぞれに関するレコードによって構成され、各レコードに対して位置、属性、名称等の複数の項目毎の情報が対応づけられたデータである。なお、本実施形態において各施設の属性には、施設の種類、例えば、レストラン、コンビニエンスストア、公共施設等を示す情報が対応づけられている。
【００２１】
音声データベース３０ａ２は、利用者の発話音声を認識して文字列化する際に参照される情報である。音声データベース３０ａ２は、音声認識を実行するためのアルゴリズムに応じて種々の情報とすることができる。例えば、制御部２０が、発話音声の波形から音素に対応した特徴量を調べて音素列を作成し、音響モデルおよび言語モデルと比較することによって音素列に対応する尤も確からしい文字列を取得する構成を有している場合、音声データベース３０ａ２には、音響モデルおよび言語モデルを示す情報が含まれる。
【００２２】
応答プログラム２１は、利用者の入力に対する応答を出力するために、入力受付部２１ａとローカル応答生成部２１ｂとローカル応答出力部２１ｃと外部応答取得部２１ｄと差分出力部２１ｅとを備えている。入力受付部２１ａは、利用者の入力を受け付ける機能を制御部２０に実現させるプログラムモジュールである。本実施形態においては、利用者の発話音声に基づいて利用者が応答を望む内容を特定する構成が採用されており、制御部２０は、マイクを介して利用者の発話音声を取得する。
【００２３】
ローカル応答生成部２１ｂは、ローカル記憶媒体３０に記録されたローカルデータベース３０ａに基づいて入力に対する応答であるローカル応答を生成する機能を制御部２０に実現させるプログラムモジュールである。すなわち、制御部２０は、入力受付部２１ａの処理によって受け付けた発話音声とローカルデータベース３０ａに記憶された音声データベース３０ａ２とを比較して発話音声を認識し、当該発話音声の認識結果に基づいてローカル応答を特定する。
【００２４】
入力と応答の態様は種々の態様が想定可能である。例えば、入力と応答が、情報の要求と情報の提示である例や、命令と実行である例が想定される。本実施形態においては、入力が検索要求（検索条件の指定）であり、応答が検索結果の出力である例を想定する。音声認識は、例えば、制御部２０が、入力受付部２１ａの処理によって受け付けた発話音声の波形から音素に対応した特徴量を調べて音素列を作成し、音声データベース３０ａ２として記録された音響モデルおよび言語モデルと音素列とを比較することによって音素列に対応する尤も確からしい文字列を取得することによって実現可能である。
【００２５】
文字列が取得されると、制御部２０は、当該文字列から検索対象及び検索条件を特定する。例えば、「おすすめのレストランを教えて」という文字列である場合、地図情報３０ａ１に記録された施設が検索対象であり、レストラン属性の施設であることと、おすすめのレストランであることが検索条件となる。ただし、制御部２０は、文字列から検索条件の全てを認識できるとは限らない。
【００２６】
具体的には、本実施形態にかかる地図情報３０ａ１においては、施設の属性がレストランであるか否かを示す情報は対応づけられているが、レストランのおすすめ度（例えば、口コミ評価）を示す情報は対応づけられていない。すなわち、本実施形態においてローカルデータベース３０ａは、ナビゲーションシステム１０の販売段階でローカル記憶媒体３０に記録されており、更新が行われるとしても外部システム５０における外部データベース５０ａよりも更新の頻度が低い。
【００２７】
そこで、動的に変更し得るとともに、頻繁に更新されることに価値のある情報であるおすすめ度は、本実施形態において、ローカルデータベース３０ａには記録されず、外部データベース５０ａに記録される。すなわち、本実施形態において、外部データベース５０ａは、地図情報３０ａ１と同等の情報に対して検索条件となり得る項目についての情報がさらに追加されたデータベースである。
【００２８】
従って、外部データベース５０ａにおいては、複数個の施設のそれぞれに関するレコードであって、各レコードに対して位置、属性、名称、おすすめ度等の複数の項目毎の情報が対応づけられた施設データを含む。ただし、外部データベース５０ａに含まれる施設データの項目は、ローカルデータベース３０ａに含まれる施設データの項目よりも項目が多い。
【００２９】
さらに、本実施形態において、音声データベース３０ａ２には「おすすめの」を高い確率で認識するためのデータは含まれていない。すなわち、地図情報３０ａ１に含まれる施設データにはおすすめ度を示す情報が含まれておらず、ローカル記憶媒体３０の記憶容量も限られているため、地図情報３０ａ１に含まれる施設データの各項目を検索条件とする単語については、高い確率で認識するためのデータが定義され、音声データベース３０ａ２に含められる。一方、地図情報３０ａ１に含まれる施設データの各項目に関連しない単語を高い確率で認識する必要はなく、このような単語を高い確率で認識するためのデータは、音声データベース３０ａ２に含められていない。
【００３０】
一方、外部システム５０は、複数のナビゲーションシステム１０と通信を行うことが可能であるため、外部データベース５０ａのメンテナンスを行えば、その効果を複数のナビゲーションシステム１０で享受することが可能である。このため、外部データベース５０ａには、「おすすめの」など、おすすめ度を検索項目とする指示である単語を文字列から高い確率で認識するためのデータが含まれている。すなわち、本実施形態において、外部データベース５０ａは、音声データベース３０ａ２と同等の情報に対して、より高度な文字列を検索可能にするための情報が追加されたデータベースである。
【００３１】
以上のように、本実施形態におけるローカルデータベース３０ａは、外部データベース５０ａよりも情報量が少ないため、制御部２０が「おすすめのレストランを教えて」という発話音声を認識すると、「レストランを教えて」が高い確率で認識され、「おすすめの」は未知語となり得る。この結果、制御部２０は、文字列「レストランを教えて」に基づいて、地図情報３０ａ１を参照し、レストラン属性が対応づけられた施設を検索する。そして、制御部２０は、検索された施設の名称、位置を示す情報をローカル応答とする。
【００３２】
ローカル応答出力部２１ｃは、ローカル応答を出力する機能を制御部２０に実現させるプログラムモジュールである。本実施形態において、制御部２０は、ユーザＩ／Ｆ部４４に対して制御信号を出力し、検索結果として得られた施設を表示させる。なお、本実施形態においては、利用者からの距離の順序で施設を表示する態様がデフォルトとなるように設定されている。そこで、制御部２０は、地図情報３０ａ１を参照し、利用者の現在地から各施設までの距離を特定する。そして、距離によってソートされた順序で各施設の名称と現在地からの距離を表示部に表示させる。
【００３３】
外部応答取得部２１ｄは、外部記憶媒体に記録された外部データベースに基づいて生成された、利用者による入力に対する応答である外部応答を取得する機能を制御部２０に実現させるプログラムモジュールである。本実施形態において、制御部２０は、入力受付部２１ａの処理によって受け付けた発話音声に基づいて、外部システム５０に外部応答を生成させる。
【００３４】
このため、制御部２０は、通信部４５を介して発話音声を示す情報を外部システム５０に対して送信する。外部システム５０が当該発話音声を示す情報を取得すると、外部システム５０は、外部データベース５０ａに基づいて外部応答を生成する。外部応答の生成は種々の処理で実行可能である。例えば、外部システム５０が、発話音声の波形から音素に対応した特徴量を調べて音素列を作成し、外部データベース５０ａとして記録された音響モデルおよび言語モデルと音素列とを比較することによって音素列に対応する尤も確からしい文字列を取得する。
【００３５】
文字列が取得されると、外部システム５０は、当該文字列から検索対象及び検索条件を特定する。例えば、発話音声が「おすすめのレストランを教えて」という文字列である場合、外部システム５０は、高い確率で「おすすめの」を含めた文字列を認識する。本実施形態において、外部データベース５０ａには、地図情報３０ａ１と同様に施設データが含まれており、当該施設データに対して、動的に変動し得る（利用者の投稿等によって日々変動し得る）おすすめ度を示す情報が対応づけられている。
【００３６】
そこで、当該おすすめ度を示す情報など、地図情報３０ａ１に記録されていない項目についての検索も可能にするため、外部データベース５０ａには、音声データベース３０ａ２と同様のデータに加え、「おすすめの」などの文字列を高い確率で認識するためのデータが含まれている。従って、外部システム５０において、外部データベース５０ａに基づいて発話音声の音声認識を行うと、制御部２０における認識率よりも高い認識率で文字列が認識される。例えば、外部システム５０が「おすすめのレストランを教えて」という発話音声を認識すると、「おすすめの」が未知語とならずに認識される可能性が高い。
【００３７】
この結果、外部システム５０は、文字列「おすすめのレストランを教えて」に基づいて、外部データベース５０ａを参照し、レストラン属性が対応づけられた施設を検索する。すなわち、外部システム５０は、ローカルデータベース３０ａでの認識で未知語とされた単語も未知語とならない状態で検索を行う。そして、外部システム５０は、検索された施設の名称、位置およびおすすめ度を示す情報を外部応答とする。外部応答が生成されると、外部システム５０は、図示しない通信部を介して外部応答を送信し、制御部２０は、通信部４５を介して当該外部応答を取得する。
【００３８】
差分出力部２１ｅは、外部応答とローカル応答との差分を抽出し、当該差分をローカル応答の出力に追加して出力する機能を制御部２０に実現させるプログラムモジュールである。すなわち、外部データベース５０ａに基づいて生成された外部応答は、ローカルデータベース３０ａに基づいて生成されたローカル応答よりも詳細な検索結果が含まれている可能性がある。
【００３９】
そこで、制御部２０は、ローカル応答の出力が行われても利用者に伝達されなかった情報の追加や処理内容の補足等が行われるように、外部応答とローカル応答との差分を出力する。差分は、早期の生成可能であるローカル応答に対して追加することによってローカル応答の価値を高めたり、情報を補完したりすることができるように抽出されればよいが、本実施形態においては、上述のように検索が想定されているため、制御部２０は、ローカル応答に含まれてなかった検索結果が外部応答に存在する場合、その差分を抽出する。
【００４０】
例えば、上述の例においては、ローカル応答が、検索された施設の名称、位置を示す情報であり、外部応答が、検索された施設の名称、位置およびおすすめ度を示す情報であるため、制御部２０は、おすすめ度を差分として抽出する。制御部２０は、ローカル応答出力部２１ｃの処理による出力に対し、おすすめ度を追加して出力することができればよいが、本実施形態においては、おすすめ度に基づいてソートを行って出力を修正する。
【００４１】
すなわち、制御部２０は、ローカル応答に含まれていた各施設の名称および位置におすすめ度を対応付け、おすすめ度によってソートされた順序で各施設の名称と現在地からの距離とおすすめ度を表示するための制御信号をユーザＩ／Ｆ部４４に出力する。この結果、ユーザＩ／Ｆ部４４の出力部においては、おすすめ度によってソートされた検索結果が出力される。
【００４２】
以上の構成によれば、利用者の入力に対する応答がローカルデータベース３０ａおよび外部データベース５０ａの双方に基づいて生成され、ローカル応答が先に出力され、さらに、外部応答とローカル応答との差分が追加で出力される。この構成にかかる本実施形態において、外部応答の生成および取得には通信が介在し、また、相対的に容量の大きいデータベースの参照が必要になるため、一般的にはローカル応答の方が早期に生成される。従って、本実施形態によれば、利用者の入力に対して早期に応答を行うことができる。
【００４３】
一方、外部データベース５０ａは、利用者が利用するナビゲーションシステム１０の外部である外部システム５０に存在し、当該外部システム５０は複数のナビゲーションシステム１０からアクセス可能である。従って、システム運用者が外部データベース５０ａを集中管理する構成とすることができ、ナビゲーションシステム１０が複数の利用者に配布された後（製造販売開始後等）であっても外部データベースの内容を更新、追加等することが容易である。このため、一般的には、外部データベースの方がローカルデータベース３０ａよりも情報量が多く、より詳細な内容の応答を生成することが可能である。
【００４４】
従って、外部応答が取得され、ローカル応答と外部応答との差分が抽出されて出力されると、利用者はローカル応答のみからは知り得なかった情報を取得することができる。この結果、本実施形態においてはローカル応答と外部応答との双方を利用者に対する回答に利用することになり、ローカルで得られる情報と外部から得られる情報との双方を有効利用することが可能である。
【００４５】
さらに、上述の例においては、ローカル応答出力部２１ｃの処理において未知語であった「おすすめの」が、外部データベース５０ａに基づいて認識された認識結果が外部応答に含まれる。従って、この例においては、未知語に基づいて生成された部分が差分として抽出されることになり、差分の追加出力の価値を高めることができる。
【００４６】
さらに、上述の例においては、ローカルデータベース３０ａに存在しない項目であるおすすめ度に関して外部データベース５０ａに基づいて検索された結果が差分となっている。従って、本実施形態においては、ローカル応答としての検索結果で得られなかった情報を追加することができる。このため、早期にレスポンスが得られ、かつ、少し待つことによって詳細な検索結果が得られる応答システムを提供することができる。
【００４７】
（２）応答処理：
次に、ナビゲーションシステム１０が実行する応答処理を説明する。ナビゲーションシステム１０においては、利用者の操作やマイクによる既定のワードの検出など種々のトリガによって図２Ａに示す応答処理が開始される。応答処理において、制御部２０は、入力受付部２１ａの処理により、発話音声による入力を受け付ける（ステップＳ１００）。すなわち、制御部２０は、ユーザＩ／Ｆ部４４のマイクを介して利用者の発話音声を示す波形情報を取得する。図３Ａにおいては、利用者Ｕが「おすすめのレストランを教えて」と発話した例を示している。
【００４８】
次に、制御部２０は、外部応答取得部２１ｄの処理により、発話音声を外部システム５０に送信する（ステップＳ１０５）。すなわち、制御部２０は、ステップＳ１００の処理によって取得した発話音声を示す波形情報を、通信部４５を介して、外部システム５０に対して送信する。
【００４９】
次に、制御部２０は、ローカル応答生成部２１ｂの処理により、ローカルデータベース３０ａに基づいて音声認識を行う（ステップＳ１１０）。すなわち、制御部２０は、音声データベース３０ａ２を参照し、ステップＳ１００の処理によって取得した発話音声を予め決められた音声認識アルゴリズムで解析し、発話音声の内容として尤も確率の高い文字列を取得する。図３Ａに示す例において、本実施形態に示す音声データベース３０ａ２には、「おすすめの」を高確率で認識するための情報が含まれないため、多くの場合、「おすすめの」は未知語となり、「レストランを教えて」が文字列として認識される。
【００５０】
次に、制御部２０は、ローカル応答生成部２１ｂの処理により、ローカルデータベース３０ａに基づいて検索結果を取得する（ステップＳ１１５）。すなわち、制御部２０は、ステップＳ１１０の処理で取得した文字列から検索対象と検索条件とを特定する。例えば、図３Ａに示す例において「レストランを教えて」という文字列が音声認識結果として得られた場合、制御部２０は、施設を検索対象とし、レストラン属性が対応づけられていることを検索条件とする。
【００５１】
そして、制御部２０は、地図情報３０ａ１を参照して検索条件に合致する検索対象を取得する。図３Ａに示す例であれば、レストラン属性の施設を検索する。本実施形態においては、利用者からの距離の順序で施設を表示する態様がデフォルトであるため、制御部２０は、施設の検索の際に、ＧＰＳ受信部４１、車速センサ４２、ジャイロセンサ４３の出力に基づいて現在地を特定し、当該現在地から各施設までの距離が近い順に規定の数の施設を検索する。検索結果が得られると、制御部２０は、検索された施設の名称、位置を示す情報を特定し、ローカル応答とする。
【００５２】
次に、制御部２０は、ローカル応答出力部２１ｃの処理により、ローカル応答としての検索結果を出力する（ステップＳ１２０）。すなわち、制御部２０は、デフォルトの表示態様で検索結果を表示するための制御信号をユーザＩ／Ｆ部４４に対して出力する。この結果、ユーザＩ／Ｆ部４４の表示部においては、検索結果をデフォルトの表示態様で表示する。また、制御部２０は、デフォルトの音声を出力するための制御信号をユーザＩ／Ｆ部４４に対して出力する。この結果、ユーザＩ／Ｆ部４４のスピーカーからデフォルトの音声が出力される。
【００５３】
図３Ａにおいては、ユーザＩ／Ｆ部４４の表示部の画面例４４ａを示している。この例においては、利用者からの距離の順序で施設を表示する態様がデフォルトであるため、制御部２０は、ローカル応答として取得された複数の施設の位置と現在地とに基づいて現在地から各施設までの距離を取得する。そして、制御部２０は、距離によって各施設をソートし、ソートされた順序で各施設の名称と現在地からの距離を表示するための制御信号を出力する。図３Ａの画面例４４ａにおいては、名称がレストランＡ，Ｂ，Ｃ，Ｄ，Ｅのそれぞれが現在地から０．５ｋｍ，１．２ｋｍ，２．２ｋｍ，２．４ｋｍ，２．７ｋｍである例を示している。さらに、図３Ａにおいては、デフォルトの音声の例である「距離が近い順にレストランを表示します」が、ナビゲーションシステム１０から出力される状態を模式的に示している。
【００５４】
次に、制御部２０は、外部応答取得部２１ｄの処理により、外部応答を受信したか否かを判定する（ステップＳ１２５）。すなわち、ステップＳ１０５によって送信された発話音声が外部システム５０で受信されると、外部システム５０において外部応答生成処理が行われ、外部応答が生成されると、外部応答を示す情報が外部システム５０からナビゲーションシステム１０に対して送信される。そこで、制御部２０は、外部システム５０が送信した外部応答が通信部４５を介して取得されたか否かを判定する。ステップＳ１２５において、外部応答を受信したと判定されない場合、制御部２０は、外部応答を受信したと判定されるまで待機する。
【００５５】
ステップＳ１２５において、外部応答を受信したと判定された場合、制御部２０は、差分出力部２１ｅの処理により、ローカル応答と外部応答との差分を抽出する（ステップＳ１３０）。すなわち、制御部２０は、ステップＳ１２５の処理を経て取得された外部応答とステップＳ１１５で取得されたローカル応答とを比較し、異なる検索結果を差分として抽出する。例えば、図３Ａに示す例において、外部データベース５０ａには「おすすめの」を高い確率で認識可能な音声データベースが含まれているため、外部応答には高い確率でレストランのおすすめ度を示す情報が含まれている。この場合、制御部２０は、ステップＳ１３０において、各施設のおすすめ度を差分として抽出する。
【００５６】
次に、制御部２０は、差分出力部２１ｅの処理により、差分を出力する（ステップＳ１３５）。本実施形態において、制御部２０は、ステップＳ１２０における出力に差分を追加する修正を行う。また、制御部２０は、差分を強調する音声を出力するための制御信号をユーザＩ／Ｆ部４４に対して出力する。この結果、ユーザＩ／Ｆ部４４のスピーカーから差分を強調する音声が出力される。
【００５７】
図３Ｂにおいては、図３Ａが示す例に対して差分が追加された画面例４４ａを示している。この例においては、制御部２０は、おすすめ度によって各施設をソートし、ソートされた順序で各施設の名称とおすすめ度と現在地からの距離を表示するための制御信号を出力する。図３Ｂの画面例４４ａにおいては、各レストランのおすすめ度が５段階で示され、黒色の星の数が多いほどおすすめ度が高い例を示している。むろん、この例は一例であり、おすすめ度でソートするのではなく、おすすめ度を単に追記する構成であってもよい。さらに、図３Ｂにおいては、差分を強調する音声の例である「おすすめ順にレストランを表示します」が、ナビゲーションシステム１０から出力される状態を模式的に示している。
【００５８】
（３）外部応答生成処理：
次に、外部システム５０が実行する外部応答生成処理を説明する。外部システム５０は、ナビゲーションシステム１０から発話音声の送信要求が行われた場合に、図２Ｂに示す外部応答生成処理を実行する。外部応答生成処理が開始されると、外部システム５０は、入力内容を受信する（ステップＳ２００）。すなわち、外部システム５０は、ナビゲーションシステム１０から送信される、発話音声を示す情報を図示しない通信部によって取得する。
【００５９】
次に、外部システム５０は、外部データベース５０ａに基づいて音声認識を行う（ステップＳ２０５）。すなわち、外部システム５０は、外部データベース５０ａを参照し、ステップＳ２００で受信された情報が示す発話音声を予め決められた音声認識アルゴリズムで解析し、発話音声の内容として尤も確率の高い文字列を取得する。図３Ａに示す例において発話音声が外部システム５０に送信された場合、本実施形態に示す外部データベース５０ａには、「おすすめの」を高確率で認識するための情報が含まれるため、多くの場合、未知語が発生することなく「おすすめのレストランを教えて」が文字列として認識される。
【００６０】
次に、外部システム５０は、外部データベース５０ａに基づいて検索結果を取得する（ステップＳ２１０）。すなわち、外部システム５０は、外部データベース５０ａを参照し、ステップＳ２０５の処理で取得した文字列から検索対象と検索条件とを特定する。例えば、図３Ａに示す例において発話音声が外部システム５０に送信された場合、「おすすめのレストランを教えて」という文字列が音声認識結果として得られているため、外部システム５０は、施設を検索対象とし、レストラン属性およびおすすめ度が対応づけられていることを検索条件とする。
【００６１】
そして、外部システム５０は、外部データベース５０ａを参照して検索条件に合致する検索対象を取得する。図３Ａに示す例において発話音声が外部システム５０に送信された場合、レストラン属性の施設を検索する。また、外部システム５０は、検索された施設に対応づけられたおすすめ度を取得する。検索結果が得られると、外部システム５０は、検索された施設の名称、位置、おすすめ度を示す情報を特定し、外部応答とする。
【００６２】
外部応答が生成されると、外部システム５０は、外部応答をナビゲーションシステム１０に送信する（ステップＳ２１５）。すなわち、外部システム５０は、ステップＳ２１０の処理によって取得した外部応答を示す情報を、通信部を介して、ナビゲーションシステム１０に対して送信する。
【００６３】
（４）他の実施形態：
以上の実施形態は本発明を実施するための一例であり、外部応答とローカル応答との差分を抽出し、当該差分をローカル応答の出力に追加して出力する限りにおいて、他にも種々の実施形態を採用可能である。例えば、ナビゲーションシステム１０とともに移動する移動体は任意であり、車両であっても良いし、歩行者であっても良く、種々の例が想定される。また、応答システムは、車両等に搭載された装置であっても良いし、可搬型の端末によって実現される装置であっても良いし、複数の装置（例えば、クライアントとサーバ）によって実現されるシステムであっても良い。
【００６４】
さらに、応答システムを構成する入力受付部２１ａ、ローカル応答生成部２１ｂ、ローカル応答出力部２１ｃ、外部応答取得部２１ｄ、差分出力部２１ｅの少なくとも一部が複数の装置に分かれて存在していても良い。例えば、制御部２０が音声データベース３０ａ２に基づいて音声認識を行った後、音声認識後の文字列を外部システム５０に送信し、外部システム５０において生成した外部応答を取得する構成等であってもよい。むろん、上述の実施形態の一部の構成が省略されてもよいし、処理の順序が変動または省略されてもよい。例えば、ステップＳ１０５は、ステップＳ１１０以降の処理と並列で実行されてもよいし、ステップＳ１２０の後に実行されてもよい。
【００６５】
入力受付部は、利用者の入力を受け付けることができればよい。すなわち、応答システムは利用者の入力に対する応答を実行するシステムであり、入力受付部は、利用者が応答を望む内容を特定できるように、利用者の入力を受け付けることができればよい。入力は種々の態様を想定可能であり、例えば、利用者が操作部を操作することによって実現されても良いし、利用者の発話音声がマイク等によって取得されることによって実現されても良い。
【００６６】
ローカル応答生成部は、ローカル記憶媒体に記録されたローカルデータベースに基づいて入力に対する応答であるローカル応答を生成することができればよい。すなわち、利用者の入力内容は、応答システムへの応答を要求する内容であるため、ローカル応答生成部は、ローカルデータベースに基づいて利用者による入力内容を解析し、当該入力内容に対する応答を生成することができればよい。ローカルデータベースは、応答内容を生成するための情報の集合体であれば良く、例えば、音声認識を行うための比較対象となる音声データベースや、応答としての検索結果を取得するための検索データベース、再生対象の音楽を示す音楽データベース等が挙げられる。
【００６７】
ローカル応答生成部は、応答システムに備えられているが、その処理の一部が外部のシステムに存在する制御部で実行されてもよいし、外部記憶媒体に記憶された情報を利用してローカル応答が生成されてもよい。例えば、ローカルデータベースに基づいて入力の音声認識等が行われ、音声認識結果が天候情報の取得である場合に、外部記憶媒体に記録された天候情報を取得する構成等が挙げられる。
【００６８】
入力と応答の態様は種々の態様が想定可能である。例えば、入力と応答が、情報の要求と情報の提示である例や、命令と実行である例が想定される。入力と応答が情報の要求と情報の提示である場合の、より具体的な例としては、施設情報や天候情報、交通情報等の要求と要求された情報の提示である例や、検索条件に合致する情報の要求と検索結果を示す情報の提示である例等が挙げられる。むろん、提供対象となる情報は、他にも種々の情報を想定可能であり、新規開店した店舗の情報や店舗の価格帯や口コミ評価、おすすめの店舗等の情報等であってもよく、種々の情報が想定される。入力と応答が命令と実行である場合の、より具体的な例としては、記憶媒体に記憶されたファイルの再生（音楽や動画等の再生）命令と、その再生が挙げられる。
【００６９】
ローカル応答は、ローカル記憶媒体に記録されたローカルデータベースに基づいて生成されれば良い。例えば、応答の生成は、入力内容の認識と認識結果に対応した応答内容の生成とによって実現可能であり、入力内容の認識は、入力内容の文字列化や入力からの命令抽出など、入力内容の解析によって実現可能であり、当該解析にローカルデータベースが使用されても良い。例えば、ローカル応答生成部が、入力としての発話音声とローカルデータベースに記憶された音声データベースとを比較して発話音声を認識する構成等を採用可能である。
【００７０】
認識結果に対応した応答内容の生成は、入力内容の文字列や命令等が示す処理結果の取得（検索結果の取得等）や、入力内容の文字列や命令等が示す処理の特定（再生音楽の特定等）等によって実現可能である。なお、入力が発話音声であり、当該発話音声の認識結果に基づいてローカル応答としての音声が生成される構成であれば、音声対話システムとしての応答システムが提供される。
【００７１】
ローカル応答出力部は、ローカル応答を出力することができればよい。ローカル応答の出力態様は種々の態様を想定可能であり、情報の出力や命令の実行等であっても良い。前者としては、例えば、ディスプレイ等の出力部に対する表示やスピーカー等の出力部からの音声出力がローカル応答の出力である例が挙げられ、後者としては、例えば、スピーカー等の出力部によって音楽が出力される構成が挙げられる。
【００７２】
外部応答取得部は、外部記憶媒体に記録された外部データベースに基づいて生成された、利用者による入力に対する応答である外部応答を取得することができればよい。すなわち、外部応答取得部は、応答システムの外部に存在する外部記憶媒体に記録された外部データベースに基づいて生成された外部応答を取得する。外部応答の生成処理は全てが応答システムの外部に存在する外部システムで実行されてもよいし、一部が応答システムで実行され、残りの一部が外部システムで実行されてもよい。後者としては、例えば、入力としての発話音声の認識を応答システムで行って、認識結果に対する応答の生成（情報の検索等）を外部システムで実行する構成等が挙げられる。
【００７３】
なお、外部応答の生成も、外部データベースに基づいて利用者による入力内容を解析し、当該入力内容に対する応答を生成することができればよい。外部データベースは、応答内容を生成するための情報の集合体であり、例えば、音声認識を行うための比較対象となる音声データベースや、応答としての検索結果を取得するための検索データベース、再生対象の音楽を示す音楽データベース等が挙げられる。なお、外部データベースは、ローカルデータベースと異なる応答が取得され得るように構成されている。従って、外部データベースには、ローカルデータベースに含まれない情報が含まれている。
【００７４】
外部応答についても、入力と応答が種々の組み合わせによって実現可能であることは上述のローカル応答と同様である。外部応答が、外部記憶媒体に記録された外部データベースに基づいて生成されれば良いことも上述のローカル応答と同様であり、例えば、入力内容の認識と認識結果に対応した応答内容の生成とによって外部応答が生成される構成等を採用可能である。音声対話システムを構成するのであれば、入力としての発話音声と外部データベースに記憶された外部音声データベースとを比較して発話音声を認識する構成と、当該発話音声の認識結果に基づいて外部応答としての音声が生成される構成とが採用される。
【００７５】
差分出力部は、外部応答とローカル応答との差分を抽出し、当該差分をローカル応答の出力に追加して出力することができればよい。すなわち、差分出力部が差分を出力することにより、ローカル応答の出力が行われても利用者に伝達されなかった情報の追加や処理内容の補足等が行われればよい。差分は、早期の生成可能であるローカル応答に対して追加することによってローカル応答の価値を高めたり、情報を補完したりすることができるように抽出されればよい。従って、ローカル応答に追加することによって利用者の種々の要望に応えることができるように差分を抽出する構成としてよい。
【００７６】
例えば、差分の追加は情報の追加であってもよいし、態様の異なる応答の追加であってもよい。後者としては、例えば、ローカル応答によって音楽再生が行われ、外部応答として曲名や歌詞等が得られ、曲名や歌詞等が差分としてディスプレイに出力される構成等であってもよいし、音楽再生中のアーティストの関連ニュースや関連画像が再生される構成等であってもよい。なお、差分の出力態様も種々の態様を想定可能であり、ディスプレイ等の出力部に対する表示やスピーカー等の出力部からの音声出力、音楽の出力等が挙げられる。
【００７７】
さらに、種々の内容が差分となり得る。例えば、発話音声の中にローカル応答生成部において認識されなかった未知語が含まれ、当該未知語に基づいて外部応答が生成されたことによって外部応答に含まれる情報が差分となってもよい。すなわち、入力としての発話音声がローカルデータベースに基づいて音声認識され、文字列化等がなされることによって入力内容が特定される構成においては、発話音声の個人差や雑音等の影響を受けて認識率が変動し得る。また、ローカルデータベースが更新されない（または更新頻度が外部データベースより少ない）場合、ローカルデータベースに基づいて認識できない単語が外部データベースに基づく音声認識よりも高頻度で存在する。
【００７８】
このように、認識できなかった単語は未知語となるが、同一の発話音声を入力として、外部データベースに基づく認識が行われた場合、未知語が認識され、文字列化等が可能である場合がある。このような場合、未知語の認識結果に応じた応答が外部応答に含まれる。そこで、この場合に未知語に基づいて生成された部分を差分として抽出すれば、ローカル応答に含まれなかった応答を差分として出力することができ、差分の追加出力の価値を高めることができる。
【００７９】
さらに、ローカルデータベースおよび外部データベースが複数の項目を有するレコードを複数個有しており、利用者による入力が示す検索対象についての検索結果を示す応答がローカル応答および外部応答である構成、すなわち、入力が検索指示であり応答の出力が検索結果の出力である構成を想定可能である。この構成において、ローカルデータベースに存在しない項目に関して外部データベースに基づいて検索された結果が差分であると見なす構成が採用されてもよい。
【００８０】
この構成によれば、ローカル応答としての検索結果で得られなかった情報を、外部応答としての検索結果を取得することによって追加することが可能になり、早期にレスポンスが得られ、かつ、少し待つことによって詳細な検索結果が得られる応答システムを提供することができる。
【００８１】
さらに、本発明のように、外部応答とローカル応答との差分を抽出し、当該差分をローカル応答の出力に追加して出力する手法は、プログラムや方法としても適用可能である。また、以上のようなシステム、プログラム、方法は、単独の装置として実現される場合や、複数の装置によって実現される場合が想定可能であり、各種の態様を含むものである。例えば、以上のような手段を備えたナビゲーションシステムや方法、プログラムを提供することが可能である。また、一部がソフトウェアであり一部がハードウェアであったりするなど、適宜、変更可能である。さらに、システムを制御するプログラムの記録媒体としても発明は成立する。むろん、そのソフトウェアの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。
【符号の説明】
【００８２】
１０…ナビゲーションシステム、２０…制御部、２１…応答プログラム、２１ａ…入力受付部、２１ｂ…ローカル応答生成部、２１ｃ…ローカル応答出力部、２１ｄ…外部応答取得部、２１ｅ…差分出力部、３０…ローカル記憶媒体、３０ａ…ローカルデータベース、３０ａ１…地図情報、３０ａ２…音声データベース、４１…ＧＰＳ受信部、４２…車速センサ、４３…ジャイロセンサ、４４…ユーザＩ／Ｆ部、４５…通信部、５０…外部システム、５０ａ…外部データベース
【図１】
2017161815.tif 000003
【図２】
2017161815.tif 000004
【図３】
2017161815.tif 000005