(57)【要約】【課題】これまでに得た情報では条件が不十分であって、検索を実行することができないとき、ユーザに働きかけ検索に必要な情報を自動的に補足する。【解決手段】入力される音声情報をテキスト情報に変換する手段と、変換されたテキスト情報を分節する手段と、外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースと、データベースに格納された情報に基づいて、分節されたテキスト情報から得られる属性と、属性に対応する情報を保有しているサーバとをそれぞれを対応付ける手段と、対応付けられたサーバから属性に対応する情報を検索する際、分節されたテキスト情報が、検索のための必須項目をすべて満たしているか否かを判断する手段と、必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する手段と、を含む。【選択図】図７
2015069103.tif 000002
【特許請求の範囲】
【請求項１】
入力される音声情報をテキスト情報に変換する手段と、
前記変換されたテキスト情報を分節する手段と、
外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースと、
前記データベースに格納された情報に基づいて、前記分節されたテキスト情報から得られる属性と、前記属性に対応する情報を保有しているサーバとをそれぞれを対応付ける手段と、
前記対応付けられたサーバから前記属性に対応する情報を検索する際、前記分節されたテキスト情報が、前記検索のための必須項目をすべて満たしているか否かを判断する手段と、
前記必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する手段と、
を含むことを特徴とする情報処理装置。
【請求項２】
前記不足項目を補充するための音声情報を獲得すると、前記音声情報をテキスト情報に変換し、前記データベースの中から前記テキスト情報から得られる属性に対応する情報を保有しているサーバを特定し、前記サーバの中から前記属性に対応する情報を検索することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記必須項目をすべて満たしているとき、前記テキスト情報から得られる属性に対応する情報を保有しているサーバを特定し、前記サーバの中から前記属性に対応する情報を検索することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースを有する情報処理装置の制御方法であって、
入力される音声情報をテキスト情報に変換する工程と、
前記変換されたテキスト情報を分節する工程と、
前記データベースに格納された情報に基づいて、前記分節されたテキスト情報から得られる属性と、前記属性に対応する情報を保有しているサーバとをそれぞれを対応付ける工程と、
前記対応付けられたサーバから前記属性に対応する情報を検索する際、前記分節されたテキスト情報が、前記検索のための必須項目をすべて満たしているか否かを判断する工程と、
前記必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する工程と、
を含むことを特徴とする制御方法。
【請求項５】
外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースを有する情報処理装置のコンピュータに、
入力される音声情報をテキスト情報に変換する処理と、
前記変換されたテキスト情報を分節する処理と、
前記データベースに格納された情報に基づいて、前記分節されたテキスト情報から得られる属性と、前記属性に対応する情報を保有しているサーバとをそれぞれを対応付ける処理と、
前記対応付けられたサーバから前記属性に対応する情報を検索する際、前記分節されたテキスト情報が、前記検索のための必須項目をすべて満たしているか否かを判断する処理と、
前記必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する処理と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、文字、音声、図形、映像等のマルチメディアを入力、出力、及び加工処理することで、人間とコンピュータとの対話を様々な形態で行うことが可能となっている。特に、最近になって、メモリ容量やパーソナルコンピュータ（以下、ＰＣともいう。）の処理能力が飛躍的に向上したことで、マルチメディアを取り扱うことができるＰＣが開発され、種々のアプリケーションが開発されてきている。
【０００３】
一方、従来からの数値データに代わり、文字を含む言語データが一般的になり、白黒のイメージデータはカラー化や図形、アニメーション、三次元グラフィックス、さらには動画が扱えるように拡張されてきている。また、音声やオーディオ信号についても、単なる音声信号レベルの入出力の他に、音声認識や音声合成の機能が研究開発されつつある。しかし、マンマシンインタフェースとして使用するには性能が不安定で、実用化は限定された分野に限られているのが現状である。
【０００４】
このように、上述した文字、テキスト、音声、グラフィックデータ等については、従来の入出力処理（記録、再生）から各種メディアへの展開や生成機能へと発展が続いている。換言すれば、各メディアの表面的な処理からメディアの内容や構造、意味的内容を取り扱い、人間とＰＣとの間の対話をより自然に快適に行うことを目的として、音声やグラフィックス等のメディアの融合や生成を利用する対話システムの構築が検討されつつある。
【０００５】
ここで、対話システムに用いられる音声検索とは、文字列ではなく、発話する声により話しかけることで検索できる技術やサービスのことを指す。近年では、Ａｐｐｌｅ（登録商標）ｉＯＳに搭載されるＳｉｒｉ（登録商標）や、Ｇｏｏｇｌｅ（登録商標）音声検索が知られている。また、最近では、音声操作できるカーナビ、一部のメーカーが発売する音声による操作や番組検索が可能なテレビ、話しかけるとそのまま指定した言語に翻訳してくれる携帯電話やスマートフォン等も出てきている。このように近年、音声解析技術を使ったサービスが登場してきている。
【０００６】
ところで、音声検索は、キーボードやタッチパネルで文字列を打つ必要がないので、両手が塞がっている時でも情報にアクセスでき、発声という直感的なアプローチが可能である。そして、検索結果に該当するものをＰＣによる音声を用いた回答で得ることができれば、対話によりインターネットから欲しい情報を容易に取り出せるようになる、等の理由から、将来性が期待されている。
【０００７】
しかしながら、現状、インターネットを用いた音声検索は、それ程普及が進んでいるとはいえない。音声検索の普及が進まない原因として考えられるのが、検索サービスにおける音声認識の難しさ、その汎用性にある。すなわち、テレビに搭載されている音声認識は、基本的にテレビ番組名や出演者名等、番組と人物に関連する物事や、テレビ操作に関連する物事が認識できれば足りるのである。同様にカーナビであれば、基本的に住所・施設名等、地図情報に関連する物事を認識できれば良いのである。
【０００８】
例えば、カーナビで入力する住所は、東京都○○区△△町等のように定型化されているので、連続的な音声を認識した時に、○○、△△に入る文言を特定できれば良いので、結果的に精度は良くなる。このように、特定用途の機器であれば、認識すべき範囲や文脈はある程度絞り込むことができる、つまり候補を限定することができる。しかしながら、汎用的な検索サービスではそうはいかないのが現状である。
【０００９】
このように、音声認識については、単一単語認識から連続単語認識、連続音声認識へと発展しており、実用化のために応用を限定した方向でも開発が進められている。このような応用場面では、音声対話システムとして、音声の文字面の認識よりも音声の発話内容の理解が重要であり、例えば、キーワードスポッティングをベースに応用分野の知識を利用した音声理解システムも研究されてきている。
【００１０】
他方、音声等のメディアの理解と生成は、単なるデータの入出力とは異なり、メディアの変換の際に発生する情報の欠落やエラーが不可避である。すなわち、音声理解は情報量の多い音声パターンデータから音声の発話の内容や発話者の意図を抽出する処理であり、情報の圧縮を行う過程で音声認識エラーや曖昧性が生じる。したがって、音声対話システムとしては上述した認識エラーや曖昧性等の音声認識の不完全さに対処するため、ＰＣ側からユーザに対して適切な質問や確認を行い、対話制御によりスムーズに対話を進行する必要がある。
【００１１】
そして、音声対話システムにおいて、ＰＣにおいて検索を実行するための情報が不足しているとき、ＰＣはユーザに対して検索を実行することができない旨、又は検索条件を入力し直して欲しい旨のアナウンスを通知し、不足情報が得られるまで、検索の実行自体を行わない場合もある。
【００１２】
そして、特許文献１には、ユーザが、ＶＴＲ等の電子機器を音声で操作するためにエージェントに対して音声を入力し、ＶＴＲ等の電子機器の状態を音声でエージェントを介してユーザに伝える制御装置において、要素情報の指定に誤りがある、あるいは、指定に誤りはないがＶＴＲの仕様上間違っている入力エラーの場合、エージェントは、「わかりませんでした。何曜日の予約ですか？」とか、「開始と終了の時刻が同じです。時間を入れ直して下さい。」等のように入力文中の誤り項目（エラー項目）を指摘し、再入力を促すようなメッセージを動画表示、及び音声出力、入力待ち状態とする制御装置が記載されている。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開平０４−３３８８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
上述したように、従来の音声認識、音声合成技術を利用した音声対話システムは、それぞれ別個に開発された音声認識、音声合成、画面表示の各技術を単に組み合わせただけのものであり、音声の対話という観点からの十分な考慮がなされていないという問題がある。すなわち、音声認識機能には、認識誤りや曖昧性があり、音声合成機能は人間の発声よりも明りょう度が悪く、イントネーションの制御も不十分であるため、意図や感情の伝達能力が不足しており、自然性に欠けるという根本的な問題がある。
【００１５】
また、音声認識装置の認識率は向上してきているが、そもそも想定していない入力に対しては認識することができず、誤認識となったり、認識できなくなったりする事象が発生する。この誤認識や認識不可状態となった場合の対応として、「戻る」操作がある。これは、誤認識や認識不可状態をリセットして、再度ユーザに対して入力させるというものである。しかし、この方法では、一回目と同じ入力を行ったとしても、誤認識や認識不可状態を回避することはできず、結果的に音声対話ができなくなってしまうという問題がある。
【００１６】
そして、特許文献１に記載された技術では、要素情報の指定に誤りがある、あるいは、要素情報の指定に不足がある場合、入力の誤りを指摘し、再入力を促すと共に入力待ち状態となってしまい、その後の動作を一切停止してしまうという問題がある。
【００１７】
そこで本発明は、上記従来の問題点に鑑みてなされたもので、これまでに得た情報では条件が不十分であって、検索を実行することができないとき、ユーザに働きかけ検索に必要な情報を自動的に補足することが可能な情報処理装置、制御方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
上記課題を解決するため、請求項１に記載の本発明における情報処理装置は、入力される音声情報をテキスト情報に変換する手段と、前記変換されたテキスト情報を分節する手段と、外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースと、前記データベースに格納された情報に基づいて、前記分節されたテキスト情報から得られる属性と、前記属性に対応する情報を保有しているサーバとをそれぞれを対応付ける手段と、前記対応付けられたサーバから前記属性に対応する情報を検索する際、前記分節されたテキスト情報が、前記検索のための必須項目をすべて満たしているか否かを判断する手段と、前記必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する手段と、を含むことを特徴とする。
【００１９】
また、本発明における情報処理装置は、請求項１に記載の情報処理装置において、前記不足項目を補充するための音声情報を獲得すると、前記音声情報をテキスト情報に変換し、前記データベースの中から前記テキスト情報から得られる属性に対応する情報を保有しているサーバを特定し、前記サーバの中から前記属性に対応する情報を検索することを特徴とする。
【００２０】
さらに、本発明における情報処理装置は、請求項１又は２に記載の情報処理装置において、前記必須項目をすべて満たしているとき、前記テキスト情報から得られる属性に対応する情報を保有しているサーバを特定し、前記サーバの中から前記属性に対応する情報を検索することを特徴とする。
【００２１】
また、上記課題を解決するため、請求項４に記載の本発明における情報処理装置の制御方法は、外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースを有する情報処理装置の制御方法であって、入力される音声情報をテキスト情報に変換する工程と、前記変換されたテキスト情報を分節する工程と、前記データベースに格納された情報に基づいて、前記分節されたテキスト情報から得られる属性と、前記属性に対応する情報を保有しているサーバとをそれぞれを対応付ける工程と、前記対応付けられたサーバから前記属性に対応する情報を検索する際、前記分節されたテキスト情報が、前記検索のための必須項目をすべて満たしているか否かを判断する工程と、前記必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する工程と、を含むことを特徴とする。
【００２２】
そして、上記課題を解決するために、請求項５に記載の本発明におけるプログラムは、外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースを有する情報処理装置のコンピュータに、入力される音声情報をテキスト情報に変換する処理と、前記変換されたテキスト情報を分節する処理と、前記データベースに格納された情報に基づいて、前記分節されたテキスト情報から得られる属性と、前記属性に対応する情報を保有しているサーバとをそれぞれを対応付ける処理と、前記対応付けられたサーバから前記属性に対応する情報を検索する際、前記分節されたテキスト情報が、前記検索のための必須項目をすべて満たしているか否かを判断する処理と、前記必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する処理と、を実現させることを特徴とする。
【発明の効果】
【００２３】
本発明によれば、これまでに得た情報では条件が不十分であって、検索を実行することができないとき、ユーザに働きかけ検索に必要な情報を自動的に補足することが可能な情報処理装置、制御方法、及びプログラムが得られる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態における情報処理装置の構成について説明する概略ブロック図である。
【図２】本発明の実施形態における情報処理装置の主要部の構成について説明する概略ブロック図である。
【図３】本発明の実施形態における情報処理装置のソフトウェア機能について説明する機能ブロック図である。
【図４】本発明の実施形態における情報処理装置の起動時の画面表示（その１）について説明する図である。
【図５】本発明の実施形態における情報処理装置の起動時の画面表示（その２）について説明する図である。
【図６】本発明の実施形態における情報処理装置の起動時の画面表示（その３）について説明する図である。
【図７】本発明の実施形態における情報処理装置の具体的な動作について説明する図である。
【図８】本発明の実施形態における情報処理装置の動作について説明するフローチャートである。
【図９】本発明の実施形態における情報処理装置のユーザインタフェースが最小化された時の画面表示について説明する図である。
【発明を実施するための形態】
【００２５】
次に、本発明を実施するための形態について図面を参照して詳細に説明する。なお、各図中、同一又は相当する部分には同一の符号を付しており、その重複説明は適宜に簡略化乃至省略する。本発明の内容を簡潔に説明すると、入力される音声情報をテキスト情報に変換する手段と、変換されたテキスト情報を分節する手段と、外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースと、データベースに格納された情報に基づいて、分節されたテキスト情報から得られる属性と、属性に対応する情報を保有しているサーバとをそれぞれを対応付ける手段と、対応付けられたサーバから属性に対応する情報を検索する際、分節されたテキスト情報が、検索のための必須項目をすべて満たしているか否かを判断する手段と、必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する手段と、を含むことにより、これまでに得た情報では条件が不十分であって、検索を実行することができないとき、ユーザに働きかけ検索に必要な情報を自動的に補足することができるのである。
【００２６】
まず、図１を用いて本発明の実施形態における情報処理装置の構成について説明する。図１は、本発明の実施形態における情報処理装置の構成について説明する概略ブロック図である。図１を参照すると、本発明の実施形態における情報処理装置１００は、電子情報端末、ＰＤＡ、ノート型ＰＣ、タブレット型ＰＣ等を具体例とする情報処理装置である。
【００２７】
図１において、本発明の実施形態における情報処理装置（以下、パーソナルコンピュータ（ＰＣ）ともいう。）１００は、マイク１０１と、音声認識部１０２と、ＲＯＭ（Read Only Memory）１０３と、ＲＡＭ（Random Access Memory）１０４と、スピーカ１０５、音声合成部１０６と、ＣＰＵ（Central Processing Unit）１０７と、表示部１０８と、入力部１０９と、電源部１１０と、ネットワーク接続部１１１と、ＨＤＤ（Hard Disk Drive）１１２と、から構成される。
【００２８】
マイク１０１は、ユーザの音声を音声データ（電気信号）に変換するものである。音声認識部１０２は、マイク１０１によって音声データに変換されたユーザの音声を認識するものである。ＲＯＭ１０３は、ＰＣ１００全体の動作を制御するプログラムを格納するものである。ＲＡＭ１０４は、ＲＯＭ１０３に格納されたプログラムが展開される記憶領域である。スピーカ１０５は、後述するＰＣ１００のコンシェルジュが出力する音声データを音声に変換するものである。音声合成部１０６は、ＰＣ１００のコンシェルジュが出力する音声データを、所望の音声に変換されるよう合成するものである。ＣＰＵ１０７は、ＰＣ１００全体の動作を制御するものであり、ＲＯＭ１０３に格納された制御プログラムをロードし、ＰＣ１００の動作によって得られた様々なデータをＲＡＭ１０４に展開するものである。
【００２９】
表示部１０８は、ＬＣＤ（Liquid Crystal Display）等で構成される表示画面であり、ＰＣ１００によって実行されたアプリケーションの結果や図示しないＴＶチューナによって受信されたテレビ番組を表示するものであり、ＰＣ１００の出力装置を構成している。入力部１０９は、キーボード、マウス、タッチパネル等、ユーザがＰＣ１００に対して指示を与えるものであり、ＰＣ１００の入力装置である。電源部１１０は、ＰＣ１００に対してＡＣ（Alternative Current：交流）又はＤＣ（Direct Current：直流）電源を与えるものである。ネットワーク接続部１１１は、インターネットに代表される図示しないネットワーク網に接続され、ネットワーク網とのインタフェースを図るものである。ＨＤＤ１１２は、ＰＣ１００のアプリケーションソフトウェアを格納したり、図示しないＴＶチューナによって受信されたテレビ番組等のコンテンツを録画したりするものである。なお、表示部１０８と入力部１０９は、ＬＣＤとタッチパネルとが一体となったタッチパネルディスプレイであっても良い。この場合、キーボードやマウスといった入力装置に代えて、指や図示しないスタイラスペンをタッチパネルディスプレイに接触させて直接文字を書く動作等を行ってデータ入力やコマンド入力といった操作を行うことができる。
【００３０】
次に、図２を参照して、本発明に実施形態における情報処理装置の主要部の構成について説明する。図２は、本発明の実施形態における情報処理装置の主要部の構成について説明する概略ブロック図である。
【００３１】
図２において、本発明の実施形態におけるＰＣ１００は、マイク２０１から入力されたユーザの音声が音声データ（電気信号）に変換されて、当該音声データが音声信号解釈部２０２によって解釈され、その結果がクライアント型音声認識部２０３において認識される。クライアント型音声認識部２０３は、認識した音声データをクライアントアプリケーション部２０４に渡す。
【００３２】
クライアントアプリケーション部２０４は、ユーザからの問い合わせに対する回答が、オフライン状態にあるローカルコンテンツ部２０８に格納されているか否かを確認し、ローカルコンテンツ部２０８に格納されている場合は、当該ユーザからの問い合わせに対する回答を、後述するテキスト読上部２０９、クライアント型音声合成部２１０を経由して、スピーカ２１１から音声出力する。
【００３３】
ユーザからの問い合わせに対する回答が、ローカルコンテンツ部２０８に格納されていない場合は、ＰＣ１００単独で回答を持ち合わせていないことになるので、インターネット等のネットワーク網２０７に接続されるネットワーク接続部２０６を介して、インターネット上の検索エンジン等を用いてユーザからの問い合わせに対する回答を検索し、得られた検索結果を、テキスト読上部２０９、クライアント型音声合成部２１０を経由して、スピーカ２１１から音声出力する。
【００３４】
クライアントアプリケーション部２０４は、ローカルコンテンツ部２０８、又はネットワーク網２０７から得られた回答をテキスト（文字）データに変換し、テキスト読上部２０９に渡す。テキスト読上部２０９は、テキストデータを読み上げ、クライアント型音声合成部２１０に渡す。クライアント型音声合成部２１０は、音声データを人間が認識可能な音声データに合成しスピーカ２１１に渡す。スピーカ２１１は、音声データ（電気信号）を音声に変換する。また、スピーカ２１１から音声を発するのに合わせて、ディスプレイ部に当該音声に関連する詳細な情報を表示する。
【００３５】
次に、本発明の実施形態における情報処理装置のソフトウェア機能について説明する。図３は、本発明の実施形態における情報処理装置のソフトウェア機能について説明する機能ブロック図である。
【００３６】
図３に示すように、本発明の実施形態におけるＰＣ１００は、ネットワーク３１３を介して外部に設けられた複数のサーバ７０１、７０２、・・・、７０Ｎに接続されている。サーバ７０１、７０２、・・・、７０Ｎは、それぞれ、後述する様々な属性に対応する情報を保有している。
【００３７】
そして、ＰＣ１００は、ユーザから発せられる音声を入力するマイク３０１と、マイク３０１から入力された音声入力を音声信号（音声情報）として取り扱い、増幅等を行う音声入力部３０２と、音声入力部３０２から入力される音声情報をテキスト情報に変換すると共に、変換されたテキスト情報を所定の音節毎に分節するテキスト解析部３０３と、分節されたテキスト情報が、如何なる属性に対応する情報であるかを判定し、当該分節されたテキスト情報から属性を取得する要素属性判定部３０４と、を有している。また、要素属性判定部３０４は、分節されたテキスト情報と、このテキスト情報から得られる属性との対応関係を一時的に保存する機能も備えている。
【００３８】
さらに、ＰＣ１００は、サーバ７０１、７０２、・・・、７０Ｎのうち、どのサーバが、如何なる属性に対応する情報を保有しているかという情報を予め格納しているサーバＡＰＩ（Application Programming Interface）データベース３０７と、分節されたテキスト情報から得られる属性が、様々な属性に対応する情報を保有しているサーバ７０１、７０２、・・・、７０Ｎのうち、どのサーバが保有している属性に対応するものであるかを対応付けて特定するサーバ特定部３０５と、特定されたサーバにアクセスして、分節されたテキスト情報から得られる属性に対応するサーバから、当該属性に対応する情報を検索する検索部３０６と、を有している。
【００３９】
そして、ＰＣ１００は、検索部３０６によって検索された結果を文章（テキスト情報）として生成する文章生成部３１０と、文章生成部３１０によって生成されたテキスト情報（検索結果等）をディスプレイ部２０５（図２）に表示する表示部３０９と、テキスト情報で得られた検索結果を、スピーカ３１２から出力するための音声信号（音声情報）に変換する音声出力部３１１と、音声出力部３１１によって変換された音声を出力するスピーカ３１２と、を有している。
【００４０】
また、後述するように、１つの属性は、ある１つのテキスト情報だけでなく、互いに類似する複数のテキスト情報から得られる場合もある。したがって、分節されたテキスト情報が複数の互いに類似するテキスト情報であっても、同一の属性が得られるようにすることが求められる。そこで、ＰＣ１００は、用語データベース３０８を有しており、この用語データベース３０８には、互いに類似するテキスト情報を纏めた類義語辞書が予め保持されている。
【００４１】
次に、本発明の実施形態における情報処理装置の起動時の画面表示について説明する。図４から図６は、本発明の実施形態における情報処理装置の起動時の画面表示について説明する図である。
【００４２】
本発明の実施形態に係るＰＣ１００のコンシェルジュ４００、５００、６００は、起動時の時間帯や曜日に応じて、様々な挨拶を行うことができる。例えば、起動時が朝の時間帯であるときには、図４に示すように、コンシェルジュ４００が、「おはようございます！」と発声するのに合わせてディスプレイ部２０５（図２）に関連情報を表示する。同様に、起動時が昼間の時間帯であれば、図５に示すように、コンシェルジュ５００は、「こんにちは！」と発声し、夜の時間帯であれば図６に示すように、コンシェルジュ６００は、「こんばんは！」と発声する。また、時間帯以外にも、平日と休日といった曜日に応じた発声も行うことができる。
【００４３】
次に、本発明の実施形態における情報処理装置の具体的な動作について説明する。図７は、本発明の実施形態における情報処理装置の具体的な動作について説明する図である。
【００４４】
ＰＣ１００が、図４から図６に示したように起動している状態で、ユーザが、知りたい情報、検索したい情報をＰＣ１００に対して質問すると、ＰＣ１００は、その質問に対して回答する。例えば、図７に示すように、ユーザ８００が、「チャーリィ！京都までの行き方を教えて」とＰＣ１００に対して質問すると、ＰＣ１００は、入力された音声情報を、「キョウトマデノイキカタヲオシエテ」というテキスト情報に変換すると共に、「キョウト」、「マデ」、「イキカタ」、「オシエテ」に分節し、この分節されたテキスト情報から得られる属性に対応する情報を保有しているサーバを、サーバＡＰＩデータベース３０７（図３）に基づいてテキスト情報毎に特定する。そして、「到着駅は京都ですね。出発駅を教えてください。」と回答する。
【００４５】
この質問と回答とのやり取りで重要なことは、ＰＣ１００は、ユーザ８００から発せられる音声情報である、「チャーリィ！京都までの行き方を教えて」のうち、「チャーリィ」という音声に反応し、この音声に続けて発せられる音声を認識し、ユーザ８００との対話を開始しているのである。すなわち、ＰＣ１００は、ユーザ８００から発せられる音声に基づいて、これをテキスト情報に変換し、この変換されたテキスト情報の中に、所定のキーワード（本実施形態の場合は「チャーリィ」というキーワード）が含まれているか否かを判断し、キーワードが含まれていると判断すると、ユーザ８００との対話を開始し、このキーワード以降、ユーザ８００から発せられる音声情報（質問）を所定のテキスト情報に変換し、この変換された所定のテキスト情報に基づいて特定される、ユーザから要求されるコマンド（例えばユーザから発話される質問に対する回答等）を実行するのである。なお、このキーワードを何にするかは、ユーザが予め定めておくものとする。
【００４６】
また、上記の例では、ＰＣ１００は、ユーザ８００から発せられるある特定の音声情報に反応し、この音声情報に続けて発せられる音声情報をテキスト情報として認識し、所定のコマンドを実行しているが、ＰＣ１００が、音声認識部１０２（図１）によりテキスト情報を認識し、所定のコマンドを実行する契機としては、ユーザ８００から発せられる特定の音声情報に限定されることなく、音声認識部１０２によりテキスト情報を認識することができる音声情報であれば、如何なる音源を用いても良いことは勿論である。
【００４７】
そして、ＰＣ１００は、ユーザ８００から質問された「京都までの行き方を教えて」に対して、出発地点がどこであるか分からない、すなわち、ユーザ８００からなされた質問に対して検索結果を得ることができない。そこで、ＰＣ１００は、「京都までの行き方」という検索結果を得るために不足する項目である出発地点に関する情報について確認するため、ユーザ８００に対して「到着駅は京都ですね。出発駅を教えてください。」と問い合わせを行っているのである。すなわち、ユーザ８００から発せられる自由な表現から、何をすべきかを動的に判断し、検索結果を得るために不足する項目に関する情報を、動的にヒアリングを行っているのである。
【００４８】
そして、ユーザ８００が「チャーリィ！麻布十番から」と回答すると、ＰＣ１００は、出発地点が分かるので、麻布十番から京都までのルートを検索し、「出発駅は、麻布十番ですね。ルートを探します。６件ありました。条件を変えたいときは言ってくださいね！」と回答する。
【００４９】
また、ユーザ８００からなされる、「チャーリィ！京都までの行き方を教えて」という質問は、それ以前にルート検索に関する話題を行っていない場面、すなわち、全く別の会話から、突然話題を京都までのルート検索の話に変えても、ＰＣ１００は追随することができる。さらに、ユーザ８００が、「チャーリィ！京都までの行き方を教えて」とだけ質問した場合には、出発地点に関する情報が不足しているので、不足する情報を動的にヒアリングしているのである。
【００５０】
そして、ユーザ８００が、検索条件を変えるため、「チャーリィ！伏見まで」というと、ユーザ８００が発する「麻布十番から」の「から」や、「伏見まで」の「まで」といった自然な会話表現から、出発地点か目的地なのかを動的に判断するのである。
【００５１】
本実施形態におけるＰＣ１００には、音声対話システムのソフトウェアアプリケーションプログラムがインストールされているが、このソフトウェアアプリケーションプログラムを常駐モードにするか、非常駐モードにするかを予め選択することができる。そして、常駐モードを選択すると、次回起動時からはスタートアップ時から起動する。さらに、常駐モードでは、常時、音をモニタリングし、ノイズなのか音声なのかを即座に判断している。
【００５２】
常駐モードにされていると、音声認識されたテキスト情報の中から「チャーリィ」といった所定のキーワードの有無だけを認識し、当該所定のキーワードが認識されると、音声認識されたテキストを、記憶して文脈解析するルーチンに引き渡す動作に移行する。
【００５３】
本実施形態におけるＰＣ１００には、一通りの応答、及び結果が存続する時間、具体的には、現在の話題が天気に関するものである場合、その天気に対する一通りの応答、及び天気に関する検索結果が存続する時間として、所定の時間からなる待機時間という概念を用いている。この待機時間は、ユーザ８００が、何らかのアクションを起こした場合、例えば、ユーザ８００が、話題を天気に関するものから他の話題に変える質問を行った場合、又は、ユーザ８００の求めに応じて返事を行った場合、例えば、ユーザ８００から、天気に関する話題とは異なる質問がなされ、その質問に応じてＰＣ１００が返事を行った場合、の何れかのタイミングにおいてリセットされる。そして、この待機時間は、ユーザ８００に対して何らかの検索結果を回答した直後から直ちにカウントされる。
【００５４】
そして、この待機時間の間は、すべての情報、すなわち、ユーザ８００との間で取り交わされたすべての情報、具体的には、待機時間が経過する前のキーワード、キーワードに基づいて行った検索、及び検索結果を履歴情報として保持し、活用している。そして、待機時間内に、ユーザ８００から新たな質問、及び／又は命令が発せられた場合、この保持している履歴情報を活用することとしている。すなわち、保持している履歴情報に共通する事項を抽出し、当該新たな質問、及び／又は命令を特定する事項と共にキーワードとして検索を行うのである。そして、待機時間が経過すると、待機時間が経過する前に保持されていたキーワード、キーワードに基づいて行った検索、及び検索結果等の履歴を削除する。
【００５５】
また、この待機時間が経過すると、ＰＣ１００は、ネットワーク接続部２０６（図２）を介して接続されるネットワーク網２０７上のサーバとのセッション（接続）を開放する。この時点で、ＰＣ１００にそれまで保持されていたサーバから得た情報が破棄される。そして、ユーザ８００によるＰＣ１００を用いた他の作業の邪魔にならないよう、さらに、待機時間が経過したこと（ＰＣ１００のモードが変わったこと）を示すため、ＰＣ１００の表示部１０８（図１）のウィンドウモード（ユーザインタフェース）を、図９に示すようなコンパクトなウィンドウモードに移行する。図９は、本発明の実施形態における情報処理装置のユーザインタフェースが最小化された時の画面表示について説明する図である。
【００５６】
そして、ＰＣ１００は、ユーザ８００から発せられる次のコマンドを待つ。この状態では、キーワード、キーワードに基づいて行った検索、及び検索結果の履歴情報を保持している待機時間を既に経過しているので、ユーザ８００から発せられる音声情報に、所定のキーワード（本実施形態の場合は「チャーリィ」というキーワード）が含まれているか否かを判断し、キーワードが含まれていると判断すると、ユーザ８００から入力される音声情報から認識されたテキスト情報に含まれる質問をキーワードとして検索を行い、検索結果を出力しているのである。
【００５７】
なお、待機時間経過後、ＰＣ１００を、ウェークアップさせる契機として、上記所定のキーワード（後述するウェークアップワード、本実施形態では、「チャーリィ」）の認識以外に、例えば、ディスプレイ部２０５（図２）に表示された所定のボタンをマウスポインタでクリックする、ＰＣ１００のハードウェアボタンを押下する、又は、ユーザ８００が発する声により声紋を認識する等、如何なる方法を用いても良いことは勿論である。
【００５８】
そして、ユーザ８００から発せられる質問に対しローカルコンテンツ部２０８に格納されている情報で回答が済む場合は、ネットワーク網２０７に接続することなく回答を行い、ネットワーク網２０７に対するアクセスが必要な質問であれば、セッションを接続し、新たな状態、すなわち、履歴情報がない状態で質問に対する回答を検索する。
【００５９】
このように、ユーザは、ＰＣ１００を起動状態にさえしておけば、後は、今やっている普通の作業（読書等）を何ら中断することなく、すなわち、ＰＣ１００とは無関係の作業を行っていたり、ＰＣ１００を使って何か別の作業を行っていたりしても、ＰＣ１００に触れることなく、ＰＣ１００に対して自然な言い方で質問すれば、ＰＣ１００は回答してくれるのである。これにより、ユーザ８００は、外出する前に、素早く簡単に乗り換え情報を調べることができる。また、回答結果が得られない場合であっても、ＰＣ１００が誘導してくれるのである。
【００６０】
そして、ＰＣ１００は、上述したように、オフライン状態にあるローカルコンテンツ部２０８（図２）を有しており、ユーザ８００からなされた質問に対する回答が、このローカルコンテンツ部２０８に格納されているか否かを確認し、ローカルコンテンツ部２０８に格納されている場合は、ネットワーク接続部２０６（図２）を介してネットワーク網２０７に接続することなく、ユーザに対してスピーカ２１１（図２）から回答を行う。要するに、ネットワーク網２０７に対しては、必要に応じて接続し、検索を行い、ローカルコンテンツ部２０８に格納されている情報で回答が済む場合は、ネットワーク網２０７に接続しないのである。
【００６１】
次に、ユーザ８００からなされる質問に対してＰＣ１００が検索結果を得ることができるか否かを判断した結果、検索結果を得るための情報が不足していると判断すると、ＰＣ１００はユーザ８００に対して不足情報を要求するといった、具体的な音声解析の中身について説明する。
【００６２】
図７で説明した乗り換え情報の対話検索において、検索を実行するためには、出発地、到着地といった場所、移動方法（移動手段）、出発時間、到着時間、所要時間、交通費等といった検索のための必須情報と、この必須情報に対応する情報（出発駅、到着駅、電車、午前１０時、午後２時、２時間、５０００円等）と、が必要となる。図７の例では、出発駅、及び到着駅については検索のための必須情報であり、移動方法については、必須情報ではなくオプション情報に対応するものである。
【００６３】
ユーザ８００からなされる、「チャーリィ！京都までの行き方を教えて」という質問では、検索のための必須項目のうち、場所の属性情報に対応する値である到着駅に関する情報を得ることはできるが、場所情報に対応する出発駅に関する情報を得ることができない。そこで、ＰＣ１００は、不足項目の情報（出発地）に対応する情報である出発駅に関する情報を得るために、「到着駅は京都ですね。出発駅を教えてください。」と言うことにより、不足項目を補充するための音声情報を要求している。すなわち、検索結果を得るための必須項目がすべて満たされているか否かを判断し、必須項目がすべて満たされていないときは、不足項目を補充するための音声情報を順次要求すると共に、既に取得した検索のための情報、及び順次取得した不足項目を補充するための情報により、必須項目をすべて満たしているとき、に検索を開始し、検索結果を出力しているのである。
【００６４】
そして、図７の例では、ユーザ８００からなされる、「チャーリィ！京都までの行き方を教えて」という質問のうち、「まで」というキーワードを認識することにより、乗り換え案内の検索に移行している。このように、例えば外出する前等に、検索のためのキーワードを会話の最初からすべて入力することなく、自然な会話で、声だけで簡単に、しかも快適に情報を調べることができるのである。
【００６５】
次に、本発明の実施形態における情報処理装置の動作について説明する。図８は、本発明の実施形態における情報処理装置の動作について説明するフローチャートである。
【００６６】
図８において、ステップ（以下、「Ｓ」という。）８０１の処理では、まず、ＰＣ１００のマイク３０１（図３）から音声が入力される。入力された音声は、音声入力部３０２において音声信号（音声情報）として取り扱われ、増幅等が行われた後、Ｓ８０２の処理へ移行する。Ｓ８０２の処理では、テキスト解析部３０３において、音声情報がテキスト情報に変換されると共に、所定の音節毎に分節され解析される。そして、Ｓ８０３の処理では、要素属性判定部３０４において、分節されたテキスト情報が、如何なる属性に対応する情報であるかが判定され、Ｓ８０４の処理へ移行する。
【００６７】
Ｓ８０４の処理では、サーバＡＰＩデータベース３０７（図３）を参照することにより、分節されたテキスト情報から得られる属性のうち、サーバ７０１、７０２、・・・、７０Ｎが保有している属性に対応しない要素、すなわち、属性が確定しない要素（テキスト情報）があるか否かが判断される。属性が確定しない要素がある（Ｓ８０４：ＹＥＳ）と判断されると、Ｓ８１０の処理へ移行し、属性が確定しない要素がない（Ｓ８０４：ＮＯ）と判断されると、Ｓ８０５の処理へ移行する。
【００６８】
Ｓ８１０の処理では、分節されたテキスト情報の属性を確定するための音声情報を要求する旨の質問がなされる。そして、要求された音声情報が入力されると、再びＳ８０１の処理を行う。属性の確定しない要素がないとき（Ｓ８０４：ＮＯ）、又は、Ｓ８１０の処理で要求された音声情報をテキスト情報に変換した結果、当該テキスト情報から属性を得ることができ、属性の確定しない要素がないとき（Ｓ８０４：ＮＯ）は、Ｓ８０５の処理において、テキスト情報から得られる属性に対応する情報を保有するサーバが、サーバ特定部３０５（図３）によって特定される。
【００６９】
Ｓ８０６の処理では、Ｓ８０５の処理で特定されたサーバを用いて検索を実行する際、分節されたテキスト情報が、検索を実行するための必須項目（必須要件）をすべて満たしているか（不足項目があるか）否かが判断される。不足項目がある（Ｓ８０６：ＹＥＳ）と判断されると、Ｓ８１１の処理へ移行し、不足項目がない（Ｓ８０６：ＮＯ）と判断されると、Ｓ８０７の処理へ移行する。
【００７０】
Ｓ８１１の処理では、不足項目を補充するための質問、すなわち、音声情報の入力を要求する。そして、要求された音声情報が入力されると、再びＳ８０１の処理を行う。不足項目がない（Ｓ８０６：ＮＯ）と判断されたとき、又はＳ８１１の処理で要求された音声情報をテキスト情報に変換し、当該テキスト情報から得られる属性に基づいて行う検索の不足項目が補充され、不足項目がない（Ｓ８０６：ＮＯ）と判断されたときは、Ｓ８０７の処理において、Ｓ８０５の処理で特定されたサーバを用いた検索が開始される。
【００７１】
Ｓ８０８の処理では、Ｓ８０７の処理で検索が実行された結果、検索結果（ある属性に対応する情報）の情報量が所定の閾値以上（検索結果の情報量が所定の閾値未満）であるか否かが判断される。所定の閾値以上（所定の閾値未満）である（Ｓ８０８：ＮＯ）と判断されると、Ｓ８１２の処理へ移行し、所定の閾値未満である（Ｓ８０８：ＹＥＳ）と判断されると、Ｓ８０９の処理へ移行する。なお、この所定の閾値は、検索対象となる属性に応じて、任意の値に設定することが可能である。
【００７２】
Ｓ８１２の処理では、検索結果（ある属性に対応する情報）の情報量を所定の閾値未満に絞り込むための質問、すなわち、音声情報の入力を要求する。そして、要求された音声情報が入力されると、再びＳ８０１の処理を行う。検索結果の情報量が所定の閾値未満である（Ｓ８０８：ＹＥＳ）と判断されたとき、又はＳ８１２の処理で要求された音声情報をテキスト情報に変換し、当該テキスト情報から得られる属性に基づいて行う検索結果の情報量が所定の閾値未満である（Ｓ８０８：ＹＥＳ）と判断されたときは、Ｓ８０９の処理へ移行する。Ｓ８０９の処理では、検索結果がスピーカ２１１（図２）から出力されると共に、ディスプレイ部２０５（図２）に表示される。
【００７３】
なお、図８に示した本発明の実施形態における情報処理装置１００を構成する各機能ブロックの各動作は、コンピュータ上のプログラムに実行させることもできる。すなわち、情報処理装置１００のＣＰＵ１０７が、ＲＯＭ１０３、ＲＡＭ１０４等から構成される記憶部に格納されたプログラムをロードし、プログラムの各処理ステップが順次実行されることによって行われる。
【００７４】
以上説明してきたように、本発明によれば、入力される音声情報をテキスト情報に変換する手段と、変換されたテキスト情報を分節する手段と、外部に設けられた複数のサーバの各々が、如何なる属性に対応する情報を保有しているかという情報を予め格納するデータベースと、データベースに格納された情報に基づいて、分節されたテキスト情報から得られる属性と、属性に対応する情報を保有しているサーバとをそれぞれを対応付ける手段と、対応付けられたサーバから属性に対応する情報を検索する際、分節されたテキスト情報が、検索のための必須項目をすべて満たしているか否かを判断する手段と、必須項目をすべて満たしていないとき、不足項目を補充するための音声情報を要求する手段と、を含むことにより、これまでに得た情報では条件が不十分であって、検索を実行することができないとき、ユーザに働きかけ検索に必要な情報を自動的に補足することができるのである。
【００７５】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範囲な趣旨及び範囲から逸脱することなく、これら具体例に様々な修正及び変更が可能である。
【符号の説明】
【００７６】
１００    情報処理装置（ＰＣ）
１０１、２０１、３０１    マイク
１０２    音声認識部
１０３    ＲＯＭ
１０４    ＲＡＭ
１０５、２１１    スピーカ
１０６    音声合成部
１０７    ＣＰＵ
１０８    表示部
１０９    入力部
１１０    電源部
１１１    ネットワーク接続部
１１２    ＨＤＤ
２０２    音声信号解釈部
２０３    クライアント型音声認識部
２０４    クライアントアプリケーション部
２０５    ディスプレイ部
２０６    ネットワーク接続部
２０７、３１３    ネットワーク
２０８    ローカルコンテンツ部
２０９    テキスト読上部
２１０    クライアント型音声合成部
２１１、３１２    スピーカ
３０２    音声入力部
３０３    テキスト解析部
３０４    要素属性判定部
３０５    サーバ特定部
３０６    検索部
３０７    サーバＡＰＩデータベース
３０８    用語データベース
３０９    表示部
３１０    文章生成部
３１１    音声出力部
４００、５００、６００、９００    コンシェルジュ
７０１、７０２、・・・、７０Ｎ    サーバ
８００    ユーザ
【図１】
2015069103.tif 000003
【図２】
2015069103.tif 000004
【図３】
2015069103.tif 000005
【図４】
2015069103.tif 000006
【図５】
2015069103.tif 000007
【図６】
2015069103.tif 000008
【図７】
2015069103.tif 000009
【図８】
2015069103.tif 000010
【図９】
2015069103.tif 000011