(57)【要約】【課題】音声認識レスポンスを向上する情報処理方法及びプログラムを提供する。【解決手段】情報処理方法は、ユーザの音声を示す第１音声情報を取得し、文字列情報と意味情報とが関連づけられている第１データベースを参照して、第１音声情報から生成された第１文字列情報が第１データベースの文字列情報のいずれにも合致しない場合、第１文字列情報をネットワークを介してサーバに出力し、第１意味情報及び制御コマンドの少なくとも一方を、サーバから取得し、第１意味情報は、サーバ上の第２データベースにおいて、第１文字列情報に合致する文字列情報と関連付けられている、第１意味情報及び制御コマンドの少なくとも一方に基づいて、機器が所定の動作を実行するように指示し、第２文字列情報から生成された第２音声情報をスピーカに出力し、第２文字列情報は第１データベースにおいて第１意味情報に関連づけられている。【選択図】図１３
2018120202.tif 000002
【特許請求の範囲】
【請求項１】
ユーザとの対話を通じて少なくとも１つの機器を制御するプロセッサによって実行される情報処理方法であって、
マイクロホンから入力された前記ユーザの音声を示す第１音声情報を取得し、
複数の文字列情報と複数の意味情報とが関連づけられている第１データベースを参照して、前記第１音声情報から生成された第１文字列情報が前記第１データベースの前記複数の文字列情報のいずれにも合致しないと判断した場合に、前記第１文字列情報をネットワークを介してサーバに出力し、
第１意味情報と前記第１意味情報に対応する制御コマンドとの少なくとも一方を、前記ネットワークを介して前記サーバから取得し、前記第１意味情報は、前記サーバ上の第２データベースにおいて、前記第１文字列情報に合致する文字列情報と関連付けられている、
前記第１意味情報および前記制御コマンドの少なくとも一方に基づいて、前記少なくとも１つの機器が所定の動作を実行するように指示し、
第２文字列情報から生成された第２音声情報をスピーカに出力する、前記第２文字列情報は前記第１データベースにおいて前記第１意味情報に関連づけられている、
情報処理方法。
【請求項２】
さらに、前記第２文字列情報および前記第２音声情報の少なくとも一方を、前記ネットワークを介して前記サーバから取得する、
請求項１に記載の情報処理方法。
【請求項３】
さらに、前記第２文字列情報を取得した後に、前記第２文字列情報から前記第２音声情報を生成する、
請求項２に記載の情報処理方法。
【請求項４】
さらに、前記第２データベースにおいて前記第１意味情報に関連づけられている１以上の文字列情報を、前記ネットワークを介して前記サーバから取得し、
前記１以上の文字列情報と前記第１データベースの前記複数の文字列情報とを照合することによって、前記１以上の文字列情報の中から前記第２文字列情報を特定する、
請求項１に記載の情報処理方法。
【請求項５】
さらに、前記第１意味情報と前記第１データベースの前記複数の意味情報とを照合することによって、前記第１データベースの前記複数の文字列情報の中から前記第２文字列情報を特定する、
請求項１に記載の情報処理方法。
【請求項６】
さらに、前記第１意味情報を取得した後に、前記第１意味情報に基づいて前記制御コマンドを生成する、
請求項１から５のいずれか一項に記載の情報処理方法。
【請求項７】
さらに、前記第１音声情報を取得した後に、前記第１音声情報から前記第１文字列情報を生成する、
請求項１から６のいずれか一項に記載の情報処理方法。
【請求項８】
前記ネットワークはインターネットであり、
前記第１データベースは、前記少なくとも１つの機器と前記インターネットを介さずに通信可能なローカルサーバ上に格納されている、
請求項１から７のいずれか一項に記載の情報処理方法。
【請求項９】
前記第１文字列情報が前記第１データベースの前記複数の文字列情報のうちの１つに合致すると判断した場合に、前記サーバとは通信せずに、前記少なくとも１つの機器が前記所定の動作を実行するように指示する、
請求項１から８のいずれか一項に記載の情報処理方法。
【請求項１０】
請求項１から９のいずれか一項に記載の情報処理方法を前記プロセッサに実行させるプログラム。
【請求項１１】
サーバ上の第２プロセッサによって実行される情報処理方法であって、前記第２プロセッサは、ユーザとの対話を通じて少なくとも１つの機器を制御する第１プロセッサとネットワークを介して通信可能であり、
第１音声情報から生成された第１文字列情報が、前記第１プロセッサによって参照される第１データベース内のいずれの文字列情報にも合致しない場合に、前記ネットワークを介して前記第１プロセッサから前記第１文字列情報を取得し、前記第１音声情報はマイクロホンから入力された前記ユーザの音声を示し、
第１意味情報と前記第１意味情報に対応する制御コマンドとの少なくとも一方を、前記ネットワークを介して前記第１プロセッサに出力し、前記第１意味情報は、第２データベース内の複数の文字列情報のうち前記第１文字列情報に合致する１つと関連づけられている、
前記第１データベースにおいて前記第１意味情報に関連づけられている第２文字列情報と、前記第２文字列情報から生成された第２音声情報との少なくとも一方を、前記ネットワークを介して前記第１プロセッサに出力し、前記第２音声情報はスピーカに出力される情報である、
情報処理方法。
【請求項１２】
前記第２データベースは、前記複数の文字列情報のそれぞれが前記第１データベースに含まれるか否かを示す複数の対応情報を含み、
前記情報処理方法は、さらに、
前記第１意味情報および前記制御コマンドの少なくとも一方を出力する前に、前記第２データベースを参照して前記第１意味情報を特定し、
前記第２データベースの前記複数の文字列情報の中から、前記第１意味情報に関連づけられている１以上の文字列情報を特定し、
前記第２データベースの前記複数の対応情報を参照して、前記１以上の文字列情報のそれぞれが前記第１データベースに含まれるか否かを判断することによって、前記１以上の文字列情報の中から前記第２文字列情報を特定する、
請求項１１に記載の情報処理方法。
【請求項１３】
さらに、前記第２文字列情報から前記第２音声情報を生成する、
請求項１１または１２に記載の情報処理方法。
【請求項１４】
さらに、前記第１意味情報に基づいて前記制御コマンドを生成する、
請求項１１から１３のいずれか一項に記載の情報処理方法。
【請求項１５】
前記ネットワークはインターネットであり、
前記第１データベースは、前記少なくとも１つの機器と前記インターネットを介さずに通信可能なローカルサーバ上に格納されている、
請求項１１から１４のいずれか一項に記載の情報処理方法。
【請求項１６】
請求項１１から１５のいずれか一項に記載の情報処理方法を前記第２プロセッサに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、音声認識を用いて制御可能である、家電をはじめとした機器が注目されている。これらの機器では、家電端末などローカル側の装置の記憶容量に制約があるため、登録できる単語数が少なく、そのため限られた発話フレーズをユーザが覚えなければならないという課題があった。そこで、最近ではクラウドサーバ上で制御される音声対話が注目を集めつつある。クラウドサーバの記憶容量は大きいため、豊富な語彙を持つ辞書を構築できる上、辞書の頻繁なアップデートが可能なことから、ユーザの様々な言い回しに対応して音声対話ができるという利点がある。一方、クラウドサーバと機器との通信時間は、往復で５００ｍｓ〜数秒程度を要し、ユーザが認識できる程度の遅延が音声対話に生じる点が課題である。
【０００３】
例えば、音声認識技術の一例が特許文献１に開示されている。特許文献１の装置及びプログラムは、音声コマンドを用いて消費者電化製品に関連する機器を音声制御する。この装置及びプログラムは、ローカル側の端末装置の辞書に不足しているユーザ固有の表現に対応する同義語を、センタとして機能する音声入力対応装置から端末装置に送信することで、端末装置の認識率を向上させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１０６５２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示されるような装置及びプログラムに代表される音声対話エージェントでは、同義語をローカル側の装置で学習する。したがって、ローカル側の装置は、その記憶容量が限られているにも関わらず、同義語を学習するにつれ、その辞書の規模を大きくする。これにより、ローカル側の装置の音声認識レスポンスが低下する可能性がある。
【０００６】
本開示は、音声認識レスポンスを向上する情報処理方法及びプログラムを提供する。
【課題を解決するための手段】
【０００７】
本開示の一態様に係る情報処理方法は、ユーザとの対話を通じて少なくとも１つの機器を制御するプロセッサによって実行される情報処理方法であって、マイクロホンから入力された前記ユーザの音声を示す第１音声情報を取得し、複数の文字列情報と複数の意味情報とが関連づけられている第１データベースを参照して、前記第１音声情報から生成された第１文字列情報が前記第１データベースの前記複数の文字列情報のいずれにも合致しないと判断した場合に、前記第１文字列情報をネットワークを介してサーバに出力し、第１意味情報と前記第１意味情報に対応する制御コマンドとの少なくとも一方を、前記ネットワークを介して前記サーバから取得し、前記第１意味情報は、前記サーバ上の第２データベースにおいて、前記第１文字列情報に合致する文字列情報と関連付けられている、前記第１意味情報および前記制御コマンドの少なくとも一方に基づいて、前記少なくとも１つの機器が所定の動作を実行するように指示し、第２文字列情報から生成された第２音声情報をスピーカに出力する、前記第２文字列情報は前記第１データベースにおいて前記第１意味情報に関連づけられている。
【０００８】
本開示の一態様に係るプログラムは、上記情報処理方法を前記プロセッサに実行させる。
【０００９】
本開示の一態様に係る情報処理方法は、サーバ上の第２プロセッサによって実行される情報処理方法であって、前記第２プロセッサは、ユーザとの対話を通じて少なくとも１つの機器を制御する第１プロセッサとネットワークを介して通信可能であり、第１音声情報から生成された第１文字列情報が、前記第１プロセッサによって参照される第１データベース内のいずれの文字列情報にも合致しない場合に、前記ネットワークを介して前記第１プロセッサから前記第１文字列情報を取得し、前記第１音声情報はマイクロホンから入力された前記ユーザの音声を示し、第１意味情報と前記第１意味情報に対応する制御コマンドとの少なくとも一方を、前記ネットワークを介して前記第１プロセッサに出力し、前記第１意味情報は、第２データベース内の複数の文字列情報のうち前記第１文字列情報に合致する１つと関連づけられている、前記第１データベースにおいて前記第１意味情報に関連づけられている第２文字列情報と、前記第２文字列情報から生成された第２音声情報との少なくとも一方を、前記ネットワークを介して前記第１プロセッサに出力し、前記第２音声情報はスピーカに出力される情報である。
【００１０】
本開示の一態様に係るプログラムは、上記情報処理方法を前記第２プロセッサに実行させる。
【発明の効果】
【００１１】
本開示の情報処理方法及びプログラムによれば、音声認識レスポンスの向上が可能になる。
【図面の簡単な説明】
【００１２】
【図１Ａ】図１Ａは、実施の形態に係る音声処理装置を備える音声対話エージェントシステムが配置される環境の一例を示す図であり、音声対話エージェントシステムを備える情報管理システムが提供するサービスの全体像を示す図である。
【図１Ｂ】図１Ｂは、図１Ａのデータセンタ運営会社が、機器メーカに該当する例を示す図である。
【図１Ｃ】図１Ｃは、図１Ａのデータセンタ運営会社が、機器メーカ及び管理会社の両者又はいずれか一方に該当する例を示す図である。
【図２】図２は、実施の形態に係る音声対話エージェントシステムの構成を示す概略図である。
【図３】図３は、実施の形態に係る音声入出力装置のハードウェア構成の一例を示す図である。
【図４】図４は、実施の形態に係る機器のハードウェア構成の一例を示す図である。
【図５】図５は、実施の形態に係るローカルサーバのハードウェア構成の一例を示す図である。
【図６】図６は、実施の形態に係るクラウドサーバのハードウェア構成の一例を示す図である。
【図７】図７は、実施の形態に係る音声入出力装置のシステム構成の一例を示す図である。
【図８】図８は、実施の形態に係る機器のシステム構成の一例を示す図である。
【図９】図９は、実施の形態に係るローカルサーバのシステム構成の一例を示す図である。
【図１０】図１０は、実施の形態に係るクラウドサーバのシステム構成の一例を示す図である。
【図１１】図１１は、実施の形態に係るクラウド辞書ＤＢの具体例である。
【図１２】図１２は、実施の形態に係る音声対話エージェントシステムによる発話内容をレコメンドする通信処理のシーケンス図である。
【図１３】図１３は、実施の形態に係る音声対話エージェントシステムによる発話内容をレコメンドする通信処理のシーケンス図である。
【図１４】図１４は、実施の形態に係るクラウドサーバ上でのクラウド辞書照合処理のフローチャートである。
【図１５】図１５は、実施の形態に係る音声対話エージェントシステムにおける各種情報の流れを示す図である。
【図１６】図１６は、変形例１に係る音声対話エージェントシステムによる発話内容をレコメンドする通信処理のうちの処理群Ａに関するシーケンス図である。
【図１７】図１７は、変形例１に係るクラウドサーバ上でのクラウド辞書照合処理のフローチャートである。
【図１８】図１８は、変形例１に係る音声対話エージェントシステムにおける各種情報の流れを示す図である。
【図１９】図１９は、変形例１に係るローカルサーバ上での文字列照合処理のフローチャートである。
【図２０】図２０は、変形例２に係る音声対話エージェントシステムによる発話内容をレコメンドする通信処理のうちの処理群Ａに関するシーケンス図である。
【図２１】図２１は、変形例２に係るクラウドサーバ上でのクラウド辞書照合処理のフローチャートである。
【図２２】図２２は、変形例２に係る音声対話エージェントシステムにおける各種情報の流れを示す図である。
【図２３】図２３は、変形例２に係るローカルサーバ上での文字列照合処理のフローチャートである。
【図２４】図２４は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型１（自社データセンタ型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。
【図２５】図２５は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型２（ＩａａＳ利用型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。
【図２６】図２６は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型３（ＰａａＳ利用型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。
【図２７】図２７は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型４（ＳａａＳ利用型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。
【発明を実施するための形態】
【００１３】
［本開示の技術の基礎となった知見］
本発明者らは、特許文献１に開示されるような従来技術において、以下の問題が生じることを見出した。上記特許文献１の装置及びプログラムは、同義語をローカル側の装置で学習する。したがって、ローカル側の装置は、記憶容量が限られているにも関わらず、同義語を学習するにつれ、その記憶領域の規模を大きくしてしまうという問題がある。このような課題を解決するために、本発明者らは、以下の改善策を検討した。
【００１４】
本開示の一態様に係る第１の情報処理方法は、ユーザとの対話を通じて少なくとも１つの機器を制御するプロセッサによって実行される情報処理方法であって、マイクロホンから入力された前記ユーザの音声を示す第１音声情報を取得し、複数の文字列情報（文字情報）と複数の意味情報とが関連づけられている第１データベース（第１の辞書）を参照して、前記第１音声情報から生成された第１文字列情報（認識文字情報）が前記第１データベースの前記複数の文字列情報のいずれにも合致しないと判断した場合に、前記第１文字列情報をネットワークを介してサーバに出力し、第１意味情報と前記第１意味情報に対応する制御コマンドとの少なくとも一方（タスク情報）を、前記ネットワークを介して前記サーバから取得し、前記第１意味情報は、前記サーバ上の第２データベース（第２の辞書）において、前記第１文字列情報に合致する文字列情報と関連付けられている、前記第１意味情報および前記制御コマンドの少なくとも一方に基づいて、前記少なくとも１つの機器が所定の動作を実行するように指示し、第２文字列情報（推奨文字情報）から生成された第２音声情報をスピーカに出力する、前記第２文字列情報は前記第１データベースにおいて前記第１意味情報に関連づけられている。
【００１５】
上記態様において、ユーザが少なくとも１つの機器に所望の動作をさせるために、マイクロホンに音声を入力したが、当該音声の第１音声情報に対応する第１文字列情報に合致する文字列情報が、第１データベースに存在しないとき、第１文字列情報は、サーバに出力される。そして、第１文字列情報に対応する第１意味情報と第１意味情報に対応する制御コマンドとの少なくとも一方（例えば、タスク情報）が、サーバから取得される。さらに、第１データベースにおける第１意味情報に対応する第２文字列情報（例えば、推奨文字情報）から、第２音声情報が生成され、スピーカから出力される。また、取得される第１意味情報と制御コマンドとの少なくとも一方に基づき、少なくとも１つの機器が制御される。このような第１文字列情報と第２文字列情報とは、第１意味情報に関して対応する。よって、マイクロホンから入力された第１音声情報に対応する文字列情報が第１データベースに存在しない場合でも、第１音声情報に応じて少なくとも１つの機器を動作させることが可能である。さらに、ユーザには、第１文字列情報に対応する第１データベースの第２文字列情報が、スピーカを介して通知される。このため、ユーザは、第２文字列情報に対応する音声をマイクロホンに入力することによって、サーバとの通信を介さずに、少なくとも１つの機器に所望の動作をさせることができる。従って、少なくとも１つの機器を動作させる際の音声認識レスポンスの向上が可能になる。
【００１６】
また、本開示の一態様に係る第２の情報処理方法は、サーバ上の第２プロセッサによって実行される情報処理方法であって、前記第２プロセッサは、ユーザとの対話を通じて少なくとも１つの機器を制御する第１プロセッサとネットワークを介して通信可能であり、第１音声情報から生成された第１文字列情報（認識文字情報）が、前記第１プロセッサによって参照される第１データベース（第１の辞書）内のいずれの文字列情報（文字情報）にも合致しない場合に、前記ネットワークを介して前記第１プロセッサから前記第１文字列情報を取得し、前記第１音声情報はマイクロホンから入力された前記ユーザの音声を示し、第１意味情報と前記第１意味情報に対応する制御コマンドとの少なくとも一方（タスク情報）を、前記ネットワークを介して前記第１プロセッサに出力し、前記第１意味情報は、第２データベース（第２の辞書）内の複数の文字列情報のうち前記第１文字列情報に合致する１つと関連づけられている、前記第１データベースにおいて前記第１意味情報に関連づけられている第２文字列情報（推奨文字情報）と、前記第２文字列情報から生成された第２音声情報との少なくとも一方を、前記ネットワークを介して前記第１プロセッサに出力し、前記第２音声情報はスピーカに出力される情報である。
【００１７】
上記態様において、ユーザが少なくとも１つの機器に所望の動作をさせるために、マイクロホンに音声を入力したが、当該音声の第１音声情報に対応する第１文字列情報に合致する文字列情報が、第１データベースに存在しないとき、第１文字列情報は、サーバに出力される。そして、第１文字列情報に対応する第１意味情報と第１意味情報に対応する制御コマンドとの少なくとも一方（例えば、タスク情報）が、サーバから第１プロセッサに出力される。さらに、第１データベースにおいて第１意味情報に関連づけられている第２文字列情報（例えば、推奨文字情報）と、第２文字列情報から生成された第２音声情報との少なくとも一方が、サーバから第１プロセッサに出力される。これにより、取得される第１意味情報と制御コマンドとの少なくとも一方に基づき、第１プロセッサによって、少なくとも１つの機器が制御される。また、第１プロセッサによって、第２文字列情報（例えば、推奨文字情報）から生成される第２音声情報が、スピーカから出力される。このような第１文字列情報と第２文字列情報とは、第１意味情報に関して対応する。よって、マイクロホンから入力された第１音声情報に対応する文字列情報が第１データベースに存在しない場合でも、第１音声情報に応じて少なくとも１つの機器を動作させることが可能である。さらに、ユーザには、第１文字列情報に対応する第１データベースの第２文字列情報が、スピーカを介して通知される。このため、ユーザは、第２文字列情報に対応する音声をマイクロホンに入力することによって、サーバとの通信を介さずに、少なくとも１つの機器に所望の動作をさせることができる。従って、少なくとも１つの機器を動作させる際の音声認識レスポンスの向上が可能になる。
【００１８】
例えば、本開示の一態様に係る第１の情報処理方法は、さらに、前記第２文字列情報および前記第２音声情報の少なくとも一方を、前記ネットワークを介して前記サーバから取得してもよい。
【００１９】
上記態様によれば、第１データベースにおいて、第１意味情報に関連づけられている第２文字列情報を抽出する処理が不要になる。よって、プロセッサの処理速度が向上するため、音声認識レスポンスの向上が可能になる。
【００２０】
例えば、本開示の一態様に係る第１の情報処理方法は、さらに、前記第２文字列情報を取得した後に、前記第２文字列情報から前記第２音声情報を生成してもよい。
【００２１】
上記態様によれば、サーバから第２文字列情報及び第２音声情報を取得する場合と比較して、サーバから取得する情報量が減少する。よって、通信時間の低減が可能になるため、音声認識レスポンスの向上が可能になる。
【００２２】
例えば、本開示の一態様に係る第１の情報処理方法は、さらに、前記第２データベースにおいて前記第１意味情報に関連づけられている１以上の文字列情報を、前記ネットワークを介して前記サーバから取得し、前記１以上の文字列情報と前記第１データベースの前記複数の文字列情報とを照合することによって、前記１以上の文字列情報の中から前記第２文字列情報を特定してもよい。
【００２３】
上記態様によれば、サーバにおいて、第２データベースにおける第１意味情報に関連づけられている１以上の文字列情報が、第１データベースの文字列情報に合致するか否かを判断する処理が不要である。よって、サーバでの処理速度が向上するため、音声認識レスポンスの向上が可能になる。
【００２４】
例えば、本開示の一態様に係る第１の情報処理方法は、さらに、前記第１意味情報と前記第１データベースの前記複数の意味情報とを照合することによって、前記第１データベースの前記複数の文字列情報の中から前記第２文字列情報を特定してもよい。
【００２５】
上記態様において、例えば、同義語及び類義語の存在により、文字列同士を照合することによって対応関係を判定することは、意味情報同士を照合することによって対応関係を判定することよりも、複雑な処理を要する。このため、意味情報の照合により第２文字列情報を特定することによって、処理速度の向上が可能である。
【００２６】
例えば、本開示の一態様に係る第１の情報処理方法は、さらに、前記第１意味情報を取得した後に、前記第１意味情報に基づいて前記制御コマンドを生成してもよい。
【００２７】
上記態様によれば、サーバから第１意味情報及び制御コマンドを取得する場合と比較して、サーバから取得する情報量が減少する。よって、通信時間の低減が可能になるため、音声認識レスポンスの向上が可能になる。
【００２８】
例えば、本開示の一態様に係る第１の情報処理方法は、さらに、前記第１音声情報を取得した後に、前記第１音声情報から前記第１文字列情報を生成してもよい。
【００２９】
上記態様によれば、ユーザによるマイクロホンへの音声入力に応じたリアルタイムな処理が、可能になる。
【００３０】
例えば、本開示の一態様に係る第１の情報処理方法において、前記ネットワークはインターネットであり、前記第１データベースは、前記少なくとも１つの機器と前記インターネットを介さずに通信可能なローカルサーバ上に格納されていてもよい。
【００３１】
上記態様によれば、第１データベースを格納するローカルサーバと、少なくとも１つの機器との通信による、音声認識レスポンスの低下が抑えられる。
【００３２】
例えば、本開示の一態様に係る第１の情報処理方法において、前記第１文字列情報が前記第１データベースの前記複数の文字列情報のうちの１つに合致すると判断した場合に、前記サーバとは通信せずに、前記少なくとも１つの機器が前記所定の動作を実行するように指示してもよい。
【００３３】
上記態様によれば、サーバとの通信が低減されるため、音声認識レスポンスの向上が可能になる。
【００３４】
また、本開示の一態様に係る第１のプログラムは、上記の第１の情報処理方法を前記プロセッサに実行させる。
【００３５】
例えば、本開示の一態様に係る第２の情報処理方法において、前記第２データベースは、前記複数の文字列情報のそれぞれが前記第１データベースに含まれるか否かを示す複数の対応情報を含み、前記第２の情報処理方法は、さらに、前記第１意味情報および前記制御コマンドの少なくとも一方を出力する前に、前記第２データベースを参照して前記第１意味情報を特定し、前記第２データベースの前記複数の文字列情報の中から、前記第１意味情報に関連づけられている１以上の文字列情報を特定し、前記第２データベースの前記複数の対応情報を参照して、前記１以上の文字列情報のそれぞれが前記第１データベースに含まれるか否かを判断することによって、前記１以上の文字列情報の中から前記第２文字列情報を特定してもよい。
【００３６】
上記態様によれば、第２データベースにおいて、第１意味情報に関連づけられており且つ第１データベースに含まれている第２文字列情報が、確実に抽出され得る。
【００３７】
例えば、本開示の一態様に係る第２の情報処理方法は、さらに、前記第２文字列情報から前記第２音声情報を生成してもよい。
【００３８】
例えば、本開示の一態様に係る第２の情報処理方法は、さらに、前記第１意味情報に基づいて前記制御コマンドを生成してもよい。
【００３９】
例えば、本開示の一態様に係る第２の情報処理方法において、前記ネットワークはインターネットであり、前記第１データベースは、前記少なくとも１つの機器と前記インターネットを介さずに通信可能なローカルサーバ上に格納されていてもよい。
【００４０】
上記態様によれば、第１データベースを格納するローカルサーバと、少なくとも１つの機器との通信による、音声認識レスポンスの低下が抑えられる。
【００４１】
また、本開示の一態様に係る第２のプログラムは、上記の第２の情報処理方法を前記第２プロセッサに実行させる。
【００４２】
なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【００４３】
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の技術の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることも出来る。
【００４４】
［実施の形態］
［１．提供するサービスの全体像］
まず、図１Ａ〜図１Ｃを参照して、実施の形態に係る音声処理装置を備える音声対話エージェントシステム１が配置される情報管理システムが提供する、サービスの全体像について説明する。図１Ａは、実施の形態に係る音声処理装置を備える音声対話エージェントシステムが配置される環境の一例を示す図であり、音声対話エージェントシステムを備える情報管理システムが提供するサービスの全体像を示す図である。図１Ｂは、図１Ａのデータセンタ運営会社が、機器メーカに該当する例を示す図である。図１Ｃは、図１Ａのデータセンタ運営会社が、機器メーカ及び管理会社の両者又はいずれか一方に該当する例を示す図である。なお、音声処理装置は、後述するホームゲートウェイ（ローカルサーバとも呼ぶ）１０２であってもよく、クラウドサーバ１１１であってもよく、ホームゲートウェイ１０２及びクラウドサーバ１１１を含むものでもよい。
【００４５】
図１Ａに示されるように、情報管理システム４０００は、グループ４１００、データセンタ運営会社４１１０及びサービスプロバイダ４１２０を備える。グループ４１００は、例えば企業、団体又は家庭等であり、その規模を問わない。グループ４１００は、第１の機器１０１ａ及び第２の機器１０１ｂを含む複数の機器１０１、並びにホームゲートウェイ１０２を備える。複数の機器１０１は、例えば家電機器である。複数の機器１０１は、例えば、スマートフォン、パーソナルコンピュータ（ＰＣ）又はテレビ等のインターネットなどの通信網と接続可能な機器を含んでもよく、例えば、照明、洗濯機又は冷蔵庫等のそれ自身ではインターネットなどの通信網と接続不可能な機器を含んでもよい。複数の機器１０１は、それ自身ではインターネット等の通信網と接続不可能であっても、ホームゲートウェイ１０２を介してインターネット等の通信網と接続可能となる機器を含んでもよい。また、ユーザ５１００は、グループ４１００内の複数の機器１０１を使用する。
【００４６】
データセンタ運営会社４１１０は、クラウドサーバ１１１を備える。クラウドサーバ１１１は、インターネットなどの通信網を介して様々な装置と連携する仮想化サーバである。クラウドサーバ１１１は、主に通常のデータベース管理ツール等で扱うことが困難な巨大なデータ（ビッグデータ）等を管理する。データセンタ運営会社４１１０は、データの管理、クラウドサーバ１１１の管理、及びそれらを行うデータセンタの運営等を行っている。データセンタ運営会社４１１０が行っている役務の詳細については後述する。以降では、通信網として、インターネットが用いられるものとして説明するが、通信網は、インターネットに限定されない。
【００４７】
ここで、データセンタ運営会社４１１０は、データの管理又はクラウドサーバ１１１の管理のみを行っている会社に限らない。例えば、図１Ｂに示すように、複数の機器１０１のうちの一つの機器を開発又は製造している機器メーカが、データの管理又はクラウドサーバ１１１の管理等を行っている場合は、機器メーカがデータセンタ運営会社４１１０に該当する。また、データセンタ運営会社４１１０は一つの会社に限らない。例えば、図１Ｃに示すように、機器メーカ及び管理会社が共同又は分担してデータの管理又はクラウドサーバ１１１の管理を行っている場合は、両者又はいずれか一方がデータセンタ運営会社４１１０に該当する。
【００４８】
サービスプロバイダ４１２０は、サーバ１２１を備える。ここで言うサーバ１２１とは、その規模は問わず、例えば、個人用ＰＣ内のメモリ等も含む。また、サービスプロバイダ４１２０がサーバ１２１を備えていない場合もある。
【００４９】
なお、上記の情報管理システム４０００において、ホームゲートウェイ１０２は必須ではない。例えば、クラウドサーバ１１１が全てのデータ管理を行っている場合等は、ホームゲートウェイ１０２は不要となる。また、家庭内の全ての機器１０１がインターネットに接続されている場合のように、それ自身ではインターネットと接続不可能な機器が存在しない場合もある。
【００５０】
次に、情報管理システム４０００における情報の流れを説明する。まず、グループ４１００の第１の機器１０１ａ又は第２の機器１０１ｂは、各々のログ情報をデータセンタ運営会社４１１０のクラウドサーバ１１１にそれぞれ送信する。クラウドサーバ１１１は、第１の機器１０１ａ及び第２の機器１０１ｂのログ情報を集積する（図１Ａの矢印１３１）。ここで、ログ情報とは、複数の機器１０１の例えば運転状況及び動作日時等を示す情報である。例えば、ログ情報は、テレビの視聴履歴、レコーダの録画予約情報、洗濯機の運転日時、洗濯物の量、冷蔵庫の開閉日時、及び冷蔵庫の開閉回数などを含み得るが、これらの情報に限らず、種々の機器１０１から取得が可能な種々の情報を含んでもよい。なお、ログ情報は、インターネットを介して複数の機器１０１自体から直接クラウドサーバ１１１に提供されてもよい。また、ログ情報は、複数の機器１０１から一旦ホームゲートウェイ１０２に集積され、ホームゲートウェイ１０２からクラウドサーバ１１１に提供されてもよい。
【００５１】
次に、データセンタ運営会社４１１０のクラウドサーバ１１１は、集積したログ情報を一定の単位でサービスプロバイダ４１２０に提供する。ここで、一定の単位とは、データセンタ運営会社４１１０が集積した情報を整理してサービスプロバイダ４１２０に提供することの出来る単位でもよく、サービスプロバイダ４１２０が要求する単位でもよい。また、ログ情報は、一定の単位で提供されるとしているが、一定の単位で提供されなくてもよく、状況に応じて提供される情報量が変化してもよい。ログ情報は、必要に応じてサービスプロバイダ４１２０が保有するサーバ１２１に保存される（図１Ａの矢印１３２）。
【００５２】
そして、サービスプロバイダ４１２０は、ログ情報を、ユーザに提供するサービスに適合する情報に整理し、ユーザに提供する。情報が提供されるユーザは、複数の機器１０１を使用するユーザ５１００でもよく、外のユーザ５２００でもよい。ユーザ５１００，５２００への情報提供方法としては、例えば、サービスプロバイダ４１２０から直接ユーザ５１００，５２００へ情報が提供されてもよい（図１Ａの矢印１３３，１３４）。また、ユーザ５１００への情報提供方法としては、例えば、データセンタ運営会社４１１０のクラウドサーバ１１１を再度経由して、ユーザ５１００に情報が提供される方法でもよい（図１Ａの矢印１３５，１３６）。また、データセンタ運営会社４１１０のクラウドサーバ１１１は、ログ情報を、ユーザに提供するサービスに適合する情報に整理し、サービスプロバイダ４１２０に提供してもよい。なお、ユーザ５１００は、ユーザ５２００と異なっていても同一であってもよい。
【００５３】
［２−１．実施の形態に係る音声対話エージェントシステムの構成］
以下、実施の形態に係る音声対話エージェントシステム１の構成を説明する。音声対話エージェントシステム１は、ユーザがクラウド側の辞書にのみ登録された発話フレーズを発話した場合に、同様の処理を行うローカル側の辞書に登録された発話フレーズをユーザにレコメンドするシステムである。この際、音声対話エージェントシステム１は、ユーザに対し、ローカル側の装置で高速に応答可能な発話フレーズを適切にレコメンドする。これにより、音声対話エージェントシステム１は、ユーザが機器制御を行う際のレスポンスを向上する。
【００５４】
まず、音声対話エージェントシステム１の構成に関して、音声対話エージェントシステムの構成、音声入出力装置のハードウェア構成、機器のハードウェア構成、ローカルサーバのハードウェア構成、クラウドサーバのハードウェア構成、音声入出力装置の機能ブロック、機器の機能ブロック、ローカルサーバの機能ブロック、及びクラウドサーバの機能ブロックを順次説明する。次いで、音声対話エージェントシステム１の動作に関して、端末側つまりローカル側で高速に応答可能な発話フレーズをレコメンドする処理のシーケンス、及び音声対話エージェントシステム１によるクラウド辞書照合処理の流れを順次説明する。
【００５５】
図２を参照して、実施の形態に係る音声対話エージェントシステム１の構成を説明する。図２は、実施の形態に係る音声対話エージェントシステム１の構成を示す概略図である。音声対話エージェントシステム１は、音声入出力装置２４０と、複数の機器１０１と、ローカルサーバ１０２と、情報通信ネットワーク２２０と、クラウドサーバ１１１とを含む。ローカルサーバ１０２は、ホームゲートウェイの一例である。情報通信ネットワーク２２０は、例えば、インターネットであり、通信網の一例である。本実施の形態では、複数の機器１０１は、テレビ２４３、エアコン２４４及び冷蔵庫２４５で構成される。また、複数の機器１０１を構成する機器は、テレビ２４３、エアコン２４４及び冷蔵庫２４５に限定されるものでなく、任意の機器でよい。音声入出力装置２４０、複数の機器１０１及びローカルサーバ１０２は、グループ４１００に配置される。ここで、ローカルサーバ１０２が、音声処理装置を構成してもよく、クラウドサーバ１１１が、音声処理装置を構成してもよく、ローカルサーバ１０２及びクラウドサーバ１１１が共に、音声処理装置を構成してもよい。
【００５６】
図２に示す例では、人間であるユーザ５１００が、音声対話エージェントシステム１が配置されるグループ４１００内に存在する。また、ユーザ５１００が、音声対話エージェントシステム１に対する話者であるとする。
【００５７】
音声入出力装置２４０は、グループ４１００内の音声を取得する集音部の一例であり、グループ４１００内に音声を出力する音声出力部の一例でもある。音声入出力装置２４０は、マイクロホンを介して音声を取得してもよく、スピーカを介して音声を出力してもよい。マイクロホン及びスピーカは、音声入出力装置２４０に備えられてもよく、音声入出力装置２４０を搭載する装置に備えられてもよく、音声入出力装置２４０及び上記装置と別個の装置に備えられてもよい。グループ４１００は、音声入出力装置２４０が音声によりユーザに情報提供可能な空間である。音声入出力装置２４０は、グループ４１００内のユーザ５１００の音声を認識し、認識した音声入力によるユーザ５１００の指示に応じて、音声入出力装置２４０より音声情報を提示し、且つ機器１０１を制御する。より具体的には、音声入出力装置２４０は、音声入力によるユーザ５１００の指示に従いコンテンツを表示したり、ユーザ５１００の質問に回答したり、機器１０１を制御したりする。
【００５８】
また、ここでは、音声入出力装置２４０、複数の機器１０１及びローカルサーバ１０２の間の接続には、有線又は無線による接続を用いることができる。無線による接続には、様々な無線通信が適用可能である。例えば、Ｗｉ−Ｆｉ（登録商標）（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）などの無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）が適用されてもよく、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＺｉｇＢｅｅ（登録商標）等の近距離無線通信が適用されてもよい。
【００５９】
また、音声入出力装置２４０、機器１０１及びローカルサーバ１０２のうち少なくとも一部が一体化されていてもよい。例えば、音声入出力装置２４０に、ローカルサーバ１０２の機能が組み込まれ、音声入出力装置２４０が、自身でクラウドサーバ１１１と通信するローカル端末として機能してもよい。又は、音声入出力装置２４０が、複数の機器１０１のそれぞれ、若しくは、複数の機器１０１のうちの１つに組み込まれてもよい。後者の場合、音声入出力装置２４０が組み込まれた機器１０１が、他の機器１０１を制御してもよい。又は、音声入出力装置２４０の機能とローカルサーバ１０２の機能とのうち少なくともローカルサーバ１０２の機能が、複数の機器１０１のそれぞれ、若しくは、複数の機器１０１のうちの１つに組み込まれてもよい。前者の場合、各機器１０１が、自身でクラウドサーバ１１１と通信するローカル端末として機能してもよく、後者の場合、ローカルサーバ１０２の機能が組み込まれたローカル端末である１つの機器１０１を介して、他の機器１０１がクラウドサーバ１１１と通信してもよい。
【００６０】
さらに、音声入出力装置２４０、機器１０１、ローカルサーバ１０２及びクラウドサーバ１１１について、ハードウェア構成の観点から説明する。図３は、実施の形態に係る音声入出力装置２４０のハードウェア構成の一例を示す。図３に示されるように、音声入出力装置２４０は、処理回路３００、集音回路３０１、音声出力回路３０２及び通信回路３０３を有している。処理回路３００、集音回路３０１、音声出力回路３０２及び通信回路３０３は、バス３３０で相互に接続されており、互いの間でデータ及び命令の授受を行うことが可能である。ここで、クラウドサーバ１１１は、サーバの一例である。
【００６１】
処理回路３００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１０と、機器ＩＤ３４１及びコンピュータプログラム３４２を格納したメモリ３２０との組み合わせによって実現され得る。ＣＰＵ３１０は、音声入出力装置２４０の動作を制御するが、ローカルサーバ１０２を介して接続される各機器１０１の動作も制御してもよい。この場合、処理回路３００は、各機器１０１の制御命令を、ローカルサーバ１０２を介して送信するが、各機器１０１に直接送信してもよい。ＣＰＵ３１０は、メモリ３２０に展開されたコンピュータプログラム３４２に記述された命令群を実行する。これにより、ＣＰＵ３１０は種々の機能を実現することができる。コンピュータプログラム３４２には、後述する音声入出力装置２４０の動作を実現するための命令群が記述されている。上述のコンピュータプログラム３４２は、製品としての音声入出力装置２４０のメモリ３２０に予め格納されていてもよい。又は、コンピュータプログラム３４２は、ＣＤ−ＲＯＭ等の記録媒体に記録されて製品として市場に流通され、若しくは、インターネット等の電気通信回線を通じて伝送され、記録媒体又は電気通信回線を通じて取得されたコンピュータプログラム３４２がメモリ３２０に格納されてもよい。
【００６２】
或いは、処理回路３００は、以下に説明する動作を実現するように構成された専用のハードウェアによって実現されていてもよい。なお、機器ＩＤ３４１は、機器１０１に一意に付与された識別子である。機器ＩＤ３４１は、機器１０１のメーカによって独自に付与されてもよいし、或いは、原則としてネットワーク上で一意に割り当てられる物理アドレス（いわゆるＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス）であってもよい。
【００６３】
なお、図３では、コンピュータプログラム３４２が格納されているメモリ３２０に機器ＩＤ３４１が格納されているとした。しかしながらこれは、処理回路３００の構成の一例である。例えば、コンピュータプログラム３４２がＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）又はＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に格納され、機器ＩＤ３４１がフラッシュメモリに格納されてもよい。
【００６４】
集音回路３０１は、ユーザの音声を収集してアナログ音声信号を生成し、そのアナログ音声信号をデジタルデータに変換してバス３３０に送信する。
【００６５】
音声出力回路３０２は、バス３３０を通じて受信したデジタルデータをアナログ音声信号に変換し、そのアナログ音声信号を出力する。
【００６６】
通信回路３０３は、有線通信又は無線通信を介して、他の機器（例えばローカルサーバ１０２）と通信を行う回路である。限定されるものではないが、本実施の形態では、通信回路３０３は、ネットワークを介して他の機器と通信を行い、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。通信回路３０３は、処理回路３００によって生成されたログ情報及びＩＤ情報をローカルサーバ１０２に送信する。また、通信回路３０３は、ローカルサーバ１０２より受信した信号を、バス３３０を通じて処理回路３００に送信する。
【００６７】
音声入出力装置２４０は、図示される構成要素以外にも、音声入出力装置２４０に要求される機能を実現するための他の構成要素も含み得る。
【００６８】
図４は、実施形態に係る機器１０１のハードウェア構成の一例を示す。図２に示されるテレビ２４３、エアコン２４４及び冷蔵庫２４５は、機器１０１の一例である。図４に示されるように、機器１０１は、入出力回路４１０と、通信回路４５０と、処理回路４７０とを有している。入出力回路４１０、通信回路４５０及び処理回路４７０は、バス４６０で相互に接続されており、互いの間でデータ及び命令の授受を行うことが可能である。
【００６９】
処理回路４７０は、ＣＰＵ４３０と、機器ＩＤ４４１及びコンピュータプログラム４４２を格納したメモリ４４０との組み合わせによって実現され得る。ＣＰＵ４３０は、機器１０１の動作を制御する。ＣＰＵ４３０は、メモリ４４０に展開されたコンピュータプログラム４４２に記述された命令群を実行し、種々の機能を実現することができる。コンピュータプログラム４４２には、機器１０１の動作を実現するための命令群が記述されている。上述のコンピュータプログラム４４２は、製品としての機器１０１のメモリ４４０に予め格納されていてもよい。又は、コンピュータプログラム４４２は、ＣＤ−ＲＯＭ等の記録媒体に記録されて製品として市場に流通され、若しくは、インターネット等の電気通信回線を通じて伝送され、記録媒体又は電気通信回線を通じて取得されたコンピュータプログラム４４２がメモリ４４０に格納されてもよい。
【００７０】
或いは、処理回路４７０は、以下に説明する動作を実現するように構成された専用のハードウェアによって実現されていてもよい。なお、機器ＩＤ４４１は、機器１０１に一意に付与された識別子である。機器ＩＤ４４１は、機器１０１のメーカによって独自に付与されてもよいし、或いは、原則としてネットワーク上で一意に割り当てられる物理アドレス（いわゆるＭＡＣアドレス）であってもよい。
【００７１】
なお、図４では、コンピュータプログラム４４２が格納されているメモリ４４０に機器ＩＤ４４１が格納されているとした。しかしながらこれは、処理回路４７０の構成の一例である。例えば、コンピュータプログラム４４２がＲＡＭ又はＲＯＭに格納され、機器ＩＤ４４１がフラッシュメモリに格納されてもよい。
【００７２】
入出力回路４１０は、処理回路４７０が処理した結果を出力する。また、入出力回路４１０は、入力されたアナログ信号をデジタルデータに変換してバス３３０に送信する。
【００７３】
通信回路４５０は、有線通信又は無線通信を介して、他の装置（例えばローカルサーバ１０２）と通信を行う回路である。限定されるものではないが、本実施の形態では、通信回路４５０は、ネットワークを介して他の装置と通信を行い、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。通信回路４５０は、処理回路４７０によって生成されたログ情報及びＩＤ情報をローカルサーバ１０２に送信する。また、通信回路４５０は、ローカルサーバ１０２より受信した信号を、バス４６０を通じて処理回路４７０に送信する。
【００７４】
機器１０１は、図示される構成要素以外にも、機器１０１に要求される機能を実現するための他の構成要素も含み得る。
【００７５】
図５は、ローカルサーバ１０２のハードウェア構成の一例を示す。ローカルサーバ１０２は、音声入出力装置２４０、機器１０１及び情報通信ネットワーク２２０の間のゲートウェイを構成する。図５に示されるように、ローカルサーバ１０２は、第一通信回路５５１と、第二通信回路５５２と、処理回路５７０と、音響モデルＤＢ（データベース；Ｄａｔａ  Ｂａｓｅ）５８０と、言語モデルＤＢ５８１と、音声素片ＤＢ５８２と、韻律制御ＤＢ５８３と、ローカル辞書ＤＢ５８４と、応答生成ＤＢ５８５とを、構成要素として備えている。これらの構成要素は、バス５６０で相互に接続されており、互いの間でデータ及び命令の授受を行うことが可能である。
【００７６】
処理回路５７０は、音響モデルＤＢ５８０、言語モデルＤＢ５８１、音声素片ＤＢ５８２、韻律制御ＤＢ５８３、ローカル辞書ＤＢ５８４及び応答生成ＤＢ５８５に接続されており、これらのＤＢに格納された管理情報の取得及び編集を行うことができる。なお、本実施形態では、音響モデルＤＢ５８０、言語モデルＤＢ５８１、音声素片ＤＢ５８２、韻律制御ＤＢ５８３、ローカル辞書ＤＢ５８４及び応答生成ＤＢ５８５は、ローカルサーバ１０２の内部の構成要素であるが、ローカルサーバ１０２の外部に設けられていてもよい。その場合には、各ＤＢ及びローカルサーバ１０２の構成要素の間の接続手段には、バス５６０に加えて、インターネット回線、有線又は無線ＬＡＮ等の通信回線が含まれ得る。
【００７７】
第一通信回路５５１は、有線通信又は無線通信を介して、他の装置（例えば音声入出力装置２４０及び機器１０１）と通信を行う回路である。限定されるものではないが、本実施の形態では、第一通信回路５５１は、ネットワークを介して他の装置と通信を行い、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。第一通信回路５５１は、処理回路５７０によって生成されたログ情報及びＩＤ情報を音声入出力装置２４０及び機器１０１に送信する。また、第一通信回路５５１は、音声入出力装置２４０及び機器１０１より受信した信号を、バス５６０を通じて処理回路５７０に送信する。
【００７８】
第二通信回路５５２は、有線通信又は無線通信を介して、クラウドサーバ１１１と通信を行う回路である。第二通信回路５５２は、有線通信又は無線通信を介して、通信網に接続し、さらに、通信網を介してクラウドサーバ１１１と通信する。本実施の形態では、通信網は、情報通信ネットワーク２２０である。第二通信回路５５２は、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。第二通信回路５５２は、クラウドサーバ１１１との間で、種々の情報を送受信する。
【００７９】
処理回路５７０は、ＣＰＵ５３０と、一意に識別可能なゲートウェイＩＤ（以下、ＧＷ−ＩＤとも呼ぶ）５４１及びコンピュータプログラム５４２を格納したメモリ５４０との組み合わせによって実現され得る。ＣＰＵ５３０は、ローカルサーバ１０２の動作を制御するが、音声入出力装置２４０及び機器１０１の動作も制御してもよい。ゲートウェイＩＤ５４１は、ローカルサーバ１０２に一意に付与された識別子である。ゲートウェイＩＤ５４１は、ローカルサーバ１０２のメーカによって独自に付与されてもよいし、或いは、原則としてネットワーク上で一意に割り当てられる物理アドレス（いわゆるＭＡＣアドレス）であってもよい。ＣＰＵ５３０は、メモリ５４０に展開されたコンピュータプログラム５４２に記述された命令群を実行し、種々の機能を実現することができる。コンピュータプログラム５４２には、ローカルサーバ１０２の動作を実現するための命令群が記述されている。上述のコンピュータプログラム５４２は、製品としてのローカルサーバ１０２のメモリ５４０に予め格納されていてもよい。又は、コンピュータプログラム５４２は、ＣＤ−ＲＯＭ等の記録媒体に記録されて製品として市場に流通され、若しくは、インターネット等の電気通信回線を通じて伝送され、記録媒体又は電気通信回線を通じて取得されたコンピュータプログラム５４２がメモリ５４０に格納されてもよい。ここで、処理回路５７０又はＣＰＵ５３０は、第１プロセッサの一例である。
【００８０】
或いは、処理回路５７０は、以下に説明する動作を実現するように構成された専用のハードウェアによって実現されていてもよい。ローカルサーバ１０２は、図示される構成要素以外にも、ローカルサーバ１０２に要求される機能を実現するための他の構成要素も含み得る。
【００８１】
なお、図５では、コンピュータプログラム５４２が格納されているメモリ５４０にゲートウェイＩＤ５４１が格納されているとした。しかしながらこれは、処理回路５７０の構成の一例である。例えば、コンピュータプログラム５４２がＲＡＭ又はＲＯＭに格納され、ゲートウェイＩＤ５４１がフラッシュメモリに格納されてもよい。
【００８２】
音響モデルＤＢ５８０は、音声の波形などの周波数パターン及び音声に対応する文字列等を含む種々の音響モデルを登録している。言語モデルＤＢ５８１は、単語とその並び方等を含む種々の言語モデルを登録している。音声素片ＤＢ５８２は、音素等を単位とし且つ音声の特徴を表現した種々の音声素片を登録している。韻律制御ＤＢ５８３は、文字列の韻律を制御するための種々の情報を登録している。ローカル辞書ＤＢ５８４は、種々の文字列と、文字列それぞれに対応する意味タグとを対応付けて登録している。文字列は、単語、文節などのフレーズ等で構成される。意味タグとは、ある文字列の意味を表す論理表現を指す。例えば、文字列の意味が同一の文字列が複数ある場合には、それらの複数の文字列に同一の意味タグが共通して設定される。例えば、意味タグは、タスク対象の名称、タスク対象へのタスク内容等を、キーワードとして示す。例えば、図１１を参照すると、文字列と、文字列に対応する意味タグとの組み合わせの例が示されている。応答生成ＤＢ５８５は、種々の意味タグと、種々の意味タグに対応する機器１０１の制御コマンドとを、対応付けて登録している。応答生成ＤＢ５８５は、制御コマンド等に対応する応答メッセージの文字列つまりテキスト情報を、意味タグ及び制御コマンドに対応付けて登録している。ここで、意味タグは、意味情報の一例であり、ローカル辞書ＤＢ５８４は、第１データベースの一例である。
【００８３】
図６は、クラウドサーバ１１１のハードウェア構成の一例を示す。図６に示されるように、クラウドサーバ１１１は、通信回路６５０と、処理回路６７０と、クラウド辞書ＤＢ６９０と、応答生成ＤＢ６９１とを、構成要素として備えている。これらの構成要素は、バス６８０で相互に接続されており、互いの間でデータ及び命令を授受することが可能である。
【００８４】
処理回路６７０は、ＣＰＵ６７１と、プログラム６７３を格納したメモリ６７２とを有している。ＣＰＵ６７１は、クラウドサーバ１１１の動作を制御する。ＣＰＵ６７１は、メモリ６７２に展開されたコンピュータプログラム６７３に記述された命令群を実行する。これにより、ＣＰＵ６７１は種々の機能を実現することができる。コンピュータプログラム６７３には、クラウドサーバ１１１が後述する動作を実現するための命令群が記述されている。上述のコンピュータプログラム６７３は、ＣＤ−ＲＯＭ等の記録媒体に記録されて製品として市場に流通され、又は、インターネット等の電気通信回線を通じて伝送され得る。図６に示すハードウェアを備えた装置（例えばＰＣ）は、当該コンピュータプログラム６７３を読み込むことにより、本実施形態によるクラウドサーバ１１１として機能し得る。ここで、処理回路６７０又はＣＰＵ６７１は、第２プロセッサの一例である。
【００８５】
処理回路６７０は、クラウド辞書ＤＢ６９０と応答生成ＤＢ６９１とに接続されており、これらのＤＢに格納された管理情報の取得及び編集を行うことができる。なお、本実施形態では、クラウド辞書ＤＢ６９０及び応答生成ＤＢ６９１は、クラウドサーバ１１１の内部の構成要素であるが、クラウドサーバ１１１の外部に設けられていてもよい。その場合には、各ＤＢ及びクラウドサーバ１１１の構成要素の間の接続手段には、バス６８０に加えて、インターネット回線、有線又は無線ＬＡＮ等の通信回線が含まれ得る。
【００８６】
通信回路６５０は、有線通信又は無線通信を介して、他の通信機器（例えばローカルサーバ１０２）と通信を行う回路である。通信回路６５０は、有線通信又は無線通信を介して、通信網に接続し、さらに、通信網を介して他の装置（例えば、ローカルサーバ１０２）と通信する。本実施の形態では、通信網は、情報通信ネットワーク２２０である。通信回路６５０は、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。
【００８７】
クラウド辞書ＤＢ６９０は、ローカル辞書ＤＢ５８４と同様に、種々の文字列と、文字列それぞれに対応する意味タグとを対応付けて登録している。文字列は、単語、文節等で構成されている。クラウド辞書ＤＢ６９０は、ローカル辞書ＤＢ５８４よりも遥かに多くの文字列及び意味タグの組み合わせを登録している。さらに、クラウド辞書ＤＢ６９０は、登録されている文字列が、ローカル辞書ＤＢ５８４に登録された文字列であるか否かの情報であるローカル対応情報も登録している。複数のローカルサーバ１０２がある場合、クラウド辞書ＤＢ６９０は、ローカルサーバ１０２それぞれのゲートウェイＩＤに対応したローカル対応情報を登録してもよい。例えば、図１１を参照すると、文字列と、文字列に対応する意味タグと、文字列に対するローカル対応情報との組み合わせの例が示されている。応答生成ＤＢ６９１は、ローカルサーバ１０２の応答生成ＤＢ５８５と同様の構成を有している。ここで、クラウド辞書ＤＢ６９０は、第２データベースの一例である。
【００８８】
次いで、音声入出力装置２４０、機器１０１、ローカルサーバ１０２及びクラウドサーバ１１１について、システム構成の観点から説明する。図７は、音声入出力装置２４０のシステム構成の一例を示すブロック図である。図７に示されるように、音声入出力装置２４０は、集音部７００と、音声検出部７１０と、音声区間切り出し部７２０と、通信部７３０と、音声出力部７４０とを備える。
【００８９】
集音部７００は、図３の集音回路３０１に対応する。集音部７００は、ユーザの音声を収集してアナログ音声信号を生成し、生成したアナログ音声信号をデジタルデータに変換し、変換したデジタルデータから音声信号を生成する。
【００９０】
音声検出部７１０及び音声区間切り出し部７２０は、図３の処理回路３００により実現される。コンピュータプログラム３４２を実行したＣＰＵ３１０は、ある時点では、例えば音声検出部７１０として機能し、異なる他の一時点では音声区間切り出し部７２０として機能する。なお、これら２つの構成要素のうち、少なくとも１つが、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）などの専用の処理を行うハードウェアによって実現されてもよい。
【００９１】
音声検出部７１０は、音声を検出したかどうかを判定する。例えば、検出した音声のレベルが所定値以下の場合には、音声検出部７１０は音声を検出していないと判断する。音声区間切り出し部７２０は、取得した音声信号の中から音声が存在する区間を検出する。例えば、当該区間は、時間区間である。
【００９２】
通信部７３０は、図３の通信回路３０３に対応する。通信部７３０は、ネットワーク等の有線通信又は無線通信を介して、音声入出力装置２４０の他の装置（例えばローカルサーバ１０２）と通信を行う。通信部７３０は、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。通信部７３０は、音声区間切り出し部７２０が検出した音声区間の音声信号を、他の装置に送信する。また、通信部７３０は、他の装置から受信した音声信号を音声出力部７４０に受け渡す。
【００９３】
音声出力部７４０は、図３の音声出力回路３０２に対応する。音声出力部７４０は、通信部７３０が受信した音声信号をアナログ音声信号に変換し、そのアナログ音声信号を出力する。
【００９４】
図８は、機器１０１のシステム構成の一例を示すブロック図である。図８に示されるように、機器１０１は、通信部８００と、機器制御部８１０とを備える。
【００９５】
通信部８００は、図４の通信回路４５０に対応する。通信部８００は、ネットワーク等の有線通信又は無線通信を介して、機器１０１の他の装置（例えばローカルサーバ１０２）と通信を行う。通信部８００は、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。
【００９６】
機器制御部８１０は、図４の入出力回路４１０及び処理回路４７０に対応する。機器制御部８１０は、通信部８００が受信した制御データを読み込み、機器１０１の動作を制御する。また、機器制御部８１０は、機器１０１の動作の制御上での処理結果の出力を制御する。例えば、機器制御部８１０は、通信部８００が受信した制御データの処理回路４７０による読み込み及び処理、入出力回路４１０の入出力制御等を実施する。
【００９７】
図９は、ローカルサーバ１０２のシステム構成の一例を示すブロック図である。図９に示されるように、ローカルサーバ１０２は、通信部９００と、受信データ解析部９１０と、音声認識部９２０と、ローカル辞書照合部９３０と、応答生成部９４０と、音声合成部９５０と、送信データ生成部９６０とを備える。
【００９８】
通信部９００は、図５の第一通信回路５５１及び第二通信回路５５２に対応する。通信部９００は、ネットワーク等の有線通信又は無線通信を介して、ローカルサーバ１０２の他の装置（例えば音声入出力装置２４０及び機器１０１）と通信を行う。通信部９００はまた、有線通信又は無線通信を介して、情報通信ネットワーク２２０等の通信網に接続し、さらに、通信網を介してクラウドサーバ１１１とも通信する。通信部９００は、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。通信部９００は、他の装置及びクラウドサーバ１１１等から受信したデータを受信データ解析部９１０に受け渡す。また、通信部９００は、送信データ生成部９６０が生成したデータを、他の装置及びクラウドサーバ１１１等に送信する。
【００９９】
受信データ解析部９１０は、図５の処理回路５７０に対応する。受信データ解析部９１０は、通信部９００が受信したデータの種別を解析する。また、受信データ解析部９１０は、受信したデータの種別を解析した結果、ローカルサーバ１０２内部にて更なる処理を行うか、それとも他の装置にデータを送信すべきかを判断する。前者の場合、受信データ解析部９１０は、受信したデータを音声認識部９２０等に受け渡す。後者の場合、受信データ解析部９１０は、次に送信すべき装置と、当該装置に送信すべきデータとの組み合わせを決定する。
【０１００】
音声認識部９２０は、図５の処理回路５７０と、音響モデルＤＢ５８０と、言語モデルＤＢ５８１とにより実現される。音声認識部９２０は、音声信号から、文字列データに変換する。具体的には、音声認識部９２０は、予め登録された音響モデルの情報を音響モデルＤＢ５８０より取得し、音響モデルと音声データの周波数特性とから、音声データを音素データに変換する。さらに、音声認識部９２０は、予め登録された言語モデルの情報を言語モデルＤＢ５８１より取得し、言語モデルと音素データの並び方とから、音素データを特定の文字列データに変換する。音声認識部９２０は、変換した文字列データをローカル辞書照合部９３０に引き渡す。
【０１０１】
ローカル辞書照合部９３０は、図５の処理回路５７０と、ローカル辞書ＤＢ５８４とにより実現される。ローカル辞書照合部９３０は、文字列データから、意味タグに変換する。意味タグとは、具体的には、制御対象となる機器及びタスク内容等を指すキーワードである。ローカル辞書照合部９３０は、受信した文字列データと、ローカル辞書ＤＢ５８４とを照合することで、当該文字列データと一致した意味タグを抽出する。なお、ローカル辞書ＤＢ５８４には、単語等の文字列と、文字列に対応する意味タグとが、対応付けられて収納されている。受信した文字列に一致する文字列を、ローカル辞書ＤＢ５８４内で探索することによって、受信した文字列と一致する、つまり適合する意味タグが抽出される。
【０１０２】
応答生成部９４０は、図５の処理回路５７０と、応答生成ＤＢ５８５とにより実現される。応答生成部９４０は、ローカル辞書照合部９３０から受け取る意味タグと応答生成ＤＢ５８５とを照合し、意味タグと対応する制御コマンドに基づき、制御対象となる機器１０１を制御する制御信号を生成する。さらに、応答生成部９４０は、照合結果に基づき、ユーザ５１００に提供すべきテキスト情報の文字列データを生成する。
【０１０３】
音声合成部９５０は、図５の処理回路５７０と、音声素片ＤＢ５８２と、韻律制御ＤＢ５８３とにより実現される。音声合成部９５０は、文字列データから、音声信号に変換する。具体的には、音声合成部９５０は、予め登録された音声素片モデル及び韻律制御モデルの情報をそれぞれ、音声素片ＤＢ５８２及び韻律制御ＤＢ５８３より取得し、音声素片モデル、韻律制御モデル及び文字列データから、文字列データを特定の音声信号に変換する。
【０１０４】
送信データ生成部９６０は、図５の処理回路５７０に対応する。送信データ生成部９６０は、受信データ解析部９１０が決定した、次に送信すべき装置及び当該装置に送信すべきデータの組み合わせから、送信データを生成する。
【０１０５】
図１０は、クラウドサーバ１１１のシステム構成の一例を示すブロック図である。図１０に示されるように、クラウドサーバ１１１は、通信部１０００と、クラウド辞書照合部１０２０と、応答生成部１０３０とを備える。
【０１０６】
通信部１０００は、図６の通信回路６５０に対応する。通信部１０００は、ネットワーク等の有線通信又は無線通信を介して、情報通信ネットワーク２２０等の通信網に接続し、さらに、通信網を介して、他の装置（例えばローカルサーバ１０２）と通信を行う。通信部１０００は、例えばイーサネット（登録商標）規格に準拠したネットワーク等の有線ＬＡＮを介して通信を行う。
【０１０７】
クラウド辞書照合部１０２０は、図６の処理回路６７０と、クラウド辞書ＤＢ６９０とにより実現される。クラウド辞書照合部１０２０は、文字列データから、意味タグに変換し、さらに、文字列の同義語がローカル辞書ＤＢ５８４に登録されているか否かを照合する。文字列の同義語とは、意味タグが共通する文字列である。具体的には、クラウド辞書照合部１０２０は、受信した文字列データと、クラウド辞書ＤＢ６９０とを照合することで、当該文字列データと一致つまり適合した意味タグを抽出する。さらに、クラウド辞書照合部１０２０は、抽出した意味タグを用いて、クラウド辞書ＤＢ６９０と照合することで、同一の意味タグが与えられた他の文字列を抽出する。さらに、クラウド辞書照合部１０２０は、抽出した文字列のうちのローカル辞書ＤＢ５８４に登録されている文字列を出力し、その文字列データと、当該文字列データに対応するつまり適合する意味タグとを応答生成部１０３０に引き渡す。
【０１０８】
応答生成部１０３０は、図６の処理回路６７０と、応答生成ＤＢ６９１とにより実現される。応答生成部１０３０は、受け取った意味タグを応答生成ＤＢ６９１に照合し、意味タグと対応する制御コマンドに基づき、制御対象となる機器１０１を制御する制御信号を生成する。さらに、応答生成部１０３０は、照合結果に基づき、ユーザ５１００に提供すべきテキスト情報の文字列データを生成する。
【０１０９】
図１１は、クラウド辞書ＤＢ６９０の具体例を示す図である。クラウド辞書ＤＢ６９０には、単語等の文字列、意味タグ、及びローカル対応情報が、互いに関連付けられて保持されている。ローカル対応情報は、図１１において、ローカル辞書ＤＢ登録の有無と記載された情報であり、文字列及び意味タグの組み合わせそれぞれについて、文字列がローカル辞書ＤＢ５８４に登録されているか否かという情報である。なお、ローカル辞書ＤＢ５８４には、文字列及び意味タグが、互いに関連付けられて保持されている。
【０１１０】
［２−２−１．実施の形態に係る音声対話エージェントシステムの動作］
次いで、音声対話エージェントシステム１の動作に関して、端末側つまりローカルサーバ１０２で高速に応答可能な発話フレーズをレコメンドする処理の流れを説明する。図１２及び図１３は、音声対話エージェントシステム１による、ローカル側で高速に応答可能な発話フレーズをレコメンドする処理の一連のシーケンスを示す。このシーケンスは、ユーザ５１００が音声により音声入出力装置２４０に何らかの指示を開始したときに開始される。
【０１１１】
ユーザ５１００が音声入出力装置２４０に、マイクロホンなどから音声により指示を入力すると、ステップＳ１５０１において、音声入出力装置２４０はユーザ５１００の音声データを取得する。音声入出力装置２４０の通信回路３０３は、取得した音声データをローカルサーバ１０２に送信する。ローカルサーバ１０２はそれらのデータを受信する。ここで、上記音声データは、第１音声情報の一例である。
【０１１２】
次いで、ステップＳ１５０２において、ローカルサーバ１０２は、音声入出力装置２４０から音声データを受信し、音声データの音声認識処理を行う。音声認識処理とは、ローカルサーバ１０２が有する音声認識部９２０によってユーザの音声を認識する処理である。具体的には、ローカルサーバ１０２は、音響モデルＤＢ５８０及び言語モデルＤＢ５８１に登録された音響モデル及び言語モデルの情報を保持している。ユーザ５１００が音声入出力装置２４０に音声を入力すると、ローカルサーバ１０２のＣＰＵ５３０は、ユーザ５１００の音声から周波数特性を抽出し、音響モデルＤＢ５８０に保持されている音響モデルから、抽出した周波数特性に対応する音素データを抽出する。次に、ＣＰＵ５３０は、抽出した音素データの並び方が、言語モデルＤＢ５８１に保持されている言語モデルのどの文字列データに最も近いかを照合することにより、音素データを特定の文字列データに変換する。この結果、音声データが文字列データに変換される。ここで、上記文字列データは、第１文字列情報の一例である。
【０１１３】
次いで、ステップＳ１５０３において、ローカルサーバ１０２は、文字列データのローカル辞書照合処理を行う。ローカル辞書照合処理とは、ローカルサーバ１０２が有するローカル辞書照合部９３０によって、文字列データを意味タグに変換する処理である。具体的には、ローカルサーバ１０２は、ローカル辞書ＤＢ５８４に登録された辞書の情報を保持している。ローカルサーバ１０２のＣＰＵ５３０は、ステップＳ１５０２において変換された文字列データとローカル辞書ＤＢ５８４とを照合し、当該文字列データに対応する意味タグを出力する。なお、当該文字列データがローカル辞書ＤＢ５８４に登録されていない場合、ＣＰＵ５３０は、当該文字列データを意味タグに変換しない。
【０１１４】
次のステップＳ１５０４において、ローカルサーバ１０２は、文字列データと一致するデータが、ローカル辞書ＤＢ５８４に登録されているか否かを判定する。登録されている場合（ステップＳ１５０４でＹｅｓ）、ローカルサーバ１０２のローカル辞書照合部９３０は、文字列データに対応する特定の意味タグを出力し、処理群ＢのステップＳ１５２０に進む。処理群Ｂは、ローカル辞書ＤＢ５８４に、音声データから変換された文字列データが登録されている場合の処理であり、後述するように、ステップＳ１５２０〜Ｓ１５２１の処理を含む。一方、登録されていない場合（ステップＳ１５０４でＮｏ）、ローカルサーバ１０２のローカル辞書照合部９３０は、文字列データに対応する意味タグがないことを表すエラーを出力する。ローカルサーバ１０２は、文字列データとそのゲートウェイＩＤとを組み合わせてクラウドサーバ１１１に送信し、処理群ＡのステップＳ１５１０に進む。処理群Ａは、ローカル辞書ＤＢ５８４に、音声データから変換された文字列データが登録されていない場合の処理であり、後述するように、ステップＳ１５１０〜Ｓ１５１２の処理を含む。
【０１１５】
処理群ＢのステップＳ１５２０において、ローカルサーバ１０２は、制御コマンド生成処理を行う。制御コマンド生成処理とは、ローカルサーバ１０２が有する応答生成部９４０によって、意味タグから制御コマンドを生成する処理である。具体的には、ローカルサーバ１０２は、応答生成ＤＢ５８５に登録された制御コマンドの情報を保持している。ローカルサーバ１０２のＣＰＵ５３０は、ステップＳ１５０３において変換された意味タグと応答生成ＤＢ５８５とを照合し、意味タグに対応する制御コマンドを出力し、対応する機器１０１に送信する。
【０１１６】
次いで、ステップＳ１５２１において、ローカルサーバ１０２は、応答メッセージ生成処理を行う。応答メッセージ生成処理とは、ローカルサーバ１０２が有する応答生成部９４０によって、応答メッセージを生成する処理である。具体的には、ローカルサーバ１０２は、応答生成ＤＢ５８５に登録された応答メッセージの情報を保持している。ローカルサーバ１０２のＣＰＵ５３０は、ステップＳ１５０３において変換された意味タグと応答生成ＤＢ５８５とを照合し、制御コマンドに対応する応答メッセージのような意味タグに対応する応答メッセージを出力する。例えば、意味タグが、図１１に示される「ｈｅａｔｅｒ＿ｏｎ」の場合、ＣＰＵ５３０は、応答生成ＤＢ５８５に保存された応答メッセージ「暖房をつけます」を出力する。
【０１１７】
さらに、ステップＳ１５２２において、ローカルサーバ１０２は、音声合成処理を行う。音声合成処理とは、ローカルサーバ１０２が有する音声合成部９５０が、応答メッセージを音声データに変換する処理である。具体的には、ローカルサーバ１０２は、音声素片ＤＢ５８２に登録された音声素片の情報と、韻律制御ＤＢ５８３に登録された韻律情報とを保持している。ローカルサーバ１０２のＣＰＵ５３０は、音声素片ＤＢ５８２に登録された音声素片の情報と、韻律制御ＤＢに登録された韻律情報とを読み込み、応答メッセージの文字列データから特定の音声データに変換する。ローカルサーバ１０２は、ステップＳ１５２２にて変換した音声データを、音声入出力装置２４０に送信する。音声入出力装置２４０は、音声データを音声に変換し、スピーカなどからユーザ５１００に出力する。
【０１１８】
また、図１３に示すように、処理群Ａでは、ステップＳ１５１０において、クラウドサーバ１１１は、ローカルサーバ１０２から受け取った文字列データのクラウド辞書照合処理を行う。クラウド辞書照合処理とは、クラウドサーバ１１１が有するクラウド辞書照合部１０２０によって、文字列を意味タグに変換する処理である。具体的には、クラウドサーバ１１１は、クラウド辞書ＤＢ６９０に登録された辞書の情報を保持している。クラウドサーバ１１１のＣＰＵ６７１は、ステップＳ１５０２において変換された文字列データとクラウド辞書ＤＢ６９０とを照合し、当該文字列データに対応する意味タグを出力する。このようにクラウド辞書ＤＢ６９０には、ローカル辞書ＤＢ５８４に登録されている文字列データだけなく、ローカル辞書ＤＢ５８４に登録されていない種々の文字列データが登録されている。クラウド辞書照合処理の詳細は、後述する。
【０１１９】
次いで、ステップＳ１５１１において、クラウドサーバ１１１は、制御コマンド生成処理を行う。制御コマンド生成処理とは、クラウドサーバ１１１が有する応答生成部１０３０によって、意味タグから制御コマンドを生成する処理である。具体的には、クラウドサーバ１１１は、応答生成ＤＢ６９１に登録された制御コマンドの情報を保持している。クラウドサーバ１１１のＣＰＵ６７１は、ステップＳ１５１０において変換された意味タグと応答生成ＤＢ６９１とを照合し、意味タグに対応する制御コマンドを出力する。
【０１２０】
さらに、ステップＳ１５１２において、クラウドサーバ１１１は、応答メッセージ生成処理を行う。応答メッセージ生成処理とは、クラウドサーバ１１１が有する応答生成部１０３０によって、意味タグから応答メッセージを生成する処理である。具体的には、クラウドサーバ１１１は、応答生成ＤＢ６９１に登録された応答メッセージの情報を保持している。クラウドサーバ１１１のＣＰＵ６７１は、ステップＳ１５１０において変換された意味タグと応答生成ＤＢ６９１とを照合し、意味タグ等に対応する応答メッセージを出力する。ステップＳ１５１２で生成される応答メッセージは、後述するレコメンドメッセージを含むが、ステップＳ１５２１で生成されるような制御コマンドに対応するメッセージも含んでもよい。
【０１２１】
クラウドサーバ１１１は、ステップＳ１５１１にて生成した制御コマンドと、ステップＳ１５１２にて生成した応答メッセージとを、対象とするローカルサーバ１０２のゲートウェイＩＤとともに、当該ローカルサーバ１０２に送信する。ローカルサーバ１０２は、受信した制御コマンドを、機器１０１に送信する。なお、クラウドサーバ１１１は、制御コマンドの代わりに、又は、制御コマンドに加えて、ステップＳ１５１０において出力された意味タグを、ローカルサーバ１０２に送信してもよい。
【０１２２】
次いで、ローカルサーバ１０２は、ステップＳ１５１３において、音声合成処理を行う。音声合成処理とは、ローカルサーバ１０２が有する音声合成部９５０が、応答メッセージを音声データに変換する処理であり、ステップＳ１５２２の処理と同様である。ローカルサーバ１０２のＣＰＵ５３０は、応答メッセージの文字列データから特定の音声データに変換する。ローカルサーバ１０２は、ステップＳ１５１３にて変換した音声データを、音声入出力装置２４０に送信する。なお、ローカルサーバ１０２がクラウドサーバ１１１から受信する応答メッセージに、制御コマンドに対応するメッセージが含まれていない場合、ローカルサーバ１０２は、制御コマンドと応答生成ＤＢ５８５とを照合して制御コマンドに対応するメッセージを取得し、取得したメッセージの音声合成処理を行ってもよい。音声入出力装置２４０は、音声データを音声に変換し、スピーカなどからユーザ５１００に出力する。
【０１２３】
ここで、図１４及び図１５を参照して、ステップＳ１５１０のクラウド辞書照合処理の詳細を説明する。図１４は、ステップＳ１５１０のクラウド辞書照合処理のフローチャートである。図１５は、実施の形態に係る音声対話エージェントシステム１における各種情報の流れを示す図である。
【０１２４】
ステップＳ１４１０において、クラウドサーバ１１１は、ローカルサーバ１０２より文字列データを受信する。
【０１２５】
次いで、ステップＳ１４２０において、クラウドサーバ１１１は、文字列データを意味タグに変換する処理を行う。具体的には、クラウドサーバ１１１のＣＰＵ６７１は、文字列データとクラウド辞書ＤＢ６９０とを照合し、文字列データに対応する意味タグを出力する。
【０１２６】
さらに、ステップＳ１４３０において、クラウドサーバ１１１は、ステップＳ１４２０にて出力した意味タグと同一の意味タグが与えられた他の文字列が、クラウド辞書ＤＢ６９０に登録されているかどうかを判定する。当該他の文字列は、クラウドサーバ１１１がローカルサーバ１０２より受信した文字列と異なる文字列である。
【０１２７】
ステップＳ１４３０での判定の結果、登録されている場合（ステップＳ１４３０でＹｅｓ）、ステップＳ１４４０において、クラウドサーバ１１１は、意味タグが同一の当該他の文字列のうち、ローカル辞書ＤＢ５８４に登録されている文字列があるかどうかを判定する。一方、登録されていない場合（ステップＳ１４３０でＮｏ）、クラウドサーバ１１１は、ステップＳ１４２０での意味タグの出力を行い、クラウド辞書照合処理を終了する。
【０１２８】
ステップＳ１４４０での判定の結果、登録されている場合（ステップＳ１４４０でＹｅｓ）、ステップＳ１４５０において、クラウドサーバ１１１は、ローカル辞書ＤＢ５８４に登録されている文字列のリストを、レコメンド対象として出力する。一方、登録されていない場合（ステップＳ１４４０でＮｏ）、クラウドサーバ１１１は、ステップＳ１４２０での意味タグの出力を行い、クラウド辞書照合処理を終了する。
【０１２９】
例えば、クラウドサーバ１１１は、ステップＳ１４１０において「寒くて震える」という文字列データを受信する。この文字列データは、図１２のステップＳ１５０３のローカル辞書照合処理の結果、ローカルサーバ１０２のローカル辞書ＤＢ５８４に登録されていないと判定されたため、クラウドサーバ１１１に送信されたものである。
【０１３０】
クラウドサーバ１１１は、ステップＳ１４２０において、文字列「寒くて震える」と、図１１に示すクラウド辞書ＤＢ６９０の文字列リストである「文字列」の列とを照合する。その結果、クラウドサーバ１１１は、文字列「寒くて震える」を、これに対応する意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞に変換する。この際、クラウドサーバ１１１は、文字列「寒くて震える」と完全に一致する文字列を、クラウド辞書ＤＢ６９０から抽出してもよく、文字列「寒くて震える」と同義語の文字列を、クラウド辞書ＤＢ６９０から抽出してもよく、文字列「寒くて震える」の一部の文字列、例えば、「震える」と一致する文字列を、クラウド辞書ＤＢ６９０から抽出してもよい。そして、クラウドサーバ１１１は、抽出した文字列に対応する意味タグを、文字列データ「寒くて震える」の意味タグと認める。
【０１３１】
さらに、クラウドサーバ１１１は、ステップＳ１４３０において、意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞が与えられた他の文字列が、クラウド辞書ＤＢ６９０に登録されているかどうかを判定する。具体的には、クラウドサーバ１１１は、図１１に示すクラウド辞書ＤＢ６９０の「意味タグ」の列を照合し、文字列「暖房」、「暖かくして」及び「超寒い」が、同じ意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞が付与されていると判定する。
【０１３２】
次いで、クラウドサーバ１１１は、ステップＳ１４４０において、文字列「暖房」、「暖かくして」及び「超寒い」のうち、どの文字列がローカル辞書ＤＢ５８４に登録されているかを判定する。クラウドサーバ１１１は、図１１に示すクラウド辞書ＤＢ６９０の「ローカル辞書ＤＢ登録の有無」の列を照合し、文字列「暖房」及び「暖かくして」がローカル辞書ＤＢ５８４にも登録されていると判定する。
【０１３３】
その後、クラウドサーバ１１１は、ステップＳ１４５０において、文字列「暖房」及び「暖かくして」を、レコメンド対象として出力する。ここで、レコメンド対象は、推奨文字情報の一例である。このようにして、クラウドサーバ１１１は、クラウド辞書照合処理において、ローカルサーバ１０２より受信した文字列データに対応する意味タグを出力し、当該意味タグに対応し且つローカル辞書ＤＢ５８４に登録されている文字列のリストを出力する。ここで、上記文字列は、第２文字列情報の一例である。
【０１３４】
クラウドサーバ１１１は、図１３のステップＳ１５１２の応答メッセージ生成処理にて、文字列「暖房」及び／又は「暖かくして」を発話フレーズとしてレコメンドするレコメンドメッセージを含む応答メッセージを生成する。具体的には、クラウドサーバ１１１は、例えば、「次回からは『暖房』又は『暖かくして』と言うと、より速いですよ」というレコメンドメッセージを生成する。ここで、レコメンドメッセージは、推奨文字情報の一例である。クラウドサーバ１１１は、生成した応答メッセージを、文字列「寒くて震える」の意味タグに対応する制御コマンド＜ｃｏｍｍａｎｄ＿１＞及びゲートウェイＩＤとともに、ローカルサーバ１０２に送信する。ローカルサーバ１０２は、ステップＳ１５１３の音声合成処理にて、受信した応答メッセージ「次回からは『暖房』又は『暖かくして』と言うと、より速いですよ」を音声データに変換し、音声入出力装置２４０に送信する。ここで、応答メッセージは、第２音声情報の一例である。
【０１３５】
以上、実施の形態に係る音声対話エージェントシステム１は、ユーザがクラウド側の辞書にのみ登録された発話フレーズを発話した場合に、同様の処理を行うことができるローカル側の辞書に登録された発話フレーズをユーザにレコメンドすることで、ユーザが機器制御を行う際のレスポンス向上を図ることができる。そして、実施の形態では、当該発話フレーズをレコメンドするレコメンドメッセージが、クラウド側で生成される。
【０１３６】
なお、実施の形態において、クラウドサーバ１１１が、応答生成ＤＢ６９１を備えていなくてもよい。この場合、クラウドサーバ１１１は、処理群Ａの処理において、ローカルサーバ１０２から受信する文字列に対応する意味タグと、当該意味タグに対応し且つローカル辞書ＤＢ５８４に登録されている文字列のリストとを出力し、ローカルサーバ１０２に送信してよい。ローカルサーバ１０２は、受信した意味タグと応答生成ＤＢ５８５とを照合して、制御コマンドを生成し、受信した文字列のリストからレコメンドメッセージを含む応答メッセージを生成してもよい。
【０１３７】
［２−２−２．音声対話エージェントシステムの動作の変形例１］
図１６〜図１９を参照して、音声対話エージェントシステム１の動作における処理群Ａの処理の変形例１を説明する。本変形例について、実施の形態と異なる点を中心に説明する。なお、図１６は、変形例１に係る音声対話エージェントシステム１による発話内容をレコメンドする通信処理のうちの処理群Ａに関するシーケンス図である。図１７は、変形例１に係るクラウドサーバ１１１上でのクラウド辞書照合処理のフローチャートである。図１８は、変形例１に係る音声対話エージェントシステム１における各種情報の流れを示す図である。図１９は、変形例１に係るローカルサーバ１０２上での文字列照合処理のフローチャートである。
【０１３８】
図１６を参照すると、処理群ＡのステップＳ１５１０１において、クラウドサーバ１１１は、図１３のステップＳ１５１０の処理と同様に、ローカルサーバ１０２から受け取った文字列データのクラウド辞書照合処理を行い、当該文字列データに対応する意味タグを出力する。
【０１３９】
ここで、図１７及び図１８を参照すると、本変形例のクラウド辞書照合処理では、クラウドサーバ１１１は、図１４に示されるステップＳ１４１０及びＳ１４２０の処理のみを行う。具体的には、クラウドサーバ１１１は、ステップＳ１４１０及びＳ１４２０において、ローカルサーバ１０２から受信した文字列データを、クラウド辞書ＤＢ６９０と照合し、当該文字列データに対応する意味タグを出力する。例えば、図１８に示すように、クラウドサーバ１１１は、文字列データ「寒くて震える」を受信し、これに対応する意味タグとして、意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞を出力する。よって、クラウドサーバ１１１は、クラウド辞書照合処理において、ローカルサーバ１０２より受信した文字列データに対応する意味タグのみを出力する。
【０１４０】
図１６に戻り、ステップＳ１５１０１に次ぐステップＳ１５１１において、クラウドサーバ１１１は、ステップＳ１５１０１において出力された意味タグと応答生成ＤＢ６９１とを照合し、意味タグに対応する制御コマンドを出力する。クラウドサーバ１１１は、制御コマンドを、対象とするローカルサーバ１０２のゲートウェイＩＤとともに、当該ローカルサーバ１０２に送信する。なお、クラウドサーバ１１１は、制御コマンドに加えて、又は制御コマンドの代わりに、ステップＳ１５１０１において出力された意味タグをローカルサーバ１０２に送信してもよい。クラウドサーバ１１１が制御コマンドを送信しない場合、ローカルサーバ１０２は、クラウドサーバ１１１から受信する意味タグに基づき、制御コマンドを生成してもよい。
【０１４１】
その後、ステップＳ１５１３１において、ローカルサーバ１０２は、制御コマンドに基づく文字列照合処理を行う。文字列照合処理は、制御コマンドに対応する意味タグを、ローカル辞書ＤＢ５８４と照合し、ローカル辞書ＤＢ５８４に含まれ且つ制御コマンドに対応する文字列を、レコメンド対象として出力する処理である。具体的には、ローカルサーバ１０２の応答生成部９４０が、制御コマンドと応答生成ＤＢ５８５とを照合し、制御コマンドに対応する意味タグを出力する。さらに、ローカルサーバ１０２のローカル辞書照合部９３０が、出力された意味タグとローカル辞書ＤＢ５８４とを照合し、意味タグに対応する文字列を、レコメンド対象として出力する。その後、応答生成部９４０は、レコメンド対象の文字列を推奨するレコメンドメッセージを、実施の形態におけるクラウドサーバ１１１によるレコメンドメッセージの生成と同様に、生成する。また、応答生成部９４０は、制御コマンドと応答生成ＤＢ５８５とを照合し、制御コマンドに対応するメッセージも生成してもよい。このように、ローカルサーバ１０２は、レコメンドメッセージ及び制御コマンドに対応するメッセージのうちの少なくともレコメンドメッセージを含む応答メッセージを生成する。
【０１４２】
より具体的には、図１８及び図１９を参照すると、ステップＳ１５１３１での文字列照合処理は、以下のように説明される。まず、ステップＳ１６１０において、ローカルサーバ１０２は、クラウドサーバ１１１より、意味タグに対応する制御コマンドを受信する。例えば、図１８に示すように、ローカルサーバ１０２は、意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞に対応する制御コマンド＜ｃｏｍｍａｎｄ＿１＞を受信する。
【０１４３】
次いで、ステップＳ１６２０において、ローカルサーバ１０２は、制御コマンドに対応する文字列が、ローカル辞書照合部９３０に登録されているかどうかを判定する。具体的には、ローカルサーバ１０２のＣＰＵ５３０は、制御コマンドと応答生成部９４０とを照合し、制御コマンドに対応する意味タグを出力する。さらに、ＣＰＵ５３０は、出力した意味タグとローカル辞書ＤＢ５８４とを照合し、意味タグに対応する文字列がローカル辞書ＤＢ５８４に登録されているかを判定する。
【０１４４】
ステップＳ１６２０での判定の結果、文字列が登録されている場合（ステップＳ１６２０でＹｅｓ）、ステップＳ１６３０において、ローカルサーバ１０２は、意味タグに対応する文字列のリストを出力する。例えば、図１８に示すように、ローカルサーバ１０２は、制御コマンド＜ｃｏｍｍａｎｄ＿１＞に対応する文字列「暖房」及び「暖かくして」の少なくとも一方を出力する。出力される文字列は、２つ以上でもよい。このように、ローカルサーバ１０２は、制御コマンドに対応し且つローカル辞書ＤＢ５８４に登録されている文字列のリストを出力する。なお、ローカルサーバ１０２は、出力した文字列のリストに基づき、レコメンドメッセージを生成してもよい。さらに、ローカルサーバ１０２は、制御コマンドと応答生成ＤＢ５８５とを照合し、制御コマンドに対応するメッセージを生成してもよい。
【０１４５】
ステップＳ１６２０での判定の結果、文字列が登録されていない場合（ステップＳ１６２０でＮｏ）、ローカルサーバ１０２は、文字列照合処理を終了する。このケースは、制御コマンドが応答生成ＤＢ５８５に登録されていない場合と、制御コマンドに対応する意味タグがローカル辞書ＤＢ５８４に登録されていない場合とを含み得る。このような場合、ローカルサーバ１０２は、機器１０１への制御を停止し、レコメンドメッセージを生成しなくてもよく、制御コマンドに対応するメッセージも生成しなくてもよい。或いは、ローカルサーバ１０２は、ユーザの音声が不適切であることを提示してもよい。
【０１４６】
図１６に戻り、ステップＳ１５１３１に次ぐステップＳ１５１３において、ローカルサーバ１０２は、音声合成処理を行う。ローカルサーバ１０２のＣＰＵ５３０は、応答メッセージの文字列から特定の音声データに変換し、音声入出力装置２４０に送信する。
【０１４７】
以上、変形例１に係る音声対話エージェントシステム１は、ユーザがクラウド側の辞書にのみ登録された発話フレーズを発話した場合に、同様の処理を行うことができるローカル側の辞書に登録された発話フレーズをレコメンドするレコメンドメッセージを、ローカル側で生成する。これにより、クラウドサーバ１１１において、レコメンドメッセージを生成するための処理が、不要である。このようなクラウドサーバ１１１は、ローカルサーバ１０２から受信する文字列データを制御コマンドに変換し、ローカルサーバ１０２に送信する機能を有するだけでもよく、汎用的なクラウドサーバの適用が可能である。
【０１４８】
［２−２−３．音声対話エージェントシステムの動作の変形例２］
図２０〜図２３を参照して、音声対話エージェントシステム１の動作における処理群Ａの処理の変形例２を説明する。本変形例について、実施の形態と異なる点を中心に説明する。なお、図２０は、変形例２に係る音声対話エージェントシステム１による発話内容をレコメンドする通信処理のうちの処理群Ａに関するシーケンス図である。図２１は、変形例２に係るクラウドサーバ１１１上でのクラウド辞書照合処理のフローチャートである。図２２は、変形例２に係る音声対話エージェントシステム１における各種情報の流れを示す図である。図２３は、変形例２に係るローカルサーバ１０２上での文字列照合処理のフローチャートである。
【０１４９】
図２０を参照すると、処理群ＡのステップＳ１５１０２において、クラウドサーバ１１１は、図１３のステップＳ１５１０の処理と同様に、ローカルサーバ１０２から受け取った文字列データのクラウド辞書照合処理を行い、当該文字列データに対応する意味タグを出力する。
【０１５０】
ここで、図２１及び図２２を参照すると、本変形例のクラウド辞書照合処理では、クラウドサーバ１１１は、図１４に示されるステップＳ１４１０、Ｓ１４２０及びＳ１４３０の処理を行う。具体的には、クラウドサーバ１１１は、ステップＳ１４１０及びＳ１４２０において、ローカルサーバ１０２から受信した文字列データを、クラウド辞書ＤＢ６９０と照合し、当該文字列データに対応する意味タグを出力する。例えば、図２２に示すように、クラウドサーバ１１１は、文字列データ「寒くて震える」を受信し、これに対応する意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞を出力する。さらに、ステップＳ１４３０において、クラウドサーバ１１１は、ステップＳ１４２０にて出力した意味タグと同一の意味タグが与えられた他の文字列が、クラウド辞書ＤＢ６９０に登録されているかどうかを判定する。
【０１５１】
ステップＳ１４３０での判定の結果、登録されている場合（ステップＳ１４３０でＹｅｓ）、ステップＳ１４５０２において、クラウドサーバ１１１は、クラウド辞書ＤＢ６９０に登録されている文字列のリストを、レコメンド対象として出力する。登録されていない場合（ステップＳ１４３０でＮｏ）、クラウドサーバ１１１は、ステップＳ１４２０での意味タグの出力を行い、クラウド辞書照合処理を終了する。このように、本変形例では、意味タグに対応し且つクラウド辞書ＤＢ６９０に登録されている全ての文字列が、ローカル辞書ＤＢ５８４に登録されているかの判定が行われずに、レコメンド対象として出力される。例えば、図２２に示すように、クラウドサーバ１１１は、意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞に対応する文字列「暖房」、「暖かくして」及び「超寒い」等を出力する。
【０１５２】
図２０に戻り、ステップＳ１５１０２に次ぐステップＳ１５１１において、クラウドサーバ１１１は、ステップＳ１５１０２において出力された意味タグと応答生成ＤＢ６９１とを照合し、意味タグに対応する制御コマンドを出力する。また、クラウドサーバ１１１は、制御コマンドと応答生成ＤＢ６９１とを照合し、制御コマンドに対応する応答メッセージを出力する。ステップＳ１５１１で生成される応答メッセージは、制御コマンドに対応するメッセージを含み得るが、レコメンドメッセージを含まない。例えば、図２２に示すように、クラウドサーバ１１１は、意味タグ＜ｈｅａｔｅｒ＿ｏｎ＞に対応する制御コマンド＜ｃｏｍｍａｎｄ＿１＞を出力する。
【０１５３】
クラウドサーバ１１１は、ステップＳ１５１０２において出力された文字列リストと、ステップＳ１５１１にて生成した制御コマンドとを、ゲートウェイＩＤとともに、ローカルサーバ１０２に送信する。なお、クラウドサーバ１１１は、制御コマンドに加えて、又は制御コマンドの代わりに、ステップＳ１５１０２において出力された意味タグをローカルサーバ１０２に送信してもよい。例えば、クラウドサーバ１１１が制御コマンドを送信しない又は制御コマンドを生成する機能を有さない場合、ローカルサーバ１０２は、クラウドサーバ１１１から受信する意味タグに基づき、制御コマンドを生成してもよい。
【０１５４】
次いで、ステップＳ１５１３２において、ローカルサーバ１０２は、クラウドサーバ１１１から受信した文字列リストに基づく文字列照合処理を行う。文字列照合処理は、文字列リストに含まれる文字列と、ローカル辞書ＤＢ５８４とを照合し、文字列リスト及びローカル辞書ＤＢ５８４の両方に含まれる文字列を、レコメンド対象として出力する処理である。具体的には、ローカルサーバ１０２のローカル辞書照合部９３０が、文字列リストとローカル辞書ＤＢ５８４とを照合し、レコメンド対象の文字列を出力する。さらに、ローカルサーバ１０２の応答生成部９４０は、応答メッセージとして、レコメンド対象の文字列を推奨するレコメンドメッセージを生成する。また、応答生成部９４０は、クラウドサーバ１１１から受信した制御コマンドと応答生成ＤＢ５８５とを照合し、制御コマンドに対応するメッセージを、応答メッセージとして出力する。
【０１５５】
より具体的には、図２２及び図２３を参照すると、ステップＳ１５１３２での文字列照合処理は、以下のように説明される。まず、ステップＳ１７１０において、ローカルサーバ１０２は、クラウドサーバ１１１より、文字列リストを受信する。例えば、図２２に示すように、ローカルサーバ１０２は、「暖房」、「暖かくして」及び「超寒い」等を含む文字列リストを受信する。
【０１５６】
次いで、ステップＳ１７２０において、ローカルサーバ１０２は、文字列リストの文字列が、ローカル辞書ＤＢ５８４に登録されているかどうかを判定する。具体的には、ローカルサーバ１０２のＣＰＵ５３０は、文字列リストとローカル辞書ＤＢ５８４とを照合し、文字列リストの文字列と同一の文字列がローカル辞書ＤＢ５８４に登録されているかを判定する。
【０１５７】
ステップＳ１７２０での判定の結果、同一の文字列が登録されている場合（ステップＳ１７２０でＹｅｓ）、ステップＳ１７３０において、ローカルサーバ１０２は、ローカル辞書ＤＢ５８４に登録されている文字列のリストを出力する。例えば、図２２に示すように、ローカルサーバ１０２は、文字列「暖房」、「暖かくして」及び「超寒い」のうちから、文字列「暖房」及び／又は「暖かくして」を出力する。出力される文字列は、１つ以上であってよい。さらに、ローカルサーバ１０２は、出力した文字列のリストに基づき、レコメンドメッセージを生成する。例えば、「次回からは『暖房』又は『暖かくして』と言うと、より速いですよ」というレコメンドメッセージが生成される。また、ローカルサーバ１０２は、制御コマンドと応答生成ＤＢ５８５とを照合し、制御コマンドに対応するメッセージを生成してもよい。一方、ステップＳ１７２０での判定の結果、同一の文字列が登録されていない場合（ステップＳ１７２０でＮｏ）、ローカルサーバ１０２は、文字列照合処理を終了する。このような場合、ローカルサーバ１０２は、機器１０１への制御を停止し、ユーザの音声が不適切であることを提示してもよい。
【０１５８】
図２０に戻り、ステップＳ１５１３２に次ぐステップＳ１５１３において、ローカルサーバ１０２は、音声合成処理を行う。ローカルサーバ１０２のＣＰＵ５３０は、レコメンドメッセージ及び制御コマンドに対応するメッセージを含む応答メッセージの文字列から特定の音声データに変換し、音声入出力装置２４０に送信する。
【０１５９】
以上、変形例２に係る音声対話エージェントシステム１は、ユーザがクラウド側の辞書にのみ登録された発話フレーズを発話した場合に、同様の処理を行うことができるローカル側の辞書に登録された発話フレーズをレコメンドするレコメンドメッセージを、ローカル側で生成する。さらに、ユーザの発話フレーズと同様の処理を行うことができるクラウド側の辞書に登録され発話フレーズの全てが、ローカル側に送られる。ローカル側では、受け取った発話フレーズのうちから、ローカル側の辞書に登録された発話フレーズと同一の発話フレーズが出力され、レコメンドされる。これにより、クラウドサーバ１１１において、ローカル側から受け取った発話フレーズと意味タグが同一の発話フレーズと、ローカル側の辞書に登録された発話フレーズとの照合が不要であり、レコメンドメッセージを生成するための処理も不要である。このようなクラウド側の辞書は、ローカル側の辞書に関する情報を含まなくてもよい。
【０１６０】
［３．効果等］
本開示の実施の形態に係る音声処理装置の一態様であるクラウドサーバ１１１は、取得部としての通信部１０００と、記憶部としてのクラウド辞書ＤＢ６９０と、照合部としてのクラウド辞書照合部１０２０と、出力部としての応答生成部１０３０とを備える。通信部１０００は、音声認識処理により得られる認識文字情報を取得する。クラウド辞書ＤＢ６９０は、ローカル辞書ＤＢ５８４の第１の辞書のうちの、少なくとも文字情報とタスク情報とを対応付ける情報を有する第１の辞書情報を記憶する。クラウド辞書照合部１０２０は、第１の辞書情報に基づき、第１の辞書に登録される文字情報及びタスク情報の少なくとも一方と、第１の辞書と異なるクラウド辞書照合部１０２０の第２の辞書及び認識文字情報から特定される文字情報及びタスク情報の少なくとも一方とを用い、そして、クラウド辞書照合部１０２０は、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方を特定する。応答生成部１０３０は、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方についての提示情報を出力する。提示情報は、推奨文字情報に関連する情報を含む。推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録される文字情報であり、推奨文字情報に対応するタスク情報は認識文字情報に対応するタスク情報に対応し、さらに、推奨文字情報は、認識文字情報と異なる。
【０１６１】
なお、第１の辞書情報は、ローカル辞書ＤＢ５８４に登録される第１の辞書に関する情報であり、第１の辞書の文字情報とタスク情報とを対応付ける情報を含む。例えば、第１の辞書情報は、クラウド辞書ＤＢ６９０に登録される第２の辞書とローカル辞書ＤＢ５８４に登録される第１の辞書との対応関係に関する情報を含んでもよい。例えば、第１の辞書情報は、図１１に示すように、第２の辞書の文字列及び意味タグと、これらのローカル辞書ＤＢ５８４への登録の有無との対応関係に関する情報を含んでもよい。また、第１の辞書情報は、第１の辞書の内容の全てを含んでもよい。なお、タスク情報は、制御コマンド及び意味タグの少なくとも１つを含んでよい。例えば、提示情報は、推奨文字情報に関連する情報として、リコメンドメッセージ、認識文字情報のタスク情報、及びリコメンド対象の文字列の少なくとも１つを含んでよい。
【０１６２】
上述の構成において、推奨文字情報に関連する情報を含む提示情報が出力される。推奨文字情報に対応するタスク情報は、認識文字情報のタスク情報に対応する。さらに、推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録されている。例えば、認識文字情報が、ローカル辞書ＤＢ５８４の第１の辞書に登録されていないが、クラウド辞書ＤＢ６９０の第２の辞書に登録されている場合、クラウド辞書照合部１０２０での照合によって、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方が特定される。特定された文字情報のうちから、認識文字情報のタスク情報にそのタスク情報が対応する文字情報が選出され、さらに、選出された文字情報から、第１の辞書及び第２の辞書のいずれにも登録される文字情報が選出される。この文字情報は、ローカル辞書ＤＢ５８４の第１の辞書に登録され且つ認識文字情報にタスク情報が対応する推奨文字情報である。このような推奨文字情報が推奨されることによって、ユーザは、以後、ローカル辞書ＤＢ５８４に登録された文字列を使用した指令を発することができる。よって、ユーザの指令に対する処理が、ローカル側で出来る限り行うことができるため、処理速度が向上する。つまり、ユーザがクラウド側の辞書にのみ登録された発話フレーズを発話した場合に、同様の処理を行うローカル側の辞書に登録された発話フレーズをユーザにレコメンドすることで、ユーザが音声によって機器制御を行う際のレスポンスが向上する。
【０１６３】
実施の形態に係る音声処理装置の一態様のクラウドサーバ１１１において、クラウド辞書ＤＢ６９０は、第２の辞書を記憶する。クラウド辞書照合部１０２０は、クラウド辞書ＤＢ６９０の第２の辞書において、認識文字情報に対応するタスク情報と、認識文字情報に対応するタスク情報に対応し且つ認識文字情報と異なる他の文字情報とを特定する。なお、推奨文字情報は、上記他の文字情報を含む。提示情報は、認識文字情報に対応するタスク情報と、推奨文字情報に関連する情報とを含む。
【０１６４】
上述の構成において、クラウドサーバ１１１は、クラウド辞書ＤＢ６９０において、認識文字情報に対応するタスク情報と、認識文字情報の他の文字情報を含む推奨文字情報に関連する情報とを特定し出力する。例えば、認識文字情報が、ローカル辞書ＤＢ５８４の第１の辞書に登録されていないが、クラウド辞書ＤＢ６９０の第２の辞書に登録されている場合、クラウドサーバ１１１は、クラウド辞書ＤＢ６９０を用いて、上記タスク情報及び推奨文字情報を特定する。よって、上記タスク情報及び推奨文字情報の特定処理が、クラウドサーバ１１１側のみで実施可能であるため、処理速度の向上が可能である。さらに、ローカルサーバ１０２は、クラウドサーバ１１１から受け取る上記タスク情報及び推奨文字情報を用いて、機器１０１の制御、及びユーザへの推奨文字情報の提示を、ローカルサーバ１０２側で実施可能である。
【０１６５】
さらに、実施の形態に係る音声処理装置の一態様のクラウドサーバ１１１において、クラウド辞書ＤＢ６９０の第２の辞書で特定される他の文字情報は、ローカル辞書ＤＢ５８４の第１の辞書にも登録される文字情報である。上述の構成において、上記他の文字情報は、クラウド辞書ＤＢ６９０の第２の辞書及びローカル辞書ＤＢ５８４の第１の辞書のいずれにも登録される文字情報である。
【０１６６】
また、変形例２に係る音声処理装置の一態様のクラウドサーバ１１１において、クラウド辞書ＤＢ６９０の第２の辞書で特定される他の文字情報は、複数特定され、複数の他の文字情報の一部は、ローカル辞書ＤＢ５８４の第１の辞書にも登録される文字情報である。上述の構成において、上記複数の他の文字情報は、ローカル辞書ＤＢ５８４の第１の辞書に登録される文字情報及び第１の辞書に登録されていない文字情報を含み得る。例えば、ローカルサーバ１０２は、クラウドサーバ１１１から上記複数の他の文字情報を受け取ると、上記複数の他の文字情報とローカル辞書ＤＢ５８４の第１の辞書とを照合することによって、ローカル辞書ＤＢ５８４に登録されている文字情報を抽出することができる。この場合、クラウドサーバ１１１は、認識文字情報にタスク情報が対応する文字情報を抽出し、抽出した文字情報を提示情報として出力すればよく、抽出した文字情報がクラウド辞書ＤＢ６９０の第２の辞書及びローカル辞書ＤＢ５８４の第１の辞書のいずれにも登録されているかを判別する必要がない。よって、汎用的なクラウドサーバ１１１の使用が可能になる。
【０１６７】
変形例１に係る音声処理装置の一態様のクラウドサーバ１１１において、クラウド辞書照合部１０２０は、クラウド辞書ＤＢ６９０の第２の辞書において、認識文字情報に対応するタスク情報を特定し、提示情報は、推奨文字情報に関連する情報として、クラウド辞書照合部１０２０によって特定されたタスク情報を含む。上述の構成において、クラウドサーバ１１１は、クラウド辞書ＤＢ６９０において特定した認識文字情報に対応するタスク情報を出力すればよく、認識文字情報にタスク情報が対応する文字情報等の抽出を必要としない。よって、汎用的なクラウドサーバ１１１の使用が可能になる。
【０１６８】
実施の形態に係る音声処理装置の一態様のクラウドサーバ１１１は、提示情報を送信する通信部１０００を出力部として含む。上述の構成において、クラウドサーバ１１１は、提示情報を通信により送信する。よって、クラウドサーバ１１１は、ローカルサーバ１０２から離れた位置に配置され得る。ローカルサーバ１０２は、クラウドサーバ１１１の影響を受けずに、様々な施設に配置可能である。
【０１６９】
本開示の実施の形態に係る音声処理装置の別の一態様であるローカルサーバ１０２は、取得部としての音声認識部９２０と、記憶部としてのローカル辞書ＤＢ５８４と、照合部としてのローカル辞書照合部９３０と、出力部としての応答生成部９４０及び音声合成部９５０とを備える。音声認識部９２０は、音声認識処理により得られる認識文字情報を取得する。ローカル辞書ＤＢ５８４は、ローカル辞書ＤＢ５８４の第１の辞書のうちの、少なくとも文字情報とタスク情報とを対応付ける情報を有する第１の辞書情報を記憶する。ローカル辞書照合部９３０は、第１の辞書情報に基づき、第１の辞書に登録される文字情報及びタスク情報の少なくとも一方と、第１の辞書と異なるクラウド辞書ＤＢ６９０の第２の辞書及び認識文字情報から特定される文字情報及びタスク情報の少なくとも一方とを用い、そして、ローカル辞書照合部９３０は、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方を特定する。応答生成部９４０及び音声合成部９５０は、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方についての提示情報を出力する。提示情報は、推奨文字情報に関連する情報を含む。推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録される文字情報であり、推奨文字情報に対応するタスク情報は認識文字情報に対応するタスク情報に対応し、さらに、推奨文字情報は、認識文字情報と異なる。なお、第１の辞書情報は、ローカル辞書ＤＢ５８４に登録される第１の辞書であってもよい。タスク情報は、制御コマンド及び意味タグの少なくとも１つを含んでよい。例えば、提示情報は、推奨文字情報に関連する情報として、リコメンドメッセージを含む応答メッセージを含んでよい。
【０１７０】
上述の構成において、推奨文字情報に関連する情報を含む提示情報が出力される。推奨文字情報に対応するタスク情報は、認識文字情報のタスク情報に対応する。さらに、推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録されている。例えば、認識文字情報が、ローカル辞書ＤＢ５８４の第１の辞書に登録されていないが、クラウド辞書ＤＢ６９０の第２の辞書に登録されている場合、ローカルサーバ１０２は、推奨文字情報に関連する情報を含む提示情報を出力する。このような推奨文字情報は、認識文字情報とは異なるが、認識文字情報にタスク情報が対応し且つ第１の辞書及び第２の辞書のいずれにも登録される文字情報である、つまり、ローカル辞書ＤＢ５８４に登録され且つ認識文字情報にタスク情報が対応する文字情報である。このような推奨文字情報が推奨されることによって、ユーザは、以後、ローカル辞書ＤＢ５８４に登録された文字列を使用した指令を発することができる。よって、ユーザの指令に対する処理が、ローカル側で出来る限り行うことができるため、処理速度が向上する。
【０１７１】
実施の形態に係る音声処理装置の別の一態様のローカルサーバ１０２において、ローカル辞書照合部９３０は、ローカル辞書ＤＢ５８４の第１の辞書において、認識文字情報に対応するタスク情報を特定する。上述の構成において、ローカルサーバ１０２は、認識文字情報に対応するタスク情報を特定することによって、ローカルサーバ１０２に接続された機器１０１の制御を行うことができる。
【０１７２】
変形例１に係る音声処理装置の別の一態様のローカルサーバ１０２は、通信部９００をさらに備え、通信部９００は、クラウド辞書ＤＢ６９０の第２の辞書及び認識文字情報から特定されるタスク情報を受信する。第１の辞書情報は、ローカル辞書ＤＢ５８４の第１の辞書である。ローカル辞書照合部９３０は、ローカル辞書ＤＢ５８４の第１の辞書において、受信されたタスク情報と対応する文字情報を、推奨文字情報として特定する。上述の構成において、ローカルサーバ１０２は、例えば、クラウドサーバ１１１から、認識文字情報に対応するタスク情報しか取得できない場合でも、取得したタスク情報を用いて、推奨文字情報を取得し出力することができる。よって、クラウドサーバ１１１は、推奨文字情報として、認識文字情報に対応するタスク情報を出力すればよく、当該タスク情報に対応する文字情報がクラウド辞書ＤＢ６９０の第２の辞書及びローカル辞書ＤＢ５８４の第１の辞書のいずれにも登録されているかを判別する必要がない。よって、汎用的なクラウドサーバ１１１の使用が可能になる。
【０１７３】
変形例２に係る音声処理装置の別の一態様のローカルサーバ１０２は、通信部９００をさらに備え、通信部９００は、クラウド辞書ＤＢ６９０の第２の辞書及び認識文字情報から特定される文字情報を受信する。第１の辞書情報は、ローカル辞書ＤＢ５８４の第１の辞書である。ローカル辞書照合部９３０は、受信された文字情報の中から、ローカル辞書ＤＢ５８４の第１の辞書において登録されている文字情報を、推奨文字情報として特定する。なお、受信される文字情報は、１つ以上の文字列を含む文字情報であってよい。上述の構成において、例えば、クラウドサーバ１１１は、推奨文字情報を出力すればよく、推奨文字情報がクラウド辞書ＤＢ６９０の第２の辞書及びローカル辞書ＤＢ５８４の第１の辞書のいずれにも登録されているかを判別する必要がない。よって、汎用的なクラウドサーバ１１１の使用が可能になる。
【０１７４】
実施の形態に係る音声処理装置の別の一態様のローカルサーバ１０２は、提示情報を別の提示装置に提示させる提示制御部としての送信データ生成部９６０を含む。上述の構成において、ローカルサーバ１０２は、例えばクラウドサーバ１１１から受け取る情報に基づく提示情報を、機器１０１等の別の装置に提示させ、ユーザに認知させることができる。
【０１７５】
実施の形態のさらに別の一態様に係る音声処理装置は、互いの間で情報を送受信するローカル装置としてのローカルサーバ１０２及びクラウド装置としてのクラウドサーバ１１１を備える。ローカルサーバ１０２は、音声認識処理により得られる認識文字情報を取得する音声認識部９２０と、文字情報とタスク情報とを対応付ける第１の辞書を記憶する第１の記憶部としてのローカル辞書ＤＢ５８４と、第１の照合部としてのローカル辞書照合部９３０と、第１の出力部としての応答生成部９４０及び音声合成部９５０とを含む。クラウドサーバ１１１は、文字情報とタスク情報とを対応付ける第２の辞書を記憶する第２の記憶部としてのクラウド辞書ＤＢ６９０と、第２の照合部としてのクラウド辞書照合部１０２０と、第２の出力部としての応答生成部１０３０とを含む。クラウド辞書照合部１０２０は、ローカル辞書ＤＢ５８４の第１の辞書に登録される文字情報及びタスク情報の少なくとも一方と、クラウド辞書ＤＢ６９０の第２の辞書及び認識文字情報から特定される文字情報及びタスク情報の少なくとも一方とを照合し、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方を特定する。応答生成部１０３０は、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方についての提示情報をローカルサーバ１０２へ出力する。なお、提示情報は、推奨文字情報に関連する情報を含む。推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録される文字情報であり、推奨文字情報に対応するタスク情報は認識文字情報に対応するタスク情報に対応し、推奨文字情報は、認識文字情報と異なる。ローカル辞書照合部９３０は、クラウドサーバ１１１から受け取る提示情報と、第１の辞書に登録される文字情報及びタスク情報の少なくとも一方とを照合する。応答生成部９４０及び音声合成部９５０は、推奨文字情報に関連する情報を音声等のメッセージとして出力する。
【０１７６】
上述の構成によって、実施の形態に係る音声処理装置の一態様のクラウドサーバ１１１及びローカルサーバ１０２による効果と同様の効果が得られる。特に、ユーザがクラウド側のクラウド辞書ＤＢ６９０にのみ登録された発話フレーズを発話した場合に、同様の処理を行うローカル側のローカル辞書ＤＢ５８４に登録された発話フレーズをユーザにレコメンドすることで、ユーザが音声によって機器制御を行う際のレスポンスが向上する。
【０１７７】
実施の形態及び変形例に係る音声処理装置の種々の態様のクラウドサーバ１１１及びローカルサーバ１０２において、タスク情報は、文字情報の意味に関する意味情報及び機器の動作を制御するための制御情報の少なくとも一方を含み、意味情報と制御情報とは、対応付けられ、文字情報は、意味情報及び制御情報の少なくとも一方と対応付けられる。なお、意味が類似する同義の文字情報には、共通の意味情報が与えられてよい。例えば、意味情報は、意味タグであってよく、制御情報は、制御コマンドであってもよい。上述の構成によって、文字情報が、意味情報及び制御情報の少なくとも一方と対応することによって、文字情報に基づく制御がスムーズになる。また、意味が類似する文字情報に関して、意味情報が共通化され、さらに、制御情報は、共通化された意味情報に対応する。これにより、意味が類似する文字情報に関するタスク情報が統一される。よって、タスク情報のバリエーションが減少し、それにより、クラウドサーバ１１１及びローカルサーバ１０２におけるタスク情報に基づく処理の速度が向上する。
【０１７８】
実施の形態の一態様に係る音声処理方法は、音声認識処理により得られる認識文字情報を取得し、第１の辞書のうちの、少なくとも文字情報とタスク情報とを対応付ける情報を有する第１の辞書情報に基づき、第１の辞書に登録される文字情報及びタスク情報の少なくとも一方と、第１の辞書と異なる第２の辞書及び認識文字情報から特定される文字情報及びタスク情報の少なくとも一方とを用いて、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方を特定し、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方についての提示情報を出力する。なお、提示情報は、推奨文字情報に関連する情報を含み、推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録される文字情報であり、認識文字情報に対応するタスク情報は推奨文字情報に対応するタスク情報と対応し、推奨文字情報は、認識文字情報と異なる。
【０１７９】
上述の音声処理方法によれば、実施の形態に係る音声処理装置による効果と同様の効果が得られる。なお、上記方法は、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＣＰＵ、プロセッサ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）などの回路、ＩＣカード（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｃａｒｄ）又は単体のモジュール等によって、実現されてもよい。
【０１８０】
また、実施の形態及び変形例での処理は、ソフトウェアプログラム又はソフトウェアプログラムからなるデジタル信号によって実現されてもよい。例えば、実施の形態での処理は、次のようなプログラムによって、実現される。
【０１８１】
つまり、プログラムは、コンピュータに以下の機能を実行させるプログラムであって、音声認識処理により得られる認識文字情報を取得し、第１の辞書のうちの、少なくとも文字情報とタスク情報とを対応付ける情報を有する第１の辞書情報に基づき、第１の辞書に登録される文字情報及びタスク情報の少なくとも一方と、第１の辞書と異なる第２の辞書及び認識文字情報から特定される文字情報及びタスク情報の少なくとも一方とを用いて、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方を特定し、認識文字情報に対応する文字情報及びタスク情報の少なくとも一方についての提示情報を出力することを、実行させる。なお、提示情報は、推奨文字情報に関連する情報を含み、推奨文字情報は、第１の辞書及び第２の辞書のいずれにも登録される文字情報であり、認識文字情報に対応するタスク情報は推奨文字情報に対応するタスク情報が対応し、さらに、推奨文字情報は、認識文字情報と異なる。
【０１８２】
［その他］
以上、本出願において開示する技術の例示として、実施の形態及び変形例に係る音声処理装置等について説明したが、本開示は、実施の形態及び変形例に限定されるものではない。本開示における技術は、適宜、変更、置き換え、付加、省略などを行った実施の形態の変形例又は他の実施の形態にも適用可能である。また、実施の形態及び変形例で説明する各構成要素を組み合わせて、新たな実施の形態又は変形例とすることも可能である。
【０１８３】
上述したように、本開示の包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよい。また、本開示の包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【０１８４】
例えば、上記実施の形態及び変形例に係る音声処理装置に含まれる各処理部は典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。
【０１８５】
また、集積回路化はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１８６】
なお、上記実施の形態及び変形例において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【０１８７】
さらに、本開示の技術は上記プログラムであってもよいし、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【０１８８】
また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。
【０１８９】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【０１９０】
以上、一つの態様に係る音声処理装置等について、実施の形態及び変形例に基づいて説明したが、本開示は、この実施の形態及び変形例に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つの態様の範囲内に含まれてもよい。
【０１９１】
なお、本開示は、音声対話エージェントシステムとユーザとの対話に関するものであれば適用可能である。例えば、音声対話エージェントシステムを用いてユーザが家電機器等を動作させる場合に有効である。例えば、ユーザが音声操作に対応した電子レンジ又はオーブンを動作させる場合に、「温めて」という指示をした場合を想定する。このとき、音声対話エージェントシステムはユーザに対して「何分温めますか？」又は「何度に温めますか？」などと具体的な指示を聞き返すことが可能である。これに対して返答可能なユーザ（聞き返したことに対してエージェントシステムが指示を受け付けるユーザ）は当初に「温めて」と指示したユーザのみである。
【０１９２】
これ以外にも、ユーザの抽象的な指示に対して、音声対話エージェントシステムが具体的な内容を聞き返す動作に本開示は適用可能となる。また、音声対話エージェントシステムがユーザに対して聞き返す内容は、動作実行の確認などであってもよい。
【０１９３】
なお、上記態様において、ユーザからの音声の入力は、システム又は各家電機器が備えるマイクロホンによって行われるとしてもよい。また、音声対話エージェントシステムからユーザに対する聞き返しは、システム又は各家電機器が備えるスピーカなどからユーザに対して伝えるとしてもよい。本開示において、「所定の動作」は、例えば、スピーカを介してユーザに音声を出力する動作であってもよい。すなわち、本開示において、制御対象となる「機器」は、音声入出力装置（例えばスピーカ）であってもよい。本開示において、「プロセッサ」、「マイクロホン」、および／または「スピーカ」は、例えば、制御対象となる「機器」に内蔵されていてもよい。
【０１９４】
なお、上記態様において説明された技術は、例えば、以下のクラウドサービスの類型において実現されうる。しかし、上記態様において説明された技術が実現されるクラウドサービスの類型はこれらに限られるものでない。
【０１９５】
以下、サービスの類型１（自社データセンタ型クラウドサービス）を利用した情報管理システムが提供するサービスの全体像、サービスの類型２（ＩａａＳ利用型クラウドサービス）を利用した情報管理システムが提供するサービスの全体像、サービスの類型３（ＰａａＳ利用型クラウドサービス）を利用した情報管理システムが提供するサービスの全体像、サービスの類型４（ＳａａＳ利用型クラウドサービス）を利用した情報管理システムが提供するサービスの全体像について順次説明する。
【０１９６】
［サービスの類型１：自社データセンタ型クラウドサービス］
図２４は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型１（自社データセンタ型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。図２４に示すように、本類型では、サービスプロバイダ４１２０がグループ４１００から情報を取得し、ユーザに対してサービスを提供する。本類型では、サービスプロバイダ４１２０が、データセンタ運営会社の機能を有している。すなわち、サービスプロバイダ４１２０が、ビッグデータを管理するクラウドサーバ１１１を保有している。したがって、データセンタ運営会社は存在しない。
【０１９７】
本類型では、サービスプロバイダ４１２０は、データセンタ（クラウドサーバ）４２０３を運営及び管理している。また、サービスプロバイダ４１２０は、オペレーティングシステム（ＯＳ）４２０２及びアプリケーション４２０１を管理する。サービスプロバイダ４１２０は、サービスプロバイダ４１２０が管理するＯＳ４２０２及びアプリケーション４２０１を用いてサービスを提供する（矢印２０４）。
【０１９８】
［サービスの類型２：ＩａａＳ利用型クラウドサービス］
図２５は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型２（ＩａａＳ利用型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。ここで、ＩａａＳとは、インフラストラクチャー・アズ・ア・サービスの略であり、コンピュータシステムを構築及び稼動させるための基盤そのものを、インターネット経由のサービスとして提供するクラウドサービス提供モデルである。
【０１９９】
図２５に示すように、本類型では、データセンタ運営会社４１１０が、データセンタ（クラウドサーバ）４２０３を運営及び管理している。また、サービスプロバイダ４１２０は、ＯＳ４２０２及びアプリケーション４２０１を管理する。サービスプロバイダ４１２０は、サービスプロバイダ４１２０が管理するＯＳ４２０２及びアプリケーション４２０１を用いてサービスを提供する（矢印２０４）。
【０２００】
［サービスの類型３：ＰａａＳ利用型クラウドサービス］
図２６は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型３（ＰａａＳ利用型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。ここで、ＰａａＳとは、プラットフォーム・アズ・ア・サービスの略であり、ソフトウェアを構築及び稼動させるための土台となるプラットフォームを、インターネット経由のサービスとして提供するクラウドサービス提供モデルである。
【０２０１】
図２６に示すように、本類型では、データセンタ運営会社４１１０は、ＯＳ４２０２を管理し、データセンタ（クラウドサーバ）４２０３を運営及び管理している。また、サービスプロバイダ４１２０は、アプリケーション４２０１を管理する。サービスプロバイダ４１２０は、データセンタ運営会社４１１０が管理するＯＳ４２０２及びサービスプロバイダ４１２０が管理するアプリケーション４２０１を用いてサービスを提供する（矢印２０４）。
【０２０２】
［サービスの類型４：ＳａａＳ利用型クラウドサービス］
図２７は、実施の形態及び変形例に係る音声対話エージェントシステムが適用可能である、サービスの類型４（ＳａａＳ利用型クラウドサービス）における情報管理システムが提供する、サービスの全体像を示す図である。ここで、ＳａａＳとは、ソフトウェア・アズ・ア・サービスの略である。ＳａａＳ利用型クラウドサービスは、例えば、データセンタ（クラウドサーバ）を保有しているプラットフォーム提供者が提供するアプリケーションを、データセンタ（クラウドサーバ）を保有していない会社又は個人などの利用者がインターネットなどのネットワーク経由で使用できる機能を有するクラウドサービス提供モデルである。
【０２０３】
図２７に示すように、本類型では、データセンタ運営会社４１１０は、アプリケーション４２０１を管理し、ＯＳ４２０２を管理し、データセンタ（クラウドサーバ）４２０３を運営及び管理している。また、サービスプロバイダ４１２０は、データセンタ運営会社４１１０が管理するＯＳ４２０２及びアプリケーション４２０１を用いてサービスを提供する（矢印２０４）。
【０２０４】
以上、いずれのクラウドサービスの類型においても、サービスプロバイダ４１２０がサービスを提供する。また、例えば、サービスプロバイダ又はデータセンタ運営会社は、ＯＳ、アプリケーション又はビッグデータのデータベース等を自ら開発してもよいし、また、第三者に外注させてもよい。
【産業上の利用可能性】
【０２０５】
本開示の技術は、音声対話エージェントに適用できる。
【符号の説明】
【０２０６】
１０１，１０１ａ，１０１ｂ  機器
１０２  ローカルサーバ
１１１  クラウドサーバ
２４０  音声入出力装置
３００  音声入出力装置の処理回路
３０１  音声入出力装置の集音回路
３０２  音声入出力装置の音声出力回路
３０３  音声入出力装置の通信回路
３１０  音声入出力装置のＣＰＵ
３２０  音声入出力装置のメモリ
３３０  音声入出力装置のバス
３４１  音声入出力装置の機器ＩＤ
３４２  音声入出力装置のプログラム
４１０  機器の入出力回路
４３０  機器のＣＰＵ
４４０  機器のメモリ
４４１  機器の機器ＩＤ
４４２  機器のプログラム
４５０  機器の通信回路
４６０  機器のバス
４７０  機器の処理回路
５３０  ローカルサーバのＣＰＵ
５４０  ローカルサーバのメモリ
５４１  ローカルサーバのゲートウェイＩＤ
５４２  ローカルサーバのプログラム
５５１  ローカルサーバの第一通信回路
５５２  ローカルサーバの第二通信回路
５６０  ローカルサーバのバス
５７０  ローカルサーバの処理回路
５８０  ローカルサーバの音響モデルＤＢ
５８１  ローカルサーバの言語モデルＤＢ
５８２  ローカルサーバの音声素片ＤＢ
５８３  ローカルサーバの韻律制御ＤＢ
５８４  ローカルサーバのローカル辞書ＤＢ
５８５  ローカルサーバの応答生成ＤＢ
６５０  クラウドサーバの通信回路
６７０  クラウドサーバの処理回路
６７１  クラウドサーバのＣＰＵ
６７２  クラウドサーバのメモリ
６８０  クラウドサーバのバス
６９０  クラウドサーバのクラウド辞書ＤＢ
６９１  クラウドサーバの応答生成ＤＢ
７００  音声入出力装置の集音部
７１０  音声入出力装置の音声検出部
７２０  音声入出力装置の音声区間切り出し部
７３０  音声入出力装置の通信部
７４０  音声入出力装置の音声出力部
８００  機器の通信部
８１０  機器の機器制御部
９００  ローカルサーバの通信部
９１０  ローカルサーバの受信データ解析部
９２０  ローカルサーバの音声認識部
９３０  ローカルサーバのローカル辞書照合部
９４０  ローカルサーバの応答生成部
９５０  ローカルサーバの音声合成部
９６０  ローカルサーバの送信データ生成部
１０００  クラウドサーバの通信部
１０２０  クラウドサーバのクラウド辞書照合部
１０３０  クラウドサーバの応答生成部
【図１Ａ】
2018120202.tif 000003
【図１Ｂ】
2018120202.tif 000004
【図１Ｃ】
2018120202.tif 000005
【図２】
2018120202.tif 000006
【図３】
2018120202.tif 000007
【図４】
2018120202.tif 000008
【図５】
2018120202.tif 000009
【図６】
2018120202.tif 000010
【図７】
2018120202.tif 000011
【図８】
2018120202.tif 000012
【図９】
2018120202.tif 000013
【図１０】
2018120202.tif 000014
【図１１】
2018120202.tif 000015
【図１２】
2018120202.tif 000016
【図１３】
2018120202.tif 000017
【図１４】
2018120202.tif 000018
【図１５】
2018120202.tif 000019
【図１６】
2018120202.tif 000020
【図１７】
2018120202.tif 000021
【図１８】
2018120202.tif 000022
【図１９】
2018120202.tif 000023
【図２０】
2018120202.tif 000024
【図２１】
2018120202.tif 000025
【図２２】
2018120202.tif 000026
【図２３】
2018120202.tif 000027
【図２４】
2018120202.tif 000028
【図２５】
2018120202.tif 000029
【図２６】
2018120202.tif 000030
【図２７】
2018120202.tif 000031