(57)【要約】【課題】  ユーザの関心事に適合するコンテンツを、適切なタイミングで提供する。【解決手段】  情報収集解析装置７０は、パソコン３０にて作成・閲覧されたデータを取得すると共に、ディジタル電話装置５０から、通話時に他の電話装置との間で送受信された音声のデータを取得する。また、推定タイミングが到来すると、その際に取得したデータに基づき、ユーザの関心事を推定する。推定結果はベクトル表現する。そして、推定の度に、その推定値を、カレント関心ベクトルとして保持する。この他、データを取得する度、取得データから抽出したキーワードと、最新の推定値と、を関連付けてテーブルに記憶する。また、評価タイミングが到来すると、テーブルに登録された取得データ毎の推定値と、カレント関心ベクトルとを比較し、類似度の高い推定値に関連付けられた抽出キーワードから、優先的に処理し、そのキーワードに対応するコンテンツを検索・取得する。【選択図】  図１
2006260511.tif 000002
【特許請求の範囲】
【請求項１】
ユーザインタフェースを備える情報処理装置において、ユーザから前記ユーザインタフェースに入力されたデータ、及び、前記ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、前記情報処理装置から取得するデータ取得手段と、
前記データ取得手段が取得したデータに対応するコンテンツを取得し、前記取得したコンテンツを、ユーザに提供するコンテンツ提供手段と、
を備えるコンテンツ提供システムであって、
前記データ取得手段が取得したデータに基づき、前記ユーザの関心事を推定する推定手段と、
前記データ取得手段がデータを取得する度に、そのデータと、前記推定手段が出力した最新の推定結果と、を関連付けて記憶するデータ記憶手段と、
前記推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する最新推定結果保持手段と、
前記データ記憶手段が記憶した各データ毎に、前記最新推定結果保持手段が保持する推定結果が示す前記ユーザの関心事に対する、前記データに関連付けられた推定結果が示す前記ユーザの関心事の類似度を、評価する評価手段と、
を備え、
前記コンテンツ提供手段は、前記データ記憶手段が記憶したデータを、前記評価手段によって前記類似度が高いと評価されたデータから、優先的に処理して、その処理対象データに対応するコンテンツを取得する構成にされていることを特徴とするコンテンツ提供システム。
【請求項２】
前記コンテンツ提供手段は、前記データ記憶手段が記憶したデータを、前記評価手段によって前記類似度が高いと評価されたデータから、順に処理対象に選択し、その処理対象データに対応するコンテンツを取得する構成にされていることを特徴とする請求項１記載のコンテンツ提供システム。
【請求項３】
前記コンテンツ提供手段は、
前記データ記憶手段が記憶したデータを順次、処理対象データに選択する選択手段、
を備え、前記選択手段が処理対象データを選択する度に、その処理対象データに対応するコンテンツを取得するためのプロセスを実行する構成にされ、更に、前記プロセスを、複数個、並列実行可能な構成にされ、
前記選択手段は、
実行中の前記プロセスの数が上限値未満であるか否かを判断するプロセス数判断手段と、
前記データ記憶手段が記憶した処理対象データに選択されていないデータ群の中に、前記評価手段の評価結果が前記実行中の各プロセスに対応する処理対象データについての前記評価結果よりも高い前記類似度を示すデータ、が存在するか否かを判断する類似度判断手段と、
前記実行中のプロセス群の中から、前記評価結果が示す前記類似度が最も低い処理対象データを取扱うプロセスを、キャンセル対象のプロセスとして選択するプロセス選択手段と、
を備え、前記プロセス数判断手段にて、前記実行中のプロセスの数が上限値未満ではないと判断されている期間には、優先的選択処理を実行する構成にされ、
前記優先的選択処理は、前記類似度判断手段にて、前記処理対象データに選択されていないデータ群の中に、前記評価手段の評価結果が前記実行中の各プロセスに対応する処理対象データについての前記評価結果よりも高い前記類似度を示すデータ、が存在すると判断されている場合、前記プロセス選択手段によって選択された前記キャンセル対象のプロセスを強制終了させて、前記データ記憶手段が記憶した処理対象データに選択されていないデータ群の中から、前記評価手段の評価結果が最も高い前記類似度を示すデータを、処理対象データに選択し、前記類似度判断手段にて、前記処理対象データに選択されていないデータ群の中に、前記評価手段の評価結果が前記実行中の各プロセスに対応する処理対象データについての前記評価結果よりも高い前記類似度を示すデータ、が存在しないと判断されている場合、新たなデータを、処理対象データに選択する動作を停止する処理であることを特徴とする請求項１又は請求項２記載のコンテンツ提供システム。
【請求項４】
前記情報処理装置の動作モードを判定するモード判定手段、を備え、
前記選択手段は、前記モード判定手段の判定結果に基づき、前記情報処理装置が特定の動作モード以外の動作モードにて動作している期間に限り、前記優先的選択処理を実行する構成にされていることを特徴とする請求項３記載のコンテンツ提供システム。
【請求項５】
前記選択手段は、前記情報処理装置が特定の動作モードにて動作している期間、前記実行中のプロセスの数にかかわらず、前記データ記憶手段が記憶した処理対象データに選択されていないデータ群の中から、前記評価手段の評価結果が最も高い前記類似度を示すデータを、処理対象データに選択する構成にされ、
前記コンテンツ提供手段は、前記選択手段が選択した処理対象データに対応するコンテンツを取得するためのプロセスを、前記上限値を超えて、複数個、並列実行可能な構成にされていることを特徴とする請求項４記載のコンテンツ提供システム。
【請求項６】
前記情報処理装置は、電話装置であって、動作モードとして、他の電話装置から発せられた呼を受けて、前記他の電話装置と通信している状態である着呼通信モードと、自身から発呼して他の電話装置と通信している状態である発呼通信モードとを少なくとも有し、
前記特定の動作モードは、前記着呼通信モードであることを特徴とする請求項４又は請求項５記載のコンテンツ提供システム。
【請求項７】
前記コンテンツ提供手段は、コンテンツを取得するためのプロセスを、複数個、並列に実行可能な構成にされ、前記データ記憶手段が記憶したデータを、順次、処理対象に選択して、処理対象データに対応するコンテンツを取得するためのプロセスを実行する構成にされ、前記評価手段の評価結果が高い前記類似度を示すデータを、処理対象データとするプロセスに対し、優先的にリソースを割り当てることによって、前記評価手段によって前記類似度が高いと評価されたデータから、優先的に処理する構成にされていることを特徴とする請求項１〜請求項６のいずれかに記載のコンテンツ提供システム。
【請求項８】
ユーザインタフェースを備える情報処理装置において、ユーザから前記ユーザインタフェースに入力されたデータ、及び、前記ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、前記情報処理装置から取得するデータ取得手段と、
前記データ取得手段が取得したデータに対応するコンテンツを取得し、前記取得したコンテンツを、ユーザに提供するコンテンツ提供手段と、
を備えるコンテンツ提供システムであって、
前記データ取得手段が取得したデータに基づき、前記ユーザの関心事を推定する推定手段と、
前記データ取得手段がデータを取得する度に、そのデータと、前記推定手段が出力した最新の推定結果と、を関連付けて記憶するデータ記憶手段と、
前記推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する最新推定結果保持手段と、
前記データ記憶手段が記憶した各データ毎に、前記最新推定結果保持手段が保持する推定結果が示す前記ユーザの関心事に対する、前記データに関連付けられた推定結果が示す前記ユーザの関心事の類似度を、評価する評価手段と、
を備え、
前記コンテンツ提供手段は、前記データ記憶手段が記憶したデータであって、前記評価手段にて予め定められた一定値以上の前記類似度が得られたデータを、順次、処理対象に選択し、その処理対象データに対応するコンテンツを取得する構成にされていることを特徴とするコンテンツ提供システム。
【請求項９】
前記コンテンツ提供手段は、処理対象データから抽出したキーワードに関連するコンテンツを検索し、その検索結果に基づいて、前記キーワードに関連するコンテンツを、データベースから取得する構成にされていることを特徴とする請求項１〜請求項８のいずれかに記載のコンテンツ提供システム。
【請求項１０】
前記推定手段が前記ユーザの関心事を推定する度に、その推定結果が示す前記ユーザの関心事が、ユーザ側で持続する期間である持続期間を推定する持続期間推定手段、
を備え、
前記コンテンツ提供手段は、前記持続期間推定手段が推定した持続期間の終了時点前に、処理対象に選択したデータに対応するコンテンツの取得動作が完了するように、各処理対象データについての処理時間の上限値を設定し、前記上限値の範囲内で、前記各処理対象データに対応するコンテンツを取得するための処理を実行する構成にされていることを特徴とする請求項１〜請求項９のいずれかに記載のコンテンツ提供システム。
【請求項１１】
前記推定手段が前記ユーザの関心事を推定する度に、その推定結果が示す前記ユーザの関心事が、前記ユーザの関心事を分類するために予め定められた複数のクラスのうち、いずれのクラスに属するものであるのかを判定する判定手段と、
前記複数のクラスについて、各クラス毎に、そのクラスに属する前記ユーザの関心事がユーザ側で持続する期間である持続期間、を記憶する持続期間記憶手段と、
を備え、
前記推定手段は、前記持続期間記憶手段から、前記判定手段により判定されたクラスに対応する前記持続期間を読み出し、最後に前記ユーザの関心事を推定した時点から、その持続期間が経過すると、再び、ユーザの関心事を推定する構成にされていることを特徴とする請求項１〜請求項１０のいずれかに記載のコンテンツ提供システム。
【請求項１２】
ユーザインタフェースを備える情報処理装置において、ユーザから前記ユーザインタフェースに入力されたデータ、及び、前記ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、前記情報処理装置から取得するデータ取得手段と、
前記データ取得手段が取得したデータに基づき、前記ユーザの関心事を推定する推定手段と、
前記データ取得手段がデータを取得する度に、そのデータと、前記推定手段が出力した最新の推定結果と、を関連付けて記憶するデータ記憶手段と、
前記推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する最新推定結果保持手段と、
前記データ記憶手段が記憶した各データ毎に、前記最新推定結果保持手段が保持する推定結果が示す前記ユーザの関心事に対する、前記データに関連付けられた推定結果が示す前記ユーザの関心事の類似度を、評価する評価手段と、
前記データ記憶手段が記憶したデータを、前記評価手段によって前記類似度が高いと評価されたデータから、優先的に処理して、その処理対象データに対応するコンテンツを取得し、前記取得したコンテンツを、ユーザに提供するコンテンツ提供手段
としての機能を、コンピュータに実現させるためのプログラム。
【請求項１３】
ユーザインタフェースを備える情報処理装置において、ユーザから前記ユーザインタフェースに入力されたデータ、及び、前記ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、前記情報処理装置から取得するデータ取得手段と、
前記データ取得手段が取得したデータに基づき、前記ユーザの関心事を推定する推定手段と、
前記データ取得手段がデータを取得する度に、そのデータと、前記推定手段が出力した最新の推定結果と、を関連付けて記憶するデータ記憶手段と、
前記推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する最新推定結果保持手段と、
前記データ記憶手段が記憶した各データ毎に、前記最新推定結果保持手段が保持する推定結果が示す前記ユーザの関心事に対する、前記データに関連付けられた推定結果が示す前記ユーザの関心事の類似度を、評価する評価手段と、
前記データ記憶手段が記憶したデータであって、前記評価手段にて予め定められた一定値以上の前記類似度が得られたデータを、順次、処理対象に選択し、その処理対象データに対応するコンテンツを取得し、前記取得したコンテンツを、ユーザに提供するコンテンツ提供手段
としての機能を、コンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザインタフェースが取扱うデータに基づいて、ユーザの関心事を推定し、それに対応するコンテンツを、ユーザに提供するコンテンツ提供システムに関する。
【背景技術】
【０００２】
従来より、ユーザインタフェースに対するユーザの入力に基づき、ユーザの関心があると推定されるコンテンツを検索し、そのコンテンツを、モニタ出力してユーザに提供するコンテンツ提供システムが知られている。例えば、マイクロフォンからの入力音声を認識し、この音声から抽出したキーワードに基づいて検索したコンテンツを、モニタ出力するコンテンツ提供システムが知られている（特許文献１参照）。
【特許文献１】特開２００４−１６４６７８号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来システムでは、規定時間内に所定量のキーワードが得られることによって、検索開始条件が満足されたキーワードに対応するコンテンツから順に検索し、得られたコンテンツを、順にモニタ出力するので、先に実行を開始した検索・出力処理によって、リソースが使用されている場合、後続のコンテンツについての検索・出力処理を実行することができず、ユーザの関心事に合わせて、適切に、コンテンツの検索・出力処理を、実行することができないといった問題があった。
【０００４】
このような問題は、特に、検索・出力対象のコンテンツが多い場合に生じやすく、ユーザの関心事の変化に遅れて、既にユーザの関心が薄れたコンテンツを、出力することは、ユーザにとって不要なコンテンツを提供することになり、システムが本来果たすべき機能が損なわれる結果となっていた。
【０００５】
本発明は、こうした問題に鑑みなされたものであり、ユーザの関心事に適合するコンテンツを、適切なタイミングで提供可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するためになされた請求項１記載のコンテンツ提供システムでは、ユーザインタフェースを備える情報処理装置において、ユーザからユーザインタフェースに入力されたデータ、及び、ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、データ取得手段が情報処理装置から取得し、コンテンツ提供手段が、そのデータ取得手段によって取得されたデータに対応するコンテンツを取得し、取得したコンテンツを、ユーザに提供する。また、このコンテンツ提供システムは、推定手段と、データ記憶手段と、最新推定結果保持手段と、評価手段と、を備える。
【０００７】
推定手段は、推定タイミングが到来する度に、データ取得手段が取得したデータに基づき、ユーザの関心事を推定する。一方、データ記憶手段は、データ取得手段がデータを取得する度に、そのデータと、推定手段が出力した最新の推定結果とを関連付けて記憶する。また、最新推定結果保持手段は、推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する。
【０００８】
その他、評価手段は、データ記憶手段が記憶した各データ毎に、最新推定結果保持手段が保持する推定結果が示すユーザの関心事に対する、そのデータに関連付けられた推定結果が示すユーザの関心事の類似度を、評価する。
【０００９】
そして、コンテンツ提供手段は、データ記憶手段が記憶したデータを、評価手段によって類似度が高いと評価されたデータから、優先的に処理して、その処理対象データに対応するコンテンツを取得する。
【００１０】
このコンテンツ提供システムによれば、最新推定結果保持手段が、常に最新の推定結果を保持する一方で、データ記憶手段が、取得データの記憶時において最も新しい推定結果を、取得データ毎に保持する。従って、評価手段が、データ記憶手段の記録内容と、最新推定結果保持手段が保持する推定結果とに基づいて、類似度を評価する際には、最新の推定結果と同一の推定結果に関連付けられた最新の取得データが最も高く評価される。
【００１１】
また、最新の取得データでなくとも、最新の推定結果と同一又は近い推定結果に関連付けられた過去の取得データについては、高く評価されるが、過去の取得データであって、最新の推定結果と乖離した推定結果に関連付けられた取得データについては、低く評価される。
【００１２】
コンテンツ提供手段は、このような評価結果に従って、推定結果について最新の推定結果と類似度の高い取得データから、優先的に処理して、その取得データに対応するコンテンツを（例えばウェブサーバ等から）取得し、取得したコンテンツをユーザに（例えば、表示の形態や音出力の形態等で）提供する。
【００１３】
従って、本発明のコンテンツ提供システムによれば、蓄積されたデータのうち、ユーザの関心事に適合したデータを、優先的に処理して、そのコンテンツを迅速にユーザに提供することができる。よって、従来のように蓄積されたデータを、順に処理することによって、コンテンツの提供に遅延が生じるのを防止することができる。
【００１４】
尚、推定タイミングとしては、データ取得手段がデータを取得したタイミングや、予め定められた間欠的なタイミング等を、採用することができる。
また、評価の高い取得データから、優先的に処理する方法としては、評価の高い順に、データを処理対象に選択する方法が挙げられる。
【００１５】
請求項２記載のコンテンツ提供システムは、コンテンツ提供手段が、データ記憶手段が記憶したデータを、評価手段によって類似度が高いと評価されたデータから、順に処理対象に選択し、その処理対象データに対応するコンテンツを取得する構成にされている。
【００１６】
このコンテンツ提供システムによれば、評価の高いデータから、処理対象に選択して、コンテンツを取得するための処理を実行するので、ユーザにとって関心のあるコンテンツを、ユーザに対して優先的に提供することができる。
【００１７】
ところで、マルチタスクＯＳ（オペレーティングシステム）上で、コンテンツ提供システムを実現する場合には、コンテンツを取得するための処理を実現するプロセスを、複数個、並列に実行することができるが、同時に実行することができるプロセス数に上限値をもたせる場合には、プロセス数が上限値に達した際に、評価の低いデータについてのプロセスが実行中であるにもかかわらず、その後に発生した評価の高いデータを処理することができない場合がある。
【００１８】
従って、このような問題を解消するために、上記のコンテンツ提供システムは、請求項３記載のように構成されるとよい。請求項３記載のコンテンツ提供システムでは、コンテンツ提供手段が、データ記憶手段が記憶したデータを、順次、処理対象データに選択する選択手段を備え、選択手段が処理対象データを選択する度に、その処理対象データに対応するコンテンツを取得するためのプロセスを実行する。また、コンテンツ提供手段は、上記プロセスを、複数個、並列に実行可能な構成にされている。
【００１９】
選択手段は、実行中のプロセスの数が上限値未満であるか否かを判断するプロセス数判断手段と、データ記憶手段が記憶した処理対象データに選択されていないデータ群の中に、評価手段の評価結果が、上記実行中の各プロセスに対応する処理対象データについての評価結果よりも高い類似度を示すデータ、が存在するか否かを判断する類似度判断手段と、実行中のプロセス群の中から、評価結果が示す類似度が最も低い処理対象データを取扱うプロセスを、キャンセル対象のプロセスとして選択するプロセス選択手段と、を備える。
【００２０】
この選択手段は、プロセス数判断手段にて、実行中のプロセスの数が上限値未満ではないと判断されている期間には、優先的選択処理を実行する。優先的選択処理とは、類似度判断手段にて、上記実行中の各プロセスに対応する処理対象データについての評価結果よりも高い類似度を示すデータが存在すると判断されている場合、プロセス選択手段によって選択されたキャンセル対象のプロセスを強制終了させて、データ記憶手段が記憶した処理対象データに選択されていないデータ群の中から、評価手段の評価結果が最も高い類似度を示すデータを、処理対象データに選択し、類似度判断手段にて、上記実行中の各プロセスに対応する処理対象データについての評価結果よりも高い類似度を示すデータが存在しないと判断されている場合、新たなデータを、処理対象データに選択する動作を停止する処理のことである。
【００２１】
このコンテンツ提供システムによれば、プロセス数が上限値に達している際、類似度の低いデータを取扱うプロセスを終了して、それより類似度の高いデータについてのプロセスを新規に実行するので、類似度の低いデータについてのプロセスが実行中のため、そのプロセスの実行開始後に発生した類似度の高いデータを処理することができないといった問題が発生するのを防止することができる。
【００２２】
また、複数の動作モードを有する情報処理装置において、ユーザの意思によって動作モードが切り替わったのではなく、外部割込みによって動作モードが切り替わった場合には、ユーザの関心が一時的に移り、その後すぐ、元の関心に戻ることが予想されるので、一時的に変化したユーザの関心事との類似度が高いと評価されたデータについてのプロセスを実行するために、他のプロセスを終了させることは好ましくない。
【００２３】
従って、上記のコンテンツ提供システムは、請求項４記載のように構成されるとよい。請求項４記載のコンテンツ提供システムは、情報処理装置の動作モードを判定するモード判定手段、を備え、このシステムにおける選択手段は、モード判定手段の判定結果に基づき、情報処理装置が特定の動作モード以外の動作モードにて動作している期間に限り、上記優先的選択処理を実行する。
【００２４】
このコンテンツ提供システムにおいて、外部割込みによって遷移する動作モードを、特定の動作モードとして設定しておけば、特定の動作モードにて動作している期間には、プロセスの強制終了が行われないので、上記の問題を解消することができる。
【００２５】
尚、このコンテンツ提供システムでは、特定の動作モードにて動作している期間、プロセスの強制終了を行わずに、実行中のプロセスが正常終了するまで待機し、実行中のプロセスが上限値未満となった時点で、評価手段の評価結果が最も高い類似度を示すデータを、処理対象データに選択し、それについてのプロセスを実行するように、コンテンツ提供手段を構成してもよいが、そのようにコンテンツ提供システムを構成すると、特定の動作モード時に、ユーザの関心事に適したコンテンツを、ユーザに提供することができなくなってしまう可能性がある。
【００２６】
従って、請求項４記載のコンテンツ提供システムは、請求項５記載のように構成されるとよい。請求項５記載のコンテンツ提供システムでは、情報処理装置が特定の動作モードにて動作している期間、選択手段が、実行中のプロセスの数にかかわらず、データ記憶手段が記憶した処理対象データに選択されていないデータ群の中から、評価手段の評価結果が最も高い類似度を示すデータを、処理対象データに選択する。また、このコンテンツ提供システムにおけるコンテンツ提供手段は、選択手段が選択した処理対象データに対応するコンテンツを取得するためのプロセスを、上限値を超えて、複数個、並列実行する。
【００２７】
このコンテンツ提供システムでは、情報処理装置が特定の動作モードにて動作している期間、プロセス数を制約することなく、評価結果が最も高い類似度を示すデータを、処理対象データに選択し、これについての上記プロセスを実行するので、プロセス数の上限値を設けることによってコンテンツ提供手段の過負荷を抑制しながらも、特定の動作モード時に、ユーザの関心事に適したコンテンツを、ユーザに提供することができなくなる問題を解消することができる。また、一時的にユーザの関心事が変化しただけにもかかわらず、変化前の関心事に対応するプロセスを終了させることによって、不都合が発生する問題も解消することができる。
【００２８】
尚、上述の情報処理装置としては、パーソナルコンピュータや、ディジタル電話装置を挙げることができる。また、情報処理装置が、電話装置である場合には、特定の動作モードを、着呼により遷移する動作モードに設定することができる。
【００２９】
請求項６記載のコンテンツ提供システムは、データ取得手段がデータ取得先とする情報処理装置が、電話装置であって、動作モードとして、他の電話装置から発せられた呼を受けて、他の電話装置と通信している状態である着呼通信モードと、自身から発呼して他の電話装置と通信している状態である発呼通信モードと、を少なくとも採り、上記特定の動作モードが、着呼通信モードであることを特徴とする。
【００３０】
請求項６記載のコンテンツ提供システムによれば、着呼により割込みが入り、相手方の音声が、ユーザインタフェースを通じてユーザに向けて出力された場合に、その相手方の音声（又は、関心の有無にかかわらず相手方の問いかけに対して、ユーザインタフェースに入力されたユーザの音声）によって推定された関心事に対応するコンテンツについての上記プロセスが実行されることによって、元に戻ると予想されるユーザの関心事についての他のプロセスが終了してしまうのを防止することができる。
【００３１】
また、マルチタスクＯＳとしては、タイムシェアリングにて、複数のプロセスを並列に実行するものであって、各プロセスに対して優先度を割り当てることができるＯＳが知られている。また、各プロセスに対してメモリの上限値を設定できるものが知られている。このようなＯＳ上にて、コンテンツ提供システムを実現する場合には、プロセスに対し高い優先度を割り当てたり、メモリの上限値を高く設定することで、そのプロセスを優先的に処理することができる。
【００３２】
従って、このようなマルチタスクＯＳ上で、コンテンツ提供システムを実現する場合には、請求項７記載のようにコンテンツ提供システムを構成するとよい。
請求項７記載のコンテンツ提供システムは、コンテンツ提供手段が、コンテンツを取得するためのプロセスを、複数個、並列に実行可能な構成にされている。また、このコンテンツ提供手段は、データ記憶手段が記憶したデータを、順次、処理対象に選択して、処理対象データに対応するコンテンツを取得するためのプロセスを実行する構成にされ、評価手段の評価結果が高い類似度を示すデータを、処理対象データとするプロセスに対し、優先的にリソースを割り当てることによって、評価手段によって類似度が高いと評価されたデータから、優先的に処理する。
【００３３】
このような手法でも、評価の高いデータに対応するコンテンツから、優先的に取得し、そのコンテンツをユーザに提供することができる。
その他、上記コンテンツ提供システムでは、最新の推定結果と類似度の高いデータに対応するコンテンツを優先的に取得するようにしたが、類似度が一定値以上に満たないデータについては、コンテンツを取得せず、類似度が一定値以上であるデータについてのみ、対応するコンテンツを取得し、そのコンテンツをユーザに提供するようにしてもよい。
【００３４】
請求項８記載のコンテンツ提供システムは、請求項１記載のコンテンツ提供システムに、上記のコンテンツ提供手段に代えて、データ記憶手段が記憶したデータであって、評価手段にて予め定められた一定値以上の類似度が得られたデータを、順次、処理対象に選択し、その処理対象データに対応するコンテンツを取得し、取得したコンテンツをユーザに提供するコンテンツ提供手段を、設けたものである。
【００３５】
このコンテンツ提供システムによれば、蓄積されたデータのうち、最新の推定結果と類似度の高いデータのみを、選択的に処理して、そのコンテンツをユーザに提供するので、従来のように、処理待ちのデータから、ユーザの現在の関心事とは無関係のデータを選択し、それに対応するコンテンツを取得・提供することがなく、ユーザの関心事に適合するデータを、適切なタイミングにて、ユーザに提供することができる。
【００３６】
尚、上記の発明は、請求項９記載のように、コンテンツ提供手段が、処理対象データから抽出されたキーワードに関連するコンテンツを検索し、その検索結果に基づいて、キーワードに関連するコンテンツを、データベースから取得する構成にされたコンテンツ提供システムに適用することができる。また、データベースとしては、ウェブサーバ等を挙げることができる。
【００３７】
データベースがウェブサーバである場合など、ネットワーク経由でコンテンツを取得する場合には、コンテンツの検索・取得に時間がかかるため、処理対象となりえるデータが複数ある場合、それらを順に処理すると、ユーザの関心事の変化に追従できず、コンテンツの提供に遅延が生ずるが、本発明のコンテンツ提供システムによれば、現在のユーザの関心事に適合するデータを優先的（又は選択的）に処理するので、ユーザの関心事に適合するコンテンツを、適切なタイミングで提供することができる。
【００３８】
また、上記のコンテンツの提供システムにおいては、コンテンツを取得するための処理について、制限時間を設けると、一層好ましい。
請求項１０記載のコンテンツ提供システムは、推定手段がユーザの関心事を推定する度に、その推定結果が示すユーザの関心事がユーザ側で持続する期間である持続期間を推定する持続期間推定手段、を備える。また、このコンテンツ提供システムにおけるコンテンツ提供手段は、持続期間推定手段が推定した持続期間の終了時点前に、処理対象に選択したデータに対応するコンテンツの取得動作が完了するように、各処理対象データについての処理時間の上限値を設定し、上限値の範囲内で、各処理対象データに対応するコンテンツを取得するための処理を実行する。
【００３９】
このコンテンツ提供システムによれば、ユーザの関心事の持続期間の終了時点に対応する時刻まで、それに対応するコンテンツを取得するための処理を実行し、それ以後については上記処理を実行しないので、ユーザの関心事に適合しないコンテンツを取得し、ユーザに提供する動作を実行してしまうのを防止することができる。
【００４０】
また、請求項１０記載のコンテンツ提供システムにおいては、上記推定手段を、持続期間推定手段が推定した持続期間が経過する度に、ユーザの関心事を推定する構成にすることができる。
【００４１】
その他、請求項１１記載のコンテンツ提供システムは、請求項１〜請求項１０のいずれかに記載のコンテンツ提供システムにおいて、判定手段と、持続期間記憶手段と、を設けたものである。判定手段は、推定手段がユーザの関心事を推定する度に、その推定結果が示すユーザの関心事が、ユーザの関心事を分類するために予め定められた複数のクラスのうち、いずれのクラスに属するものであるのかを判定する。一方、持続期間記憶手段は、それら複数のクラスについて、各クラス毎に、そのクラスに属するユーザの関心事がユーザ側で持続する期間である持続期間、を記憶する。
【００４２】
また、このコンテンツ提供システムにおける推定手段は、持続期間記憶手段から、判定手段により判定されたクラスに対応する持続期間を読み出し、最後にユーザの関心事を推定した時点から、その持続期間が経過すると、再び、ユーザの関心事を推定する。
【００４３】
従って、請求項１１記載のコンテンツ提供システムによれば、ユーザの関心事の変化に合わせて、適切なタイミングでユーザの関心事を推定し、ユーザの関心事に適したコンテンツを提供することができる。
【００４４】
尚、請求項１〜請求項１１記載のコンテンツ提供システムは、上記各手段としての機能をコンピュータに実現させるためのプログラムを、コンピュータに実行させることによって、実現することができる。
【００４５】
請求項１２記載のプログラムは、ユーザインタフェースを備える情報処理装置において、ユーザからユーザインタフェースに入力されたデータ、及び、ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、情報処理装置から取得するデータ取得手段と、データ取得手段が取得したデータに基づき、ユーザの関心事を推定する推定手段と、データ取得手段がデータを取得する度に、そのデータと、推定手段が出力した最新の推定結果と、を関連付けて記憶するデータ記憶手段と、推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する最新推定結果保持手段と、データ記憶手段が記憶した各データ毎に、最新推定結果保持手段が保持する推定結果が示すユーザの関心事に対する、そのデータに関連付けられた推定結果が示すユーザの関心事の類似度を、評価する評価手段と、データ記憶手段が記憶したデータを、評価手段によって類似度が高いと評価されたデータから、優先的に処理して、その処理対象データに対応するコンテンツを取得し、取得したコンテンツを、ユーザに提供するコンテンツ提供手段としての機能を、コンピュータに実現させるためのプログラムである。このプログラムによれば、請求項１記載のコンテンツ提供システムと同様の効果を得ることができる。
【００４６】
また、請求項１３記載のプログラムは、ユーザインタフェースを備える情報処理装置において、ユーザからユーザインタフェースに入力されたデータ、及び、ユーザインタフェースがユーザに向けて出力したデータの少なくとも一方を、情報処理装置から取得するデータ取得手段と、データ取得手段が取得したデータに基づき、ユーザの関心事を推定する推定手段と、データ取得手段がデータを取得する度に、そのデータと、推定手段が出力した最新の推定結果と、を関連付けて記憶するデータ記憶手段と、推定手段が出力した最新の推定結果を、過去の推定結果に代えて保持する最新推定結果保持手段と、データ記憶手段が記憶した各データ毎に、最新推定結果保持手段が保持する推定結果が示すユーザの関心事に対する、そのデータに関連付けられた推定結果が示すユーザの関心事の類似度を、評価する評価手段と、データ記憶手段が記憶したデータであって、評価手段にて予め定められた一定値以上の類似度が得られたデータを、順次、処理対象に選択し、その処理対象データに対応するコンテンツを取得し、取得したコンテンツを、ユーザに提供するコンテンツ提供手段としての機能を、コンピュータに実現させるためのプログラムである。このプログラムによれば、請求項８記載のコンテンツ提供システムと同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００４７】
以下、本発明の実施例について、図面と共に説明する。図１は、本発明が適用されたコンテンツ提供システム１の構成を表す説明図である。
本実施例のコンテンツ提供システム１は、インターネット等のＷＡＮ（広域ネットワーク）に、各種コンテンツを有するウェブサーバ１０、及び、情報検索サーバ装置２０等が接続され、そのＷＡＮにルータＲＴ等を介して接続されたＬＡＮ（ローカルエリアネットワーク）に、パーソナルコンピュータ（以下、「パソコン」と表現する）３０、ディジタル電話装置５０、及び、情報収集解析装置７０、が接続された構成にされている。
【００４８】
このコンテンツ提供システム１を構成する情報検索サーバ装置２０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等（図示せず）を備え、各種演算処理を行う制御部２１と、ハードディスク装置等で構成される記憶部２３と、ＷＡＮに接続された他の通信装置と通信を行うための通信部２５と、を有し、ウェブサーバ１０が有する各種コンテンツのリンク情報（ＵＲＬ情報）群からなるデータベースと、各種検索プログラムとを記憶部２３に有する。
【００４９】
検索プログラムは、情報検索サーバ装置２０が有するウェブサーバの配下にあり、外部の通信装置からアクセスがあると、制御部２１により実行される。即ち、情報検索サーバ装置２０は、検索プログラムに対するクエリを受信すると、そのクエリが含む検索式に従って、検索式に対応するコンテンツを、検索プログラムを用いて検索し、検索結果として、そのコンテンツのリンク情報（ＵＲＬ情報）を、クエリの送信元に返信する。
【００５０】
一方、パソコン３０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等（図示せず）を備え、各種演算処理を行う制御部３１と、ハードディスク装置等で構成される記憶部３３と、監視部３５と、ＷＡＮやＬＡＮに接続された他の通信装置と通信を行うための通信部３７と、ユーザの操作情報を制御部３１に伝達し、制御部３１の演算結果を、ユーザに伝達するユーザインタフェース４０と、を備える。また、パソコン３０は、ユーザインタフェース４０として、キーボードやポインティングデバイス等からなるユーザが操作可能な入力部４１と、各種情報をユーザに向けて表示する表示部４３と、を備える。
【００５１】
記憶部３３には、ユーザが入力部４１を通じて文書を作成したり、表示部４３を通じて文書を閲覧したりするためのソフトウェア（アプリケーションソフトウェア）がインストールされており、制御部３１は、このソフトウェアを実行することによって、入力部４１から入力されるデータに従い、文書ファイル（データファイル）を作成・更新すると共に、その文書ファイルが有するテキストデータ（文字情報）を、表示部４３に表示させる。また、入力部４１から、文書ファイルの読出指令が入力されると、その文書ファイルが有するテキストデータ（文字情報）を、表示部４３に表示させる。
【００５２】
その他、監視部３５は、制御部３１が実行するソフトウェアを監視し、ソフトウェアが表示部４３に入力するデータであって、表示部４３がユーザに向けて出力するテキストデータ（表示対象データ）を、上記ソフトウェアから収集し、これを情報収集解析装置７０に、通信部３７を通じて送信する。図２は、パソコン３０の監視部３５が実行するパソコン監視処理を表すフローチャートである。
【００５３】
監視部３５は、パソコン監視処理を実行すると、Ｓ１１０にて、予め定められたデータ収集対象のソフトウェアの中に、未収集の表示対象データを保持するソフトウェアが存在するか否かを判断し、未収集の表示対象データを保持するソフトウェアが存在しないと判断すると（Ｓ１１０でＮｏ）、未収集の表示対象データが発生するまで待機し、未収集の表示対象データを保持するソフトウェアが存在すると判断すると（Ｓ１１０でＹｅｓ）、タイマーをリセットする（Ｓ１２０）。
【００５４】
Ｓ１２０での処理を終えると、監視部３５は、未収集の表示対象データを有するソフトウェアが、文書作成モード、及び、文書閲覧モードのいずれのモードにあるか否かを判断し（Ｓ１３０）、文書作成モードであると判断すると（Ｓ１３０でＹｅｓ）、「文書作成」との値を示す装置利用情報を生成し（Ｓ１４０）、文書作成モードではない（即ち、文書閲覧モードである）と判断すると（Ｓ１３０でＮｏ）、「文書閲覧」との値を示す装置利用情報を生成する（Ｓ１４５）。
【００５５】
尚、ここでいう文書作成モードとは、上記ソフトウェアが、ユーザから入力されたデータに基づいて文書ファイル及び表示内容を逐次更新している状態であることを示し、文書閲覧モードとは、ユーザに向けて、ユーザから指定された文書ファイルが有するテキストデータ（文字情報）を表示している状態であることを示す。本実施例では、データ収集対象のソフトウェアが、文書作成モード、及び、文書閲覧モードのいずれかの動作モードを、監視部３５に通知する構成にされていることとする。
【００５６】
Ｓ１４０又はＳ１４５で装置利用情報を生成すると、監視部３５は、上記ソフトウェアが、表示対象データとして表示部４３に向けて出力するテキストデータであって、上記ソフトウェアから未収集のテキストデータを、そのソフトウェアから取得し、これを送信対象ファイルに書き込む（Ｓ１５０）。尚、この際、監視部３５は、単位時間Ｔ１（例えば１分）の間に、制御部３１が、表示部４３に向けて出力する表示対象データであって、未収集のテキストデータを、逐次、送信対象ファイルに書き込むことにより、単位時間Ｔ１分のテキストデータを、送信対象ファイルに格納する。
【００５７】
そして、単位時間Ｔ１が経過すると（Ｓ１６０でＹｅｓ）、現在時刻を記したソース生成時刻情報を生成し（Ｓ１７０）、その後、上記生成した単位時間Ｔ１分のテキストデータを有する送信対象ファイルと、Ｓ１７０で生成したソース生成時刻情報と、「パソコン」との値を示す入力元情報と、Ｓ１４０又はＳ１４５で生成した装置利用情報と、を関連付けて、これらを情報収集解析装置７０に送信する（Ｓ１８０）。
【００５８】
Ｓ１８０での処理を終えると、監視部３５は、制御部３１等から終了指令が入力されているか否かを判断し（Ｓ１９０）、終了指令が入力されていないと判断すると（Ｓ１９０でＮｏ）、Ｓ１１０に移行して、次の未収集データが発生するまで待機し、終了指令が入力されていると判断すると（Ｓ１９０でＹｅｓ）、当該パソコン監視処理を終了する。
【００５９】
一方、ディジタル電話装置５０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等（図示せず）を備え、各種演算処理を行う制御部５１と、設定情報等を記憶する記憶部５３と、監視部５５と、ＷＡＮやＬＡＮに接続された他の通信装置と通信を行うための通信部５７と、ユーザの入力を内部装置（制御部５１や通信部５７）に伝達し、内部装置（制御部５１や通信部５７）の出力を、ユーザに伝達するユーザインタフェース６０と、を備える。
【００６０】
通信部５７は、ＷＡＮを介して外部の電話装置と通信可能な構成（例えばＩＰ（インターネットプロトコル）電話機能を有する構成）にされており、当該ディジタル電話装置５０は、ユーザインタフェース６０として、ユーザから発せられる声を、音声データに変換して集音するマイクロフォン等からなる音入力部６１と、通信部５７が外部の電話装置から受信した音声データを再生するスピーカ等からなる音出力部６３と、を備える。
【００６１】
また、監視部５５は、音入力部６１から制御部５１を介して通信部５７へ入力される音声データ、通信部５７から制御部５１を介して音出力部６３へ入力される音声データを取得し、これらを、単位時間Ｔ２分（例えば１０秒分）の音声データ毎に、テキストデータに変換して、送信対象ファイルを生成し、これを情報収集解析装置７０に送信する構成にされている。図３は、ディジタル電話装置５０の監視部５５が繰返し実行する電話監視処理を表すフローチャートである。
【００６２】
電話監視処理を実行すると、監視部５５は、当該ディジタル電話装置５０と他の電話装置との接続がなされるまで待機し、当該ディジタル電話装置５０と他の電話装置との接続がなされると（Ｓ２１０でＹｅｓ）、その接続が、当該ディジタル電話装置５０の発呼を原因とするものであるか否かを判断し（Ｓ２２０）、ディジタル電話装置５０の発呼を原因とするものであると判断すると、「発呼」との値を示す装置利用情報を生成し（Ｓ２３０）、上記接続が、他の電話装置の発呼（ディジタル電話装置５０の着呼）を原因とするものであると判断すると、「着呼」との値を示す装置利用情報を生成する（Ｓ２３５）。その後、Ｓ２４０に移行する。
【００６３】
Ｓ２４０に移行すると、監視部５５は、単位時間Ｔ２分の音声データを取得し、取得した音声データをテキストデータに変換して、これを格納した送信対象ファイルを生成する。更に、現在時刻を記したソース生成時刻情報を生成し（Ｓ２５０）、その後、上記生成した送信対象ファイルと、Ｓ２５０で生成したソース生成時刻情報と、「ディジタル電話装置」との値を示す入力元情報と、Ｓ２３０又はＳ２３５で生成した装置利用情報と、を関連付けて、これらを、情報収集解析装置７０に送信する（Ｓ２６０）。
【００６４】
Ｓ２６０での処理を終えると、監視部５５は、上記接続が断たれたか否かを判断し、上記接続が断たれていないと判断すると（Ｓ２７０でＮｏ）、Ｓ２４０に移行して、次の時間Ｔ２分の音声データをテキストデータに変換し、これを情報収集解析装置７０に送信する。また、上記接続が断たれたと判断すると（Ｓ２７０でＹｅｓ）、当該電話監視処理を一旦終了する。そして、次の接続がなされるまで待機する（Ｓ２１０）。
【００６５】
その他、本実施例のコンテンツ提供システム１を構成する情報収集解析装置７０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等（図示せず）を備え、各種演算処理を行う制御部７１と、ハードディスク装置等で構成される記憶部７３と、ＷＡＮやＬＡＮに接続された他の通信装置と通信を行うための通信部７５と、ウェブサーバ１０等から取得したコンテンツをユーザに向けて表示するための表示部７７と、コンテンツが、音声データを含む場合に、その音声データを再生して出力する音出力部７９と、を備える。
【００６６】
この情報収集解析装置７０は、記憶部７３に、制御部７１が実行する各種プログラムや、そのプログラム実行時に用いられる各種テーブルを備え、各種プログラムを実行することによって、情報検索サーバ装置２０にクエリを送信し、ＷＡＮ上のウェブサーバ１０が有するコンテンツの中から、クエリに設定した検索キーに対応するコンテンツを、情報検索サーバ装置２０に検索させる。また、その検索結果に基づいてウェブサーバ１０にアクセスし、ウェブサーバ１０が提供するコンテンツを取得して、これを表示・再生する。
【００６７】
図４は、表示部７７が表示するコンテンツ提供画面の構成を表す説明図である。コンテンツ提供画面は、テキスト及び画像を表示するための領域であって、新しい情報を、スクロール表示する構成にされたテキスト・画像領域と、動画ファイルの再生結果を表示するための動画再生領域と、用語検索結果を表示するための用語表示領域と、を備える。
【００６８】
情報収集解析装置７０は、パソコン３０やディジタル電話装置５０から受信したファイル（上記送信対象ファイル）に含まれるテキストデータに基づき、クエリを発行し、このコンテンツ提供画面に表示すべきコンテンツを、ウェブサーバ１０から取得する。そして、これらを、表示・音出力の形態でユーザに提供する。
【００６９】
以下には、このコンテンツ提供サービスを実現するために、制御部７１が実行する各種処理と、その処理実行時に用いられるテーブルの構成について説明する。図５は、制御部７１が繰返し実行するソース情報登録処理を表すフローチャートであり、図６は、記憶部７３が記憶するソース管理テーブルの構成を表す説明図である。
【００７０】
ソース情報登録処理を実行すると、制御部７１は、パソコン３０から、Ｓ１８０で送信されるデータを受信するか、ディジタル電話装置５０から、Ｓ２６０で送信されるデータを受信するまで待機し（Ｓ３１０）、受信すると（Ｓ３１０でＹｅｓ）、その受信データに含まれるファイル（上記送信対象ファイル）を、記憶部７３に保存する（Ｓ３２０）。更に、このファイルと共に受信したソース生成時刻情報、入力元情報、及び、装置利用情報と、上記ファイルの名称と、からなるソース情報を生成し、これをソース管理テーブルに登録する（Ｓ３３０）。その後、当該ソース情報登録処理を一旦終了し、次のデータを受信するまで待機する（Ｓ３１０）。
【００７１】
図６に示すように、ソース管理テーブルは、ソース生成時刻情報、入力元情報、装置利用情報、及び、ファイル名称、からなるソース情報を、複数記憶可能な構成にされており、制御部７１は、このソース管理テーブルに登録されたソース情報に基づき、受信ファイル（上記送信対象ファイル）を、記憶部７３から読み出し、受信ファイルの内容を解析する。図７は、制御部７１が、ソース情報登録処理と並列に実行するキーワード抽出処理を表すフローチャートである。
【００７２】
キーワード抽出処理を実行すると、制御部７１は、ＲＡＭが記憶する更新フラグをオフに設定し（Ｓ４１０）、その後、Ｓ４３０の処理について、未処理のソース情報が、ソース管理テーブルに存在するか否かを判断する（Ｓ４２０）。ここで、未処理のソース情報が、ソース管理テーブルに存在しないと判断すると（Ｓ４２０でＮｏ）、未処理のソース情報が、ソース情報登録処理によって生成されるまで待機し、未処理のソース情報がソース管理テーブルに存在すると判断すると（Ｓ４２０でＹｅｓ）、未処理のソース情報に関連付けられたファイルのテキストデータを解析（形態素解析）して、テキストデータ内の名詞を抽出し、更に、予め定められた特定名詞以外の名詞をキーワードとして抽出する（Ｓ４３０）。尚、本実施例では、コンテンツの検索時にキーワードとして機能しない一般的な名詞が、特定名詞として、記憶部７３に記憶されているものとする。
【００７３】
Ｓ４３０での処理を終えると、制御部７１は、Ｓ４４０に移行し、ディジタル電話装置５０が、通話中であるか否かを判断する。具体的には、例えば、「発呼」「着呼」との装置利用情報を有するソース情報がソース管理テーブルに登録されてから、予め定められた時間（単位時間Ｔ２に、処理の遅延時間を考慮した補正量αを加算した時間）が経過するまでの期間、ディジタル電話装置５０が通話中であると判断し、それ以外の期間には、ディジタル電話装置５０が通話中ではないと判断する。
【００７４】
そして、通話中であると判断すると（Ｓ４４０でＹｅｓ）、ユーザの関心事を表すパラメータであって、ディジタル電話装置５０の通話中に更新される電話カレント関心ベクトルＶｐを、後述する類似度評価の際に参照するカレント関心ベクトルＶｃとして、設定する（Ｓ４５１）。具体的には、カレント関心ベクトルＶｃのアドレスポインタに、電話カレント関心ベクトルのアドレスを設定する。
【００７５】
尚、本実施例では、ユーザの関心事をベクトル表現し、これを用いて、ユーザに提供するコンテンツの検索・読出処理の優先度を決定する。詳細は、必要に応じて適宜に説明するが、本実施例でいう「関心ベクトル」とは、ユーザの関心事を数値化したベクトルのことである。具体的に、関心ベクトルＶは、予め定められた関心の種類毎に、対応する要素を持つ１行ｎ列のベクトルで表現される。
【００７６】
Ｖ＝（ｖ１，ｖ２，…ｖｎ）
Ｓ４５１での処理を終えると、制御部７１は、Ｓ４５３に移行して、電話解析処理を実行する。図８は、電話解析処理を表すフローチャートである。
【００７７】
電話解析処理を実行すると、制御部７１は、電話カレント関心ベクトルの有効期限を示す関心終了時刻が到来したか否かを判断し（Ｓ５１０）、関心終了時刻が到来している場合には、Ｙｅｓと判断して、Ｓ５２０に移行する。尚、関心終了時刻は、当該情報収集解析装置７０の電源投入時にリセットされ、その後、最初にＳ５５０を実行するまでは、リセットされたままの状態にされる。Ｓ５１０では、関心終了時刻がリセットされた状態のままである場合、例外的に、関心終了時刻が到来しているとして、Ｙｅｓと判断する。
【００７８】
Ｓ５２０に移行すると、制御部７１は、関心ベクトル算出処理を実行する。図９は、制御部７１が実行する関心ベクトル算出処理を表すフローチャートである。
関心ベクトル算出処理を実行すると、制御部７１は、まず初めに、関心ベクトルＶを、ゼロにリセットし（Ｓ６１０）、Ｓ４３０で抽出したキーワード群の中から、Ｓ６３０以降の処理について未処理のキーワードを、一つ処理対象に選択し（Ｓ６２０）、選択した処理対象のキーワードを、記憶部７３が記憶する関心事推定テーブル内で検索する（Ｓ６３０）。尚、図１０は、関心事推定テーブルの構成を表す説明図である。
【００７９】
関心事推定テーブルは、予め定められた関心の種類毎に、その関心の種類に属するキーワードと、その関心が持続すると推定される時間（持続時間）を表す情報（持続時間推定情報）と、関心ベクトルの算出時に行う重み付けについての定義情報（重み付け定義情報）と、を有する。
【００８０】
制御部７１は、処理対象のキーワードが、関心事推定テーブルに登録されているキーワードの中に存在する場合、Ｓ６４０にてＹｅｓと判断し、関心事推定テーブルに基づいて、処理対象のキーワードが属する関心の種類を判別する（Ｓ６５０）。そして、処理対象のキーワードが属する関心の種類ｉ（ｉ＝１，２，…，ｎ）に対応する関心ベクトルＶの要素ｖｉの値を、１加算する（Ｓ６６０）。その後、Ｓ６７０に移行する。一方、処理対象のキーワードが、関心事推定テーブルに登録されたキーワードではない場合、制御部７１は、Ｓ６４０でＮｏ（検索対象なし）と判断し、Ｓ６７０に移行する。
【００８１】
Ｓ６７０に移行すると、制御部７１は、Ｓ６３０以降の処理について未処理のキーワードが、Ｓ４３０で抽出したキーワード群の中に存在するか否かを判断し、未処理のキーワードが存在すると判断すると（Ｓ６７０でＹｅｓ）、Ｓ６２０に移行し、未処理のキーワードの中から、一つのキーワードを処理対象に選択し、Ｓ６３０以降の処理を実行する。
【００８２】
尚、本実施例では、Ｓ４３０で抽出したキーワード群の中に、同一のキーワードが複数ある場合、一のキーワードについてＳ６３０以降の処理を実行した場合であっても、他のキーワード（同一のキーワード）を処理済とせず、各キーワード（同一のキーワードの夫々）について、Ｓ６３０以降の処理を実行する。
【００８３】
そして、未処理のキーワードが存在しないと判断すると（Ｓ６７０でＮｏ）、関心事推定テーブルの重み付け定義情報に従い、関心ベクトルＶの各要素ｖｉの値を、重み付けする（Ｓ６８０）。
【００８４】
関心事推定テーブルの重み付け定義情報は、二種類の定義情報に分類され、第一種の重み付け定義情報は、装置利用情報の値と、重み付け係数Ｗとの組合せからなる。これに対し、第二種の重み付け定義情報は、時刻情報と、重み付け係数Ｗとの組合せからなる。
【００８５】
制御部７１は、第一種の重み付け定義情報が設定された関心の種類に対応する関心ベクトルの要素ｖｉに対し、Ｓ４３０でキーワードを抽出したファイルに対応するソース情報の装置利用情報が示す値と、重み付け定義情報が示す装置利用情報の値とが一致する場合にのみ、重み付け定義情報に従って、重み付けを行う。
【００８６】
即ち、Ｓ６８０において、制御部７１は、Ｓ４３０でキーワードを抽出したファイルに対応するソース情報の装置利用情報が示す値と一致する値を示す第一種の重み付け定義情報が設定された関心の種類に対応する関心ベクトルの要素ｖｉを、重み付けの対象とし、重み付け対象の要素ｖｉを、重み付け係数Ｗ倍にする。
【００８７】
ｖｉ←ｖｉ×Ｗ
また、制御部７１は、第二種の重み付け定義情報が設定された関心の種類に対応する関心ベクトルの要素ｖｉに対し、現在時刻が、その重み付け定義情報の時刻情報が示す範囲内にある場合にのみ、重み付け定義情報に従って、重み付けを行う。
【００８８】
即ち、Ｓ６８０において、制御部７１は、時刻情報が示す範囲内に現在時刻がある第二種の重み付け定義情報が設定された関心の種類に対応する関心ベクトルの要素ｖｉを、重み付けの対象とし、重み付け対象の要素ｖｉを、重み付け係数Ｗ倍にする。
【００８９】
Ｓ６８０にて、各要素についての重み付けが終了すると、制御部７１は、関心ベクトルＶの算出を完了して、これを返値として出力し、当該関心ベクトル算出処理を終了する。
Ｓ５２０で、上述の関心ベクトル算出処理を終了すると、制御部７１は、Ｓ５３０に移行し、関心ベクトル算出処理にて算出された関心ベクトルの値を、電話カレント関心ベクトルＶｐに設定する。また、Ｓ５３０での処理を終えると、電話カレント関心ベクトルＶｐにおいて、最大値をとる要素（即ち、他の要素よりも値の大きい要素）に対応する関心の種類を判別する（Ｓ５４０）。
【００９０】
Ｓ５４０での処理を終えると、制御部７１は、判別した関心の種類に対応する持続時間推定情報が示す値を、現在時刻に加算し、その値（加算結果）を、関心終了時刻に設定する（Ｓ５５０）。尚、電話カレント関心ベクトルＶｐにおいて、最大値をとる要素が複数ある場合には、例えば、最大値をとる各要素についての持続時間推定情報の中で、最大値を示す持続時間推定情報の値を、現在時刻に加算し、その値を関心終了時刻に設定する。その後、Ｓ５６０に移行する。
【００９１】
一方、制御部７１は、Ｓ５１０で、関心終了時刻が到来していないと判断すると、Ｓ５２５に移行する。Ｓ５２５に移行すると、制御部７１は、電話カレント関心ベクトルＶｐの値を、Ｓ５８０で設定する関心ベクトルＶとして読み出し、その後、Ｓ５６０に移行する。
【００９２】
Ｓ５６０に移行すると、制御部７１は、記憶部７３が記憶する検索情報管理テーブルにおいて、個別検索情報の新規書込領域を確保し（Ｓ５６０）、その領域に、Ｓ４３０でキーワードを抽出したソース情報が有するソース生成時刻情報を書込み（Ｓ５７０）、更に、Ｓ５２０で算出した関心ベクトル、又は、Ｓ５２５で読み出した関心ベクトルを書込み（Ｓ５８０）、更に、Ｓ４３０で抽出したキーワードを検索キーとして書込み（Ｓ５９０）、その検索キーの数を書き込む（Ｓ５９５）。
【００９３】
図１１は、検索情報管理テーブルの構成を表す説明図である。図１１に示すように、各個別検索情報は、ソース生成時刻情報と、関心ベクトルの値と、検索キーの情報と、検索キーの数の情報と、類似度評価処理（図１５参照）で算出される評価値と、からなる。
【００９４】
即ち、制御部７１は、Ｓ５６０〜Ｓ５９５の処理を実行することによって、評価値の情報を、空情報とした状態で、検索情報管理テーブルに、Ｓ４３０でキーワードを抽出したソース情報に対応する個別検索情報を登録する。そして、Ｓ５９５の処理を終えると、当該電話解析処理を終了する。また、Ｓ４５３で、上述の電話解析処理を終了すると、Ｓ４７０に移行する。
【００９５】
一方、Ｓ４４０で、ディジタル電話装置５０が通話中ではないと判断すると、制御部７１は、着信フラグをオフに設定し（Ｓ４６１）、ディジタル電話装置５０の非通話中に更新される非電話カレント関心ベクトルＶｗを、カレント関心ベクトルＶｃに、設定する（Ｓ４６３）。具体的には、カレント関心ベクトルＶｃのアドレスポインタに、非電話カレント関心ベクトルのアドレスを設定する。また、Ｓ４６３での処理を終えると、Ｓ４６５に移行し、非電話解析処理を実行する。図１２は、制御部７１が実行する非電話解析処理を表すフローチャートである。
【００９６】
非電話解析処理を実行すると、制御部７１は、関心ベクトル算出処理（図９参照）を実行し（Ｓ７１０）、Ｓ７１０における関心ベクトルの算出結果を、非電話カレント関心ベクトルＶｗに設定し（Ｓ７３０）、Ｓ７４０に移行する。
【００９７】
Ｓ７４０に移行すると、制御部７１は、記憶部７３が記憶する検索情報管理テーブルに、個別検索情報の新規書込領域を確保し、その領域に、Ｓ４３０でキーワードを抽出したソース情報が有するソース生成時刻情報を書込み（Ｓ７５０）、更に、Ｓ７１０で算出した関心ベクトルＶを書込み（Ｓ７６０）、更に、Ｓ４３０で抽出したキーワードを検索キーとして書込み（Ｓ７７０）、その検索キーの数を書き込む（Ｓ７８０）。
【００９８】
即ち、制御部７１は、Ｓ７４０〜Ｓ７８０の処理を実行することによって、評価値の情報を、空情報とした状態で、検索情報管理テーブルに、Ｓ４３０でキーワードを抽出したソース情報に対応する個別検索情報を登録する。そして、Ｓ７８０の処理を終えると、当該非電話解析処理を終了する。また、Ｓ４６５で、上述の非電話解析処理を終了すると、Ｓ４６７にて、関心終了時刻をリセットした後、Ｓ４７０に移行する。
【００９９】
Ｓ４７０に移行すると、制御部７１は、カレント関心ベクトルＶｃが、所定量変化したか否かを判断する。具体的には、例えば、カレント関心ベクトルＶｃの値が、前回のＳ４７０実行時に、設定されていたカレント関心ベクトルＶｃの値と異なる場合、カレント関心ベクトルＶｃが、所定量変化したと判断し（Ｓ４７０でＹｅｓ）、カレント関心ベクトルＶｃの算出値が、前回まで設定されていたカレント関心ベクトルＶｃの値と一致する場合には、所定量変化していないと判断する（Ｓ４７０でＮｏ）。尚、比較対象とする前回の値がない場合には（情報収集解析装置７０の起動後、初回のＳ４７０では）、無条件にＳ４７０でＹｅｓと判断する。
【０１００】
そして、Ｓ４７０でＮｏと判断すると、Ｓ４２０に移行し、未処理のソース情報が生成されるのを待って、その未処理のソース情報について、Ｓ４３０以降の処理を実行する。これに対し、Ｓ４７０でＹｅｓと判断すると、ＲＡＭが記憶する上記更新フラグをオンに設定し（Ｓ４７５）、その後、ディジタル電話装置５０の動作モードが、「着呼通話モード」であるか否かを判断する（Ｓ４８０）。
【０１０１】
具体的には、例えば、装置利用情報が「着呼」を示すソース情報が、ソース管理テーブルに登録されてから、予め定められた時間（単位時間Ｔ２に、処理の遅延時間を考慮した補正量αを加算した時間）が経過するまでの期間、ディジタル電話装置５０が「着呼通話モード」であると判断し（Ｓ４８０でＹｅｓ）、それ以外の期間には、ディジタル電話装置５０が「着呼通話モード」ではないと判断する（Ｓ４８０でＮｏ）。
【０１０２】
尚、「着呼通話モード」とは、ディジタル電話装置５０が、他の電話装置から発せられた呼を受けて（即ち、着呼により）、他の電話装置との通話状態に遷移し、通話状態で動作している状態のことを示す。ディジタル電話装置５０は、この他に、動作モードとして、非通話状態で動作している状態である「非通話モード」、他の電話装置に対する発呼により、他の電話装置との通話状態に遷移して通話状態で動作している状態である「発呼通話モード」を、とる。
【０１０３】
制御部７１は、Ｓ４８０でＹｅｓと判断すると、ＲＡＭが記憶する上記着信フラグを、オンに設定し（Ｓ４８１）、Ｓ４８０でＮｏと判断すると、着信フラグを、オフに設定する（Ｓ４８５）。
【０１０４】
更に、これらの処理（Ｓ４８１又はＳ４８５）を終えると、Ｓ４９０に移行して、終了指令が入力されているか否かを判断し、終了指令が入力されていないと判断すると（Ｓ４９０でＮｏ）、Ｓ４２０に移行して、未処理のソース情報が生成されるまで待機し、終了指令が入力されていると判断すると（Ｓ４９０でＹｅｓ）、当該キーワード抽出処理を終了する。
【０１０５】
次に、制御部７１が、キーワード抽出処理と並列に実行する検索制御処理について説明する。図１３及び図１４は、制御部７１が実行する検索制御処理を表すフローチャートである。
【０１０６】
検索制御処理を実行すると、まず、検索プロセス数をゼロにリセットし（Ｓ８１０）、その後、ＲＡＭが記憶する上記更新フラグがオンに設定されているか否かを判断する（Ｓ８２０）。そして、更新フラグがオンに設定されていると判断すると、Ｓ８２１に移行して、検索情報管理テーブルに登録されている全ての個別検索情報が有する評価値をリセットして、評価値が設定されていない状態にする。その後、Ｓ８２５に移行して、類似度評価処理を実行する。図１５は、制御部７１が実行する類似度評価処理を表すフローチャートである。
【０１０７】
類似度評価処理を実行すると、制御部７１は、まず、記憶部７３が記憶する検索情報管理テーブルの中に、未処理の個別検索情報、即ち、評価値が設定されていない個別検索情報が存在するか否かを判断し（Ｓ１０１０）、未処理の個別検索情報が存在すると判断すると（Ｓ１０１０でＹｅｓ）、Ｓ１０２０に移行し、未処理の個別検索情報の一つを、処理対象に選択する。
【０１０８】
そして、処理対象に選択した個別検索情報が有する関心ベクトルＶを、関心ベクトルＶのノルム||Ｖ||で除算することにより、個別検索情報が有する関心ベクトルＶについての正規ベクトルＥを算出する（Ｓ１０３０）。
【０１０９】
Ｅ＝Ｖ／||Ｖ||
また、カレント関心ベクトルＶｃを、カレント関心ベクトルＶのノルム||Ｖｃ||で除算することにより、カレント関心ベクトルＶｃについての正規ベクトルＥｃを算出する（Ｓ１０４０）。
【０１１０】
Ｅｃ＝Ｖｃ／||Ｖｃ||
その後、制御部７１は、個別検索情報が有する関心ベクトルＶについての正規ベクトルＥと、カレント関心ベクトルＶｃについての正規ベクトルＥｃとの内積Ｒを算出する（Ｓ１０５０）。
【０１１１】
Ｒ＝Ｅ・Ｅｃ
そして、この内積Ｒを、カレント関心ベクトルＶｃに対する上記処理対象の個別検索情報が有する関心ベクトルＶの類似度を表す値として、検索情報管理テーブルにおける上記処理対象の個別検索情報の評価値の書込領域に書き込み（Ｓ１０６０）、これによって、検索情報管理テーブルにおける上記処理対象の個別検索情報を更新する。
【０１１２】
Ｓ１０６０での処理を終えると、制御部７１は、Ｓ１０１０に移行して、未処理の個別検索情報が、検索情報管理テーブルに存在するか否かを判断し、未処理の個別検索情報が存在する場合には、その個別検索情報を処理対象として、Ｓ１０２０〜Ｓ１０６０の処理を実行し、未処理の個別検索情報が存在しない場合には、Ｓ１０１０でＮｏと判断して、当該類似度評価処理を終了する。
【０１１３】
また、Ｓ８２５で類似度評価処理を終了すると、Ｓ８２７にて更新フラグをオフに設定し、その後、Ｓ８４０に移行する。一方、Ｓ８２０にて、更新フラグがオンに設定されていないと判断すると、制御部７１は、Ｓ８３０に移行して、類似度評価処理を実行し、その後、Ｓ８４０に移行する。
【０１１４】
また、Ｓ８４０に移行すると、Ｓ８４５以降の処理について、未処理の個別検索情報が、検索情報管理テーブル内に存在するか否かを判断し、未処理の個別検索情報が存在すると判断すると（Ｓ８４０でＹｅｓ）、Ｓ８４５に移行し、未処理の個別検索情報が存在しないと判断すると（Ｓ８４０でＮｏ）、Ｓ８２０に移行する。
【０１１５】
Ｓ８４５に移行すると、制御部７１は、未処理の個別検索情報であって、評価値が最大の個別検索情報を、処理対象に選択する。尚、未処理の個別検索情報であって、評価値が最大の個別検索情報が複数ある場合には、例えば、ソース生成時刻が最新の個別検索情報を、処理対象に選択する。また、Ｓ８４５での処理を終えると、処理対象に選択した個別検索情報が示す評価値が、予め定められた下限値未満であるか否かを判断する（Ｓ８５０）。そして、下限値未満であると判断すると（Ｓ８５０でＹｅｓ）、Ｓ８２０に移行する。
【０１１６】
一方、処理対象に選択した個別検索情報が示す評価値が、予め定められた下限値以上であると判断すると（Ｓ８５０でＮｏ）、検索プロセス数が、予め定められた上限値未満であるか否かを判断する（Ｓ８６０）。そして、検索プロセス数が、予め定められた上限値未満であると判断すると（Ｓ８６０でＹｅｓ）、Ｓ９００に移行し、検索プロセス数が、予め定められた上限値未満ではないと判断すると（Ｓ８６０でＮｏ）、Ｓ８４５で処理対象に選択した個別検索情報が示す評価値よりも、評価値の低い個別検索情報に対応する検索プロセス（後述する検索処理（図１８参照）を実現するプロセス）が、実行中であるか否かを判断する（Ｓ８７０）。尚、この判断は、記憶部７３が記憶する検索プロセス管理テーブルに基づいて行う。
【０１１７】
図１６は、記憶部７３が記憶する検索プロセス管理テーブルの構成を表す説明図である。図１６に示すように、検索プロセス管理テーブルは、実行中のプロセス毎に、プロセスＩＤと、そのプロセスの優先度を示す値と、そのプロセスに割り当てられたメモリの上限値と、検索結果の採用件数を表す情報と、そのプロセスに対応する個別検索情報の記憶先を表すアドレス情報と、からなるプロセス管理情報を有する。
【０１１８】
即ち、Ｓ８７０において、制御部７１は、検索プロセス管理テーブルに登録されているプロセスの中に、プロセス管理情報に関連付けられた個別検索情報が示す評価値が、Ｓ８４５で処理対象に選択した個別検索情報が示す評価値よりも低いプロセスが存在するか否かを判断する。
【０１１９】
そして、処理対象に選択した個別検索情報が示す評価値よりも、評価値が低いプロセスが存在しないと判断すると（Ｓ８７０でＮｏ）、Ｓ８２０に移行し、処理対象に選択した個別検索情報が示す評価値よりも、評価値が低いプロセスが存在すると判断すると（Ｓ８７０でＹｅｓ）、Ｓ８７５に移行して、ＲＡＭが記憶する上記着信フラグがオンに設定されているか否かを判断する。
【０１２０】
着信フラグがオンに設定されていると判断すると（Ｓ８７５でＹｅｓ）、制御部７１は、Ｓ９００に移行する。一方、着信フラグがオフに設定されていると判断すると（Ｓ８７５でＮｏ）、検索プロセス管理テーブルに登録されているプロセスの中で、プロセス管理情報に関連付けられた個別検索情報が示す評価値が最低のプロセスを、停止対象に選択する（Ｓ８８０）。その後、停止対象のプロセスに対して、停止指令を入力する（Ｓ８９０）。これにより、停止対象のプロセスは、停止する（詳細後述）。
【０１２１】
また、Ｓ８９０での処理を終えると、Ｓ８４５で処理対象に選択した個別検索情報に基づく検索プロセスの優先度を算出する（Ｓ９００）。即ち、本実施例では、情報収集解析装置７０が、タイムシェアリングによって複数のプロセスを並列実行するマルチタスクＯＳ（オペレーティングシステム）にて運営され、そのＯＳが備えるスケジューラが、優先度が高いプロセスに対して、優先的に（高い頻度で）実行権を与えるように、スケジューリングする構成にされていることを前提としており、ここでは、スケジューラが、各プロセスのスケジューリングをする際に、参照する優先度を算出する。
【０１２２】
具体的には、例えば、処理対象の個別検索情報が示す評価値を用い、下式に従って、評価値に比例する優先度を算出する。
優先度＝評価値×優先度の最大値
本実施例では、正規ベクトルの内積を評価値としているので、評価値は、ゼロ以上１以下である。従って、上式に従って、優先度を算出すると、評価値が１の時、最大の優先度が算出され、評価値が０の時、最小の優先度（ゼロ）が算出される。
【０１２３】
Ｓ９００での処理を終えると、制御部７１は、上記検索プロセスに割り当てるメモリ（ＲＡＭ）の上限値を算出し（Ｓ９１０）、更に、検索結果の採用件数を、下式に従って、算出する（Ｓ９２０）。
【０１２４】
メモリの上限値＝β×評価値
採用件数＝γ×評価値
但し、メモリの上限値及び採用件数は、１以上の整数値である。定数γとしては、例えば、値５を設定することができ、β×評価値の小数点以下切り上げ値を、メモリの上限値に設定し、γ×評価値の小数点以下切り上げ値を、採用件数に設定する。
【０１２５】
Ｓ９２０での処理を終えると、制御部７１は、関心終了時刻が設定されているか否かを判断する（Ｓ９３０）。そして、関心終了時刻が設定されていない（関心終了時刻がリセットされた状態である）と判断すると（Ｓ９３０でＮｏ）、検索プロセスに対して許可する処理時間の最大値である処理制限時間を、「無制限」に設定する（Ｓ９３１）。その後、Ｓ９４０に移行する。
【０１２６】
一方、関心終了時刻が設定されていると判断すると（Ｓ９３０でＹｅｓ）、上記処理制限時間に、関心終了時刻との現在時刻との差を設定する（Ｓ９３５）。その後、Ｓ９４０に移行する。
【０１２７】
Ｓ９４０に移行すると、制御部７１は、検索プログラム管理テーブルから、クエリ未発行の検索プログラム情報を一つ選択し、Ｓ９００で算出した優先度、Ｓ９１０で算出したメモリ上限値、Ｓ９２０で算出した採用件数、及び、Ｓ９３１又はＳ９３５で設定した処理制限時間を指定し、Ｓ８４５で選択した個別検索情報を処理対象に指定して、上記選択した検索プログラム情報についての検索プロセスを起動する（Ｓ９５０）。
【０１２８】
尚、図１７は、記憶部７３が記憶する検索プログラム管理テーブルの構成を表す説明図である。図１７に示すように、検索プログラム管理テーブルは、実行対象の検索プログラム毎に、検索プログラムを有する情報検索サーバ装置２０のアドレス情報（ＵＲＬ情報）と、クエリの生成方法（検索式の生成方法を含む）を示すクエリ生成情報と、検索プログラムが検索するコンテンツの種類を表すカテゴリ情報と、からなる検索プログラム情報を有する。
【０１２９】
Ｓ９４０において、制御部７１は、この検索プログラム管理テーブルが有する検索プログラム情報の内、クエリをアドレス情報に従うＵＲＬ先に送信していない検索プログラム情報（クエリ未発行の検索プログラム情報）を、処理対象に一つ選択し、Ｓ９５０において、その検索プログラム情報を指定し、検索プロセスを起動する。尚、起動された検索プロセスは、スケジューラにより管理されて、他のプロセスと並列に実行され、指定された検索プログラム情報が示すクエリ生成情報に基づいてクエリを生成し、これを、検索プログラム情報のアドレス情報が示すＵＲＬ先の情報検索サーバ装置２０に送信する。
【０１３０】
Ｓ９５０での処理を終えると、制御部７１は、起動した検索プロセスについてのプロセス管理情報を生成し、これを、記憶部７３が記憶する検索プロセス管理テーブルに登録する（Ｓ９６０）。即ち、起動した検索プロセスのプロセスＩＤと、Ｓ９００で算出した優先度と、Ｓ９１０で算出したメモリ上限値と、Ｓ９２０で算出した採用件数と、Ｓ８４５で処理対象に選択した個別検索情報の記憶先を表すアドレス情報と、からなるプロセス管理情報を生成し、これを、検索プロセス管理テーブルに登録する。
【０１３１】
その後、制御部７１は、検索プロセス数を１加算する（Ｓ９７０）。また、Ｓ９７０での処理を終えると、クエリ未発行の検索プログラム情報が、検索プログラム管理テーブルに存在するか否かを判断し（Ｓ９８０）、クエリ未発行の検索プログラム情報が存在すると判断すると（Ｓ９８０でＹｅｓ）、Ｓ９４０に移行し、クエリ未発行の検索プログラム情報の中から、処理対象の検索プログラム情報を一つ選択し、Ｓ９５０以降の処理を実行する。
【０１３２】
その他、クエリ未発行の検索プログラム情報が、検索プログラム管理テーブルに存在しないと判断すると（Ｓ９８０でＮｏ）、終了指令が入力されているか否かを判断し（Ｓ９９０）、終了指令が入力されていないと判断すると（Ｓ９９０でＮｏ）、Ｓ８４０に移行する。一方、終了指令が入力されていると判断すると（Ｓ９９０でＹｅｓ）、当該検索制御処理を終了する。
【０１３３】
次に、制御部７１が並列に実行する各検索プロセスにて、実現される検索処理について説明する。図１８は、検索処理を表すフローチャートである。
検索処理を実行すると、制御部７１は、まず、タイマーをリセットする（Ｓ１１１０）。その後、検索プログラム管理テーブルから、指定された検索プログラム情報を読み出し（Ｓ１１２０）、読み出した検索プログラム情報が有するクエリ生成情報と、指定された処理対象の個別検索情報が有する検索キーの一群と、に基づいて、その個別検索情報が有する検索キーを、検索キーに設定した検索式を生成し、これを格納した情報検索サーバ装置２０への問合せ信号であるクエリを生成する（Ｓ１１３０）。
【０１３４】
そして、生成したクエリを、検索プログラム情報が示すＵＲＬ先に送信して、情報検索サーバ装置２０が有する上記ＵＲＬ先の検索プログラムを、情報検索サーバ装置２０に実行させる（Ｓ１１４０）。
【０１３５】
この際、情報検索サーバ装置２０は、受信したクエリが含む検索式に従って、上記個別検索情報が有する検索キーに対応するコンテンツを検索し、検索結果として、そのコンテンツのリンク情報（ＵＲＬ情報）を格納した応答信号を、情報収集解析装置７０に返信する。また、情報収集解析装置７０から、実行中の検索プログラムについての停止指令が入力されると、対応する検索プログラムを終了し、検索結果ではなく、検索を中断した旨の応答信号を、情報収集解析装置７０に送信する。
【０１３６】
制御部７１は、Ｓ１１４０にてクエリを送信した後、タイマーの値に基づき処理制限時間が経過したか否かを判断し（Ｓ１１５０）、処理制限時間が経過していないと判断すると（Ｓ１１５０でＮｏ）、Ｓ１１６０に移行し、処理制限時間が経過したと判断すると（Ｓ１１５０でＹｅｓ）、Ｓ１１４０で情報検索サーバ装置２０に実行を開始させた検索プログラムについての停止指令を、検索プログラムに対応するＵＲＬ先に送信する（Ｓ１１５５）。その後、Ｓ１１６０に移行する。
【０１３７】
Ｓ１１６０に移行すると、制御部７１は、応答信号を受信したか否かを判断し、応答信号を受信していないと判断すると（Ｓ１１６０でＮｏ）、Ｓ８９０の処理により、当該検索処理を実現するプロセスに対して停止指令が入力されているか否かを判断し（Ｓ１１６１）、停止指令が入力されていると判断すると（Ｓ１１６１でＹｅｓ）、Ｓ１１４０で情報検索サーバ装置２０に実行を開始させた検索プログラムについての停止指令を、検索プログラムに対応するＵＲＬ先に送信した後（Ｓ１１６５）、Ｓ１１５０に移行する。一方、当該プロセスに対して停止指令が入力されていないと判断すると（Ｓ１１６１でＮｏ）、Ｓ１１６５の処理を実行することなく、Ｓ１１５０に移行する。
【０１３８】
また、Ｓ１１６０で、応答信号を受信したと判断すると、Ｓ１１７０に移行して、応答信号が検索結果であるか、それとも、検索を中断した旨の応答信号であるかを判断し、応答信号が検索結果ではない（検索を中断した旨の応答信号である）と判断すると（Ｓ１１７０でＮｏ）、検索プロセス数を１減算して（Ｓ１１９０）、当該検索処理（検索プロセス）を終了する。
【０１３９】
一方、応答信号が検索結果であると判断すると（Ｓ１１７０でＹｅｓ）、制御部７１は、指定された検索プログラム情報のカテゴリ情報が「用語検索」であるか否かを判断し（Ｓ１１８０）、「用語検索」ではなく「一般検索」であると判断すると（Ｓ１１８０でＮｏ）、応答信号として受信したリンク情報の一群からなる検索結果から、指定された採用件数分のリンク情報（ＵＲＬ情報）を抽出し、各リンク情報毎に、対応するリンク情報を記した個別結果情報を生成し（Ｓ１１８１）、生成したリンク情報毎の個別結果情報を、記憶部７３が記憶する検索結果管理テーブルに登録する（Ｓ１１８３）。
【０１４０】
図１９は、記憶部７３が記憶する検索結果管理テーブルの構成を表す説明図である。検索結果管理テーブルは、一つ又は複数の個別結果情報からなる。
制御部７１は、Ｓ１１８１にて、抽出した各リンク情報毎に、そのリンク情報（ＵＲＬ情報）を記したコンテンツ記憶先アドレス情報と、検索結果を出力した検索プログラムの種類を表すカテゴリ情報と、当該検索処理を実現する検索プロセスが取扱う個別検索情報の記憶先を表すアドレス情報と、現在時刻を記した検索完了時刻情報と、値「ＦＡＬＳＥ」に設定された出力有無情報と、からなる個別結果情報を生成し、各個別結果情報を検索結果管理テーブルに登録する（Ｓ１１８３）。Ｓ１１８３での処理を終えると、制御部７１は、Ｓ１１９０に移行し、検索プロセス数を１減算した後、当該検索処理（検索プロセス）を終了する。
【０１４１】
その他、Ｓ１１８０にて、上記指定された検索プログラム情報のカテゴリ情報が「用語検索」であると判断すると（Ｓ１１８０でＹｅｓ）、制御部７１は、応答信号として受信したリンク情報の一群からなる検索結果から、上記指定された採用件数にかかわらず１件分のリンク情報（ＵＲＬ情報）を抽出し、そのリンク情報を記した個別結果情報を生成し（Ｓ１１８５）、生成した個別結果情報を、記憶部７３が記憶する検索結果管理テーブルに登録する（Ｓ１１８７）。また、Ｓ１１８７での処理を終えると、Ｓ１１９０に移行して、検索プロセス数を１減算した後、当該検索処理（検索プロセス）を終了する。
【０１４２】
続いて、制御部７１が、検索制御処理と並列に実行する検索結果読出制御処理について説明する。図２０及び図２１は、制御部７１が実行する検索結果読出制御処理を表すフローチャートである。
【０１４３】
検索結果読出制御処理を実行すると、制御部７１は、読出プロセス数をゼロにリセットし（Ｓ１２１０）、その後、Ｓ１２３０以降の処理について、未処理の個別結果情報が、検索結果管理テーブル内に存在するか否かを判断し（Ｓ１２２０）、未処理の個別結果情報が存在すると判断すると（Ｓ１２２０でＹｅｓ）、Ｓ１２３０に移行し、未処理の個別結果情報が存在しないと判断すると（Ｓ１２２０でＮｏ）、未処理の個別結果情報が、検索結果管理テーブル内に登録されるまで待機する。
【０１４４】
Ｓ１２３０に移行すると、制御部７１は、未処理の個別結果情報であって、検索完了時刻が最も新しい個別結果情報を、処理対象に選択する。また、Ｓ１２３０での処理を終えると、処理対象に選択した個別結果情報に対応する個別検索情報が示す評価値が、予め定められた下限値未満であるか否かを判断する（Ｓ１２４０）。そして、下限値未満であると判断すると（Ｓ１２４０でＹｅｓ）、Ｓ１２２０に移行する。
【０１４５】
一方、処理対象に選択した個別結果情報に対応する評価値が、予め定められた下限値以上であると判断すると（Ｓ１２４０でＮｏ）、読出プロセス数が、予め定められた上限値未満であるか否かを判断する（Ｓ１２５０）。そして、読出プロセス数が、予め定められた上限値未満であると判断すると（Ｓ１２５０でＹｅｓ）、Ｓ１３００に移行し、読出プロセス数が、予め定められた上限値未満ではないと判断すると（Ｓ１２５０でＮｏ）、Ｓ１２３０で処理対象に選択した個別結果情報に対応する評価値よりも、評価値の低い個別結果情報に対応する読出プロセス（後述する読出処理（図２３参照）を実現するプロセス）が、実行中であるか否かを判断する。尚、この判断は、記憶部７３が記憶する読出プロセス管理テーブルに基づいて行う。
【０１４６】
図２２は、記憶部７３が記憶する読出プロセス管理テーブルの構成を表す説明図である。図２２に示すように、読出プロセス管理テーブルは、実行中のプロセス毎に、プロセスＩＤと、そのプロセスの優先度を示す値と、そのプロセスに割り当てられたメモリの上限値と、そのプロセスに対応する個別検索情報の記憶先を表すアドレス情報と、からなるプロセス管理情報を有する。
【０１４７】
即ち、Ｓ１２６０において、制御部７１は、読出プロセス管理テーブルに登録されているプロセスの中に、プロセス管理情報に関連付けられた個別検索情報が示す評価値が、Ｓ１２３０で処理対象に選択した個別結果情報に対応する評価値よりも低いプロセスが存在するか否かを判断する。
【０１４８】
そして、処理対象に選択した個別結果情報に対応する評価値よりも、評価値が低いプロセスが存在しないと判断すると（Ｓ１２６０でＮｏ）、Ｓ１２２０に移行し、処理対象に選択した個別結果情報に対応する評価値よりも、評価値が低いプロセスが存在すると判断すると（Ｓ１２６０でＹｅｓ）、Ｓ１２７０に移行し、ＲＡＭが記憶する上記着信フラグがオンに設定されているか否かを判断する。
【０１４９】
そして、着信フラグがオンに設定されていると判断すると（Ｓ１２７０でＹｅｓ）、Ｓ１３００に移行し、着信フラグがオフに設定されていると判断すると（Ｓ１２７０でＮｏ）、Ｓ１２８０に移行し、読出プロセス管理テーブルに登録されているプロセスの中で、プロセス管理情報に関連付けられた個別検索情報が示す評価値が最低のプロセスを、停止対象に選択する。そして、停止対象のプロセスに対して、停止指令を入力する（Ｓ１２９０）。これにより、停止対象のプロセスは、停止する。
【０１５０】
また、Ｓ１２９０での処理を終えると、Ｓ１２３０で処理対象に選択した個別結果情報に基づく読出プロセスの優先度を、その個別結果情報に対応する評価値（個別結果情報に関連付けられた個別検索情報が示す評価値）を用いて、Ｓ９００と同様に算出する（Ｓ１３００）。その後、上記読出プロセスに割り当てるメモリ（ＲＡＭ）の上限値を、Ｓ９１０と同様に算出する（Ｓ１３１０）。
【０１５１】
Ｓ１３１０での処理を終えると、制御部７１は、Ｓ１３２０に移行し、関心終了時刻が設定されているか否かを判断する。そして、関心終了時刻が設定されていない（関心終了時刻がリセットされた状態である）と判断すると（Ｓ１３２０でＮｏ）、上記読出プロセスに対して許可する処理時間の最大値である処理制限時間を、「無制限」に設定する（Ｓ１３２１）。その後、Ｓ１３３０に移行する。
【０１５２】
一方、関心終了時刻が設定されていると判断すると（Ｓ１３２０でＹｅｓ）、上記処理制限時間に、関心終了時刻との現在時刻との差を設定する（Ｓ１３２５）。その後、Ｓ１３３０に移行する。
【０１５３】
また、Ｓ１３３０に移行すると、Ｓ１３００で算出した優先度、Ｓ１３１０で算出したメモリ上限値、及び、Ｓ１３２１又はＳ１３２５で設定した処理制限時間を指定し、Ｓ１２３０で選択した個別結果情報を処理対象に指定して、その個別結果情報についての読出プロセスを起動する。尚、起動された読出プロセスは、ＯＳのスケジューラにより管理されて、他のプロセスと並列に実行され、処理対象の個別結果情報が示すＵＲＬ先（コンテンツ記憶先）に、コンテンツ（データファイル）の要求信号を送信し、ＵＲＬ先からコンテンツを取得する。
【０１５４】
Ｓ１３３０での処理を終えると、制御部７１は、起動した読出プロセスについてのプロセス管理情報を生成し、これを、記憶部７３が記憶する読出プロセス管理テーブルに登録する（Ｓ１３４０）。即ち、起動した読出プロセスのプロセスＩＤと、Ｓ１３００で算出した優先度と、Ｓ１３１０で算出したメモリ上限値と、Ｓ１２３０で処理対象に選択した個別結果情報が示す個別検索情報の記憶先を表すアドレス情報と、からなるプロセス管理情報を生成し、これを読出プロセス管理テーブルに登録する。
【０１５５】
その後、制御部７１は、読出プロセス数を１加算する（Ｓ１３５０）。また、Ｓ１３５０での処理を終えると、終了指令が入力されているか否かを判断し（Ｓ１３６０）、終了指令が入力されていないと判断すると（Ｓ１３６０でＮｏ）、Ｓ１２２０に移行する。一方、終了指令が入力されていると判断すると（Ｓ１３６０でＹｅｓ）、当該検索結果読出制御処理を終了する。
【０１５６】
尚、検索結果読出制御処理は、検索制御処理と並列に実行されるため、Ｓ８２１及びＳ８２５の実行中に、評価値を用いて行うＳ１２４０〜Ｓ１２８０の処理が進行される場合があるが、Ｓ１２４０〜Ｓ１２８０の処理過程で、更新フラグがオンにされた場合、制御部７１は、検索結果読出制御処理において、一旦ステップを、Ｓ１２３０に戻して、更新フラグがオフにされるまで待機し、更新フラグがオフにされると、処理を中断した個別結果情報を未処理の個別結果情報と取扱い、Ｓ１２３０以降の処理を再開する。その他、Ｓ１２９０〜Ｓ１３１０の処理過程で、更新フラグがオンにされた場合、制御部７１は、Ｓ１２３０〜Ｓ１２８０で把握した評価値を用いて、後続の処理（優先度、メモリ上限値の算出）を実行する。
【０１５７】
次に、制御部７１が並列に実行する各読出プロセスにて、実現される読出処理について説明する。図２３は、読出処理を表すフローチャートである。
読出処理を実行すると、制御部７１は、まず、タイマーをリセットする（Ｓ１４１０）。その後、検索結果管理テーブルから、指定された処理対象の個別結果情報が有するコンテンツ記憶先アドレス情報を読み出し（Ｓ１４２０）、読み出したコンテンツ記憶先アドレス情報が示すＵＲＬ先に、コンテンツの要求信号を送信する（Ｓ１４３０）。
【０１５８】
制御部７１は、Ｓ１４３０にて要求信号を送信した後、タイマーの値に基づき処理制限時間が経過したか否かを判断し（Ｓ１４４０）、処理制限時間が経過していないと判断すると（Ｓ１４４０でＮｏ）、Ｓ１４５０に移行する。一方、処理制限時間が経過していると判断すると（Ｓ１４４０でＹｅｓ）、Ｓ１４４５にてセッションを閉じ（通信を終了し）、その後、Ｓ１４９０に移行して、読出プロセス数を１減算し、当該読出処理（読出プロセス）を終了する。
【０１５９】
Ｓ１４５０に移行すると、制御部７１は、Ｓ１４３０で送信した要求信号に対する応答信号の受信が完了したか否かを判断し、応答信号の受信が完了していないと判断すると（Ｓ１４５０でＮｏ）、Ｓ１２９０の処理により、当該読出処理を実現するプロセスに対して停止指令が入力されているか否かを判断し（Ｓ１４５１）、停止指令が入力されていると判断すると（Ｓ１４５１でＹｅｓ）、Ｓ１４５３にてセッションを閉じ、その後、Ｓ１４９０に移行して、読出プロセス数を１減算し、当該読出処理（読出プロセス）を終了する。また、停止指令が入力されていないと判断すると（Ｓ１４５１でＮｏ）、Ｓ１４４０に移行する。
【０１６０】
その他、Ｓ１４５０で応答信号の受信が完了したと判断すると、制御部７１は、応答信号が要求したコンテンツであるか、それとも、エラー情報であるのかを判断し（Ｓ１４６０）、応答信号がコンテンツではない（エラー情報である）と判断すると（Ｓ１４６０でＮｏ）、読出プロセス数を１減算して（Ｓ１４９０）、当該読出処理（読出プロセス）を終了する。
【０１６１】
一方、応答信号がコンテンツであると判断すると（Ｓ１４６０でＹｅｓ）、そのコンテンツを、記憶部７３に保存し（Ｓ１４７０）、その後、処理対象の個別結果情報が有するコンテンツ記憶先アドレス情報を、コンテンツの保存先を表すＵＲＬ情報に変更して、検索結果管理テーブル（個別結果情報）を更新する（Ｓ１４８０）。その後、Ｓ１４９０に移行して、読出プロセス数を１減算し、当該読出処理（読出プロセス）を終了する。
【０１６２】
次に、制御部７１が検索結果読出制御処理等と並列に実行する出力処理について説明する。図２４は、制御部７１が実行する出力処理を表すフローチャートである。
出力処理を実行すると、制御部７１は、Ｓ１５１０にて、読出プロセスが終了して記憶部７３に保存されたコンテンツの内、未出力のコンテンツが存在するか否かを判断する。記憶部７３に未出力のコンテンツが存在するか否かの判断は、検索結果管理テーブルが有するコンテンツ記憶先アドレス情報と出力有無情報と、に基づいて行い、コンテンツ記憶先アドレス情報が、記憶部７３にコンテンツが存在することを示し、出力有無情報が値「ＦＡＬＳＥ」を示している個別結果情報が、検索結果管理テーブルに登録されている場合、この個別結果情報に対応するコンテンツを、未出力のコンテンツと判断して、未出力のコンテンツが記憶部７３に存在すると判断する（Ｓ１５１０でＹｅｓ）。
【０１６３】
このようにして、未出力のコンテンツが記憶部７３に存在しないと判断すると（Ｓ１５１０でＮｏ）、制御部７１は、未出力のコンテンツが発生するまで待機し、未出力のコンテンツが存在すると判断すると（Ｓ１５１０でＹｅｓ）、未出力のコンテンツの一つを、処理対象に選択し（Ｓ１５２０）、そのコンテンツに対応する個別結果情報に基づき、処理対象のコンテンツが、用語検索結果であるか否かを判断する（Ｓ１５３０）。
【０１６４】
具体的には、コンテンツに対応する個別結果情報が示すカテゴリ情報が「用語検索」であるか否かを判断することにより、処理対象のコンテンツが、用語検索結果であるか否かを判断する。その他、コンテンツを解析して、処理対象のコンテンツが用語検索結果であるか否かを判断してもよい。
【０１６５】
Ｓ１５３０で、コンテンツが用語検索結果であると判断すると、制御部７１は、コンテンツを、表示部７７のコンテンツ提供画面における用語表示領域に表示し（Ｓ１５３５）、その後Ｓ１５７０に移行する。一方、Ｓ１５３０で、コンテンツが用語検索結果ではないと判断すると、Ｓ１５４０に移行して、処理対象のコンテンツが動画ファイルであるか否かを判断し、処理対象のコンテンツが動画ファイルであると判断すると（Ｓ１５４０でＹｅｓ）、動画再生データキューに、処理対象のコンテンツと、コンテンツを取得する元となったソース情報が示すソース生成時刻情報と、を関連付けて登録する（Ｓ１５４５）。その後、Ｓ１５７０に移行する。
【０１６６】
尚、本実施例の情報収集解析装置７０では、制御部７１が、動画再生データキューとしての機能と、動画再生データキューに登録されたコンテンツ（動画ファイル）を再生する機能と、を有する。図２５（ａ）は、制御部７１にて実現される動画再生データキューと、制御部７１にて実行される動画再生領域表示制御プロセスと、を示した説明図である。
【０１６７】
動画再生領域表示制御プロセスは、動画再生データキューに登録されたコンテンツを、登録された順に、再生処理して、コンテンツ提供画面における動画再生領域に動画を出力し、音声を音出力部７９に出力する。
【０１６８】
その他、Ｓ１５４０で、処理対象のコンテンツが動画ファイルではないと判断すると（Ｓ１５４０でＮｏ）、Ｓ１５５０に移行し、処理対象のコンテンツが、音声ファイルであるか否かを判断する。そして、音声ファイルであると判断すると（Ｓ１５５０でＹｅｓ）、そのコンテンツ（音声ファイル）を再生処理し、音出力部７９に、コンテンツを音出力させる（Ｓ１５５５）。その後、Ｓ１５７０に移行する。
【０１６９】
尚、Ｓ１５５５の実行時に、過去に再生を開始した音声ファイルの再生処理が継続中である場合には、その音声ファイルの再生処理を中断して、上記処理対象のコンテンツ(音声ファイル)を再生処理する。その他、動画再生領域表示制御プロセスにより、音声を伴う動画が再生されている場合には、その音出力に代えて、当該コンテンツ（音声ファイル）の音出力を、音出力部７９に実行させる。
【０１７０】
また、処理対象のコンテンツが音声ファイルではないと判断すると（Ｓ１５５０でＮｏ）、表示データキューに、処理対象のコンテンツと、コンテンツを取得する元となったソース情報が示すソース生成時刻情報と、を関連付けて登録する（Ｓ１５６０）。その後、Ｓ１５７０に移行する。
【０１７１】
尚、本実施例の情報収集解析装置７０では、制御部７１が、表示データキューとしての機能と、表示データキューに登録されたコンテンツ（ウェブページ等の文字・画像情報）を表示する機能と、を有する。
【０１７２】
図２５（ｂ）は、制御部７１にて実現される表示データキューと、制御部７１にて実行されるテキスト・画像領域表示制御プロセスと、を示した説明図である。テキスト・画像領域表示制御プロセスは、表示データキューに登録されたコンテンツを、登録された順に、表示処理して、コンテンツ提供画面におけるテキスト・画像領域に表示する。
【０１７３】
Ｓ１５７０に移行すると、制御部７１は、処理対象のコンテンツに対応する個別結果情報の出力有無情報を、値「ＴＲＵＥ」に更新し、その後、Ｓ１５８０に移行して、ソース生成時刻が現在時刻より所定時間前のコンテンツを、動画再生データキュー及び表示データキューから削除する。
【０１７４】
その後、終了指令が入力されているか否かを判断し（Ｓ１５９０）、終了指令が入力されていないと判断すると（Ｓ１５９０でＮｏ）、Ｓ１５１０に移行し、終了指令が入力されていると判断すると（Ｓ１５９０でＹｅｓ）、当該出力処理を終了する。
【０１７５】
以上、本実施例のコンテンツ提供システム１について説明したが、このコンテンツ提供システム１によれば、パソコン３０が、文書作成のために、ユーザが入力部４０に入力したデータ（文字の入力情報）、及び、作成中の文書や閲覧中の文書を表示するために、表示部４３がユーザに向けて表示するデータ（表示対象データ）を、ソフトウェアから取得し、これを情報収集解析装置７０に送信する（パソコン監視処理）。また、ディジタル電話装置５０が、通話中に、ユーザが音入力部６１に入力した音声、及び、音出力部６３がユーザに向けて出力した音声を収集し、これを情報収集解析装置７０に送信する（電話監視処理）。
【０１７６】
そして、情報収集解析装置７０は、ソース情報登録処理にて、上記パソコン監視処理によってパソコン３０から送信されてきたデータ、及び、上記電話監視処理によってディジタル電話装置５０から送信されてきたデータを受信し、これを記憶部７５に記憶する。これによって、ユーザインタフェース３０，５０を備える情報処理装置（パソコン３０，ディジタル電話装置５０）から、ユーザからユーザインタフェース３０，５０に入力されたデータ、及び、ユーザインタフェース３０，５０がユーザに向けて出力したデータを、取得する（本発明のデータ取得手段に相当）。
【０１７７】
また、情報収集解析装置７０は、ディジタル電話装置５０の非通話中において、パソコン３０からデータを受信する度に、そのデータに基づき、Ｓ７１０でユーザの関心事を推定する（推定手段に相当）。具体的に、情報収集解析装置７０は、パソコン３０から取得したテキストデータから、キーワードを抽出した後、関心事推定テーブルにて定義された関心の種類に従って、各キーワードが属する関心の種類を判別し、関心ベクトルの判別した関心の種類に対応する要素を、キーワード毎に１加算する。これによって、ユーザの関心事の推定値である関心ベクトルを算出する。
【０１７８】
その他、情報収集解析装置７０は、ディジタル電話装置５０の通話中において、ユーザの関心事が持続すると見積もった時間（関心終了時刻）が経過する度に、その時点で受信した最新のデータに基づき、Ｓ５２０でユーザの関心事を推定する（推定手段に相当）。
【０１７９】
また、情報収集解析装置７０は、情報処理装置からデータを受信する度に、そのデータから抽出したキーワードと、受信データに基づいて算出した最新の関心ベクトル（ユーザの関心事の推定値）とを、関連付けて個別検索情報を生成し、これを検索情報管理テーブルに登録する（Ｓ５６０〜Ｓ５９５，Ｓ７４０〜Ｓ７８０（データ記憶手段に相当））。
【０１８０】
更に、情報収集解析装置７０は、関心ベクトル算出処理（Ｓ５２０，Ｓ７１０）を実行する度に、その関心ベクトル算出処理にて算出された関心ベクトルを、カレント関心ベクトルＶｃとして、保持する（Ｓ５３０，Ｓ７３０）。この際、過去の保持値に代えて、新しい関心ベクトルの算出値を、カレント関心ベクトルＶｃとして、保持する（最新推定結果保持手段に相当）。
【０１８１】
そして、カレント関心ベクトルＶｃが所定量変化すると、Ｓ８２０でＹｅｓと判断して、検索情報管理テーブルに登録されている全ての個別検索情報（各受信データに対応する情報）について、各個別検索情報毎に、カレント関心ベクトルＶｃに対する個別検索情報が示す関心ベクトルＶの類似度を、それらの内積をとることで評価し（Ｓ８２５）、その評価値を、個別検索情報に登録する（評価手段に相当）。
【０１８２】
また、情報収集解析装置７０は、評価値の高い個別検索情報から、順に処理対象に選択して（Ｓ８４５）、処理対象の個別検索情報が有するキーワードに関連するコンテンツを検索し（検索処理）、その検索結果に基づいて、上記キーワードに関連するコンテンツを、ウェブサーバ１０から取得する（読出処理）。そして、取得したコンテンツを、表示・音出力の形態で、ユーザに提供する（出力処理）。
【０１８３】
即ち、情報収集解析装置７０では、ユーザの関心事が変化して、更新フラグがオンになると、更新フラグがオンになる原因となった受信データ（キーワード）が最も評価され、これに対応するコンテンツから、優先的に、検索される。また、更新フラグがオンになるまでの受信データ（キーワード）については、現在のカレント関心ベクトルＶｃと類似度の高い関心ベクトルに関連付けられたものから、優先的に処理されて、そのキーワードに対応するコンテンツが優先的に検索される。
【０１８４】
従って、情報収集解析装置７０では、受信データのうち、ユーザの関心事に適合したデータを、優先的に処理して、それに対応するコンテンツを迅速に（適切なタイミングで）ユーザに提供することができる。
【０１８５】
また、本実施例の情報収集解析装置７０は、マルチタスクＯＳにて運営され、コンテンツを取得するためのプロセスである検索プロセスを、複数個、並列に実行可能な構成にされ、実行中の検索プロセスが上限値未満ではない場合（即ち、上限値に達している場合）には（Ｓ８６０でＮｏ）、検索情報管理テーブルに登録されている処理対象に選択されていない未処理の個別検索情報の中に、評価値が、実行中の各検索プロセスに対応する個別検索情報の評価値よりも高い個別検索情報が、存在するか否かを判断し（Ｓ８７０）、高い評価値の個別検索情報が存在しない場合には（Ｓ８７０でＮｏ）、Ｓ８８０以降の処理を実行することなく（即ち、新規検索プロセスを起動することなく）、Ｓ８２０に移行し、高い評価値の個別検索情報が存在する場合には（Ｓ８７０でＹｅｓ）、実行中の検索プロセス群の中から、評価値の最も低い個別検索情報に対応する検索プロセスを、停止対象のプロセスに選択する（Ｓ８８０）。
【０１８６】
そして、停止指令を停止対象のプロセスに入力し、そのプロセスを強制終了させ（Ｓ８９０）、検索情報管理テーブルに登録されている未処理の個別検索情報群の中から、評価値が最も高い個別検索情報を、処理対象に選択し、その個別検索情報についての新しい検索プロセスを実行する（Ｓ９５０）。
【０１８７】
このように、本実施例のコンテンツ提供システム１によれば、プロセス数が上限値に達している際、評価値の低い個別検索情報に対応するプロセスを終了し、それより評価値の高い個別検索情報についてのプロセスを新規に実行するので、評価値の低い個別検索情報に対応するプロセスが実行中のため、そのプロセスの実行開始後に発生した評価値の高い個別検索情報を処理することができないといった問題が発生するのを防止することができる。
【０１８８】
また、本実施例のコンテンツ提供システム１では、Ｓ４８０にてディジタル電話装置５０の動作モードを判定し（モード判定手段に相当）、ディジタル電話装置５０が、自身から発呼して他の電話装置と通信している状態である発呼通話モードではなく、他の電話装置から発せられた呼を受けて、他の電話装置と通信している状態である着呼通話モードである場合に、着信フラグをオンにする。
【０１８９】
そして、実行中のプロセスの数が上限値未満ではない（上限値に達している）と判断されている場合であって、着信フラグがオフである期間には、上述したように、評価値の低い個別検索情報に対応するプロセスを強制終了させて（Ｓ８９０）、それより評価値の高い個別検索情報についてのプロセスを新規に実行する（Ｓ９５０）が、着信フラグがオンである期間には、実行中のプロセスの数にかかわらず（プロセス数が上限値に達していても）、Ｓ９００以降の処理を実行して、実行中のプロセスを強制終了させることなく、検索情報管理テーブルに登録されている未処理の個別検索情報群であって、評価値が最も高い個別検索情報についての新しいプロセスを実行し（Ｓ９５０）、検索プロセスを、上限値を超えて、複数個、並列実行する。
【０１９０】
従って、本実施例によれば、着呼により割込みが入り、相手方の音声が、音出力部６３を通じてユーザに向けて出力された場合に、その相手方の音声（又は、関心の有無にかかわらず相手方の問いかけに対して、音入力部６１に入力されたユーザの音声）によって、算出・設定されたカレント関心ベクトルＶｃと類似度の高い関心ベクトルに関連付けられた個別検索情報が優先的に処理され、着呼による一時的な関心の移り変わりによって、潜在的には持続している関心事に適合するコンテンツを取得するためのプロセスが終了してしまうのを防止することができる。
【０１９１】
また、本実施例によれば、潜在的には持続している関心事に適合するコンテンツを取得するための上記プロセスを強制終了させることなく、着呼による一時的な関心事に適合するコンテンツを取得するためのプロセスを新規に実行するので、着呼時にも、ユーザに対して適切なコンテンツを提供することができる。
【０１９２】
その他、本実施例では、検索プロセスを起動する際、評価値に比例したリソース（メモリ上限値等）を割り当てることによって、評価値の高い個別検索情報に対応する検索プロセスから、優先的に処理する。従って、本実施例のコンテンツ提供システム１によれば、精度よく、ユーザの関心事に適合するコンテンツを、適切なタイミングにて、ユーザに提供することができる。
【０１９３】
また、本実施例では、検索情報管理テーブルに登録されている未処理の個別検索情報について、評価値が予め定められた下限値以上である個別検索情報のみを、処理対象に選択し（Ｓ８４５，Ｓ８５０）、その個別検索情報に含まれるキーワードに対応するコンテンツを検索し、取得する。従って、本実施例によれば、ユーザの現在の関心事とは乖離したコンテンツを、取得・提供することがなく、ユーザの関心事に適合するデータを、選択的に、ユーザに提供することができる。
【０１９４】
また、本実施例では、ディジタル電話装置５０の通話中において、関心ベクトル算出処理を実行し、カレント関心ベクトルＶｃを更新する度に、そのカレント関心ベクトルＶｃが示すユーザの関心事がユーザ側で持続する期間である持続期間を、推定する（Ｓ５５０（持続期間推定手段に相当））。そして、この持続期間の終了時点（関心終了時刻）前に、読出対象に選択したコンテンツの取得動作が完了するように、各処理対象データについての処理時間の上限値（処理制限時間）を設定し（Ｓ１３２５）、上限値の範囲内で、各処理対象データに対応するコンテンツを取得するための処理（読出処理）を実行する。即ち、処理制限時間が経過した読出プロセスについては、強制的に終了する（Ｓ１４４０でＹｅｓ）。従って、本実施例によれば、ユーザの関心事に適合しないコンテンツを、ユーザに提供してしまうのを、精度よく防止することができる。
【０１９５】
また、本実施例では、関心事推定テーブルが、関心の種類毎に、その種類に属するユーザの関心事が、ユーザ側で持続する時間である持続時間の推定値を示す持続時間推定情報を有し（持続期間記憶手段に相当）、情報収集解析装置７０が、ディジタル電話装置５０の通話中において、関心ベクトル算出処理を実行しカレント関心ベクトルＶｃを更新する度に、そのカレント関心ベクトルＶｃが示すユーザの関心事が、予め定められた複数の関心の種類のうち、いずれに属するものであるのかを判定し（Ｓ５４０（判定手段に相当））、その関心の種類に対応する持続時間推定情報を、関心事推定テーブルから読み出し、その持続時間推定情報が示す値に現在時刻を加算して、関心事の持続期間の終了時点（関心終了時刻）を推定する。そして、関心終了時刻が経過すると（Ｓ５１０でＹｅｓ）、再び、関心ベクトル算出処理を実行する。
【０１９６】
従って、このコンテンツ提供システム１によれば、ユーザの関心事の変化に合わせて、適切なタイミングで、ユーザの関心事を推定し、ユーザの関心事に適したコンテンツを提供することができる。
【０１９７】
尚、本発明のコンテンツ提供システム及びプログラムは、上記実施例に限定されるものではなく、種々の態様を採ることができる。
例えば、Ｓ４７０では、現在のカレント関心ベクトルＶｃ（ｔ）と、前回のカレント関心ベクトルＶｃ（ｔ−１）との差ΔＶｃ＝Ｖｃ（ｔ）−Ｖｃ（ｔ−１）を算出し、ΔＶｃの各要素がとる値の最小値が、予め定めた閾値以上である場合に、カレント関心ベクトルＶｃが、所定量変化したと判断し（Ｓ４７０でＹｅｓ）、それ以外の場合には、カレント関心ベクトルＶｃが、所定量変化していないと判断（Ｓ４７０でＮｏ）してもよい。また、差ΔＶｃの各要素の合計値が、予め定めた閾値以上である場合に、カレント関心ベクトルＶｃが、所定量変化したと判断し（Ｓ４７０でＹｅｓ）、それ以外の場合には、カレント関心ベクトルＶｃが、所定量変化していないと判断（Ｓ４７０でＮｏ）してもよい。
【０１９８】
また、図１３及び図２０に示した各処理において、着信フラグがオンに設定されていると判断された場合（Ｓ８７５，Ｓ１２７０でＹｅｓ）には、各々、Ｓ８２０，Ｓ１２２０に移行するようにしてもよい。
【０１９９】
その他、出力処理では、未出力のコンテンツが存在するか否かを、出力有無情報に基づいて判断するようにしたが、出力済のコンテンツについての個別結果情報を、検索結果管理テーブルから削除するようにし、検索結果管理テーブルに登録されている個別結果情報に対応するコンテンツを、全て未出力のコンテンツであると判断してもよい。
【図面の簡単な説明】
【０２００】
【図１】本発明が適用されたコンテンツ提供システム１の構成を表す説明図である。
【図２】パソコン３０の監視部３５が実行するパソコン監視処理を表すフローチャートである。
【図３】ディジタル電話装置５０の監視部５５が繰返し実行する電話監視処理を表すフローチャートである。
【図４】表示部７７が表示するコンテンツ提供画面を表す説明図である。
【図５】制御部７１が実行するソース情報登録処理を表すフローチャートである。
【図６】ソース管理テーブルの構成を表す説明図である。
【図７】制御部７１が実行するキーワード抽出処理を表すフローチャートである。
【図８】制御部７１が実行する電話解析処理を表すフローチャートである。
【図９】制御部７１が実行する関心ベクトル算出処理を表すフローチャートである。
【図１０】関心事推定テーブルの構成を表す説明図である。
【図１１】検索情報管理テーブルの構成を表す説明図である。
【図１２】制御部７１が実行する非電話解析処理を表すフローチャートである。
【図１３】制御部７１が実行する検索制御処理を表すフローチャートである。
【図１４】制御部７１が実行する検索制御処理を表すフローチャートである。
【図１５】制御部７１が実行する類似度評価処理を表すフローチャートである。
【図１６】検索プロセス管理テーブルの構成を表す説明図である。
【図１７】検索プログラム管理テーブルの構成を表す説明図である。
【図１８】検索プロセスにて実現される検索処理を表すフローチャートである。
【図１９】検索結果管理テーブルの構成を表す説明図である。
【図２０】制御部７１が行う検索結果読出制御処理を表すフローチャートである。
【図２１】制御部７１が行う検索結果読出制御処理を表すフローチャートである。
【図２２】読出プロセス管理テーブルの構成を表す説明図である。
【図２３】読出プロセスにて実現される読出処理を表すフローチャートである。
【図２４】制御部７１が実行する出力処理を表すフローチャートである。
【図２５】動画再生データキュー及び動画再生領域表示制御プロセスを示した説明図（ａ）、及び、表示データキュー及びテキスト・画像領域表示制御プロセスを示した説明図（ｂ）である。
【符号の説明】
【０２０１】
１…コンテンツ提供システム、１０…ウェブサーバ、２０…情報検索サーバ装置、２１，３１，５１，７１…制御部、２３，３３，５３，７３…記憶部、２５，３７，５７，７５…通信部、３０…パソコン、３５，５５…監視部、４０，６０…ユーザインタフェース、４１…入力部、４３，７７…表示部、５０…ディジタル電話装置、６１…音入力部、６３，７９…音出力部、７０…情報収集解析装置
【図１】
2006260511.tif 000003
【図２】
2006260511.tif 000004
【図３】
2006260511.tif 000005
【図４】
2006260511.tif 000006
【図５】
2006260511.tif 000007
【図６】
2006260511.tif 000008
【図７】
2006260511.tif 000009
【図８】
2006260511.tif 000010
【図９】
2006260511.tif 000011
【図１０】
2006260511.tif 000012
【図１１】
2006260511.tif 000013
【図１２】
2006260511.tif 000014
【図１３】
2006260511.tif 000015
【図１４】
2006260511.tif 000016
【図１５】
2006260511.tif 000017
【図１６】
2006260511.tif 000018
【図１７】
2006260511.tif 000019
【図１８】
2006260511.tif 000020
【図１９】
2006260511.tif 000021
【図２０】
2006260511.tif 000022
【図２１】
2006260511.tif 000023
【図２２】
2006260511.tif 000024
【図２３】
2006260511.tif 000025
【図２４】
2006260511.tif 000026
【図２５】
2006260511.tif 000027