(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
以下に、本願に係る名寄せ装置、名寄せ方法及び名寄せプログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る名寄せ装置、名寄せ方法及び名寄せプログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0012】
(第1の実施形態)
〔1−1.名寄せ処理〕
まず、
図1を用いて、第1の実施形態に係る名寄せ処理の一例について説明する。
図1は、第1の実施形態に係る名寄せ処理の一例を示す図である。
図1では、名寄せシステム1に含まれる名寄せ装置100によって、名寄せ装置100が提供するサービスを利用するユーザを名寄せする名寄せ処理が行われる例を示す。
【0013】
図1に示した例において、ユーザU1は、PCであるユーザ端末10
1を有する。また、ユーザU2は、スマートフォンであるユーザ端末10
2と、タブレット端末であるユーザ端末10
3とを所持する。ユーザ端末10
1〜10
3と名寄せ装置100とは、図示しないネットワークN(例えば、インターネット)で接続される。なお、
図1の例では、ユーザ端末10
2とユーザ端末10
3とは、共通するルータ(router)機器を用いてネットワークNに接続されるものとする。
【0014】
名寄せ装置100は、サービス提供者によって管理されるサーバ装置である。具体的には、名寄せ装置100は、ユーザ端末10
1〜10
3にウェブページを配信することで、各種サービスを提供する。例えば、名寄せ装置100は、検索サイト、オークションサイト、ショッピングサイト、ニュースサイト、天気予報サイト、ファイナンス(株価)サイト、路線検索サイト、地図提供サイト、旅行サイト、飲食店紹介サイト、ウェブブログなどの各種サービスを提供する。
図1に示す例では、名寄せ装置100は、所定のサービスSV1をユーザU1及びユーザU2に提供しているものとする。
【0015】
ここで、ユーザ端末10
1は、ユーザU1による操作に従って、サービスSV1に対して、アカウント(account)A11でアクセスする(ステップS11)。アカウントとは、所定のサービスにログインするための権利のことをいい、サービスの利用に際して、ユーザは所定の手続きによりサービス提供者(例えば、名寄せ装置100の管理者)からアカウントの設定を受ける。ここでは、アカウントA11とは、サービスSV1の利用のためにユーザU1に割り当てられたアカウントのことをいう。すなわち、ユーザ端末10
1は、名寄せ装置100に対して、アカウントA11で認証を受けることにより、サービスSV1を利用することができる。
【0016】
また、ユーザ端末10
1は、ユーザU1による操作に従って、サービスSV1に対して、アカウントA12でアクセスする場合もある(ステップS12)。この場合、ユーザU1は、名寄せ装置100が提供するサービスSV1において、複数のアカウントの設定を受けていることになる。
【0017】
同様に、ユーザ端末10
2は、ユーザU2による操作に従って、サービスSV1に対して、アカウントA21でアクセスする(ステップS13)。また、ユーザU2は、複数のユーザ端末10
2及び10
3を所有しているので、ユーザ端末10
2と異なるユーザ端末10
3をサービスSV1の利用に用いる場合がある。すなわち、ユーザ端末10
3は、ユーザU2による操作に従って、サービスSV1に対して、アカウントA22でアクセスする場合がある(ステップS14)。
【0018】
このように、サービスSV1を提供する名寄せ装置100に対して、ユーザU1の例のように、同じユーザが同一ユーザ端末10
1から複数のアカウントを使用してアクセスする場合がある。また、ユーザU2の例のように、同じユーザが複数のユーザ端末10
2及び10
3から複数のアカウントを使用してアクセスする場合がある。この場合、名寄せ装置100は、アカウント情報のみを用いてユーザを特定することが困難である。すなわち、名寄せ装置100は、各アクセスにおいてアカウント情報によりユーザの同一性の判定をしようとすると、ステップS11〜14における各アクセスを異なるユーザからのアクセスと判定することになる。
【0019】
そこで、名寄せ装置100は、ステップS11〜14において、各アカウントによるアクセスに際して、ユーザ端末10
1〜10
3から取得可能な情報であるブラウザ情報を取得する。そして、名寄せ装置100は、取得されたブラウザ情報をブラウザ情報記憶部121に記憶し、ユーザの判定処理に使用する。
【0020】
ブラウザ情報とは、名寄せ装置100にアクセスする際に、各ユーザ端末のブラウザから送信されるHTTP(HyperText Transfer Protocol)リクエストに基づいて取得可能な情報をいう。例えば、ブラウザ情報は、HTTPヘッダが示す情報であり、かかる情報には複数の項目が含まれる。具体的には、名寄せ装置100は、アクセス日時や、各ユーザ端末のOS(Operating System)の種類やバージョン、ブラウザの種類やバージョン、ブラウザに含まれるプラグイン(plug-in)、クッキー(cookie)、HTTPリファラ(HTTP referer)、ルータなどの通信機器及びプロキシ(proxy)サーバなどの通信経路を示す情報である経路情報など、各項目に対応する情報を取得する。また、名寄せ装置100は、各ユーザ端末からHTTPリクエストが送信された時間と、HTTPリクエストが名寄せ装置100により受信された時間との時差である時差情報などを取得する。また、名寄せ装置100は、取得可能な場合には、各ユーザ端末を識別する情報である端末識別情報(例えば、ユーザ端末10
1〜10
3に予め付与される固有IDなど)を取得する。すなわち、名寄せ装置100は、アクセスに際して、アカウントなどのユーザが容易に変更可能な情報のみならず、ユーザが容易に変更することが困難である項目を含んだブラウザ情報を取得する。これにより、名寄せ装置100は、アカウントや端末を変更するといったユーザの動向による影響を抑えて、名寄せ処理を実行することができる。
【0021】
名寄せ装置100は、ステップS11〜14における各アクセスにおいて取得されたブラウザ情報に基づいて、各々のブラウザ情報の類似度を判定する処理を行う(ステップS15)。例えば、名寄せ装置100は、ブラウザ情報に含まれる複数の項目の類似性を判定することでブラウザ情報のスコアリングを行い、ブラウザ情報の類似度を判定する。なお、名寄せ装置100は、上記のブラウザ情報の例として挙げた情報を全て取得可能とは限らない。例えば、ユーザ端末10
1〜10
3の設定などによって、名寄せ装置100は、ブラウザ情報であっても取得できない項目がありうる。一例として、名寄せ装置100は、クッキーがユーザの操作により削除されたり、ユーザによってクッキーの送受信を行わない設定とされたりすることにより、クッキーを取得できない場合がある。このような場合であっても、名寄せ装置100は、ブラウザ情報に含まれる複数の項目を判定対象とすることにより、ブラウザ情報同士の類似度を判定することができる。
【0022】
図1に示す例において、名寄せ装置100は、アカウントA11からのアクセスにおいて取得されたブラウザ情報と、アカウントA12からのアクセスにおいて取得されたブラウザ情報との類似度を判定する。この例において、名寄せ装置100は、双方のアカウントに対応するブラウザ情報において、時差情報や、名寄せ装置100に到達するまでのルーティングなどの経路情報や、OSや、IPアドレスなどの項目における類似性が高いと判定する。結果として、名寄せ装置100は、アカウントA11に対応するブラウザ情報と、アカウントA12に対応するブラウザ情報とを類似度「高」と判定する。
【0023】
また、名寄せ装置100は、アカウントA21からのアクセスにおいて取得されたブラウザ情報と、アカウントA22からのアクセスにおいて取得されたブラウザ情報との類似度を判定する。この例において、名寄せ装置100は、双方のアカウントに対応するブラウザ情報において、OSや、ブラウザの種類などの項目においては類似性が低いと判定する。一方、名寄せ装置100は、時差情報や、ルーティングなどの経路情報や、IPアドレスが示す情報(例えば、既存の技術により、端末に付与されたIPアドレスに基づいて、端末の所在地などを推定した情報)などの項目における類似性が高いと判定する。結果として、名寄せ装置100は、アカウントA21に対応するブラウザ情報と、アカウントA22に対応するブラウザ情報とを類似度「中」と判定する。なお、名寄せ装置100は、アカウントA11とアカウントA21及びA22や、アカウントA12とアカウントA21及びA22とは、類似性のある項目が比較的少ないものとして、類似度「低」と判定する。上記のように、名寄せ装置100は、ブラウザ情報同士の類似度を判定する。そして、名寄せ装置100は、判定されたブラウザ情報同士の類似度に基づいて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0024】
そして、名寄せ装置100は、判定されたユーザ同士の類似度(すなわち、ユーザに対応するブラウザ情報同士の類似度)に基づいて、ブラウザ情報に対応するユーザを名寄せする処理を行う(ステップS16)。例えば、名寄せ装置100は、ブラウザ情報の類似度に所定の閾値を設け、所定の閾値以上のブラウザ情報に対応するユーザ同士を同一のユーザとして名寄せする。
図1の例では、名寄せ装置100は、所定の閾値として、類似度「中」以上のブラウザ情報に対応するユーザを同一のユーザと推定するものとする。これにより、名寄せ装置100は、アカウントA11でアクセスしたユーザU1と、アカウントA12でアクセスしたユーザU1とを同一のユーザとして名寄せする。また、名寄せ装置100は、アカウントA21でアクセスしたユーザU2と、アカウントA22でアクセスしたユーザU2とを同一のユーザとして名寄せする。
【0025】
このように、第1の実施形態に係る名寄せ装置100は、ユーザ端末10
1〜10
3のブラウザから取得可能な情報であるブラウザ情報を取得する。そして、名寄せ装置100は、取得されたブラウザ情報に基づいて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。そして、名寄せ装置100は、判定された類似度が所定の閾値以上である場合に、比較対象となっているユーザ同士を同一のユーザとして名寄せする。
【0026】
上述したように、ユーザは、サービスの利用に際して同一ユーザが複数のアカウントを有する場合がある。このような場合に、第1の実施形態に係る名寄せ装置100は、ユーザから送信されるアカウント情報やデバイス情報のみならず、ユーザ端末のブラウザ情報を取得することにより、ユーザが容易に変更することのできない情報を取得する。そして、名寄せ装置100は、ブラウザ情報に基づいたユーザの類似度の判定結果に基づいて、ユーザを名寄せすることにより、複数アカウントにまたがるユーザを精度良く名寄せすることができる。
【0027】
これにより、名寄せ装置100は、以下に示す適用例などにおいて有利な効果を奏することができる。例えば、名寄せ装置100は、提供するサービスにおいて、ユーザによる不当な利用を排除することができる。
図1の例において、仮に、ユーザU1は、アカウントA11でログインしたサービスSV1において不正利用が発覚し、アカウントA11の使用を停止されたユーザであるとする。この場合、ユーザU1は、再びサービスSV1からアカウントA12の発行を受け、サービスSV1の利用を継続しようとする場合がある。名寄せ装置100は、ユーザ端末10
1に係るブラウザ情報を取得し、複数アカウントを使用するユーザU1を特定することにより、ユーザU1を補足することができる。また、ユーザU2は、異なるアカウント、かつ異なるデバイスにより名寄せ装置100にアクセスするものの、使用するサービスSV1は共通している場合がある。この場合であっても、名寄せ装置100は、異なるアカウントA21及びA22を使用するユーザU2を名寄せすることができる。これにより、例えば、名寄せ装置100は、異なる環境においてサービスSV1を利用するユーザU2に対して、ユーザU2の興味関心に沿ったサービス内容を提示したり、ユーザU2に合わせた広告コンテンツを配信したりすることができる。
【0028】
また、他の適用例として、ユーザによっては、アカウントの登録を受けていたことを失念し、ある程度の期間経過後(例えば、数か月、数年など)に、同一のサービスSV1を利用しようとして、新たなアカウントの発行を受ける場合がある。このような場合においても、名寄せ装置100は、ユーザの名寄せを行うことにより、例えば、過去のアカウントに存在していたユーザの情報や行動履歴を引き継がせることができる。これにより、名寄せ装置100は、いわゆる休眠アカウントを効率的に排除することや、ユーザが過去に受けたサービス内容などの有益な情報を活用させることができる。また、他の適用例として、ユーザによっては、同一のサービスSV1を利用する場合であっても、PCを利用している場合における行動特性と、スマートフォン等の携帯端末を利用している場合における行動特性とが異なる場合がある。このような場合でも、名寄せ装置100は、ユーザを名寄せすることにより、共通するユーザに即したサービスを提供することができる。
【0029】
以下、上述した名寄せ装置100の構成及び処理手順について説明する。なお、以下では、ユーザ端末10
1〜10
3を区別する必要がない場合には、これらを総称して「ユーザ端末10」と表記する場合がある。
【0030】
〔1−2.名寄せ装置の構成〕
次に、
図2を用いて、第1の実施形態に係る名寄せ装置100の構成について説明する。
図2は、第1の実施形態に係る名寄せ装置100の構成例を示す図である。
図2に示すように、名寄せ装置100は、通信部110と、記憶部120と、制御部130とを有する。
【0031】
(通信部110について)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、図示しないネットワークNと有線又は無線で接続され、ユーザ端末10との間で情報の送受信を行う。
【0032】
(記憶部120について)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
図2に示すように、記憶部120は、ブラウザ情報記憶部121と、ユーザ情報記憶部122とを有する。
【0033】
(ブラウザ情報記憶部121について)
ブラウザ情報記憶部121は、ユーザ端末10がサービスを利用する際に取得されるブラウザ情報に関する情報を記憶する。ここで、
図3に、第1の実施形態に係るブラウザ情報記憶部121の一例を示す。
図3に示した例では、ブラウザ情報記憶部121は、「アクセス日時」、「アカウント」、「時差情報」、「ルート情報」、「ブラウザ」、「OS」、「プラグイン」、「IP(Internet Protocol)アドレス」といった項目を有する。
【0034】
「アクセス日時」は、ユーザ端末10からアクセスされた日時を示す。言い換えれば、「アクセス日時」は、名寄せ装置100によって提供されるサービスがユーザ端末10に利用された日時を示す。「アカウント」は、ユーザ端末10との間で送受信されるアカウントを示す。
【0035】
「時差情報」は、ユーザ端末10から送信された情報と、名寄せ装置100が受信した情報との時差に関する情報を示す。「ルート情報」は、ユーザ端末10から送信された情報が名寄せ装置100に到達するまでのルートに関する情報を示す。なお、
図3の例では、「時差情報」及び「ルート情報」には「t01」や「R011」などの模式的な情報が格納される例を示したが、実際には「t01」には時間の経過を示す秒数などが含まれる。また、「ルート情報」は、通信に使用されたルータやプロキシサーバを識別する情報などが含まれる。
【0036】
「ブラウザ」は、ユーザ端末10が使用しているブラウザを示す。例えば、ブラウザは、「BR01(8.1)」など、ブラウザの名称である「BR01」と、バージョン情報である「8.1」との組合せにより表される。「OS」は、ユーザ端末10が使用しているOSを示す。例えば、OSは、「OS01(10.3)」など、OSの名称である「OS01」と、バージョン情報である「10.3」との組合せにより表される。「プラグイン」は、ブラウザに組み込まれているプラグインの情報を示す。「プラグイン」には「P01」などの模式的な情報が格納される例を示したが、実際には「P01」には、組み込まれているプラグインの識別情報(名称等)の情報が含まれる。
【0037】
「IPアドレス」は、ユーザ端末10のIPアドレスを示す。なお、
図3の例では、「IPアドレス」には「IP−01」といった模式的な情報が格納される例を示したが、実際には「IPアドレス」には「N
1.N
2.N
3.N
4」(N
1〜N
4は、0〜255の数字)といった情報が格納される。
【0038】
すなわち、
図3では、「2014年12月15日9時00分」に、アカウント「A11」でサービスにログインしたユーザ端末10から取得されるブラウザ情報は、時差情報が「t01」であり、ルート情報が「R011」であり、使用されているブラウザは「BR01(8.1)」であり、使用されているOSは「OS01(10.3)」であり、組み込まれているプラグインの情報は「P01」であり、IPアドレスは「IP−01」であることなどの、各項目の情報を含むことを示している。
【0039】
なお、
図3での図示は省略するが、ブラウザ情報記憶部121には、ユーザ端末10のアクセスに伴い取得されるその他の情報が記憶されてもよい。例えば、ブラウザ情報記憶部121には、ユーザ端末10を識別する識別情報が記憶される。ユーザ端末10を識別する識別情報の一例は、クッキーである。また、ユーザ端末10に予め固有IDが割り当てられている場合には、かかるユーザ端末10を識別する情報として、ユーザ端末10の固有IDが記憶される。
【0040】
(ユーザ情報記憶部122について)
ユーザ情報記憶部122は、名寄せ処理されたユーザに関する情報を記憶する。ここで、
図4に、第1の実施形態に係るユーザ情報記憶部122の一例を示す。
図4に示した例では、ユーザ情報記憶部122は、「同一ユーザ(アカウント)」、「類似度」、「判定項目」といった項目を有する。
【0041】
「同一ユーザ(アカウント)」は、後述する名寄せ部134によって名寄せされたユーザ毎に、かかるユーザによって利用されるユーザ端末10に対応するアカウント名を示す。
【0042】
「類似度」は、名寄せされた際に用いられたブラウザ情報同士の類似度を示す。
図4の例では、類似度は、「高」や「中」という概念で類似度を示しているが、類似度の表示手法は、これに限られない。例えば、類似度は、1から100まででスコアリングされた数値により表されてもよい。
【0043】
「判定項目」は、後述する判定部133が類似度を判定する際に用いたブラウザ情報に含まれる項目を示す。
図4では、判定に用いた項目のうち、判定部133によって類似性を有すると判定された項目が表示される例を示している。なお、判定項目には、判定に用いた全ての項目が記憶されてもよい。
【0044】
すなわち、
図4では、アカウント「A11」によって識別されるユーザ端末10と、アカウント「A12」によって識別されるユーザ端末10とが、同一のユーザによって利用されていると名寄せされ、判定処理に用いられたブラウザ情報同士の類似度は「高」であり、判定項目は「ルート情報、ブラウザ、OS、プラグイン」であったことを示している。
【0045】
(制御部130について)
図2の説明に戻って、制御部130は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、名寄せ装置100内部の記憶装置に記憶されている各種プログラム(判定プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0046】
図2に示すように、制御部130は、提供部131と、取得部132と、判定部133と、名寄せ部134とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、
図2に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、
図2に示した接続関係に限られず、他の接続関係であってもよい。
【0047】
(提供部131について)
提供部131は、ユーザ端末10に対して各種サービスを提供する。具体的には、提供部131は、ユーザ端末10からアクセス要求を受信した場合に、かかるアクセス要求の応答として、各種サービスに対応するウェブページをユーザ端末10に配信する。例えば、提供部131は、検索サービスに対応する検索サイトや、オークションサービスに対応するオークションサイトや、ショッピングサービスに対応するショッピングサイト等に関するウェブページを配信する。
【0048】
ここで、提供部131は、ユーザ端末10から送信されるアカウント情報を受信する。そして、提供部131は、受信したアカウント情報に基づいて、ユーザに対応するサービスを提供する。
【0049】
そして、提供部131は、ユーザ端末10に各種サービスに対応するウェブページを配信した場合に、ブラウザ情報記憶部121を更新する。具体的には、提供部131は、ユーザ端末10からアクセス要求を受信した日時をブラウザ情報記憶部121の「アクセス日時」に格納する。また、提供部131は、ユーザ端末10から取得可能なブラウザ情報に基づいて、時差情報、ルート情報をブラウザ情報記憶部121の「時差情報」及び「ルート情報」に格納する。また、提供部131は、アクセス要求をしたユーザ端末10のブラウザや、OSや、プラグインの各種情報をブラウザ情報記憶部121の所定の項目に格納する。また、提供部131は、アクセス要求を受信した際に得られるユーザ端末10のIPアドレスをブラウザ情報記憶部121の「IPアドレス」に格納する。また、提供部131は、可能な場合には、アクセス要求としてHTTP(Hypertext Transfer Protocol)リクエストを受信した場合には、HTTPリクエストのヘッダに設定されているユーザエージェント等に基づいて、ユーザ端末10の識別情報を取得する。例えば、提供部131は、ユーザ端末10がクッキーを保持する場合には、ユーザ端末10からのアクセス要求とともにクッキーを受信する。これにより、提供部131は、クッキーに基づいて、ユーザ端末10を識別することができる。
【0050】
(取得部132について)
取得部132は、ユーザ端末10に対応するブラウザ情報を取得する。具体的には、取得部132は、後述する判定部133がブラウザ情報の類似度を判定する処理を開始するタイミングになった場合に、ブラウザ情報記憶部121から各種情報を取得する。例えば、取得部132は、定期的(例えば、1日毎や1週間毎)に、ブラウザ情報記憶部121から各種情報を取得する。また、例えば、取得部132は、名寄せ装置100の管理者であるサービス提供者によって名寄せ処理を行う旨の操作が行われた場合に、ブラウザ情報記憶部121から各種情報を取得する。このとき、取得部132は、過去に処理済みの情報についてはブラウザ情報記憶部121から取得しなくてもよい。
【0051】
(判定部133について)
判定部133は、取得部132によって取得されたブラウザ情報同士の類似度を判定する。また、判定部133は、取得されたブラウザ情報に基づいて、ブラウザ情報に対応するユーザ同士の類似度を判定する。例えば、判定部133は、ブラウザ情報が有する傾向の類似性を比較することによって求められるブラウザ情報同士の類似度に基づいて、ブラウザ情報に対応するユーザ同士の類似度を判定する。これは、類似度が高いブラウザ情報の組合せは、送信されたアカウントが異なる場合であっても、かかるブラウザ情報に対応する双方のユーザ端末10が同一ユーザに操作されている可能性が高いことを意味する。この場合、判定部133は、ブラウザ情報に含まれる情報について、送信元であるユーザ端末10のアクセス傾向(おおまかな場所や時間など)や、ユーザ端末10の機種傾向(PCか、タブレットか)などにより示されるパターンを判定する。例えば、判定部133は、アカウント情報が異なっていても、同一ユーザが操作するユーザ端末10から取得されるブラウザ情報である場合には、かかるブラウザ情報に対して所定のパターンを見出し得る。この場合、判定部133は、ブラウザ情報のパターンとして、複数の判定要素を数値化し、ベクトルにより表示された情報の類似性を判定してもよい。例えば、判定部133は、特定の時間にアクセスが集中するなどの傾向が見出せる場合には、かかる判定要素の数値が高いベクトル情報を作成する。そして、判定部133は、ベクトルとして表示した場合に、有する距離と角度が類似するベクトルで示されるブラウザ情報同士を類似性が高いものとして判定する。このように、判定部133は、ユーザが意識的には変化させにくいブラウザ情報が有するパターンを判定することにより、ブラウザ情報の類似性を判定することができる。
【0052】
具体的には、第1の実施形態に係る判定部133は、ブラウザ情報の項目ごとの類似性について比較し、それぞれの項目の類似性に基づいてブラウザ情報同士の類似度を判定し、かかるブラウザ情報に対応するユーザの類似度を判定する。すなわち、判定部133は、取得部132によってブラウザ情報記憶部121から取得されたアカウントに基づいて、所定のサービスを利用したユーザ端末に対応するブラウザ情報を抽出する。そして、判定部133は、ブラウザ情報に含まれる複数の項目を比較することにより、ブラウザ情報の類似性をスコアリングし、算出されたスコアに基づいて、ブラウザ情報同士の類似度を判定する。
【0053】
例えば、判定部133は、比較対象となる互いのブラウザ情報に含まれる項目のうち、「時差情報」が類似しているか否かを判定する。判定部133は、類似している場合には、かかる項目について類似度の判定のためのスコアを高く算出する。同様に、判定部133は、「ルート情報」や、「ブラウザ」や、「OS」や、「プラグイン」などの各項目が類似しているか否かを判定する。具体的には、判定部133は、ルート情報においては、比較対象となっているユーザ端末10が同じルートを経由して名寄せ装置100にアクセスしているか否か、等の観点により類似度を判定する。例えば、判定部133は、比較対象において、同じ識別子を持つルータを経由していたり、同じ識別子を持つプロキシサーバを経由していたりしていると判定される場合には、ルータ情報に係る項目について類似性を有するものとして、類似度を高く判定する。また、判定部133は、ブラウザや、OSについては、種類やバージョンが同一か否かを判定し、同一である場合には、類似度を高く判定する。また、判定部133は、プラグインについては、プラグインとして含まれているソフトウェア等に共通性があるか否かを判定し、共通性が高い場合には、類似度を高く判定する。なお、判定部133は、取得部132によって取得されなかった項目がある場合には、かかる項目をスキップして判定処理を行うことができる。また、判定部133は、例えば、名寄せ装置100の管理者などの人間による指示を受け付けることにより、判定する項目内容や項目数を決定してもよい。
【0054】
また、判定部133は、ブラウザ情報に含まれる複数の項目のうち、所定の項目の評価を重み付けすることにより、ブラウザ情報同士の類似度を判定してもよい。これは、ブラウザ情報に含まれるクッキーなどの端末識別情報が一致した場合には、受信したアカウントが異なっている場合でも、ユーザ端末10が一致している可能性が高いことによる。すなわち、判定部133は、端末識別情報に係る項目の重みを重くし、比較対象とするブラウザ情報のうち、かかる項目が一致する場合には、他の項目が一致又は類似する場合よりも、ブラウザ情報同士の類似度が高くなるように調整する。
【0055】
また、判定部133は、ブラウザ情報に含まれる複数の項目のうち、判定処理で用いた実績のある項目を優先的に用いて、ブラウザ情報同士の類似度を判定してもよい。具体的には、判定部133は、過去にユーザ同士の類似度の高低を判定するために利用された項目の情報を優先的に用いて、ブラウザ情報に対応するユーザ同士の類似度を判定する。これは、ブラウザ情報に含まれる情報は、雑多な項目を多く含むことにより、全ての項目の類似性を判定した場合に、処理負荷が増大することによる。すなわち、判定部133は、過去に判定処理で用いた項目であって、ブラウザ情報の類似度を判定するために有用であった項目を優先的に処理に用いることにより、処理負荷を軽減させることができる。例えば、判定部133は、ユーザ情報記憶部122に格納されている類似度及び判定項目に係る情報を参照することにより、処理を優先させる項目を抽出する。
【0056】
また、判定部133は、ブラウザ情報に含まれる複数の項目のうち、判定処理で用いた実績のある項目の評価を重み付けすることにより、ブラウザ情報同士の類似度を判定してもよい。具体的には、判定部133は、過去にユーザ同士の類似度の高低を判定するために利用された項目の情報の評価について重み付けを行い、ブラウザ情報に対応するユーザ同士の類似度を判定する。上述したように、判定部133は、過去に判定処理で用いた項目であって、ブラウザ情報の類似度を判定するために有用であった項目を参照し、判定処理に用いることができる。このため、判定部133は、例えば、判定処理の結果を機械学習することにより、過去の判定処理に有用であった所定の項目について重み付けを調整し、所定の項目の重み付けのなされた判定処理を実行する。例えば、判定部133は、過去の判定処理でブラウザ情報の類似度を高く判定するための因子となった項目について、他の項目よりも重み付けが重くなされるよう調整する。これにより、判定部133は、精度の高い類似度の判定を行うことができる。
【0057】
また、判定部133は、ブラウザ情報に含まれる項目のうち、複数の項目の関係性に基づいて、ブラウザ情報同士の類似度を判定してもよい。以下に具体例を説明する。かかる事例において、判定部133は、ほぼ同時刻にアクセスを受け付けた二種類のブラウザ情報の類似度を判定する。判定部133は、ブラウザ情報に含まれる端末識別情報により、異なるアカウントから送信された二種類のブラウザ情報について、同一端末によるアクセスと判定したとする。一方で、判定部133は、両者のブラウザ情報に係るIPアドレスに基づく情報が非類似であることを判定したとする。上述のように、既存の技術を利用することで、ユーザ端末10に付与されたIPアドレスに基づき、ユーザ端末10のある程度の所在地域(例えば、市区町村程度など)を推測することが可能である。このとき、判定部133は、「IPアドレス」と「端末識別情報」という複数の項目の関係性に基づいて、当該二種類のブラウザ情報の類似度を「低」と判定する場合がある。
【0058】
このように、判定部133が、二種類のブラウザ情報の類似度を「低」と判定する理由は、所定の時間内に移動不可能な地域からアクセスしたユーザ端末10のユーザ同士は、同一のユーザである可能性が低いからである。例えば、判定部133は、IPアドレスから導かれる情報に基づいて、比較対象となっている二種類のブラウザ情報が、所定の時間「10分」の間に、東京都世田谷区に所在するユーザ端末10と、愛知県名古屋市に所在するユーザ端末10から取得されたブラウザ情報であることを判定したものとする。この場合、10分間で東京都世田谷区から愛知県名古屋市まで移動することは困難である。このように、ブラウザ情報に含まれる複数の項目の関係性によっては、同一のユーザにより操作されていることに矛盾が生じる場合がある。このようなときには、判定部133は、ブラウザ情報に含まれる端末識別情報が何らかの理由により誤っていたり、偽装されていたりする場合を想定し、二種類のブラウザ情報に対応するユーザの類似度を低く判定する。このように、判定部133は、ブラウザ情報に含まれる項目のうち複数の項目の関係性を判定することで、矛盾の生じる情報や、不正が疑われる情報などを検知することができるので、より精度の高い判定処理を行うことができる。上記のような処理は、例えば、時差情報や、ルート情報などを用いて行われてもよい。
【0059】
(名寄せ部134について)
名寄せ部134は、判定部133によって判定された類似度が所定の閾値以上である場合に、比較対象となったユーザ同士を同一のユーザとして名寄せする。具体的には、第1の実施形態に係る名寄せ部134は、判定部133によって判定されたブラウザ情報同士の類似度に基づいて、ブラウザ情報に対応するユーザ同士の類似度を判定し、かかる類似度が所定の閾値より高い場合に、比較対象となったユーザ同士を名寄せする。
【0060】
なお、名寄せ部134は、名寄せ処理を行う上記の所定の閾値について、任意に設定可能である。例えば、サービス提供者にとっては、サービスを利用するユーザについて、確実な同一性を要さない場合がある。例えば、似たようなユーザに共通するサービスを提供したい場合、必ずしも同一のユーザでなくとも、提供対象となるユーザにある程度の類似性が認められれば十分な場合がある。このような場合には、名寄せ部134は、判定部133によって判定された類似度について、名寄せする閾値をユーザの同一性が高いと判定される値よりも低く設定することにより、名寄せされるユーザの幅を拡張することができる。これにより、名寄せ部134は、単に同一性が認められるユーザを名寄せするのみならず、例えば、サービスが提供されるユーザ層を適切に区分けしたり、不正を行う可能性の高いユーザを一つのユーザ層として分類したりすることが可能になる。
【0061】
〔1−3.名寄せ処理手順〕
次に、
図5を用いて、第1の実施形態に係る名寄せ装置100による名寄せ処理の手順について説明する。
図5は、第1の実施形態に係る名寄せ装置100による名寄せ処理手順を示すフローチャートである。
【0062】
図5に示すように、名寄せ装置100は、ユーザ端末10からアクセスを受け付けたか否かを判定する(ステップS101)。そして、名寄せ装置100は、アクセスを受け付けていない場合には(ステップS101;No)、受け付けるまで待機する。
【0063】
一方、名寄せ装置100は、アクセスを受け付けた場合に(ステップS101;Yes)、ユーザ端末10に対応するブラウザ情報を取得する(ステップS102)。続いて、名寄せ装置100は、ブラウザ情報の類似度を判定する(ステップS103)。
【0064】
そして、名寄せ装置100は、ブラウザ情報同士の類似度が所定の閾値よりも高いか否かを判定する(ステップS104)。そして、名寄せ装置100は、ブラウザ情報同士の類似度が所定の閾値よりも高くない場合には(ステップS104;No)、ブラウザ情報に対応するユーザを同一ユーザとして名寄せしない(ステップS106)。
【0065】
一方、名寄せ装置100は、ブラウザ情報同士の類似度が所定の閾値よりも高い場合には(ステップS104;Yes)、ブラウザ情報に対応するユーザを同一ユーザとして名寄せする(ステップS105)。
【0066】
〔1−4.効果〕
上述してきたように、第1の実施形態に係る名寄せ装置100は、取得部132と、判定部133と、名寄せ部134とを有する。取得部132は、ユーザ端末10のブラウザから取得可能な情報であるブラウザ情報を取得する。判定部133は、取得部132によって取得されたブラウザ情報に基づいて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。名寄せ部134は、判定部133によって判定された類似度が所定の閾値以上である場合に、当該類似度に対応するユーザ同士を同一のユーザとして名寄せする。
【0067】
このように、第1の実施形態に係る名寄せ装置100は、アカウント情報やデバイス情報などのユーザが容易に変更可能な情報ではなく、ブラウザ情報などのユーザが容易に変更することのできない情報を用いて、ユーザの類似度を判定する。これにより、名寄せ装置100は、複数のアカウントやデバイスを利用するユーザの同一性を高い精度で判定し、名寄せすることができる。
【0068】
また、判定部133は、ブラウザ情報に含まれる複数の項目の情報について、項目ごとの類似性を比較することによって求められるブラウザ情報同士の類似度に基づいて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0069】
このように、第1の実施形態に係る名寄せ装置100は、取得されたブラウザ情報のうち、ユーザの類似度を計るために有用な複数の項目を用いるので、ユーザの同一性を高い精度で判定することができる。
【0070】
また、判定部133は、ブラウザ情報に含まれる複数の項目の情報のうち、過去にユーザ同士の類似度の高低を判定するために利用された項目の情報を優先的に用いて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0071】
このように、第1の実施形態に係る名寄せ装置100は、判定処理に用いた情報を学習することにより、判定する項目を取捨することができるので、ユーザの同一性を高い精度で判定することができるとともに、処理負担を軽減させたり、処理を高速化させたりすることができる。
【0072】
また、判定部133は、ブラウザ情報に含まれる複数の項目の情報のうち、過去にユーザ同士の類似度の高低を判定するために利用された項目の情報の評価について重み付けを行い、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0073】
このように、第1の実施形態に係る名寄せ装置100は、判定処理に用いた情報を学習することにより、判定する項目について重み付けをすることができるので、より高い精度でユーザの同一性を判定することができる。
【0074】
また、判定部133は、ブラウザ情報に含まれる複数の項目の情報のうち、複数の項目の関係性に基づいて求められたブラウザ情報同士の類似度に基づいて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0075】
このように、第1の実施形態に係る名寄せ装置100は、異なるアカウントから取得されたブラウザ情報の複数の項目において、同時に成立することに矛盾が生じるような項目の関係性についての判定を加えて、ユーザの類似度を判定する。これにより、名寄せ装置100は、ユーザの同一性の判定精度を向上させることができる。
【0076】
また、取得部132は、ブラウザ情報として、ユーザ端末10のネットワーク通信経路、ユーザ端末10のOS、ユーザ端末10のブラウザソフトウェア、ブラウザソフトウェアにおけるプラグイン、ユーザ端末10のIPアドレス及びユーザ端末10に予め設定された固有の識別子の少なくともいずれか一つの項目に関する情報を取得する。
【0077】
このように、第1の実施形態に係る名寄せ装置100は、各アカウントから取得可能な種々の情報を取得し、ユーザの同一性の判定処理に用いるので、ユーザの同一性を高い精度で判定することができる。
【0078】
(第2の実施形態)
第1の実施形態では、名寄せ装置100が提供するサービスが同一のサービスである例を示した。しかし、サービスは、同一のサービスでなくてもよい。第2の実施形態では、異なるサービスを利用したユーザ端末10を名寄せする例について説明する。
【0079】
〔2−1.名寄せ処理〕
まず、
図6を用いて、第2の実施形態に係る名寄せ処理の一例について説明する。
図6は、第2の実施形態に係る名寄せ処理の一例を示す図である。
図6では、名寄せ装置200によって名寄せ処理が行われる例を示す。
【0080】
図6に示すように、ユーザ端末10
1〜10
3は、ユーザU3による操作に従って、名寄せ装置200によって提供されるサービスを利用する。
図6に示す例では、ユーザ端末10
1は、アカウントA31を用いて、名寄せ装置200の提供するショッピングモールサイトの出店者としてアクセスする(ステップS21)。また、ユーザ端末10
2は、アカウントA32を用いて、名寄せ装置200の提供するショッピングモールサイトの出店者としてアクセスする(ステップS22)。また、ユーザ端末10
3は、アカウントA33を用いて、名寄せ装置200の提供するオークションサイトの出品者としてアクセスする(ステップS23)。
【0081】
そして、第2の実施形態に係る名寄せ装置200は、各種サービスを利用した複数のユーザ端末10
1〜10
3について、第1の実施形態に係る名寄せ装置100と同様に、ブラウザ情報の類似度の判定処理を行う(ステップS24)。ここで、
図6の例において、名寄せ装置200は、ユーザ端末10
1〜10
3に対応するブラウザ情報について、所定の範囲内に該当する類似度を判定したものとする。具体的には、名寄せ装置200は、ブラウザ情報のうち、いくつかの項目において類似性を認めたものの、ユーザの同一性を判定できる程度に類似度を高く判定しなかったものとする。一方、名寄せ装置200は、ブラウザ情報のうち、いくつかの項目において類似性が認めたられたため、ユーザの同一性を否定するような程度に類似度を低くは判定しなかったものとする。上記は、例えば、ユーザ端末10
1〜10
3から送信されるブラウザ情報の一部が偽装されることにより、ブラウザ情報の類似度を判定するための有用な情報が充分に取得されなかったこと等により起こりうる。
【0082】
かかる場合、第2の実施形態に係る名寄せ装置200は、ユーザ端末10
1〜10
3の各種サービスにおける利用履歴を取得する。名寄せ装置200は、取得した利用履歴を利用履歴記憶部123に格納する。
【0083】
そして、名寄せ装置200は、ブラウザ情報の類似度の判定と併せて、ユーザ端末10
1〜10
3の各種サービスにおける利用履歴の類似度についても判定処理を行う。例えば、名寄せ装置200は、アカウントA31で識別されるユーザ端末10
1が、ショッピングモールサイトで「出品店名AAA」を用いて、「所定の商品CCC関連」を扱うショップを出店したという利用履歴と、アカウントA32で識別されるユーザ端末10
2が、ショッピングモールサイトで「出品店名BBB」を用いて、「所定の商品CCC関連」を扱うショップを出店したという利用履歴との類似度を判定する。そして、名寄せ装置200は、双方のユーザ端末10
1及び10
2から取得される利用履歴が類似していると判定する場合には、ブラウザ情報の類似度のスコアに利用履歴による類似度のスコアを追加する。これにより、名寄せ装置200は、ユーザ端末10
1及び10
2から取得される利用履歴及びブラウザ情報に基づいて、類似度を「高」と判定する。
【0084】
また、名寄せ装置200は、アカウントA33で識別されるユーザ端末10
3が、オークションサイトで「商品CCC」を出品しているという利用履歴を取得する。ここで、アカウントA33の出品情報には、シッピングモールサイトにおいてアカウントA31が運営する「出品店名AAA」や、アカウントA32が運営する「出品店名BBB」と関連する情報が掲載されているとする。例えば、アカウントA33の出品情報には、「出品店名AAA」や「出品店名BBB」の商品情報が掲載されていたり、リンクが張られていたりする。
【0085】
すなわち、名寄せ装置200は、上記のような、アカウントA33で識別されるユーザ端末10
3の利用履歴を取得し、判定処理に用いる。名寄せ装置200は、ユーザ端末10
3と、ユーザ端末10
1及び10
2とから取得される利用履歴の類似性を判定し、ブラウザ情報の類似度のスコアに利用履歴による類似度のスコアを追加する。これにより、名寄せ装置200は、ユーザ端末10
3と、ユーザ端末10
1及び10
2とから取得される利用履歴及びブラウザ情報に基づいて、類似度を「中」と判定する。この場合、名寄せ装置200は、サービス同士の類似性を判定の要素の1つとしてもよい。例えば、名寄せ装置200は、ショッピングモールサイトとオークションサイトとは関連性が高く、双方のサイトで類似性のある利用履歴や、関連性のある利用履歴のあるユーザについては、類似度を高く判定する。一方、名寄せ装置200は、ショッピングモールサイトとニュースサイトや天気サイト等とは関連性が低く、双方のサイトでの利用履歴については、ユーザの同一性を判定する要素として低く評価する。
【0086】
そして、名寄せ装置200は、判定された類似度に基づいて、ブラウザ情報に対応するユーザを名寄せする処理を行う(ステップS25)。
【0087】
このように、第2の実施形態に係る名寄せ装置200は、ユーザ端末10に利用されるサービスに関する利用履歴を取得し、取得された利用履歴と、利用履歴に対応するユーザ端末10のブラウザ情報同士の類似度とに基づいて、ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0088】
このように、第2の実施形態に係る名寄せ装置200は、ブラウザ情報に加えて、サービスにおける利用履歴を用いて、異なるアカウントのユーザ同士を同一のユーザとして名寄せする。これにより、名寄せ装置200は、ブラウザ情報のみからではユーザの同一性が判定し難い場合であっても、複数のアカウントを利用するユーザを精度良く特定することができる。また、名寄せ装置200は、提供するサービスが複数ある場合であっても、それぞれのサービスの利用履歴に基づいてユーザの名寄せを行うことができるので、異なるサービスで不正利用したユーザなどを、他のサービスにおいて捕捉すること等が可能になる。
【0089】
〔2−2.名寄せ装置の構成〕
次に、
図7を用いて、第2の実施形態に係る名寄せ装置200の構成について説明する。
図7は、第2の実施形態に係る名寄せ装置200の構成例を示す図である。
図7に示すように、名寄せ装置200は、第1の実施形態に係る名寄せ装置100に加えて、利用履歴記憶部123を有する。
【0090】
(利用履歴記憶部123について)
利用履歴記憶部123は、ユーザがサービスを利用した際の利用履歴に関する情報を記憶する。ここで、
図8に、第2の実施形態に係る利用履歴記憶部123の一例を示す。
図8に示した例では、利用履歴記憶部123は、「更新日時」、「アカウント」、「利用サービス」「利用履歴」といった項目を有する。
【0091】
「更新日時」は、利用履歴に関する情報が更新された日時を示す。「アカウント」は、ユーザ端末10との間で送受信されるアカウントを示す。「利用サービス」は、ユーザが利用したサービスを識別する情報を示す。「利用履歴」は、ユーザがサービスを利用した際の利用履歴に関する情報を示す。例えば、利用履歴は、サービスにおけるユーザの行動に関する情報が記憶されたログファイルなどである。
【0092】
すなわち、
図8では、「2014年12月18日6時00分」に更新された情報として、アカウント「A31」によって識別されるユーザ端末10が、利用サービス「SV01(ショッピングモールサイト)」において、利用履歴「L01」に表されるような利用履歴を有していることを示している。
【0093】
(制御部130について)
図7の説明に戻って、第2の実施形態に係る制御部130の各処理部について説明する。第2の実施形態に係る取得部132は、ユーザ端末10に利用されるサービスに関する利用履歴を取得する。例えば、取得部132は、アカウントごとに、利用したサービスの種類を取得する。また、取得部132は、提供部131が提供するショッピングモールサイトにおいて、出店行為を行った履歴や、商品を売買した履歴や、商品を検索したことなどのアカウントごとの具体的な利用履歴を取得する。
【0094】
また、第2の実施形態に係る判定部133は、取得部132によって取得された利用履歴と、当該利用履歴に対応するユーザ端末10のブラウザ情報同士の類似度とに基づいて、ブラウザ情報に対応するユーザ同士の類似度を判定する。例えば、判定部133は、ブラウザ情報のみではユーザ同士の類似度を判定するのに充分でない場合に、ユーザの利用履歴を比較することにより、利用履歴の類似性について判定する。そして、判定部133は、判定された利用履歴の類似性を加味し、ユーザ同士の類似度を判定する。例えば、判定部133は、ユーザが利用するサービスそのものの関連性について類似性を判定する。一例として、判定部133は、ショッピングモールサイトの利用と、オークションサイトの利用とが関連するものと判定する。このようなサービスの関連性については、例えば、名寄せ装置200の管理者により予め設定されてもよいし、類似度が高かったユーザ同士が利用していたサービスの情報を格納することによって、かかる結果を機械学習することにより、関連性が高いサービスに関する情報を設定していってもよい。
【0095】
さらに、判定部133は、サービスの利用の態様について類似性を判定してもよい。例えば、判定部133は、ショッピングモールサイトへ出店するという利用の態様と、オークションサイトへ出品するという利用の態様とが関連するものと判定する。また、判定部133は、サービスの利用の態様として、例えば、異なる出店者が似たような商品を所定数扱っていたり、似たようなキャンペーンを同時期に行っていたりする場合などには、かかる出店者同士が関連している可能性が高いと判定する。また、例えば、判定部133は、ショッピングサイトにおいて、所定の商品名を検索したり、かかる商品を購入したりする履歴と、検索サイトにおいて、かかる商品名を検索した履歴等とが関連するものと判定する。この場合、判定部133は、利用履歴記憶部123に格納されているアカウントごとの利用履歴ファイルL01〜03等の一致性、及び利用しているサービスの関連性などを比較することにより、ユーザ同士の利用履歴の類似性を判定する。なお、判定部133は、同一サービスを利用するユーザ同士の類似性を判定してもよい。例えば、判定部133は、同一のショッピングサイトを利用して複数の商品を購入している履歴や、高額商品を複数購入していることなど、ユーザ同士における購買傾向の類似性を判定する。また、判定部133は、ユーザの行動履歴を含めて類似性を判定してもよい。例えば、判定部133は、様々なウェブサイト間を遷移し、最終的に同一ショッピングサイトで購買に至るまでの利用履歴が存在する場合に、かかる利用履歴に対応するユーザ同士の類似性を判定する。このように、より具体的な態様を比較対象とすることにより、判定部133は、ユーザ同士のサービスの利用履歴に関する類似性を高い精度で判定できる。なお、上記のように、判定部133は、ユーザが出店者側である場合に起こりうる利用履歴と、利用者側である場合に起こりうる利用履歴との双方を判定するので、ユーザがどちらの立場であるかを関わらず、類似性を判定することができる。
【0096】
〔2−3.名寄せ処理手順〕
次に、
図9を用いて、第2の実施形態に係る名寄せ装置200による名寄せ処理の手順について説明する。
図9は、第2の実施形態に係る名寄せ装置200による名寄せ処理手順を示すフローチャートである。
【0097】
図9に示すように、名寄せ装置200は、ユーザ端末10からアクセスを受け付けたか否かを判定する(ステップS201)。そして、名寄せ装置200は、アクセスを受け付けていない場合には(ステップS201;No)、受け付けるまで待機する。
【0098】
一方、名寄せ装置200は、アクセスを受け付けた場合に(ステップS201;Yes)、ユーザ端末10に対応するブラウザ情報を取得する(ステップS202)。そして、名寄せ装置200は、各種サービスにおいて、ユーザ端末10に対応する利用履歴についても取得する(ステップS203)。続いて、名寄せ装置200は、ブラウザ情報の類似度を判定する(ステップS204)。
【0099】
そして、名寄せ装置200は、判定された類似度が所定の閾値より高いか否かを判定する(ステップS205)。名寄せ装置200は、類似度が所定の閾値よりも高い場合には(ステップS205;Yes)、ブラウザ情報に対応するユーザ同士を同一ユーザとして名寄せする(ステップS206)。
【0100】
一方、名寄せ装置200は、ブラウザ情報の類似度が所定の閾値よりも高くない場合には(ステップS205;No)、ブラウザ情報の類似度が所定の範囲内であるか否かを判定する(ステップS207)。類似度が所定の範囲内である場合には(ステップS207;Yes)、名寄せ装置200は、さらに、ユーザに対応する利用履歴の類似性があるか否かを判定する(ステップS208)。
【0101】
ユーザの利用履歴に類似性があると判定される場合には(ステップS208;Yes)、ブラウザ情報及び利用履歴に対応するユーザ同士を同一ユーザとして名寄せする(ステップS206)。一方、ユーザの利用履歴に類似性がないと判定される場合(ステップS208;No)、及び、類似度が所定の範囲内でない場合には(ステップS207;No)、名寄せ装置200は、比較対象とされたユーザ同士を同一ユーザとして名寄せしない(ステップS209)。
【0102】
〔2−4.効果〕
上述してきたように、第2の実施形態に係る取得部132は、ユーザ端末10に利用されるサービスに関する利用履歴を取得する。また、第2の実施形態に係る判定部133は、取得部132によって取得された利用履歴と、当該利用履歴に対応するユーザ端末10のブラウザ情報同士の類似度とに基づいて、当該ブラウザ情報に対応するユーザ同士の類似度を判定する。
【0103】
このように、第2の実施形態に係る名寄せ装置200は、ブラウザ情報に加えて、サービスにおける利用履歴を用いて、異なるアカウントのユーザ同士を同一のユーザとして名寄せする。これにより、名寄せ装置200は、ブラウザ情報のみからではユーザの同一性が判定し難い場合であっても、複数のアカウントを利用するユーザを精度良く特定することができる。
【0104】
〔3.変形例〕
上述した各実施形態は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、他の実施形態について説明する。
【0105】
〔3−1.アカウント〕
上記実施形態では、ユーザがアカウントを用いてサービスを利用する例を示した。ここで、ユーザによっては、アカウントを登録せずに名寄せ装置100等(名寄せ装置100又は名寄せ装置200)によって提供されるサービスを利用し、任意の時点で名寄せ装置100にアカウント登録する場合もある。この場合、名寄せ装置100等は、同一のユーザに対応するブラウザ情報に基づいて、上述した名寄せ処理を行うことができる。
【0106】
〔3−2.ウェブページ〕
また、上述した各実施形態では、名寄せ装置100等が提供するサービスの一例として所定のウェブサイトを例に示したが、名寄せ装置100等は、ユーザ端末10にインストールされるアプリケーションや、ユーザ端末10に記憶される電子書籍や動画等のサービスを提供してもよい。そして、名寄せ装置100等は、ユーザ端末10に提供したアプリケーションや電子書籍や動画等がダウンロードされる際や、使用される際に送信されるブラウザ情報、及びユーザの利用履歴等に基づいて、ユーザの名寄せ処理を行ってもよい。
【0107】
〔3−3.利用履歴の例〕
また、上述した各実施形態では、名寄せ装置100は、ユーザの利用履歴として、ショッピングサイトへの出店や、商品の購入履歴などを取得する例を示した。しかし、名寄せ装置100は、ユーザの利用履歴として、さらに異なる情報を取得してもよい。例えば、名寄せ装置100は、ユーザ端末10が所定の行動を起こした場合(例えば、特定のサービスにアクセスした場合)に記録されるタイムスタンプと、タイムスタンプに記録された時刻におけるユーザ端末10の位置情報を取得する。これにより、名寄せ装置100は、サービスの利用履歴として、ユーザの行動パターンに関する情報を取得することができる。そして、名寄せ装置100は、取得されたユーザの行動パターンから抽出される情報と、かかる行動パターンに対応するユーザ端末のブラウザ情報同士の類似度とに基づいて、ブラウザ情報に対応するユーザ同士の類似度を判定する。このように、名寄せ装置100は、ユーザの行動パターンや癖などのユーザが意識することのない行動履歴を用いてユーザ同士の類似度を判定できるので、より判定精度を向上させることができる。
【0108】
〔3−4.装置構成〕
また、上述した各実施形態では、名寄せ装置100等が各種サービスを提供する例を示した。しかし、ユーザを名寄せする処理を行う装置と、各種サービスを提供する装置とは、異なる装置であってもよい。この点について、
図10を用いて説明する。
図10は、第2の実施形態に係る名寄せシステム1の構成例を示す図である。
【0109】
図10に示す名寄せ装置200の制御部130は、提供部131を有さずに、取得部132及び判定部133を有するものとする。また、
図10に示した名寄せ装置200には、ネットワークNを介して、サービス提供装置20
1及び20
2が接続される。サービス提供装置20
1及び20
2は、ネットワークNを介して、各種サービスを提供するためのサーバ装置である。例えば、サービス提供装置20
1及び20
2は、ユーザ端末10からアクセスを受け付ける名寄せ装置200によって管理され、名寄せ装置200がユーザ端末10からアクセスを受け付けた場合に、ユーザ端末10に対して各種サービスを提供する。例えば、サービス提供装置20
1は、ショッピングモールサービスを提供する提供部を有し、サービス提供装置20
2は、オークションサービスを提供する提供部を有する。そして、サービス提供装置20
1及び20
2は、ユーザがサービスを利用した際の利用履歴等の情報を名寄せ装置200に送信する。このように、
図10に示した名寄せ装置200は、ユーザ端末10と通信を行うフロントエンドサーバとしての役割を担う。すなわち、上述してきた名寄せ処理は、サービス提供装置20
1及び20
2を管理するフロントエンドサーバである名寄せ装置200によって実行される。
【0110】
また、
図10に示した名寄せ装置200は、記憶部120を有しなくてもよい。具体的には、
図10に示した名寄せ装置200は、記憶部120を保持する外部のデータベースサーバと接続されてもよい。また、
図10に示した名寄せ装置200は、名寄せ装置100にも適用することができる。
【0111】
〔4.その他〕
また、上述した各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0112】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、
図2に示した判定部133と名寄せ部134とは統合されてもよい。
【0113】
また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0114】
〔5.ハードウェア構成〕
また、上述してきた実施形態に係る名寄せ装置100は、例えば
図11に示すような構成のコンピュータ1000によって実現される。
図11は、名寄せ装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0115】
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0116】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を記憶する。通信インターフェイス1500は、通信網500(実施形態のネットワークNに対応する)を介して他の機器からデータを受信してCPU1100へ送り、また、通信網500を介してCPU1100が生成したデータを他の機器へ送信する。
【0117】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、入出力インターフェイス1600を介して生成したデータを出力装置へ出力する。
【0118】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0119】
例えば、コンピュータ1000が名寄せ装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、HDD1400には、記憶部120内の各データが格納される。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から通信網500を介してこれらのプログラムを取得してもよい。
【0120】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0121】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。