(57)【特許請求の範囲】
【請求項１】
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組と、当該複数の組のそれぞれについて関連する１以上のキーワード及び当該キーワードについて設定された重み係数とを記憶する記憶部と、
前記各キーワードについて、音声入力部を介して入力された音声信号から検出された少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、前記重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出するキーワード決定部と、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力する提示情報取得部と、
複数の前記サービス識別子のうち、前記取得された現在の提示情報の供給源を表す第１のサービス識別子と、当該現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、当該第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、当該第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する重み更新部と、
を有する対話制御装置。
【請求項２】
前記重み更新部が、前記第１のサービス識別子と、前記第２のサービス識別子とが異なる場合、前記第１のサービス識別子と関連付けられたキーワードについて設定された重み係数を、前記第２のサービス識別子と関連付けられたキーワードについて設定された重み係数よりも大きくする、請求項１に記載の対話制御装置。
【請求項３】
現在の提示情報の取得時を含む第１の期間における提示情報の供給源の変化を表す第１の判定結果と、前記第１の期間よりも長い第２の期間における提示情報の供給源の変化を表す第２の判定結果の組み合わせに応じて、提供情報の供給源が変更されたことを表す「変化有り」、提供情報の供給源が変更されていないことを表す「変化無し」、及び提供情報の供給源が変更されたか否かが不確定であることを表す「変化不確定」の３つの変化結果のうちの何れかを出力する変化検出部をさらに有し、
前記重み更新部は、前記変化検出部から出力された変化結果に応じて、前記第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、前記第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する、請求項１または２に記載の対話制御装置。
【請求項４】
複数の前記キーワードのそれぞれについて、当該キーワードと関連する前記サービス識別子と異なるサービス識別子と関連する他のキーワードのうち、最も類似するキーワードとの類似度合いを表すキーワード間類似度を算出する類似度算出部をさらに有し、
前記重み更新部は、複数の前記キーワードのそれぞれについて、当該キーワードについての前記キーワード間類似度に基づいて前記重み係数を決定する、請求項１に記載の対話制御装置。
【請求項５】
前記重み更新部は、複数の前記キーワードのうち、前記キーワード間類似度が他のキーワードと類似していないことを表す値であるキーワードに対する前記重み係数を前記記憶部に記憶されてからの経過時間にかかわらず一定値とし、一方、複数の前記キーワードのうち、前記キーワード間類似度が他のキーワードと少なくとも一部が類似していることを表す値であるキーワードに対する前記重み係数を前記記憶部に記憶されてからの経過時間が長いほど小さくする、請求項４に記載の対話制御装置。
【請求項６】
前記類似度算出部は、複数の前記キーワードのそれぞれについて、当該キーワードが前記記憶部に記憶された時刻と、当該キーワードについての前記最も類似するキーワードが前記記憶部に記憶された時刻との差をさらに求め、
前記重み更新部は、複数の前記キーワードのうち、前記キーワード間類似度が他のキーワードと少なくとも一部が類似していることを表す値であり、かつ、前記時刻の差が小さいキーワードほど、前記重み係数を小さい値とする、請求項４に記載の対話制御装置。
【請求項７】
複数の提示情報の供給源のうちの二つの供給源間の遷移の頻度が高いほど、当該二つの供給源間の関連度を高くするように、該関連度を算出する関連度算出部をさらに有し、
前記類似度算出部は、複数の前記キーワードのそれぞれについて、当該キーワードと関連する前記提示情報の供給源と、当該キーワードについての前記最も類似するキーワードと関連する前記提示情報の供給源間の前記関連度を、当該キーワードと対応付け、
前記重み更新部は、複数の前記キーワードのそれぞれについて、当該キーワードに対応する前記関連度が二つの提示情報の供給源間に関連性があることを表す値であれば、当該キーワードについての前記重み係数と、当該キーワードについての前記最も類似するキーワードについての重み係数と一致させる、請求項４に記載の対話制御装置。
【請求項８】
音声入力部を介して入力された音声信号から少なくとも一つの認識候補単語を検出し、
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組のそれぞれに関連付けられたキーワードについて、前記少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、当該キーワードについて設定された重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出し、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力し、
複数の前記サービス識別子のうち、前記取得された現在の提示情報の供給源を表す第１のサービス識別子と、当該現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、当該第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、当該第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する、
ことを含む対話制御方法。
【請求項９】
音声入力部を介して入力された音声信号から少なくとも一つの認識候補単語を検出し、
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組のそれぞれに関連付けられたキーワードについて、前記少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、当該キーワードについて設定された重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出し、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力し、
複数の前記サービス識別子のうち、前記取得された現在の提示情報の供給源を表す第１のサービス識別子と、当該現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、当該第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、当該第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する、
ことをコンピュータに実行させる対話制御用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、ユーザが発した音声を認識し、その認識結果に応じた処理を実行する対話制御装置、対話制御方法及び対話制御用コンピュータプログラムに関する。
【背景技術】
【０００２】
近年、音声によってコマンドまたは情報を入力し、その入力結果に応じて所望の情報を音声にて表現したり、所定のタスクを実行するマンマシンインターフェースを有する音声対話システムが開発されている。従来の音声対話システムは、予め定められたシナリオに沿って音声による対話がなされるように設計されている。すなわち、従来の音声対話システムでは、シナリオの各フェーズにおいて受付可能なコマンドあるいは入力可能な情報の種類が予め規定されており、さらに受け付けたコマンドあるいは情報に応じた遷移先のフェーズも予め規定されている。したがって、シナリオの各フェーズにおいて、受付可能なコマンドあるいは情報をユーザが予め知っているか、あるいは音声対話システムが受け付け可能なコマンド等をユーザに通知する必要があり、ユーザにとって使い難いシステムとなることがあった。また、ユーザは、所望の情報を得たり、あるいは音声対話システムに所望のタスクを実行させるために、予め定められた手順に従って複数のフェーズを経ることが求められ、その結果、音声対話システムは、ユーザにとって操作が煩わしいものとなるおそれがあった。音声対話システムは、シナリオの現在のフェーズから任意のフェーズへ遷移できれば、ユーザの煩わしさを軽減できるが、それを実現するためには、任意のフェーズへ遷移するための任意のコマンドを待ち受ける必要がある。そして音声対話システムは、任意のコマンドの中からユーザが発声したコマンドを誤りなく認識する必要がある。
【０００３】
そこで、音声認識の対象となる単語などを所定の条件に従って追加したり、選択したり、あるいは特定の単語を認識され易くすることによってユーザ発声コマンドの認識率を向上し、効率良く所望の情報を得られるようにする技術が提案されている（例えば、特許文献１〜７を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１６９４７０号公報
【特許文献２】特開２０００−２１５０２３号公報
【特許文献３】特開２００２−２９７１７７号公報
【特許文献４】特開２００７−３２７９１３号公報
【特許文献５】特開２００２−３１８１３６号公報
【特許文献６】特開平１１−７３４１９号公報
【特許文献７】特開２００９−２３６９６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ユーザに情報を提供するサービス供給源は、複数存在することがある。このような場合に、異なるサービス供給源間では、提供するサービスに応じて音声認識の対象となる単語も異なっている可能性が高い。しかし、異なるサービス供給源間で、音声認識の対象となる複数の意味の異なる単語の発音がたまたま共通していたり、あるいは意味の異なる単語の発音が類似することがある。従来の技術によるシステムは、対話の遷移または認識対象となる単語をシナリオに応じて限定しているため、上記のような発音が共通（または類似）した複数の単語を同時に音声認識の対象とする場合は少ない。しかし、音声対話システムがユーザの利便性を考慮してシナリオの遷移に制限を設けず、認識すべきコマンドも任意のコマンドとすると、異なるサービス供給源間で発音の共通（または類似）する単語を同時に認識対象とすることがある。その結果、音声対話システムは、誤った単語を認識してしまい、ユーザの意図とは異なってサービス供給源を切り替えてしまうおそれがあった。
【０００６】
そこで本明細書は、複数の情報供給源が有っても、ユーザが所望する情報を正確に提供できる対話制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一つの実施形態によれば、対話制御装置が提供される。この対話制御装置は、テキスト情報を含む提示情報を識別する情報識別子と提示情報の供給源を識別するサービス識別子との複数の組と、複数の組ごとに関連する１以上のキーワード及びそのキーワードについて設定された重み係数とを記憶する記憶部と、各キーワードについて、音声入力部を介して入力された音声信号から検出された少なくとも一つの認識候補単語との類似度を、記憶部に記憶されたキーワード中で少なくとも一つの認識候補単語と一致する部分が多く、かつ、重み係数が大きいほど大きくなるように算出し、類似度が最大となるキーワードを検出するキーワード決定部と、検出されたキーワードと関連するサービス識別子及び情報識別子の組により特定される提示情報を取得し、その提示情報をユーザに通知する出力部へ出力する提示情報取得部と、複数のサービス識別子のうち、取得された現在の提示情報の供給源を表す第１のサービス識別子と、現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、第１のサービス識別子と関連付けられたキーワードについて設定された重み係数と、第２のサービス識別子と関連付けられたキーワードについて設定された重み係数を更新する重み更新部とを有する。
【０００８】
本発明の目的及び利点は、請求項において特に指摘されたエレメント及び組み合わせにより実現され、かつ達成される。
上記の一般的な記述及び下記の詳細な記述の何れも、例示的かつ説明的なものであり、請求項のように、本発明を限定するものではないことを理解されたい。
【発明の効果】
【０００９】
本明細書に開示された対話制御装置は、複数の情報供給源が有っても、ユーザが所望する情報を正確に提供できる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態による対話制御装置を含む対話制御システムの概略構成図である。
【図２】対話制御システムが有する端末の処理部の概略構成図である。
【図３】対話制御システムが有する第１の実施形態による対話制御装置の一例であるサーバの制御部の機能ブロック図である。
【図４】キーワードリストの一例を示す図である。
【図５】認識キーワード決定処理の動作フローチャートを示す図である。
【図６】提示情報リストの一例を示す図である。
【図７】サービス履歴リストの一例を示す図である。
【図８】（ａ）及び（ｂ）は、それぞれ、サービス履歴リストの一例を示す図である。
【図９】品詞重みテーブルの一例を示す図である。
【図１０】（ａ）及び（ｂ）は、それぞれ、提示情報のサービス供給源が変更されていない場合における、時間重み係数変更前のキーワードリストの一例と、時間重み係数変更後のキーワードリストの一例とを示す図である。
【図１１】（ａ）は、時間重み係数変更前のキーワードリストの一例を示す図である。（ｂ）は、提示情報のサービス供給源が変更された場合における、時間重み係数変更後のキーワードリストの一例を示す図である。（ｃ）は、サービス供給源の変更が不確定である場合における、時間重み係数変更後のキーワードリストの一例を示す図である。
【図１２】対話制御処理の動作フローチャートを示す図である。
【図１３】第２の実施形態による対話制御装置の制御部の機能ブロック図である。
【図１４】類似度算出処理の動作フローチャートを示す図である。
【図１５】第２の実施形態によるキーワードリストの一例を示す図である。
【図１６】第２の実施形態による対話制御装置を含む対話制御システムにより実行される対話制御処理の動作フローチャートを示す図である。
【図１７】第３の実施形態による対話制御装置における、類似度算出処理の動作フローチャートである。
【図１８】第３の実施形態によるキーワードリストの一例を示す図である。
【図１９】第４の実施形態による対話制御装置の一例であるサーバの制御部の機能ブロック図である。
【図２０】サービス遷移履歴テーブルの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図を参照しつつ、様々な実施形態による対話制御装置について説明する。
この対話制御装置は、ユーザが過去に情報の提供を受けた各サービス供給源に関連するキーワードをそのサービス供給源と関連付けて記憶しておく。そしてこの対話制御装置は、現在提供されている情報のサービス供給源に関連する特定のキーワードを検出する際の重み付けを、そのサービス供給源とは異なるサービス供給源に関連するキーワードよりも大きくする。これにより、この対話制御装置は、ユーザが意図しないサービス供給源の切り替わりを生じ難くすることで、ユーザが所望する情報を正確に提供可能とする。
【００１２】
図１は、第１の実施形態による対話制御装置を含む対話制御システムの概略構成図である。本実施形態では、対話制御システム１は、ユーザが音声を入力し、入力した音声に応じた情報の提供を受けるための端末２と、端末２を介して入力された音声に応じた情報を選択するための対話制御装置を含むサーバ３とを有する。
端末２とサーバ３とは、例えば、公衆通信回線などの通信ネットワーク４を介して互いに通信可能に接続されている。さらに、サーバ３は、通信ネットワーク４を介して、Webサーバまたはftpサーバなどの外部情報源５と通信可能に接続されている。なお、端末２とサーバ３とは、通信ネットワーク４とは別個の専用線などの通信回線によって接続されていてもよい。
【００１３】
端末２は、例えば、携帯電話機、携帯情報端末、あるいは固定端末であり、音声入力部２１と、音声出力部２２と、通信部２３と、記憶部２４と、処理部２５とを有する。さらに端末２は、液晶ディスプレイといった表示部（図示せず）をさらに有してもよい。
【００１４】
音声入力部２１は、例えば、マイクロホンと、アナログ／デジタル変換器とを有する。そしてユーザが発した音声はマイクロホンによりアナログの電気信号である音声信号に変換され、そのアナログの音声信号は、アナログ／デジタル変換器により所定のサンプリング周波数でサンプリングされてデジタルの音声信号に変換された後、処理部２５へ送られる。
【００１５】
音声出力部２２は、ユーザに提示情報を通知する出力部の一例であり、例えば、デジタル／アナログ変換器とスピーカとを有する。そして音声出力部２２は、デジタル／アナログ変換器により、処理部２５から受け取った音声信号をアナログ化し、そのアナログ化された音声信号がスピーカにより音声に変換され、ユーザへ向けて出力される。
【００１６】
通信部２３は、処理部２５から受け取った認識候補単語などの情報を通信ネットワーク４を介してサーバ３へ送信し、一方、通信ネットワーク４を介して提示情報等をサーバ３から受信して処理部２５へ渡す。そのために、通信部２３は、端末２を通信ネットワーク４に接続するためのインターフェース回路を有する。
なお、認識候補単語及び提示情報の詳細については後述する。
【００１７】
記憶部２４は、例えば、半導体メモリを有する。そして記憶部２４は、処理部２５が端末２を制御するための各種プログラム、端末２上で動作するアプリケーションプログラム及びそれらプログラムの実行に必要な各種のデータを記憶する。例えば、記憶部２４は、入力された音声信号から単語を認識するために利用される音響モデルを記憶する。また記憶部２４は、提示情報から合成音声信号を生成するために利用される韻律辞書、言語辞書及び音声波形辞書などを記憶してもよい。さらに記憶部２４は、認識候補単語及び提示情報を一時的に記憶してもよい。
【００１８】
処理部２５は、一つまたは複数のプロセッサと、周辺回路とを有する。そして処理部２５は、音声入力部２を介して入力された音声信号から予め登録されている複数の単語を認識し、認識された単語を認識候補単語として出力する。また処理部２５は、提示情報に示されたテキストに基づいて、合成音声信号を作成する。
【００１９】
図２は、処理部２５の機能ブロック図である。処理部２５は、音声認識部２６と、音声合成部２７とを有する。
処理部２５が有するこれらの各部は、例えば、処理部２５が有するプロセッサ上で動作するコンピュータプログラムにより実現される機能モジュールである。なお、処理部２５が有するこれらの各部は、それぞれ、別個の回路として、端末２に実装されてもよい。さらに、処理部２５が有するこれらの各部は、その各部の機能を実現する一つの集積回路として端末２に実装されてもよい。
【００２０】
音声認識部２６は、音声入力部２を介して入力された音声信号から予め登録されている複数の単語を検出し、検出された単語を認識候補単語として出力する。
本実施形態では、音声認識部２６は、認識対象となる認識語彙を格納した単語辞書と、予め作成された音響モデルを用いて認識候補単語を検出する。音響モデルは、例えば、単語の発音を音素または音節といった単位音ごとに区分し、その単位音の順序に従って、その単位音に対応する単位音響モデルを連結することにより生成され、予め、記憶部２４に記憶される。この単位音響モデル及び音響モデルは、例えば、それぞれ、隠れマルコフモデル（Hidden Markov Model, HMM）により表される。音声認識部２６は、単位音響モデルを表すHMMを用いて、音声データの所定の区間から抽出される１以上の特徴量に基づいて、特定の単位音に対するその所定の区間が推定音である確率または尤度を算出する。そして音声認識部２６は、単語辞書に含まれる単語ごとに単位音を連結して生成した音響モデルについて、得られた確率または尤度の高いものから、認識候補単語として出力する。なお、以下では、音声認識部２６は尤度を算出するものとして説明する。
なお、単語辞書は、サーバ３にて検索されるサービスの種類及び提供される情報を特定するために用いられる全てのキーワードについて準備されることが好ましい。
【００２１】
音声認識部２６は、認識対象となる、音声入力部２を介して取得した音声信号から、音声認識に用いられる特徴量を抽出する。そのために、音声認識部２６は、例えば、音声信号を所定のフレーム長を持つフレームごとに高速フーリエ変換といった周波数変換を行ってフレームごとのスペクトルを求める。なお、フレーム長は、例えば、10ミリ秒〜100ミリ秒程度に設定される。そして音声認識部２６は、そのスペクトルに基づいて、特徴量として、例えば、フレームごとに、メル周波数ケプストラム係数（Mel Frequency Cepstral Coefficient、MFCC）またはフレーム間のパワーの差分値を求める。音声認識部２６は、特徴量としてMFCCを算出する場合、例えば、各フレームのスペクトルをメル尺度のパワー値に変換した後、そのパワー値の対数に対して再度離散コサイン変換などの周波数変換を行うことによりMFCCを算出する。また音声認識部２６は、特徴量としてフレーム間のパワーの差分値を求める場合、例えば、各フレームの周波数帯域ごとのスペクトルの２乗の和をパワーとして求め、連続する二つのフレーム間でパワーの差を求めることによりその差分値を求める。
【００２２】
なお、音声認識部２６は、特徴量として、音響モデルを用いた音声認識で用いられる他の様々な特徴量（例えば、基本周波数）の何れかを抽出してもよい。また音声認識部２６は、音声データから、複数の種類の特徴量を抽出してもよい。
【００２３】
音声認識部２６は、音響モデルと、１以上のフレームから得られた特徴量の組とを照合することによって、単語辞書に含まれる単語ごとに単位音を連結して生成した単語ごとのとの尤度を求める。そして音声認識部２６は、尤度が高い方から順に所定数の単語を認識候補単語のセットとして検出する。所定数は、例えば、１〜５程度に設定される。
【００２４】
なお、音声認識部２６は、動的時間伸縮法など、他の音声認識の手法に従って認識候補単語を検出してもよい。
【００２５】
音声認識部２６は、認識候補単語のセットが検出される度に、その認識候補単語のセットを表すテキスト情報を通信部２３を介してサーバ３へ送信する。
【００２６】
音声合成部２７は、端末２がサーバ３からユーザに提示すべき提示情報を受け取ったときに、その提示情報に含まれるテキスト情報に基づいて、合成音声信号を作成する。
音声合成部２７は、先ず、テキスト情報を表音情報に変換する。表音情報は、テキスト情報に含まれる原文の読みなどを表す情報であり、例えば、原文の読みをカタカナ文字で表し、さらにアクセントの位置及び区切りの位置を追加した情報である。表音情報は、例えば、電子情報技術産業協会規格TT-6004（車載用音声合成記号規格）に従って表記される。また表音情報は、テキスト情報に含まれる文中でのアクセントの位置、区切り位置と、各音素の読みが分かる他の表記形式に従って記述されてもよい。
【００２７】
音声合成部２７は、テキスト情報を表音情報に変換するために、記憶部２４に記憶されている言語辞書を読み込む。言語辞書には、例えば、テキスト情報中に出現すると想定される様々な単語、その単語の読み、品詞及び活用形などが登録されている。そして音声合成部２７は、例えば、その言語辞書を用いて、テキスト情報に含まれる原文に対して形態素解析を行って、原文中のテキストの読み、アクセントの位置及び区切りの位置を決定する。その際、音声合成部２７は、例えば、原文中で句読点が設定された位置を区切りの位置とする。
【００２８】
音声合成部２７は、形態素解析として、例えば、動的計画法を用いる方法を利用できる。そして音声合成部２７は、各単語の読み、アクセントの位置及び区切りの位置に応じて表音情報を作成する。
【００２９】
次に、音声合成部２７は、表音情報に基づいて、合成音声を生成する際の目標韻律を生成する。そのために、音声合成部２７は、記憶部２４から複数の韻律辞書を読み込む。この韻律辞書には、時間経過に応じた声の高さと音素長の変化を表す韻律モデルが格納されている。そして音声合成部２７は、韻律辞書の中から、文中の位置または表音情報に示されたアクセントの位置などに最も一致する韻律モデルを適用する。そして音声合成部２７は、適用される韻律モデル及び予め設定された合成パラメータに従って、表音情報に対応した目標韻律を作成する。なお、合成パラメータは、例えば、話速を表すパラメータと声の高さを表すパラメータとを含む。さらに、合成パラメータは、抑揚、音量などを表すパラメータを含んでいてもよい。また目標韻律は、音声波形を決定する単位となる音素ごとに、音素の長さ及びピッチ周波数を含む。さらに、目標韻律は個々の音素の波形の振幅情報を含んでいてもよい。なお、音素は、例えば、一つの母音あるいは一つの子音とすることができる。
【００３０】
目標韻律が決定されると、音声合成部２７は、例えば、vocoder方式または波形編集方式によって合成音声信号を作成する。
音声合成部２７は、音素ごとに、目標韻律の音素長及びピッチ周波数に最も近い音声波形を、例えばパターンマッチングにより音声波形辞書に登録されている複数の音声波形の中から選択する。そのために、音声合成部２７は、記憶部２４から音声波形辞書を読み込む。音声波形辞書は、複数の音声波形及び各音声波形の識別番号を記録する。また音声波形は、例えば、一人以上のナレータが様々なテキストを読み上げた様々な音声を録音した音声信号から、音素単位で取り出された波形信号である。
さらに、音声合成部２７は、音素ごとに選択された音声波形を目標韻律に沿って接続できるようにするため、それら選択された音声波形と目標韻律に示された対応する音素の波形パターンとのずれ量を、波形変換情報として算出してもよい。
音声合成部２７は、音素ごとに選択された音声波形の識別番号を含む波形生成情報を作成する。波形生成情報は、波形変換情報をさらに含んでもよい。
【００３１】
音声合成部２７は、波形生成情報に基づいて合成音声信号を作成する。そのために、音声合成部２７は、波形生成情報に含まれる各音素の音声波形の識別番号に対応する音声波形信号を記憶部２４に保存されている音声波形辞書から読み込む。そして音声合成部２７は、各音声波形信号を連続的に接続することにより、合成音声信号を作成する。なお、波形生成情報に波形変換情報が含まれている場合、音声合成部２７は、各音声波形信号を、対応する音素について求められた波形変換情報に従って補正して音声波形信号を連続的に接続することにより、合成音声信号を作成する。
音声合成部２７は、合成音声信号を音声出力部２２へ出力する。
【００３２】
なお、提示情報がオーディオデータを含む場合、処理部２５は、そのオーディオデータから音声信号を再生し、その音声信号を音声出力部２２へ出力してもよい。また、提示情報が画像を含む場合には、処理部２５は、その画像を図示しない表示部に表示させてもよい。また処理部２５は、提示情報に含まれるテキスト情報も、その表示部に表示させることでユーザに提示してもよい。この場合、処理部２５の音声合成部２７と、音声出力部２２は省略されてもよい。
さらに、提示情報にゲームなどのアプリケーションプログラムが含まれる場合、処理部２５は、そのアプリケーションプログラムを実行し、その実行結果に応じた画像及び音声信号を、表示部または音声出力部へ出力してもよい。
【００３３】
再度図１を参照すると、第１の実施形態による対話制御装置の一例であるサーバ３は、通信部３１と、記憶部３２と、制御部３３とを有する。
【００３４】
通信部３１は、端末２から通信ネットワーク４を介して受け取った認識候補単語などの情報を制御部３３へ渡し、一方、制御部３３から受け取った提示情報等を通信ネットワーク４を介して端末２へ渡す。さらに通信部３１は、通信ネットワーク４を介して外部情報源５へ情報取得要求信号を送信し、その外部情報源５から所定の情報を含むデータを受信する。そのために、通信部３１は、サーバ３を通信ネットワーク４に接続するためのインターフェース回路を有する。
【００３５】
記憶部３２は、例えば、半導体メモリ、磁気記録装置または光記録装置の少なくとも一つを有する。そして記憶部３２は、制御部３３がサーバ３を制御するための各種プログラム、サーバ３上で動作するアプリケーションプログラム及びそれらプログラムの実行に必要な各種のデータを記憶する。例えば、記憶部３２は、提示情報リスト、サービス履歴リスト、及びキーワードリストを記憶する。これらのリストの詳細については後述する。
【００３６】
制御部３３は、一つまたは複数のプロセッサと、周辺回路とを有する。そして制御部３３は、端末２から受け取った認識候補単語に基づいて、ユーザが所望する情報を有するサービス供給源を特定し、そのサービス供給源あるいは過去に提供された情報から、その所望の提示情報を取得する。そして制御部３３は、取得した提示情報を端末２へ送信する。さらに制御部３３は、端末２へ提示情報を送信する度に、必要に応じて提示情報リスト、サービス履歴リスト及びキーワードリストを更新する。
【００３７】
図３は、対話制御システムが有する第１の実施形態による対話制御装置の一例であるサーバ３の制御部３３の機能ブロック図である。制御部３３は、認識キーワード決定部３４と、提示情報取得部３５と、サービス識別部３６と、サービス変化検出部３７と、認識キーワード抽出部３８と、重み更新部３９とを有する。
制御部３３が有するこれらの各部は、例えば、制御部３３が有するプロセッサ上で動作するコンピュータプログラムにより実現される機能モジュールである。なお、制御部３３が有するこれらの各部は、それぞれ、別個の回路として、サーバ３に実装されてもよい。さらに、サーバ３が有するこれらの各部は、その各部の機能を実現する一つの集積回路としてサーバ３に実装されてもよい。
【００３８】
認識キーワード決定部３４は、各認識候補単語をキーワードリストに登録された各キーワードとそれぞれ照合する。そして認識キーワード決定部３４は、キーワードリストに登録されたキーワードの中から、認識候補単語の何れかと最も類似度の高いキーワードを認識キーワードとして決定する。そして認識キーワード決定部３４は、キーワードリストを参照して、認識キーワードに対応するサービス識別子及び情報識別子を特定し、そのサービス識別子及び情報識別子を提示情報取得部３５へ通知する。
【００３９】
図４は、キーワードリストの一例を示す図である。キーワードリスト４００には、ユーザに提供した提示情報の供給源であるサービス供給源を識別するためのサービス識別子に対して、テキスト情報を含む提示情報を識別するための情報識別子が少なくとも一つ関連付けて登録される。さらに、各情報識別子には、その情報識別子により特定される情報に含まれる、１以上のキーワードと、各キーワードに含まれる品詞及び品詞によって定められる品詞の重み係数と、経過時間によって変化する時間重み係数と作成時刻とが関連付けて登録される。例えば、キーワードリスト４００では、サービス識別子"news.jp"に対して一つの情報識別子"1010"が関連付けられている。そして情報識別子"1010"に対して、7個のキーワード"西日本"、"この冬"、"一番の"、"冷え込み"、"奈良市で"、"氷点下"及び"4.2度"が関連付けられている。そして各キーワードに含まれる品詞に対して設定される品詞の重み係数は、ユーザが所望する情報を特定するのに有用な品詞ほど大きくなるように設定されている。この例では、品詞の重み係数は、それぞれ、固有名詞に対して'1.0'、数詞に対して'0.8'、普通名詞に対して'0.7'、代名詞に対して'0.5'、助詞に対して'0.2'が設定されている。さらに、時間重み係数は、対応する情報識別子に含まれる各キーワードがキーワードリストに登録されてからの経過時間が長くなるほど小さくなるように設定されている。なお、品詞の重み係数、及び時間重み係数の詳細については後述する。
【００４０】
図５は、認識キーワード決定部３４による、認識キーワード決定処理の動作フローチャートである。認識キーワード決定部３４は、端末２からサービス要求を受け取る度に、すなわち、認識候補単語のセットを受け取るごとに、この認識キーワード決定処理を実行する。
【００４１】
認識キーワード決定部３４は、認識候補単語とキーワードリストに登録されたキーワードとの類似度の最高値を表すベストスコアを0に初期化し、記憶部３２からキーワードリストを読み込む（ステップＳ１０１）。
認識キーワード決定部３４は、未検証の認識候補単語の中から、今から検証する認識候補単語を決定する（ステップＳ１０２）。その際、認識キーワード決定部３４は、例えば、各認識候補単語に対して、音声認識部２６により算出された尤度が高い方から順に、検証する認識候補単語を決定してもよい。
また認識キーワード決定部３４は、キーワードリストに登録されたキーワードで、かつステップＳ１０２で決定された認識候補単語との類似度の検証が行われていないキーワードの中から、今から検証するキーワードを決定する（ステップＳ１０３）。
【００４２】
認識キーワード決定部３４は、検証対象となる認識候補単語及びキーワードを決定すると、その検証対象となっている認識候補単語とキーワード中で文字列が一致する部分を検出し、その文字列一致部分について設定された品詞の重み係数の和を算出する（ステップＳ１０４）。そして認識キーワード決定部３４は、品詞の重み係数の和に時間重み係数を乗じることによりマッチングスコアを算出する（ステップＳ１０５）。
【００４３】
例えば、認識候補単語として「奈良市で」と「慣らしで」の二つが検出されているとする。この場合において、認識候補単語「奈良市で」とキーワードリスト４００に登録されたキーワード「奈良市で」とは、「奈良市で」の全ての文字列が一致する。そして、「奈良市」及び「で」の品詞の重み係数は、それぞれ、'1.0'と'0.2'であり、対応する時間重み係数は'1.0'である。したがって、認識候補単語「奈良市で」とキーワード「奈良市で」とのマッチングスコアは、1.2(=(1.0+0.2)*1.0)となる。また、認識候補単語「奈良市で」とキーワードリスト４００に登録されたキーワード「慣らしで」とは、文字列「で」のみが一致する。そして「で」の品詞の重み係数は'0.2'であり、対応する時間重み係数は'0.7'である。したがって、認識候補単語「奈良市で」とキーワード「慣らしで」とのマッチングスコアは、0.14(=0.2*0.7)となる。
【００４４】
次に、認識キーワード決定部３４は、今検証対象となっている認識候補単語とキーワードの類似度を表すマッチングスコアはベストスコアより大きいか否か判定する（ステップＳ１０６）。マッチングスコアがベストスコアより大きい場合（ステップＳ１０６−Ｙｅｓ）、認識キーワード決定部３４は、ベストスコアをそのマッチングスコアに更新し、ベストスコアに対応するキーワードを記憶する（ステップＳ１０７）。
【００４５】
ステップＳ１０７の後、あるいはステップＳ１０６にてマッチングスコアがベストスコア以下である場合（ステップＳ１０６−Ｎｏ）、認識キーワード決定部３４は、未検証のキーワードが有るか否か判定する（ステップＳ１０８）。未検証のキーワードがある場合（ステップＳ１０８−Ｙｅｓ）、認識キーワード決定部３４は、ステップＳ１０３以降の処理を繰り返す。
一方、未検証のキーワードが無い場合（ステップＳ１０８−Ｎｏ）、認識キーワード決定部３４は、未検証の認識候補単語が有るか否か判定する（ステップＳ１０９）。未検証の認識候補単語がある場合（ステップＳ１０９−Ｙｅｓ）、認識キーワード決定部３４は、ステップＳ１０２以降の処理を繰り返す。
一方、未検証の認識候補単語が無い場合（ステップＳ１０９−Ｎｏ）、認識キーワード決定部３４は、キーワードリストを参照して、ベストスコアに対応するキーワードと関連付けられたサービス識別子及び情報識別子を特定する（ステップＳ１１０）。そして認識キーワード決定部３４は、そのサービス識別子及び情報識別子を提示情報取得部３５へ通知する。
【００４６】
提示情報取得部３５は、提示情報リストあるいは外部情報源５を参照して、認識キーワード決定部３４から受け取った情報識別子及びサービス識別子に対応する提示情報を取得し、取得した提示情報を端末２へ送信する。
【００４７】
図６は、提示情報リストの一例を示す図である。提示情報リスト６００は、提示情報ごとに、その情報と関連するサービス識別子、情報識別子、提示情報ごとの識別番号を含む。また提示情報には、タイプ識別子と、提示情報がリンク先に存在する場合はリンク先を表す情報と、情報本体とが含まれる。なお、リンク先に提示情報が存在する場合、情報本体には、リンク先を示すテキスト（「こちらを参照」「詳細はこちら」など）があればそのテキストが含まれている。
タイプ識別子は、提示情報のタイプを表す。本実施形態では、提示情報のタイプには、textタイプとlinkタイプが含まれる。textタイプは、提示情報が情報本体のみを含むことを表す。一方、linkタイプは、提示情報がリンク先に存在し、そのリンク先のアドレスを含むことを表す。リンク先のアドレスは、例えば、ユニフォームリソースロケータ（Uniform Resource Locator、URL）である。
なお、提示情報のタイプには、提示情報に画像データまたはオーディオデータといった、テキスト情報以外の情報が含まれることを表すデータタイプが含まれてもよい。さらに、提示情報のタイプには、提示情報にアプリケーションプログラムが含まれることを表すプログラムタイプが含まれてもよい。提示情報がデータタイプまたはプログラムタイプであっても、本実施形態では、提示情報にはテキスト情報も含まれる。この場合のテキスト情報は、例えば、画像データまたはオーディデータのタイトル、またはアプリケーションプログラムの名称であってもよい。
【００４８】
例えば、提示情報リスト６００の行６０１には、サービス識別子"tennki.jp"及び情報識別子"west"と関連して、識別番号"01"の提示情報が登録されており、その提示情報には、textタイプの情報本体が含まれている。また、提示情報リスト６００の行６０２には、サービス識別子"tennki.jp"及び情報識別子"west"と関連して、識別番号"02"の提示情報が登録されており、その提示情報のタイプはlinkタイプであり、リンク先のアドレス情報としてURL"www.tennki.jp/weather/east.html"が含まれている。この場合、情報本体には、リンク先を示すテキスト「関東の天気」が登録されているが、実際にユーザが知りたい関東の天気の詳細情報はリンク先のアドレスのページに存在することが示されている。
【００４９】
提示情報取得部３５は、提示情報リストを参照して、認識キーワード決定部３４から受け取った情報識別子及びサービス識別子に対応する提示情報を特定する。そして提示情報取得部３５は、特定された提示情報のタイプがlinkタイプか否かを調べる。
【００５０】
特定された提示情報のタイプがlinkタイプであれば、提示情報取得部３５は、通信ネットワーク４を介して、リンク先のアドレスに対応する外部情報源５から、提示情報が含まれるリソース、例えば、ウェブページを受信する。そして提示情報取得部３５は、受信したウェブページのソースを解析して、ウェブページ内で画面に表示されるテキスト情報を含む部分を、リンク先のアドレスが含まれるタグブロック（例えば、"href="が含まれるタグブロック）とテキスト情報のみを含むテキストブロックとに分割し、それぞれからテキスト情報を抽出する。そして提示情報取得部３５は、抽出されたテキスト情報を提示情報として通信部３１を介して端末２へ送信する。さらに提示情報取得部３５は、リンク先アドレスが含まれるタグブロックと、テキストブロックとを、それぞれ別個の提示情報として、提示情報リストに追加登録する。ただし、この時点では、追加登録された提示情報には、サービス識別子及び情報識別子は関連付けられていない。そのため、提示情報取得部３５は、追加登録された提示情報に対応するサービス識別子及び情報識別子を生成するために、追加登録された提示情報のアドレス（リンク先がある場合はリンク先のアドレス、リンク先がない場合は現在のページのアドレス）をサービス識別部３６へ通知する。
また、提示情報取得部３５は、追加登録された情報本体に対応する提示情報の識別番号を認識キーワード抽出部３８へ通知する。
【００５１】
一方、提示情報のタイプがlinkタイプでなければ、提示情報取得部３５は、特定された提示情報に含まれる情報本体を、通信部３１を介して端末２へ送信する。さらに提示情報取得部３５は、その提示情報本体と関連付けられたサービス識別子と情報識別子とを、端末２へ提示情報本体を送信した時刻とともに、サービス履歴リストに追加登録する。なお、サービス履歴リストについては後述する。
【００５２】
なお、提示情報リストに、認識キーワード決定部３４から受け取ったサービス識別子と情報識別子の組に対応する提示情報が複数含まれている場合、提示情報取得部３５は、その組に対応する全ての提示情報について上記の処理に従って端末２へ送信してもよい。あるいは、提示情報取得部３５は、その組に対応する複数の提示情報のうち、提示情報のタイプごとに最新のもののみ、上記の処理に従って端末２へ送信してもよい。
【００５３】
また、提示情報リストには、サービス識別子及び情報識別子と関連付けて、そのサービス識別子と情報識別子により特定される情報が保管されている、外部情報源５のアドレスが、例えばURLの形式で格納されていてもよい。そして提示情報取得部３５は、認識キーワード決定部３４から受け取った情報識別子及びサービス識別子と関連付けられた提示情報本体が提示情報リストに格納されている場合でも、そのアドレスを参照して外部情報源５から提示情報を取得してもよい。これにより、外部情報源５において、同一のアドレスで特定されるファイルが逐次更新されている場合でも、提示情報取得部３５は、そのアドレスへのアクセスが要求される度に、最新の情報を取得できる。
【００５４】
サービス識別部３６は、外部供給源５から新たに受信した提示情報に関して、その提示情報を含むリンク先のアドレスを解析することにより、サービス識別子と、情報識別子を生成する。例えば、サービス識別部３６は、リンク先のアドレスから、ドメイン名を表す部分をサービス識別子として抽出し、そのアドレスに含まれるファイル名のうちの拡張子を除いた部分を情報識別子として抽出する。
例えば、リンク先のアドレスが"http://www.tennki.jp/weather/west.html"である場合、サービス識別子として、"tennki.jp"が抽出される。また、情報識別子として、"west"が抽出される。
なお、リンク先のアドレスが、他の形式、例えば、IPアドレスを用いて表現されている場合には、サービス識別部３６は、そのIPアドレスをサービス識別子として抽出してもよい。
【００５５】
さらに、サービス識別部３６は、抽出されたサービス識別子及び情報識別子を、提示情報取得部３５から通知された提示情報の識別番号に対応する提示情報と関連付けて提示情報リストに登録する。またサービス識別部３６は、サーバ３が提示情報を提供する度に、サービス履歴リストに、サーバ３が提示情報を取得した時刻である参照時刻とともに、そのサービス識別子及び情報識別子を追加登録する。なお、参照時刻は、サーバ３が提示情報を端末２へ送信した時刻であってもよい。
【００５６】
図７は、サービス履歴リストの一例を示す図である。サービス履歴リスト７００は、提示情報が端末２へ送信されるサービスの実行履歴を記録する。そのために、サービス履歴リスト７００は、各行ごとに、１回のサービスの記録を表し、各サービスの記録は、参照時刻に従って降順で記録されている。そして各行には、左から順に、参照時刻、サービス識別子、情報識別子が記録される。例えば、行７０１には、時刻12:00において、サービス識別子"tennki.jp"及び情報識別子"west"に対応する提示情報が端末２へ送信されたことが示されている。このサービス履歴リスト７００は、後述するサービス変化検出部３７にて利用される。
【００５７】
サービス変化検出部３７は、サービス履歴が更新される度に、最新の提示情報のサービス供給源が、それ以前のサービス供給源から変化したか否かを検出し、その検出結果を重み更新部３９へ通知する。
本実施形態では、サービス変化検出部３７は、サービス履歴リストから、最新の提示情報に関するサービス識別子と、その１回前に提供された提示情報に関するサービス識別子とを読み込む。そしてサービス変化検出部３７は、その二つのサービス識別子が一致すれば、サービス供給源に変更は無いと判定し、一方、その二つのサービス識別子が一致しなければ、サービス供給源に変更が生じたと判定する。
【００５８】
図８（ａ）及び（ｂ）を参照しつつ、サービス供給源に変更が生じたか否かの判定の例を説明する。図８（ａ）及び図８（ｂ）は、それぞれ、サービス履歴リストの一例を示す。図８（ａ）に示されたサービス履歴リスト８００では、一番下の行８０１が最新のサービスに関するサービス識別子等を表し、下から二番目の行８０２が、一つ前のサービスに関するサービス識別子等を表している。この例では、最新のサービスに関するサービス識別子"tennki.jp"と一つ前のサービスに関するサービス識別子"tennki.jp"とが一致している。そのため、この場合には、サービス変化検出部３７はサービス供給源に変更は無いと判定する。
【００５９】
また、図８（ｂ）に示されたサービス履歴リスト８１０でも、一番下の行８１１が最新のサービスに関するサービス識別子等を表し、下から二番目の行８１２が、一つ前のサービスに関するサービス識別子等を表している。しかしこの例では、最新の提示情報に関するサービス識別子"tennki.jp"と一つ前の提示情報に関するサービス識別子"chirashi.jp"とが一致していない。そのため、この場合には、サービス変化検出部３７はサービス供給源に変更が生じたと判定する。
【００６０】
さらに、サービス変化検出部３７の他の形態として、サービス履歴が更新される度に、サービス変化の検出結果として、「サービス変化有り」、「サービス変化無し」及び「サービス変化不確定」の何れかを検出し、その検出結果を重み更新部３９へ通知してもよい。なお、「サービス変化有り」は、サービス供給源が完全に切り替わったことを示す。また「サービス変化無し」は、同じサービス供給源が継続的に利用されていることを示す。そして「サービス変化不確定」は、サービス変化の可能性があるがまだ確定していない状態を示す。
【００６１】
本実施形態では、サービス変化検出部３７は、サービス履歴リストから、最新の提示情報に関するサービス識別子と、そのＮ回前に継続的に提供された提示情報に関するサービス識別子と、最新を含むＭ回の間に継続的に提供された提示情報に関するサービス識別子とを読み込む。なお、Ｍ、Ｎはそれぞれ、２以上の整数である。サービス変化検出部３７は、継続的に提供されているサービス識別子として、そのＮ回、及び、Ｍ回分の履歴のサービス識別子の中で最も提供回数が多いサービス識別子を検出する。提供回数が同数で最多となる複数のサービス識別子が存在する場合は、サービス変化検出部３７は、最多かつ最新のサービス識別子を継続的に提供されていたサービス識別子として検出する。
【００６２】
そしてサービス変化検出部３７は、最新の提示情報に関するサービス識別子と、一回前のサービスに関するサービス識別子が一致しているか否かを判定し、瞬間的なサービス変化を表す第１の判定結果とする。またサービス変化検出部３７は、最新のＮ回前に継続的に提供された提示情報に関するサービス識別子と、最新を含むＭ回の間に継続的に提供された提示情報に関するサービス識別子とが一致しているか否かを判定し、その判定結果を大局的なサービス変化を表す第２の判定結果とする。最後にサービス変化検出部３７は、第１の判定結果と第２の判定結果の組み合わせにより、「サービス変化有り」、「サービス変化無し」、「サービス変化不確定」の３種類の変化結果の何れかを検出し、重み更新部３９へ通知する。
【００６３】
具体的には、サービス変化検出部３７は、第１の判定結果が、最新の提示情報に関するサービス識別子と、一回前のサービスに関するサービス識別子が一致していることを示している「一致」である場合は、継続的に同一サービスが続いていると判定する。そしてサービス変化検出部３７は、「サービス変化無し」を出力する。
一方、第１の判定結果が、最新の提示情報に関するサービス識別子と、一回前のサービスに関するサービス識別子とが一致していないことを示している「不一致」である場合は瞬間的にサービスが切り替わっていることになる。しかし、第２の判定結果が、最新のＮ回前に継続的に提供された提示情報に関するサービス識別子と、最新を含むＭ回の間に継続的に提供された提示情報に関するサービス識別子とが一致していることを示している「一致」である場合は、その第２の判定結果は、過去から現在に渡って大局的に同一サービスが提供されていることを示している。そのため、この場合には、サービス変化検出部３７は、第１の判定結果が「不一致」である原因が誤ってサービスが切り替わったことによるとみなす。そしてサービス変化検出部３７は、サービスの切り替わりではなく、最新のサービス識別子について「サービス変化無し」として出力する。
さらに、第１の判定結果が「不一致」であるだけでなく、第２の判定結果も、最新のＮ回前に継続的に提供された提示情報に関するサービス識別子と、最新を含むＭ回の間に継続的に提供された提示情報に関するサービス識別子とが一致していないことを示している「不一致」となることがある。この場合は、その「不一致」との第２の判定結果は大局的にもサービスが切り替わったことを示唆している。しかし、第１の判定結果が「不一致」であるため、まだ安定して継続したサービスが提供されているわけではない。従って、サービス変化検出部３７は、サービス変化の可能性はあるが、確定していない状態である、「サービス変化不確定」を出力する。
【００６４】
以下に例を挙げて説明する。今、A,B、２つのサービスが時系列で変化する下記の４つのケースを考える。ただし、左側が古い情報、右側が新しい情報、|棒の右側が最新のサービス、左側がそれより前のサービスとする。また、継続的な提供を判断する変数N,Mについて、それぞれ、N=4、M=2とする。
ケース１：  A→A→A→A→|→A
ケース２：  A→A→A→A→|→B
ケース３：  A→A→A→B→|→B
ケース４：  A→A→A→B→|→A
ケース１の場合、最新の提示情報に関するサービス識別子がA,１回前の提示情報に関するサービス識別子もAであるので、第１の判定結果は「一致」となる。同様にしてケース２〜４についての第１の判定結果は、それぞれ、「不一致」、「一致」、「不一致」となる。
【００６５】
また、Ｎ回前に継続的に提供された提示情報に関するサービス識別子は、最新の4回前までの最多のサービス識別子を検出することで求められる。上記のケース１とケース２では、A→A→A→AよりA、ケース３とケース４では、A→A→A→BよりA（A:3回＞B:1回のためA）となる。また、最新の提示情報を含むＭ回の間に継続的に提供された提示情報に関するサービス識別子は、最新の提示情報を含む2回分の最多のサービス識別子を抽出することにより求められる。ケース１では、そのサービス識別子は、A→|→AよりAとなる。ケース３では、そのサービス識別子は、B→|→BよりBとなる。またケース２では、A→|→Bより、AとBが同数の１回ずつであるが、最新の提示情報についてのサービス識別子Bが選択される。逆にケース４では、B→|→Aより、AとBが同数の１回ずつであるが、最新の提示情報についてのサービス識別子Aが選択される。
以上より、過去に継続的に提供された提示情報に関するサービス識別子と、現在継続的に提供されている提示情報に関するサービス識別子とが一致しているかどうかの第２の判定結果は、ケース１の場合、過去に継続的に提供された識別子、現在継続的に提供されている識別子は共にAであるので、「一致」となる。同様に、ケース２〜４についての第２の判定結果は、それぞれ、「不一致」、「不一致」、「一致」となる。
【００６６】
従って、これら第１及び第２の判定結果の組み合わせにより、最終的なサービス変化検出結果は以下のようになる。
ケース１：  A→A→A→A→|→A    第１：一致    第２：一致    →  サービス変化無
ケース２：  A→A→A→A→|→B    第１：不一致  第２：不一致  →  サービス変化不確定
ケース３：  A→A→A→B→|→B    第１：一致    第２：一致    →  サービス変化無
ケース４：  A→A→A→B→|→A    第１：不一致  第２：一致    →  サービス変化無
このような構成により、ケース４のように、大局的にはAのサービスが継続しており、何らかの誤りでBのサービスへ切り替わっている場合において、最新と１回前のサービス識別子が異なるため一見サービス変化が生じているように見える場合でも、サービス変化検出部３７は、その誤りに引きずられずに正確なサービス変化検出が行える。
【００６７】
認識キーワード抽出部３８は、外部情報源５から新たに提示情報が取得されると、その提示情報の情報本体から、その提示情報あるいは関連情報を特定するためのキーワードを抽出する。そして認識キーワード抽出部３８は、抽出したキーワードに対して認識キーワード決定の際に利用される品詞ごとの重み係数及び時間重み係数を決定する。そして認識キーワード抽出部３８は、そのキーワード及びそれら重み係数をキーワードリストに登録する。
【００６８】
本実施形態では、認識キーワード抽出部３８は、提示情報取得部３５から通知された提示情報の識別子に対応する情報本体を提示情報リストから読み込む。そして認識キーワード抽出部３８は、その情報本体に対して形態素解析を行って、その情報本体を品詞単位で分割する。なお、認識キーワード抽出部３８は、音声合成部２７と同様に、形態素解析として、例えば、動的計画法を用いる方法を利用できる。
次に、認識キーワード抽出部３８は、各品詞を、例えば、空白、助詞または句読点などの文節の区切りとなるものが検出される度にまとめることで、文節単位にまとめ、得られた各文節をキーワードとする。また認識キーワード抽出部３８は、キーワードごとに、そのキーワードに含まれる各品詞に対して、その品詞に対応した品詞の重み係数を、記憶部３２に記憶された品詞重みテーブルを参照することにより決定する。
【００６９】
図９は、品詞重みテーブルの一例を示す図である。品詞重みテーブル９００の各行には、それぞれ、１種類の品詞に対する品詞の重み係数が記録されている。この例では、品詞の重み係数は、キーワードに対する情報量が多くなるように、それぞれ、固有名詞に対して'1.0'、数詞に対して'0.8'、普通名詞に対して'0.7'、代名詞に対して'0.5'、助詞に対して'0.2'が設定されている。助詞は様々なキーワードに含まれ、助詞部分だけを見ていたのでは助詞を含むキーワードを他のキーワードと区別するのは困難であるため、助詞には情報量が少ないとみなせる。そのため、助詞に対する重みは小さく設定する。一方、固有名詞は、固有名詞自体でそれを含むキーワードを他のキーワードと区別できるため情報量が多いと考えられる。したがって、固有名詞に対しては重みを重く設定する。
【００７０】
認識キーワード抽出部３８は、情報本体から抽出された各キーワード、キーワードに含まれる各品詞及び品詞の重み係数を、その情報本体に対応するサービス識別子及び情報識別子とともにキーワードリストに登録する。さらに認識キーワード抽出部３８は、新たに追加される各キーワードに対して、時間重み係数の初期値を設定し、その時間重み係数をキーワードリストに書き込む。なお、時間重み係数の初期値は、例えば、'1.0'に設定される。
【００７１】
重み更新部３９は、サービス履歴が更新される度に、提示情報のサービス供給源が変化したか否かの検出結果に応じて、キーワードリストに登録されている各キーワードの重み係数を更新する。
本実施形態では、重み更新部３９は、提示情報のサービス供給源が変更されていない場合、新たに登録されたキーワード以外の各キーワードに対する時間重み係数に、0より大きく、かつ1未満の係数αを乗じる。これにより、キーワードがキーワードリストに登録されてからの経過時間が長くなるほど、そのキーワードに対する時間重み係数は小さくなる。その結果、キーワードリストに登録されてからの経過時間が短いキーワードほど、認識キーワードとして検出され易くなる。係数αは、例えば、0.9に設定される。
【００７２】
図１０（ａ）及び図１０（ｂ）は、それぞれ、提示情報のサービス供給源が変更されていない場合における、時間重み係数変更前のキーワードリストの一例と時間重み係数変更後のキーワードリストの一例とを示す図である。
図１０（ａ）に示されたキーワードリスト１０００では、最新の提示情報から抽出された１以上のキーワードが一番下の行１００１に追加登録されている。この場合、重み更新部３９は、行１００２以上の各行のキーワードに対応する時間重み係数に係数αとして0.9を乗じる。その結果、図１０（ｂ）に示されたキーワードリスト１０１０のように、行１００２以上の各行の時間重み係数は、元の値に対して0.9倍された値となる。
【００７３】
なお、端末２へ送信された最新の提示情報が、既に提示情報リストに登録されている提示情報であることがある。この場合、重み更新部３９は、提示情報リストにおいてその提示情報と関連付けられたサービス識別子及び情報識別子を提示情報取得部３５から受け取ってもよい。そして重み更新部２９は、受け取ったサービス識別子及び情報識別子と関連付けられた各キーワードの時間重み係数を上記の初期値に戻してもよい。
【００７４】
一方、提示情報のサービス供給源が変更されている場合、重み更新部３９は、提示情報リストにおいて、最新の提示情報と関連付けられているサービス識別子を現参照サービス識別子として特定する。そして重み更新部３９は、キーワードリストにおいて、現参照サービス識別子と異なるサービス識別子と関連付けられているキーワードについての時間重み係数を、現参照サービス識別子と関連付けられているキーワードについての時間重み係数よりも小さくする。例えば、重み更新部３９は、現参照サービス識別子と異なるサービス識別子と関連付けられたキーワードの時間重み係数に、αよりも小さい係数、例えば0.5を乗じる。一方、重み更新部３９は、現参照サービス識別子と関連付けられたキーワードの時間重み係数を、0.9nに設定する。ただしnは、そのキーワードと関連する提示情報が現参照サービス識別子により特定されるサービス供給源からn回前に取得されたことを表す。
【００７５】
図１１（ａ）及び図１１（ｂ）は、それぞれ、提示情報のサービス供給源が変更された場合における、時間重み係数変更前のキーワードリストの一例と時間重み係数変更後のキーワードリストの一例とを示す図である。
図１１（ａ）に示されたキーワードリスト１１００では、最新の提示情報から抽出された１以上のキーワードが一番下の行１１０１に追加登録されている。この場合、重み更新部３９は、行１１０１に格納されたサービス識別子"news.jp"と同一のサービス識別子が格納された各行の時間重み係数を0.9nに設定する。一方、サービス識別子"news.jp"と異なるサービス識別子が格納された各行のキーワードに対応する時間重み係数に0.5を乗じる。その結果、各キーワードに対する時間重み係数は、図１１（ｂ）に示されたキーワードリスト１１１０のようになる。その結果、最新の提示情報の供給元である現在のサービス供給源に関連するキーワードに対する時間重み係数の方が、現在のサービス供給源と異なるサービス供給源に関連するキーワードに対する時間重み係数よりも大きくなる。したがって、現在のサービス供給源に関連するキーワードが、認識キーワードとして選択され易くなる。
【００７６】
なお、重み更新部３９は、変形例として、提示情報のサービス供給源が変更されている場合、現参照サービス識別子と関連付けられた各キーワードの時間重み係数を上記の初期値に設定してもよい。
【００７７】
さらに、重み更新部３９は、サービス変化検出部３７から「サービス変化不確定」結果を受け取った場合、行１１０１に格納されたサービス識別子"news.jp"と同一のサービス識別子が格納された各行の時間重み係数を0.9nに設定する。一方、サービス識別子"news.jp"と異なるサービス識別子が格納された各行のキーワードに対応する時間重み係数についても、0.9mを設定する。ただしmは、そのキーワードと関連する提示情報が現参照サービス識別子により特定されるサービス供給源と異なるサービス供給源からm回前に取得されたことを表す。その結果、各キーワードに対する時間重み係数は、図１１（ｃ）に示されたキーワードリスト１１２０のようになる。その結果、最新の提示情報の供給元である現在のサービス供給源に関連するキーワードに対する時間重み係数と、現在のサービス供給源と異なるサービス供給源に関連するキーワードに対する時間重み係数がほぼ同等の重み係数となる。このように、重み更新部３９は、サービス変化が確定するまでは、時間重み係数をどちらのサービスにも同等に変化できるように設定できる。
【００７８】
さらに、重み更新部３９は、時間重み係数が所定の下限値未満となったキーワードをキーワードリストから消去してもよい。これにより、重み更新部２９は、キーワードリストに含まれるキーワードの数が無制限に増えることを防止できるので、認識キーワードの決定処理に要する時間の増大を抑制できる。なお、所定の下限値は、例えば、0.1に設定される。
【００７９】
図１２は、対話制御システム１により実行される対話制御処理の動作フローチャートを示す。対話制御システム１は、端末２に音声が入力される度に、この対話制御処理を実行する。
端末２の処理部２５の音声認識部２６は、音声入力部２を介して入力された音声信号から所定数の認識候補単語を検出する（ステップＳ２０１）。そして処理部２５は、通信部２３を介して認識候補単語のセットをサーバ３へ送信する。
【００８０】
サーバ３の制御部３３の認識キーワード決定部３４は、認識候補単語のセットを受け取ると、記憶部３２から読み込んだキーワードリストを参照して認識候補単語中の何れかと最も類似するキーワードを認識キーワードとして決定する（ステップＳ２０２）。そして認識キーワード決定部３４は、認識キーワードに対応するサービス識別子及び情報識別子を特定する（ステップＳ２０３）。
制御部３３の提示情報取得部３５は、提示情報リストを参照して、認識キーワード決定部３４から通知されたサービス識別子及び情報識別子に対応する提示情報を特定する（ステップＳ２０４）。そして提示情報取得部３５は、提示情報のタイプはlinkタイプか否か判定する（ステップＳ２０５）。
【００８１】
提示情報のタイプがlinkタイプである場合（ステップＳ２０５−Ｙｅｓ）、提示情報取得部３５はリンク先のアドレスにより特定された外部情報源から提示情報を取得する（ステップＳ２０６）。
そして制御部３３の認識キーワード抽出部３８は、取得した提示情報からキーワードを抽出し、抽出したキーワードを、参照時刻、その提示情報に対応するサービス識別子及び情報識別子とともにキーワードリストに追加登録する（ステップＳ２０７）。
一方、提示情報のタイプがlinkタイプでない場合（ステップＳ２０５−Ｎｏ）、提示情報取得部３５は、提示情報リストに格納された、サービス識別子及び情報識別子と関連付けられた提示情報本体を提示情報として取得する（ステップＳ２０８）。
ステップＳ２０７またはＳ２０８の後、提示情報取得部３５またはサービス識別部３６は、最新の提示情報に関連するサービス識別子及び情報識別子を参照時刻とともにサービス履歴リストに登録することで、サービス履歴リストを更新する（ステップＳ２０９）。
【００８２】
制御部３３のサービス変化検出部３７は、サービス供給源に変更が有ったか否か判定する（ステップＳ２１０）。
サービス供給源に変更が有った場合（ステップＳ２１０−Ｙｅｓ）、制御部３３の重み更新部３９は、キーワードリスト中の各キーワードに対する時間重み係数を更新する。その際、重み更新部３９は、最新のサービス供給源と異なるサービス供給源に関連するキーワードに対する時間重み係数を、最新のサービス供給源に関連するキーワードに対する時間重み係数よりも小さくする（ステップＳ２１１）。
一方、サービス供給源に変更が無い場合（ステップＳ２１０−Ｎｏ）、重み更新部３９は、各キーワードに対する時間重み係数を、キーワードリストに登録されてからの経過時間が長いほど小さくなるように更新する（ステップＳ２１２）。
【００８３】
また、端末２の処理部２５の音声合成部２７は、サーバ３から受け取った提示情報から合成音声信号を生成する（ステップＳ２１３）。そして処理部２５は、音声出力部２２へ合成音声信号を出力する（ステップＳ２１４）。そして音声出力部２２は、その合成音声信号に応じた音声をユーザへ向けて出力する。その後、対話制御装置１は、１回の対話制御処理を終了する。
なお、ステップＳ２１３及びＳ２１４の手順は、ステップＳ２０９〜Ｓ２１２の手順と独立して実行されてもよい。
【００８４】
以上に説明してきたように、この対話制御装置は、現在情報を提供しているサービスの供給源からの情報に含まれるキーワードの重み付けを、そのサービスの供給源とは異なるサービス供給源からの情報に含まれるキーワードよりも大きくする。これにより、この対話制御装置は、現在情報提供中のサービス供給源に関連するキーワードを検出し易くなるので、ユーザが発した音声に基づいて、ユーザが所望するサービスを正確に提供できる。
【００８５】
次に、第２の実施形態による対話制御装置について説明する。第２の実施形態による対話制御装置は、キーワードリストに登録された複数のキーワードのうち、そのキーワードに関連付けられたサービス識別子と異なるサービス識別子と関連付けられたキーワードとの類似していないものの時間重み係数を大きくする。これにより、この対話制御装置は、前回参照されたときから長期間が経過したサービス識別子に関連付けられたサービス供給源であっても、他のキーワードと間違い難い特有のキーワードをユーザが発声することにより、そのサービス供給源へ遷移し易くする。
【００８６】
なお、第２の実施形態による対話制御装置は、第１の実施形態による対話制御装置と比較して、対話制御装置の一例であるサーバの制御部により実現される機能の一部のみが異なる。そこで以下では、サーバの制御部により実現される機能のうち、第１の実施形態と異なる点について説明する。対話制御装置の他の構成要素については、第１の実施形態についての対応する構成要素の説明及び図を参照されたい。
【００８７】
図１３は、第２の実施形態によるサーバ３の制御部４０の機能ブロック図である。制御部４０は、認識キーワード決定部３４と、提示情報取得部３５と、サービス識別部３６と、サービス変化検出部３７と、認識キーワード抽出部３８と、類似度算出部４１と、重み更新部４２を有する。
制御部４０が有するこれらの各部は、例えば、制御部４０が有するプロセッサ上で動作するコンピュータプログラムにより実現される機能モジュールである。なお、制御部４０が有するこれらの各部は、それぞれ、別個の回路として、サーバ３に実装されてもよい。さらに、サーバ３が有するこれらの各部は、その各部の機能を実現する一つの集積回路としてサーバ３に実装されてもよい。
【００８８】
第２の実施形態による制御部４０は、第１の実施形態による制御部３３と比較して、類似度算出部４１及び重み更新部４２が異なる。そこで以下では、類似度算出部４１及び重み更新部４２について説明する。
【００８９】
類似度算出部４１は、キーワードリストに登録されている各キーワードについて、関連付けられたサービス識別子が異なる他のキーワードとの類似度合いを表すキーワード間類似度を算出する。
【００９０】
図１４は、類似度算出部４１による、類似度算出処理の動作フローチャートである。類似度算出部４１は、認識キーワード抽出部３８が新たなキーワードを作成し、そのキーワードをキーワードリストに登録して記憶部３２に記憶させる度に、この類似度算出処理を実行する。
【００９１】
類似度算出部４１は、記憶部３２からキーワードリストを読み込む（ステップＳ３０１）。
類似度算出部４１は、キーワードリストに登録された、未検証のキーワードの中から、今から検証するキーワードを決定する（ステップＳ３０２）。その際、類似度算出部４１は、例えば、作成時刻が新しい方から順に、検証するキーワードを決定してもよい。
また類似度算出部４１は、検証キーワードに対する類似度が算出されておらず、かつ、検証キーワードに関連付けられたサービス識別子と異なるサービス識別子に関連付けられたキーワードの中から、比較キーワードを決定する（ステップＳ３０３）。
【００９２】
類似度算出部４１は、検証キーワードと比較キーワード間の類似度を算出する（ステップＳ３０４）。本実施形態では、類似度算出部４１は、検証キーワードを表す文字列と比較キーワードを表す文字列の一致度、及び、検証キーワードの音声と比較キーワードの音声の類似度に基づいて、類似度を算出する。なお、類似度算出部４１は、検証キーワードを表す文字列と比較キーワードを表す文字列の一致度のみに基づいて類似度を算出してもよい。
【００９３】
類似度算出部４１は、例えば、検証キーワードを表す文字列と比較キーワードを表す文字列の一致度を、長い方の文字列に含まれる音素ごとの文字の総数に対する、その文字列に含まれる、他方の文字列中の文字と一致する文字の数の比とする。例えば、検証キーワードが「今日の天気」であり、比較キーワードが「今日の運気」であれば、二つのキーワード間で一致する文字は、'キョ'、'ウ'、'ノ'、'ン'、'キ'の5文字であるので、一致度は、5文字／6文字=83.3%となる。また、検証キーワードが「天気」であり、比較キーワードが「転勤」であれば、二つのキーワードのうちの長い方である比較キーワードに含まれる4文字中の3文字が、検証キーワードに含まれる文字と一致する。したがって、一致度は、3文字/4文字=75%となる。
【００９４】
類似度算出部４１は、検証キーワードと比較キーワードの間で異なっている文字の組に対応する音素同士に類似性があれば、その二つのキーワードの文字列の一致度が高くなるように補正することにより、その二つのキーワード間の類似度を算出する。
例えば、以下の表１に示されるように、互いに異なる二つの音素の種別の組と補正係数との関係を表す参照テーブルが予めサーバ３の記憶部３２に記憶される。そして類似度算出部４１は、検証キーワードと比較キーワードの間で異なっている文字の組に対応する音素の組ごとに、参照テーブルを参照して補正係数を求め、求めた補正係数を一致度に乗じる。なお、参照テーブル中に該当する音素の種別の組が無い場合、類似度算出部４１は、補正係数を'1'とする。すなわち、類似度算出部４１は、その音素の組については、一致度を補正しない。
【表１】
0005696638.tif 000002
【００９５】
例えば、検証キーワードが「今日の天気」であり、比較キーワードが「今日の電気」であれば、互いに異なっている文字の組に対応する音素の組は'テ'と'デ'を含む組だけであり、一致度は83.3%となる。この組に対応する音素の種別の組は、静音と濁音の組に相当するので、類似度算出部４１は、例えば、表１に示された参照テーブルを参照することにより、補正係数を1.1とする。したがって、検証キーワード「今日の天気」と比較キーワード「今日の電気」間の類似度は、83.3%×1.1=91.6%となる。
また、検証キーワードが「天気」であり、比較キーワードが「天使」であれば、互いに異なっている文字の組に対応する音素の組は、各キーワードの最後の音素である'キ'と'シ'を含む組だけであり、一致度は66.7%となる。この組に対応する音素の種別の組は、無声摩擦音と無声破裂音の組に相当するので、類似度算出部４１は、例えば、表１に示された参照テーブルを参照することにより、補正係数を1.2とする。したがって、検証キーワード「天気」と比較キーワード「天使」間の類似度は、66.7%×1.2=80.0%となる。
【００９６】
なお、類似度算出部４１は、検証キーワードと比較キーワードの一致度が100%未満であり、かつ、その一致度に補正係数を乗じることで類似度の計算値が100%以上となる場合、その二つのキーワードの類似度を100%未満の所定値、例えば、99%とする。これにより、二つのキーワードが完全に一致していないにもかかわらず、類似度が100%以上となることが防止される。
【００９７】
次に、類似度算出部４１は、今検証対象となっている検証キーワードと比較キーワード間の類似度は、その検証キーワードについてそれまでに算出された類似度の最大値より大きいか否か判定する（ステップＳ３０５）。類似度がそれまでの類似度の最大値より大きい場合（ステップＳ３０５−Ｙｅｓ）、類似度算出部４１は、類似度の最大値をその類似度に更新する（ステップＳ３０６）。
【００９８】
ステップＳ３０６の後、あるいはステップＳ３０５にて類似度がそれまでの類似度の最大値以下である場合（ステップＳ３０５−Ｎｏ）、類似度算出部４１は、検証キーワードと比較されていないキーワードが有るか否か判定する（ステップＳ３０７）。未比較のキーワードがある場合（ステップＳ３０７−Ｙｅｓ）、類似度算出部４１は、ステップＳ３０３以降の処理を繰り返す。
一方、未比較のキーワードが無い場合（ステップＳ３０７−Ｎｏ）、類似度算出部４１は、類似度の最大値を検証キーワードについてのキーワード間類似度として、キーワードリストを更新する（ステップＳ３０８）。
【００９９】
その後、類似度算出部４１は、未検証のキーワードが有るか否か判定する（ステップＳ３０９）。未検証のキーワードがある場合（ステップＳ３０９−Ｙｅｓ）、類似度算出部４１は、ステップＳ３０２以降の処理を繰り返す。一方、未検証のキーワードが無い場合（ステップＳ３０９−Ｎｏ）、類似度算出部４１は、類似度算出処理を終了する。
【０１００】
図１５は、第２の実施形態によるキーワードリストの一例を示す図である。第２の実施形態によるキーワードリスト１５００は、第１の実施形態によるキーワードリストと比較して、キーワードごとにキーワード間類似度１５１０が記録されている点で異なる。例えば、キーワードリスト１５００では、サービス識別子"news.jp"に関連付けられた7個のキーワード"西日本"、"この冬"、"一番の"、"冷え込み"、"奈良市で"、"氷点下"及び"4.2度"について、それぞれ、キーワード間類似度が、'0.8'、'0.1'、'0.1'、'0.1'、'0.9'、'0.1'、'0.1'であることが示されている。
【０１０１】
重み更新部４２は、キーワードリストが更新される度に、キーワードリストに登録されている各キーワードの時間重み係数を更新する。
本実施形態では、重み更新部４２は、キーワード間類似度が所定の閾値Ths以上であり、かつ、提示情報のサービス供給源が変更されていない場合、新たに登録されたキーワード以外の各キーワードに対する時間重み係数に、0より大きくかつ1未満の係数αを乗じる。なお、所定の閾値Thsは、例えば、二つのキーワード間に何らかの類似性が認められる類似度の最小値、例えば、0.5に設定される。また係数αは、例えば、0.8〜0.9に設定される。これにより、キーワード間類似度が他のキーワードの少なくとも一部と類似していることを表す値を持つキーワードについては、そのキーワードがキーワードリストに登録されてからの経過時間が長くなるほど、そのキーワードに対する時間重み係数は小さくなる。その結果、キーワードリストに登録されてからの経過時間が短いキーワードほど、認識キーワードとして検出され易くなる。
【０１０２】
一方、キーワード間類似度が閾値Ths未満である、すなわち、キーワード間類似度が他のキーワードに類似していないことを表す値を持つキーワードについては、重み更新部４２は、そのキーワードに対する時間重み係数を、登録されてからの経過時間にかかわらず、一定値に設定する。この一定値は、例えば、キーワードとして認識され易いように、キーワード間類似度が閾値Ths以上となるキーワードに対する時間重み係数よりも大きな値、例えば、0.9〜1.0に設定される。
【０１０３】
あるいは、重み更新部４２は、キーワード間類似度が閾値Ths未満のキーワードのうち、現在提供されている情報に対応するサービス識別子に関連付けられているキーワードの時間重み係数を、そのキーワードが最も認識され易い第１の値、例えば、1.0とする。一方、キーワード間類似度が閾値Ths未満のキーワードのうち、現在提供されている情報に対応するサービス識別子と異なるサービス識別子に関連付けられているキーワードの時間重み係数を、第１の値よりも小さい第２の値、例えば、0.9としてもよい。
これにより、キーワード間類似度が小さいキーワード、すなわち、そのキーワードと関連するサービス識別子により特定される情報源に特有のキーワードについては、時間重み係数は、登録されてからの経過時間にかかわらず一定の大きな値となる。そのため、例え、そのキーワードと関連するサービス識別子により特定されるサービス供給源が前回参照されてから長期間が経過していたとしても、第２の実施形態による対話制御装置は、そのサービス供給源に遷移し難くなることを防止できる。
【０１０４】
なお、重み更新部４２は、キーワード間類似度が閾値Ths未満であっても、キーワード間類似度が低いほど時間重み係数が大きくなるように、時間重み係数を更新してもよい。この場合、重み更新部４２は、例えば以下の式に従って時間重み係数を決定する。
時間重み係数＝1.0-r1×0.4
ただし、r1はキーワード間類似度である。例えば、閾値Thsが0.5であれば、時間重み係数は、キーワード間類似度に応じて0.8〜1.0の間で変動する。これにより、特定の情報源に特有のキーワードほど、時間重み係数が大きくなるので、その特有のキーワードが話者により発声されたときに、この対話制御装置は、情報を提供するサービス供給源を、正確にその特定のサービス供給源へ遷移させることができる。
【０１０５】
一方、提示情報のサービス供給源が変更されている場合、重み更新部４２は、キーワードリストから、現参照サービス識別子と異なるサービス識別子と関連付けられているキーワードを抽出する。そして重み更新部４２は、抽出したキーワードのうち、キーワード間類似度が閾値Ths以上のキーワードについての時間重み係数を、現参照サービス識別子と関連付けられているキーワードについての時間重み係数よりも小さくする。例えば、重み更新部４２は、現参照サービス識別子と異なるサービス識別子と関連付けられたキーワードの時間重み係数に、αよりも小さい係数、例えば0.5を乗じる。一方、重み更新部４２は、現参照サービス識別子と関連付けられたキーワードのうち、キーワード間類似度が閾値Ths以上のキーワードの時間重み係数を、0.9nに設定する。ただしnは、そのキーワードと関連する提示情報が現参照サービス識別子により特定されるサービス供給源からn回前に取得されたことを表す。
【０１０６】
また、重み更新部４２は、キーワード間類似度が閾値Ths未満のキーワードについては、関連付けられたサービス識別子が現参照サービス識別子か否かにかかわらず、時間重み係数を一定値（例えば、0.9〜1.0）に設定する。
これにより、第２の実施形態による対話制御装置は、前回の情報提供時から長期間が経過したサービス供給源へ遷移し難くなることを防止しつつ、最近利用したサービス供給源へ遷移し易くできる。
【０１０７】
図１６は、第２の実施形態による対話制御装置を含む対話制御システム１により実行される対話制御処理の動作フローチャートを示す。対話制御システム１は、端末２に音声が入力される度に、この対話制御処理を実行する。また図１６では、図１２に示された、第１の実施形態による対話制御処理の動作フローチャートと異なる点について示す。
【０１０８】
ステップＳ２０７にて、認識キーワード抽出部３８が抽出したキーワードをキーワードリストに追加登録すると、制御部４０の類似度算出部４１は、キーワードリストに登録されている各キーワードについてキーワード間類似度を算出する（ステップＳ４０１）。そして類似度算出部４１は、キーワード間類似度をキーワードリストに書き込む。
【０１０９】
ステップＳ４０１の後、あるいは、ステップＳ２０８にて提示情報取得部３５が提示情報を取得した後、提示情報取得部３５またはサービス識別部３６は、サービス履歴リストを更新する（ステップＳ２０９）。そしてサービス変化検出部３７は、サービス供給源に変化があったか否か判定する（ステップＳ２１０）。
【０１１０】
サービス供給源が変化した場合（ステップＳ２１０−Ｙｅｓ）、制御部４０の重み更新部４２は、キーワードリスト中の各キーワードの時間重み係数を更新する。その際、重み更新部４２は、最新のサービス供給源と異なるサービス供給源に関連するキーワードのうち、キーワード間類似度が閾値Ths以上のキーワードについての時間重み係数を、最新のサービス供給源に関連する時間重み係数よりも小さくする。一方、重み更新部４２は、キーワード間類似度が閾値Ths未満のキーワードについての時間重み係数を一定値に設定する（ステップＳ４０２）。
【０１１１】
一方、サービス供給源に変更が無い場合（ステップＳ２１０−Ｎｏ）、重み更新部４２は、キーワード間類似度が閾値Ths以上の各キーワードに対する時間重み係数を、キーワードリストに登録されてからの経過時間が長いほど小さくなるように更新する。一方、重み更新部４２は、キーワード間類似度が閾値Ths未満のキーワードについての時間重み係数を一定値に設定する（ステップＳ４０３）。
ステップＳ４０２またはＳ４０３の後、制御部４０は、ステップＳ２１３以降の処理を実行する。
【０１１２】
このように、第２の実施形態による対話制御装置は、サービス供給源に特有のキーワードについての時間重み係数を、登録されてからの経過時間にかかわらず一定にできる。そのため、この対話制御装置は、特定のサービス供給源が参照されてから長期間が経過していたとしても、そのサービス供給源に遷移し難くなることを防止できる。
【０１１３】
なお、第２の実施形態の変形例によれば、最新の情報提供を受けたサービス供給源と、一回前に情報提供を受けたサービス供給源とが異なるか否かにかかわらず、重み更新部２４は、ステップＳ４０３の処理を実行してもよい。この場合には、制御部４０においてサービス変化検出部３７は省略されてもよい。
【０１１４】
次に、第３の実施形態による対話制御装置について説明する。第３の実施形態による対話制御装置は、キーワードリストに登録されている各キーワードについて、そのキーワードが登録された時刻と、そのキーワードに最も類似するキーワードが登録された時刻の差に基づいて時間重み係数を更新する。
なお、第３の実施形態による対話制御装置が有する構成要素は、第２の実施形態による対話制御装置が有する構成要素と同一である。ただし、第３の実施形態による対話制御装置は、第２の実施形態と比較して、制御部の類似度算出部及び重み更新部の処理が異なる。そこで以下では、第２の実施形態と同様に、図１３の機能ブロック図を参照しつつ、類似度算出部及び重み更新部について説明する。
【０１１５】
類似度算出部４１は、キーワードリストに登録されている各キーワードについてキーワード間類似度を算出する際、そのキーワードが記憶部３２に記憶された時刻と、そのキーワードに最も類似するキーワードが記憶部３２に記憶された時刻の差を求める。なお、各キーワードが記憶部３２に記憶された時刻は、それらキーワードが作成された時刻と略等しい。そのため、各キーワードが記憶部３２に記憶された時刻の差は、それらキーワードについての作成時刻の差として算出できる。
【０１１６】
図１７は、第３の実施形態による対話制御装置における、類似度算出処理の動作フローチャートである。第３の実施形態による類似度算出処理は、第２の実施形態による類似度算出処理と比較して、ステップＳ３０４’、ステップＳ３０６’及びステップＳ３０８’が異なる。そこで以下では、これらのステップについて説明する。類似度算出処理の他のステップについては、図１４及び関連する説明を参照されたい。
【０１１７】
類似度算出部４１は、検証キーワード及び比較キーワードを決定すると検証キーワードと比較キーワードの類似度を算出する。さらに類似度算出部４１は、キーワードリストを参照して、検証キーワードの作成時刻と比較キーワードの作成時刻との時刻差を求める（ステップＳ３０４’）。そして、類似度算出部４１は、類似度がそれまでの類似度の最大値よりも大きい場合（ステップＳ３０５−Ｙｅｓ）、類似度の最大値を、その類似度に更新する。さらに類似度算出部４１は、その最大値に対応する時刻差も、その類似度に対応する時刻差に更新する（ステップＳ３０６’）。
そして類似度算出部４１は、類似度の最大値を検証キーワードについてのキーワード間類似度とするとともに、対応する時刻差をキーワード時間間隔としてキーワードリストに書き込む（ステップＳ３０８’）。
【０１１８】
図１８は、第３の実施形態によるキーワードリストの一例を示す図である。第３の実施形態によるキーワードリスト１８００は、第２の実施形態によるキーワードリストと比較して、キーワードごとに、時間単位でキーワード時間間隔１８１０が記録されている点で異なる。例えば、キーワードリスト１８００では、サービス識別子"news.jp"に関連付けられた7個のキーワード"西日本"、"この冬"、"一番の"、"冷え込み"、"奈良市で"、"氷点下"及び"4.2度"について、それぞれ、キーワード時間間隔が、'0.05'、'3.2'、'2.1'、'24'、'30'、'0.1'、'72'であることが示されている。
【０１１９】
重み更新部４２は、キーワードリストが更新される度に、キーワードリストに登録されている各キーワードの時間重み係数を更新する。
本実施形態では、重み更新部４２は、第２の実施形態による重み更新部４２と同様に、キーワード間類似度、キーワードリストに登録されてからの経過時間、またはサービス供給源の変更の有無に基づいて、各キーワードの時間重み係数を算出する。あるいは、重み更新部４２は、第１の実施形態による重み更新部３９と同様に、キーワードリストに登録されてからの経過時間、またはサービス供給源の変更の有無に基づいて、各キーワードの時間重み係数を算出してもよい。
【０１２０】
さらに、重み更新部４２は、算出された時間重み係数を、キーワード間類似度及びキーワード作成時間間隔に基づいて補正する。特に、キーワード間類似度が高く、かつ、キーワード作成時間間隔が小さければ、そのキーワードに関連するサービス供給源と、他のサービス供給源とから、互いに類似するキーワードを含む情報が比較的短期間のうちに提供されていることになる。そのため、それらのキーワード間の時間重み係数の差も小さい。そのため、時間重み係数をそのまま利用すると、話者が現在のサービス供給源からの情報提示を継続して利用しようとしている場合でも、誤って他のサービス供給源へ遷移してしまうことがある。
【０１２１】
そこで、重み更新部４２は、あるキーワードについてのキーワード間類似度が所定の閾値Ths以上であり、かつ、キーワード作成時間間隔が所定の期間Thp以下であれば、そのキーワードについての時間重み係数に0以上1未満の係数βを乗じることで補正する。所定の閾値Thsは、例えば、第２の実施形態と同様に、0.5に設定される。また所定の期間Thpは、例えば、0.2〜0.5時間に設定される。なお、キーワードについてのキーワード間類似度が閾値Ths未満、あるいは、キーワード作成時間間隔が期間Thpよりも長ければ、重み更新部４２は、そのキーワードについての時間重み係数を補正しない。なお、重み更新部４２は、キーワード作成時間間隔が小さいほど、係数βを小さくしてもよい。
重み更新部４２は、キーワード作成時間間隔及びキーワード間類似度に基づく時間重み係数の補正を、例えば、図１２に示されたステップＳ２１１、Ｓ２１２とステップＳ２１３の間で実行する。あるいは、重み更新部４２は、キーワード作成時間間隔及びキーワード間類似度に基づく時間重み係数の補正を、図１６に示されたステップＳ４０２、Ｓ４０３とステップＳ２１３の間で実行する。
【０１２２】
再度図１８を参照すると、キーワードリスト１８００には、補正前の時間重み係数１８２０が記録されている。ここで、キーワード「西日本」についてのキーワード間類似度は0.8であり、キーワード作成時間間隔は0.05である。閾値Thsが0.5、期間Thpが0.2であれば、キーワード「西日本」についての時間重み係数は係数βを乗じることによって補正される。したがって、係数βが0.2であるとすれば、キーワード「西日本」についての時間重み係数は、1.0×0.2 = 0.2となる。一方、キーワード「冷え込み」についてのキーワード間類似度は0.1で、閾値Thsより低く、キーワード作成時間間隔は24で、期間Thpより長い。そのため、キーワード「冷え込み」についての時間重み係数は補正されず、'1.0'のままとなる。
【０１２３】
したがって、例えば、ユーザが「西日本の冷え込み」と発声して情報を得ようとすると、マッチングスコアに対する寄与は、「西日本」（時間重み係数0.2×品詞別重み1.0=0.2）よりも「冷え込み」（時間重み係数1.0×品詞別重み0.7=0.7）の方が大きくなる。その結果、サービス供給源を遷移させるか否かの判断は、「西日本」よりもサービス識別子'news.jp'に固有である可能性が高いキーワード「冷え込み」に基づいて行われることになる。その結果として、第３の実施形態による対話制御装置は、サービス供給源を誤って遷移させることを抑制できる。
【０１２４】
次に、第４の実施形態による対話制御装置について説明する。第４の実施形態による対話制御装置は、各キーワードについて、そのキーワードと関連するサービス供給源と、類似度が最も高い他のキーワードに関連するサービス供給源との間に関連性が認められる場合に、時間重み係数を補正する。
【０１２５】
なお、第４の実施形態による対話制御装置は、第２の実施形態による対話制御装置と比較して、対話制御装置の一例であるサーバの制御部により実現される機能の一部のみが異なる。そこで以下では、サーバの制御部により実現される機能のうち、第２の実施形態と異なる点について説明する。
【０１２６】
図１９は、第４の実施形態による対話制御装置の一例であるサーバ３の制御部５０の機能ブロック図である。制御部５０は、認識キーワード決定部３４と、提示情報取得部３５と、サービス識別部３６と、サービス変化検出部３７と、認識キーワード抽出部３８と、サービス関連度算出部５１と、類似度算出部５２と、重み更新部５３とを有する。
制御部５０が有するこれらの各部は、例えば、制御部５０が有するプロセッサ上で動作するコンピュータプログラムにより実現される機能モジュールである。なお、制御部５０が有するこれらの各部は、それぞれ、別個の回路として、サーバ３に実装されてもよい。さらに、サーバ３が有するこれらの各部は、その各部の機能を実現する一つの集積回路としてサーバ３に実装されてもよい。
【０１２７】
第４の実施形態による制御部５０は、第２の実施形態による制御部４０と比較して、サービス関連度算出部５１、類似度算出部５２及び重み更新部５３が異なる。そこで以下では、サービス関連度算出部５１、類似度算出部５２及び重み更新部５３について説明する。
【０１２８】
サービス関連度算出部５１は、対話制御処理が実行される度に、情報を提供したサービス供給源の遷移を調べ、その遷移の回数を、遷移の前後のサービス供給源にそれぞれ対応するサービス識別子の組ごとに記録する。サービス関連度算出部５１は、例えば、図１２または図１６に示されたステップＳ２１０にてサービス変化検出部３７からサービス供給源が変化したことを通知されると、記憶部３２に記憶されるサービス遷移履歴テーブルを更新する。
【０１２９】
図２０は、サービス遷移履歴テーブルの一例を示す図である。サービス遷移履歴テーブル２０００において、左端の列２００１には、遷移前のサービス供給源に対応するサービス識別子が表されている。また上端の行２００２には、遷移後のサービス供給源に対応するサービス識別子が表されている。そして右端の列２００３には、左端に示されたサービス識別子に対応するサービス供給源から他のサービス供給源へ遷移した回数の合計が記録されている。
例えば、サービス遷移履歴テーブル２０００では、サービス識別子'tennki.jp'に対応するサービス供給源からは、サービス識別子'news.jp'に対応するサービス供給源へ101回遷移することが示されている。同様に、サービス識別子'tennki.jp'に対応するサービス供給源からサービス識別子'chirashi.jp'に対応するサービス供給源へ3回遷移することが示されている。さらに、サービス遷移履歴テーブル２０００では、サービス識別子'tennki.jp'に対応するサービス供給源から他のサービス供給源へ遷移した回数の合計が104回であることが示されている。
【０１３０】
サービス関連度算出部５１は、例えば、サービス変化検出部３７から、サービス識別子'tennki.jp'に対応するサービス供給源からサービス識別子'news.jp'に対応するサービス供給源へ遷移されたことを通知されたとする。この場合、サービス関連度算出部５１は、サービス遷移履歴テーブル２０００において、左端の列中のサービス識別子'tennki.jp'と、上端の行中のサービス識別子'news.jp'とに対応する欄に示された回数を1インクリメントする。したがって、サービス識別子'tennki.jp'に対応するサービス供給源からサービス識別子' news.jp'に対応するサービス供給源への遷移回数は102回となる。また、サービス関連度算出部５１は、サービス遷移履歴テーブル２０００の左端の欄にサービス識別子'tennki.jp'が示された行の右端の遷移回数の合計も1インクリメントする。すなわち、その合計は105となる。
【０１３１】
さらに、サービス関連度算出部５１は、サービス遷移履歴テーブルを参照して、二つのサービス供給源の組の関連度であるサービス関連度を算出する。本実施形態では、サービス関連度は、二つのサービス供給源のうちの一方のサービス供給源についての遷移回数の合計に対する、その一方のサービス供給源から他方のサービス供給源へ遷移した回数の比で表される。なお、遷移前のサービス供給源と遷移後のサービス供給源が逆になることで、その二つのサービス供給源間のサービス関連度が異なる場合、サービス関連度算出部５１は、高い方のサービス関連度をその二つのサービス供給源間のサービス関連度とする。例えば、再度図２０を参照すると、サービス識別子'tennki.jp'に対応するサービス供給源からサービス識別子'news.jp'に対応するサービス供給源へ遷移する場合のサービス関連度は、101/104=0.97となる。一方、サービス識別子'news.jp'に対応するサービス供給源からサービス識別子'tennki.jp'に対応するサービス供給源へ遷移する場合のサービス関連度は、32/36=0.89となる。そこでサービス関連度算出部５１は、サービス識別子'tennki.jp'に対応するサービス供給源とサービス識別子'news.jp'に対応するサービス供給源間のサービス関連度を0.97とする。
なお、あるサービス供給源を遷移元とする遷移回数の合計が所定の閾値（例えば、50回）未満である場合には、サービス関連度算出部５１は、そのサービス供給源と他のサービス供給源間のサービス関連度を'0'としてもよい。
【０１３２】
類似度算出部５２は、第２の実施形態による類似度算出部５２と同様に、キーワードリストに登録された各キーワードについてのキーワード間類似度を算出する。その際、類似度算出部５２は、各キーワードについて、そのキーワードに対応するサービス供給源と、そのキーワードと最も類似するキーワードに対応するサービス供給源との間のサービス関連度を、そのキーワードに関連付けてキーワードリストに書き込む。
【０１３３】
重み更新部５３は、キーワードリストが更新される度に、キーワードリストに登録されている各キーワードの時間重み係数を更新する。
本実施形態では、重み更新部５３は、第２の実施形態による重み更新部４２と同様に、キーワード間類似度、キーワードリストに登録されてからの経過時間、またはサービス供給源の変更の有無に基づいて、各キーワードの時間重み係数を算出する。あるいは、重み更新部５２は、第１の実施形態による重み更新部３９と同様に、キーワードリストに登録されてからの経過時間、またはサービス供給源の変更の有無に基づいて、各キーワードの時間重み係数を算出してもよい。
【０１３４】
さらに、重み更新部５２は、算出された時間重み係数を、キーワード間類似度及びサービス関連度に基づいて補正する。特に、キーワード間類似度が高く、かつ、サービス関連度が高いキーワードについては、そのキーワードに対応するサービス供給源と、そのキーワードと最も類似する他のキーワードに対応するサービス供給源との間で頻繁に遷移が行われている。そこで、重み更新部５２は、キーワード間類似度が所定の閾値Ths以上であり、かつ、サービス関連度が所定の閾値Thr以上であるキーワードについての時間重み係数を、そのキーワードと最も類似するキーワードの時間重み係数と同一の値とする。例えば、重み更新部５２は、その二つのキーワードの時間重み係数のうち、高い方の値をそれぞれの時間重み係数とする。なお、閾値Thsは、第２の実施形態と同様に、例えば、0.5に設定される。一方、閾値Thrは、例えば、二つのサービス供給源間に何らかの関連性が認められるサービス関連度の最小値、例えば、0.8に設定される。
これにより、第４の実施形態による対話制御装置は、関連性が高い二つのサービス供給源間での遷移を正しく行える確率を高めることができる。
【０１３５】
上記の各実施形態に対する変形例によれば、重み更新部は、サービス履歴リストが更新されたときでなく、一定期間（例えば、30秒〜1時間の範囲内の何れか）が経過する度に、時間重み係数を更新してもよい。あるいは、重み更新部は、外部情報源から新たな提示情報が取得されたときに限り、時間重み係数を更新してもよい。この場合には、サービス変化検出部の処理が複雑になることを防止するために、サービス履歴リストにも、外部情報源から新たな提示情報が取得されたときにのみ、サービス識別子及び情報識別子が追加されることが好ましい。
【０１３６】
また他の変形例によれば、キーワードリストに登録されるキーワードは、特定の種類の品詞の単語であってもよい。例えば、その特定の種類の品詞は、固有名詞とすることができる。さらに、認識キーワード決定部は、類似度を算出する際に、各品詞に対する重み係数を同一としてもよい。この場合、品詞の重み係数は固定値として記憶部に予め記憶されるので、キーワードリストは、品詞の重み係数を含まなくてもよい。
【０１３７】
さらに他の変形例によれば、キーワードリストには、特定の外部情報源が有する特定の情報と関連付けられた特定のキーワード、サービス識別子及び情報識別子が登録されていてもよい。また提示情報リストにも、その特定の外部情報源に対応するサービス識別子及び情報識別子と対応付けて、その外部情報源が有する特定の情報の位置を表すリンク先のアドレスが登録されていてもよい。これにより、ユーザは、その特定のキーワードを発声することにより、常に特定の情報の提示を受けることができる。
【０１３８】
さらに他の変形例によれば、上記の実施形態またはその変形例における、端末が有する各部と、サーバが有する各部は、一つの装置に搭載されていてもよい。そしてその装置が有する一つまたは複数のプロセッサが、端末の処理部の各機能と、サーバの制御部の各機能を実行してもよい。
あるいは、端末の処理部が有する音声認識の機能は、通信ネットワークを介して端末及びサーバと接続された音声認識用サーバが有してもよい。この場合には、端末から音声認識用サーバへ音声信号が送られ、音声認識用サーバが認識候補単語のセットをサーバへ送信する。
【０１３９】
さらに、上記の実施形態による対話制御装置の端末の処理部が有する各機能をコンピュータに実現させるコンピュータプログラムは、コンピュータによって読み取り可能な媒体、例えば、磁気記録媒体、光記録媒体または半導体メモリに記録された形で提供されてもよい。同様に、サーバの制御部が有する各機能をコンピュータに実現させるコンピュータプログラムは、コンピュータによって読み取り可能な媒体、例えば、磁気記録媒体、光記録媒体または半導体メモリに記録された形で提供されてもよい。
【０１４０】
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
【０１４１】
以上説明した実施形態及びその変形例に関し、更に以下の付記を開示する。
（付記１）
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組と、当該複数の組のそれぞれについて関連する１以上のキーワード及び当該キーワードについて設定された重み係数とを記憶する記憶部と、
前記各キーワードについて、音声入力部を介して入力された音声信号から検出された少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、前記重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出するキーワード決定部と、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力する提示情報取得部と、
複数の前記サービス識別子のうち、前記取得された現在の提示情報の供給源を表す第１のサービス識別子と、当該現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、当該第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、当該第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する重み更新部と、
を有する対話制御装置。
（付記２）
前記重み更新部が、前記第１のサービス識別子と、前記第２のサービス識別子とが異なる場合、前記第１のサービス識別子と関連付けられたキーワードについて設定された重み係数を、前記第２のサービス識別子と関連付けられたキーワードについて設定された重み係数よりも大きくする、付記１に記載の対話制御装置。
（付記３）
現在の提示情報の取得時を含む第１の期間における提示情報の供給源の変化を表す第１の判定結果と、前記第１の期間よりも長い第２の期間における提示情報の供給源の変化を表す第２の判定結果の組み合わせに応じて、提供情報の供給源が変更されたことを表す「変化有り」、提供情報の供給源が変更されていないことを表す「変化無し」、及び提供情報の供給源が変更されたか否かが不確定であることを表す「変化不確定」の３つの変化結果のうちの何れかを出力する変化検出部をさらに有し、
前記重み更新部は、前記変化検出部から出力された変化結果に応じて、前記第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、前記第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する、付記１または２に記載の対話制御装置。
（付記４）
前記変化検出部は、前記第１のサービス識別子と、一回前の提示情報の供給源を表す第３のサービス識別子が一致しているか否かを前記第１の判定結果とする、付記３に記載の対話制御装置。
（付記５）
前記変化検出部は、最新の提示情報よりも前のＮ回の間に継続して提供された提示情報の供給源を表す第４のサービス識別子と、最新の提示情報を含むＭ回の間に継続して提供された提示情報の供給源を表す第５のサービス識別子とが一致しているか否かを前記第２の判定結果とし、該Ｎ及びＭは、２以上の整数である、付記３または４に記載の対話制御装置。
（付記６）
前記変化検出部は、
前記第１の判定結果が、前記第１のサービス識別子と前記第３のサービス識別子が一致しているとの結果である場合は前記変化結果として前記「変化無し」を出力し、
前記第１の判定結果が、前記第１のサービス識別子と前記第３のサービス識別子が一致していないとの結果であり、且つ、前記第２の判定結果が、前記第４のサービス識別子と前記第５のサービス識別子が一致しているとの結果である場合は前記変化結果として前記「変化無し」を出力し、
前記第１の判定結果が、前記第１のサービス識別子と前記第３のサービス識別子が一致していないとの結果であり、且つ、前記第２の判定結果が、前記第４のサービス識別子と前記第５のサービス識別子が一致していないとの結果である場合は、前記変化結果として前記「変化不確定」を出力し、
前記第１の判定結果が、前記第１のサービス識別子と前記第３のサービス識別子が一致しているとの結果であり、且つ、前記第２の判定結果が、前記第４のサービス識別子と前記第５のサービス識別子が一致していないとの結果である場合は、前記変化結果として前記「変化有り」を出力する、
付記５に記載の対話制御装置。
（付記７）
前記重み更新部は、前記変化検出部により出力された変化結果が前記「変化有り」または前記「変化無し」である場合に、前記第１のサービス識別子と関連付けられたキーワードについて設定された重み係数を、前記第１のサービス識別子と関連付けられていないキーワードについて設定された重み係数よりも大きくし、一方、前記変化結果が前記「変化不確定」である場合に、前記第１のサービス識別子と関連付けられたキーワードについて設定された重み係数と、前記第２のサービス識別子と関連付けられたキーワードについて設定された重み係数とを同じ比率で更新する、付記５または６に記載の対話制御装置。
（付記８）
前記重み更新部は、前記第１のサービス識別子と前記第２のサービス識別子とが一致する場合、前記複数のキーワードのそれぞれに対応する前記重み係数を、前記記憶部に記憶されてからの経過時間が長いほど小さくする、付記１〜７の何れか一項に記載の対話制御装置。
（付記９）
前記提示情報取得部は、前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される情報がリンク先のアドレスを含む場合、当該アドレスで示された提示情報の供給源から前記提示情報を取得し、当該供給源を表すサービス識別子を前記第１のサービス識別子とする、付記１〜８の何れか一項に記載の対話制御装置。
（付記１０）
前記アドレスで示された提示情報の供給源から取得された前記提示情報から１以上の前記キーワードを抽出し、該抽出されたキーワードに対して前記重み係数として所定の値を設定するとともに、該抽出されたキーワードと該設定された重み係数を前記記憶部に記憶させるキーワード抽出部をさらに有する、付記９に記載の対話制御装置。
（付記１１）
複数の前記キーワードのそれぞれについて、当該キーワードと関連する前記サービス識別子と異なるサービス識別子と関連する他のキーワードのうち、最も類似するキーワードとの類似度合いを表すキーワード間類似度を算出する類似度算出部をさらに有し、
前記重み更新部は、複数の前記キーワードのそれぞれについて、当該キーワードについての前記キーワード間類似度に基づいて前記重み係数を決定する、付記１に記載の対話制御装置。
（付記１２）
前記重み更新部は、複数の前記キーワードのうち、前記キーワード間類似度が他のキーワードと類似していないことを表す値であるキーワードに対する前記重み係数を前記記憶部に記憶されてからの経過時間にかかわらず一定値とし、一方、複数の前記キーワードのうち、前記キーワード間類似度が他のキーワードと少なくとも一部が類似していることを表す値であるキーワードに対する前記重み係数を前記記憶部に記憶されてからの経過時間が長いほど小さくする、付記１１に記載の対話制御装置。
（付記１３）
前記一定値は、前記キーワード間類似度が他のキーワードと少なくとも一部が類似していることを表す値であるキーワードに対する前記重み係数よりも大きい値である、付記１２に記載の対話制御装置。
（付記１４）
前記類似度算出部は、複数の前記キーワードのそれぞれについて、当該キーワードが前記記憶部に記憶された時刻と、当該キーワードについての前記最も類似するキーワードが前記記憶部に記憶された時刻との差をさらに求め、
前記重み更新部は、複数の前記キーワードのうち、前記キーワード間類似度が他のキーワードと少なくとも一部が類似していることを表す値であり、かつ、前記時刻の差が小さいキーワードほど、前記重み係数を小さい値とする、付記１１に記載の対話制御装置。
（付記１５）
複数の提示情報の供給源のうちの二つの供給源間の遷移の頻度が高いほど、当該二つの供給源間の関連度を高くするように、該関連度を算出する関連度算出部をさらに有し、
前記類似度算出部は、複数の前記キーワードのそれぞれについて、当該キーワードと関連する前記提示情報の供給源と、当該キーワードについての前記最も類似するキーワードと関連する前記提示情報の供給源間の前記関連度を、当該キーワードと対応付け、
前記重み更新部は、複数の前記キーワードのそれぞれについて、当該キーワードに対応する前記関連度が二つの提示情報の供給源間に関連性があることを表す値であれば、当該キーワードについての前記重み係数と、当該キーワードについての前記最も類似するキーワードについての重み係数と一致させる、付記１１に記載の対話制御装置。
（付記１６）
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組と、当該複数の組のそれぞれについて関連する１以上のキーワード及び当該キーワードについて設定された重み係数とを記憶する記憶部と、
複数の前記キーワードのそれぞれについて、音声入力部を介して入力された音声信号から検出された少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、前記重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出するキーワード決定部と、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力する提示情報取得部と、
複数の前記キーワードのそれぞれについて、当該キーワードと関連する前記サービス識別子と異なるサービス識別子と関連する他のキーワードのうち、最も類似するキーワードとの類似度合いを表すキーワード間類似度を算出する類似度算出部と、
複数の前記キーワードのそれぞれについて、当該キーワードについての前記キーワード間類似度に基づいて前記重み係数を決定する重み更新部と、
を有する対話制御装置。
（付記１７）
音声入力部を介して入力された音声信号から少なくとも一つの認識候補単語を検出し、
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組のそれぞれに関連付けられたキーワードについて、前記少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、当該キーワードについて設定された重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出し、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力し、
複数の前記サービス識別子のうち、前記取得された現在の提示情報の供給源を表す第１のサービス識別子と、当該現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、当該第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、当該第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する、
ことを含む対話制御方法。
（付記１８）
音声入力部を介して入力された音声信号から少なくとも一つの認識候補単語を検出し、
テキスト情報を含む提示情報を識別する情報識別子と該提示情報の供給源を識別するサービス識別子との複数の組のそれぞれに関連付けられたキーワードについて、前記少なくとも一つの認識候補単語との類似度を、当該キーワード中で前記少なくとも一つの認識候補単語と一致する部分が多く、かつ、当該キーワードについて設定された重み係数が大きいほど大きくなるように算出し、当該類似度が最大となるキーワードを検出し、
前記検出されたキーワードと関連する前記サービス識別子及び前記情報識別子の組により特定される提示情報を取得し、該提示情報をユーザに通知する出力部へ出力し、
複数の前記サービス識別子のうち、前記取得された現在の提示情報の供給源を表す第１のサービス識別子と、当該現在の提示情報よりも前に取得された提示情報の供給源を表す第２のサービス識別子との差異の有無に基づいて、当該第１のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数と、当該第２のサービス識別子と関連付けられた前記キーワードについて設定された前記重み係数を更新する、
ことをコンピュータに実行させる対話制御用コンピュータプログラム。
【符号の説明】
【０１４２】
１    対話制御システム
２    端末
３    サーバ（対話制御装置）
４    通信ネットワーク
５    外部情報源
２１    音声入力部
２２    音声出力部
２３    通信部
２４    記憶部
２５    処理部
２６    音声認識部
２７    音声合成部
３１    通信部
３２    記憶部
３３、４０、５０    制御部
３４    認識キーワード決定部
３５    提示情報取得部
３６    サービス識別部
３７    サービス変化検出部
３８    認識キーワード抽出部
３９、４２、５３    重み更新部
４１、５２    類似度算出部
５１    サービス関連度算出部
【図１】
0005696638.tif 000003
【図２】
0005696638.tif 000004
【図３】
0005696638.tif 000005
【図４】
0005696638.tif 000006
【図５】
0005696638.tif 000007
【図６】
0005696638.tif 000008
【図７】
0005696638.tif 000009
【図８】
0005696638.tif 000010
【図９】
0005696638.tif 000011
【図１０】
0005696638.tif 000012
【図１１】
0005696638.tif 000013
【図１２】
0005696638.tif 000014
【図１３】
0005696638.tif 000015
【図１４】
0005696638.tif 000016
【図１５】
0005696638.tif 000017
【図１６】
0005696638.tif 000018
【図１７】
0005696638.tif 000019
【図１８】
0005696638.tif 000020
【図１９】
0005696638.tif 000021
【図２０】
0005696638.tif 000022