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