消費者情報処理装置
【課題】時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用する。
【解決手段】情報処理装置400は、歌唱履歴データベース3131より取得された歌唱履歴情報を用いて、消費者ごとに第1特徴ベクトルを生成する。そして、予め実行されたクラスタリングの結果に対応して予め嗜好データベース3132に記憶された、消費者IDとユニットとの対応付けを、消費者ごとに生成された第1特徴ベクトルに対して適用し、各ユニットのベクトル状態量を、各ユニットごとに決定する。そして、各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルをクラスタリングし、各消費者IDに複数のユニットのいずれかを対応付ける。
【解決手段】情報処理装置400は、歌唱履歴データベース3131より取得された歌唱履歴情報を用いて、消費者ごとに第1特徴ベクトルを生成する。そして、予め実行されたクラスタリングの結果に対応して予め嗜好データベース3132に記憶された、消費者IDとユニットとの対応付けを、消費者ごとに生成された第1特徴ベクトルに対して適用し、各ユニットのベクトル状態量を、各ユニットごとに決定する。そして、各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルをクラスタリングし、各消費者IDに複数のユニットのいずれかを対応付ける。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の消費者の識別情報を複数のユニットにクラスタリングする、消費者情報処理装置に関する。
【背景技術】
【0002】
従来、情報のクラスタリングを行う技術として、例えば特許文献1に記載の従来技術が開示されている。この従来技術では、情報分類装置の制御部が、学習時の処理と、分類処理時の処理とで異なる処理を実行する。上記学習時の処理には、機能的には、前処理部と、特徴量演算部と、クラスタ生成部と、学習処理部とが含まれている。
【0003】
前処理部は、学習画像データから顔部分を認識し、当該顔部分の画像を正規化する。特徴量演算部は、前処理部が出力する画像に基づいて、分類項目との関係において定められる、ベクトル量である特徴量情報を演算する。クラスタ生成部は、クラスタリングにより特徴量情報を用いた学習用画像データのクラスタ分類を行う。具体的には、クラスタ生成部は、初めに、複数の特徴量情報のそれぞれについて、特徴量空間の座標値を演算する。次に、クラスタ生成部は、予め指定された、複数のユニットに相当する複数のクラスタの、代表ベクトルに相当するクラスタ中心を決定する。
【0004】
このクラスタ生成部によるクラスタ中心の決定では、まず、初期値のクラスタ中心が例えばランダムに設定される。次に、各学習画像データから得られた特徴量情報が、それぞれ特徴量空間内で最も近いクラスタ中心に関連づけられる。そして、各クラスタ中心ごとに、関連づけられた特徴量情報に係る特徴量空間の重心座標が演算される。そして、その演算された重心座標が、新たなクラスタ中心とされる。クラスタ生成部は、これらの処理を、新たなクラスタ中心が、元のクラスタ中心と変化がなくなるまで繰り返す。これにより、各クラスタのクラスタ中心を決定すると共に、各学習画像データに係る特徴量情報を、特徴量空間で最も近いクラスタ中心に関連づけることができる。
【0005】
そして、クラスタ生成部は、各クラスタ中心ごとに、クラスタ中心に関連づけられた特徴量情報を、学習処理部へ出力する。学習処理部は、クラスタ生成部より入力された各学習画像データに係る特徴量情報で特定された学習データベースの学習を行う。以上のように学習が行われる結果、学習用に用意された複数の画像データについて、分類項目との関係において定められたクラスタに対応した複数の学習データベースが生成される。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2007−48172号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記従来技術において、情報分類装置の制御部が再び学習時の処理を実行する際には、上記と同様に、初期値のクラスタ中心はランダムに設定される。そして、このランダムに設定されたクラスタ中心を初期値として用いて、新たなクラスタリングが行われる。
【0008】
ここで、例えばある時点において消費者により消費される商品構成に対する消費者の消費行動に基づいて、過去のクラスタリングの結果を活用して、複数の消費者の識別情報を複数のユニットに新たにクラスタリングする場合を考える。この場合、上記従来技術のように、ランダムに設定したベクトルを各ユニットの代表ベクトルの初期値として用いて新たなクラスタリングを行うと、各消費者の識別情報が過去のクリスタリングにおいて振り分けられたユニットと異なるユニットに振り分けられうる。このため、過去のクラスタリングの結果を継承できないおそれがあった。
【0009】
上記を回避するために、過去のクラスタリングの結果を継承し活用する際に、各ユニットの代表ベクトルを今回のクラスタリングのために継承する手法も考えられる。しかしながらこの手法では、時間の経過により消費される商品構成が変化した場合には、ユニットの属性の継承がうまくいかなくなるおそれがあった。
【0010】
本発明の目的は、時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる消費者情報処理装置を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するために、第1の発明は、複数の消費者の識別情報を複数のユニットにクラスタリングする消費者情報処理装置であって、商品の識別情報と当該商品に対する複数の消費者の消費行動履歴とを対応付けた消費履歴情報を各商品ごとに記憶した消費者データベースにアクセスし、複数の商品に対する複数の消費者の消費履歴情報を取得する履歴取得手段と、前記履歴取得手段により取得された前記複数の商品に対する前記複数の消費者の前記消費履歴情報を用いて、新たなクラスタリングを行うために用意された第1商品構成に対する前記消費者の消費行動を表す第1特徴ベクトルを生成し、生成した第1特徴ベクトルと当該消費者の識別情報とを対応付ける第1特徴ベクトル生成手段と、予め実行されたクラスタリングの結果に対応して予め記憶された、前記消費者の識別情報と前記ユニットとの対応付けを、第1特徴ベクトル生成手段により前記消費者ごとに生成された第1特徴ベクトルに対して適用し、各ユニットのベクトル状態量を、各ユニットごとに決定する状態量決定手段と、前記状態量決定手段で各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記第1特徴ベクトルをクラスタリングし、各消費者の識別情報に前記複数のユニットのいずれかを対応付ける第1クラスタリング手段とを有する。
【0012】
本願第1発明においては、消費者データベースに各消費者の消費履歴情報が記憶されている。履歴取得手段によって、複数の商品に対する複数の消費者の消費履歴情報が消費者データベースから取得される。取得された消費履歴情報を用いて、第1特徴ベクトル生成手段が消費者の第1特徴ベクトルを生成する。第1特徴ベクトルは、新たなクラスタリングを行うために用意された商品構成に対する、消費者の消費行動を表すベクトルである。生成された第1特徴ベクトルは、第1特徴ベクトル生成手段によって、当該第1特徴ベクトルに対応する消費者の識別情報に対し対応付けられる。
【0013】
上記のようにして消費者ごとに生成された第1特徴ベクトルを用いて、状態量決定手段がベクトル状態量を決定する。具体的には、新たに実行するクラスタリングに先立ち行われたクラスタリングの結果に対応して、消費者の識別情報とユニットとの対応付けが、予め記憶されている。この対応付けを用いることで、上記消費者ごとに生成された第1特徴ベクトルを、各ユニットごとに集計することができる。集計された第1特徴ベクトルの値を用いて、各ユニットごとに上記ベクトル状態量が決定される。この決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用い、第1クラスタリング手段が、上記複数の第1特徴ベクトルをクラスタリングする。これにより、各消費者の識別情報に対し、複数のユニットのいずれかを対応付けることができる。
【0014】
以上のようにして、本願第1発明においては、過去のクラスタリングの結果を活用して新たなクラスタリングを行う。これにより、ランダムベクトルを初期値として用いて新たなクラスタリングを行う場合と異なり、過去のクラスタリング時から長期間が経過したり商品構成が大きく変動した場合等であっても、各消費者の識別情報が振り分けられるユニットが大きく異ならず、概ね同等のユニットとなる。
【0015】
特に、過去のクラスタリングの結果を継承し活用する際に、各ユニットの代表ベクトルを今回のクラスタリングのために継承する手法では、時間の経過により消費される商品構成が変化するため、継承がうまくいかない。本願第1発明では、各ユニットの代表ベクトルを継承するのではなく、各ユニットに所属する消費者を継承し、当該消費者について新しい商品構成により特徴ベクトルを算出し、その特徴ベクトルに基づくベクトル状態量を用いて新たなクラスタリングを行う。これにより、上記と異なり、時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0016】
第2の発明は、上記第1発明において、複数の商品に対する複数の消費者の前記消費履歴情報を用いて、予め定められた初期クラスタリング用商品構成に対する各消費者の消費行動を表す初期クラスタリング用特徴ベクトルを生成し、生成した初期クラスタリング用特徴ベクトルと当該消費者の識別情報とを対応付ける第2特徴ベクトル生成手段と、予め用意された、前記複数のユニットそれぞれの初期クラスタリング用代表ベクトルを用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記初期クラスタリング用特徴ベクトルをクラスタリングする第2クラスタリング手段とをさらに有し、前記状態量決定手段は、前記第2クラスタリング手段による前記初期クラスタリング用特徴ベクトルのクラスタリング結果に対応して記憶された、複数の消費者の識別情報と前記複数のユニットとの初期的対応付けを、前記第1特徴ベクトル生成手段により各消費者ごとに生成された前記第1特徴ベクトルに対して適用し、各ユニットの前記ベクトル状態量を、各ユニットごとに決定することを特徴とする。
【0017】
本願第2発明の消費者情報処理装置は、過去に自らが行ったクラスタリングの結果を活用して新たなクラスタリングを行う。すなわち、過去のクラスタリング実行時には、所定の初期クラスタリング用商品構成に対する初期クラスタリング用特徴ベクトルが第2特徴ベクトル生成手段によって生成され、生成された初期クラスタリング用特徴ベクトルと当該ベクトルに対応する各消費者の識別情報とが対応付けられる。このようにして複数の消費者の識別情報にそれぞれ対応付けられた複数の初期クラスタリング用特徴ベクトルは、各ユニットに対し予め用意された初期クラスタリング用代表ベクトルを用いて、第2クラスタリング手段によってクラスタリングされる。このクラスタリングにより、複数の消費者の識別情報と複数のユニットのいずれかとが対応付けられて記憶される。
【0018】
上記のようにして記憶された消費者の識別情報と各ユニットとの対応付けが、状態量決定手段によって、各消費者ごとに生成された第1特徴ベクトルに適用される。これによって、各ユニットのベクトル状態量が、各ユニットごとに決定される。
【0019】
以上の結果、本願第2発明の消費者情報処理装置は、時間の経過により消費される商品構成が変化した場合でも、自らの行った過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0020】
第3の発明は、上記第2発明において、複数の商品に対する複数の消費者の前記消費履歴情報を参照し、全ての前記初期クラスタリング用商品構成に対する前記初期クラスタリング用特徴ベクトルが0である消費者、若しくは、所定期間内における消費行動の回数が所定のしきい値以下である消費者、に対応する前記初期クラスタリング用特徴ベクトルを、前記第2クラスタリング手段でのクラスタリングの対象から除外する、除外処理手段を有することを特徴とする。
【0021】
データとしての利用価値が乏しい情報をノイズとしてクラスタリング対象から除外することにより、クラスタリングにおける精度を向上すると共に、処理時間を短縮することができる。
【0022】
第4の発明は、上記第1発明において、前記状態量決定手段は、各ユニットに属する全消費者の前記第1特徴ベクトルの平均値を算出し、当該平均値を前記ベクトル状態量に決定することを特徴とする。
【0023】
本願第4発明においては、ベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの平均値を用いる。これにより、過去のクラスタリングの結果を継承しつつ、新しい商品構成に対応した各ユニットごとの最新の消費傾向を反映させたクラスタリングを実行することができる。
【0024】
第5の発明は、上記第1発明において、前記状態量決定手段は、各ユニットに属する全消費者の前記第1特徴ベクトルの中央値を選定し、当該中央値を前記ベクトル状態量に決定することを特徴とする。
【0025】
本願第5発明においては、ベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの中央値を用いる。これにより、過去のクラスタリングの結果を継承しつつ、新しい商品構成に対応した各ユニットごとの最新の消費傾向を反映させたクラスタリングを実行することができる。特に、全消費者の第1特徴ベクトルの平均値でなく中央値を用いることにより、ユニットにおける第1特徴ベクトルの値の分布が偏っていた場合に、その偏り傾向を確実に反映させたクラスタリングを行うことができる。
【発明の効果】
【0026】
本発明によれば、時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【図面の簡単な説明】
【0027】
【図1】本発明の第1の実施形態の消費者情報処理装置を備えた商品推奨システムの全体構成を表すシステム構成図である。
【図2】歌唱履歴データベースの記憶内容の一例を概念的に表す表である。
【図3】嗜好データベースの記憶内容の一例を概念的に表す表である。
【図4】初期クラスタリング用の特徴ベクトルを生成する手法の一例を説明する説明図である。
【図5】情報処理装置の制御部が実行する、クラスタリングに関する制御手順を表すフローチャートである。
【図6】ステップS100の詳細手順を表すフローチャートである。
【図7】ステップS200の詳細手順を表すフローチャートである。
【図8】情報処理装置の制御部が実行する、商品推奨に関する制御手順を表すフローチャートである。
【図9】各ユニットに属する全消費者の第1特徴ベクトルの中央値をベクトル状態量に決定する変形例において、ステップS200の詳細手順を表すフローチャートである。
【図10】各ユニットに属する所定数の消費者の第1特徴ベクトルに基づきベクトル状態量を決定する変形例において、ステップS200の詳細手順を表すフローチャートである。
【図11】本発明の第2の実施形態の消費者情報処理装置を備えた市場分析システムの全体構成を表すシステム構成図である。
【図12】情報処理装置のディスプレイに表示された分析画面の一例を表す説明図である。
【図13】情報処理装置の制御部が実行する、分析に関する制御手順を表すフローチャートである。
【発明を実施するための形態】
【0028】
以下、本発明の実施の形態を図面を参照しつつ説明する。まず、本発明の第1の実施形態について説明する。
【0029】
図1を用いて、第1の実施形態の消費者情報処理装置を備えた商品推奨システムを説明する。
【0030】
図1において、商品推奨システム1は、カラオケルームKRに設置されたカラオケ装置100と、楽曲配信会社200と、DBサーバ300と、消費者情報処理装置としての情報処理装置400と、WEBサーバ500と、PC端末600と、広告配信会社700とを有している。
【0031】
カラオケ装置100は、カラオケ装置本体110と、表示装置120と、マイク115とを有している。カラオケ装置本体110は、例えばWide Area Network(WAN)等のネットワークNW1を介し楽曲配信会社200から配信される楽曲データを再生する。表示装置120は、楽曲データの再生時に歌唱に係る映像を表示する。マイク115は、カラオケ装置本体110に接続され、カラオケ利用者である消費者の歌唱の用に供する。消費者は、この例では所定のカラオケ施設における会員として登録されている。
【0032】
ここで、楽曲配信会社200からカラオケ装置本体110に配信される楽曲データは、商品に含まれる。すなわち、カラオケにおいて消費者が楽曲データを歌唱することは、商品の消費に含まれる。つまり、歌唱行動は、消費行動に含まれる。
【0033】
上記構成であるカラオケ装置100は、上記ネットワークNW1を介しDBサーバ300に接続されている。
【0034】
DBサーバ300は、制御部301と、通信制御部302,303と、記憶部310とを有している。
【0035】
制御部301は、図示しないCPU及びRAM、ROM等のメモリを備えている。この制御部301は、RAMの一時記憶機能を利用しつつ、記憶部310に予め記憶された各種プログラムを実行する。これにより、DBサーバ300全体の制御を行う。
【0036】
通信制御部302は、上記カラオケ装置本体110との間で上記ネットワークNW1を介し行われる情報通信の制御を行う。通信制御部303は、上記情報処理装置400やWEBサーバ500との間で、例えばLocal Area Network(LAN)等のネットワークNW2を介し行われる情報通信の制御を行う。
【0037】
記憶部310は、例えばHard Disk Drive(HDD)等で構成されている。この記憶部310は、OS記憶エリア311と、RDBMS記憶エリア312と、データベース記憶エリア313と、商品構成の情報記憶エリア314とを備えている。
【0038】
OS記憶エリア311には、所定のOperating System(OS)が記憶されている。OSは、コンピュータシステム全体を管理するソウトウェアである。
【0039】
RDBMS記憶エリア312には、所定のRelational DetaBase Management System(RDBMS)が記憶されている。RDBMSは、いわゆるリレーショナルデータベースを管理するソフトウェアである。
【0040】
データベース記憶エリア313には、会員データベース、歌手データベース、消費者データベースとしての歌唱履歴データベース3131(後述の図2参照)、嗜好データベース3132(後述の図3参照)、及び広告データベースが記憶されている。
【0041】
会員データベースには、複数の消費者の会員情報が記憶されている。消費者の会員情報には、例えば消費者の識別情報である消費者ID、性別、及び生年月日等が含まれている。
【0042】
歌手データベースには、各歌手ごとに、楽曲データの歌手の識別情報である歌手ID、及び、歌手名が記憶されている。歌手名は、歌手の名称である。
【0043】
広告データベースには、各消費者ごとに、上記消費者IDと、当該消費者のPC端末600に対して出力する推奨情報として決定された、特定の商品を推奨するための推奨情報の識別情報である広告IDとが記憶されている。なお、この広告データベースに、推奨情報自体を記憶させるようにしてもよい。
【0044】
商品構成の情報記憶エリア314には、後述するクラスタリングのために用意された商品構成に係わる情報が記憶されている。本実施形態では、上記商品構成を、歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データとしている。そして、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDが、この商品構成の情報記憶エリア314に記憶されている。なお、歌手別歌唱回数ランキングは時間の経過により変化するので、一定の期間が経過したら、その時点における歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDを、この商品構成の情報記憶エリア314に記憶させる。
【0045】
上記構成であるDBサーバ300は、上記ネットワークNW2を介し情報処理装置400及びWEBサーバ500に接続されている。
【0046】
情報処理装置400には、ディスプレイ420、キーボード421、及びマウス422が接続されている。また、情報処理装置400は、制御部401と、通信制御部402と、出力制御部403と、入力制御部404と、記憶部410とを有している。
【0047】
制御部401は、図示しないCPU及びRAM、ROM等のメモリを備えている。この制御部401は、RAMの一時記憶機能を利用しつつ、記憶部410に予め記憶された各種プログラムを実行する。これにより、情報処理装置400全体の制御を行う。
【0048】
通信制御部402は、上記DBサーバ300やWEBサーバ500との間で上記ネットワークNW2を介し行われる情報通信の制御を行う。
【0049】
出力制御部403は、上記ディスプレイ420への映像信号の出力に関する制御を行う。入力制御部404は、上記キーボード421やマウス422を介した情報の入力に関する制御を行う。
【0050】
記憶部410は、例えばHDD等で構成されている。この記憶部410は、所定のOSを記憶したOS記憶エリア411と、プログラム記憶エリア412とを備えている。
【0051】
プログラム記憶エリア412には、クラスタリング処理プログラム、及び、広告決定処理プログラムが記憶されている。
【0052】
クラスタリング処理プログラムは、制御部401に例えば公知のK−means法やSelf Organizing Maps(SOM)法などのクラスタリング手法を用いて、複数の消費者IDを、予め定められた複数のユニットにクラスタリングさせるためのプログラムである。
【0053】
広告決定処理プログラムは、上記DBサーバ300の広告データベースを、制御部401に更新させるためのプログラムである。
【0054】
一方、WEBサーバ500は、制御部501と、通信制御部502,503と、記憶部510とを有している。
【0055】
制御部501は、図示しないCPU及びRAM、ROM等のメモリを備えている。この制御部501は、RAMの一時記憶機能を利用しつつ、記憶部510に予め記憶された各種プログラムを実行する。これにより、WEBサーバ500全体の制御を行う。
【0056】
通信制御部502は、上記DBサーバ300や情報処理端末400との間で上記ネットワークNW2を介し行われる情報通信の制御を行う。通信制御部503は、上記PC端末600や広告配信会社700との間で、例えばWAN等のネットワークNW3を介し行われる情報通信の制御を行う。
【0057】
記憶部510は、例えばHDD等で構成されている。この記憶部510は、所定のOSを記憶したOS記憶エリア511と、WEBサーバプログラムを記憶したプログラム記憶エリア512と、ログイン情報記憶エリア513とを備えている。
【0058】
WEBサーバプログラムは、所定のウェブブラウザに対し、Hyper Text Markup Language(HTML)や画像等のオブジェクトの表示を提供するプログラムである。
【0059】
また、この記憶部510の適宜の領域には、上記ネットワークNW3を介し広告配信会社700から配信された、上記特定の商品に係わる推奨情報が記憶される。
【0060】
上記構成であるWEBサーバ600は、上記ネットワークNW3を介しPC端末600に接続されている。
【0061】
PC端末600は、複数の消費者それぞれにより所有されるPC端末である。このPC端末600は、表示手段としてのディスプレイ620と、キーボード621と、マウス622とを有している。
【0062】
図2に、上記歌唱履歴データベース3131の記憶内容の一例を示す。
【0063】
図2に示すように、歌唱履歴データベース3131には、各楽曲データごとに、楽曲データの識別情報である楽曲IDと、上記歌手IDと、当該楽曲データに対する複数の消費者の歌唱行動履歴とをそれぞれ対応付けた歌唱履歴情報が記憶されている。上記歌唱行動履歴には、楽曲データを歌唱した消費者の消費者IDと、歌唱行動日時とが含まれている。歌唱行動日時は、消費者が楽曲データを歌唱した日時情報である。なお、歌唱行動履歴が消費行動履歴に相当し、歌唱履歴情報が消費履歴情報に相当する。
【0064】
図3に、上記嗜好データベース3132の記憶内容の一例を示す。
【0065】
図3に示すように、嗜好データベース3132には、情報処理装置400の制御部401により実行されたクラスタリングの結果に対応した、消費者IDとユニットとの対応付けが記憶されている。すなわち、各消費者ごとに、消費者IDと、当該消費者IDがクラスタリングにより振り分けられたユニットの識別情報である嗜好IDとが対応付けられて記憶されている。
【0066】
情報処理装置400の制御部401は、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合と、当該消費者IDとユニットとの対応付けが記憶されている場合とで、異なる処理を実行する。
【0067】
まず、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合に行われる処理について説明する。
【0068】
嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合には、情報処理装置400の制御部401は、まず、歌唱履歴データベース3131に記憶された歌唱履歴情報を取得する。そして、その歌唱履歴情報を用いて、特徴ベクトルを生成する。特徴ベクトルとは、クラスタリングのために用意された上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する各消費者の歌唱行動を表すベクトルである。言い換えれば、特徴ベクトルは、各消費者の歌手の嗜好を表すベクトルである。
【0069】
上記取得された歌唱履歴情報には、上述したように、楽曲ID、歌手ID、消費者ID、及び歌唱行動日時が含まれている。したがって、上記商品構成の情報記憶エリア314から上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDを取得して、当該歌手IDをキーとすることにより、上記取得された歌唱履歴情報に含まれる当該歌手IDに対応付けられた消費者IDを検出することができる。すなわち、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対して歌唱行動を起こした消費者の消費者IDを検出することができる。
【0070】
なお、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合に用意された、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが、初期クラスタリング用商品構成に相当する。また、当該歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する特徴ベクトルが、初期クラスタリング用特徴ベクトルに相当する。以下適宜、この特徴ベクトルを、初期クラスタリング用の特徴ベクトルと称する。
【0071】
図4を用いて、上記初期クラスタリング用の特徴ベクトルを生成する手法の一例を説明する。本実施形態においては、情報処理装置400の記憶部410の適宜の領域に記憶されたテーブル4101を用いて、初期クラスタリング用の特徴ベクトルの生成が行われる。
【0072】
図4において、テーブル4101には、1人の消費者につき横一列の段を使用して、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する、上記取得された歌唱履歴情報に含まれる各消費者IDに係わる各消費者の歌唱行動の有無が記録されている。図4に示す例では、当該歌唱行動がある場合が「1」、当該歌唱行動がない場合が「0」と記録されている。
【0073】
すなわち、まず、このテーブル4101には、上記商品構成の情報記憶エリア314から取得された複数の歌手IDと、上記歌唱履歴データベース3131から取得された歌唱履歴情報に含まれる複数の消費者IDとが、対応付けられて記録される。その記録された複数の歌手IDをキーとして、上記取得された歌唱履歴情報に含まれる当該歌手IDに対応付けられた消費者IDがそれぞれ検出される。なお、このとき検出された消費者IDは、上記キーとなった歌手IDに係わる歌手の楽曲データに対して歌唱行動を起こした消費者の消費者IDである。その後、上記の検出結果に応じて、テーブル4101に「1」又は「0」が記録される。
【0074】
なお、テーブル4101における、1人の消費者に係わる横一列の段に記録されたデータは、当該消費者の初期クラスタリング用の特徴ベクトルに相当する。つまり、特徴ベクトルは、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDをベクトルの構成要素とし、「1」又は「0」を当該要素の値としたベクトルである。例えば、消費者ID「1」に係わる消費者の初期クラスタリング用の特徴ベクトルに関しての要素及びその値は、歌手ID「15410」で「1」、歌手ID「9045」で「0」、歌手ID「120」で「1」、歌手ID「7985」で「0」、歌手ID「354」で「0」、歌手ID「8460」で「0」、歌手ID「2368」で「1」・・・となる。つまり、消費者ID「1」に係わる消費者の初期クラスタリング用の特徴ベクトルは、<1,0,1,0,0,0,1・・・>となる。このようにテーブル4101を用いることで、初期クラスタリング用の特徴ベクトルと、消費者IDとを対応付けて記録することができる。
【0075】
情報処理装置400の制御部401は、次に、複数の初期クラスタリング用の特徴ベクトルを複数のユニットにクラスタリングするために、各ユニットを代表する代表ベクトルを、予め用意する。本実施形態では、図示しない乱数発生器を用いて乱数を発生させて、この乱数に基づいて、各ユニットごとにベクトルを生成する。そして、その各ユニットごとに生成したベクトルを、各ユニットの代表ベクトルの初期値に設定する。
【0076】
なお、この予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合に予め用意した代表ベクトルが、初期クラスタリング用代表ベクトルに相当する。以下適宜、この代表ベクトルを、初期クラスタリング用の代表ベクトルと称する。
【0077】
その後、情報処理装置400の制御部401は、上記設定した複数のユニットそれぞれの初期クラスタリング用の代表ベクトルを用いて、複数の消費者IDにそれぞれ対応付けられた複数の初期クラスタリング用の特徴ベクトルを、複数のユニットにクラスタリングする。このとき、全ての上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが「0」である消費者に対応する初期クラスタリング用の特徴ベクトルは、クラスタリングの対象から除外される。なお、全ての上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが「0」である消費者とは、当該初期クラスタリング用の特徴ベクトルの要素の値が全て「0」である消費者である。
【0078】
ここで、クラスタリングとは、いわゆる「教師なしのデータ分類手法」であり、複数のデータを外的基準なしに自動的に分類する手法である。本実施形態においては、前述した公知のK−means法やSOM法などのクラスタリング手法を用いて、クラスタリングを行う。一例として、K−means法を用いて、複数の初期クラスタリング用の特徴ベクトルをクラスタリングする方法を説明する。
【0079】
すなわち、情報処理装置400の制御部401は、まず、複数の初期クラスタリング用の特徴ベクトルを、ユークリッド距離が最小になるように、複数のユニットのいずれかに振り分ける。ユークリッド距離とは、初期クラスタリング用の特徴ベクトルとユニットの代表ベクトルとの距離である。その後、各ユニットに振り分けられた全ての初期クラスタリング用の特徴ベクトルに基づき、各ユニットごとに、ユニットの新たな代表ベクトルを算出する。
【0080】
そして、複数の初期クラスタリング用の特徴ベクトルを、ユニットの新たな代表ベクトルとの上記ユークリッド距離が最小となるユニットに振り分け直す。このとき、いずれかの初期クラスタリング用の特徴ベクトルについて、上記ユニットの振り分け直しが行われた場合には、各ユニットに新しく振り分けられた全ての初期クラスタリング用の特徴ベクトルに基づき、各ユニットごとに、ユニットの新たな代表ベクトルを算出し、上記と同様の処理を繰り返す。そして、上記の処理を繰り返すことにより、全ての初期クラスタリング用の特徴ベクトルについて、上記ユニットの振り分け直しが行われなくなった場合を、クラスタリングの完了とする。これにより、複数の初期クラスタリング用の特徴ベクトルは、複数のユニットに振り分けられる。
【0081】
なお、上記では、K−means法によりクラスタリングを行う場合を例にとって説明したが、上記SOM法やその他のクラスタリング手法によりクラスタリングを行ってもよい。
【0082】
その後、上記のクラスタリングの結果に対応して、各初期クラスタリング用の特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。そして、各消費者ごとに、消費者IDと、当該消費者IDに対応付けたユニットの嗜好IDとを、上記嗜好データベース3132に記憶させる。
【0083】
また、上記嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されている場合には、情報処理装置400の制御部401は、予め実行されたクラスタリングの結果を活用して、複数の消費者IDを複数のユニットにクラスタリングする(詳細は後述する)。
【0084】
また、本実施形態では、情報処理装置400の制御部401は、上記嗜好データベース3132に記憶されたクラスタリングの結果に対応したデータ、すなわち、複数の消費者IDと複数の嗜好IDとの対応付けを利用して、各消費者に対して推奨する推奨情報を決定する。そして、その決定内容に従って、各消費者のPC端末600に対し推奨情報を出力する(詳細は後述する)。
【0085】
図5を用いて、情報処理装置400の制御部401が実行する、上述したクラスタリングに関する制御手順を説明する。なお、制御部401は、このフローに示す処理を、上記クラスタリング処理プログラムに従って実行する。
【0086】
図5において、例えばシステム管理者により上記キーボード421やマウス422を用いて、所定の処理開始指令が操作入力されることによって、図中「START」位置で表されるように、このフローが開始される。
【0087】
まずステップS5で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応したデータが記憶されているかどうかを判定する。当該データが記憶されていない場合には、判定が満たされずステップS100に移る。
【0088】
ステップS100では、制御部401は、所定の初期クラスタリング処理を実行する。この詳細内容については、後述の図6で説明する。その後、このフローを終了する。
【0089】
一方、上記ステップS5において、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応したデータが記憶されていた場合には、ステップS5の判定が満たされてステップS200に移る。
【0090】
ステップS200では、制御部401は、予め実行されたクラスタリングの結果を継承して新たなクラスタリングを行う、クラスタリング処理を実行する。この詳細内容については、後述の図7で説明する。その後、このフローを終了する。
【0091】
図6を用いて、上記図5のステップS100の詳細手順を説明する。
【0092】
図6において、まずステップS105で、制御部401は、DBサーバ300の上記商品構成の情報記憶エリア314にアクセスする。そして、商品構成の情報記憶エリア314に記憶された複数の歌手IDを取得する。
【0093】
その後、ステップS110で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌唱履歴データベース3131にアクセスする。そして、歌唱履歴データベース3131に記憶された、複数の楽曲データに対する複数の消費者の歌唱履歴情報を取得する。
【0094】
そして、ステップS115に移り、制御部401は、上記ステップS110で取得された歌唱履歴情報を用いて、上記ステップS105で取得された複数の歌手IDに係わる楽曲データ対する、各消費者の初期クラスタリング用の特徴ベクトルを生成する。そして、その生成した各消費者の初期クラスタリング用の特徴ベクトルと、当該消費者の消費者IDとを対応付ける。このステップが、各請求項記載の第2特徴ベクトル生成手段として機能する。なお、本実施形態では、前述したように、テーブル4101を使用して、上記各消費者の初期クラスタリング用の特徴ベクトルを生成し、各消費者の初期クラスタリング用の特徴ベクトルと、当該消費者の消費者IDとを対応付ける(図4参照)。
【0095】
その後、ステップS120で、制御部401は、上記ステップS115で生成された各消費者の初期クラスタリング用の特徴ベクトルのうち、上記ステップS105で取得された全ての歌手IDに係わる楽曲データに対する初期クラスタリング用の特徴ベクトルが0である消費者に対応する初期クラスタリング用の特徴ベクトルを、後述のステップS130でのクラスタリングの対象から除外する。言い換えれば、全ての上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが0である消費者に対応する初期クラスタリング用の特徴ベクトルを、後述のステップS130でのクラスタリングの対象から除外する。このステップが、各請求項記載の除外処理手段として機能する。なお、所定期間内における歌唱行動の回数、すなわち、歌唱回数が、所定のしきい値以下である消費者、例えば1年間の歌唱回数が5回以下である消費者、に対応する初期クラスタリング用の特徴ベクトルを、後述のステップS130でのクラスタリングの対象から除外するようにしてもよい。
【0096】
そして、ステップS125に移り、制御部401は、上記乱数発生器を用いて乱数を発生させて、この乱数に基づいて、各ユニットごとにベクトルを生成する。そして、その各ユニットごとに生成したベクトルを、各ユニットの初期クラスタリング用の代表ベクトルの初期値に設定する。
【0097】
その後、ステップS130で、制御部401は、上記ステップS125で設定された複数のユニットそれぞれの初期クラスタリング用の代表ベクトルを用いて、上記ステップS115で複数の消費者IDにそれぞれ対応付けられた、複数の初期クラスタリング用の特徴ベクトルを、前述したような手法により、複数のユニットにクラスタリングする。このステップが、各請求項記載の第2クラスタリング手段として機能する。そして、このクラスタリングの結果に対応して、各初期クラスタリング用の特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。
【0098】
そして、ステップS135に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に、上記ステップS130でのクラスタリングの結果、すなわち、複数の消費者IDと複数のユニットとの対応付けを記憶させる。その後、このルーチンを終了する。
【0099】
図7を用いて、上記図5のステップS200の詳細手順を説明する。
【0100】
図7において、まずステップS205で、制御部401は、DBサーバ300の上記商品構成の情報記憶エリア314にアクセスする。そして、商品構成の情報記憶エリア314に記憶された複数の歌手IDを取得する。なお、このステップで取得される複数の歌手IDに係わる楽曲データ、すなわち、上記予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されている場合に用意された上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが、新たなクラスタリングを行うために用意された第1商品構成に相当する。
【0101】
その後、ステップS210で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌唱履歴データベース3131にアクセスする。そして、歌唱履歴データベース3131に記憶された、複数の楽曲データに対する複数の消費者の歌唱履歴情報を取得する。このステップが、各請求項記載の履歴取得手段として機能する。
【0102】
そして、ステップS215に移り、制御部401は、上記ユニットに対応する変数Uの値を1に設定する。
【0103】
その後、ステップS220で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、この時点での変数Uの値に対応するユニットの嗜好IDをキーとして嗜好データベース3132内を検索し、当該嗜好IDに対応付けられた全ての消費者IDを検出する。すなわち、この時点でのUの値に対応するユニットに属する全消費者の消費者IDを検出する。
【0104】
そして、ステップS225に移り、制御部401は、上記ステップS210で取得された歌唱履歴情報を用いて、上記ステップS205で取得された複数の歌手IDに係わる楽曲データ対する、上記ステップS220で検出された各消費者IDに係わる各消費者の特徴ベクトルを生成する。なお、このステップで生成される特徴ベクトル、すなわち、上記予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されている場合に生成される特徴ベクトルが、第1特徴ベクトルに相当する。以下適宜、この特徴ベクトルを、第1特徴ベクトルと称する。そして、上記生成した各消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。このステップが、各請求項記載の第1特徴ベクトルとして機能する。なお、制御部401は、上記テーブル4101を使用して、上記初期クラスタリング用の特徴ベクトルの生成方法とほぼ同様の方法により、第1特徴ベクトルを生成し、各消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。
【0105】
その後、ステップS230で、制御部401は、上記ステップS225で生成された複数の第1特徴ベクトルの平均値を算出する。これは言い換えれば、上記図6のステップS130での初期クラスタリング用の特徴ベクトルのクラスタリング結果に基づく複数の消費者IDと複数のユニットとの初期的対応付けに応じて、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの平均値を算出している。さらに言い換えれば、上記図6のステップS130での初期クラスタリング用の特徴ベクトルのクラスタリング結果に対応して上記嗜好データベース3132に予め記憶された上記初期的対応付けを、上記ステップS225で各消費者ごとに生成された第1特徴ベクトルに対して適用し、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの平均値を算出している。その後、その算出した平均値を、この時点でのUの値に対応するユニットのベクトル状態量に決定する。このステップが、各請求項記載の状態量決定手段として機能する。なお、後述のステップS250での第1特徴ベクトルのクラスタリング結果に基づく各消費者IDとユニットとの対応付けが、上記嗜好データベース3132に記憶されている場合には、その対応付けに応じて、上記平均値が算出される。いずれの場合でも、このステップでは、予め実行されたクラスタリングの結果に基づく各消費者IDとユニットとの対応付けに応じて、上記平均値が算出される。
【0106】
そして、ステップS235に移り、制御部401は、上記ステップS230で決定された、この時点のUの値に対応するユニットのベクトル状態量を、当該ユニットの代表ベクトルの初期値に設定する。
【0107】
その後、ステップS240で、制御部401は、上記変数Uの値が、予め定められたユニットの総数に対応する最大値U_maxになったかどうか、すなわち、全てのユニットの代表ベクトルの初期値を設定したかどうかを判定する。U=U_maxとなっていない場合、すなわち、全てのユニットの代表ベクトルの初期値を設定していない場合には、判定が満たされずステップS245に移る。
【0108】
ステップS245では、制御部401は、変数Uの値に1を加え、上記ステップS220に戻り同様の手順を繰り返す。
【0109】
一方、上記ステップS240において、U=U_maxとなっていた場合、すなわち、全てのユニットの代表ベクトルの初期値を設定していた場合には、ステップS240の判定が満たされてステップS250に移る。なお、この場合には、各消費者の第1特徴ベクトルと当該消費者の消費者IDとが対応付けられ、各ユニットごとに代表ベクトルの初期値が設定されている。
【0110】
ステップS250では、制御部401は、上記ステップS235で各ユニットごとに設定された代表ベクトルの初期値を用いて、上記ステップS225で複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルを、前述したような手法により、複数のユニットにクラスタリングする。そして、このクラスタリングの結果に対応して、各第1特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。言い換えれば、各消費者IDに複数のユニットのいずれかを対応付ける。このステップが、各請求項記載の第1クラスタリング手段として機能する。
【0111】
そして、ステップS255に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に、上記ステップS250でのクラスタリングの結果、すなわち、複数の消費者IDと複数のユニットとの対応付けを記憶させる。その後、このルーチンを終了する。
【0112】
図8を用いて、情報処理装置400の制御部401が実行する、上述した商品推奨に関する制御手順を説明する。なお、制御部401は、このフローに示す処理を、上記広告決定処理プログラムに従って実行する。
【0113】
図8において、例えばシステム管理者により上記キーボード421やマウス422を用いて、所定の処理開始指令が操作入力されることによって、図中「START」位置で表されるように、このフローが開始される。
【0114】
まずステップS300で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に記憶されたデータ、すなわち、複数の消費者IDと複数の嗜好IDとの対応付けを取得する。
【0115】
その後、ステップS305で、制御部401は、上記ステップS300で取得されたデータに基づき、各消費者に対して推奨する推奨情報を決定する。例えば、同一のユニットには歌手の嗜好が似た消費者どうしが属するということに応じて、各ユニットに属する消費者の嗜好にあった商品の推奨情報を、各ユニットに属する消費者に対する推奨情報として決定する。そして、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記広告データベースにアクセスし、各消費者ごとに決定した推奨情報の広告IDを、当該消費者の消費者IDと対応付けて記憶させる。これにより、上記広告データベースに記憶された広告IDの更新を行う。
【0116】
そして、ステップS310に移り、制御部401は、通信制御部402及びネットワークNW2を介し、WEBサーバ500の制御部501に制御信号を出力する。そして、上記広告データベースの記憶内容に従って、すなわち、上記ステップS305で決定された推奨情報を、通信制御部503及びネットワークNW3を介し、各消費者のPC端末600に対して出力させる。これにより、各消費者のPC端末600のディスプレイ620には、当該消費者に対する推奨情報が表示される。その後、このフローを終了する。
【0117】
以上説明したように、第1の実施形態においては、上記歌唱履歴データベース3131(図2を参照)から歌唱履歴情報が取得される。そして、その取得された歌唱履歴情報を用いて、新たなクラスタリングを行うために用意された商品構成に対する、上記の例では歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する、各消費者の第1特徴ベクトルが生成される。その生成された第1特徴ベクトルは、当該第1特徴ベクトルに対応する消費者の消費者IDに対し対応付けられる。
【0118】
そして、上記のようにして消費者ごとに生成された第1特徴ベクトルを用いて、各ユニットごとにベクトル状態量が決定される。具体的には、新たに実行するクラスタリングに先立ち行われたクラスタリングの結果に対応して、各消費者IDとユニットとの対応付けが、上記嗜好データベース3132(図3参照)に予め記憶されている。そして、その各消費者IDとユニットとの対応付けを用いることにより、上記消費者ごとに生成された第1特徴ベクトルを、各ユニットごとに集計することができる。その後、その集計された第1特徴ベクトルの値を用いて、各ユニットごとにベクトル状態量が決定される。そして、その決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、上記複数の第1特徴ベクトルをクラスタリングする。これにより、各消費者IDに対し、複数のユニットのいずれかを対応付けることができる。
【0119】
以上のようにして、本実施形態においては、過去のクラスタリングの結果を活用して新たなクラスタリングを行う。これにより、ランダムに設定したベクトルを各ユニットの代表ベクトルの初期値として用いて、新たなクラスタリングを行う場合と異なり、過去のクラスタリング時から長期間が経過したり、歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが大きく変動した場合等であっても、各消費者IDが振り分けられるユニットが大きく異ならず、概ね同等のユニットとなる。
【0120】
特に、過去のクラスタリングの結果を継承し活用する際に、各ユニットの代表ベクトルを今回のクラスタリングのために継承する手法では、時間の経過により歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが変化するため、継承がうまくいかない。本実施形態では、各ユニットの代表ベクトルを継承するのではなく、各ユニットに所属する消費者を継承する。そして、当該消費者について、新しい歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データにより第1特徴ベクトルを算出する。その後、その第1特徴ベクトルに基づくベクトル状態量を用いて新たなクラスタリングを行う。これにより、上記と異なり、時間の経過により歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0121】
また、本実施形態では特に、過去に自らが行ったクラスタリングの結果を活用して新たなクラスタリングを行う。すなわち、過去のクラスタリング実行時には、その時点における歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが生成される。そして、その生成された初期クラスタリング用の特徴ベクトルと、当該ベクトルに対応する各消費者IDとが対応付けられる。そして、このようにして複数の消費者IDにそれぞれ対応付けられた複数の初期クラスタリング用の特徴ベクトルは、各ユニットの初期クラスタリング用の代表ベクトルを用いて、クラスタリングされる。このクラスタリングにより、複数の消費者IDと複数のユニットのいずれかとが対応付けられて、上記嗜好データベース3132に記憶される。
【0122】
そして、上記のようにして嗜好データベース3132に記憶された消費者IDと各ユニットとの対応付けが、各消費者ごとに生成された第1特徴ベクトルに適用される。これによって、各ユニットのベクトル状態量が、各ユニットごとに決定される。
【0123】
以上の結果、時間の経過により歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが変化した場合でも、自らの行った過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0124】
また、本実施形態では特に、複数の楽曲データに対する複数の消費者の消費履歴情報を参照し、全ての歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが0である消費者に対応する初期クラスタリング用の特徴ベクトルを、クラスタリングの対象から除外する。このように、データとしての利用価値が乏しい情報をノイズとしてクラスタリング対象から除外することにより、クラスタリングにおける精度を向上すると共に、処理時間を短縮することができる。
【0125】
また、本実施形態では特に、各ユニットのベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの平均値を用いる。これにより、過去のクラスタリングの結果を継承しつつ、新しい歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対応した各ユニットごとの最新の歌唱傾向を反映させたクラスタリングを実行することができる。
【0126】
なお、本発明は、上記実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を順を追って説明する。
【0127】
(1−1)各ユニットに属する全消費者の第1特徴ベクトルの中央値をベクトル状態量に決定する場合
【0128】
上記実施形態においては、各ユニットに属する全消費者の第1特徴ベクトルの平均値をベクトル状態量に決定するようにしたが、これに限られない。すなわち、各ユニットに属する全消費者の第1特徴ベクトルの中央値をベクトル状態量に決定するようにしてもよい。
【0129】
ここで、本変形例において、情報処理装置400の制御部401が実行する、クラスタリングに関する制御手順において前述の図5と異なる点は、ステップS200であり、その他の手順は前述の図5の各手順と同様である。以下、図9を用いて、本変形例におけるステップS200の詳細手順を説明する。なお、この図9は、前述の図7に対応する図である。図7と同等の手順には同符号を付し説明を省略する。
【0130】
図9において、前述の図7と異なる点は、ステップS230に代えてステップS230′を設けた点である。すなわち、ステップS205〜ステップS225は、前述の図7と同様である。ステップS225において、制御部401は、前述のステップS220で検出された各消費者IDに係わる各消費者の特徴ベクトルを生成したら、ステップS230に代えて設けたステップS230′に移る。
【0131】
ステップS230′では、制御部401は、上記ステップS225で生成された複数の第1特徴ベクトルの中央値を選定する。これは言い換えれば、予め実行されたクラスタリングの結果に基づく複数の消費者IDと複数のユニットとの対応付けに応じて、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの中央値を選定している。さらに言い換えれば、予め実行されたクラスタリングの結果に対応して上記嗜好データベース3132に予め記憶された上記対応付けを、上記ステップS225で各消費者ごとに生成された第1特徴ベクトルに対して適用し、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの中央値を選定している。その後、その選定した中央値を、この時点でのUの値に対応するユニットのベクトル状態量に決定する。このステップも、各請求項記載の状態量決定手段として機能する。
【0132】
その後のステップS235〜ステップS255は、前述の図7とほぼ同様であるので、説明を省略する。
【0133】
本変形例においては、各ユニットのベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの中央値を用いる。これにより、本変形例においても、過去のクラスタリングの結果を継承しつつ、新しい歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対応した各ユニットごとの最新の歌唱傾向を反映させたクラスタリングを実行することができる。特に、全消費者の第1特徴ベクトルの平均値でなく中央値を用いることにより、ユニットにおける第1特徴ベクトルの値の分布が偏っていた場合に、その偏り傾向を確実に反映させたクラスタリングを行うことができる。
【0134】
(1−2)各ユニットに属する所定数の消費者の第1特徴ベクトルに基づき、ベクトル状態量を決定する場合
以上においては、各ユニットに属する全消費者の第1特徴ベクトルに基づき、各ユニットのベクトル状態量を決定していた。例えば、上記実施形態では各ユニットに属する全消費者の第1特徴ベクトルの平均値を、上記(1−2)の変形例では各ユニットに属する全消費者の第1特徴ベクトルの中央値を、各ユニットのベクトル状態量として決定していた。しかしながらこれに限られず、各ユニットに属する所定数の消費者の第1特徴ベクトルに基づき、各ユニットのベクトル状態量を決定するようにしてもよい。
【0135】
ここで、本変形例において、情報処理装置400の制御部401が実行する、クラスタリングに関する制御手順において前述の図5と異なる点は、ステップS200であり、その他の手順は前述の図5の各手順と同様である。以下、図10を用いて、本変形例におけるステップS200の詳細手順を説明する。なお、この図10は、前述の図7に対応する図である。図7と同等の手順には同符号を付し説明を省略する。
【0136】
図10において、前述の図7と異なる点は、ステップS220、ステップS225、ステップS230、及びステップS250に代えて、ステップS220′、ステップS225′、ステップS230″、及びステップS250′を設けた点と、上記ステップS230″とステップS240との間に、ステップS237及びステップS239を新たに設けた点とである。
【0137】
すなわち、ステップS205〜ステップS215は、前述の図7と同様である。ステップS215において、制御部401は、上記変数Uの値を1に設定したら、ステップS220に代えて設けたステップS220′に移る。
【0138】
ステップS220′では、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、この時点での変数Uの値に対応するユニットの嗜好IDをキーとして嗜好データベース3132内を検索し、当該嗜好IDに対応付けられた所定数の、例えば10個の、消費者IDを検出する。すなわち、この時点でのUの値に対応するユニットに属する所定数の消費者の消費者IDを検出する。
【0139】
そして、ステップS225に代えて設けたステップS225′に移り、制御部401は、前述のステップS210で取得された歌唱履歴情報を用いて、前述のステップS205で取得された複数の歌手IDに係わる楽曲データ対する、上記ステップS220′で検出された所定数の消費者IDに係わる消費者の第1特徴ベクトルを生成する。そして、上記生成した所定数の消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。
【0140】
その後、ステップS230に代えて設けたステップS230″で、制御部401は、上記ステップS225′で生成された所定数の第1特徴ベクトルの平均値を算出する。これは言い換えれば、予め実行されたクラスタリングの結果に基づく複数の消費者IDと複数のユニットとの対応付けに応じて、この時点でのUの値に対応するユニットに属する所定数の消費者の第1特徴ベクトルの平均値を算出している。さらに言い換えれば、予め実行されたクラスタリングの結果に対応して上記嗜好データベース3132に予め記憶された上記対応付けを、上記ステップS225′で所定数の消費者それぞれについて生成された第1特徴ベクトルに対して適用し、この時点でのUの値に対応するユニットに属する所定数の消費者の第1特徴ベクトルの平均値を算出している。その後、その算出した平均値を、この時点でのUの値に対応するユニットのベクトル状態量に決定する。このステップも、各請求項記載の状態量決定手段として機能する。なお、上記ステップS225′で生成された所定数の第1特徴ベクトルの中央値を選定して、その選定した平均値を、この時点でのUの値に対応するユニットのベクトル状態量に決定するようにしてもよい。
【0141】
その後のステップS235は、前述の図7とほぼ同様であり、制御部401は、上記ステップS230″で決定された、この時点のUの値に対応するユニットのベクトル状態量を、当該ユニットの代表ベクトルの初期値に設定する。
【0142】
そして、新たに設けたステップS237に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、この時点での変数Uの値に対応するユニットの嗜好IDをキーとして嗜好データベース3132内を検索し、当該嗜好IDに対応付けられた、上記ステップS220′で検出されなかった全ての消費者IDを検出する。すなわち、この時点でのUの値に対応するユニットに属する残りの消費者の消費者IDを検出する。
【0143】
その後、新たに設けたステップS239で、制御部401は、前述のステップS210で取得された歌唱履歴情報を用いて、前述のステップS205で取得された複数の歌手IDに係わる楽曲データ対する、上記ステップS227で検出された残りの消費者IDに係わる消費者の第1特徴ベクトルを生成する。そして、上記生成した残りの消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。
【0144】
その後のステップS240及びステップS245は、前述の図7と同様である。ステップS240において、U=U_maxとなっていた場合には、ステップS240の判定が満たされて、ステップS250に代えて設けたステップS250′に移る。
【0145】
ステップS250′では、制御部401は、上記ステップS235で各ユニットごとに設定された代表ベクトルの初期値を用いて、上記ステップS225′及びステップS239で複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルを、前述したような手法により、複数のユニットにクラスタリングする。そして、このクラスタリングの結果に対応して、各第1特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。言い換えれば、各消費者IDに複数のユニットのいずれかを対応付ける。このステップも、各請求項記載の第1クラスタリング手段として機能する。
【0146】
その後のステップS255は、前述の図7とほぼ同様であり、制御部401は、嗜好データベース3132に、上記ステップS250′でのクラスタリングの結果、すなわち、複数の消費者IDと複数のユニットとの対応付けを記憶させる。そして、このルーチンを終了する。
【0147】
なお、上記において、ステップ225及びステップS239が、各請求項記載の第1特徴ベクトル生成手段として機能する。
【0148】
本変形例によれば、上記第1の実施形態や上記(1−1)の変形例と同様の効果を得る。
【0149】
(1−3)消費行動履歴に用いてクラスタリングを行う場合
以上においては、消費者が楽曲データを歌唱した歌唱行動履歴に用いて、複数の消費者IDを複数のユニットにクラスタリングする例を説明したが、これに限られない。すなわち、消費者の実際の消費行動、例えば物品商品の購入など、による消費行動履歴を用いて、複数の消費者IDを複数のユニットにクラスタリングするようにしてもよい。
【0150】
この場合のDBサーバ300の消費者データベースには、各商品ごとに、商品の識別情報と、当該商品に対する複数の消費者の消費行動履歴とを対応付けた消費履歴情報が記憶されている。上記消費行動履歴には、商品を消費した消費者の消費者IDと、消費行動日時とが含まれている。また、この場合のDBサーバ300の商品構成の情報記憶エリア314には、クラスタリングのために用意された商品売上ランキングの1位から1000位までに該当する商品の識別情報が記憶されている。上記商品売上ランキングの1位から1000位までに該当する商品が商品構成に相当する。
【0151】
また、本変形例において、情報処理装置400の制御部401が実行する処理は、上記実施形態とほぼ同様である。すなわち、制御部401は、上記消費者データベースにアクセスして、複数の商品に対する複数の消費者の消費履歴情報を取得する。そして、この取得された消費履歴情報を用いて、新たなクラスタリングのために用意された第1商品構成としての商品売上ランキングの1位から1000位までに該当する商品に対する消費者の消費行動を表す第1特徴ベクトルを生成する。そして、その生成した第1特徴ベクトルと当該消費者の消費者IDとを対応付ける。
【0152】
その後、予め実行されたクラスタリングの結果に対応して、予め上記嗜好データベース3132に記憶された、消費者IDとユニットとの対応付けに応じて、各ユニットのベクトル状態量を、各ユニットごとに決定する。そして、その各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルをクラスタリングする。その後、各消費者IDに、上記クラスタリングの結果に応じたユニットを対応付ける。そして、このクラスタリングの結果を利用して、各消費者に対して推奨する推奨情報を決定し、その決定内容に従って、各消費者のPC端末600に対し推奨情報を出力する。
【0153】
本変形例によっても、上記第1の実施形態や上記各の変形例と同様の効果を得る。
【0154】
次に、本発明の第2の実施形態について説明する。
【0155】
図11を用いて、第2の実施形態の消費者情報処理装置を備えた市場分析システムを説明する。なお、この図11は、前述の図1に対応する図である。前述の図1と同等の部分には同符号を付し説明を省略する。
【0156】
図11において、市場分析システム2は、カラオケルームKRに設置されたカラオケ装置100と、楽曲配信会社200と、DBサーバ300と、情報処理装置400とを有している。
【0157】
これらカラオケ装置100、楽曲配信会社200、DBサーバ300、及び情報処理装置400の機能構成は、前述の図1とほぼ同様である。但し、DBサーバ300のデータベース記憶エリア313や情報処理装置400のプログラム記憶エリア412の記憶内容は、前述の第1の実施形態と多少異なっている。
【0158】
本実施形態におけるDBサーバ300のデータベース記憶エリア313には、会員データベース、歌手データベース、歌唱履歴データベース3131(図2参照)、及び嗜好データベース3132(図7参照)が記憶されている。すなわち、前述の広告データベースが省略されている。なお、これら会員データベース、歌手データベース、歌唱履歴データベース3131、及び嗜好データベース3132の記憶内容は、前述の第1の実施形態と同様である。
【0159】
また、本実施形態における情報処理装置400のプログラム記憶エリア412には、クラスタリング処理プログラム、及び、分析処理プログラムが記憶されている。すなわち、前述の広告決定処理プログラムに代えて分析処理プログラムが記憶されている。
【0160】
分析処理プログラムは、制御部401にクラスタリングの結果を分析させるためのプログラムである。
【0161】
本実施形態では、情報処理装置400の制御部401は、上記歌唱履歴データベース3131に記憶された歌唱履歴情報に基づいて、前述の第1の実施形態と同様の方法により、複数の消費者IDを複数のユニットにクラスタリングする。また、そのクラスタリングの結果に対応したデータは、前述の第1の実施形態と同様に、上記嗜好データベース3132に記憶されている。そして、例えば分析者がある歌手を嗜好する消費者の分布を分析したいとき等には、情報処理装置400の制御部401に分析処理プログラムを実行させる。すると、上記ディスプレイ420に、所定の分析画面P(後述の図12参照)が表示され、分析が開始される。
【0162】
図12に、上記ディスプレイ420に表示された分析画面Pの一例を示す。
【0163】
図12に示すように、分析画面Pには、歌手名入力ボックスT1と、分析期間入力ボックスT2と、分析結果表示領域T3と、分析開始ボタンBとが含まれている。歌手名入力ボックスT1は、分析対象となる歌手名が入力される欄である。分析期間入力ボックスT2は、分析対象となる期間が入力される欄である。分析結果表示領域T3は、分析結果が表示される領域である。分析開始ボタンBは、分析を開始させるためのボタンである。
【0164】
分析者は、この分析画面Pが表示されると、上記キーボード421やマウス422を用いて所定の操作入力を行う。すなわち、分析者は、上記キーボード421やマウス422を適宜操作して、歌手名入力ボックスT1に、分析したい歌手名を入力する。この例では「Artist1」と入力されている。そして、分析者は、上記キーボード421やマウス422を適宜操作して、分析期間入力ボックスT2に、分析したい期間を入力する。この例では「2009/01/01〜2009/12/31」と入力されている。
【0165】
上記歌手名及び期間の入力が完了すると、分析者は、上記マウス422を適宜操作して、分析開始ボタンBをクリックする。これにより、制御部401は、上記入力された歌手名及び期間をキーワードとして用いて、クラスタリングの結果に対応して記憶されたデータを利用して分析を開始する(詳細は後述する)。そして、制御部401は、分析結果を可視化して、上記分析結果表示領域T3に表示させる。
【0166】
ここで、本実施形態において、情報処理装置400の制御部401が実行する、クラスタリングに関する制御手順は、前述の第1の実施形態と同様である。以下、図13を用いて、情報処理装置400の制御部401が実行する、上述した分析に関する制御手順を説明する。なお、制御部401は、このフローに示す処理を、上記分析処理プログラムに従って実行する。
【0167】
図13において、例えば分析者により上記キーボード421やマウス422を用いて、所定の処理開始指令が操作入力されることによって、図中「START」位置で表されるように、このフローが開始される。
【0168】
まずステップS400で、制御部401は、出力制御部403を介しディスプレイ420に制御信号を出力し、上記分析画面Pを表示させる。これにより、分析者は、上記キーボード421やマウス422を用いて、歌手名入力ボックスT1に歌手名の入力、及び、分析期間入力ボックスT2に期間の入力、を行うことができる。
【0169】
その後、ステップS405で、制御部401は、上記マウス422を介し分析開始ボタンBがクリックされたかどうかを判定する。分析開始ボタンBがクリックされるまで判定が満たされず、ループして待機する。そして、分析開始ボタンBがクリックされたら判定が満たされて、歌手名入力ボックスT1及び分析期間入力ボックスT2に入力されたデータをそれぞれ取得して、ステップS410に移る。
【0170】
ステップS410では、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌手データベースにアクセスする。そして、上記歌手名入力ボックスTに入力された歌手名をキーとして、歌手データベース内を検索し、当該歌手名に対応付けられた歌手IDを取得する。
【0171】
そして、ステップS415に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌唱履歴データベース3131にアクセスする。そして、歌唱履歴データベース3131に記憶された歌唱履歴情報を参照し、歌唱行動日時が上記分析期間入力ボックスT2に入力された期間に含まれる歌唱履歴情報を抽出する。その後、上記ステップS410で取得された歌手IDをキーとして、上記抽出した歌唱履歴情報に含まれる当該歌手IDに対応付けられた消費者IDを取得する。
【0172】
その後、ステップS420で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、上記ステップS415で取得された消費者IDをキーとして嗜好データベース3132内を検索して、当該消費者IDに対応付けられた嗜好IDを取得する。これにより、上記歌手名入力ボックスT1に入力された歌手に対し、上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者、及び、その消費者の属するユニットがわかる。
【0173】
そして、ステップS425に移り、制御部401は、上記ステップS420の結果に基づいて、上記歌手名入力ボックスT1に入力された歌手に対し、上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者の、各ユニットごとの分布を表した画像データを生成する。
【0174】
その後、ステップS430で、制御部401は、出力制御部403を介し、上記ステップS425で生成された画像データをディスプレイ420に出力する。そして、ディスプレイ420の上記分析結果表示領域T3に、上記画像データに対応する画像を表示させる。その後、このフローを終了する。
【0175】
なお、上記図12に示す例では、分析結果表示領域T3には、ユニットが同心円で示され、上記歌手名入力ボックスT1に入力された歌手に対し上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者が「×」マークで示された画像が表示されている。すなわち、この画像では、「×」マークが多い同心円ほど、ユニットに属する上記歌手名入力ボックスT1に入力された歌手に対し上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者の数が多くなっている。したがって、分析者は、クラスタリングの結果を反映した上記画像を参照することで、入力した歌手を嗜好する消費者の分布、つまり、嗜好するユニットや嗜好しないユニット等を知ることができる。
【0176】
以上説明した第2の実施形態においても、前述の第1の実施形態と同様の効果を得る。
【0177】
なお、以上において、図1及び図11の各図中に示す矢印は信号の流れの一例を示すものであり、信号の流れ方向を限定するものではない。
【0178】
また、図5、図6、図7、図8等に示すフローチャートは本発明を上記フローに示す手順に限定するものではなく、発明の趣旨及び技術的思想を逸脱しない範囲内で手順の追加・削除又は順番の変更等をしてもよい。
【0179】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0180】
その他、一々例示はしないが、本発明は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0181】
1 商品推奨システム
2 市場分析システム
300 DBサーバ
400 情報処理装置(消費者情報処理装置)
401 制御部
3131 歌唱履歴データベース(消費者データベース)
3132 嗜好データベース
【技術分野】
【0001】
本発明は、複数の消費者の識別情報を複数のユニットにクラスタリングする、消費者情報処理装置に関する。
【背景技術】
【0002】
従来、情報のクラスタリングを行う技術として、例えば特許文献1に記載の従来技術が開示されている。この従来技術では、情報分類装置の制御部が、学習時の処理と、分類処理時の処理とで異なる処理を実行する。上記学習時の処理には、機能的には、前処理部と、特徴量演算部と、クラスタ生成部と、学習処理部とが含まれている。
【0003】
前処理部は、学習画像データから顔部分を認識し、当該顔部分の画像を正規化する。特徴量演算部は、前処理部が出力する画像に基づいて、分類項目との関係において定められる、ベクトル量である特徴量情報を演算する。クラスタ生成部は、クラスタリングにより特徴量情報を用いた学習用画像データのクラスタ分類を行う。具体的には、クラスタ生成部は、初めに、複数の特徴量情報のそれぞれについて、特徴量空間の座標値を演算する。次に、クラスタ生成部は、予め指定された、複数のユニットに相当する複数のクラスタの、代表ベクトルに相当するクラスタ中心を決定する。
【0004】
このクラスタ生成部によるクラスタ中心の決定では、まず、初期値のクラスタ中心が例えばランダムに設定される。次に、各学習画像データから得られた特徴量情報が、それぞれ特徴量空間内で最も近いクラスタ中心に関連づけられる。そして、各クラスタ中心ごとに、関連づけられた特徴量情報に係る特徴量空間の重心座標が演算される。そして、その演算された重心座標が、新たなクラスタ中心とされる。クラスタ生成部は、これらの処理を、新たなクラスタ中心が、元のクラスタ中心と変化がなくなるまで繰り返す。これにより、各クラスタのクラスタ中心を決定すると共に、各学習画像データに係る特徴量情報を、特徴量空間で最も近いクラスタ中心に関連づけることができる。
【0005】
そして、クラスタ生成部は、各クラスタ中心ごとに、クラスタ中心に関連づけられた特徴量情報を、学習処理部へ出力する。学習処理部は、クラスタ生成部より入力された各学習画像データに係る特徴量情報で特定された学習データベースの学習を行う。以上のように学習が行われる結果、学習用に用意された複数の画像データについて、分類項目との関係において定められたクラスタに対応した複数の学習データベースが生成される。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2007−48172号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記従来技術において、情報分類装置の制御部が再び学習時の処理を実行する際には、上記と同様に、初期値のクラスタ中心はランダムに設定される。そして、このランダムに設定されたクラスタ中心を初期値として用いて、新たなクラスタリングが行われる。
【0008】
ここで、例えばある時点において消費者により消費される商品構成に対する消費者の消費行動に基づいて、過去のクラスタリングの結果を活用して、複数の消費者の識別情報を複数のユニットに新たにクラスタリングする場合を考える。この場合、上記従来技術のように、ランダムに設定したベクトルを各ユニットの代表ベクトルの初期値として用いて新たなクラスタリングを行うと、各消費者の識別情報が過去のクリスタリングにおいて振り分けられたユニットと異なるユニットに振り分けられうる。このため、過去のクラスタリングの結果を継承できないおそれがあった。
【0009】
上記を回避するために、過去のクラスタリングの結果を継承し活用する際に、各ユニットの代表ベクトルを今回のクラスタリングのために継承する手法も考えられる。しかしながらこの手法では、時間の経過により消費される商品構成が変化した場合には、ユニットの属性の継承がうまくいかなくなるおそれがあった。
【0010】
本発明の目的は、時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる消費者情報処理装置を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するために、第1の発明は、複数の消費者の識別情報を複数のユニットにクラスタリングする消費者情報処理装置であって、商品の識別情報と当該商品に対する複数の消費者の消費行動履歴とを対応付けた消費履歴情報を各商品ごとに記憶した消費者データベースにアクセスし、複数の商品に対する複数の消費者の消費履歴情報を取得する履歴取得手段と、前記履歴取得手段により取得された前記複数の商品に対する前記複数の消費者の前記消費履歴情報を用いて、新たなクラスタリングを行うために用意された第1商品構成に対する前記消費者の消費行動を表す第1特徴ベクトルを生成し、生成した第1特徴ベクトルと当該消費者の識別情報とを対応付ける第1特徴ベクトル生成手段と、予め実行されたクラスタリングの結果に対応して予め記憶された、前記消費者の識別情報と前記ユニットとの対応付けを、第1特徴ベクトル生成手段により前記消費者ごとに生成された第1特徴ベクトルに対して適用し、各ユニットのベクトル状態量を、各ユニットごとに決定する状態量決定手段と、前記状態量決定手段で各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記第1特徴ベクトルをクラスタリングし、各消費者の識別情報に前記複数のユニットのいずれかを対応付ける第1クラスタリング手段とを有する。
【0012】
本願第1発明においては、消費者データベースに各消費者の消費履歴情報が記憶されている。履歴取得手段によって、複数の商品に対する複数の消費者の消費履歴情報が消費者データベースから取得される。取得された消費履歴情報を用いて、第1特徴ベクトル生成手段が消費者の第1特徴ベクトルを生成する。第1特徴ベクトルは、新たなクラスタリングを行うために用意された商品構成に対する、消費者の消費行動を表すベクトルである。生成された第1特徴ベクトルは、第1特徴ベクトル生成手段によって、当該第1特徴ベクトルに対応する消費者の識別情報に対し対応付けられる。
【0013】
上記のようにして消費者ごとに生成された第1特徴ベクトルを用いて、状態量決定手段がベクトル状態量を決定する。具体的には、新たに実行するクラスタリングに先立ち行われたクラスタリングの結果に対応して、消費者の識別情報とユニットとの対応付けが、予め記憶されている。この対応付けを用いることで、上記消費者ごとに生成された第1特徴ベクトルを、各ユニットごとに集計することができる。集計された第1特徴ベクトルの値を用いて、各ユニットごとに上記ベクトル状態量が決定される。この決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用い、第1クラスタリング手段が、上記複数の第1特徴ベクトルをクラスタリングする。これにより、各消費者の識別情報に対し、複数のユニットのいずれかを対応付けることができる。
【0014】
以上のようにして、本願第1発明においては、過去のクラスタリングの結果を活用して新たなクラスタリングを行う。これにより、ランダムベクトルを初期値として用いて新たなクラスタリングを行う場合と異なり、過去のクラスタリング時から長期間が経過したり商品構成が大きく変動した場合等であっても、各消費者の識別情報が振り分けられるユニットが大きく異ならず、概ね同等のユニットとなる。
【0015】
特に、過去のクラスタリングの結果を継承し活用する際に、各ユニットの代表ベクトルを今回のクラスタリングのために継承する手法では、時間の経過により消費される商品構成が変化するため、継承がうまくいかない。本願第1発明では、各ユニットの代表ベクトルを継承するのではなく、各ユニットに所属する消費者を継承し、当該消費者について新しい商品構成により特徴ベクトルを算出し、その特徴ベクトルに基づくベクトル状態量を用いて新たなクラスタリングを行う。これにより、上記と異なり、時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0016】
第2の発明は、上記第1発明において、複数の商品に対する複数の消費者の前記消費履歴情報を用いて、予め定められた初期クラスタリング用商品構成に対する各消費者の消費行動を表す初期クラスタリング用特徴ベクトルを生成し、生成した初期クラスタリング用特徴ベクトルと当該消費者の識別情報とを対応付ける第2特徴ベクトル生成手段と、予め用意された、前記複数のユニットそれぞれの初期クラスタリング用代表ベクトルを用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記初期クラスタリング用特徴ベクトルをクラスタリングする第2クラスタリング手段とをさらに有し、前記状態量決定手段は、前記第2クラスタリング手段による前記初期クラスタリング用特徴ベクトルのクラスタリング結果に対応して記憶された、複数の消費者の識別情報と前記複数のユニットとの初期的対応付けを、前記第1特徴ベクトル生成手段により各消費者ごとに生成された前記第1特徴ベクトルに対して適用し、各ユニットの前記ベクトル状態量を、各ユニットごとに決定することを特徴とする。
【0017】
本願第2発明の消費者情報処理装置は、過去に自らが行ったクラスタリングの結果を活用して新たなクラスタリングを行う。すなわち、過去のクラスタリング実行時には、所定の初期クラスタリング用商品構成に対する初期クラスタリング用特徴ベクトルが第2特徴ベクトル生成手段によって生成され、生成された初期クラスタリング用特徴ベクトルと当該ベクトルに対応する各消費者の識別情報とが対応付けられる。このようにして複数の消費者の識別情報にそれぞれ対応付けられた複数の初期クラスタリング用特徴ベクトルは、各ユニットに対し予め用意された初期クラスタリング用代表ベクトルを用いて、第2クラスタリング手段によってクラスタリングされる。このクラスタリングにより、複数の消費者の識別情報と複数のユニットのいずれかとが対応付けられて記憶される。
【0018】
上記のようにして記憶された消費者の識別情報と各ユニットとの対応付けが、状態量決定手段によって、各消費者ごとに生成された第1特徴ベクトルに適用される。これによって、各ユニットのベクトル状態量が、各ユニットごとに決定される。
【0019】
以上の結果、本願第2発明の消費者情報処理装置は、時間の経過により消費される商品構成が変化した場合でも、自らの行った過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0020】
第3の発明は、上記第2発明において、複数の商品に対する複数の消費者の前記消費履歴情報を参照し、全ての前記初期クラスタリング用商品構成に対する前記初期クラスタリング用特徴ベクトルが0である消費者、若しくは、所定期間内における消費行動の回数が所定のしきい値以下である消費者、に対応する前記初期クラスタリング用特徴ベクトルを、前記第2クラスタリング手段でのクラスタリングの対象から除外する、除外処理手段を有することを特徴とする。
【0021】
データとしての利用価値が乏しい情報をノイズとしてクラスタリング対象から除外することにより、クラスタリングにおける精度を向上すると共に、処理時間を短縮することができる。
【0022】
第4の発明は、上記第1発明において、前記状態量決定手段は、各ユニットに属する全消費者の前記第1特徴ベクトルの平均値を算出し、当該平均値を前記ベクトル状態量に決定することを特徴とする。
【0023】
本願第4発明においては、ベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの平均値を用いる。これにより、過去のクラスタリングの結果を継承しつつ、新しい商品構成に対応した各ユニットごとの最新の消費傾向を反映させたクラスタリングを実行することができる。
【0024】
第5の発明は、上記第1発明において、前記状態量決定手段は、各ユニットに属する全消費者の前記第1特徴ベクトルの中央値を選定し、当該中央値を前記ベクトル状態量に決定することを特徴とする。
【0025】
本願第5発明においては、ベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの中央値を用いる。これにより、過去のクラスタリングの結果を継承しつつ、新しい商品構成に対応した各ユニットごとの最新の消費傾向を反映させたクラスタリングを実行することができる。特に、全消費者の第1特徴ベクトルの平均値でなく中央値を用いることにより、ユニットにおける第1特徴ベクトルの値の分布が偏っていた場合に、その偏り傾向を確実に反映させたクラスタリングを行うことができる。
【発明の効果】
【0026】
本発明によれば、時間の経過により消費される商品構成が変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【図面の簡単な説明】
【0027】
【図1】本発明の第1の実施形態の消費者情報処理装置を備えた商品推奨システムの全体構成を表すシステム構成図である。
【図2】歌唱履歴データベースの記憶内容の一例を概念的に表す表である。
【図3】嗜好データベースの記憶内容の一例を概念的に表す表である。
【図4】初期クラスタリング用の特徴ベクトルを生成する手法の一例を説明する説明図である。
【図5】情報処理装置の制御部が実行する、クラスタリングに関する制御手順を表すフローチャートである。
【図6】ステップS100の詳細手順を表すフローチャートである。
【図7】ステップS200の詳細手順を表すフローチャートである。
【図8】情報処理装置の制御部が実行する、商品推奨に関する制御手順を表すフローチャートである。
【図9】各ユニットに属する全消費者の第1特徴ベクトルの中央値をベクトル状態量に決定する変形例において、ステップS200の詳細手順を表すフローチャートである。
【図10】各ユニットに属する所定数の消費者の第1特徴ベクトルに基づきベクトル状態量を決定する変形例において、ステップS200の詳細手順を表すフローチャートである。
【図11】本発明の第2の実施形態の消費者情報処理装置を備えた市場分析システムの全体構成を表すシステム構成図である。
【図12】情報処理装置のディスプレイに表示された分析画面の一例を表す説明図である。
【図13】情報処理装置の制御部が実行する、分析に関する制御手順を表すフローチャートである。
【発明を実施するための形態】
【0028】
以下、本発明の実施の形態を図面を参照しつつ説明する。まず、本発明の第1の実施形態について説明する。
【0029】
図1を用いて、第1の実施形態の消費者情報処理装置を備えた商品推奨システムを説明する。
【0030】
図1において、商品推奨システム1は、カラオケルームKRに設置されたカラオケ装置100と、楽曲配信会社200と、DBサーバ300と、消費者情報処理装置としての情報処理装置400と、WEBサーバ500と、PC端末600と、広告配信会社700とを有している。
【0031】
カラオケ装置100は、カラオケ装置本体110と、表示装置120と、マイク115とを有している。カラオケ装置本体110は、例えばWide Area Network(WAN)等のネットワークNW1を介し楽曲配信会社200から配信される楽曲データを再生する。表示装置120は、楽曲データの再生時に歌唱に係る映像を表示する。マイク115は、カラオケ装置本体110に接続され、カラオケ利用者である消費者の歌唱の用に供する。消費者は、この例では所定のカラオケ施設における会員として登録されている。
【0032】
ここで、楽曲配信会社200からカラオケ装置本体110に配信される楽曲データは、商品に含まれる。すなわち、カラオケにおいて消費者が楽曲データを歌唱することは、商品の消費に含まれる。つまり、歌唱行動は、消費行動に含まれる。
【0033】
上記構成であるカラオケ装置100は、上記ネットワークNW1を介しDBサーバ300に接続されている。
【0034】
DBサーバ300は、制御部301と、通信制御部302,303と、記憶部310とを有している。
【0035】
制御部301は、図示しないCPU及びRAM、ROM等のメモリを備えている。この制御部301は、RAMの一時記憶機能を利用しつつ、記憶部310に予め記憶された各種プログラムを実行する。これにより、DBサーバ300全体の制御を行う。
【0036】
通信制御部302は、上記カラオケ装置本体110との間で上記ネットワークNW1を介し行われる情報通信の制御を行う。通信制御部303は、上記情報処理装置400やWEBサーバ500との間で、例えばLocal Area Network(LAN)等のネットワークNW2を介し行われる情報通信の制御を行う。
【0037】
記憶部310は、例えばHard Disk Drive(HDD)等で構成されている。この記憶部310は、OS記憶エリア311と、RDBMS記憶エリア312と、データベース記憶エリア313と、商品構成の情報記憶エリア314とを備えている。
【0038】
OS記憶エリア311には、所定のOperating System(OS)が記憶されている。OSは、コンピュータシステム全体を管理するソウトウェアである。
【0039】
RDBMS記憶エリア312には、所定のRelational DetaBase Management System(RDBMS)が記憶されている。RDBMSは、いわゆるリレーショナルデータベースを管理するソフトウェアである。
【0040】
データベース記憶エリア313には、会員データベース、歌手データベース、消費者データベースとしての歌唱履歴データベース3131(後述の図2参照)、嗜好データベース3132(後述の図3参照)、及び広告データベースが記憶されている。
【0041】
会員データベースには、複数の消費者の会員情報が記憶されている。消費者の会員情報には、例えば消費者の識別情報である消費者ID、性別、及び生年月日等が含まれている。
【0042】
歌手データベースには、各歌手ごとに、楽曲データの歌手の識別情報である歌手ID、及び、歌手名が記憶されている。歌手名は、歌手の名称である。
【0043】
広告データベースには、各消費者ごとに、上記消費者IDと、当該消費者のPC端末600に対して出力する推奨情報として決定された、特定の商品を推奨するための推奨情報の識別情報である広告IDとが記憶されている。なお、この広告データベースに、推奨情報自体を記憶させるようにしてもよい。
【0044】
商品構成の情報記憶エリア314には、後述するクラスタリングのために用意された商品構成に係わる情報が記憶されている。本実施形態では、上記商品構成を、歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データとしている。そして、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDが、この商品構成の情報記憶エリア314に記憶されている。なお、歌手別歌唱回数ランキングは時間の経過により変化するので、一定の期間が経過したら、その時点における歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDを、この商品構成の情報記憶エリア314に記憶させる。
【0045】
上記構成であるDBサーバ300は、上記ネットワークNW2を介し情報処理装置400及びWEBサーバ500に接続されている。
【0046】
情報処理装置400には、ディスプレイ420、キーボード421、及びマウス422が接続されている。また、情報処理装置400は、制御部401と、通信制御部402と、出力制御部403と、入力制御部404と、記憶部410とを有している。
【0047】
制御部401は、図示しないCPU及びRAM、ROM等のメモリを備えている。この制御部401は、RAMの一時記憶機能を利用しつつ、記憶部410に予め記憶された各種プログラムを実行する。これにより、情報処理装置400全体の制御を行う。
【0048】
通信制御部402は、上記DBサーバ300やWEBサーバ500との間で上記ネットワークNW2を介し行われる情報通信の制御を行う。
【0049】
出力制御部403は、上記ディスプレイ420への映像信号の出力に関する制御を行う。入力制御部404は、上記キーボード421やマウス422を介した情報の入力に関する制御を行う。
【0050】
記憶部410は、例えばHDD等で構成されている。この記憶部410は、所定のOSを記憶したOS記憶エリア411と、プログラム記憶エリア412とを備えている。
【0051】
プログラム記憶エリア412には、クラスタリング処理プログラム、及び、広告決定処理プログラムが記憶されている。
【0052】
クラスタリング処理プログラムは、制御部401に例えば公知のK−means法やSelf Organizing Maps(SOM)法などのクラスタリング手法を用いて、複数の消費者IDを、予め定められた複数のユニットにクラスタリングさせるためのプログラムである。
【0053】
広告決定処理プログラムは、上記DBサーバ300の広告データベースを、制御部401に更新させるためのプログラムである。
【0054】
一方、WEBサーバ500は、制御部501と、通信制御部502,503と、記憶部510とを有している。
【0055】
制御部501は、図示しないCPU及びRAM、ROM等のメモリを備えている。この制御部501は、RAMの一時記憶機能を利用しつつ、記憶部510に予め記憶された各種プログラムを実行する。これにより、WEBサーバ500全体の制御を行う。
【0056】
通信制御部502は、上記DBサーバ300や情報処理端末400との間で上記ネットワークNW2を介し行われる情報通信の制御を行う。通信制御部503は、上記PC端末600や広告配信会社700との間で、例えばWAN等のネットワークNW3を介し行われる情報通信の制御を行う。
【0057】
記憶部510は、例えばHDD等で構成されている。この記憶部510は、所定のOSを記憶したOS記憶エリア511と、WEBサーバプログラムを記憶したプログラム記憶エリア512と、ログイン情報記憶エリア513とを備えている。
【0058】
WEBサーバプログラムは、所定のウェブブラウザに対し、Hyper Text Markup Language(HTML)や画像等のオブジェクトの表示を提供するプログラムである。
【0059】
また、この記憶部510の適宜の領域には、上記ネットワークNW3を介し広告配信会社700から配信された、上記特定の商品に係わる推奨情報が記憶される。
【0060】
上記構成であるWEBサーバ600は、上記ネットワークNW3を介しPC端末600に接続されている。
【0061】
PC端末600は、複数の消費者それぞれにより所有されるPC端末である。このPC端末600は、表示手段としてのディスプレイ620と、キーボード621と、マウス622とを有している。
【0062】
図2に、上記歌唱履歴データベース3131の記憶内容の一例を示す。
【0063】
図2に示すように、歌唱履歴データベース3131には、各楽曲データごとに、楽曲データの識別情報である楽曲IDと、上記歌手IDと、当該楽曲データに対する複数の消費者の歌唱行動履歴とをそれぞれ対応付けた歌唱履歴情報が記憶されている。上記歌唱行動履歴には、楽曲データを歌唱した消費者の消費者IDと、歌唱行動日時とが含まれている。歌唱行動日時は、消費者が楽曲データを歌唱した日時情報である。なお、歌唱行動履歴が消費行動履歴に相当し、歌唱履歴情報が消費履歴情報に相当する。
【0064】
図3に、上記嗜好データベース3132の記憶内容の一例を示す。
【0065】
図3に示すように、嗜好データベース3132には、情報処理装置400の制御部401により実行されたクラスタリングの結果に対応した、消費者IDとユニットとの対応付けが記憶されている。すなわち、各消費者ごとに、消費者IDと、当該消費者IDがクラスタリングにより振り分けられたユニットの識別情報である嗜好IDとが対応付けられて記憶されている。
【0066】
情報処理装置400の制御部401は、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合と、当該消費者IDとユニットとの対応付けが記憶されている場合とで、異なる処理を実行する。
【0067】
まず、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合に行われる処理について説明する。
【0068】
嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合には、情報処理装置400の制御部401は、まず、歌唱履歴データベース3131に記憶された歌唱履歴情報を取得する。そして、その歌唱履歴情報を用いて、特徴ベクトルを生成する。特徴ベクトルとは、クラスタリングのために用意された上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する各消費者の歌唱行動を表すベクトルである。言い換えれば、特徴ベクトルは、各消費者の歌手の嗜好を表すベクトルである。
【0069】
上記取得された歌唱履歴情報には、上述したように、楽曲ID、歌手ID、消費者ID、及び歌唱行動日時が含まれている。したがって、上記商品構成の情報記憶エリア314から上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDを取得して、当該歌手IDをキーとすることにより、上記取得された歌唱履歴情報に含まれる当該歌手IDに対応付けられた消費者IDを検出することができる。すなわち、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対して歌唱行動を起こした消費者の消費者IDを検出することができる。
【0070】
なお、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合に用意された、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが、初期クラスタリング用商品構成に相当する。また、当該歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する特徴ベクトルが、初期クラスタリング用特徴ベクトルに相当する。以下適宜、この特徴ベクトルを、初期クラスタリング用の特徴ベクトルと称する。
【0071】
図4を用いて、上記初期クラスタリング用の特徴ベクトルを生成する手法の一例を説明する。本実施形態においては、情報処理装置400の記憶部410の適宜の領域に記憶されたテーブル4101を用いて、初期クラスタリング用の特徴ベクトルの生成が行われる。
【0072】
図4において、テーブル4101には、1人の消費者につき横一列の段を使用して、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する、上記取得された歌唱履歴情報に含まれる各消費者IDに係わる各消費者の歌唱行動の有無が記録されている。図4に示す例では、当該歌唱行動がある場合が「1」、当該歌唱行動がない場合が「0」と記録されている。
【0073】
すなわち、まず、このテーブル4101には、上記商品構成の情報記憶エリア314から取得された複数の歌手IDと、上記歌唱履歴データベース3131から取得された歌唱履歴情報に含まれる複数の消費者IDとが、対応付けられて記録される。その記録された複数の歌手IDをキーとして、上記取得された歌唱履歴情報に含まれる当該歌手IDに対応付けられた消費者IDがそれぞれ検出される。なお、このとき検出された消費者IDは、上記キーとなった歌手IDに係わる歌手の楽曲データに対して歌唱行動を起こした消費者の消費者IDである。その後、上記の検出結果に応じて、テーブル4101に「1」又は「0」が記録される。
【0074】
なお、テーブル4101における、1人の消費者に係わる横一列の段に記録されたデータは、当該消費者の初期クラスタリング用の特徴ベクトルに相当する。つまり、特徴ベクトルは、上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の歌手IDをベクトルの構成要素とし、「1」又は「0」を当該要素の値としたベクトルである。例えば、消費者ID「1」に係わる消費者の初期クラスタリング用の特徴ベクトルに関しての要素及びその値は、歌手ID「15410」で「1」、歌手ID「9045」で「0」、歌手ID「120」で「1」、歌手ID「7985」で「0」、歌手ID「354」で「0」、歌手ID「8460」で「0」、歌手ID「2368」で「1」・・・となる。つまり、消費者ID「1」に係わる消費者の初期クラスタリング用の特徴ベクトルは、<1,0,1,0,0,0,1・・・>となる。このようにテーブル4101を用いることで、初期クラスタリング用の特徴ベクトルと、消費者IDとを対応付けて記録することができる。
【0075】
情報処理装置400の制御部401は、次に、複数の初期クラスタリング用の特徴ベクトルを複数のユニットにクラスタリングするために、各ユニットを代表する代表ベクトルを、予め用意する。本実施形態では、図示しない乱数発生器を用いて乱数を発生させて、この乱数に基づいて、各ユニットごとにベクトルを生成する。そして、その各ユニットごとに生成したベクトルを、各ユニットの代表ベクトルの初期値に設定する。
【0076】
なお、この予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されていない場合に予め用意した代表ベクトルが、初期クラスタリング用代表ベクトルに相当する。以下適宜、この代表ベクトルを、初期クラスタリング用の代表ベクトルと称する。
【0077】
その後、情報処理装置400の制御部401は、上記設定した複数のユニットそれぞれの初期クラスタリング用の代表ベクトルを用いて、複数の消費者IDにそれぞれ対応付けられた複数の初期クラスタリング用の特徴ベクトルを、複数のユニットにクラスタリングする。このとき、全ての上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが「0」である消費者に対応する初期クラスタリング用の特徴ベクトルは、クラスタリングの対象から除外される。なお、全ての上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが「0」である消費者とは、当該初期クラスタリング用の特徴ベクトルの要素の値が全て「0」である消費者である。
【0078】
ここで、クラスタリングとは、いわゆる「教師なしのデータ分類手法」であり、複数のデータを外的基準なしに自動的に分類する手法である。本実施形態においては、前述した公知のK−means法やSOM法などのクラスタリング手法を用いて、クラスタリングを行う。一例として、K−means法を用いて、複数の初期クラスタリング用の特徴ベクトルをクラスタリングする方法を説明する。
【0079】
すなわち、情報処理装置400の制御部401は、まず、複数の初期クラスタリング用の特徴ベクトルを、ユークリッド距離が最小になるように、複数のユニットのいずれかに振り分ける。ユークリッド距離とは、初期クラスタリング用の特徴ベクトルとユニットの代表ベクトルとの距離である。その後、各ユニットに振り分けられた全ての初期クラスタリング用の特徴ベクトルに基づき、各ユニットごとに、ユニットの新たな代表ベクトルを算出する。
【0080】
そして、複数の初期クラスタリング用の特徴ベクトルを、ユニットの新たな代表ベクトルとの上記ユークリッド距離が最小となるユニットに振り分け直す。このとき、いずれかの初期クラスタリング用の特徴ベクトルについて、上記ユニットの振り分け直しが行われた場合には、各ユニットに新しく振り分けられた全ての初期クラスタリング用の特徴ベクトルに基づき、各ユニットごとに、ユニットの新たな代表ベクトルを算出し、上記と同様の処理を繰り返す。そして、上記の処理を繰り返すことにより、全ての初期クラスタリング用の特徴ベクトルについて、上記ユニットの振り分け直しが行われなくなった場合を、クラスタリングの完了とする。これにより、複数の初期クラスタリング用の特徴ベクトルは、複数のユニットに振り分けられる。
【0081】
なお、上記では、K−means法によりクラスタリングを行う場合を例にとって説明したが、上記SOM法やその他のクラスタリング手法によりクラスタリングを行ってもよい。
【0082】
その後、上記のクラスタリングの結果に対応して、各初期クラスタリング用の特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。そして、各消費者ごとに、消費者IDと、当該消費者IDに対応付けたユニットの嗜好IDとを、上記嗜好データベース3132に記憶させる。
【0083】
また、上記嗜好データベース3132に、予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されている場合には、情報処理装置400の制御部401は、予め実行されたクラスタリングの結果を活用して、複数の消費者IDを複数のユニットにクラスタリングする(詳細は後述する)。
【0084】
また、本実施形態では、情報処理装置400の制御部401は、上記嗜好データベース3132に記憶されたクラスタリングの結果に対応したデータ、すなわち、複数の消費者IDと複数の嗜好IDとの対応付けを利用して、各消費者に対して推奨する推奨情報を決定する。そして、その決定内容に従って、各消費者のPC端末600に対し推奨情報を出力する(詳細は後述する)。
【0085】
図5を用いて、情報処理装置400の制御部401が実行する、上述したクラスタリングに関する制御手順を説明する。なお、制御部401は、このフローに示す処理を、上記クラスタリング処理プログラムに従って実行する。
【0086】
図5において、例えばシステム管理者により上記キーボード421やマウス422を用いて、所定の処理開始指令が操作入力されることによって、図中「START」位置で表されるように、このフローが開始される。
【0087】
まずステップS5で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応したデータが記憶されているかどうかを判定する。当該データが記憶されていない場合には、判定が満たされずステップS100に移る。
【0088】
ステップS100では、制御部401は、所定の初期クラスタリング処理を実行する。この詳細内容については、後述の図6で説明する。その後、このフローを終了する。
【0089】
一方、上記ステップS5において、嗜好データベース3132に、予め実行されたクラスタリングの結果に対応したデータが記憶されていた場合には、ステップS5の判定が満たされてステップS200に移る。
【0090】
ステップS200では、制御部401は、予め実行されたクラスタリングの結果を継承して新たなクラスタリングを行う、クラスタリング処理を実行する。この詳細内容については、後述の図7で説明する。その後、このフローを終了する。
【0091】
図6を用いて、上記図5のステップS100の詳細手順を説明する。
【0092】
図6において、まずステップS105で、制御部401は、DBサーバ300の上記商品構成の情報記憶エリア314にアクセスする。そして、商品構成の情報記憶エリア314に記憶された複数の歌手IDを取得する。
【0093】
その後、ステップS110で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌唱履歴データベース3131にアクセスする。そして、歌唱履歴データベース3131に記憶された、複数の楽曲データに対する複数の消費者の歌唱履歴情報を取得する。
【0094】
そして、ステップS115に移り、制御部401は、上記ステップS110で取得された歌唱履歴情報を用いて、上記ステップS105で取得された複数の歌手IDに係わる楽曲データ対する、各消費者の初期クラスタリング用の特徴ベクトルを生成する。そして、その生成した各消費者の初期クラスタリング用の特徴ベクトルと、当該消費者の消費者IDとを対応付ける。このステップが、各請求項記載の第2特徴ベクトル生成手段として機能する。なお、本実施形態では、前述したように、テーブル4101を使用して、上記各消費者の初期クラスタリング用の特徴ベクトルを生成し、各消費者の初期クラスタリング用の特徴ベクトルと、当該消費者の消費者IDとを対応付ける(図4参照)。
【0095】
その後、ステップS120で、制御部401は、上記ステップS115で生成された各消費者の初期クラスタリング用の特徴ベクトルのうち、上記ステップS105で取得された全ての歌手IDに係わる楽曲データに対する初期クラスタリング用の特徴ベクトルが0である消費者に対応する初期クラスタリング用の特徴ベクトルを、後述のステップS130でのクラスタリングの対象から除外する。言い換えれば、全ての上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが0である消費者に対応する初期クラスタリング用の特徴ベクトルを、後述のステップS130でのクラスタリングの対象から除外する。このステップが、各請求項記載の除外処理手段として機能する。なお、所定期間内における歌唱行動の回数、すなわち、歌唱回数が、所定のしきい値以下である消費者、例えば1年間の歌唱回数が5回以下である消費者、に対応する初期クラスタリング用の特徴ベクトルを、後述のステップS130でのクラスタリングの対象から除外するようにしてもよい。
【0096】
そして、ステップS125に移り、制御部401は、上記乱数発生器を用いて乱数を発生させて、この乱数に基づいて、各ユニットごとにベクトルを生成する。そして、その各ユニットごとに生成したベクトルを、各ユニットの初期クラスタリング用の代表ベクトルの初期値に設定する。
【0097】
その後、ステップS130で、制御部401は、上記ステップS125で設定された複数のユニットそれぞれの初期クラスタリング用の代表ベクトルを用いて、上記ステップS115で複数の消費者IDにそれぞれ対応付けられた、複数の初期クラスタリング用の特徴ベクトルを、前述したような手法により、複数のユニットにクラスタリングする。このステップが、各請求項記載の第2クラスタリング手段として機能する。そして、このクラスタリングの結果に対応して、各初期クラスタリング用の特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。
【0098】
そして、ステップS135に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に、上記ステップS130でのクラスタリングの結果、すなわち、複数の消費者IDと複数のユニットとの対応付けを記憶させる。その後、このルーチンを終了する。
【0099】
図7を用いて、上記図5のステップS200の詳細手順を説明する。
【0100】
図7において、まずステップS205で、制御部401は、DBサーバ300の上記商品構成の情報記憶エリア314にアクセスする。そして、商品構成の情報記憶エリア314に記憶された複数の歌手IDを取得する。なお、このステップで取得される複数の歌手IDに係わる楽曲データ、すなわち、上記予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されている場合に用意された上記歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが、新たなクラスタリングを行うために用意された第1商品構成に相当する。
【0101】
その後、ステップS210で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌唱履歴データベース3131にアクセスする。そして、歌唱履歴データベース3131に記憶された、複数の楽曲データに対する複数の消費者の歌唱履歴情報を取得する。このステップが、各請求項記載の履歴取得手段として機能する。
【0102】
そして、ステップS215に移り、制御部401は、上記ユニットに対応する変数Uの値を1に設定する。
【0103】
その後、ステップS220で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、この時点での変数Uの値に対応するユニットの嗜好IDをキーとして嗜好データベース3132内を検索し、当該嗜好IDに対応付けられた全ての消費者IDを検出する。すなわち、この時点でのUの値に対応するユニットに属する全消費者の消費者IDを検出する。
【0104】
そして、ステップS225に移り、制御部401は、上記ステップS210で取得された歌唱履歴情報を用いて、上記ステップS205で取得された複数の歌手IDに係わる楽曲データ対する、上記ステップS220で検出された各消費者IDに係わる各消費者の特徴ベクトルを生成する。なお、このステップで生成される特徴ベクトル、すなわち、上記予め実行されたクラスタリングの結果に対応した消費者IDとユニットとの対応付けが記憶されている場合に生成される特徴ベクトルが、第1特徴ベクトルに相当する。以下適宜、この特徴ベクトルを、第1特徴ベクトルと称する。そして、上記生成した各消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。このステップが、各請求項記載の第1特徴ベクトルとして機能する。なお、制御部401は、上記テーブル4101を使用して、上記初期クラスタリング用の特徴ベクトルの生成方法とほぼ同様の方法により、第1特徴ベクトルを生成し、各消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。
【0105】
その後、ステップS230で、制御部401は、上記ステップS225で生成された複数の第1特徴ベクトルの平均値を算出する。これは言い換えれば、上記図6のステップS130での初期クラスタリング用の特徴ベクトルのクラスタリング結果に基づく複数の消費者IDと複数のユニットとの初期的対応付けに応じて、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの平均値を算出している。さらに言い換えれば、上記図6のステップS130での初期クラスタリング用の特徴ベクトルのクラスタリング結果に対応して上記嗜好データベース3132に予め記憶された上記初期的対応付けを、上記ステップS225で各消費者ごとに生成された第1特徴ベクトルに対して適用し、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの平均値を算出している。その後、その算出した平均値を、この時点でのUの値に対応するユニットのベクトル状態量に決定する。このステップが、各請求項記載の状態量決定手段として機能する。なお、後述のステップS250での第1特徴ベクトルのクラスタリング結果に基づく各消費者IDとユニットとの対応付けが、上記嗜好データベース3132に記憶されている場合には、その対応付けに応じて、上記平均値が算出される。いずれの場合でも、このステップでは、予め実行されたクラスタリングの結果に基づく各消費者IDとユニットとの対応付けに応じて、上記平均値が算出される。
【0106】
そして、ステップS235に移り、制御部401は、上記ステップS230で決定された、この時点のUの値に対応するユニットのベクトル状態量を、当該ユニットの代表ベクトルの初期値に設定する。
【0107】
その後、ステップS240で、制御部401は、上記変数Uの値が、予め定められたユニットの総数に対応する最大値U_maxになったかどうか、すなわち、全てのユニットの代表ベクトルの初期値を設定したかどうかを判定する。U=U_maxとなっていない場合、すなわち、全てのユニットの代表ベクトルの初期値を設定していない場合には、判定が満たされずステップS245に移る。
【0108】
ステップS245では、制御部401は、変数Uの値に1を加え、上記ステップS220に戻り同様の手順を繰り返す。
【0109】
一方、上記ステップS240において、U=U_maxとなっていた場合、すなわち、全てのユニットの代表ベクトルの初期値を設定していた場合には、ステップS240の判定が満たされてステップS250に移る。なお、この場合には、各消費者の第1特徴ベクトルと当該消費者の消費者IDとが対応付けられ、各ユニットごとに代表ベクトルの初期値が設定されている。
【0110】
ステップS250では、制御部401は、上記ステップS235で各ユニットごとに設定された代表ベクトルの初期値を用いて、上記ステップS225で複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルを、前述したような手法により、複数のユニットにクラスタリングする。そして、このクラスタリングの結果に対応して、各第1特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。言い換えれば、各消費者IDに複数のユニットのいずれかを対応付ける。このステップが、各請求項記載の第1クラスタリング手段として機能する。
【0111】
そして、ステップS255に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に、上記ステップS250でのクラスタリングの結果、すなわち、複数の消費者IDと複数のユニットとの対応付けを記憶させる。その後、このルーチンを終了する。
【0112】
図8を用いて、情報処理装置400の制御部401が実行する、上述した商品推奨に関する制御手順を説明する。なお、制御部401は、このフローに示す処理を、上記広告決定処理プログラムに従って実行する。
【0113】
図8において、例えばシステム管理者により上記キーボード421やマウス422を用いて、所定の処理開始指令が操作入力されることによって、図中「START」位置で表されるように、このフローが開始される。
【0114】
まずステップS300で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、嗜好データベース3132に記憶されたデータ、すなわち、複数の消費者IDと複数の嗜好IDとの対応付けを取得する。
【0115】
その後、ステップS305で、制御部401は、上記ステップS300で取得されたデータに基づき、各消費者に対して推奨する推奨情報を決定する。例えば、同一のユニットには歌手の嗜好が似た消費者どうしが属するということに応じて、各ユニットに属する消費者の嗜好にあった商品の推奨情報を、各ユニットに属する消費者に対する推奨情報として決定する。そして、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記広告データベースにアクセスし、各消費者ごとに決定した推奨情報の広告IDを、当該消費者の消費者IDと対応付けて記憶させる。これにより、上記広告データベースに記憶された広告IDの更新を行う。
【0116】
そして、ステップS310に移り、制御部401は、通信制御部402及びネットワークNW2を介し、WEBサーバ500の制御部501に制御信号を出力する。そして、上記広告データベースの記憶内容に従って、すなわち、上記ステップS305で決定された推奨情報を、通信制御部503及びネットワークNW3を介し、各消費者のPC端末600に対して出力させる。これにより、各消費者のPC端末600のディスプレイ620には、当該消費者に対する推奨情報が表示される。その後、このフローを終了する。
【0117】
以上説明したように、第1の実施形態においては、上記歌唱履歴データベース3131(図2を参照)から歌唱履歴情報が取得される。そして、その取得された歌唱履歴情報を用いて、新たなクラスタリングを行うために用意された商品構成に対する、上記の例では歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する、各消費者の第1特徴ベクトルが生成される。その生成された第1特徴ベクトルは、当該第1特徴ベクトルに対応する消費者の消費者IDに対し対応付けられる。
【0118】
そして、上記のようにして消費者ごとに生成された第1特徴ベクトルを用いて、各ユニットごとにベクトル状態量が決定される。具体的には、新たに実行するクラスタリングに先立ち行われたクラスタリングの結果に対応して、各消費者IDとユニットとの対応付けが、上記嗜好データベース3132(図3参照)に予め記憶されている。そして、その各消費者IDとユニットとの対応付けを用いることにより、上記消費者ごとに生成された第1特徴ベクトルを、各ユニットごとに集計することができる。その後、その集計された第1特徴ベクトルの値を用いて、各ユニットごとにベクトル状態量が決定される。そして、その決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、上記複数の第1特徴ベクトルをクラスタリングする。これにより、各消費者IDに対し、複数のユニットのいずれかを対応付けることができる。
【0119】
以上のようにして、本実施形態においては、過去のクラスタリングの結果を活用して新たなクラスタリングを行う。これにより、ランダムに設定したベクトルを各ユニットの代表ベクトルの初期値として用いて、新たなクラスタリングを行う場合と異なり、過去のクラスタリング時から長期間が経過したり、歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが大きく変動した場合等であっても、各消費者IDが振り分けられるユニットが大きく異ならず、概ね同等のユニットとなる。
【0120】
特に、過去のクラスタリングの結果を継承し活用する際に、各ユニットの代表ベクトルを今回のクラスタリングのために継承する手法では、時間の経過により歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが変化するため、継承がうまくいかない。本実施形態では、各ユニットの代表ベクトルを継承するのではなく、各ユニットに所属する消費者を継承する。そして、当該消費者について、新しい歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データにより第1特徴ベクトルを算出する。その後、その第1特徴ベクトルに基づくベクトル状態量を用いて新たなクラスタリングを行う。これにより、上記と異なり、時間の経過により歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが変化した場合でも、過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0121】
また、本実施形態では特に、過去に自らが行ったクラスタリングの結果を活用して新たなクラスタリングを行う。すなわち、過去のクラスタリング実行時には、その時点における歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが生成される。そして、その生成された初期クラスタリング用の特徴ベクトルと、当該ベクトルに対応する各消費者IDとが対応付けられる。そして、このようにして複数の消費者IDにそれぞれ対応付けられた複数の初期クラスタリング用の特徴ベクトルは、各ユニットの初期クラスタリング用の代表ベクトルを用いて、クラスタリングされる。このクラスタリングにより、複数の消費者IDと複数のユニットのいずれかとが対応付けられて、上記嗜好データベース3132に記憶される。
【0122】
そして、上記のようにして嗜好データベース3132に記憶された消費者IDと各ユニットとの対応付けが、各消費者ごとに生成された第1特徴ベクトルに適用される。これによって、各ユニットのベクトル状態量が、各ユニットごとに決定される。
【0123】
以上の結果、時間の経過により歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データが変化した場合でも、自らの行った過去のクラスタリングの結果を円滑かつ確実に継承し、複数のユニットの属性を継承して利用することができる。
【0124】
また、本実施形態では特に、複数の楽曲データに対する複数の消費者の消費履歴情報を参照し、全ての歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対する初期クラスタリング用の特徴ベクトルが0である消費者に対応する初期クラスタリング用の特徴ベクトルを、クラスタリングの対象から除外する。このように、データとしての利用価値が乏しい情報をノイズとしてクラスタリング対象から除外することにより、クラスタリングにおける精度を向上すると共に、処理時間を短縮することができる。
【0125】
また、本実施形態では特に、各ユニットのベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの平均値を用いる。これにより、過去のクラスタリングの結果を継承しつつ、新しい歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対応した各ユニットごとの最新の歌唱傾向を反映させたクラスタリングを実行することができる。
【0126】
なお、本発明は、上記実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を順を追って説明する。
【0127】
(1−1)各ユニットに属する全消費者の第1特徴ベクトルの中央値をベクトル状態量に決定する場合
【0128】
上記実施形態においては、各ユニットに属する全消費者の第1特徴ベクトルの平均値をベクトル状態量に決定するようにしたが、これに限られない。すなわち、各ユニットに属する全消費者の第1特徴ベクトルの中央値をベクトル状態量に決定するようにしてもよい。
【0129】
ここで、本変形例において、情報処理装置400の制御部401が実行する、クラスタリングに関する制御手順において前述の図5と異なる点は、ステップS200であり、その他の手順は前述の図5の各手順と同様である。以下、図9を用いて、本変形例におけるステップS200の詳細手順を説明する。なお、この図9は、前述の図7に対応する図である。図7と同等の手順には同符号を付し説明を省略する。
【0130】
図9において、前述の図7と異なる点は、ステップS230に代えてステップS230′を設けた点である。すなわち、ステップS205〜ステップS225は、前述の図7と同様である。ステップS225において、制御部401は、前述のステップS220で検出された各消費者IDに係わる各消費者の特徴ベクトルを生成したら、ステップS230に代えて設けたステップS230′に移る。
【0131】
ステップS230′では、制御部401は、上記ステップS225で生成された複数の第1特徴ベクトルの中央値を選定する。これは言い換えれば、予め実行されたクラスタリングの結果に基づく複数の消費者IDと複数のユニットとの対応付けに応じて、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの中央値を選定している。さらに言い換えれば、予め実行されたクラスタリングの結果に対応して上記嗜好データベース3132に予め記憶された上記対応付けを、上記ステップS225で各消費者ごとに生成された第1特徴ベクトルに対して適用し、この時点でのUの値に対応するユニットに属する全消費者の第1特徴ベクトルの中央値を選定している。その後、その選定した中央値を、この時点でのUの値に対応するユニットのベクトル状態量に決定する。このステップも、各請求項記載の状態量決定手段として機能する。
【0132】
その後のステップS235〜ステップS255は、前述の図7とほぼ同様であるので、説明を省略する。
【0133】
本変形例においては、各ユニットのベクトル状態量として、各ユニットに属する全消費者の第1特徴ベクトルの中央値を用いる。これにより、本変形例においても、過去のクラスタリングの結果を継承しつつ、新しい歌手別歌唱回数ランキングの1位から1000位までに該当する歌手の楽曲データに対応した各ユニットごとの最新の歌唱傾向を反映させたクラスタリングを実行することができる。特に、全消費者の第1特徴ベクトルの平均値でなく中央値を用いることにより、ユニットにおける第1特徴ベクトルの値の分布が偏っていた場合に、その偏り傾向を確実に反映させたクラスタリングを行うことができる。
【0134】
(1−2)各ユニットに属する所定数の消費者の第1特徴ベクトルに基づき、ベクトル状態量を決定する場合
以上においては、各ユニットに属する全消費者の第1特徴ベクトルに基づき、各ユニットのベクトル状態量を決定していた。例えば、上記実施形態では各ユニットに属する全消費者の第1特徴ベクトルの平均値を、上記(1−2)の変形例では各ユニットに属する全消費者の第1特徴ベクトルの中央値を、各ユニットのベクトル状態量として決定していた。しかしながらこれに限られず、各ユニットに属する所定数の消費者の第1特徴ベクトルに基づき、各ユニットのベクトル状態量を決定するようにしてもよい。
【0135】
ここで、本変形例において、情報処理装置400の制御部401が実行する、クラスタリングに関する制御手順において前述の図5と異なる点は、ステップS200であり、その他の手順は前述の図5の各手順と同様である。以下、図10を用いて、本変形例におけるステップS200の詳細手順を説明する。なお、この図10は、前述の図7に対応する図である。図7と同等の手順には同符号を付し説明を省略する。
【0136】
図10において、前述の図7と異なる点は、ステップS220、ステップS225、ステップS230、及びステップS250に代えて、ステップS220′、ステップS225′、ステップS230″、及びステップS250′を設けた点と、上記ステップS230″とステップS240との間に、ステップS237及びステップS239を新たに設けた点とである。
【0137】
すなわち、ステップS205〜ステップS215は、前述の図7と同様である。ステップS215において、制御部401は、上記変数Uの値を1に設定したら、ステップS220に代えて設けたステップS220′に移る。
【0138】
ステップS220′では、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、この時点での変数Uの値に対応するユニットの嗜好IDをキーとして嗜好データベース3132内を検索し、当該嗜好IDに対応付けられた所定数の、例えば10個の、消費者IDを検出する。すなわち、この時点でのUの値に対応するユニットに属する所定数の消費者の消費者IDを検出する。
【0139】
そして、ステップS225に代えて設けたステップS225′に移り、制御部401は、前述のステップS210で取得された歌唱履歴情報を用いて、前述のステップS205で取得された複数の歌手IDに係わる楽曲データ対する、上記ステップS220′で検出された所定数の消費者IDに係わる消費者の第1特徴ベクトルを生成する。そして、上記生成した所定数の消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。
【0140】
その後、ステップS230に代えて設けたステップS230″で、制御部401は、上記ステップS225′で生成された所定数の第1特徴ベクトルの平均値を算出する。これは言い換えれば、予め実行されたクラスタリングの結果に基づく複数の消費者IDと複数のユニットとの対応付けに応じて、この時点でのUの値に対応するユニットに属する所定数の消費者の第1特徴ベクトルの平均値を算出している。さらに言い換えれば、予め実行されたクラスタリングの結果に対応して上記嗜好データベース3132に予め記憶された上記対応付けを、上記ステップS225′で所定数の消費者それぞれについて生成された第1特徴ベクトルに対して適用し、この時点でのUの値に対応するユニットに属する所定数の消費者の第1特徴ベクトルの平均値を算出している。その後、その算出した平均値を、この時点でのUの値に対応するユニットのベクトル状態量に決定する。このステップも、各請求項記載の状態量決定手段として機能する。なお、上記ステップS225′で生成された所定数の第1特徴ベクトルの中央値を選定して、その選定した平均値を、この時点でのUの値に対応するユニットのベクトル状態量に決定するようにしてもよい。
【0141】
その後のステップS235は、前述の図7とほぼ同様であり、制御部401は、上記ステップS230″で決定された、この時点のUの値に対応するユニットのベクトル状態量を、当該ユニットの代表ベクトルの初期値に設定する。
【0142】
そして、新たに設けたステップS237に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、この時点での変数Uの値に対応するユニットの嗜好IDをキーとして嗜好データベース3132内を検索し、当該嗜好IDに対応付けられた、上記ステップS220′で検出されなかった全ての消費者IDを検出する。すなわち、この時点でのUの値に対応するユニットに属する残りの消費者の消費者IDを検出する。
【0143】
その後、新たに設けたステップS239で、制御部401は、前述のステップS210で取得された歌唱履歴情報を用いて、前述のステップS205で取得された複数の歌手IDに係わる楽曲データ対する、上記ステップS227で検出された残りの消費者IDに係わる消費者の第1特徴ベクトルを生成する。そして、上記生成した残りの消費者の第1特徴ベクトルと、当該消費者の消費者IDとを対応付ける。
【0144】
その後のステップS240及びステップS245は、前述の図7と同様である。ステップS240において、U=U_maxとなっていた場合には、ステップS240の判定が満たされて、ステップS250に代えて設けたステップS250′に移る。
【0145】
ステップS250′では、制御部401は、上記ステップS235で各ユニットごとに設定された代表ベクトルの初期値を用いて、上記ステップS225′及びステップS239で複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルを、前述したような手法により、複数のユニットにクラスタリングする。そして、このクラスタリングの結果に対応して、各第1特徴ベクトルに対応する各消費者IDに、当該特徴ベクトルが振り分けられたユニットを対応付ける。言い換えれば、各消費者IDに複数のユニットのいずれかを対応付ける。このステップも、各請求項記載の第1クラスタリング手段として機能する。
【0146】
その後のステップS255は、前述の図7とほぼ同様であり、制御部401は、嗜好データベース3132に、上記ステップS250′でのクラスタリングの結果、すなわち、複数の消費者IDと複数のユニットとの対応付けを記憶させる。そして、このルーチンを終了する。
【0147】
なお、上記において、ステップ225及びステップS239が、各請求項記載の第1特徴ベクトル生成手段として機能する。
【0148】
本変形例によれば、上記第1の実施形態や上記(1−1)の変形例と同様の効果を得る。
【0149】
(1−3)消費行動履歴に用いてクラスタリングを行う場合
以上においては、消費者が楽曲データを歌唱した歌唱行動履歴に用いて、複数の消費者IDを複数のユニットにクラスタリングする例を説明したが、これに限られない。すなわち、消費者の実際の消費行動、例えば物品商品の購入など、による消費行動履歴を用いて、複数の消費者IDを複数のユニットにクラスタリングするようにしてもよい。
【0150】
この場合のDBサーバ300の消費者データベースには、各商品ごとに、商品の識別情報と、当該商品に対する複数の消費者の消費行動履歴とを対応付けた消費履歴情報が記憶されている。上記消費行動履歴には、商品を消費した消費者の消費者IDと、消費行動日時とが含まれている。また、この場合のDBサーバ300の商品構成の情報記憶エリア314には、クラスタリングのために用意された商品売上ランキングの1位から1000位までに該当する商品の識別情報が記憶されている。上記商品売上ランキングの1位から1000位までに該当する商品が商品構成に相当する。
【0151】
また、本変形例において、情報処理装置400の制御部401が実行する処理は、上記実施形態とほぼ同様である。すなわち、制御部401は、上記消費者データベースにアクセスして、複数の商品に対する複数の消費者の消費履歴情報を取得する。そして、この取得された消費履歴情報を用いて、新たなクラスタリングのために用意された第1商品構成としての商品売上ランキングの1位から1000位までに該当する商品に対する消費者の消費行動を表す第1特徴ベクトルを生成する。そして、その生成した第1特徴ベクトルと当該消費者の消費者IDとを対応付ける。
【0152】
その後、予め実行されたクラスタリングの結果に対応して、予め上記嗜好データベース3132に記憶された、消費者IDとユニットとの対応付けに応じて、各ユニットのベクトル状態量を、各ユニットごとに決定する。そして、その各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、複数の消費者IDにそれぞれ対応付けられた複数の第1特徴ベクトルをクラスタリングする。その後、各消費者IDに、上記クラスタリングの結果に応じたユニットを対応付ける。そして、このクラスタリングの結果を利用して、各消費者に対して推奨する推奨情報を決定し、その決定内容に従って、各消費者のPC端末600に対し推奨情報を出力する。
【0153】
本変形例によっても、上記第1の実施形態や上記各の変形例と同様の効果を得る。
【0154】
次に、本発明の第2の実施形態について説明する。
【0155】
図11を用いて、第2の実施形態の消費者情報処理装置を備えた市場分析システムを説明する。なお、この図11は、前述の図1に対応する図である。前述の図1と同等の部分には同符号を付し説明を省略する。
【0156】
図11において、市場分析システム2は、カラオケルームKRに設置されたカラオケ装置100と、楽曲配信会社200と、DBサーバ300と、情報処理装置400とを有している。
【0157】
これらカラオケ装置100、楽曲配信会社200、DBサーバ300、及び情報処理装置400の機能構成は、前述の図1とほぼ同様である。但し、DBサーバ300のデータベース記憶エリア313や情報処理装置400のプログラム記憶エリア412の記憶内容は、前述の第1の実施形態と多少異なっている。
【0158】
本実施形態におけるDBサーバ300のデータベース記憶エリア313には、会員データベース、歌手データベース、歌唱履歴データベース3131(図2参照)、及び嗜好データベース3132(図7参照)が記憶されている。すなわち、前述の広告データベースが省略されている。なお、これら会員データベース、歌手データベース、歌唱履歴データベース3131、及び嗜好データベース3132の記憶内容は、前述の第1の実施形態と同様である。
【0159】
また、本実施形態における情報処理装置400のプログラム記憶エリア412には、クラスタリング処理プログラム、及び、分析処理プログラムが記憶されている。すなわち、前述の広告決定処理プログラムに代えて分析処理プログラムが記憶されている。
【0160】
分析処理プログラムは、制御部401にクラスタリングの結果を分析させるためのプログラムである。
【0161】
本実施形態では、情報処理装置400の制御部401は、上記歌唱履歴データベース3131に記憶された歌唱履歴情報に基づいて、前述の第1の実施形態と同様の方法により、複数の消費者IDを複数のユニットにクラスタリングする。また、そのクラスタリングの結果に対応したデータは、前述の第1の実施形態と同様に、上記嗜好データベース3132に記憶されている。そして、例えば分析者がある歌手を嗜好する消費者の分布を分析したいとき等には、情報処理装置400の制御部401に分析処理プログラムを実行させる。すると、上記ディスプレイ420に、所定の分析画面P(後述の図12参照)が表示され、分析が開始される。
【0162】
図12に、上記ディスプレイ420に表示された分析画面Pの一例を示す。
【0163】
図12に示すように、分析画面Pには、歌手名入力ボックスT1と、分析期間入力ボックスT2と、分析結果表示領域T3と、分析開始ボタンBとが含まれている。歌手名入力ボックスT1は、分析対象となる歌手名が入力される欄である。分析期間入力ボックスT2は、分析対象となる期間が入力される欄である。分析結果表示領域T3は、分析結果が表示される領域である。分析開始ボタンBは、分析を開始させるためのボタンである。
【0164】
分析者は、この分析画面Pが表示されると、上記キーボード421やマウス422を用いて所定の操作入力を行う。すなわち、分析者は、上記キーボード421やマウス422を適宜操作して、歌手名入力ボックスT1に、分析したい歌手名を入力する。この例では「Artist1」と入力されている。そして、分析者は、上記キーボード421やマウス422を適宜操作して、分析期間入力ボックスT2に、分析したい期間を入力する。この例では「2009/01/01〜2009/12/31」と入力されている。
【0165】
上記歌手名及び期間の入力が完了すると、分析者は、上記マウス422を適宜操作して、分析開始ボタンBをクリックする。これにより、制御部401は、上記入力された歌手名及び期間をキーワードとして用いて、クラスタリングの結果に対応して記憶されたデータを利用して分析を開始する(詳細は後述する)。そして、制御部401は、分析結果を可視化して、上記分析結果表示領域T3に表示させる。
【0166】
ここで、本実施形態において、情報処理装置400の制御部401が実行する、クラスタリングに関する制御手順は、前述の第1の実施形態と同様である。以下、図13を用いて、情報処理装置400の制御部401が実行する、上述した分析に関する制御手順を説明する。なお、制御部401は、このフローに示す処理を、上記分析処理プログラムに従って実行する。
【0167】
図13において、例えば分析者により上記キーボード421やマウス422を用いて、所定の処理開始指令が操作入力されることによって、図中「START」位置で表されるように、このフローが開始される。
【0168】
まずステップS400で、制御部401は、出力制御部403を介しディスプレイ420に制御信号を出力し、上記分析画面Pを表示させる。これにより、分析者は、上記キーボード421やマウス422を用いて、歌手名入力ボックスT1に歌手名の入力、及び、分析期間入力ボックスT2に期間の入力、を行うことができる。
【0169】
その後、ステップS405で、制御部401は、上記マウス422を介し分析開始ボタンBがクリックされたかどうかを判定する。分析開始ボタンBがクリックされるまで判定が満たされず、ループして待機する。そして、分析開始ボタンBがクリックされたら判定が満たされて、歌手名入力ボックスT1及び分析期間入力ボックスT2に入力されたデータをそれぞれ取得して、ステップS410に移る。
【0170】
ステップS410では、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌手データベースにアクセスする。そして、上記歌手名入力ボックスTに入力された歌手名をキーとして、歌手データベース内を検索し、当該歌手名に対応付けられた歌手IDを取得する。
【0171】
そして、ステップS415に移り、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記歌唱履歴データベース3131にアクセスする。そして、歌唱履歴データベース3131に記憶された歌唱履歴情報を参照し、歌唱行動日時が上記分析期間入力ボックスT2に入力された期間に含まれる歌唱履歴情報を抽出する。その後、上記ステップS410で取得された歌手IDをキーとして、上記抽出した歌唱履歴情報に含まれる当該歌手IDに対応付けられた消費者IDを取得する。
【0172】
その後、ステップS420で、制御部401は、通信制御部402及びネットワークNW2を介し、DBサーバ300の上記嗜好データベース3132にアクセスする。そして、上記ステップS415で取得された消費者IDをキーとして嗜好データベース3132内を検索して、当該消費者IDに対応付けられた嗜好IDを取得する。これにより、上記歌手名入力ボックスT1に入力された歌手に対し、上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者、及び、その消費者の属するユニットがわかる。
【0173】
そして、ステップS425に移り、制御部401は、上記ステップS420の結果に基づいて、上記歌手名入力ボックスT1に入力された歌手に対し、上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者の、各ユニットごとの分布を表した画像データを生成する。
【0174】
その後、ステップS430で、制御部401は、出力制御部403を介し、上記ステップS425で生成された画像データをディスプレイ420に出力する。そして、ディスプレイ420の上記分析結果表示領域T3に、上記画像データに対応する画像を表示させる。その後、このフローを終了する。
【0175】
なお、上記図12に示す例では、分析結果表示領域T3には、ユニットが同心円で示され、上記歌手名入力ボックスT1に入力された歌手に対し上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者が「×」マークで示された画像が表示されている。すなわち、この画像では、「×」マークが多い同心円ほど、ユニットに属する上記歌手名入力ボックスT1に入力された歌手に対し上記分析期間入力ボックスT2に入力された期間に歌唱行動を起こした消費者の数が多くなっている。したがって、分析者は、クラスタリングの結果を反映した上記画像を参照することで、入力した歌手を嗜好する消費者の分布、つまり、嗜好するユニットや嗜好しないユニット等を知ることができる。
【0176】
以上説明した第2の実施形態においても、前述の第1の実施形態と同様の効果を得る。
【0177】
なお、以上において、図1及び図11の各図中に示す矢印は信号の流れの一例を示すものであり、信号の流れ方向を限定するものではない。
【0178】
また、図5、図6、図7、図8等に示すフローチャートは本発明を上記フローに示す手順に限定するものではなく、発明の趣旨及び技術的思想を逸脱しない範囲内で手順の追加・削除又は順番の変更等をしてもよい。
【0179】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0180】
その他、一々例示はしないが、本発明は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0181】
1 商品推奨システム
2 市場分析システム
300 DBサーバ
400 情報処理装置(消費者情報処理装置)
401 制御部
3131 歌唱履歴データベース(消費者データベース)
3132 嗜好データベース
【特許請求の範囲】
【請求項1】
複数の消費者の識別情報を複数のユニットにクラスタリングする消費者情報処理装置であって、
商品の識別情報と当該商品に対する複数の消費者の消費行動履歴とを対応付けた消費履歴情報を各商品ごとに記憶した消費者データベースにアクセスし、複数の商品に対する複数の消費者の消費履歴情報を取得する履歴取得手段と、
前記履歴取得手段により取得された前記複数の商品に対する前記複数の消費者の前記消費履歴情報を用いて、新たなクラスタリングを行うために用意された第1商品構成に対する前記消費者の消費行動を表す第1特徴ベクトルを生成し、生成した第1特徴ベクトルと当該消費者の識別情報とを対応付ける第1特徴ベクトル生成手段と、
予め実行されたクラスタリングの結果に対応して予め記憶された、前記消費者の識別情報と前記ユニットとの対応付けを、第1特徴ベクトル生成手段により前記消費者ごとに生成された第1特徴ベクトルに対して適用し、各ユニットのベクトル状態量を、各ユニットごとに決定する状態量決定手段と、
前記状態量決定手段で各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記第1特徴ベクトルをクラスタリングし、各消費者の識別情報に前記複数のユニットのいずれかを対応付ける第1クラスタリング手段と
を有することを特徴とする消費者情報処理装置。
【請求項2】
複数の商品に対する複数の消費者の前記消費履歴情報を用いて、予め定められた初期クラスタリング用商品構成に対する各消費者の消費行動を表す初期クラスタリング用特徴ベクトルを生成し、生成した初期クラスタリング用特徴ベクトルと当該消費者の識別情報とを対応付ける第2特徴ベクトル生成手段と、
予め用意された、前記複数のユニットそれぞれの初期クラスタリング用代表ベクトルを用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記初期クラスタリング用特徴ベクトルをクラスタリングする第2クラスタリング手段と
をさらに有し、
前記状態量決定手段は、
前記第2クラスタリング手段による前記初期クラスタリング用特徴ベクトルのクラスタリング結果に対応して記憶された、複数の消費者の識別情報と前記複数のユニットとの初期的対応付けを、前記第1特徴ベクトル生成手段により各消費者ごとに生成された前記第1特徴ベクトルに対して適用し、各ユニットの前記ベクトル状態量を、各ユニットごとに決定する
ことを特徴とする請求項1記載の消費者情報処理装置。
【請求項3】
複数の商品に対する複数の消費者の前記消費履歴情報を参照し、全ての前記初期クラスタリング用商品構成に対する前記初期クラスタリング用特徴ベクトルが0である消費者、若しくは、所定期間内における消費行動の回数が所定のしきい値以下である消費者、に対応する前記初期クラスタリング用特徴ベクトルを、前記第2クラスタリング手段でのクラスタリングの対象から除外する、除外処理手段を有する
ことを特徴とする請求項2記載の消費者情報処理装置。
【請求項4】
前記状態量決定手段は、
各ユニットに属する全消費者の前記第1特徴ベクトルの平均値を算出し、当該平均値を前記ベクトル状態量に決定する
ことを特徴とする請求項1記載の消費者情報処理装置。
【請求項5】
前記状態量決定手段は、
各ユニットに属する全消費者の前記第1特徴ベクトルの中央値を選定し、当該中央値を前記ベクトル状態量に決定する
ことを特徴とする請求項1記載の消費者情報処理装置。
【請求項1】
複数の消費者の識別情報を複数のユニットにクラスタリングする消費者情報処理装置であって、
商品の識別情報と当該商品に対する複数の消費者の消費行動履歴とを対応付けた消費履歴情報を各商品ごとに記憶した消費者データベースにアクセスし、複数の商品に対する複数の消費者の消費履歴情報を取得する履歴取得手段と、
前記履歴取得手段により取得された前記複数の商品に対する前記複数の消費者の前記消費履歴情報を用いて、新たなクラスタリングを行うために用意された第1商品構成に対する前記消費者の消費行動を表す第1特徴ベクトルを生成し、生成した第1特徴ベクトルと当該消費者の識別情報とを対応付ける第1特徴ベクトル生成手段と、
予め実行されたクラスタリングの結果に対応して予め記憶された、前記消費者の識別情報と前記ユニットとの対応付けを、第1特徴ベクトル生成手段により前記消費者ごとに生成された第1特徴ベクトルに対して適用し、各ユニットのベクトル状態量を、各ユニットごとに決定する状態量決定手段と、
前記状態量決定手段で各ユニットごとに決定されたベクトル状態量を各ユニットの代表ベクトルの初期値として用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記第1特徴ベクトルをクラスタリングし、各消費者の識別情報に前記複数のユニットのいずれかを対応付ける第1クラスタリング手段と
を有することを特徴とする消費者情報処理装置。
【請求項2】
複数の商品に対する複数の消費者の前記消費履歴情報を用いて、予め定められた初期クラスタリング用商品構成に対する各消費者の消費行動を表す初期クラスタリング用特徴ベクトルを生成し、生成した初期クラスタリング用特徴ベクトルと当該消費者の識別情報とを対応付ける第2特徴ベクトル生成手段と、
予め用意された、前記複数のユニットそれぞれの初期クラスタリング用代表ベクトルを用いて、前記複数の消費者の識別情報にそれぞれ対応付けられた複数の前記初期クラスタリング用特徴ベクトルをクラスタリングする第2クラスタリング手段と
をさらに有し、
前記状態量決定手段は、
前記第2クラスタリング手段による前記初期クラスタリング用特徴ベクトルのクラスタリング結果に対応して記憶された、複数の消費者の識別情報と前記複数のユニットとの初期的対応付けを、前記第1特徴ベクトル生成手段により各消費者ごとに生成された前記第1特徴ベクトルに対して適用し、各ユニットの前記ベクトル状態量を、各ユニットごとに決定する
ことを特徴とする請求項1記載の消費者情報処理装置。
【請求項3】
複数の商品に対する複数の消費者の前記消費履歴情報を参照し、全ての前記初期クラスタリング用商品構成に対する前記初期クラスタリング用特徴ベクトルが0である消費者、若しくは、所定期間内における消費行動の回数が所定のしきい値以下である消費者、に対応する前記初期クラスタリング用特徴ベクトルを、前記第2クラスタリング手段でのクラスタリングの対象から除外する、除外処理手段を有する
ことを特徴とする請求項2記載の消費者情報処理装置。
【請求項4】
前記状態量決定手段は、
各ユニットに属する全消費者の前記第1特徴ベクトルの平均値を算出し、当該平均値を前記ベクトル状態量に決定する
ことを特徴とする請求項1記載の消費者情報処理装置。
【請求項5】
前記状態量決定手段は、
各ユニットに属する全消費者の前記第1特徴ベクトルの中央値を選定し、当該中央値を前記ベクトル状態量に決定する
ことを特徴とする請求項1記載の消費者情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2011−158980(P2011−158980A)
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願番号】特願2010−18232(P2010−18232)
【出願日】平成22年1月29日(2010.1.29)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願日】平成22年1月29日(2010.1.29)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
[ Back to top ]