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