(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-09-07
(45)【発行日】2023-09-15
(54)【発明の名称】情報処理システム、情報処理方法及びプログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20230908BHJP
【FI】
G06Q50/10
(21)【出願番号】P 2022573525
(86)(22)【出願日】2021-12-23
(86)【国際出願番号】 JP2021047950
【審査請求日】2022-11-29
【早期審査対象出願】
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】平手 勇宇
(72)【発明者】
【氏名】コンダパカ マノゥチ
(72)【発明者】
【氏名】アブロール サティアン
【審査官】池田 聡史
(56)【参考文献】
【文献】特開2010-165097(JP,A)
【文献】特開2017-126215(JP,A)
【文献】特開2018-106502(JP,A)
【文献】国際公開第2021/199101(WO,A1)
【文献】国際公開第2021/200503(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
それぞれ同居する複数のユーザを含む第1の世帯および第2の世帯を示す世帯情報を取得する世帯特定手段と、
前記第1の世帯に属する第1のユーザの属性、前記第2の世帯に属する第2のユーザの属性、および、前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報に基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定する世帯関係推定手段と、
を含
み、
前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報は、特定の日に関するギフトの有無、特定の日付におけるメッセージの送受信の有無、互いのギフトの頻度、共通の友人の数、のうち少なくとも一部を含み、
前記世帯関係推定手段は、前記第1の世帯と前記第2の世帯との関係性の種類が、前記第1の世帯に含まれる第1のユーザと前記第2の世帯に含まれる第2のユーザとが親子関係であることを示す種類と、前記第1のユーザと前記第2のユーザとがきょうだい関係であることを示す種類と、前記第1のユーザと前記第2のユーザとが隣人であることを示す種類とを含む複数の候補種類のうちいずれであるかを推定する、
情報処理システム。
【請求項2】
請求項1に記載の情報処理システムにおいて、
前記世帯特定手段は、ユーザデータベースに格納される複数のユーザの名字および住所に基づいて、前記複数のユーザからそれぞれ同居する複数のユーザを含む第1の世帯および第2の世帯を取得する、
情報処理システム。
【請求項3】
請求項1または2に記載の情報処理システムにおいて、
前記世帯関係推定手段は、前記第1の世帯に含まれる第1のユーザと前記第2の世帯に含まれる第2のユーザとの関係性の種類に関する複数のパラメータ、および、前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報に基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定する、
情報処理システム。
【請求項4】
請求項3に記載の情報処理システムにおいて、
前記複数のパラメータは、特定の日に関するギフトの有無、互いのギフトの頻度のうち少なくとも一部を含む、
情報処理システム。
【請求項5】
世帯特定手段が、それぞれ同居する複数のユーザを含む第1の世帯および第2の世帯を取得するステップと、
世帯関係推定手段が、前記第1の世帯に属する第1のユーザの属性、前記第2の世帯に属する第2のユーザの属性、および、前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報に基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定するステップと、
を含
み、
前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報は、特定の日に関するギフトの有無、特定の日付におけるメッセージの送受信の有無、互いのギフトの頻度、共通の友人の数、のうち少なくとも一部を含み、
前記世帯関係推定手段は、前記第1の世帯と前記第2の世帯との関係性の種類が、前記第1の世帯に含まれる第1のユーザと前記第2の世帯に含まれる第2のユーザとが親子関係であることを示す種類と、前記第1のユーザと前記第2のユーザとがきょうだい関係であることを示す種類と、前記第1のユーザと前記第2のユーザとが隣人であることを示す種類とを含む複数の候補種類のうちいずれであるかを推定する、
情報処理方法。
【請求項6】
それぞれ同居する複数のユーザを含む第1の世帯および第2の世帯を示す世帯情報を取得する世帯特定手段、および、
前記第1の世帯に属する第1のユーザの属性、前記第2の世帯に属する第2のユーザの属性、および、前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報に基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定する世帯関係推定手段、
としてコンピュータを機能させ
、
前記第1の世帯に属し前記第1のユーザと異なるユーザと、前記第2の世帯に属し前記第2のユーザと異なるユーザとのやりとりを示す情報は、特定の日に関するギフトの有無、特定の日付におけるメッセージの送受信の有無、互いのギフトの頻度、共通の友人の数、のうち少なくとも一部を含み、
前記世帯関係推定手段は、前記第1の世帯と前記第2の世帯との関係性の種類が、前記第1の世帯に含まれる第1のユーザと前記第2の世帯に含まれる第2のユーザとが親子関係であることを示す種類と、前記第1のユーザと前記第2のユーザとがきょうだい関係であることを示す種類と、前記第1のユーザと前記第2のユーザとが隣人であることを示す種類とを含む複数の候補種類のうちいずれであるかを推定する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
何らかの方法で収集された情報から、各ユーザに配偶者や子どもがいるか推定する技術がある。
【0003】
特開2019-087212号公報には、金融取引サービスにおいて、取引情報に基づいてユーザの家族構成に関する情報を特定することが開示されている(第0048段落および第0099段落参照)。
【0004】
特開2021-144451号公報には、ユーザの収入額および支出額を特定し、それらとユーザの家族構成とに基づいて負債の補償の内容を決定する情報処理装置が開示されている(第0038段落参照)。
【発明の概要】
【発明が解決しようとする課題】
【0005】
これまでは単にユーザの属性として配偶者や子どもの有無を推定しているに過ぎず、そのユーザの属する世帯の状況、例えばそのユーザの属する世帯の詳細については十分に把握できていなかった。
【0006】
本発明は上記課題を鑑みてなされたものであって、その目的は、ユーザの属する世帯の状況をより詳細に把握することを可能にする技術を提供することにある。
【課題を解決するための手段】
【0007】
本発明にかかる情報処理システムは、それぞれ同居する1または複数のユーザを含む第1の世帯および第2の世帯を示す世帯情報を取得する世帯特定手段と、前記第1の世帯に属するユーザの属性と前記第2の世帯に属するユーザの属性とに基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定する世帯関係推定手段と、を含む。
【0008】
本発明にかかる情報処理方法は、それぞれ同居する1または複数のユーザを含む第1の世帯および第2の世帯を取得するステップと、前記第1の世帯に属するユーザの属性と前記第2の世帯に属するユーザの属性とに基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定するステップと、を含む。
【0009】
本発明にかかるプログラムは、それぞれ同居する1または複数のユーザを含む第1の世帯および第2の世帯を示す世帯情報を取得する世帯特定手段、および、前記第1の世帯に属するユーザの属性と前記第2の世帯に属するユーザの属性とに基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定する世帯関係推定手段、としてコンピュータを機能させる。
【0010】
本発明の一態様では、前記世帯特定手段は、ユーザデータベースに格納される複数のユーザの名字および住所に基づいて、前記複数のユーザからそれぞれ同居する1または複数のユーザを含む第1の世帯および第2の世帯を取得してよい。
【0011】
本発明の一態様では、前記世帯関係推定手段は、前記第1の世帯に含まれる第1のユーザと前記第2の世帯に含まれる第2のユーザとの関係性の種類に関する複数のパラメータに基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定してよい。
【0012】
本発明の一態様では、前記複数のパラメータは、名字の同一性、電話連絡の頻度、特定の日に関するギフトの有無、互いのギフトの頻度、年齢差、共通の友人、性が同じか否か、住所の類似性のうち少なくとも一部を含んでよい。
【0013】
本発明の一態様では、前記世帯関係推定手段は、前記第1の世帯に含まれる第1のユーザと、前記第2の世帯に含まれる第2のユーザとの関係性の種類が、親子、きょうだい、隣人の少なくとも一部のうちいずれであるか否かに応じた、前記第1の世帯と前記第2の世帯との関係性の種類を推定してよい。
【発明の効果】
【0014】
本発明によれば、ユーザの属する世帯の状況をより詳細に把握することができる。
【図面の簡単な説明】
【0015】
【
図1】本発明の一実施形態に係る情報処理システムの全体構成の一例を示す図である。
【
図2】本発明の一実施形態に係る情報処理システムの機能の一例を示す機能ブロック図である。
【
図3】IPアドレスデータの値が共通していることの一例を模式的に示す図である。
【
図5】住所データの値が共通していることの一例を模式的に示す図である。
【
図7】クレジットカード番号データの値が共通していることの一例を模式的に示す図である。
【
図12】本発明の一実施形態に係る情報処理システムで行われる、ソーシャルグラフの作成にかかる処理の一例を示すフロー図である。
【
図13】世帯内のユーザの家族関係の特定にかかわる処理の一例を示すフロー図である。
【
図14】存否特定部で用いる機械学習モデルの一例を説明する図である。
【
図15】家族特定部、年齢推定部、関係記録部の処理の一例を示すフロー図である。
【
図16】世帯内のユーザ等の関係を説明する図である。
【
図17】世帯メンバテーブルに格納される情報の一例を示す図である。
【
図18】ユーザ関係テーブルに格納される情報の一例を示す図である。
【
図19】メンバ属性テーブルに格納される情報の一例を示す図である。
【
図20】世帯間の関係の推定にかかる処理の一例を示すフロー図である。
【
図22】ユーザ関係特定部の機能的な構成の一例を示す機能ブロック図である。
【発明を実施するための形態】
【0016】
以下、本発明の一実施形態について図面に基づき詳細に説明する。この実施形態では、ユーザに関する情報から、それぞれ1または複数のユーザを含む複数の世帯を特定し、その特定された世帯に関するより詳細な情報を推定する情報処理システム1について説明する。
【0017】
図1は、本発明の一実施形態に係る情報処理システム1の全体構成の一例を示す図である。
図1に示すように、本実施形態に係る情報処理システム1は、例えば、サーバコンピュータやパーソナルコンピュータなどのコンピュータであり、プロセッサ10、記憶部12、通信部14、操作部16、及び、出力部18を含む。なお、本実施形態に係る情報処理システム1に、複数台のコンピュータが含まれていてもよい。
【0018】
プロセッサ10は、例えば、情報処理システム1にインストールされるプログラムに従って動作するマイクロプロセッサ等のプログラム制御デバイスである。情報処理システム1は、1または複数のプロセッサ10を含んでよい。記憶部12は、例えばROMやRAM等の記憶素子や、ハードディスクドライブ(HDD)、フラッシュメモリを含むソリッドステートドライブ(SSD)などである。記憶部12には、プロセッサ10によって実行されるプログラムなどが記憶される。通信部14は、例えばネットワークインタフェースカードのような、有線通信又は無線通信用の通信インタフェースであり、インターネット等のコンピュータネットワークを介して、他のコンピュータや端末との間でデータを授受する。
【0019】
操作部16は、入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイスやキーボード等を含む。操作部16は、操作内容をプロセッサ10に伝達する。出力部18は、例えば、液晶表示部又は有機EL表示部等のディスプレイや、スピーカ等の音声出力デバイス等の出力デバイスである。
【0020】
なお、記憶部12に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して他のコンピュータから供給されるようにしてもよい。また、情報処理システム1のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、情報処理システム1に、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器とデータの入出力をするための入出力部(例えば、USBポート)が含まれていてもよい。例えば、情報記憶媒体に記憶されたプログラムやデータが読取部や入出力部を介して情報処理システム1に供給されるようにしてもよい。
【0021】
本実施形態に係る情報処理システム1は、複数のユーザを含む世帯を特定する。情報処理システム1は、世帯内の状況をより詳細に取得する処理と、世帯間の関係を特定する処理とを実行する。前者の処理として、情報処理システム1は、ユーザ間の関係性の種類を特定し、ユーザに関する情報からそのユーザが配偶者、子どもなどを含むか否か推定し、世帯内にその推定された配偶者、子どもなどに対応するユーザが居るかチェックし、いない場合には新たなユーザを登録する。前者の処理のために、情報処理システム1はその処理の対象となるユーザ(以下では注目人物とも記載する)と、そのユーザと関係を有するユーザ(以下では参照人物とも記載する)との関係性の種類を利用する。
【0022】
以下、本実施形態に係る情報処理システム1の機能、及び、情報処理システム1で実行される処理についてさらに説明する。
【0023】
図2は、本実施形態に係る情報処理システム1で実装される機能の一例を示す機能ブロック図である。なお、本実施形態に係る情報処理システム1に、
図2に示す機能のすべてが実装される必要はなく、また、
図2に示す機能以外の機能が実装されていても構わない。
【0024】
図2に示すように、本実施形態に係る情報処理システム1は、機能的に、ユーザ関係特定部30、存否特定部32、世帯特定部33、家族特定部34、年齢推定部35、関係記録部36、世帯関係推定部38を含む。
【0025】
ユーザ関係特定部30は、主にプロセッサ10、記憶部12および通信部14により実装される。存否特定部32、世帯特定部33、家族特定部34、年齢推定部35、関係記録部36、世帯関係推定部38は、主にプロセッサ10及び記憶部12により実装される。
【0026】
以上の機能は、コンピュータである情報処理システム1にインストールされた、以上の機能に対応する実行命令を含むプログラムをプロセッサ10で実行することにより実装されてよい。また、このプログラムは、例えば、光学的ディスク、磁気ディスク、フラッシュメモリ等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介して情報処理システム1に供給されてもよい。
【0027】
ユーザ関係特定部30は、主に、ユーザのペアにおけるユーザ間の関係性の種類を示す関係情報を特定する。ユーザ関係特定部30は、ペアに含まれるユーザと関連付けられた、名字、IPアドレス、住所、年齢差、および性別のうちの少なくとも1つに基づいて、関係情報を出力してよい。なお、ユーザ関係特定部30は、情報処理システム1の外で作成された関係情報を取得してもよい。ここで、ユーザ関係特定部30は、関係特定部とも呼称され得る。
【0028】
存否特定部32は、対象ユーザと関連付けて格納される情報であって他のユーザと関連付けずに格納される情報に基づいて、対象ユーザの配偶者、子ども、または、親の存否を示す存否情報を取得する。また存否特定部32は、機械学習モデルに対象ユーザに関する入力パラメータの値を入力した際の出力に基づいて、対象ユーザの配偶者、対象ユーザの子ども、または、対象ユーザの親の存否を推定し、推定結果を示す存否情報を取得する。入力パラメータはユーザに関するあらかじめ定められた情報の項目であり、その機械学習モデルはその入力パラメータの値を含む学習データにより学習されてよい。
【0029】
世帯特定部33は、それぞれ同居する1または複数のユーザを含む1または複数の世帯を示す世帯情報を取得する。ここで、この1または複数の世帯の少なくとも1つは、対象ユーザおよび1または複数の家族ユーザを含んでよい。世帯特定部33は、ユーザデータベースに登録された複数のユーザから、対象ユーザを含む世帯に含まれその対象ユーザと同居する1または複数の家族ユーザを特定してよい。
【0030】
家族特定部34は、関係情報に基づいて、世帯情報が示す世帯に含まれる家族ユーザから、配偶者、子ども、および親のうち存否情報が存在を示す家族ユーザを特定する。
【0031】
年齢推定部35は、対象ユーザに関する情報に基づいて、対象ユーザにおいて存在が推定された配偶者、子ども、または親のうち、対応する家族ユーザが特定されなかった配偶者、子ども、または、親の年齢を推定する。なお、さらに、年齢推定部35は、存在が推定された配偶者、子ども、または、親に対応するユーザが特定され、かつ、そのユーザの年齢が登録されていない場合に、そのユーザを年齢推定の対象としてもよい。このとき、年齢推定部35は、推定された年齢をその対応するユーザに係る情報として記憶させてもよいし、推定された年齢はその他の処理に利用されてもよい。
【0032】
関係記録部36は、対象ユーザの、存在が推定された配偶者、子ども、および/または親のうち、対応する家族ユーザが特定されなかった配偶者、子ども、または、親を、世帯に属する新たな関連ユーザとして、関連ユーザと対象ユーザとの関係性の種類を示す関係情報に関連付けて記憶部12に記憶させる。
【0033】
世帯関係推定部38は、第1の世帯に属するユーザの属性と第2世帯に属するユーザの属性とに基づいて、第1の世帯と、第2の世帯との関係性の種類を推定する。ここで、第1の世帯および第2の世帯は、世帯特定部33により特定される1または複数の世帯に含まれる。世帯関係推定部38は、第1の世帯に含まれる第1のユーザと、第2の世帯に含まれる第2のユーザとの関係性の種類が、親子、きょうだい(Sibling)、隣人の少なくとも一部のうちいずれであるか否かに応じた、第1の世帯と第2の世帯との関係性の種類を推定してよい。
【0034】
ユーザ関係特定部30の詳細について説明する。
図22は、ユーザ関係特定部30の機能的な構成の一例を示す機能ブロック図である。ユーザ関係特定部30は、人物属性データ取得部20、グラフデータ生成部22、参照人物特定部24、関係性特定部26、を含む。
【0035】
人物属性データ取得部20は、複数のコンピュータシステムと通信し、人物の属性を示す人物属性データを取得する。ここで、本実施形態に係る情報処理システム1は、例えば、電子商取引システム40、ゴルフ場予約システム42、旅行予約システム44、カード管理システム46、などといった各種コンピュータシステムと通信可能になっている(
図3、
図5、及び、
図7参照)。これらのコンピュータシステムのそれぞれには、当該コンピュータシステムを利用するユーザに関する情報であるアカウントデータが登録されている。そして、情報処理システム1は、これらのコンピュータシステムにアクセスして、当該コンピュータシステムに登録されているアカウントデータを取得できるようになっている。なお、本実施の形態における各種コンピュータシステムは、例として、ペイメント管理システム、ネットバンキング管理システム、金融商品管理システム、保険商品管理システム、モバイルサービス管理システムなどを含んでもよく、インターネットを介して商品または役務を提供し得る分野であれば、その種別に制限はない。
【0036】
アカウントデータには、例えば、ユーザID、氏名データ、住所データ、年齢データ、性別データ、電話番号データ、携帯電話番号データ、クレジットカード番号データ、IPアドレスデータ、などが含まれる。
【0037】
ユーザIDは、例えば、当該コンピュータシステムにおける当該ユーザの識別情報である。氏名データは、例えば、当該ユーザの氏名(姓(名字)及び名)を示すデータである。住所データは、例えば、当該ユーザの住所を示すデータである。当該コンピュータシステムが電子商取引システム40である場合に、住所データが、当該ユーザが購入した商品の送付先の住所を示していてもよい。年齢データは、例えば、当該ユーザの年齢を示すデータである。性別データは、例えば、当該ユーザの性別を示すデータである。電話番号データは、例えば、当該ユーザの電話番号を示すデータである。携帯電話番号データは、例えば、当該ユーザの携帯電話番号を示すデータである。クレジットカード番号データは、例えば、当該ユーザが当該コンピュータシステムでの決済において利用するクレジットカードのカード番号を示すデータである。IPアドレスデータは、例えば、当該ユーザが使用するコンピュータのIPアドレス(例えば、送信元のIPアドレス)を示すデータである。
【0038】
人物属性データ取得部20は、本実施形態では例えば、注目人物を含む複数の人物についての、当該人物の属性を示す人物属性データを取得する。ここで人物属性データの一例としては、上述のアカウントデータが挙げられる。人物属性データ取得部20は、例えば、上述の複数のシステムのそれぞれから、当該人物のアカウントデータを取得する。
【0039】
グラフデータ生成部22は、本実施形態では例えば、複数の人物のそれぞれの属性に基づいて、互いに関係がある人物のペアを特定する。グラフデータ生成部22は、複数の人物の人物属性データに基づいて、互いに関係がある人物のペアを特定してもよい。なお、本実施形態に係るグラフデータ生成部22は、複数の人物のそれぞれの属性に基づいて、互いに関係がある人物のペアを特定するペア特定手段の一例に相当する。
【0040】
グラフデータ生成部22は、例えば、注目人物を含む複数の人物にそれぞれ対応付けられるノードデータ50と、互いに関係がある人物のペアに対応付けられるリンクデータ52と、を含むグラフデータを生成する(
図4、
図6、
図8、及び、
図9参照)。またグラフデータ生成部22は、生成されたグラフデータを記憶部12に格納する。
【0041】
例えば、
図3に示すように、電子商取引システム40に、ユーザAのアカウントデータが登録されていることとする。また、ゴルフ場予約システム42に、ユーザBのアカウントデータが登録されていることとする。また、旅行予約システム44に、ユーザCのアカウントデータが登録されていることとする。
【0042】
そして、電子商取引システム40に登録されているユーザAのIPアドレスデータの値、ゴルフ場予約システム42に登録されているユーザBのIPアドレスデータの値、及び、旅行予約システム44に登録されているユーザCのIPアドレスデータの値が同じであるとする。
【0043】
この場合、グラフデータ生成部22は、
図4に示すように、ユーザAに対応付けられるノードデータ50a、ユーザBに対応付けられるノードデータ50b、ユーザCに対応付けられるノードデータ50c、ユーザAがユーザBと関係があることを示すリンクデータ52a、ユーザAがユーザCと関係があることを示すリンクデータ52b、ユーザBがユーザCと関係があることを示すリンクデータ52c、を含むグラフデータを生成する。
【0044】
IPアドレスが同じであるユーザは同じコンピュータを利用しているものと推察される。そのため、本実施形態ではこのようなユーザは互いに関連付けられるようになっている。
【0045】
また、例えば、
図5に示すように、電子商取引システム40に、ユーザD、ユーザE、及び、ユーザFのアカウントデータが登録されていることとする。
【0046】
そして、電子商取引システム40に登録されているユーザDの住所データの値、ユーザEの住所データの値、及び、ユーザFの住所データの値が同じであるとする。
【0047】
この場合、グラフデータ生成部22は、
図6に示すように、ユーザDに対応付けられるノードデータ50d、ユーザEに対応付けられるノードデータ50e、ユーザFに対応付けられるノードデータ50f、ユーザDがユーザEと関係があることを示すリンクデータ52d、ユーザDがユーザFと関係があることを示すリンクデータ52e、ユーザEがユーザFと関係があることを示すリンクデータ52f、を含むグラフデータを生成する。
【0048】
住所が同じであるユーザは同居しているものと推察される。そのため、本実施形態ではこのようなユーザは互いに関連付けられるようになっている。
【0049】
また、例えば、
図7に示すように、電子商取引システム40に、ユーザGのアカウントデータが登録されていることとする。また、ゴルフ場予約システム42に、ユーザHのアカウントデータが登録されていることとする。また、旅行予約システム44に、ユーザIのアカウントデータが登録されていることとする。
【0050】
そして、電子商取引システム40に登録されているユーザGのクレジットカード番号データの値、ゴルフ場予約システム42に登録されているユーザHのクレジットカード番号データの値、及び、旅行予約システム44に登録されているユーザIのクレジットカード番号データの値が同じであるとする。
【0051】
この場合、グラフデータ生成部22は、
図8に示すように、ユーザGに対応付けられるノードデータ50g、ユーザHに対応付けられるノードデータ50h、ユーザIに対応付けられるノードデータ50i、ユーザGがユーザHと関係があることを示すリンクデータ52g、ユーザGがユーザIと関係があることを示すリンクデータ52h、ユーザHがユーザIと関係があることを示すリンクデータ52i、を含むグラフデータを生成する。
【0052】
クレジットカード番号が同じであるユーザは親子等の家族であるものと推察される。そのため、本実施形態ではこのようなユーザは互いに関連付けられるようになっている。
【0053】
なお、互いに関係がある人物のペアに該当するか否かの判断基準は、以上で説明したものには限定されない。
【0054】
また、以上で説明した、互いに関係があると特定された人物を関連付けるリンクデータ52が示すリンクを明示的リンクと呼ぶこととする。
【0055】
ここで例えば、第1の人物と明示的リンクで接続されている人物と、第2の人物と明示的リンクで接続されている人物と、が所定数以上(例えば、3人以上)共通しているとする。この場合、本実施形態では例えば、グラフデータ生成部22は、当該第1の人物が当該第2の人物と関係があることを示すリンクデータ52を生成する。このようにして生成されるリンクデータ52が示すリンクを黙示的リンクと呼ぶこととする。
【0056】
例えば、
図9に示すように、明示的リンクを示すリンクデータ52jによって、ユーザJに対応付けられるノードデータ50jとユーザKに対応付けられるノードデータ50kとが接続されていることとする。また、明示的リンクを示すリンクデータ52kによって、ユーザJに対応付けられるノードデータ50jとユーザLに対応付けられるノードデータ50lとが接続されていることとする。また、明示的リンクを示すリンクデータ52lによって、ユーザJに対応付けられるノードデータ50jとユーザMに対応付けられるノードデータ50mとが接続されていることとする。
【0057】
また、明示的リンクを示すリンクデータ52mによって、ユーザKに対応付けられるノードデータ50kとユーザNに対応付けられるノードデータ50nとが接続されていることとする。また、明示的リンクを示すリンクデータ52nによって、ユーザLに対応付けられるノードデータ50lとユーザNに対応付けられるノードデータ50nとが接続されていることとする。また、明示的リンクを示すリンクデータ52oによって、ユーザMに対応付けられるノードデータ50mとユーザNに対応付けられるノードデータ50nとが接続されていることとする。
【0058】
この場合、グラフデータ生成部22は、ユーザJがユーザNと関係があることを示すリンクデータ52p(黙示的リンクを示すリンクデータ52p)を生成する。このようにして、ユーザNが、ユーザJと関係がある人物として特定されることとなる。
【0059】
また、例えば、第1の人物と明示的リンク又は黙示的リンクで接続されている人物と、第2の人物と明示的リンク又は黙示的リンクで接続されている人物と、が所定数以上(例えば、3人以上)共通しているとする。この場合、グラフデータ生成部22が、当該第1の人物が当該第2の人物と関係があることを示すリンクデータ52(黙示的リンクを示すリンクデータ52)を生成してもよい。
【0060】
なお、グラフデータ生成部22は、アカウントデータとは異なる人物属性データに基づいて、グラフデータを生成してもよい。
【0061】
参照人物特定部24は、処理対象人物(例えば注目人物を含む)と関係がある人物である参照人物を特定する。ここで、参照人物特定部24は、処理対象人物と関係がある人物として特定される人物(例えば友人として電子商取引システム40等に登録される人物)、及び、関係がある人物として特定される人物(例えば登録された友人)が所定数以上、処理対象人物と共通する人物を、参照人物として特定してもよい。また、参照人物特定部24は、処理対象人物の属性と、複数の人物の属性と、に基づいて、当該複数の人物のうちから、参照人物を特定してもよい。
【0062】
参照人物特定部24は、例えば、処理対象人物に対応付けられるノードデータ50と、明示的リンク又は黙示的リンクを示すリンクデータ52によって接続されるノードデータ50に対応付けられる人物を、当該処理対象人物に対する参照人物として特定してもよい。
【0063】
関係性特定部26は、処理対象人物(例えば注目人物を含む)と参照人物との関係性を特定する。ここで、関係性特定部26が、処理対象人物のアカウントデータと、参照人物のアカウントデータと、に基づいて、処理対象人物と参照人物との関係性を特定してもよい。ここで、処理対象人物のアカウントデータが登録されているコンピュータシステムと参照人物のアカウントデータが登録されているコンピュータシステムとは異なっていてもよい。例えば、電子商取引システム40に登録されている、処理対象人物のアカウントデータと、ゴルフ場予約システム42に登録されている、参照人物のアカウントデータと、に基づいて、処理対象人物と参照人物との関係性(より具体的には関係性の種類)を特定してもよい。関係性特定部26は、特定された関係性の種類を、処理対象人物および参照人物のペアと関連付けて記憶部12に格納してよい。
【0064】
また、関係性特定部26は、処理対象人物と参照人物との家族としての関係(例えば親子、配偶者、きょうだい)を特定してよい。さらに、関係性特定部26は、特定される関係性の種類として、親子、配偶者、きょうだい、同僚、隣人、友人のうち少なくとも一部を含む候補のうちいずれかを選択してよい。
【0065】
次に関係性特定部26の処理についてより詳細に説明する。関係性特定部26は、例えば、リンクデータ52で接続されているノードデータ50のペアを特定する。そして、関係性特定部26は、当該ペアに対応付けられる2人の人物の人物属性データに基づいて、当該ペアに対応付けられるペア属性データを生成する。
【0066】
ペア属性データには、例えば、IP共通フラグ、住所共通フラグ、クレジットカード番号共通フラグ、名字同一フラグ、年齢差データ、ペア性別データ、などが含まれる。
【0067】
IP共通フラグは、例えば、当該ペアのうちの一方のアカウントデータに含まれるIPアドレスデータの値と他方のアカウントデータに含まれるIPアドレスデータの値とが同じであるか否かを示すフラグである。例えば、所与の日においてIPアドレスデータの値が同じである場合はIP共通フラグの値に1が設定され、IPアドレスデータの値が異なる場合はIP共通フラグの値に0が設定されてもよい。
【0068】
住所共通フラグは、例えば、当該ペアのうちの一方のアカウントデータに含まれる住所データの値と他方のアカウントデータに含まれる住所データの値とが同じであるか否かを示すフラグである。例えば、住所データの値が同じである場合は住所共通フラグの値に1が設定され、住所データの値が異なる場合は住所共通フラグの値に0が設定されてもよい。また住所共通フラグとして、住所どうしの類似性が用いられてもよい。例えば、住所共通フラグに、住所のうち町名および番地までも異なる場合には0、番地の後にある建物名および部屋番号が異なる場合には1、建物名および部屋番号が同じである場合は2が設定されてよい。
【0069】
クレジットカード番号共通フラグは、例えば、当該ペアのうちの一方のアカウントデータに含まれるクレジットカード番号データの値と他方のアカウントデータに含まれるクレジットカード番号データの値とが同じであるか否かを示すフラグである。例えば、クレジットカード番号データの値が同じである場合はクレジットカード番号共通フラグの値に1が設定され、クレジットカード番号データの値が異なる場合はクレジットカード番号共通フラグの値に0が設定されてもよい。
【0070】
名字同一フラグは、例えば、当該ペアのうちの一方のアカウントデータに含まれる氏名データが示す名字と他方のアカウントデータに含まれる氏名データが示す名字とが同じであるか否かを示すフラグである。例えば、氏名データが示す名字が同じである場合は名字同一フラグの値に1が設定され、氏名データが示す名字が異なる場合は名字同一フラグの値に0が設定されてもよい。
【0071】
年齢差データは、例えば、当該ペアのうちの一方のアカウントデータに含まれる年齢データの値と他方のアカウントデータに含まれる年齢データの値との差を示すデータである。
【0072】
ペア性別データは、例えば、当該ペアのうちの一方のアカウントデータに含まれる性別データの値と他方のアカウントデータに含まれる性別データの値との組合せを示すデータである。
【0073】
そして、関係性特定部26は、複数のペアのそれぞれに対応付けられるペア属性データの値に基づいて、一般的なクラスタリング手法を用いたクラスタリングを実行することで、当該複数のペアを、
図10に示すような複数のクラスタ54に分類する。
【0074】
図10は、複数のペアが、5つのクラスタ54(54a、54b、54c、54d、及び、54e)に分類された様子の一例を模式的に示す図である。
図10に示されているバツ印は、ペアに対応付けられる。そして、複数のバツ印のそれぞれは、当該バツ印に対応するペアのペア属性データの値に対応付けられる位置に配置されている。
【0075】
図10の例では、複数のペアが5つのクラスタ54に分類されているが、複数のペアが分類されるクラスタ54の数は5つには限定されず、例えば、複数のペアが4つのクラスタ54に分類されてもよい。
【0076】
図11は、複数のペアが4つのクラスタ54に分類された場合における、当該分類の可視化の一例を示す図である。
【0077】
図11に示すように、住所が同じであり、性別が同じであり、年齢差がX歳より大きく、名字が同じペアは、第1クラスタに分類されてもよい。また、住所が同じであり、性別が同じであり、年齢差がX歳以下であり、名字が同じペアは、第2クラスタに分類されてもよい。また、住所が同じであり、性別が異なり、年齢差がY歳より大きく、名字が同じペアは、第3クラスタに分類されてもよい。また、住所が同じであり、性別が異なり、年齢差がY歳以下であり、名字が同じペアは、第4クラスタに分類されてもよい。
【0078】
この場合、第1クラスタは、例えば同性の親子に対応付けられるクラスタ54であるものと推察される。また、第2クラスタは、例えば同性の兄弟に対応付けられるクラスタ54であるものと推察される。また、第3クラスタは、例えば異性の親子に対応付けられるクラスタ54であるものと推察される。また、第4クラスタは、例えば夫婦、または異性の兄弟に対応付けられるクラスタ54であるものと推察される。
【0079】
なお、処理対象人物と参照人物との関係性の種類を特定に、さらにペアのうちの一方と他方とにおける共通の友人の数を用いてもよい。
【0080】
以上で説明したようにして、関係性特定部26が、人物間の関係に対応付けられる値に基づくクラスタリングの結果に基づいて、処理対象人物と参照人物との関係性の種類を特定してもよい。また、関係性特定部26が、名字、IPアドレス、住所、クレジットカード番号、年齢差、又は、性別のうちの少なくとも1つに基づくクラスタリングの結果に基づいて、処理対象人物と参照人物との関係性の種類を特定してもよい。
【0081】
関係性特定部26は、処理対象人物と参照人物との間で行われる情報または物のやりとりの記録にさらに基づいて、処理対象人物と参照人物との関係性の種類を特定してもよい。情報または物のやりとりの記録は、例えば、父の日、母の日、またはクリスマスのような特定の日付におけるギフトの送付履歴や、その特定の日付におけるメッセージの送受信ログであってよい。
【0082】
ここで、本実施形態に係る情報処理システム1で行われる、ソーシャルグラフにかかる情報の作成についての処理の一例を、
図12に例示するフロー図を参照しながら説明する。
図12は、主に参照人物特定部24、関係性特定部26の処理について説明する。
【0083】
図12に記載される処理は、グラフデータが生成された人物のそれぞれについて繰り返し実行される。グラフデータが生成された人物は注目人物を含み、
図12の処理の対象となる人物を以下では処理対象人物と記載する。
図12の処理例では、注目人物を含む複数の人物についてのグラフデータが既に生成されており、複数のペアについて、当該ペアに対応付けられるクラスタ54が特定されていることとする。また、各クラスタ54に対応付けられる近さ機械学習モデルが既に学習済であることとする。
【0084】
まず、参照人物特定部24は、処理対象人物に対応するノードデータ50と明示的リンク又は黙示的リンクで接続されているノードデータ50に対応する人物を、参照人物として特定する(S101)。ここでは例えば、少なくとも1人の参照人物が特定されるとする。
【0085】
そして、関係性特定部26が、S101に示す処理で特定された参照人物のうちから、S104~S108に示す処理がまだ実行されていない参照人物を1人選択する(S103)。
【0086】
そして、関係性特定部26が、処理対象人物とS102に示す処理で選択された参照人物とのペアに対応するクラスタ54をそのペアの関係性の種類として特定する(S104)。
【0087】
関係性特定部26は処理対象人物と参照人物との関係性の種類を記憶部12に格納する(S108)。
【0088】
そして、関係性特定部26が、S101に示す処理で特定された参照人物のすべてについてS104,S108に示す処理が実行されたか否かを確認する(S110)。
【0089】
S101に示す処理で特定された参照人物のすべてについてS104,S108に示す処理が実行されていない場合は(S110:N)、S103に示す処理に戻る。
【0090】
S101に示す処理で特定された参照人物のすべてについてS104,S108に示す処理が実行された場合は(S110:Y)、
図12に示される処理は終了する。
【0091】
次に、世帯内の状況をより詳細に取得するための処理についてより詳細に説明する。
図13は、世帯内のユーザの家族関係の特定にかかわる処理の一例を示すフロー図である。
図13に示される処理は、存否特定部32、世帯特定部33、家族特定部34、年齢推定部35、関係記録部36において実行される。
【0092】
はじめに、世帯特定部33は、ユーザの住所及び名字に基づいて、同居する1または複数のユーザを含む世帯の世帯情報を取得する(S201)。より具体的には、世帯特定部33は、複数のコンピュータシステムのユーザデータベースに登録されている複数のユーザのアカウントデータを取得する。そして世帯特定部33は、アカウントデータに含まれる住所および名字が同じ複数のユーザを、世帯に含まれ同居するユーザとして選択し、その選択されたユーザを含む世帯の世帯情報を生成する。また世帯特定部33は、住所および名字が同じユーザが存在しないユーザからなる世帯の世帯情報を生成してよい。世帯に含まれ同居するユーザを選択する条件は、住所および名字が同じだけでなく、例えば、住所のうち建物名を除く部分が一致し類似性が高いことおよび名字が一致することであってもよい。世帯特定部33は、予め処理の対象として設定される対象ユーザ群に含まれるユーザを含む世帯について世帯情報を取得してもよいし、対象ユーザ群を設けず対象ユーザと関係なく複数の世帯について世帯情報を取得してもよい。なおユーザデータベースは、予め複数のコンピュータシステムから取得され記憶部12に格納されたものであってもよいし、別途生成され記憶部12に格納されるものであってもよい。
【0093】
世帯情報が取得されると、家族特定部34は、家族ユーザを特定する処理の対象となる1人の対象ユーザを選択する(S202)。この処理において、家族特定部34は、世帯特定部33の処理の対象となる対象ユーザ群に含まれるユーザから対象ユーザを選択してもよいし、家族特定部34は世帯特定部33により取得された複数の世帯に含まれる任意のユーザを選択してもよい。
【0094】
つぎに、存否特定部32は、対象ユーザと関連付けて格納される情報であって他のユーザと関連付けずに格納される情報に基づいて、対象ユーザの配偶者の存否を示す存否情報を取得する(S203)。ここで、存否特定部32は、機械学習モデルである配偶者存否推定モデルに対象ユーザに関する入力パラメータの値を入力した際の出力に基づいて、対象ユーザの配偶者の存否を推定し、その推定結果を示す存否情報を取得する。ここで入力パラメータはユーザに関するあらかじめ定められた情報の項目であり、配偶者存否推定モデルは、予め、その入力パラメータの値を含む学習データにより学習されてよい。配偶者存否推定モデルの詳細については後述する。
【0095】
そして、家族特定部34は配偶者の存否情報と世帯内のユーザとの対応を確認し、また、その対応に応じて、年齢推定部35は年齢を推定し、関係記録部36は関連ユーザの情報を登録する(S204)。S204の処理の詳細については後述する。
【0096】
S203と同様に、存否特定部32は、対象ユーザと関連付けて格納される情報であって他のユーザと関連付けずに格納される情報に基づいて、対象ユーザの子どもの存否を示す存否情報を取得する(S205)。存否特定部32は、予め学習された機械学習モデルである子存否推定モデルに対象ユーザに関する入力パラメータの値を入力した際の出力に基づいて、対象ユーザの子どもの存否、より具体的には子どもの人数を推定し、その推定結果を示す存否情報を取得する。
【0097】
S204と同様に、家族特定部34は子どもの存否情報と世帯内のユーザとの対応を確認し、また、その対応に応じて、年齢推定部35は年齢を推定し、関係記録部36は関連ユーザの情報を登録する(S206)。
【0098】
S203と同様に、存否特定部32は、対象ユーザと関連付けて格納される情報であって他のユーザと関連付けずに格納される情報に基づいて、対象ユーザの親の存否を示す存否情報を取得する(S207)。存否特定部32は、予め学習された機械学習モデルである親存否推定モデルに対象ユーザに関する入力パラメータの値を入力した際の出力に基づいて、対象ユーザの親の存否、より具体的には親の人数を推定し、その推定結果を示す存否情報を取得する。
【0099】
S204と同様に、家族特定部34は親の存否情報と世帯内のユーザとの対応を確認し、また、その対応に応じて、年齢推定部35は年齢を推定し、関係記録部36は関連ユーザの情報を登録する(S208)。
【0100】
そして、家族特定部34は、まだ選択されていないユーザが存在するか判定する(S210)。ユーザが存在する場合は(S210:Y)、S202の処理から繰り返す。ユーザが存在しない場合は(S210:N)、
図13の処理を終了する。
【0101】
次に存否特定部32に含まれる、配偶者存否推定モデルと、子存否推定モデルと、親存否推定モデルとについて説明する。配偶者存否推定モデル、子存否推定モデル、親存否推定モデルは構造を存否推定モデルと総称する。本実施の形態において、存否推定モデルに係る入力パラメータは、例として、各種コンピュータシステムに係る取引履歴などの利用履歴を含んでよく、対象ユーザに係る人物属性データの少なくとも一部を含んでよい。
図14は、存否特定部32で用いる機械学習モデルである存否推定モデルの一例を説明する図である。存否推定モデルは、弱教師あり学習により学習される。存否推定モデルは複数のラベル関数61a~61c(特に区別しない場合はラベル関数61と記載する)および生成モデル64を含む。ラベル関数61a~61cの出力62a~62c(特に区別しない場合は出力62と記載する)は生成モデル64に入力され、生成モデル64は存否の推定結果を示すラベル65を出力する。ここで、ラベル関数(ラベリング関数に相当)の数に特に制限はない。
図14に示される機械学習モデルは、例えばSnorkelという名称で提供される公知のものであってよい。存否推定モデルにおいて決定されるラベル65は、各ラベル関数61の出力であってもよいし、その出力が所定の手法で統計処理された統計情報に基づいて推定された情報であってもよいし、各ラベル関数61の出力に基づく統計情報に応じ多数決等のルールベースで決定された情報であってもよい。
【0102】
配偶者存否推定モデルに含まれる複数のラベル関数61のそれぞれは、ユーザに関する1または複数の入力パラメータに基づいて対象ユーザの配偶者が存在するか否かに関するスコアを出力する。子存否推定モデルに含まれる複数のラベル関数61のそれぞれは、ユーザに関する1または複数の入力パラメータに基づいて対象ユーザの子どもが存在するか否かに関するスコアを出力する。親存否推定モデルに含まれる複数のラベル関数61のそれぞれは、ユーザに関する1または複数の入力パラメータに基づいて対象ユーザの親が存在するか否かに関するスコアを出力する。なお、入力パラメータはユーザに関連付けられ、かつ他のユーザと関連付けられていない情報からなる。
【0103】
生成モデル64は、ラベル関数61のそれぞれの重みに応じて、出力62からラベル65のスコアを算出する。生成モデル64は、複数のラベル関数61の出力および学習により決定される複数の関数の重みに基づいて、対象ユーザの配偶者(子ども、親)の存否を推定し、推定結果を示す存否情報を決定する。
【0104】
ラベル関数61は、入力パラメータに対して仮のラベルとなる出力62を生成する関数であり、管理者等により決定されてよい。出力62の値は、例えば、negative(0),positive(1),skipの3つのうちいずれかであってよいし、何らかの値とskipであってもよい。ラベル関数61が生成する出力62の精度は必ずしも高くなくてよい。生成モデル64は、複数のラベル関数61の複数の出力62について算出されるラベルの確率に基づいて、損失が最小になるように学習される。学習においては、例えばラベル関数61の出力62ごとの重みが決定されてよい。また、この機械学習モデルは正解としてのラベルが存在しなくても学習することができる。
【0105】
配偶者存否推定モデルにおいて、例えば以下に示すラベル関数61が設けられてよい。ラベル関数61の1つは、旅行予約システム44に、ユーザによる大人2人の旅行予約の履歴が存在する場合にpositiveを出力し、存在しない場合にnegativeを出力してよい。ラベル関数61の他の1つは、電子商取引システム40の会員情報に、ユーザの子どもに関する情報が登録されている場合にpositiveを出力し、登録されていない場合にnegativeを出力してよい。ラベル関数61の他の1つは、カード管理システム46の登録情報に、既婚かつ子どもありまたは既婚と登録されている場合にpositiveを出力し、登録されていない場合にnegativeを出力してよい。
【0106】
子存否推定モデルにおいて、例えば以下に示すラベル関数61が設けられてよい。ラベル関数61の1つは、旅行予約システム44に存在する履歴において、最も予約の頻度の多い子どもの人数を出力してよい。ラベル関数61の他の1つは、電子商取引システム40の会員情報に登録される、ユーザの子どもの人数を出力してよい。ラベル関数61の他の1つは、カード管理システム46の登録情報に格納される子どもの人数を出力してよい。なお、子どもの人数として、「0」,「1」,「2」,「3以上」のうちいずれかが出力されてよい。
【0107】
親存否推定モデルにおいて、例えば以下に示すラベル関数61が設けられてよい。ラベル関数61の1つは、コンピュータシステムに登録される連絡先において、ユーザと同じ住所を有する者の人数を出力してよい。ラベル関数61の他の1つは、カード管理システム46の登録情報に格納される親の人数を出力してよい。なお、親の人数として、「0」,「1」,「2」のうちいずれかが出力されてよい。
【0108】
次にステップS204の処理についてさらに詳細に説明する。
図15は家族特定部34、年齢推定部35、関係記録部36の処理の一例を示すフロー図であり、特に配偶者の存否に関する処理の一例を示すフロー図である。なお、年齢推定部35に含まれる配偶者年齢推定モデル、子年齢推定モデル、親年齢推定モデルなどの年齢推定モデルは、存否推定モデルと同様の構成、例えばSnorkelという名称で提供される公知のものであってよい。年齢推定モデルは、各入力パラメータが与えられたラベル関数(ラベリング関数に相当)の出力を利用し年齢推定を行うモデルであってよい。
【0109】
はじめに家族特定部34は、存否特定部32により対象ユーザに配偶者が存在すると推定された否かを判定する(S301)。配偶者が存在しないと推定された場合には(S301:N)、
図15の処理を終了する。一方、配偶者が存在すると推定された場合には(S301:Y)、家族特定部34は、世帯情報が示すユーザであって、対象ユーザが属する世帯の家族のユーザから、配偶者に対応するユーザを検索する(S302)。より具体的には、家族特定部34は、世帯情報が示すユーザであって、対象ユーザと同一の世帯に含まれるユーザ(家族のユーザ)から、対象ユーザとの関係性の種類が配偶者であるユーザを探す。ここで、対象ユーザと家族のユーザとの関係性の種類は、予めユーザ関係特定部30により特定されていてよい。そして家族特定部34は、対応するユーザが存在するか判定する(S303)。
【0110】
対応するユーザが存在しない場合には(S303:N)、年齢推定部35は、存否特定部32により存在が推定され対応するユーザが存在しない配偶者の年齢を推定する(S304)。
【0111】
年齢推定部35は、機械学習モデルである配偶者年齢推定モデルにユーザに関する入力パラメータを入力することにより存在が推定された配偶者の年齢を推定する。配偶者年齢推定モデルには、例として、対象ユーザの年齢および性別、電子商取引システム40の購入および閲覧履歴などの各種コンピュータシステムの利用履歴を含む入力データが入力され、配偶者年齢推定モデルは配偶者の推定された年齢を出力してよい。なお、配偶者年齢推定モデルは、ユーザ関係特定部30により互いに配偶者であると推定されたユーザのうち一方の年齢および性別、電子商取引システム40の購入および閲覧履歴などの各種コンピュータシステムの利用履歴を含む入力データと、他方の年齢の階層を正解データとする学習データにより学習されてよい。年齢の階層は、例えば各階層が5歳の範囲を含むように設定されてよい。
【0112】
年齢が推定されると、関係記録部36は、存否特定部32により存在が推定される配偶者の情報(年齢を含む)を、新たな関連ユーザの情報として登録する(S305)。なお、存否特定部32において存在すると推定された配偶者に対応するユーザが既に存在する場合には(S303のY)、関係記録部36はそのユーザに関する情報を記憶部12に格納する(S306)。なお、S305において既存のユーザデータベースに情報を追加する場合には、S306は実行されなくてもよい。
【0113】
S206の処理は、
図15に示される処理に類似し、配偶者の代わりに子どもが対象になる。以下では処理上の大きな相違点について説明する。S301において、家族特定部34は、存否特定部32により対象ユーザに子どもが存在すると推定された否かを判定する。子どもが存在すると推定された場合には(S301:Y)、家族特定部34は、世帯情報が示すユーザであって、対象ユーザが属する世帯の家族のユーザから、(推定された人数の)子どもに対応するユーザを検索する。対応しないユーザが存在する場合には(S303:N)、年齢推定部35は、存否特定部32により存在が推定され対応するユーザが存在しない子どもの年齢を推定する(S304)。
【0114】
年齢推定部35は、機械学習モデルである子年齢推定モデルにユーザに関する入力パラメータを入力することにより存在が推定された子どもの年齢を推定する。子年齢推定モデルは、
図14に示されるような弱教師ありの機械学習モデルであってよい。子年齢推定モデルに含まれるラベル関数61の1つは、例えば電子商取引システム40の会員情報に含まれる子どもに情報に基づいて、年齢の階層を出力してよい。他の1つのラベル関数は、旅行予約システム44に存在する宿泊予約に存在する子どもの食事、寝具の情報に基づいて年齢の階層を出力してよい。他の1つのラベル関数は、電子商取引システム40の購入履歴に含まれる商品の種類に基づいて年齢の階層を出力してよい。ここで、ラベル65は、年齢の推定された子どもの年齢の階層を示す情報であってよい。なお、子年齢推定モデルは、ユーザ関係特定部30により親子であると推定されたユーザのうち親の年齢および性別、電子商取引システム40の購入および閲覧履歴などの各種コンピュータシステムの利用履歴を含む入力データと、子どもの年齢の階層を正解データとする学習データにより学習されてもよい。
【0115】
年齢が推定されると、関係記録部36は、存否特定部32により存在が推定される子どもの情報(年齢を含む)を、新たな関連ユーザの情報として登録する(S305)。
【0116】
S208の処理は、
図15に示される処理に類似し、配偶者の代わりに親が対象になる。以下では処理上の大きな相違点について説明する。S301において、家族特定部34は、存否特定部32により対象ユーザに親が存在すると推定された否かを判定する。親が存在すると推定された場合には(S301:Y)、家族特定部34は、世帯情報が示すユーザであって、対象ユーザが属する世帯の家族のユーザから、(推定された人数の)親に対応するユーザを検索する。対応しないユーザが存在する場合には(S303:N)、年齢推定部35は、存否特定部32により存在が推定され対応するユーザが存在しない親の年齢を推定する(S304)。
【0117】
年齢推定部35は、機械学習モデルである親年齢推定モデルにユーザに関する入力パラメータを入力することにより存在が推定された親の年齢を推定する。親年齢推定モデルは、
図14に示されるような弱教師ありの機械学習モデルであってよい。親年齢推定モデルに含まれるラベル関数61の1つは、対象ユーザの年齢に基づいて親の年齢の階層を出力してよい。ラベル関数61の他の1つは、電子商取引システム40の購入履歴に含まれる商品の種類に基づいて年齢の階層を出力してよい。ここで、ラベル65は、年齢の推定された親の年齢の階層を示す情報であってよい。なお、親年齢推定モデルは、ユーザ関係特定部30により親子であると推定されたユーザのうち子どものユーザの年齢および性別、電子商取引システム40の購入および閲覧履歴などの各種コンピュータシステムの利用履歴を含む入力データと、親の年齢の階層を正解データとする学習データにより学習されてもよい。
【0118】
年齢が推定されると、関係記録部36は、存否特定部32により存在が推定される親の情報(年齢を含む)を、新たな関連ユーザの情報として登録する(S305)。
【0119】
これまでに説明された処理により、世帯に含まれる複数のユーザ間の関係が明確になるだけでなく、世帯内に存在する人物であるがユーザ登録されていない人物を検出することが可能になる。
【0120】
図16は、世帯内のユーザ等の関係を説明する図である。この例では、破線の矩形で囲まれた範囲が世帯を示し、その世帯がユーザ70a,70b、関連ユーザ70eを含むことが図示されている。ユーザ70a,70bの楕円中に記載された文字列はユーザIDを示し、関連ユーザ70eの楕円中に記載された文字列は関係記録部36が関連ユーザを記録する際に付与されたユーザIDを示す。また横線のみで接続されるユーザ(または関連ユーザ)は互いに配偶者であることを示し、その横線から下に延びる縦線に接続されるユーザ(または関連ユーザ)は子どもを示す。
【0121】
さらに関係記録部36により出力されるデータの構造について説明する。
図17は世帯メンバテーブルに格納される情報の一例を示す図である。
図18はユーザ関係テーブルに格納される情報の一例を示す図である。
図19はメンバ属性テーブルに格納される情報の一例を示す図である。世帯メンバテーブル、ユーザ関係テーブル、メンバ属性テーブルは記憶部12に格納されてよい。また記憶部12の代わりに、他の会員管理システム内のデータベースに格納されてもよい。
【0122】
世帯メンバテーブルには、世帯ごとに、世帯を識別するための世帯IDと、その世帯に属する1または複数のユーザのユーザIDとが格納される。またユーザIDとして、関係記録部36により登録される関連ユーザのユーザID(
図17の例ではsocial_456)も登録される。
【0123】
ユーザ関係テーブルには、ユーザのペアごとに、そのペアに蔵するユーザのユーザID1,ユーザID2と、そのペアにおける関係性の種類とが格納される。ユーザのペアは、ユーザ関係特定部30により特定されたペアであってもよいし、対象ユーザと関連ユーザとのペア(
図18ではユーザID1:social_456とユーザID2:123とのペア)であってもよい。
【0124】
メンバ属性テーブルには、ユーザまたは関連ユーザごとに、そのユーザの属性が格納されている。ユーザの属性は、会員であるか否かのフラグ、性別、年齢を含む。関連ユーザの場合、会員であるか否かのフラグがFalseとなる。また関連ユーザの場合、年齢として、年齢推定部35により推定された年齢の階層が格納される。
【0125】
このように関連ユーザの存在を推定し、その情報を出力することで、既存のアカウントデータとして存在するユーザだけでなく、既存のユーザから推定される世帯内の関連ユーザについても管理を可能にしている。またこの情報処理システム1、電子商取引システム40を含むコンピュータシステムのそれぞれは、各世帯におけるユーザおよび関連ユーザの情報に基づいて、商品やサービスなどをレコメンドしてよい。
【0126】
以下では、世帯間の関係を特定するための処理についてより詳細に説明する。
図20は、世帯間の関係の推定にかかる処理の一例を示すフロー図である。
図20に示される処理は、世帯関係推定部38において実行される。
図20に示される処理は、世帯特定部33の処理、言い換えると
図13のS201の処理が実行された後に実行される。
図20に示される処理は、世帯特定部33により特定された複数の世帯のそれぞれのペアについて繰り返し行われてもよいし、複数の世帯のペアについて一度に実行されてもよい。
【0127】
はじめに世帯関係推定部38は、関係の推定の対象となる、第1の世帯および第2の世帯のペアを選択する(S251)。
【0128】
そして、世帯関係推定部38は、第1の世帯に属する第1のユーザおよび第2の世帯の属する第2のユーザについて、それらの関係性の種類に関するパラメータを取得する(S252)。このパラメータは、第1のユーザの属性および第2のユーザの属性に基づく情報、および第1のユーザと第2のユーザとのやりとりに基づく情報、のうち少なくとも一部を含んでよい。第1のユーザの属性および第2のユーザの属性に基づく情報は、例えば、名字の同一性、年齢差、性が同じか否か、住所の類似性(例えば市区町村および町丁字名が同じか否か)を含む。第1のユーザと第2のユーザとのやりとりに基づく情報は、例えば、特定の日(父の日、母の日、クリスマス)に関するギフトの有無、特定の日付におけるメッセージの送受信の有無、互いのギフトの頻度、共通の友人の数、を含む。関係性の種類に関するパラメータは、上記の情報から予め選択された情報であってよい。
【0129】
世帯関係推定部38は、その関係性の種類に関するパラメータに基づいて、第1の世帯と第2の世帯のペアの関係性の種類を推定する(S254)。世帯関係推定部38は、推定される関係性の種類として、親子、きょうだい、友人、同僚、隣人の少なくとも一部を含む候補からいずれかを選択してよい。
【0130】
世帯関係推定部38は、関係性特定部26と同様の手法を用いて世帯の関係を推定してよい。より具体的には、世帯関係推定部38は、複数の世帯のペアのそれぞれについて取得されるパラメータの値に基づいて、一般的なクラスタリング手法を用いたクラスタリングを実行することで、当該複数の世帯のペアを、例えば
図10に示すような複数のクラスタ54に分類してよい。そして、世帯関係推定部38は、第1の世帯および第2の世帯が属するクラスタ54に対応する関係性の種類を、第1の世帯および第2の世帯の間の関係性の種類として選択してよい。
【0131】
ここで、世帯関係推定部38の関係性の種類に用いるパラメータは、第1の世帯に属する1つの第1のユーザと第2の世帯の属する1つの第2のユーザとに関する情報だけでなく、第1の世帯に属する他の第1のユーザや第2の世帯に属する他の第2のユーザに関する情報も含んでよい。パラメータが、第1のユーザのうち1つと第2のユーザのうち1つとの属性に基づく情報(例えば年齢差)と、他の第1のユーザから他の第2のユーザへのやり取りに関する情報(例えば特定の日のギフトの送付の有無)との組み合わせを含んでよい。
【0132】
また、世帯関係推定部38は、機械学習モデルである世帯関係推定モデルを用いて第1の世帯と第2の世帯の関係性の種類を推定してもよい。世帯関係推定モデルは、世帯のペアについて取得されるパラメータの値を含む入力データと、正解となる関係性の種類を示す正解データとを含む学習データによって学習されてよい。
【0133】
世帯関係推定部38は、ユーザ関係特定部30により特定されたユーザのペアにおける関係性の種類に基づいて世帯間の関係を推定してよい。例えば、ユーザ関係特定部30により、第1の世帯に含まれる第1のユーザと、第2の世帯に含まれる第2のユーザとが親子関係があると特定された場合に、世帯関係推定部38は、世帯間の関係性の種類として親子関係を推定してよい。
【0134】
これまでに説明した処理により世帯間の関係を把握することが可能になる。
図21は、世帯間の関係の一例を説明する図である。
図21の例では、世帯2はユーザ70cと関連ユーザ70fとを含み、世帯3はユーザ70gと関連ユーザ70hを含む。
【0135】
図21の例では、世帯2と世帯1との関係性の種類として親子が推定され、世帯1と世帯3との関係性の種類としてきょうだいがス一定される。この関係は世帯2に属するユーザ70cと世帯1に属するユーザ70aとの関係性の種類が親子であることと対応している。一方、世帯関係推定部38では、その処理の方法によっては、直接の親子関係のないユーザ70bとユーザ70cと間でのギフトの送付などを考慮して世帯間の関係性の種類を推定することも可能である。
【0136】
なお、本実施の形態における各種コンピュータシステムの利用履歴は、例えば、電子商取引システム42において対象ユーザにより行われた購入および閲覧に係る履歴であってよく、ゴルフ場予約システム44において対象ユーザにより予約されたゴルフ場の種別や地理的位置であってよく、旅行予約システム46において対象ユーザによる予約された宿泊先や部屋の種別や地理的位置であってよく、カード管理システム50における対象ユーザの限度額等を含む契約内容や購入履歴であってよく、ペイメント管理システムにおいて対象ユーザによる決済がなされた店舗等の地理的位置や購入履歴であってよく、ネットバンキング管理システムにおける対象ユーザの預金残高や入出金先を示す履歴であってよく、金融商品管理システムにおいて対象ユーザが購入または契約した金融商品の種別であってよく、保険商品管理システムにおいて対象ユーザが購入または契約した保険商品の種別であってよく、モバイルサービス管理システムにおいて取得され得る対象ユーザの位置情報や通話先やメッセージ送信先等を含む履歴であってよい。利用履歴は、対象ユーザによる各種コンピュータシステムの利用にかかる履歴であればその態様に制限はない。
【0137】
なお、本発明は上述の実施形態に限定されるものではなく、様々な変形が行われてよい。また、特許請求の範囲の記載は、本発明の要旨および範囲内にあるようなすべての変更を網羅することが意図されている。また、上記の具体的な文字列や数値及び図面中の具体的な文字列や数値は例示であり、これらの文字列や数値には限定されない。
【要約】
ユーザの属する世帯の状況をより詳細に把握する。
情報処理システム(1)に含まれる世帯特定手段(33)は、それぞれ同居する1または複数のユーザを含む第1の世帯および第2の世帯を示す世帯情報を取得し、前記情報処理システム1に含まれる世帯関係推定手段(38)は、前記第1の世帯に属するユーザの属性と前記第2世帯に属するユーザの属性とに基づいて、前記第1の世帯と、前記第2の世帯との関係性の種類を推定する。