(58)【調査した分野】(Int.Cl.,DB名)
前記第1クラスタ生成ステップは、前記訪問したスポットの種類の共通性に加え、前記訪問したスポットの種類の総滞在時間、訪問回数、平均滞在時間、訪問時刻、訪問日時、訪問したスポット数のうちいずれか一以上に基づいてクラスタを生成する請求項1に記載のプログラム。
前記第1クラスタ生成ステップは、スポットの種類の割合、滞在時間の長短、訪問回数の多寡及び/又は訪問時刻の偏りのいずれか一以上に応じてレアリティを付与し、訪問したスポットの種類の共通性に基づいてクラスタを生成する際に、前記レアリティを加味してクラスタを生成する請求項1又は請求項2に記載のプログラム。
前記第2クラスタ生成ステップは、前記訪問したスポットの共通性に加え、前記訪問したスポットの総滞在時間、訪問回数、平均滞在時間、訪問時刻、訪問日時のうちいずれか一以上に基づいてクラスタを生成する請求項3又は請求項4に記載のプログラム。
前記第2クラスタ生成ステップは、スポットの種類の割合、滞在時間の長短、訪問回数の多寡及び/又は訪問時刻の偏りのうちいずれか一以上に応じてレアリティを付与し、訪問したスポットの共通性に基づいてクラスタを生成する際に、前記レアリティを加味してクラスタを生成する請求項3から請求項5のいずれか一項に記載のプログラム。
前記第1クラスタ生成ステップ又は前記第2クラスタ生成ステップで分類したクラスタ毎に、該クラスタに属するユーザのスポットの種類間又はスポット間の変化に基づいて、第1クラスタ又は第2クラスタごとに訪問スケジュールを生成するスケジュールステップをさらに備える請求項3から請求項7のいずれか一項に記載のプログラム。
前記スケジュールステップは、前記第1クラスタ生成ステップ又は前記第2クラスタ生成ステップで分類したクラスタごとに、該クラスタに属するユーザのスポットの種類間又はスポット間の変化に基づいて、第1クラスタ又は第2クラスタごとに、ユーザの多数が変化した該クラスタの共通のスポットの種類間を主たるスケジュールとして結び付けスケジュールを生成する請求項8に記載のプログラム。
前記スケジュールステップは、前記第1クラスタ生成ステップ又は前記第2クラスタ生成ステップで分類したクラスタごとに、該クラスタに属するユーザのスポットの種類間又はスポット間の変化に基づいて、閾値を設定し、閾値を超えるが主たるスケジュールとならなかった変化を従たるスケジュールとしてスケジュールを生成する請求項8に記載のプログラム。
前記スケジュールステップにおいて生成した主たるスケジュール及び/又は従たるスケジュールを前記主たるスケジュールと前記従たるスケジュールを識別可能なように前記スケジュールを表示する表示ステップをさらに備える請求項10に記載のプログラム。
【発明を実施するための形態】
【0010】
以下、本開示の実施形態に係るクラスタリングプログラム、クラスタリング方法及びクラスタリング装置を、図面を参照しながら説明する。なお、以下に説明する実施形態は、特許請求の範囲に記載された本開示の内容を不当に限定するものではない。また、実施形態で説明される構成の全てが、本開示の必須構成要件であるとは限らない。また、実施形態を説明する全図において、共通の構成要素には同一の符号を付し、繰り返しの説明を省略する。
【0011】
<実施形態1>
実施形態1では、ユーザから位置情報を取得し、ユーザの訪問したスポットから、クラスタリングを行う。
【0012】
<サーバの構成>
以下、サーバ10の構成を詳細に説明する。
図1に示すように、本実施形態に係るサーバ10は、通信部101、記憶部102、制御部103とを備える。通信部101は、サーバ10が他の装置と通信するための処理を行う。通信部101は、制御部103で生成された信号に送信処理を施し、外部へ送信する。通信部101は、外部から受信した信号に受信処理を施し、制御部103へ出力する。
【0013】
記憶部102は、例えばフラッシュメモリ等により構成され、サーバ10が使用するデータ、及びプログラムを記憶する。
【0014】
制御部103は、プロセッサ11が記憶部102に記憶されるプログラムを読み込み、プログラムに含まれる命令を実行することにより実現される。制御部103は、サーバ10の動作を制御する。具体的には、例えば、制御部103は、ユーザ情報取得部1031と、第1クラスタ生成部1032と、第2クラスタ生成部1033としての機能を発揮する。
【0015】
以下、サーバ10の制御部103における機能的な構成について説明する。
【0016】
ユーザ情報取得部1031は、通信部101を介して、ユーザの位置情報及び時間情報を取得する。ユーザの位置情報は、例えば、緯度、経度などの情報である。また、時間情報は、位置情報を取得した時点の時間情報である。
【0017】
ユーザの位置情報の取得には、ユーザが所持するスマートフォン、スマートウォッチなどに搭載されたGPS(Global Positioning System)などの情報を用いてもよい。また、スポットなどに磁気リーダ、ICリーダなどの端末を設置し、ユーザがこれらの端末に自らの端末等を読み取らせたことをもって位置情報を取得してもよい。さらに、携帯電話など通信装置の基地局から得られる位置情報、WiFi(Wireless Fidelity、登録商標)から得られる位置情報を取得してもよい。
【0018】
また、ユーザ情報取得部1031は、SNS(Social Networking Service)に発信された情報に基づいて位置情報を取得してもよい。
【0019】
ユーザ情報取得部1031は、ユーザより、一定の時間的間隔をもって、定期的に位置情報及び時間情報を取得する。ユーザの位置情報を取得する間隔は、短ければ短いほど詳細な分析が可能となる点において、望ましい。
【0020】
一方で、位置情報を取得する時間的間隔が長ければ、システム及びネットワークへの負担を軽減することが可能であり、間隔が短ければ、ユーザの行動をより詳細に分析できる可能性が高まる。したがって、ユーザ情報取得部1031は、分析の対象とシステムの負荷を考慮しつつ、ユーザの位置情報を取得する時間的間隔を設定してもよい。
【0021】
ユーザ情報取得部1031は、ユーザより取得した位置情報を、ユーザID、取得した時間情報とともに、ユーザ情報DB1021に記憶する。サーバ10は、様々な観点からクラスタ分析ができるよう、ユーザの位置情報は一度記憶部102に記憶しておくことが望ましい。
【0022】
第1クラスタ生成部1032は、ユーザが訪問したスポットの種類に基づいて、ユーザの分類である第1クラスタを生成する。なお、スポットとは、店舗、施設など緯度及び経度により特定することのできる一定の場所のことをいう。また、スポットの種類とは、具体的には、飲食店、遊興施設、パソコンショップ、書店などであり、スポットの分類・ジャンル等のスポットの上位概念を示すものである。加えて、スポットの種類とは、そのスポットの開業日、SNS(Social Networking Service)・メディア等に紹介・登録された日、いずれの国を象徴するサービスであるか(例えばアメリカンスタイル、イタリアンスタイルなど)、顧客単価の分類、大衆向けかニッチ向けかなど、事業の分類だけでなく、サービスを様々な側面から見た分類により示してもよい。
【0023】
第1クラスタ生成部1032は、初めに、ユーザ情報取得部1031から取得した情報と、スポット情報DB1022の情報に基づいて、ユーザがどのスポットにチェックインしたか、すなわち、ユーザがどのスポットに訪問したかを把握する。
【0024】
第1クラスタ生成部1032がユーザのスポット訪問を判定するためには、例えば、ユーザの緯度経度などの位置情報と、スポットの緯度経度などの位置情報を照らし合わせ、その場所が一致する場合に訪問と判定する。
【0025】
また、厳格に位置情報が一致することをもって訪問とみなすと、ユーザがどのスポットも訪問していないと判定される可能性がある。そこで、ある閾値Lを設定しておき、スポットとユーザの距離がL以下である場合には、ユーザがスポットを訪問したとみなしてもよい。これにより、位置情報の誤差を吸収することが可能となる。また、地図を予め方眼状に区切り、ユーザがそのメッシュ上にあるスポットに訪問したとみなしてもよい。そのほか、一般的なアルゴリズムを用いてユーザがスポットを訪問したことを判定してもよい。
【0026】
第1クラスタ生成部1032がユーザのスポット訪問を判定するに際して、ユーザとスポットの位置情報が一致することをもって判定するが、このとき、単に一致することをもって訪問と判定してもよいし、連続する時間の一致情報を用いて、通過、訪問、利用を区別して判定してもよい。
【0027】
例えば、ユーザ情報取得部1031が一定の時間的間隔をもってユーザの位置情報を取得する際に、ユーザとスポットの位置情報が一致したとしても、それはユーザがスポットを訪問したのではなく、スポットを通過したに過ぎない場合もある。この場合には、通過と判定してもよい。また、時間的に連続する一定の回数(第1の閾値)以上ユーザとスポットの位置情報が一致する場合には、そのスポットを訪問したと判定してもよい。さらに、映画館、温泉施設、テーマパークなどのスポットにおいて、時間的に連続する一定の回数(第2の閾値)以上ユーザとスポットの位置情報が一致する場合には、そのスポットを利用したと判定してもよい。さらに、時間的に連続する一定の回数(第3の閾値)以上ユーザとスポットの位置情報が一致する場合には、そのスポットにおいて就業していると判定してもよい。加えて、ユーザが夜間の時間帯を含めて長時間滞在している場所、土日祝日を含めて長時間滞在している場所等がある場合には、そのスポットにおいて在宅していると判定してもよい。
【0028】
つまり、連続する時間において、ユーザとスポットの位置情報の一致が第1の閾値未満であるときには通過、第1の閾値以上第2の閾値未満のときは訪問、第2の閾値以上第3の閾値未満のときは利用、として判定してもよい。また、各閾値は、スポット毎に設定してもよい。
【0029】
第1クラスタ生成部1032がユーザのスポット訪問を判定するに際して、ユーザの移動方法を考慮してもよい。例えば、ユーザ情報取得部1031は、一定の時間的間隔をもってユーザの位置情報を取得するが、このとき、連続する時間の位置情報の移動距離により、単位時間あたりの移動距離により移動速度を推測し、ユーザの移動方法が徒歩であるか、又は自動車、電車などの移動方法を用いているかなどを判別してもよい。そして、少なくとも自動車、電車などで移動していると判断された際には、ユーザとスポットの位置情報が一致したとしても、ユーザはスポットを通過したに過ぎず、訪問したわけではないので、第1クラスタ生成部1032は、ユーザがスポットを訪問したとは判定しないようにしてもよい。
【0030】
ユーザの位置情報の取得に関して、例えば、スポットに設置した磁気リーダ、ICリーダなどの端末を元に取得する場合、第1クラスタ生成部1032は、ユーザの端末がこれらの端末に読み取られたことをもってユーザがスポットを訪問したと判断してもよい。
【0031】
第1クラスタ生成部1032は、ユーザが訪問したスポットからスポットの種類を検出し、ユーザが訪問したスポットの種類に基づいて、ユーザの分類である第1クラスタを生成する。第1クラスタ生成部1032は、例えば、ユーザが訪問したスポットの種類の共通性に基づき、階層型クラスタリング、非階層型クラスタリング、または既知のアルゴリズムなどを用いて第1クラスタ生成を行う。このとき、第1クラスタ生成部1032は、クラスタ生成の目標をM個とし、共通するスポットの種類に基づいて、クラスタを生成する。
【0032】
第1クラスタ生成部1032は、クラスタリングを行う際に、例えば、スポットの種類と総滞在時間を加味してその類似性により、非階層型クラスタリングを行ってもよい。また、例えば、スポットの種類、平均滞在時間、訪問回数を加味してその類似性により、非階層型クラスタリングを行ってもよい。
【0033】
また、第1クラスタ生成部1032は、クラスタリングを行う際に、スポットの種類の総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間、訪問したスポット数の共通性などを加味して第1クラスタを生成してもよい。
【0034】
例えば、公園に15時間滞在したユーザがいるとき、単に総滞在時間に基づいてクラスタリングをすれば、公園に0.5時間×30回訪問したユーザと、5時間×3回訪問したユーザは共通のものとしてクラスタリングされる。しかし、公園に0.5時間×30回訪問したユーザはジョギングのために訪問し、5時間×3回訪問したユーザはお花見のために訪問している可能性がある。したがって、訪問回数、平均滞在時間を考慮してクラスタリングすることで、これらを区別することが可能となる。また同様に、公園に15時間滞在したユーザがいるとき、単に共通するスポットに基づいてクラスタリングをすれば、同じ公園に3時間×5回訪問したユーザと、違う公園に3時間×5回訪問したユーザは共通のものとしてクラスタリングされる。しかし、スポットの種類の訪問回数と訪問したスポット数を考慮することにより、両者は区別することが可能となる。このように、第1クラスタ生成部1032は、クラスタリングに際して、スポットの種類の共通性に加え、スポットの種類の総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間、訪問したスポット数を考慮してもよい。
【0035】
また、例えば、第1クラスタ生成部1032は、クラスタリングに際して、訪問日時の情報を用い、8月に映画館を訪問したクラスタ、12月にスキー場を訪問したクラスタなどを生成してもよい。
【0036】
さらに、第1クラスタ生成部1032は、クラスタリングを行う際に、スポットの種類の共通性、スポットの種類の総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間、訪問したスポット数などの要素に対して、それらを重みづけした上で加味してクラスタを生成してもよい。
【0037】
例えば、年末のカウントダウン参加などのクラスタに共通する特定日時の行動に重きを置いてクラスタリングするときには、訪問日時に重きをおいて、その日時にテーマパーク等を訪問するユーザを優先的にクラスタリングすることで、季節のイベント参加者などのクラスタを生成することが可能となる。また、例えば、クラスタリングに際して、訪問日時に重きをおいて、スポットの種類に対して特定の日時・期間における訪問を特徴とする8月上旬にスキー場への訪問を含むクラスタ、8月中旬および12月下旬の展示場への訪問を含むクラスタなどを生成してもよい。
【0038】
第1クラスタ生成部1032は、スポットの種類に対して、意味のある場所、つまりレアリティの高い場所に対して高い値を付与してもよい。また、スポット、ユーザ、ユーザの行動等に対して、意味のある要素にレアリティを付与してもよい。
【0039】
第1クラスタ生成部1032は、レアリティの付与について、スポットの種類に対し、調査地域内のスポット数の多寡、言い換えれば、スポットの種類の偏り又は割合に応じてレアリティを付与してもよい。例えば、あるスポットの種類に対して、その存在数が少ないスポットの種類に対して、高いレアリティを付与してもよい。具体的には、コンビニが1000スポットあり、映画館が10スポットであれば、存在数の少ない映画館の方に高いレアリティを付与する。つまり、スポットの種類の調査地域内の存在数の逆数を値として、レアリティを付与してもよい。
【0040】
第1クラスタ生成部1032は、例えば、あるスポットの種類に対して、訪問したスポットに応じてレアリティを加味してもよい。例えば、レアリティの高い映画館に訪問した場合には、訪問ポイント10ポイントを付与し、レアリティの低い映画館に訪問した場合には、訪問ポイント1ポイントを付与することで、レアリティを加味してもよい。
【0041】
第1クラスタ生成部1032は、レアリティの付与について、例えば、少数ではあるが、閾値を超える数のユーザ、すなわち、一定の範囲の人数のユーザが共通した行動をとる場合に高い値を付与してもよい。
【0042】
第1クラスタ生成部1032は、レアリティの付与について、例えば、滞在時間の長短、訪問回数の多寡及び/又は訪問時刻の偏りなどユーザの行動に応じてレアリティを付与してもよい。例えば、他のスポットの種類と比較して、多数に偏りがあるスポットの種類にレアリティを付与してもよいし、他のスポットの種類と比較して、一部に偏りがあるスポットの種類にレアリティを付与してもよい。第1クラスタ生成部1032は、レアリティを加味してクラスタリングを行ってもよい。
【0043】
第1クラスタ生成部1032は、レアリティを加味したクラスタリングを行うに際して、次のような方法により算出してもよい。例えば、各ユーザのスポットの種類毎の訪問回数を各ユーザの全てのスポットの種類の総訪問回数で除算した頻度と、全ユーザの全てのスポットの種類の総訪問回数を全ユーザの全てのスポットの種類の総訪問回数で除算したレアリティを掛け合わせた値を、クラスタリングにおけるあるユーザのあるスポットの訪問回数の代わりに用いる。これにより、レアリティを付与しつつクラスタリングを行うことができる。
【0044】
前述の例では、レアリティを加味したクラスタリングについて、訪問回数を用いたが、訪問回数と同様に、総滞在時間、平均滞在時間、訪問時刻、訪問日時、訪問したスポット数についても、前述の例のように、レアリティを加味したクラスタリングを行ってもよい。すなわち、i=(A/B)×(C/D)とし、A,B,C,Dの組合せを、(各ユーザのスポットの種類毎の訪問回数,各ユーザの全てのスポットの種類の総訪問回数,全ユーザの全てのスポットの種類の総訪問回数,全ユーザのスポットの種類毎の総訪問回数),(各ユーザのスポットの種類毎の総滞在時間,各ユーザの全てのスポットの種類の総滞在時間,全ユーザの全てのスポットの種類の総滞在時間,全ユーザのスポットの種類毎の総滞在時間),(各ユーザのスポットの種類毎の平均滞在時間,各ユーザの全てのスポットの種類の平均滞在時間,全ユーザの全てのスポットの種類の平均滞在時間,全ユーザのスポットの種類毎の平均滞在時間),(各ユーザのスポットの種類毎の訪問スポット数,各ユーザの全てのスポットの種類の総訪問スポット数,全ユーザの全てのスポットの種類の総訪問スポット数,全ユーザのスポットの種類毎の総訪問スポット数)のようにレアリティ(C/D)を用いることでユーザの行動におけるスポットの種類の重要度を評価しクラスタリングしてもよい。
【0045】
第1クラスタ生成部1032が第1クラスタを生成するに際し、階層型クラスタリング、非階層型クラスタリング、あるいは、既知のクラスタリングアルゴリズムを用いてもよい。
【0046】
第1クラスタ生成部1032は、第1クラスタを生成するに際して、一定の時間的範囲をもって、指定された時間内における第1クラスタを生成してもよい。このとき、第1クラスタ生成部1032は、曜日、時間帯などの範囲をもってクラスタを生成してもよい。
【0047】
スポットの種類の共通性など、一定の要素をもとにクラスタリングを行うことで、クラスタ又はスポット毎の特性を把握することが可能となる。また、スポットの種類によってクラスタリングを行うことで、地域性の影響を軽減し、広範囲の地域を対象としてクラスタリングを行うことが可能となる。なお、実施形態1では、第1クラスタ生成部1032の機能を用いて、ユーザの訪問したスポットの種類を用いてクラスタリングを行った第1クラスタのみを用いてユーザのクラスタリングをしてもよい。
【0048】
第2クラスタ生成部1033は、第1クラスタ生成部1032で生成した第1クラスタ毎に、ユーザが訪問したスポットに基づいて、ユーザの分類である第2クラスタを生成する。
【0049】
具体的には、第2クラスタ生成部1033は、第1クラスタ生成部1032で、第1クラスタとして、A,B,Cの3つのクラスタが生成されたとすると、クラスタAに対して、ユーザが訪問したスポットに基づいて、ユーザの分類である第2クラスタを生成する。同様に、第2クラスタ生成部1033は、クラスタB及びCに対しても、第2クラスタを生成する。第1クラスタ生成部1032は、ユーザが訪問したスポットの種類に基づいてクラスタリングを行うのに対し、第2クラスタ生成部1033は、ユーザが訪問したスポットに基づいてクラスタリングを行う。
【0050】
第2クラスタ生成部1033は、例えば、ユーザが訪問したスポットの共通性に基づき、階層型クラスタリング、非階層型クラスタリング、または既知のアルゴリズムなどを用いてクラスタ生成を行う。このとき、第2クラスタ生成部1033は、クラスタ生成の目標をM個とし、クラスタリングを行った後に、共通するスポット及びユーザ数の多いものからM個のクラスタを抽出した上でクラスタとして構成してもよい。このとき、既に述べた方法によりレアリティを加味してクラスタリングを行ってもよい。
【0051】
また、第2クラスタ生成部1033は、クラスタリングを行う際に、スポットの総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間などを加味してクラスタを生成してもよい。
【0052】
さらに、第2クラスタ生成部1033は、クラスタリングを行う際に、スポットの総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間などの要素に対して、それらを重みづけした上で加味してクラスタを生成してもよい。
【0053】
第2クラスタ生成部1033は、スポットに対して、意味のある場所、すなわちレアリティの高い場所に対して高い値を付与してもよい。
【0054】
第2クラスタ生成部1033は、レアリティの付与について、例えば、少数ではあるが、閾値を超える数のユーザ、すなわち、一定の範囲の人数のユーザが共通した行動をとる場合に高い値を付与してもよい。
【0055】
第2クラスタ生成部1033は、レアリティの付与について、例えば、スポットの滞在時間の長短、調査地域内のスポット数の多寡、訪問回数の多寡及び/又は訪問時刻の偏りに応じてレアリティを付与してもよい。例えば、他のスポットと比較して、多数に偏りがあるスポットにレアリティを付与してもよいし、他のスポットと比較して、一部に偏りがあるスポットにレアリティを付与してもよい。第2クラスタ生成部1033は、レアリティを加味してクラスタリングを行ってもよい。
【0056】
具体的には、あるスポットの滞在時間は通常15分以内であるが、一部のユーザのみ60分以上滞在する場合にレアリティを高く付与し、スポットの共通性及びスポットの滞在時間を考慮してクラスタリングを行ってもよい。
【0057】
第2クラスタ生成部1033は、レアリティを加味したクラスタリングに際して、例えば、次のような方法により算出してもよい。例えば、各ユーザのスポット毎の訪問回数を各ユーザの全てのスポットの総訪問回数で除算した頻度と、全ユーザの全てのスポットの総訪問回数を全ユーザのスポット毎の総訪問回数で除算したレアリティを掛け合わせた値を、クラスタリングにおけるあるユーザのあるスポットの訪問回数の代わりに用いる。これにより、レアリティを付与しつつクラスタリングを行うことができる。なお、訪問回数に限らず、総滞在時間、平均滞在時間、訪問時刻、訪問日時、訪問したスポット数を用いてレアリティを加味してもよい。すなわち、i=(A/B)×(C/D)とし、A,B,C,Dの組合せを、(各ユーザのスポット毎の訪問回数,各ユーザの全てのスポットの総訪問回数,全ユーザの全てのスポットの総訪問回数,全ユーザのスポット毎の総訪問回数),(各ユーザのスポット毎の総滞在時間,各ユーザの全てのスポットの総滞在時間,全ユーザの全てのスポットの総滞在時間,全ユーザのスポット毎の総滞在時間),(各ユーザのスポット毎の平均滞在時間,各ユーザの全てのスポットの平均滞在時間,全ユーザの全てのスポットの平均滞在時間,全ユーザのスポット毎の平均滞在時間),(各ユーザのスポット毎の訪問スポット数,各ユーザの全てのスポットの総訪問スポット数,全ユーザの全てのスポットの総訪問スポット数,全ユーザのスポット毎の総訪問スポット数)のようにレアリティ(C/D)を用いることでユーザの行動におけるスポットの重要度を評価しクラスタリングしてもよい。
【0058】
第2クラスタ生成部1033は、第2クラスタを生成した後、スポットのクラスタ毎の偏りを抽出し、スポットにレアリティを付与し、再度第2クラスタを生成してもよい。また、第2クラスタを生成してスポットにレアリティを付与してスコアリングを行い、階層型クラスタリングを用いた際に抽出する第2クラスタを制御してもよい。
【0059】
さらに、例えば、あるスポットに対して、何らかの特徴を有するスポット、例えば、関連するスポットが少ないスポット、他のスポットと距離が遠いにも拘わらず関連スポットが多いスポット、などに対してレアリティを高く付与してもよい。また、インターネットサイトでの掲載件数の多寡及び/又は掲載件数の偏りなどを考慮してスポットにレアリティを付与してもよい。
【0060】
第2クラスタ生成部1033は、クラスタ生成を行う際に、レアリティが一定の閾値を超えるスポットのみを選択した上で、ユーザが訪問するスポットの共通性に基づき、クラスタ生成を行ってもよい。
【0061】
第2クラスタ生成部1033は、クラスタを生成する際に、レアリティの高いスポットを多く含むクラスタのスコアを高く設定し、スコアの高いクラスタを優先的に生成し、または、クラスタ生成後にスコアの高いクラスタから並べ替えてクラスタを抽出してもよい。
【0062】
第2クラスタ生成部1033は、クラスタを生成するに際して、分類を行うスポット、エリアの範囲を限定し、その限定された範囲内でのスポット、エリアに基づいてクラスタを生成してもよい。また、第2クラスタ生成部1033は、一定の時間的範囲をもって、指定された時間内におけるクラスタを生成してもよい。このとき、第2クラスタ生成部1033は、曜日、時間帯などの範囲をもってクラスタを生成してもよい。
【0063】
スポットの共通性など、一定の要素をもとにクラスタリングを行うことで、クラスタ又はスポット毎の特性を把握することが可能となる。また、ユーザは一般的に、居住地の近くのスポットによく訪問することから、ユーザが訪問したスポットに基づいて第2クラスタリングを行うことで、第1クラスタに対して地域的な分析を行うことが可能となる。
【0064】
(記憶部が記憶するDBの具体例)
図2にユーザ情報DB1021の具体例を示す。ユーザ情報取得部1031は、ユーザより、一定の時間的間隔をもって、定期的に位置情報及び時間情報を取得する。そして、ユーザ情報取得部1031は、位置情報を取得したユーザのユーザid、取得時間、ユーザの位置情報(緯度及び経度)をユーザ情報DB1021に記憶する。ユーザ情報DB1021が記憶する情報はこれらに限られるものではなく、ユーザの年齢(年代)、性別、居住地域など他の情報を記憶してもよい。
【0065】
図3にスポット情報DB1022の具体例を示す。スポット情報DB1022には、スポットを識別するための識別id、スポットの位置情報(緯度、経度)、スポット名(ショップ名など)、種類(飲食店、テーマパーク、駅などそのスポットの分類)を記憶する。また、スポット情報DB1022には、そのスポットの開店時間、平均予算などその他の情報を記憶しておいてもよいし、そのスポット公式ホームページ、紹介ページなどのリンクを保存しておき、スポットの各種情報を取得できるようにしておいてもよい。
【0066】
(クラスタ生成の具体例)
第1クラスタ生成部1032は、ユーザが訪問したスポットの種類に基づいて、ユーザの分類である第1クラスタを生成する。クラスタ生成は、例えば、K−平均アルゴリズム、最小平均分散法など、既に知られている既存の非階層型クラスタリング手法を用いてよい。また、非階層型クラスタリングに限らず、階層型クラスタリング手法を用いてもよい。
【0067】
第1クラスタ生成部1032は、スポットの種類の総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間、訪問したスポット数の共通性などを加味して第1クラスタを生成してもよい。また、スポットの種類の総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間などの割合を加味して第1クラスタを生成してもよい。
【0068】
図4は、スポットの種類がAからEの5種類あるとき、例えばその総滞在時間をレーダーチャートに表したものである。第1クラスタ生成部1032は、スポットの種類の総滞在時間、訪問回数、訪問時刻、訪問日時、平均滞在時間などを、例えばその総数で除することで正規化した上で、第1クラスタを生成してもよい。すなわち、第1クラスタ生成部1032は、ユーザごとに
図4のようなレーダーチャートを作成し、そのレーダーチャートの類似性に基づいて第1クラスタを生成してもよい。このように、正規化した上で第1クラスタを生成することで、各パラメータの比率を用いたレーダーチャートの類似性、すなわち波形を重視したクラスタリングを行うことが可能となる。
【0069】
第1クラスタ生成部1032は、レアリティを用いて第1クラスタを生成してもよい。具体的には、例えば、各ユーザのスポットの種類毎の訪問回数を各ユーザの全てのスポットの種類の総訪問回数で除算した頻度と、全ユーザの全てのスポットの種類の総訪問回数を全ユーザのスポットの種類毎の総訪問回数で除算したレアリティを掛け合わせた値を、クラスタリングにおけるあるユーザのあるスポットの訪問回数の代わりに用いることで、レアリティを加味してもよい。
【0070】
また、レアリティを考慮するに際して、ユーザの訪問回数のみではなく、総滞在時間、訪問時刻、平均滞在時間の割合などの要素を考慮してレアリティを付与してもよい。
【0071】
第1クラスタ生成部1032は、例えば、生成するクラスタの数をKと決め、非階層型クラスタリングにより、Kのクラスタを生成する。ただし、第1クラスタ生成部1032は、非階層型クラスタリングに限らず、その他のクラスタリング手法を用いてもよい。
【0072】
第1クラスタ生成部1032は、例えば、ある施設に対して複数のスポットの種類が付与されている場合、ユーザが訪問した位置情報の近隣に複数の施設がある場合など、正しくスポットの種類が取得できない時は、対象地域からスポットの種類が限定的な地域のみを抽出することで、スポットの種類が正しく把握できない問題を解決し、第1クラスタを生成してもよい。
【0073】
第2クラスタ生成部1033は、ユーザが訪問したスポットに基づいて、ユーザの分類である第2クラスタを生成する。このとき、第2クラスタ生成部1033は、例えば、階層型クラスタリングを用いてよい。ただし、階層型クラスタリングに限らず、非階層型クラスタリング手法などその他のクラスタリング手法を用いてもよい。
【0074】
階層型クラスタリングでは、例えば、スポットの共通性を距離又は類似度に見立てて、スポットの種類のクラスタリングを行う。具体的には、例えば、A,B,Cの3つのスポットがあり、そのスポットを訪問したユーザのidがそれぞれ、A=(01,02,03,04,05)、B=(01,02,03,04,06)、C=(01,02,07,08,09)であった場合、ユーザの共通性が高い(類似度が高い)AとBがまずはクラスタリングが行われ、そののちに、A+B,Cという形でクラスタリングが行われる。階層型クラスタリングの候補としては、A+B+C、A+B、C、A、Bというパターンが生成される。
【0075】
第2クラスタ生成部1033は、類似するスポットを組み合わせながら階層型クラスタリングを行い、第2クラスタを生成する。このとき、共通スポットが少ないクラスタは、駅、コンビニエンスストアなど、一般的な場所の訪問に留まり、特徴が少ないと考えられる。したがって、共通スポットが多い(共通するユーザ数は少なくなる)クラスタを抽出して最終的なクラスタを生成してもよい。
【0076】
また、第2クラスタ生成部1033は、特徴のあるクラスタを選択するため、共通するスポットの数×ユーザ数により値の大きいものからクラスタを並び替えてもよい。加えて、共通するスポットの滞在時間の総和などの指標を用いてもよいし、そのほか特徴のあるクラスタを抽出するための要素を加味してもよい。さらに、第2クラスタ生成部1033は、これらの指標を用いて、上位M個を抽出した上で、クラスタとして構成してもよい。
【0077】
第2クラスタ生成部1033は、階層型クラスタリングに限られず、非階層型クラスタリング又は既知のクラスタリングアルゴリズムを用いてクラスタ生成を行ってもよい。
【0078】
第2クラスタ生成部1033は、レアリティを用いて第2クラスタを生成してもよい。第2クラスタ生成部1033は、クラスタを生成する際に、クラスタ内に含まれるスポットから後述のようにレアリティを算出し、生成したクラスタをレアリティの高いものから並べ替えてもよい。このとき、第2クラスタ生成部1033は、レアリティの高いものからM個を抽出してもよい。
【0079】
第2クラスタ生成部1033は、レアリティの算出について、例えば、ユーザの訪問数に応じて、その逆数をとり、レアリティとしてもよい。
【0080】
第2クラスタ生成部1033は、例えば、全ユーザの全てスポットの総訪問回数を全ユーザのスポット毎の総訪問回数で除算した値を、クラスタリングにおけるあるユーザのあるスポットの訪問回数に応じた逆数をとった値の代わりに用いることで、レアリティを加味してもよい。
【0081】
また、レアリティを考慮するに際して、ユーザの訪問回数のみではなく、総滞在時間、訪問時刻、平均滞在時間などの要素を考慮してレアリティを付与してもよい。
【0082】
図5に第2クラスタ生成部1033がクラスタリングを行った後の生成した第2クラスタの具体例1041を示す。例えば、100のクラスタを生成することを目標とした場合に、共通するスポットが多く、構成人数が多いものから、100個のクラスタを生成した例を示す。
【0083】
第2クラスタ生成部1033は、スポットの共通性だけではなく、総滞在時間、訪問時刻、訪問日時、訪問回数、平均滞在時間などの要素も加味した上で、クラスタリングを行ってもよい。このとき、第2クラスタ生成部1033は、スポットの共通性、総滞在時間、訪問時刻、訪問日時、訪問回数、平均滞在時間などの各要素をそれぞれ重みづけした上で、クラスタリングを行ってもよい。
【0084】
図6にスポットの共通性の他、滞在時間、訪問頻度(
図6ではCI頻度と示している)、滞在時間分散、訪問頻度分散、最大滞在時間、最小滞在時間、最大訪問頻度、最小訪問頻度を加味してクラスタリングを行った具体例1042を示す。なお、
図6では省略しているが、実際には
図5と同じように、各第2クラスタには、複数のスポットが存在し、例えば、
図6のクラスタID1の第2クラスタでは、スポットAのみならず、スポットBCDEも要素として存在している。
【0085】
(処理の流れ)
図7は、本開示の実施形態1におけるクラスタ生成プログラムの処理の流れを示す。
【0086】
ステップS1031において、ユーザ情報取得部1031は、ユーザの位置情報と時間を取得する。そして、ユーザ情報取得部1031は、取得した情報を、ユーザ情報DB1021に記憶する。
【0087】
ステップS1032において、第1クラスタ生成部1032は、ユーザの位置情報、時間情報と、スポットの情報を用いて、ユーザがどのスポットを訪問したか把握する。その上で、第1クラスタ生成部1032は、スポットを訪問したユーザの情報を用いて、第1クラスタを生成する。各第1クラスタは、ユーザが共通して訪問したスポットの種類に基づいて生成する。
【0088】
ステップS1033において、第2クラスタ生成部1033は、第1クラスタ生成部1032において生成された第1クラスタにおいて、さらにユーザが訪問したスポットの共通性に基づいて、クラスタリングを行い、第2クラスタを生成する。
【0089】
(効果)
本実施形態によれば、ユーザの位置情報と、ユーザが訪問するスポットに関する情報を用いて、スポット又はエリアにどのように人が集まっているか分析を行うことが可能となる。さらに、第1クラスタを生成して分析することにより、東京のあるライブ会場を訪問したユーザと大阪のあるライブ会場を訪問したユーザがともにライブに参加したという上位概念でクラスタリングを行うことにより、地域的な影響を受けずにクラスタリングを行うことが可能となる。すなわち、東京のあるライブ会場を訪問したユーザも大阪のあるライブ会場を訪問したユーザも、ともにライブ好きという分析を行うことが可能となる。
【0090】
さらに、第2クラスタを生成することで、共通性を有するユーザの中から、さらにどのようなスポットを訪問したか具体的な分析を行うことが可能となる。また、第2クラスタを生成することで、地域的な分析を行うことも可能となる。すなわち、東京のライブ好きと大阪のライブ好きのそれぞれの生活が分析できるほか、例えば、共通で新潟のあるライブ会場に訪問していることの分析なども可能となる。
【0091】
<変形例1>
変形例1では、ユーザの同行者を判定した上で、クラスタリングを行う。
【0092】
<サーバの構成>
以下、サーバ20の構成を詳細に説明する。
図8に示すように、本実施形態に係るサーバ20は、通信部101、記憶部102、制御部203とを備える。通信部101は、サーバ20が他の装置と通信するための処理を行う。通信部101は、制御部203で生成された信号に送信処理を施し、外部へ送信する。通信部101は、外部から受信した信号に受信処理を施し、制御部203へ出力する。
【0093】
記憶部202は、例えばフラッシュメモリ等により構成され、サーバ20が使用するデータ、及びプログラムを記憶する。
【0094】
制御部203は、プロセッサ11が記憶部102に記憶されるプログラムを読み込み、プログラムに含まれる命令を実行することにより実現される。制御部203は、サーバ20の動作を制御する。具体的には、例えば、制御部203は、ユーザ情報取得部1031と、同行者判定部2034と、第1クラスタ生成部2032と、第2クラスタ生成部2033としての機能を発揮する。
【0095】
以下、サーバ10の制御部103における機能的な構成について説明する。
【0096】
同行者判定部2034は、ユーザの中から、同行者に関する判定を行う。例えば、あるユーザが同じ時刻、同じ場所に他のユーザと同じスポットを訪問した場合、同行しているものと判断する。
【0097】
同行者判定部2034は、単に同じ時刻、同じ場所に他のユーザと同じスポットを訪問したのみで同行と判定すると、例えば、映画館、ライブ会場など、多くの人が集まる場所は全て同行者とみなしてしまう。したがって、例えば、3か所などの閾値を設けて、閾値以上同じ時刻に同じスポットを訪問した場合に、同行者として判定を行ってもよい。
【0098】
同行者判定部2034は、例えば、閾値を設け、一定の期間内の移動距離に対して一致している距離が多いものから閾値を超えるものを抽出することで、同行者として判定を行ってもよい。
【0099】
同行者判定部2034は、ユーザが合計何人で同じ行動をしているかを判定し、同行者の数として算出する。例えば、それが2人であり、かつ性別あるいは性的指向が分かればカップルと推測できるし、20人以上であれば何らかの団体と推測することができる。
【0100】
第1クラスタ生成部2032は、同行者判定部2034において、同行者の数に一定の条件(例えば同行者の数がN人、N人以上、N人以下、N人以上M人以下の間など)を課し、条件を満たす同行者のユーザに対して、第1クラスタを生成する。第1クラスタの生成方法は、サーバ10における第1クラスタ生成部1032と同様である。これにより、例えば、同行者判定部2034において、カップルの分析を行うことを目的として、2人のユーザが同行しているグループを同行者の条件として課した場合、2人のユーザが同行するグループに対して第1クラスタを生成し、分析を行うことが可能となる。
【0101】
第2クラスタ生成部2033は、同行者判定部2034において、同行者と判定されたユーザに対して、第1クラスタごとに、訪問したスポットの共通性に基づいて、第2クラスタを生成する。第2クラスタの生成方法は、サーバ10における第2クラスタ生成部1033と同様である。
【0102】
以上の方法により、一定の同行者のユーザに対してクラスタリングを行い、分析を行うことが可能となる。
【0103】
また、変形例1の実施形態において、第1クラスタ生成部2032は、全ての同行者数においてクラスタリングを行い(つまり同行者の条件を課さない通常のクラスタリングを行い)、訪問したスポットの種類の共通性とともに、同行者の数を一つの要素として、クラスタリングを行ってもよい。
【0104】
また、変形例1の実施形態において、生成された第1クラスタ及び第2クラスタを分析する際に、同行者の数を含めて、このクラスタはあるスポット又はスポットの種類に対して、x人の同行の割合がy%である、などの分析を行ってもよい。
【0105】
(処理の流れ)
図9は、本開示の変形例におけるクラスタ生成プログラムの処理の流れを示す。
【0106】
ステップS2031において、ユーザ情報取得部1031は、ユーザの位置情報と時間を取得する。そして、ユーザ情報取得部1031は、取得した情報を、ユーザ情報DB1021に記憶する。
【0107】
ステップS2034において、同行者判定部2034は、複数のユーザが同じ時刻に同じスポットを訪問したことに基づいて、同行者の判定を行う。
【0108】
ステップS2032において、第1クラスタ生成部2032は、ユーザの位置情報、時間情報と、スポットの情報を用いて、同行者を伴うユーザがどのスポットを訪問したか把握する。その上で、第1クラスタ生成部2032は、スポットを訪問したユーザの情報を用いて、第1クラスタを生成する。各第1クラスタには、ユーザが共通して訪問したスポットの種類が属する。
【0109】
ステップS2033において、第2クラスタ生成部2033は、第1クラスタ生成部2032において生成された第1クラスタにおいて、さらにユーザが訪問したスポットの共通性に基づいて、クラスタリングを行い、第2クラスタを生成する。
【0110】
(効果)
本変形例によれば、ユーザの同行者を判定し、同行者の数に応じてユーザのクラスタリングを行う対象を変化させ、例えばカップルの行動、3人以上のグループの行動などを分析することが可能となる。
【0111】
<変形例2>
変形例2では、スポットに開業日、SNS(Social Networking Service)・メディア等に紹介・登録された日など、ユーザの流行感度を図れる時的要素を付与した上で、クラスタリングを行う。以下の記載では、これらの時的要素をまとめて開業日として示す。
【0112】
変形例2においては、実施形態1と同様の構成により処理を行う。実施形態1では、スポット情報DB1022において、スポットの種類に関する情報を記憶し、第1クラスタ生成部1032において、スポットの種類の共通性に基づいてクラスタリングを行った。これに対して、変形例2では、スポット情報DB1022において、スポットの開業日に関する情報を記憶しておく。
【0113】
第1クラスタ生成部1032は、例えば、開業日からN日以内に訪問した、又は、開業日からの訪問日について、上位x%からy%の間に訪問したなどの情報を付与し、スポットの開業日からの期間に応じたクラスタリングを行う。
【0114】
上記のような第1クラスタの生成を行うことで、開業して短期間の間にスポットを訪問するアーリーアダプタなどのクラスタを生成し、分析することが可能となる。
【0115】
また、変形例2の実施形態において、生成された第1クラスタ及び第2クラスタを分析する際に、開業日からの期間を含めて、ユーザの分析を行い、例えば、開業日からの訪問時について、上位x%からy%の間に訪問したユーザがいかなるクラスタに所属しているかなどの分析を行ってもよい。また、例えば、あるクラスタはあるスポット又はスポットの種類について、開業日から上位x%からy%の間に訪問しているなどの分析を行ってもよい。
【0116】
<実施形態2>
実施形態2では、クラスタリングを行った後、各クラスタがどのような行動を行うかスケジュールを生成し、表示を行う。また、マーケティングに関するレコメンドを行う。
【0117】
<サーバの構成>
以下、サーバ30の構成を詳細に説明する。
図10に示すように、本実施形態に係るサーバ20は、通信部101、記憶部102、制御部303とを備える。通信部101は、サーバ30が他の装置と通信するための処理を行う。通信部101は、制御部303で生成された信号に送信処理を施し、外部へ送信する。通信部101は、外部から受信した信号に受信処理を施し、制御部303へ出力する。
【0118】
記憶部202は、例えばフラッシュメモリ等により構成され、サーバ20が使用するデータ、及びプログラムを記憶する。
【0119】
制御部303は、プロセッサ11が記憶部102に記憶されるプログラムを読み込み、プログラムに含まれる命令を実行することにより実現される。制御部303は、サーバ30の動作を制御する。具体的には、例えば、制御部303は、ユーザ情報取得部1031と、第1クラスタ生成部1032と、スケジュール生成部3035と、表示部3036と、レコメンド部3037としての機能を発揮する。なお、ユーザ情報取得部1031、第1クラスタ生成部1032は、サーバ10と同様の処理を行う。
【0120】
以下、サーバ30の制御部303における機能的な構成について説明する。
【0121】
スケジュール生成部3035は、第1クラスタ生成部1032が生成した第1クラスタごとに、又は、第2クラスタ生成部1033が生成した第2クラスタごとに、クラスタに属するスポット又はスポットの種類の利用がユーザごとにどのような変化したかその利用スケジュールを生成する。すなわち、第1クラスタ生成部1032で分類した第1クラスタごと、又は、第2クラスタ生成部1033が生成した第2クラスタごとにスケジュールを生成する。
【0122】
このとき、スケジュール生成部3035は、既に述べたように、第1クラスタ生成部1032がユーザの位置情報、スポットの位置情報、時間情報から、ユーザの就業、在宅、移動などを判定した上で、スケジュールを生成してもよい。
【0123】
スケジュール生成部3035は、スケジュールの生成に際し、例えば、第1クラスタに属するユーザの各スポットの種類間の変化の履歴又は第2クラスタに属するユーザの各スポット間の変化の履歴に基づき、各スポットの種類の変化関係をユーザ毎にプロットしていき、スケジュールの生成を行う。すなわち、第1クラスタ内にA〜Eの5つのスポットの種類があると仮定したとき、スケジュール生成部3035は、A〜A(継続)、A〜B、A〜C、…B〜A、B〜B(継続)、B〜C、…E〜D、E〜E(継続)の変化のパターンをユーザの行動毎に行列を生成する。その上で、スケジュール生成部3035は、例えば最も数の多い変化パターンをスケジュールとして生成し、第1クラスタに属するユーザのスケジュールとして生成する。
【0124】
スケジュール生成部3035は、スケジュールの生成に際して、上記の方法に限られず、例えば、時間帯ごとに最もユーザの多いスポットの種類を組み合わせてもよい。また、例えば、スポットの種類間の変化の履歴をユーザごとにスケジュールにし、もっとも多いスケジュールをそのクラスタのスケジュールとして生成してもよい。
【0125】
このようにスケジュールを生成することで、スポットの種類間又はスポット間の変化について、前後関係を把握しつつスケジュールを生成することが可能となる。
【0126】
スポットの種類間又はスポット間の変化関係を用いてスケジュールの生成を行うことで、ユーザの位置情報からスケジュールを作成するのと比較して、計算量を削減することが可能となる、また、スポットの種類間の変化の関係を用いることで、共通するスポットの種類間のスケジュールを生成し、分析を行うことが可能となる。
【0127】
スケジュール生成部3035は、例えば、一定の時間間隔ごと(10分ごと、30分ごと、1時間ごとなど)に、クラスタ内の多数決により、多数派のスポットの種類を決定し、それを時間軸にプロットしていくことで、スケジュールを生成してもよい。
【0128】
また、スケジュール生成部3035は、例えば、スポットの種類間又はスポット間の変化の関係を用いてスケジュールを生成した後、該当するクラスタ内のユーザの多数決により、時間を決定し、時間軸を付与してもよい。スケジュール生成部3035は、例えば、ユーザが訪問したスポットの種類の開始時刻、終了時刻において多数派を選択し、該当の時間内にスポットの種類を訪問していたとしてスケジュールを生成してもよい。
【0129】
例えば、スケジュール生成部3035は、A〜B〜Cとの変化がスケジュールとして生成されたとき、Aの開始時刻が9:00が多数派である場合、時間軸を9:00に合わせ、Bの開始時刻が12:00が多数派である場合、時間軸を12:00に合わせ、Cの開始時刻が18:00が多数派である場合、時間軸を18:00に合わせるなどして、時間軸を付与してもよい。
【0130】
スケジュール生成部3035は、スケジュールの生成に際して、唯一の経路を生成するのではなく、主たるスケジュールと従たるスケジュールに分けて生成してもよい。例えば、スポットの種類間又はスポット間の変化関係において、変化のもっとも多い事象を主たるスケジュールとして結び付け、閾値Tを設定した上で、主たるスケジュールを除き、T以上の変化があるスケジュールを従たるスケジュールとして生成してもよい。さらに、従たるスケジュールは一つでなくともよく、複数の従たるスケジュールを生成してもよい。
【0131】
スケジュール生成部3035は、スケジュールの生成に際して、平日と休日を分けたスケジュール、月ごと、曜日ごとのスケジュールなど、時間的な範囲を限定した上でスケジュールを生成してもよい。
【0132】
スケジュール生成部3035は、スケジュールの生成に際して、ユーザの同行者数を加味して、スケジュールを生成してもよい。例えば、同行者数2名のスケジュール、同行者数3名以上のスケジュールなどを生成してもよい。また、生成されたスケジュールに対して、同行者の数とその割合を併せて表示してもよい。
【0133】
スケジュールの生成においては、上記のように、スポットの種類間又はスポット間の変化の関係を用いたものに限られるわけではなく、既知のスケジュール生成アルゴリズムを用いて、第1クラスタに属するスポットの種類の訪問スケジュールを生成してもよい。
【0134】
表示部3036は、スケジュール生成部3035が生成したスケジュールについて、クラスタに属するスポット又はスポットの種類のスケジュールを作成し、表示する。このとき、表示部3036は、主たるスケジュールのみを表示してもよいし、主たるスケジュールと従たるスケジュールを併せて表示してもよい。
【0135】
表示部3036は、主たるスケジュールと従たるスケジュールを併せて表示する際に、主たるスケジュールと従たるスケジュールの区別が識別可能なように、線種及び/又は色を分けて表示し、及び/又は、主たるスケジュールを直線上に表示し、従たるスケジュールを主たるスケジュールの直線上からずらして表示してもよい。さらに、円グラフ、棒グラフなどのグラフを用いて表現してもよい。これにより、第1クラスタにおける主たるスケジュール・従たるスケジュールを含めて視覚的に一目で把握することが可能となる。
【0136】
表示部3036は、スケジュールを表示するに際して、複数の表示方法を切り替え可能に表示してもよい。例えば、スケジュールの生成方法は、既に述べたように、時間帯ごとに最も多いスポットの種類を組み合わせる方法、スポットの種類の変化により、その変化の最も多いものを組み合わせる方法などが考えられるが、これらを切り替え可能に表示させてもよい。
【0137】
また、表示部3036は、時間的な範囲を限定したスケジュールを作成したとき、それを並列的に表示してもよい。表示部3036は、例えば、平日のスケジュールと休日のスケジュールを並列的に表示し、及び/又は、曜日ごとのスケジュールを並列的に表示してもよい。
【0138】
レコメンド部3037は、第1クラスタ及び/又は第2クラスタへのクラスタ分析をした上で、リコメンドを行う。例えば、レコメンド部3037は、スポットのオーナーがレコメンドを受けることを想定し、あるスポットに関連の強いクラスタを分析したときに、当該スポットについて、ユーザが他にどのようなスポットに訪問しているか、どのような種類の商品、役務を取り扱う店舗を訪問しているか、どのような種類の商品、役務を購入しているかなどを分析する。これにより、当該スポットにおいて、取り扱う商品・役務などをレコメンドし、提携すべき店舗などをレコメンドしてもよい。
【0139】
レコメンド部3037は、例えば、地域振興協会の担当者がレコメンドを受けることを想定し、ある地域を対象に関連の強いクラスタを分析したときに、当該地域において、ユーザがどのようなスポットを訪問しているか、どのような種類の商品、役務を取り扱う店舗を訪問しているか、他の地域ではどのようなスポットを訪問しているかなどを分析する。これにより、当該スポットにおいて、当該地域にはないがユーザが利用する可能性が高いスポットをレコメンドし、また、ユーザが購入する可能性が高い商品、役務などをレコメンドしてもよい。
【0140】
レコメンド部3037は、例えば、ユーザがレコメンドを受けることを想定し、ユーザの属するクラスタから、当該クラスタに属する他のユーザがどのようなスポットを訪問しているか、どのような種類の商品、役務を取り扱う店舗を訪問しているかなどを分析する。これにより、ユーザに対して、当該ユーザが訪問していない他のスポットをレコメンドし、商品、役務をレコメンドしてもよい。
【0141】
上記のようにクラスタ分析を介することで、レコメンド部3037は、スポット、店舗、施設の種類、商品・役務の種類などをリコメンドしてもよい。
【0142】
(スケジュール生成の具体例)
スケジュール生成部3035は、第1クラスタ生成部3032が生成した第1クラスタ又は第2クラスタ生成部1033が生成した第2クラスタに対して、クラスタに属するスポットの種類がどのように変化したかそのスケジュールを生成する。例えば、スケジュール生成部3035は、スポットの種類間の変化の関係を用いてスケジュール生成を行う。
【0143】
図11にスポットの種類間の変化の関係の具体例を示す。例えば、ある第1クラスタに属するスポットの種類がA〜Fの6種類だったと仮定する。このとき、スケジュール生成部3035は、A〜Fの各ユーザの変化をスポットの種類間の変化の関係に入力する。例えば、Aというスポットの種類にいたユーザがEというスポットの種類に移動していれば、A行E列のセルに1を加点する。また、Aというスポットの種類にいたユーザがAというスポットの種類にそのままとどまっていれば、A行A列のセルに1を加点する。
【0144】
スケジュール生成部3035がスポットの種類間の変化の関係を生成するときには、任意に分割した時間(ある日時からある日時までの一定の時間)において、生成してもよい。
【0145】
図11にスポットの種類間の変化の関係1043を示す。このマトリクスでは、Aを起点とした場合には、Aに留まる継続が4、Bへの変化が1、Cへの変化が1、Dへの変化が2、Eへの変化が4、Fへの変化が10である。したがって、AからFへの変化が最も多数派であり、主たるスケジュールとして把握する。
【0146】
上記と同様に、最も多数派の変化を把握していくと、A→F、B→F、C→D、D→E、E→A、F→Bとなる。この変化をつなげていくと、C→D→E→A→F→Bとなる。スケジュール生成部3035は、この変化を主たるスケジュールとして把握する。
【0147】
次に、
図11のスポットの種類間の変化の関係1043において、主たるスケジュールとして把握されなかったものの、多数の変化があったものを従たるスケジュールとして把握してもよい。例えば、閾値を10として、主たるスケジュールと把握されなかったものの、10以上の変化があったスケジュールを把握する。すると、B→C、C→Bが把握可能である。したがって、スケジュール生成部3035は、主たるスケジュールの他、B→C、C→Bを従たるスケジュールとして把握する。
【0148】
(スケジュール表示の具体例)
表示部3036は、スケジュール生成部3035が生成したスケジュールについて、クラスタに属するスポット又はスポットの種類間のスケジュールを表示する。
【0149】
図12は、表示部3036が表示するスケジュールの具体例である。
図12において、主たるスケジュールが直線上に「自宅→会社→食事→自宅」と示され、従たるスケジュールとして、「病院」、「ジム」、「映画」、などが表示されている。
【0150】
また、表示部3036は、スケジュール生成部3035が生成したスケジュールと、スケジュール生成部3035が付与した時間軸を合わせて表示してもよい。
【0151】
例えば、
図12において、「自宅」は7:00までが多数派であれば、そこに時間軸を合わせる。また、「会社」、「病院」の開始時刻が8:00が多数派であり、「会社」は18:00まで、「病院」は10:00までが多数派であれば、時間軸をそれに合わせて表示する。
【0152】
図13は、表示部3036が表示するスケジュールの具体例であり、棒グラフを用いた例である。表示部3036は、棒グラフにより割合的に示すことで、主たるスケジュールと従たるスケジュールを区別してスケジュールを表示してもよい。
【0153】
(処理の流れ)
図14は、本開示の変形例におけるクラスタ生成プログラムの処理の流れを示す。
【0154】
ステップS3031において、ユーザ情報取得部1031は、ユーザの位置情報と時間を取得する。そして、ユーザ情報取得部1031は、取得した情報を、ユーザ情報DB1021に記憶する。
【0155】
ステップS3032において、第1クラスタ生成部1032は、ユーザの位置情報、時間情報と、スポットの情報を用いて、ユーザがどのスポットを訪問したか把握する。その上で、第1クラスタ生成部1032は、スポットを訪問したユーザの情報を用いて、第1クラスタを生成する。各第1クラスタには、ユーザが共通して訪問した共通のスポットの種類が属する。
【0156】
ステップS3035において、スケジュール生成部3035は、第1クラスタ生成部1032において生成された第1クラスタ又は第2クラスタ生成部1033の第2クラスタにおいて、クラスタに属するユーザのスポット又はスポットの種類間の変化の履歴から、スケジュールを生成する。
【0157】
ステップS3036において、表示部3036は、スケジュール生成部3035において生成したスケジュールを表示する。
【0158】
ステップS3037において、レコメンド部3037は、スポット、エリア、クラスタに属する店舗、ユーザに対して、取り扱う商品・役務の種類、他に訪問すべきスポット、購入すべき商品・役務などをリコメンドする。
【0159】
(効果)
スケジュール生成部3035及び表示部3036により、クラスタのスケジュールを作成、表示することで、各クラスタがどのような行動パターンをとるか視覚的に把握することが可能となる。これにより、ユーザの行動パターンが分析可能である。
【0160】
また、季節、平休日または曜日ごとの分析なども行うことで、ユーザの特徴に応じて、特定の期間における行動の変容も分かりこれらをマーケティングにも活用することが可能となる。
【0161】
加えて、クラスタ分析をもとに、おすすめのスポット、おすすめの商品・役務などをレコメンドすることで、地域振興、消費の活性化に役立てることが可能となる。
【0162】
以上で実施形態の説明を終了するが、上記実施形態は一例に過ぎない。そのため、サーバ10、20、30の具体的な構成、処理内容等は上記実施形態で説明したものに限られない。
【0163】
図15は、サーバ10の全体構成を示す図である。サーバ10は、汎用のコンピュータである。サーバ10は、例えば、据え置き型のPC(Personal Computer)、ラップトップPC等により実現される。また、サーバ10は、スマートフォン、又はタブレット端末などの携行性を備えたコンピュータであってもよい。なお、サーバ20及び30においても、全体構成はサーバ10と同様である。
【0164】
図15に示すように、サーバ10は、プロセッサ11、メモリ12、ストレージ13、通信IF14、入出力IF15とを備える。
【0165】
プロセッサ11は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路などにより構成される。メモリ12は、プログラム、および、プログラム等で処理されるデータ等を一時的に記憶するためのものであり、例えばDRAM(Dynamic Random Access Memory)等の揮発性のメモリにより実現される。ストレージ13は、データを保存するための記憶装置であり、例えばフラッシュメモリ、HDD(Hard Disc Drive)により実現される。通信IF14は、サーバ10が外部の装置と通信するため、信号を送受信するためのインタフェースである。入出力IF15は、ユーザからの入力を受け付けるための入力装置、および、ユーザに対し情報を提示するための出力装置とのインタフェースとして機能する。
【0166】
本開示に係るクラスタリング装置は、例えば、スタンドアロンで動作するコンピュータ上に実現されることに留まらず、例えばサーバ型コンピュータとして動作させてもよい。
【0167】
図16は、クラスタリング装置のサーバ10とユーザ端末40とを接続された例を示す。本開示に係るクラスタリング装置は、例えば、
図16に示すように、サーバ10と、ユーザ端末40とをネットワークを介して接続させて動作させてもよい。このとき、サーバ10とユーザ端末40との間で、機能を分散させてもよい。また、複数のサーバを用いて機能を分散させてもよい。
【0168】
また、本開示に係る情報解析装置は、上記装置によらず、例えば、コンピュータがプログラムを実行することで、その機能を実現してもよい。情報解析装置の機能を実現するためのプログラムは、USB(Universal Serial Bus)メモリ、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)、HDD(Hard Disc Drive)等のコンピュータ読み取り可能な記録媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
【0169】
以上、本開示の好ましい実施形態について説明したが、本開示は係る特定の実施形態に限定されるものではなく、本開示には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。また、上記実施形態及び変形例で説明した装置の構成は、技術的な矛盾が生じない限り、適宜組み合わせ可能である。
【課題】広い地域を対象としたユーザの訪問履歴に基づくクラスタリングにおいて、地域性の影響を軽減してユーザの行動パターンの分析を行うことが可能なクラスタ生成プログラム、クラスタ生成方法及びクラスタ生成装置を提供する。
【解決手段】サーバ10は、複数のユーザの位置情報と時間情報を取得するユーザ情報取得部1031と、ユーザの位置情報を用いて、ユーザが訪問したスポットの種類を検出し、訪問したスポットの種類の共通性に基づいてユーザの分類である第1のクラスタを生成する第1クラスタ生成部1032と、を備える。