(57)【特許請求の範囲】
【請求項１】
集団に提供するための複数の情報提供用データと、前記集団の構成員を表す第１の情報と、前記構成員の嗜好を表す第２の情報と、前記集団の行動履歴を表す第３の情報をそれぞれ取得して記憶媒体に記憶する手段と、
情報提供用データの提供対象となる集団が指定されたとき、前記記憶媒体に記憶された第１の及び第２の情報をもとに、前記記憶された複数の情報提供用データの各々に対する前記指定された集団の構成員の嗜好の強さを表す嗜好スコア情報を算出する手段と、
前記算出された嗜好スコア情報を成分として表される嗜好空間上に、前記記憶媒体に記憶された複数の情報提供用データと、前記記憶媒体に記憶された第３の情報をそれぞれマッピングし、このマッピングされた情報提供用データごとに当該情報提供用データと第３の情報との間の前記嗜好空間における類似度をそれぞれ算出する類似度算出手段と、
前記情報提供用データごとに算出された類似度を予め設定されたしきい値とそれぞれ比較し、類似度がしきい値より大きい嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する手段と
を具備し、
前記類似度算出手段は、
嗜好空間の理論的範囲を複数の嗜好クラスタに分割し、前記算出された嗜好スコア情報を前記複数の嗜好クラスタのうちの該当する嗜好クラスタに変換することにより、情報提供データごとの嗜好クラスタ情報を生成する手段と、
前記複数の情報提供データの各々について作成された嗜好クラスタ情報の、嗜好クラスタの組ごとの出現回数を算出する手段と、
前記算出された出現回数を予め設定したしきい値と比較し、出現回数がしきい値を上回る嗜好クラスタ情報に対応する情報提供用データを、前記集団に適したデータとして選択する手段と
を備えることを特徴とする提供情報選択装置。
【請求項２】
前記嗜好クラスタ情報を作成する手段は、嗜好空間の理論的範囲を大きさが等しい複数の嗜好クラスタに分割することを特徴とする請求項１記載の提供情報選択装置。
【請求項３】
集団に提供するための複数の情報提供用データと、前記集団の構成員を表す第１の情報と、前記構成員の嗜好を表す第２の情報と、前記集団の行動履歴を表す第３の情報をそれぞれ取得して記憶媒体に記憶する手段と、
情報提供用データの提供対象となる集団が指定されたとき、前記記憶媒体に記憶された第１の及び第２の情報をもとに、前記記憶された複数の情報提供用データの各々に対する前記指定された集団の構成員の嗜好の強さを表す嗜好スコア情報を算出する手段と、
前記算出された嗜好スコア情報を成分として表される嗜好空間上に、前記記憶媒体に記憶された複数の情報提供用データと、前記記憶媒体に記憶された第３の情報をそれぞれマッピングし、このマッピングされた情報提供用データごとに当該情報提供用データと第３の情報との間の前記嗜好空間における類似度をそれぞれ算出する類似度算出手段と、
前記情報提供用データごとに算出された類似度を予め設定されたしきい値とそれぞれ比較し、類似度がしきい値より大きい嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する手段と
を具備し、
前記類似度算出手段は、
嗜好空間の理論的範囲を複数の嗜好クラスタに分割し、前記算出された嗜好スコア情報を前記複数の嗜好クラスタのうちの該当する嗜好クラスタに変換することにより、情報提供用データごとの嗜好クラスタ情報を生成する手段と、
前記記憶媒体に記憶された第３の情報及び複数の情報提供用データをもとに、集団ごとの提供情報のジャンル別の行動頻度を表す情報を生成する手段と、
前記記憶媒体に記憶された第２の情報から構成員の嗜好重心を算出すると共に、前記生成された集団の行動頻度からその行動重心を算出し、この算出された嗜好重心を始点とし行動重心を終点とする関係性ベクトルを算出する手段と、
前記算出された関係性ベクトルをｎ倍（−∞≦ｎ≦∞）したベクトルの軌跡を算出し、この算出されたベクトル軌跡が通過する嗜好空間上の領域に対応する嗜好クラスタの組を抽出し、この抽出された嗜好クラスタの組に属する嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する手段と
を備えることを特徴とする提供情報選択装置。
【請求項４】
提供情報の利用場所及び利用時間を指定する情報を含む開始トリガを受付ける手段と、
前記開始トリガに含まれる利用場所及び利用時間を指定する情報に応じて、当該利用場所及び利用時間に対応する情報提供用データを前記記憶手段から選択的に読み出す手段と
を、さらに具備することを特徴とする請求項１乃至３のいずれかに記載の提供情報選択装置。
【請求項５】
前記選択する手段により選択された情報提供用データを表示又は送信する手段を、さらに具備することを特徴とする請求項１乃至４のいずれかに記載の提供情報選択装置。
【請求項６】
コンピュータ及び記憶媒体を備えた提供情報選択装置が実行する提供情報選択方法であって、
前記コンピュータが、集団に提供するための複数の情報提供用データと、前記集団の構成員を表す第１の情報と、前記構成員の嗜好を表す第２の情報と、前記集団の行動履歴を表す第３の情報をそれぞれ取得して前記記憶媒体に記憶する過程と、
前記コンピュータが、情報提供用データの提供対象となる集団が指定されたとき、前記記憶媒体に記憶された第１の及び第２の情報をもとに、前記記憶された複数の情報提供用データの各々に対する前記指定された集団の構成員の嗜好の強さを表す嗜好スコア情報を算出する過程と、
前記コンピュータが、前記算出された嗜好スコア情報を成分として表される嗜好空間上に、前記記憶媒体に記憶された複数の情報提供用データと、前記記憶媒体に記憶された第３の情報をそれぞれマッピングし、このマッピングされた情報提供用データごとに当該情報提供用データと第３の情報との間の前記嗜好空間における類似度をそれぞれ算出する類似度算出過程と、
前記コンピュータが、前記情報提供用データごとに算出された類似度を予め設定されたしきい値とそれぞれ比較し、類似度がしきい値より大きい嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する過程と
を具備し、
前記類似度算出過程は、
嗜好空間の理論的範囲を複数の嗜好クラスタに分割し、前記算出された嗜好スコア情報を前記複数の嗜好クラスタのうちの該当する嗜好クラスタに変換することにより、情報提供データごとの嗜好クラスタ情報を生成する過程と、
前記複数の情報提供データの各々について作成された嗜好クラスタ情報の、嗜好クラスタの組ごとの出現回数を算出する過程と、
前記算出された出現回数を予め設定したしきい値と比較し、出現回数がしきい値を上回る嗜好クラスタ情報に対応する情報提供用データを、前記集団に適したデータとして選択する過程と
を備えることを特徴とする提供情報選択方法。
【請求項７】
コンピュータ及び記憶媒体を備えた提供情報選択装置が実行する提供情報選択方法であって、
前記コンピュータが、集団に提供するための複数の情報提供用データと、前記集団の構成員を表す第１の情報と、前記構成員の嗜好を表す第２の情報と、前記集団の行動履歴を表す第３の情報をそれぞれ取得して前記記憶媒体に記憶する過程と、
前記コンピュータが、情報提供用データの提供対象となる集団が指定されたとき、前記記憶媒体に記憶された第１の及び第２の情報をもとに、前記記憶された複数の情報提供用データの各々に対する前記指定された集団の構成員の嗜好の強さを表す嗜好スコア情報を算出する過程と、
前記コンピュータが、前記算出された嗜好スコア情報を成分として表される嗜好空間上に、前記記憶媒体に記憶された複数の情報提供用データと、前記記憶媒体に記憶された第３の情報をそれぞれマッピングし、このマッピングされた情報提供用データごとに当該情報提供用データと第３の情報との間の前記嗜好空間における類似度をそれぞれ算出する類似度算出過程と、
前記コンピュータが、前記情報提供用データごとに算出された類似度を予め設定されたしきい値とそれぞれ比較し、類似度がしきい値より大きい嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する過程と
を具備し、
前記類似度算出過程は、
嗜好空間の理論的範囲を複数の嗜好クラスタに分割し、前記算出された嗜好スコア情報を前記複数の嗜好クラスタのうちの該当する嗜好クラスタに変換することにより、情報提供用データごとの嗜好クラスタ情報を生成する過程と、
前記記憶媒体に記憶された第３の情報及び複数の情報提供用データをもとに、集団ごとの提供情報のジャンル別の行動頻度を表す情報を生成する過程と、
前記記憶媒体に記憶された第２の情報から構成員の嗜好重心を算出すると共に、前記生成された集団の行動頻度からその行動重心を算出し、この算出された嗜好重心を始点とし行動重心を終点とする関係性ベクトルを算出する過程と、
前記算出された関係性ベクトルをｎ倍（−∞≦ｎ≦∞）したベクトルの軌跡を算出し、この算出されたベクトル軌跡が通過する嗜好空間上の領域に対応する嗜好クラスタの組を抽出し、この抽出された嗜好クラスタの組に属する嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する過程と
を備えることを特徴とする提供情報選択方法。
【請求項８】
請求項６又は７記載の提供情報選択方法が備える過程に対応する処理を提供情報選択装置が備えるコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の構成員を含む集団に対し適切な情報を選択し提供するための提供情報選択装置、方法及びプログラムに関する。
【背景技術】
【０００２】
近年、コンピュータネットワークを利用して情報利用者に対し当該情報利用者に適した情報を提供するサービスが種々提案されており、その一つに嗜好の異なる複数の構成員を含む集団に対して適切な情報を提供するサービスが注目されている。提供する情報としては、例えば広告情報やニュース情報、飲食店情報が有望である。
【０００３】
この種のサービスを実現する手法として、従来では例えば以下の２つの手法が知られている。  
第１の手法は、集団を構成する各構成員の嗜好スコアを基に集団に適した情報を推定するもので、各構成員の項目iに対する嗜好スコアを加重平均などで統合し、その結果をグループの項目iに対する嗜好とする手法である。例えば非特許文献１では、個人の行動履歴、例えば中華料理の店舗に訪れたという実績から、個人の嗜好、例えば中華料理を好む度合いを推定する手法を提案している。そして、グループに対し情報を推薦する際には、ユーザが任意の加重を入力し、各構成員の項目iに対する嗜好スコアに入力された加重を乗算して集団の項目iに対する嗜好スコアを推定して、集団の嗜好スコアが高い情報（項目）を対象集団に適する情報として提示するようにしている。
【０００４】
第２の手法は、集団での行動履歴データを基に集団に適した情報を推定する手法であり、例えばその集団で中華料理店に訪れる頻度が高ければその集団は中華料理を好む度合いが高いと推定し、この推定結果に対応する情報を提供するものである。すなわち、第２の手法は実際に起こした行動を基に嗜好を推定するもので、例えば上述の非特許文献１で提案する手法における個人の行動部分を集団の行動に置き換えることで集団の嗜好スコアを推定し、集団の嗜好スコアが高い情報を対象集団に適する情報として選択することにより実現される。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】伊藤浩二他、「行動支援サービスのためのユーザ理解モデルの検討」、信学技報、Vol. 109, No. 272, pp.121-128, 2009。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、上記従来の第１及び第２の手法にはそれぞれ以下のような解決すべき課題があった。  
すなわち、第１の手法は各構成員の嗜好スコアから集団の嗜好スコアを推定し、そのスコアに基づいて対象集団に適した情報の選択を行うものである。しかし、対象集団に適しているか否かは嗜好のみでは決定されず、場所や時間などの要因による影響も受ける。このため、場所や時間などの影響によっては、集団の嗜好スコアが高い情報でも対象集団にとって不適切となる場合もある。
【０００７】
一方、第２の手法は、集団の行動履歴から集団の嗜好スコアを推定し、そのスコアに基づいて対象集団に適した情報の選択を行うものである。このため、集団の行動として現れたもの、つまり集団の行動履歴は対象集団にとって少なくとも不適切ではないと判断することができる。しかしながら、集団の嗜好スコアを十分に推定するためには一定量の行動履歴が必要であり、この行動履歴のデータ量が不足した状態では対象集団にとって適する情報の欠落が発生しやすい。
【０００８】
すなわち、従来の手法では、集団にとって適する情報を選択して提示する場合に、集団にとって適する情報だけでなく不適な情報も多量に含んでしまったり、不適な情報を除去しようとすると適する情報も除去されてしまうという、トレードオフの関係になることが避けられなかった。
【０００９】
この発明は上記事情に着目してなされたもので、その目的とするところは、集団にとって不適切な情報を除去しつつ、集団にとって適切な情報を保持することを可能にし、これにより高精度の情報選択を可能にした提供情報選択装置、方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するためにこの発明の第１の観点は、集団に提供するための複数の情報提供用データと、前記集団の構成員を表す第１の情報と、前記構成員の嗜好を表す第２の情報と、前記集団の行動履歴を表す第３の情報をそれぞれ取得して記憶媒体に記憶する。この状態で、情報提供用データの提供対象となる集団が指定されたとき、前記記憶媒体に記憶された第１の及び第２の情報をもとに、前記記憶された複数の情報提供用データの各々に対する前記指定された集団の構成員の嗜好の強さを表す嗜好スコア情報を算出する。そして、この算出された嗜好スコア情報を成分として表される嗜好空間上に、前記記憶媒体に記憶された複数の情報提供用データと、前記記憶媒体に記憶された第３の情報をそれぞれマッピングして、このマッピングされた情報提供用データごとに当該情報提供用データと第３の情報との間の前記嗜好空間における類似度をそれぞれ算出し、前記情報提供用データごとに算出された類似度を予め設定されたしきい値とそれぞれ比較して、類似度がしきい値より大きい嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択する。さらに上記類似度の算出を、先ず嗜好空間の理論的範囲を複数の嗜好クラスタに分割し、前記算出された嗜好スコア情報を前記複数の嗜好クラスタのうちの該当する嗜好クラスタに変換することにより情報提供データごとの嗜好クラスタ情報を生成する。次に、前記複数の情報提供データの各々について作成された嗜好クラスタ情報の、嗜好クラスタごとの出現回数を算出し、この算出された出現回数を予め設定したしきい値と比較して、出現回数がしきい値を上回る嗜好クラスタ情報に対応する情報提供用データを、前記集団に適したデータとして選択するようにしたものである。
【００１１】
したがって、この発明の第１の観点によれば、集団にとって適する情報提供用データを選択する場合に、集団の各構成員の嗜好に集団の行動履歴に含まれる対象集団にとって不適でない情報を加味し、さらに行動履歴に集団の各構成員の嗜好を加味することができる。このため、集団にとって適するデータだけでなく不適切なデータも多量に含んでしまったり、不適切な情報を除去しようとして適する情報も除去されてしまうといった、トレードオフの関係を解決することができ、これにより集団にとって適する情報提供用データの選択精度を高めることが可能となる。
また、情報提供データごとの嗜好クラスタ情報を生成し、この作成された嗜好クラスタ情報の嗜好クラスタごとの出現回数をしきい値と比べることにより、集団に適した情報提供用データを選択することができる。
【００１２】
前記類似度の算出手段又は方法としては、前記各情報提供用データと前記第３の情報との間のユークリッド距離をもとに嗜好空間における類似度を算出するものや、前記各情報提供用データと第３の情報とのcosine similarityをもとに類似度を算出するものを利用できる。
【００１４】
この発明の第２の観点は、情報提供用データと第３の情報との間の嗜好空間における類似度を算出する際に、記憶媒体に記憶された第３の情報及び複数の情報提供用データをもとに、集団ごとの提供情報のジャンル別の行動頻度を表す情報を生成し記憶しておく。この状態で、先ず嗜好空間の理論的範囲を複数の嗜好クラスタに分割し、前記算出された嗜好スコア情報を前記複数の嗜好クラスタのうちの該当する嗜好クラスタに変換することにより、情報提供用データごとの嗜好クラスタ情報を生成する。次に、上記記憶媒体に記憶された第２の情報から構成員の嗜好重心を算出すると共に、前記生成された集団の行動頻度からその行動重心を算出し、この算出された嗜好重心を始点とし行動重心を終点とする関係性ベクトルを算出する。そして、この算出された関係性ベクトルをｎ倍（−∞≦ｎ≦∞）したベクトルの軌跡を算出し、この算出されたベクトル軌跡が通過する嗜好空間上の領域に対応する嗜好クラスタの組を抽出して、この抽出された嗜好クラスタの組に属する嗜好スコア情報に対応する情報提供用データを、前記集団に適したデータとして選択するようにしたものである。
このようにすると、構成員の嗜好と集団の行動履歴との間の関係性を表すベクトル軌跡が嗜好空間上にマッピングされ、この関係性ベクトル軌跡をもとに集団に適した情報提供用データが選択される。
【００１５】
また、上記嗜好スコア情報の算出、類似度の算出及び行動頻度の算出に使用する情報提供用データは、開始トリガにより指定された利用場所及び利用時間に該当する情報提供用データを用いるとよい。このようにすると、多数の情報提供用データが記憶されている場合に、選択対象とする情報提供用データを事前に絞り込むことができ、こりにより情報選択に要する情報処理量を減らすことができる。
【００１６】
さらに、選択された情報提供用データを表示又は送信する手段又は方法を備えるとよい。このようにすると、選択された情報提供用データをサービス事業者が確認することができ、また情報利用者たる集団の構成員は集団の今後の行動を決める際の参考にすることができる。
【発明の効果】
【００１７】
すなわちこの発明によれば、集団にとって不適切な情報を除去しつつ、集団にとって適切な情報を保持することが可能となり、これにより高精度の情報選択を可能にした提供情報選択装置、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】この発明の一実施形態に係わる提供情報選択装置の機能構成を示すブロック図。
【図２】図１に示した提供情報選択装置の具体的な構成を示すブロック図。
【図３】図２に示した提供情報選択装置に設けられる情報提供用データ記憶エリアに記憶される情報提供用情報データの一例を示す図。
【図４】図２に示した提供情報選択装置に設けられる集団構成情報記憶エリアに記憶される集団構成情報の一例を示す図。
【図５】図２に示した提供情報選択装置に設けられる個人の嗜好情報記憶エリアに記憶される個人の嗜好情報の一例を示す図。
【図６】図２に示した提供情報選択装置に設けられる集団の行動履歴情報記憶エリアに記憶される集団の行動履歴情報の一例を示す図。
【図７】図２に示した提供情報選択装置に設けられる集団の行動頻度情報記憶エリアに記憶される集団の行動頻度情報の一例を示す図。
【図８】図２に示した提供情報選択装置に設けられる嗜好クラスタ情報記憶エリアに記憶される嗜好クラスタ情報の一例を示す図。
【図９】図２に示した提供情報選択装置による全体の処理手順とその処理内容を示すフローチャート。
【図１０】図９に示した全体の処理手順のうち集団の行動頻度情報算出処理の手順と処理内容を示すフローチャート。
【図１１】図９に示した全体の処理手順のうち情報選択処理の手順と処理内容を示すフローチャート。
【図１２】図１１に示した情報選択処理の手順のうち集団に適した情報を判定する処理の第１の例を示すフローチャート。
【図１３】図１１に示した情報選択処理の手順のうち集団に適した情報を判定する処理の第２の例を示すフローチャート。
【図１４】図１２に示した集団に適した情報を判定する処理により抽出される、集団に適した嗜好クラスタ番号の組み合わせの一例を示す図。
【図１５】図１３に示した集団に適した情報を判定する処理により抽出される、集団に適した嗜好クラスタ番号の組み合わせの一例を示す図。
【図１６】この発明を説明するための、嗜好空間上における情報提供用データと集団の行動履歴データとの類似度の算出結果の一例を示す図。
【図１７】この発明を説明するための、クラス分割した嗜好空間に関係性ベクトルをマッピングした例を示す図。
【発明を実施するための形態】
【００１９】
以下、図面を参照してこの発明に係わる実施形態を説明する。  
［概要］
この発明の一実施形態は、集団の各構成員の嗜好スコアと集団の行動履歴との長所をそれぞれを利用することで、トレードオフの問題を解決する。
それぞれの長所を活かす手法として、集団に提供する情報の集合である情報提供用データ集合、例えば○○麻婆豆腐屋、△△ラーメン屋などの飲食店情報の集合と、集団の行動履歴データ、例えば□□ハンバーガーショップに訪れたなどの訪問先の飲食店情報とを、集団の構成員の嗜好スコアを成分とした空間（以下嗜好空間と称する）上に示し、その嗜好空間上での類似度を求めることによって各情報提供用データが対象集団にとって適しているか否かを判定する手法を用いる。
【００２０】
この嗜好空間上での類似度を考慮することにより、集団の各構成員の嗜好に集団の行動履歴の長所、つまり嗜好以外の要因も含まれて行動として現れた、少なくとも対象集団にとって不適でない情報を加味することができる。一方、行動履歴に各構成員の嗜好スコアによる長所、つまり一通りの集団の嗜好を網羅可能であることが加わるため、行動履歴の蓄積量が不十分であっても集団の嗜好スコア推定の精度が向上する。
【００２１】
このように、嗜好空間上での情報提供用データと集団の行動履歴データとの類似性を用いた情報選択を行うことによって、集団にとって適する情報を選択して提示する場合に、集団にとって適する情報だけでなく不適な情報も多量に含んでしまったり、不適切な情報を除去しようとすると適する情報も除去されてしまうといった、トレードオフの関係を解決することができる。
【００２２】
情報提供用データと集団の行動履歴データとの嗜好空間における類似性を算出する方法として、以下の３つの例を提案する。図１６はこの類似度算出方法を説明するためのもので、３個の情報提供用データと１個の集団の行動履歴データを、User AとUser Bとからなるグループの嗜好空間上にプロットした場合を例示したものである。
【００２３】
（１）第１の類似度算出法
図１６（ａ）は、各情報提供用データと集団の行動履歴データとの間のユークリッド距離を用いて類似度を算出する例を示したものである。以後、この算出法を第１の類似度算出法と呼ぶ。この算出法では、ユークリッド距離が近いほど類似性が高いとし、例えば一定距離以内にある情報提供用データの類似度を“１”（範囲外のデータの類似度は“０”）とする。あるいは、ユークリッド距離の逆数を類似度とする。
【００２４】
（２）第２の類似度算出法
図１６（ｂ）は、各情報提供用データと集団の行動履歴データとのcosine similarityを用いて類似度を算出する例を示したものである。以後、この算出法を第２の類似度算出法と呼ぶ。この算出法では、cosine similarity の値が高いほど類似性が高いとし、例えば一定値以内にある情報提供用データの類似度を“１”（範囲外のデータの類似度は“０”）とする。あるいは、その値そのものを類似度とする。
【００２５】
（３）第３の類似度算出法
図１６（ｃ）は、嗜好空間をｎ個に分割したクラス（図の例では各構成員の嗜好スコアを５等分した２５個に分割したクラス）を用いて類似度を算出する例を示すものである。以後、この算出法を第３の類似度算出法と呼ぶ。この算出法では、集団の行動履歴データと各情報提供データが同一クラスにある場合を類似しているとし、同一クラスにある情報提供用データの類似度を“１”、異なるクラスにあるデータの類似度を“０”とする。以上に述べた手法を用いることで、各情報提供用データと集団の行動履歴データとの類似度を算出可能となる。
【００２６】
いま、集団の構成員数をｎ、構成員ｉのデータａに対する嗜好スコアをｕi,a、各構成員の嗜好スコアを成分としたグループの行動履歴データｊをＨj ＝（ｕ1,j，ｕ2,j，…，ｕn,j）、各構成員の嗜好スコアを成分とした情報提供用データｋをＩk ＝（ｕ1,k，ｕ2,k，…，ｕn,k）と表したとき、情報提供用データｋの集団の行動履歴データｊに対する類似度ｓｉｍ(k,j)の算出式は以下のようになる。  
【数１】
0005508987.tif 000002
【００２７】
上記の各式を用いることで情報提供用データｋの集団の行動履歴データｊに対する類似度を算出することが可能となる。ただし、上記の類似度算出は集団の行動履歴データ１つに対する類似度であるため、情報提供用データｋが対象集団に適した情報であるか否かを判別するには、集団の行動履歴の複数のデータとの類似度を累積する必要がある。いま、集団の行動履歴データ数をｍと表したとき、情報提供用データｋが対象集団に適した情報であるか否かを判別するための値（以下適合度と呼ぶ）ｓｋは以下のように算出される。  
【数２】
0005508987.tif 000003
【００２８】
情報提供用データｋの適合度ｓｋがあるしきい値以上か否かを判定し、しきい値以上であれば情報提供用データｋは対象集団に適した情報とする。反対に、しきい値に満たなければ不適切な情報であるとする。この処理を情報提供用データ集合の各データに対して行い、不適切な情報と判定されたものを除去することで、対象集団に適した情報を選択することが可能となる。
【００２９】
以上の説明では、情報提供用データと集団の行動履歴データとの嗜好空間における類似度を求めることで、対象集団にとって適した情報か否かを判定する手法について述べた。しかし、情報提供用データが対象集団にとって適した情報か否かを嗜好空間上で求めるには、情報提供用データと集団の行動履歴データとの類似度による手法以外の方法で求めてもよい。
【００３０】
例えば、本発明者等が既に提案している以下の手法を応用することができる。この方法は、各構成員の嗜好スコアと集団の行動履歴とから関係性ベクトルを算出するもので、関係性ベクトルは各構成員の各項目に対する嗜好スコア、例えば中華料理やフランス料理等に対する嗜好度合いの平均値を始点とし、各項目の嗜好スコアに集団での行動頻度をかけた平均値を終点とするベクトルである。関係性ベクトルは各構成員の嗜好スコアに基づいて算出されるため、嗜好空間上にマッピングすることが可能である。  
なお、この方法は、先行技術文献、瀬古俊一他、“集団へのレコメンドに適用可能な同行者との影響度合い定量化手法”、IPSJ-SLDM10144048、Vol.2010-SLDM-144 No.48、pp.1-8、2010に詳しく記載されている。
【００３１】
図１７は、第３の類似度算出法で述べたクラス分割の手法を用いてクラス分け（各構成員の嗜好スコアを１０等分の１００クラス分け）した嗜好空間に、関係性ベクトルの大きさをｎ倍（−∞≦ｎ≦∞）した軌跡と、３個の情報提供用データを示した図である。図１７に示すように、関係性ベクトルの軌跡が通過するクラスを対象集団に適した情報と判断する。それにより、対象集団に適した情報を選択可能となる。
【００３２】
以上のように、各構成員の嗜好スコアと集団の行動履歴を入力データとし、情報提供用データが対象集団に適した情報か否かを集団の行動履歴データとの嗜好空間における類似度を用いて評価することにより、従来手法で問題であったトレードオフを解消して集団に適した情報選択が可能となる。
【００３３】
［装置の機能構成］
図１は、この発明の一実施形態に係わる提供情報選択装置の機能構成を示すブロック図である。  
この装置は、図示しない入力デバイスや表示デバイス、記憶装置との間でデータの入出力を行う入出力インタフェース１と、プログラム及びデータを記憶しておくための記憶部２と、情報選択部３と、集団の行動頻度情報算出部４と、他のシステムとの間で図示しない通信ネットワークを介して情報を送受信するための通信インタフェース部５と、開始トリガを発生するタイマ部６とを備えている。
【００３４】
入出力インタフェース部１又は通信インタフェース部５は、入力デバイス、記憶装置、情報提供者又は情報利用者の端末から個人の嗜好情報、集団の行動履歴情報、集団構成情報及び情報提供用データを受け取り、この受け取った各入力データを記憶部２に記憶させる。ただし、入力データのうち集団の行動履歴情報については、当該入力データを集団の行動頻度情報算出部４へ供給する。集団の行動頻度情報算出部４は、集団の行動履歴情報を受け取ると、この集団の行動履歴情報に含まれているグループＩＤと項目をもとにジャンル別の行動頻度情報を算出し、その算出結果を記憶部２に記憶させる。
【００３５】
また、入出力インタフェース部１は、操作者又はタイマ部６から入力された開始トリガを情報選択部３へ与える。情報選択部３は、開始トリガを受け取ると記憶部２に対し必要なデータを要求し、該当するデータを受け取る。そして、受け取ったデータをもとに、情報提供用データの中から指定された集団に適した情報を選択し、この選択された集団に適した情報を記憶部２に記憶させる。また、必要に応じて、上記集団に適した情報を入出力インタフェース部１から操作者へ提示し、さらに通信インタフェース部５から情報利用者の端末等へ送信する。
【００３６】
［装置の具体的構成］
図２は、図１に示した提供情報選択装置の具体的な構成を示すブロック図である。  
同図に示すように提供情報選択装置は、中央処理ユニット（Central Processing Unit；ＣＰＵ）１１を備え、このＣＰＵ１１に対しバス１２を介してプログラムメモリ１３及びデータメモリ１４を接続し、さらに通信インタフェース１６、入出力インタフェース１７及びタイマ・インタフェース２０を接続したものとなっている。
【００３７】
通信インタフェース１６は、情報利用者が所持する携帯端末（図示せず）との間でＩＰ網等からなる通信ネットワークを介して通信を行う。入出力インタフェース１７には入力デバイス１８及び表示デバイス１９が接続される。入力デバイス１８は、キーボード及びマウスからなる。表示デバイス１９は液晶ディスプレイ（ＬＣＤ）又は有機ＥＬディスプレイからなる。タイマ・インタフェース２０は、タイマ２１から発生された開始トリガ信号を受信してＣＰＵ１１に通知する。
【００３８】
データメモリ１４には、この発明を実施する上で必要な情報データを記憶するエリアとして、個人の嗜好情報記憶エリア１４１と、集団の行動履歴情報記憶エリア１４２と、嗜好クラスタ情報記憶エリア１４３と、情報提供用データ記憶エリア１４４と、集団に適した情報記憶エリア１４５と、集団構成情報記憶エリア１４６と、集団の行動頻度情報記憶エリア１４７が設けられている。
【００３９】
情報提供用データ記憶エリア１４４は、情報利用者の集団に提供する提供用データを記憶するために用いられる。図３は記憶された情報提供用データの一例を示すものである。このデータは、飲食店を情報利用者に紹介するもので、項目名として店舗名を定義し、この店舗名に対し当該店舗のジャンル名、立地場所及び営業時間を表す情報を関連付けたものからなる。
【００４０】
集団構成情報記憶エリア１４６は、情報利用者の集団の構成を表す情報を記憶するために用いられる。図４は記憶された集団構成情報の一例を示すもので、この情報は情報利用者のユーザＩＤに対し当該情報利用者が所属する集団（グループ）のＩＤを関連付けたものからなる。なお、１人の情報利用者が複数の集団に所属することも可能である。
【００４１】
個人の嗜好情報記憶エリア１４１は、情報利用者の嗜好を表す情報を記憶するために使用される。図５は記憶された個人の嗜好情報の一例を示すものである。この情報は、情報利用者のユーザＩＤに対しジャンル名と嗜好スコアを表す情報を関連付けたものからなる。嗜好スコアはジャンルに対する情報利用者の嗜好を定量化したもので、例えば非特許文献１に記述されているような手法や、情報利用者に対してアンケートを行うことにより算出される。
【００４２】
集団の行動履歴情報記憶エリア１４２は、集団の行動履歴情報を記憶するために使用される。図６は記憶された集団の行動履歴情報の一例を示すものである。この情報は、集団のグループＩＤに行動日時、項目名（飲食店名）及び費用を表す情報を関連付けたものからなる。集団の行動履歴情報は、例えば情報利用者が集団で飲食店を訪れたときに、当該情報利用者が携帯端末等を利用して上記行動日時、項目名（飲食店名）及び費用を表す情報を入力して送信し、提供情報選択装置がこの入力情報を受信して上記情報利用者が属する集団のグループＩＤに関連付けることにより生成される。
【００４３】
集団の行動頻度情報記憶エリア１４７は、集団ごとに項目別の行動頻度を表す情報を記憶するために使用される。図７は記憶された集団の行動頻度情報の一例を示したものである。この集団の行動頻度情報は、集団のグループＩＤに対し、ジャンル名及び行動頻度を表す情報を関連付けたものからなる。行動頻度は、例えば中華料理店に訪れた場合にその回数を中華というジャンルに対応付けて累積加算することにより求められる。
【００４４】
嗜好クラスタ情報記憶エリア１４３は、集団に所属する各情報利用者の項目別の嗜好の程度を表す情報を記憶するために使用される。図８は記憶された嗜好クラスタ情報の一例を示すものである。嗜好クラスタ情報は、集団のグループＩＤに、項目名（店舗名）と、上記集団に所属する各ユーザの嗜好クラスタ番号を関連付けたものからなる。嗜好クラスタ番号とは、嗜好スコアの理論的な最小値と最大値との区間をｎ分割したとき、対象嗜好スコアがどの区間に該当するかを示す番号である。例えば、理論的な最小値が１、理論的な最大値が５であり、１０個の区間に分割する場合、１．０〜１．４が区間１、１．４〜１．８が区間２、…、４．６〜５．０が区間１０というような区間番号になり、この各番号を嗜好クラスタ番号と呼ぶ。
【００４５】
プログラムメモリ１３には、この発明を実施する上で必要なアプリケーション・プログラムとして、入出力制御プログラム１３１と、嗜好重心算出プログラム１３２と、行動重心算出プログラム１３３と、集団の行動頻度算出プログラム１３４と、クラスタ分別プログラム１３５と、集団に適した情報選択プログラム１３６が格納されている。
【００４６】
入出力制御プログラム１３１は、入力デバイス１８、外部記憶装置、情報提供者端末又は情報利用者端末から、個人の嗜好情報、集団の行動履歴情報、集団構成情報及び情報提供用データを、入出力インタフェース１７又は通信インタフェース１６を介して受信する。そして、この受信された各入力データをそれぞれ、データメモリ１４内の個人の嗜好情報記憶エリア１４１、集団の行動履歴情報記憶エリア１４２、集団の構成情報記憶エリア１４６及び情報提供用データ記憶エリア１４４に記憶させる処理を、上記ＣＰＵ１１に実行させる。
【００４７】
嗜好重心算出プログラム１３２は、情報選択処理の過程で、上記個人の嗜好情報記憶エリア１４１に記憶された個人の嗜好情報の各々についてその重心を算出する処理を、上記ＣＰＵ１１に実行させる。  
行動重心算出プログラム１３３は、情報選択処理の過程で、上記集団の行動履歴情報記憶エリア１４２に記憶された集団の行動履歴情報についてその重心を算出する処理を、上記ＣＰＵ１１に実行させる。
【００４８】
集合の行動頻度算出プログラム１３４は、新たな集団行動履歴情報を受信した場合に、この集団行動履歴情報に含まれている識別ＩＤ（グループＩＤ）と同じＩＤが付与されている過去の集団行動履歴情報を集団の行動履歴情報記憶エリア１４２から読み出す。そして、この読み出された集団行動履歴情報をもとに当該集団の行動頻度情報を算出し、その算出結果をデータメモリ１４内の集団の行動頻度情報記憶エリアに記憶させる処理を、上記ＣＰＵ１１に実行させる。
【００４９】
クラスタ分別プログラム１３５は、情報選択処理の過程で、嗜好スコアの理論的な最小値と最大値との区間をｎ分割し、対象嗜好スコアがどの区間に該当するかを判別する。そして、この判別結果を嗜好クラスタ番号として嗜好クラスタ情報に含めて、嗜好クラスタ情報記憶エリア１４３に格納する処理を、ＣＰＵ１１に実行させる。
【００５０】
集団に適した情報選択プログラム１３６は、データメモリ１４内の個人の嗜好情報記憶エリア１４１、集団の行動頻度情報記憶エリア１４７、集団構成情報記憶エリア１４６及び情報提供用データ記憶エリア１４４からそれぞれ個人の嗜好情報、集団の行動頻度情報、集団構成情報及び情報提供用データを読み出す。そして、各情報提供用データと集団の行動履歴データとの嗜好空間における類似度を算出して、その算出結果をもとに各情報提供用データが対象集団にとって適した情報か否かを判定し、この判定結果をもとに集団に適した情報提供用データを選択する処理を、ＣＰＵ１１に実行させる。
【００５１】
［装置の動作］
次に、以上のように構成された提供情報選択装置の動作を説明する。  
提供情報選択装置は以下のような手順で処理を実行する。図９はその全体の処理手順と処理内容を示すフローチャートである。
【００５２】
（１）入力データの記憶処理
提供情報選択装置は、待機状態において入出力制御プログラム１３１の制御の下でデータの入力を監視している。この状態で、入出力インタフェース１７又は通信インタフェース１６を介してデータが受信されると、先ずステップＳ１により当該入力データが開始トリガであるかを判断する。この判定の結果、開始トリガでなければ、続いてステップＳ３において上記入力データが集団の行動履歴情報であるか他のデータであるかを判定する。そして、集団の行動履歴情報以外のデータだったとすれば、ステップＳ７において当該入力データをデータメモリ１４内の対応する記憶エリアに記憶させる。
【００５３】
例えば、入力データが情報提供者の端末から送られた情報提供用データであれば、このデータを情報提供用データ記憶エリア１４４に記憶させる。このとき、入力データと同一の項目名が既に情報提供用データ記憶エリア１４４に記憶されていればこの該当データに上書きし、そうでなければ追記する。また、入力データが情報利用者の携帯端末等から送られた個人の嗜好情報であれば、個人の嗜好情報記憶エリア１４１に記憶させる。このとき、入力データと同一のユーザＩＤ及びジャンル名が既に嗜好情報記憶エリア１４１に記憶されていれば当該該当データに上書きし、そうでなければ追記する。同様に、入力データが集団構成情報であれば、この入力データを集団構成情報記憶エリア１４６に記憶させる。このとき、入力データと同一のユーザＩＤが既に集団構成情報記憶エリア１４６に記憶されていればその該当データに上書きし、そうでなければ追記する。
【００５４】
（２）集団の行動頻度の算出処理
一方、入力データが集団の行動履歴を表す情報だったとする。この場合提供情報選択装置は、ステップＳ４により入出力制御プログラム１３１の制御の下で、上記入力された集団の行動履歴情報をデータメモリ１４内の集団の行動履歴情報記憶エリア１４２に記憶させる。次に、ステップＳ５において集団の行動頻度算出プログラム１３４を起動し、この行動頻度算出プログラム１３４の制御の下で集団の行動頻度を算出するための処理を以下のように実行する。図１０はその処理手順と処理内容を示すフローチャートである。
【００５５】
すなわち、提供情報選択装置は先ずステップＳ５１において、上記集団の行動履歴情報記憶エリア１４２に記憶された集団の行動履歴情報から、グループＩＤと項目名との組み合わせを一組選択する。選択対象となるグループＩＤと項目名との組み合わせは、今回入力された集団の行動履歴情報に含まれるグループＩＤと項目名との全組み合わせのうち、行動頻度の加算処理が行われていないすべての組み合わせである。例えば、今回入力された集団の行動履歴情報の１レコード目のグループＩＤが「グループ１」、項目名が「○○麻婆豆腐店」であった場合、「グループ１＋○○麻婆豆腐店」という組になる。
【００５６】
提供情報選択装置は、次にステップＳ５２において、上記選択された項目名に該当するジャンル名を情報提供用データ記憶エリア１４４から検索する。例えば、項目名が「○○麻婆豆腐店」であり、情報提供用データに当該「○○麻婆豆腐店」に対応するジャンル名として「中華」、「豆腐」が登録されていたとすると、ジャンル名として「中華」、「豆腐」が検索される。
【００５７】
続いて提供情報選択装置は、ステップＳ５３において、上記選択されたグループＩＤとジャンル名との組に該当する行動頻度の加算処理を以下のように行う。すなわち、先ず上記選択されたグループＩＤとジャンル名との組に該当する集団の行動頻度情報を、集団の行動頻度情報記憶エリア１４７から読み出す。そして、この読み出された集団の行動頻度情報の行動頻度をインクリメント（＋１加算）する。例えば、選択されたグループＩＤが「グループ１」、ジャンル名が「中華」及び「豆腐」だった場合には、集団の行動頻度情報で「グループ１・中華」「グループ１・豆腐」の組であるデータの行動頻度をインクリメントする。そして、それまで記憶されていた同一グループＩＤ・ジャンル名に該当する行動頻度情報を、上記インクリメント後の行動頻度に更新する。なお、選択されたグループＩＤ・ジャンル名に該当する集団の行動頻度情報が記憶エリア１４７に存在しない場合には、上記選択されたグループＩＤとジャンル名との組に対応する行動頻度の値を「１」に設定し、これを新たな記憶情報とする。
【００５８】
最後に提供情報選択装置は、ステップＳ５４において、今回入力された集団の行動履歴情報に含まれるグループＩＤとジャンル名との組み合わせの中に、まだ加算処理が行われていない組み合わせが存在するか否かを判定する。そして、この判定の結果、加算処理が済んでいない組み合わせが残っていれば、ステップＳ５１に戻ってこの組み合わせに対し上記行動頻度の加算処理を実行する。これに対し、加算処理が済んでいない組み合わせが残っていなければ、ステップＳ６において上記加算処理後のすべての行動頻度情報を集団の行動頻度情報を記憶エリア１４７に記憶したのち、集団の行動頻度情報の算出処理を終了する。
【００５９】
（３）情報提供用データの選択処理
さて、この状態でタイマ２１から開始トリガが発生するか、又は入力デバイス１８において操作者が開始トリガを入力したとする。そうすると提供情報選択装置は、ステップＳ１からステップＳ２に移行し、ここで情報提供用データの選択処理を以下のように実行する。図１１はその制御手順と制御内容を示すフローチャートである。なお、ここでは、先に述べた３つの類似度算出法のうち第３の類似度算出法と、関係性ベクトルを用いた場合を例にとって説明を行う。
【００６０】
（３−１）記憶データの検索
すなわち提供情報選択装置は、先ずステップＳ２１において、受信した開始トリガに含まれているグループＩＤとその他の情報に該当する集団行動履歴情報及び集団構成情報をそれぞれデータメモリ１４内の記憶エリア１４２，１４６より読み出す。続いてステップＳ２２において、上記読み出した集団構成情報に含まれるユーザＩＤをもとに該当する個人の嗜好情報を記憶エリア１４１から読み出す。
【００６１】
次にステップＳ２３において、情報提供用データ記憶エリア１４４から情報提供用データを読み出す。このとき、開始トリガに場所や時間帯を表す情報が含まれていた場合には、この場所や時間帯に合致したデータのみを読み出す。例えば、開始トリガの場所情報に「横浜」、時間帯情報に「１８：００〜１９：００」が含まれていたとすると、情報提供用データの立地場所情報が「横浜」に合致し、営業時間情報が「１８：００〜１９：００」を包括する範囲であるデータのみを選択的に読み出す。なお、読み出す情報提供用データは１つに絞る必要はなく、該当するデータが複数あれば複数読み出す。
【００６２】
（３−２）嗜好クラスタ情報の算出
さて、上記各情報の読み出しが終了すると、提供情報選択装置は上記選択的に読み出された情報提供用データと個人の嗜好情報をもとに、嗜好クラスタ情報を作成する処理を以下のように実行する。  
すなわち、先ずステップＳ２４により嗜好クラスタ情報を作成していない情報提供データの有無を判定する。この判定の結果、未作成の情報提供用データがあれば、ステップＳ２５において今回の処理でまだ嗜好クラスタ情報を作成していない情報提供用データを選択し、選択した情報提供用データに対する各構成員の嗜好スコアを算出する。この嗜好スコアの算出は、選択された情報提供用データに含まれるジャンル名情報と構成員のユーザＩＤとの組と合致するデータを個人の嗜好情報から検索することにより行われる。このとき、ジャンル名が複数あればそれぞれの嗜好スコアを取得し、その平均値を嗜好コアとする。
【００６３】
例えば、いまステップＳ２１により読み出された集団構成情報のユーザ情報が「ユーザＡ」及び「ユーザＢ」、ステップＳ２３により選択的に読み出された情報提供用データが「○○麻婆豆腐店」、そのジャンル名情報が「中華」、「豆腐」、そしてステップＳ２２により読み出された個人の嗜好情報に「ユーザＡ・中華＝５」、「ユーザＡ・豆腐＝３」、「ユーザＢ・中華＝４」、「ユーザＢ・豆腐＝３」が記載されていたとする。この場合、「ユーザＡ」の「○○麻婆豆腐店」に対する嗜好スコアは、「ユーザＡ・中華＝５」及び「ユーザＡ・豆腐＝３」であるため、（５＋３）／２＝４となる。同様に、「ユーザＢ」の「○○麻婆豆腐店」に対する嗜好スコアは、（３＋４）／２＝３．５となる。
【００６４】
続いてステップＳ２６において、上記算出された嗜好スコアを嗜好クラスタ番号に変換する。嗜好クラスタ番号とは、嗜好スコアの理論的な最小値・最大値の区間をｎ分割したとき、対象嗜好スコアがどの区間に該当するかを示す番号である。例えば、理論的な最小値が１、理論的な最大値が５であり、１０個の区間に分割する場合には、１．０〜１．４が区間１、１．４〜１．８が区間２、…、４．６〜５．０が区間１０の区間番号となる。この各区間番号を嗜好クラスタ番号と呼ぶ。また、変換結果をまとめたデータを嗜好クラスタ情報と呼び、「グループＩＤ、項目名、ユーザ１の嗜好クラスタ番号、ユーザ２の嗜好クラスタ番号、…、ユーザｎの嗜好クラスタ番号」が１つのデータとなる。
【００６５】
ステップＳ２５で算出された各構成員の嗜好スコアを嗜好クラスタ番号に変換するには、例えば上述のクラス分割ルールを利用する。例えば、ユーザＡの嗜好スコアが４、ユーザＢの嗜好スコアが３．５だった場合には、ユーザＡの嗜好クラスタ番号は８、ユーザＢの嗜好クラスタ番号は７となる。このように嗜好クラスタ番号に変換後、「グループＩＤ、項目名、ユーザ１の嗜好クラスタ番号、ユーザ２の嗜好クラスタ番号、…、ユーザｎの嗜好クラスタ番号」という１つのデータにまとめて、嗜好クラスタ情報記録エリア１４３に記憶させる。前述の嗜好クラスタ番号の例で、グループＩＤが「グループ１」、項目名が「○○麻婆豆腐店」だったとすると、記憶されるデータは「グループ１、○○麻婆豆腐店、嗜好クラスタ番号８、嗜好クラスタ番号７」となる。  
以上のステップＳ２５，Ｓ２６による処理は、嗜好クラスタ情報を作成していない情報提供用データがなくなるまで、各情報提供用データに対して繰り返し行われる。
【００６６】
（３−３）集団に適した嗜好クラスタ番号の組み合わせの抽出
すべての情報提供用データに対する嗜好スコアの計算処理が終了すると、提供情報選択装置は次にステップＳ２７に移行し、ここで上記算出した嗜好クラスタ情報を利用して、情報提供用データが対象集団に適しているか否かの判定、つまり対象集団に適した嗜好クラスタ番号の組み合わせの抽出を以下のように実行する。この抽出方法には２つの方法があり、以下これらの方法についてそれぞれ説明する。
【００６７】
（３−３−１）第１の抽出方法
先ず第１の抽出方法は、先に述べた先行技術文献で述べられている手法を応用したもので、各個人の嗜好スコアを利用して嗜好重心を算出すると共に、各個人の嗜好スコアと集団の行動履歴を利用して行動重心を算出し、この算出された嗜好重心と行動重心とを用いて関係性ベクトルを算出する。
【００６８】
嗜好重心は、各構成員の嗜好スコアの平均からなる。例えば、全ての項目に対するユーザＡの平均嗜好スコアが３．８、ユーザＢの平均嗜好スコアが３．２であった場合、嗜好重心は（３．８，３．２）となる。行動重心は、各嗜好スコアに集団での行動頻度を乗算したものを総行動頻度で割ったものである。例えば、中華に対する嗜好スコアが４でかつ行動頻度が３、フランス料理に対する嗜好スコアが３でかつ行動頻度が１、韓国料理に対する嗜好スコアが２でかつ行動頻度が０であった場合、
｛（４×３）＋（３×１）＋（２×０）｝／３＋１＋０＝３．７５
となる。そして、これをユーザごとに算出し、その算出結果を成分としたものを行動重心とする。関係性ベクトルとは、嗜好重心を始点とし、行動重心を終点としたベクトルである。例えば、集団が２人組であれば２次元ベクトル、３人組であれば３次元ベクトル、ｎ人組であればｎ次元ベクトルとなる。この関係性ベクトルと嗜好クラスタ情報とを照合し、該当する嗜好クラスタに属する情報提供用データを対象集団に適した情報であると判定する。
【００６９】
第１の抽出方法による処理は、具体的には以下のような手順で実行される。図１２はその処理手順と処理内容を示すフローチャートである。  
先ずステップＳ２７１１において、先にステップＳ２１により記憶エリアから読み出されたグループＩＤに該当する集団の行動頻度情報を、集団の行動頻度情報記憶部１４７から読み出す。次にステップＳ２７１２において、先にステップＳ２２により記憶エリアから読み出された個人の嗜好情報と、上記ステップＳ２７１１において読み出された集団の行動頻度情報とから、以下のように関係性ベクトルを算出する。
【００７０】
すなわち、先ず個人の嗜好情報を用いて嗜好重心を算出する。嗜好重心の算出は、先に述べたように各構成員の嗜好スコアの平均を求めることによりなされる。続いて個人の嗜好情報と集団の行動頻度情報とから行動重心を算出する。行動重心の算出は、先に述べたように各嗜好スコアに集団での行動頻度を乗算したものを総行動頻度で割ることによりなされる。最後に関係性ベクトルを算出する。関係性ベクトルは嗜好重心を始点とし、行動重心を終点としたベクトルとなる。例えば、嗜好重心が（３．８，３．２）、行動重心が（４．０，３．９）だった場合、関係性ベクトルは（０．２，０．７）となる。
【００７１】
次にステップＳ２７１３において、上記ステップＳ２７１２により算出された関係性ベクトルと、前記ステップＳ２４〜Ｓ２６により嗜好クラスタ情報を作成する際に用いたクラス分割ルールとから、対象集団に適した嗜好クラスタ番号の組を抽出する。図１４はこの抽出処理を示したもので、上記クラス分割ルールにより分割した場合の２人組の嗜好クラスタ番号と関係性ベクトルとを２次元平面上に示したものである。なお、関係性ベクトルはそのまま使用するのではなく、ｎ倍（例えば、−∞≦ｎ≦∞）したベクトルの軌跡（以下、関係性ベクトルの軌跡と呼ぶ）を利用する。この関係性ベクトルの軌跡が通過する嗜好クラスタ番号の組に属する情報が、対象集団にとって適した情報が属する嗜好クラスタ番号の組（以下、嗜好クラスタ番号適合組と呼ぶ）であると判定する。図１４の例では、網掛け表示された嗜好クラスタ番号の組合せ（（１０，９），（８，９）等）が嗜好クラスタ番号適合組である。
【００７２】
次にステップＳ２７１４において、先にステップＳ２４〜Ｓ２６により作成された嗜好クラスタ情報のうち、対象集団にとって適した嗜好クラスタ番号の組が存在するか否かの判定を行っていない嗜好クラスタ情報を１つ選択する。そして、ステップＳ２７１５において、上記ステップＳ２７１４で選択された未判定の嗜好クラスタ情報が、嗜好クラスタ番号適合組情報に含まれる嗜好クラスタ番号の組を有しているか否かを判定する。この判定の結果、該当する嗜好クラスタ番号を有していた場合には、この選択された嗜好クラスタ情報を保持し、有していない場合は破棄する。
【００７３】
例えば、嗜好クラスタ番号組情報が「（９，９）」、「（１０，９）」、「（９，１０）」、「（１０，１０）」であり、選択された嗜好クラスタ情報の嗜好クラスタ番号情報が「（９，１０）」であった場合、この選択された嗜好クラスタ情報は保持される。同じ条件で、選択された嗜好クラスタ情報の嗜好クラスタ番号情報が「（８，８）」であった場合には、この選択された嗜好クラスタ情報は破棄される。
【００７４】
最後に未判定の嗜好クラスタ情報が残っているか否かをステップＳ２７１６で判定し、残っていればステップＳ２７１４に戻って次の未判定の嗜好クラスタ情報を１つ選択して上記ステップＳ２７１５による判定処理を行う。以後同様に、未判定のすべての嗜好クラスタ情報についてそれぞれ判定が行われ、未判定の嗜好クラスタ情報がなくなれば処理を終了する。
【００７５】
（３−３−２）第２の抽出方法
第２の抽出方法は、各嗜好クラスタ番号の組の出現回数を算出し、その出現回数の値に応じて、集団に適している情報が属する嗜好クラスタの組み合わせか否かを判定するものである。図１５は、集団の構成員が２人の時の嗜好クラスタ番号と各嗜好クラスタ番号の組み合わせの行動頻度が“１”以上のもの（クラスタ内の数値は行動頻度）を判定対象にした例を図示したものである。すなわち、予め設定したしきい値以上の行動頻度が発生する嗜好クラスタ番号の組を抽出し、その嗜好クラスタ番号の組を有する情報提供用データを対象集団にとって適した情報であると判定する。
【００７６】
この第２の抽出方法による処理は具体的に以下のような手順で実行される。図１３はその処理手順と処理内容を示すフローチャートである。  
先ずステップＳ２７２１〜ステップＳ２７２３において、各嗜好クラスタ番号の組の出現回数を算出する。出現回数は０から始まり、該当する嗜好クラスタ番号の組が現れるたびに１点加算をする。例えば、嗜好クラスタ番号の組が「（１０，１０）」、「（１０，１０）」、「（９，９）」の３組だった場合には、「（１０，１０）」の出現回数は「２回」、「（９，９）」の出現回数は「１回」となる。この出現回数はＳ２７２１〜Ｓ２７２３の処理を繰り返している間は保持され続ける。
【００７７】
具体的には、先ずステップＳ２７２１により、先にステップＳ２４〜Ｓ２６で作成した嗜好クラスタ情報のうち、まだ行動頻度算出に使用していない嗜好クラスタ情報を選択する。続いてステップＳ２７２２により、上記ステップＳ２７２１で選択された嗜好クラスタ情報が有する嗜好クラスタ番号の組の出現回数の加算処理を行う。すなわち、該当する嗜好クラスタ番号の組に１点加算する。例えば、選択された嗜好クラスタ情報が持つ嗜好クラスタ番号の組が「（１０，１０）」であり、保持されている「（１０，１０）」の組み合わせの出現回数が「１回」で合った場合、「（１０，１０）」の組み合わせの出現回数を「２回」とする。最後にステップＳ２７２３により、上記加算処理のためにまだ選択されていない嗜好クラスタ情報が存在するか否かを判定する。この結果、未選択の嗜好クラスタ情報が存在すればＳ２７２１に戻って上記加算処理が実行される。
【００７８】
次にステップＳ２７２４〜Ｓ２７２７において、各嗜好クラスタ情報が集団に適した情報が属される嗜好クラスタ番号の組を有しているか否かを判定する。すなわち、上記ステップＳ２７２１〜Ｓ２７２３により算出された嗜好クラスタ番号組出現回数情報を参照し、選択された嗜好クラスタ情報が持つ嗜好クラスタ番号の組の出現回数が予め指定されたしきい値を上回っていればそのデータを保持し、下回っていればそのデータを破棄する。しきい値は、例えば出現回数１回以上といった値に設定される。この処理を、全ての嗜好クラスタ情報に対し繰り返し実行する。
【００７９】
具体的には、先ずステップＳ２７２４において、先にステップＳ２４〜Ｓ２６で作成した嗜好クラスタ情報のうち、まだ判定を行っていない嗜好クラスタ情報を選択する。次にステップＳ２７２５において、上記選択された嗜好クラスタ情報が持つ嗜好クラスタ番号の組の出現回数を、上記ステップＳ２７２１〜Ｓ２７２３により算出された嗜好クラスタ番号組出現回数情報から取得する。そして、取得した出現回数がしきい値を上回っているか否かを判別する。しきい値は、上述したように出現回数１回以上といった値に設定される。上記判定の結果、出現回数がしきい値を上回っていれば、ステップＳ２７２６において、上記選択されたデータを保持したのちステップＳ２７２７へ移行し、上回っていなければそのままステップＳ２７２７に移行する。
【００８０】
ステップＳ２７２７では、嗜好クラスタ情報のうち今回の判定処理でまだ判定が行われていないデータが存在するか否かが判定される。判定が行われていないデータが存在すれば、ステップＳ２７２４に戻って上記ステップＳ２７２５〜Ｓ２７２６の処理を繰り返す。これに対し存在しなければ、集団に適した嗜好クラスタ番号の組み合わせ集出処理を終了する。
【００８１】
（３−４）情報提供データの選択とその出力
上記ステップＳ２７による処理が終了すると、提供情報選択装置はステップＳ２８に移行する。そして、ステップＳ２７において抽出された嗜好クラスタ情報をもとに、対象集団に適した情報提供データを取得する。具体的には、ステップＳ２７により抽出された嗜好クラスタ情報と同一の項目名を有する情報提供用データを、データメモリ１４の情報提供用データ記憶部１４４から選択的に読み出す。このとき、ステップＳ２７により抽出された嗜好クラスタ情報が複数存在する場合には、これらの嗜好クラスタ情報と同一の項目名を有する情報提供用データを全て情報提供用データ記憶部１４４から読み出す。
【００８２】
提供情報選択装置は、この読み出された情報提供用データを、対象集団に適した情報提供用データとして、データメモリ１４内の集団に適した情報記録エリア１４５に記憶させる。また、必要があれば上記記憶された集団に適した情報提供用データを、入出力インタフェース１７を介して表示デバイス１９に表示させ、さらに通信インタフェース１６から情報利用者の端末へ送信する。
【００８３】
以上詳述したようにこの実施形態では、集団に提供する情報の集合である情報提供用データ集合と、集団の構成を表す情報と、集団を構成する各個人の嗜好を表す情報を取得してデータメモリ１４の記憶エリアにそれぞれ格納すると共に、集団の行動履歴情報を取得してこの情報をもとに集団の行動頻度を算出して記憶エリアに格納する。そして、開始トリガが発生した場合に、この開始トリガにより指定されたグループＩＤに該当する集団に所属する個人の嗜好情報と、上記開始トリガにより指定された立地場所及び営業時間に該当する情報提供用データとをそれぞれ検索し、この検索された情報提供用データに対する個人の嗜好スコアを算出してこの嗜好スコアを嗜好クラスタ番号に変換した嗜好クラスタ情報を作成する。そして、この嗜好クラスタ情報を用いて、情報提供用データと集団の行動履歴データとの嗜好空間における類似度を算出し、この類似度をもとに情報提供用データが対象集団に適した情報であるか否かを判定するようにしている。
【００８４】
したがって、集団にとって適する情報提供用データを選択する場合に、集団の各構成員の嗜好に集団の行動履歴に含まれる対象集団にとって不適でない情報を加味し、さらに行動履歴に集団の各構成員の嗜好を加味することができる。このため、集団にとって適するデータだけでなく不適切なデータも多量に含んでしまったり、不適切な情報を除去しようとして適する情報も除去されてしまうといった、トレードオフの関係を解決することができ、これにより集団にとって適する情報提供用データの選択精度を高めることが可能となる。
【００８５】
なお、この発明は上記実施形態に限定されるものではない。例えば、前記実施形態では２人により構成される集団を対象として説明したが、３人以上であってもこの発明は同様に適用可能である。また、前記実施形態では情報提供用データとして飲食店に関する情報を取り扱う場合を例に説明したが、その他商品やサービス、ニュース、広告等に関する情報を取り扱うことも可能である。
【００８６】
その他、提供情報選択装置の設置場所や構成、情報選択のための処理手順と処理内容等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。  
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００８７】
１…入出力インタフェース部、２…記憶部、３…情報選択部、４…集団の行動頻度情報算出部、５…通信インタフェース部、６…タイマ部、１１…中央処理ユニット（ＣＰＵ）、１２…バス、１３…プログラムメモリ、１３１…入出力制御プログラム、１３２…嗜好重心算出プログラム、１３３…行動重心算出プログラム、１３４…集合の行動頻度算出プログラム、１３５…クラスタ分別プログラム、１３６…集団に適した情報選択プログラム、１４…データメモリ、１４１…個人の嗜好情報記憶エリア、１４２…集団の行動履歴情報記憶エリア、１４３…嗜好クラスタ情報記憶エリア、１４４…情報提供用データ記憶エリア、１４５…集団に適した情報記憶エリア、１４６…集団構成情報記憶エリア、１４７…集団の行動頻度情報記憶エリア、１６…通信インタフェース、１７…入出力インタフェース、１８…入力デバイス、１９…表示デバイス、２０…タイマ・インタフェース、２１…タイマ。
【図１】
0005508987.tif 000004
【図２】
0005508987.tif 000005
【図３】
0005508987.tif 000006
【図４】
0005508987.tif 000007
【図５】
0005508987.tif 000008
【図６】
0005508987.tif 000009
【図７】
0005508987.tif 000010
【図８】
0005508987.tif 000011
【図９】
0005508987.tif 000012
【図１０】
0005508987.tif 000013
【図１１】
0005508987.tif 000014
【図１２】
0005508987.tif 000015
【図１３】
0005508987.tif 000016
【図１４】
0005508987.tif 000017
【図１５】
0005508987.tif 000018
【図１６】
0005508987.tif 000019
【図１７】
0005508987.tif 000020