(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-04-30
(45)【発行日】2024-05-10
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理システム
(51)【国際特許分類】
G06Q 10/06 20230101AFI20240501BHJP
【FI】
G06Q10/06
(21)【出願番号】P 2023208371
(22)【出願日】2023-12-11
【審査請求日】2023-12-11
【早期審査対象出願】
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】110004222
【氏名又は名称】弁理士法人創光国際特許事務所
(72)【発明者】
【氏名】黒川 茂莉
(72)【発明者】
【氏名】山口 求
(72)【発明者】
【氏名】披田野 清良
【審査官】牧 裕子
(56)【参考文献】
【文献】特開2020-191017(JP,A)
【文献】特開2021-012603(JP,A)
【文献】特開2022-178643(JP,A)
【文献】特開2023-084805(JP,A)
【文献】特開2021-111219(JP,A)
【文献】特開2021-033531(JP,A)
【文献】特開2020-115311(JP,A)
【文献】特開2022-178650(JP,A)
【文献】特開2020-035068(JP,A)
【文献】特開2022-051367(JP,A)
【文献】米国特許第08175908(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
第1事業者が使用する第1装置から、前記第1事業者に対応する第1データと第2事業者に対応する第2データとを識別するためのデータ識別情報であって、前記第1データと前記第2データとを関連付けるためのデータ識別情報と、前記第1データとを受信するとともに、前記第2事業者が使用する第2装置から、前記データ識別情報と前記第2データとを受信する受信部と、
前記受信部が受信した前記データ識別情報に基づいて、前記受信部が受信した前記第1データと前記第2データとを関連付けたデータである統合データを生成し、生成した前記統合データの入力に対して、当該統合データが出力するように設定された損失関数によりパラメータが設定されたデータ生成モデルであって、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有
し、前記第1データ、又は
前記第2データのいずれか一方の入力を受け付けた場合に、前記第1データ又は前記第2データのうち、入力されなかったデータである未入力データに対応する前記潜在変数が取り得る値を生成することにより、入力された前記第1データ又は前記第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力する
前記データ生成モデルを生成する生成部と、
前記生成部が生成した前記データ生成モデルを、前記第1事業者が使用する第1装置及び前記第2事業者が使用する第2装置の少なくともいずれかに送信する送信部と、
を有し、
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、前記疑似統合データを受信し、
前記受信部が受信した前記疑似統合データの入力に対して、前記疑似統合データが出力されるように前記パラメータを更新することにより、前記データ生成モデルを更新する更新部をさらに有し、
前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する、
情報処理装置。
【請求項2】
前記受信部は、前
記第1装置及び前
記第2装置の少なくともいずれかから、所定の確率でノイズが付与された前記第1データ又は前記第2データを受信する、
請求項
1に記載の情報処理装置。
【請求項3】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、前記損失関数により前記パラメータが更新されたデータ生成モデルである更新後モデルを受信
し、
前記更新部は、前記更新後モデルに含まれる前記パラメータに基づいて、前記生成部により生成されたデータ生成モデルに設けられている前記パラメータを更新することにより、前記データ生成モデルを更新
し、
前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する、
請求項
1に記載の情報処理装置。
【請求項4】
前記パラメータには、前記第2データに基づいて更新されず、前記第1データに基づいて更新される第1固有パラメータと、前記第1データに基づいて更新されず、前記第2データに基づいて更新される第2固有パラメータとが含まれており、
前記生成部は、前記第1データが入力された場合には、前記第1固有パラメータを更新可能であるとともに、前記第2データが入力された場合には、前記第2固有パラメータを更新可能な
前記データ生成モデルを生成す
る、
請求項
1に記載の情報処理装置。
【請求項5】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、所定の確率でノイズが付与された前記疑似統合データを受信する、
請求項
1に記載の情報処理装置。
【請求項6】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、前記疑似統合データを生成する過程で前記データ生成モデルが生成する、前記パラメータを更新するための中間データを受信
し、
前記更新部は、前記受信部が受信した前記中間データに基づいて、前記パラメータを更新
し、
前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する、
請求項
1に記載の情報処理装置。
【請求項7】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、所定の確率でノイズが付与された前記中間データを受信する、
請求項
6に記載の情報処理装置。
【請求項8】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、第1の疑似統合データと、前記第1の疑似統合データを出力する過程で得られる前記潜在変数とを受信
し、
前記送信部は、前記受信部が受信した前記潜在変数を前記第1装置及び前記第2装置のうち、前記潜在変数の受信元とは異なる他方の装置に送信
し、
前記受信部は、前記他方の装置から、前記送信部が送信した前記潜在変数を用いて前記データ生成モデルから出力された第2の疑似統合データを受信し、
前記更新部は、前記受信部が受信した前記第1の疑似統合データと前記第2の疑似統合データとの比較結果に基づいて、前記生成部が生成した前記データ生成モデルから前記第1の疑似統合データが出力されるように当該データ生成モデルの前記パラメータを更新することにより、当該データ生成モデルを更新
し、
前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する、
請求項
1に記載の情報処理装置。
【請求項9】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、前記データ生成モデルの利用状況を示す利用状況情報を受信
し、
前記受信部が受信した前記利用状況情報に基づいて、前記データ生成モデルを利用した事業者に対して課金を行う課金
部を有する、
請求項1に記載の情報処理装置。
【請求項10】
コンピュータが実行する、
第1事業者が使用する
第1装置から、前記第1事業者に対応する第1データと第2事業者に対応する第2データとを識別するためのデータ識別情報であって、前記第1データと前記第2データとを関連付けるためのデータ識別情報と、前記第1データとを受信するとともに、前記第2事業者が使用する第2装置から、前記データ識別情報と前記第2データとを受信するステップと、
受信した前記データ識別情報に基づいて、受信した前記第1データと前記第2データとを関連付けたデータである統合データを生成するステップと、
生成した前記統合データの入力に対して、当該統合データが出力されるように設定された損失関数によりパラメータが設定されたデータ生成モデルであって、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有し、
前記第1データ、又は
前記第2データのいずれか一方の入力を受け付けた場合に、前記第1データ又は前記第2データのうち、入力されなかったデータである未入力データに対応する前記潜在変数が取り得る値を生成することにより、入力された前記第1データ又は前記第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力する
前記データ生成モデルを生成するステップと、
生成した前記データ生成モデルを、前記第1事業者が使用する第1装置及び前記第2事業者が使用する第2装置の少なくともいずれかに送信するステップと、
前記第1装置及び前記第2装置の少なくともいずれかから、前記疑似統合データを受信するステップと、
受信した前記疑似統合データの入力に対して、前記疑似統合データが出力されるように前記パラメータを更新することにより、前記データ生成モデルを更新するステップと、
更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信するステップと、
を有する情報処理方法。
【請求項11】
第1事業者が使用する第1装置と、第2事業者が使用する第2装置と、前記第1装置及び第2装置と通信可能に接続された情報処理装置とを有する情報処理システムであって、
前記情報処理装置は、
前記
第1装置から、前記第1事業者に対応する第1データと前記
第2事業者に対応する第2データとを識別するためのデータ識別情報であって、前記第1データと前記第2データとを関連付けるためのデータ識別情報と、前記第1データとを受信するとともに、前記第2装置から、前記データ識別情報と前記第2データとを受信する第1受信部と、
前記第1受信部が受信した前記データ識別情報に基づいて、前記第1受信部が受信した前記第1データと前記第2データとを関連付けたデータである統合データを生成し、生成した前記統合データの入力に対して、当該統合データが出力するように設定された損失関数によりパラメータが設定されたデータ生成モデルであって、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有
し、前記第1データ、又は
前記第2データのいずれか一方の入力を受け付けた場合に、前記第1データ又は前記第2データのうち、入力されなかったデータである未入力データに対応する前記潜在変数が取り得る値を生成することにより、入力された前記第1データ又は前記第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力する
前記データ生成モデルを生成する生成部と、
前記生成部が生成した前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する
第1送信部と、
を有し、
前記第1装置及び前記第2装置の少なくともいずれかは、
前記データ生成モデルを受信する
第2受信部と、
前記データ生成モデルに前記統合データとして前記第1データ及び前記第2データの少なくともいずれかを入力し、前記データ生成モデルから出力される前記疑似統合データを取得する取得部と、
前記取得部が取得した前記疑似統合データを前記情報処理装置に送信する第2送信部と、
を有
し、
前記第1受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、前記疑似統合データを受信し、
前記情報処理装置は、前記第1受信部が受信した前記疑似統合データの入力に対して、前記疑似統合データが出力されるように前記パラメータを更新することにより、前記データ生成モデルを更新する更新部をさらに有し、
前記第1送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理システムに関する。
【背景技術】
【0002】
従来、複数の事業者からユーザに関する情報であるユーザ情報を収集し、データ分析を行うことが実施されている。例えば、特許文献1には、複数のユーザ情報を結合するための結合キーに基づいて、複数の事業者それぞれに対応するユーザの個人情報に関するデータを結合するシステムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
事業者がデータの結合用としてシステムに提供可能なデータは、事業者が有しているデータのうち一部のレコードであることがある。この場合、事業者は、システム側に提供したデータに対応する結合後のデータをシステムから提供を受けることができる。これに対し、事業者側において、システム側に提供しなかった個人情報に関するデータに対し、どのような内容のデータが結合されるのかを予測したい場合がある。
【0005】
そこで、本発明はこれらの点に鑑みてなされたものであり、データの結合用として提供しなかったデータに対し、どのような内容のデータが結合されるのかを予測可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の態様に係る情報処理装置は、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有するデータ生成モデルであって、第1事業者から取得した第1データ、又は第2事業者から取得した第2データのいずれか一方の入力を受け付けた場合に、前記第1データ又は前記第2データのうち、入力されなかったデータである未入力データに対応する前記潜在変数が取り得る値を生成することにより、入力された前記第1データ又は前記第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力するデータ生成モデルを生成する生成部と、前記生成部が生成した前記データ生成モデルを、前記第1事業者が使用する第1装置及び前記第2事業者が使用する第2装置の少なくともいずれかに送信する送信部と、を有する。
【0007】
前記生成部は、前記第1データと前記第2データとを関連付けたデータである統合データの入力に対し、前記統合データを出力するように設定された前記データ生成モデルであって、前記統合データとして前記第1データ及び前記第2データの少なくともいずれかが入力されたことに応じて、当該入力された統合データが出力されるように設定された損失関数によりパラメータを更新可能な前記データ生成モデルを生成してもよい。
【0008】
前記情報処理装置は、前記第1事業者から、前記第1データ及び前記第2データを識別するためのデータ識別情報であって、前記第1データと前記第2データとを関連付けるためのデータ識別情報と、前記第1データとを受信するとともに、前記第2事業者から、前記データ識別情報と前記第2データとを受信する受信部を有し、前記生成部は、前記データ識別情報に基づいて前記第1データと前記第2データとを関連付けたデータである統合データを生成し、生成した前記統合データの入力に対して、当該統合データが出力するように設定された前記損失関数により前記パラメータが設定される前記データ生成モデルを生成してもよい。
【0009】
前記受信部は、前記第1事業者が使用する第1装置及び前記第2事業者が使用する第2装置の少なくともいずれかから、所定の確率でノイズが付与された前記第1データ又は前記第2データを受信してもよい。
【0010】
前記情報処理装置は、前記第1装置及び前記第2装置の少なくともいずれかから、前記損失関数により前記パラメータが更新されたデータ生成モデルである更新後モデルを受信する受信部と、前記更新後モデルに含まれる前記パラメータに基づいて、前記生成部により生成されたデータ生成モデルに設けられている前記パラメータを更新することにより、前記データ生成モデルを更新する更新部と、を有し、前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信してもよい。
【0011】
前記パラメータには、前記第2データに基づいて更新されず、前記第1データに基づいて更新される第1固有パラメータと、前記第1データに基づいて更新されず、前記第2データに基づいて更新される第2固有パラメータとが含まれており、前記情報処理装置は、前記第1データが入力された場合には、前記第1固有パラメータを更新可能であるとともに、前記第2データが入力された場合には、前記第2固有パラメータを更新可能なデータ生成モデルを生成する生成部を有してもよい。
【0012】
前記情報処理装置は、前記第1装置及び前記第2装置の少なくともいずれかから、前記疑似統合データを受信する受信部と、前記受信部が受信した前記疑似統合データの入力に対して、前記疑似統合データが出力されるように前記パラメータを更新することにより、前記データ生成モデルを更新する更新部と、を有し、前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信してもよい。
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、所定の確率でノイズが付与された前記疑似統合データを受信してもよい。
【0013】
前記情報処理装置は、前記第1装置及び前記第2装置の少なくともいずれかから、前記疑似統合データを生成する過程で前記データ生成モデルが生成する、前記パラメータを更新するための中間データを受信する受信部と、前記受信部が受信した前記中間データに基づいて、前記パラメータを更新する更新部と、を有し、前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信してもよい。
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、所定の確率でノイズが付与された前記中間データを受信してもよい。
【0014】
前記受信部は、前記第1装置及び前記第2装置の少なくともいずれかから、第1の疑似統合データと、前記第1の疑似統合データを出力する過程で得られる前記潜在変数とを受信する受信部と、前記受信部が受信した前記潜在変数を前記第1装置及び前記第2装置のうち、前記潜在変数の受信元とは異なる他方の装置に送信する送信部と、を有し、前記受信部は、前記他方の装置から、前記送信部が送信した前記潜在変数を用いて前記データ生成モデルから出力された第2の疑似統合データを受信し、前記情報処理装置は、前記受信部が受信した前記第1の疑似統合データと前記第2の疑似統合データとの比較結果に基づいて、前記生成部が生成した前記データ生成モデルから前記第1の疑似統合データが出力されるように当該データ生成モデルの前記パラメータを更新することにより、当該データ生成モデルを更新する更新部を有し、前記送信部は、前記更新部により更新された前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信してもよい。
【0015】
前記情報処理装置は、前記第1装置及び前記第2装置の少なくともいずれかから、前記データ生成モデルの利用状況を示す利用状況情報を受信する受信部と、前記受信部が受信した前記利用状況情報に基づいて、前記データ生成モデルを利用した事業者に対して課金を行う課金部と、を有してもよい。
【0016】
本発明の第2の態様に係る情報処理方法は、コンピュータが実行する、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有するデータ生成モデルであって、第1事業者から取得した第1データ、又は第2事業者から取得した第2データのいずれか一方の入力を受け付けた場合に、前記第1データ又は前記第2データのうち、入力されなかったデータである未入力データに対応する前記潜在変数が取り得る値を生成することにより、入力された前記第1データ又は前記第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力するデータ生成モデルを生成するステップと、生成した前記データ生成モデルを、前記第1事業者が使用する第1装置及び前記第2事業者が使用する第2装置の少なくともいずれかに送信するステップと、を有する。
【0017】
本発明の第3の態様に係る情報処理システムは、第1事業者が使用する第1装置と、第2事業者が使用する第2装置と、前記第1装置及び第2装置と通信可能に接続された情報処理装置とを有する情報処理システムであって、前記情報処理装置は、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有するデータ生成モデルであって、前記第1装置から取得した第1データ、又は第2装置から取得した第2データのいずれか一方の入力を受け付けた場合に、前記第1データ又は前記第2データのうち、入力されなかったデータである未入力データに対応する前記潜在変数が取り得る値を生成することにより、入力された前記第1データ又は前記第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力するデータ生成モデルを生成する生成部と、前記生成部が生成した前記データ生成モデルを、前記第1装置及び前記第2装置の少なくともいずれかに送信する送信部と、を有し、前記第1装置及び前記第2装置の少なくともいずれかは、前記データ生成モデルを受信する受信部と、前記データ生成モデルに前記統合データとして前記第1データ及び前記第2データの少なくともいずれかを入力し、前記データ生成モデルから出力される前記疑似統合データを取得する取得部と、を有する。
【発明の効果】
【0018】
本発明によれば、データの結合用として提供しなかったデータに対し、どのような内容のデータが結合されるのかを予測可能とすることができるという効果を奏する。
【図面の簡単な説明】
【0019】
【
図1】情報処理システムの概要を説明する図である。
【
図3】データ生成モデルを説明するための図である。
【
図4】情報処理装置がデータ生成モデルを生成し、更新するまでの処理の流れを示すシーケンス図である。
【発明を実施するための形態】
【0020】
[情報処理システムSの概要]
図1は、情報処理システムSの概要を説明する図である。情報処理システムSは、情報処理装置1と、第1データを管理する第1装置2と、第2データを管理する第2装置3とを有し、第1データ及び第2データを統合した統合データを出力するデータ生成モデルを生成するシステムである。
【0021】
情報処理装置1は、例えばデータを集約し、集約後のデータを提供するサービスを提供する集約事業者により使用されているコンピュータである。情報処理装置1は、第1装置2及び第2装置3等の外部装置と、インターネットや携帯電話回線等の通信ネットワーク(不図示)を介して通信可能に接続されている。
【0022】
第1装置2は、例えば第1の事業者が使用するコンピュータである。第1装置2は、データを識別するためのデータ識別情報としてのデータID(Identification)と、第1データとを関連付けた複数の第1レコードを管理している。第1データは、例えば、第1の事業者が提供するサービスを利用するユーザから第1の事業者が収集したユーザに関する情報である。
【0023】
第2装置3は、例えば第2の事業者が使用するコンピュータである。第2装置3は、第1データに関連付けられているデータIDと共通のデータIDと、第2データとを関連付けた複数の第2レコードを管理している。第2データは、例えば、第2の事業者が提供するサービスを利用するユーザから第2の事業者が収集したユーザに関する情報である。
【0024】
情報処理装置1は、第1装置2から、複数の第1レコードを取得するとともに、第2装置3から、複数の第2レコードを取得する。情報処理装置1は、データIDに基づいて、取得した第1レコードに含まれる第1データと、第2レコードに含まれる第2データとを統合した統合データを生成する。情報処理装置1は、統合データの入力に対し、統合データを出力するデータ生成モデルを生成する。データ生成モデルは、例えば、統合データとして第1データ及び第2データの少なくともいずれかが入力されたことに応じて、当該入力された統合データが出力されるように設定された損失関数によりパラメータを更新可能なモデルである。
【0025】
また、データ生成モデルは、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有するデータ生成モデルであって、統合データを構成する第1データと第2データとのうち、いずれかのデータの入力を受け付けた場合に、第1データと第2データとのうち入力されなかったデータである未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力可能なモデルである。
【0026】
情報処理装置1は、生成したデータ生成モデルを、第1装置2及び第2装置3に送信する。これにより、第1装置2及び第2装置3において、第1データと第2データとのうちいずれかのデータのみをデータ生成モデルに入力して、データ生成モデルから、未入力データが補完された疑似統合データを取得することができる。これにより、第1装置2及び第2装置3において、データの結合用として提供しなかったデータに対し、どのような内容のデータが結合されるのかを予測することができる。
【0027】
[情報処理装置1の機能構成]
続いて、情報処理装置1の機能構成について説明する。
図2は、情報処理装置1の機能構成を示す図である。
【0028】
図2に示すように、情報処理装置1は、通信部11と、記憶部12と、制御部13とを有する。
通信部11は、第1装置2及び第2装置3等と通信ネットワークを介してデータを送受信するための通信インターフェースである。
【0029】
記憶部12は、各種のデータを記憶する記憶媒体であり、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク、SSD(Solid State Drive)、及びフラッシュメモリ等を有する。記憶部12は、制御部13が実行するプログラムを記憶する。記憶部12は、制御部13を、受信部131、生成部132、送信部133、更新部134及び課金部135として機能させるプログラムを記憶する。
【0030】
制御部13は、例えばCPU(Central Processing Unit)である。制御部13は、記憶部12に記憶されたプログラムを実行することにより、受信部131、生成部132、送信部133、更新部134及び課金部135として機能する。
【0031】
[データ生成モデルの説明]
以下、制御部13が有する機能について説明するにあたり、情報処理装置1が生成するデータ生成モデルについて説明する。
図3は、データ生成モデルを説明するための図である。
【0032】
データ生成モデルは、入力層、複数層からなる中間層、出力層を有し、統合データの入力に対し、入力された統合データが出力されるように設定されたニューラルネットワークを実装したアプリケーションプログラムである。データ生成モデルは、層を構成し、入力されたデータに基づいて潜在変数の値を算出し、算出した潜在変数の値を出力する複数のノードを有している。複数のノードそれぞれは、一以上の他のノードに接続される。データ生成モデルには、ノードと、他のノードとの接続関係の強さ(重み)を示すパラメータが設けられている。
【0033】
データ生成モデルは、
図3の(A)~(C)に示すように、入力データとして、第1データ及び第2データの少なくともいずれかが入力されたことに応じて、当該入力データと同じデータが出力データとして出力されるように設定される。
【0034】
また、データ生成モデルは、統合データとして第1データ及び第2データの少なくともいずれかが入力されたことに応じて、当該入力された統合データが出力されるように設定された損失関数により、パラメータを更新することができる。例えば、データ生成モデルは、入力データに対する出力データの差を示す損失関数の値が0になるように、パラメータを更新することができる。
【0035】
データ生成モデルにおけるパラメータには、第2データに基づいて更新されず、第1データに基づいて更新される第1固有パラメータと、第1データに基づいて更新されず、第2データに基づいて更新される第2固有パラメータと、第1データ及び第2データに基づいて更新される共通パラメータとが含まれている。
【0036】
例えば、データ生成モデルに第1データが入力され、第2データが入力されなかった場合には、共通パラメータと第1固有パラメータとが更新される。また、データ生成モデルに第2データが入力され、第1データが入力されなかった場合には、共通パラメータと第2固有パラメータとが更新される。また、データ生成モデルに、第1データと第2データ、すなわち統合データが入力された場合には、共通パラメータと、第1固有パラメータと、第2固有パラメータとが更新される。
【0037】
また、データ生成モデルは、上述したように、複数の潜在変数を有している。潜在変数は、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる内部変数である。データ生成モデルは、
図3(D)、(E)に示すように、第1データ又は第2データのいずれか一方が入力された場合に、第1データ又は第2データのうち、入力されなかったデータである未入力データに対応する潜在変数の値を自動的に生成することができる。例えば、データ生成モデルは、潜在変数が取り得る値を予め特定しておき、当該取り得る値に基づいて、未入力データに対応する潜在変数の値を生成する。これにより、データ生成モデルは、入力された第1データ又は第2データと、未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力することができる。
【0038】
例えば、データ生成モデルは、疑似統合データを出力させるか否かを示す設定用パラメータの入力を受け付け、入力された設定用パラメータの値が疑似統合データを出力させることを示す場合には、第1データ又は第2データのいずれか一方が入力された場合に、入力されなかったデータを補完して疑似統合データを出力する。第1事業者及び第2事業者においては、情報処理装置1に提供しない第1データ又は第2データが存在する場合において、これらの第1データ又は第2データに対し、どのような第2データ又は第1データが関連づけられるのかを確認したいケースがある。これに対し、第1事業者及び第2事業者は、データ生成モデルに、第1データ又は第2データを入力し、疑似統合データをデータ生成モデルから取得することにより、自身が有する第1データ又は第2データを用いるだけで、当該第1データ又は第2データに関連付けられる第2データ又は第1データを確認することができる。
【0039】
[データ生成モデルの生成及び更新]
続いて、制御部13が有する、データ生成モデルの生成及び更新に係る機能について説明する。
受信部131は、第1事業者から、第1データ及び第2データを識別するためのデータIDであって、第1データと第2データとを関連付けるためのデータIDと、第1データとを取得するとともに、第2事業者から、データIDと第2データとを受信する。例えば、受信部131は、第1装置2から、データIDと第1データとを関連付けた複数の第1レコードを受信するとともに、第2装置3から、データIDと第2データとを関連付けた複数の第2レコードを受信する。
【0040】
受信部131は、第1装置2及び第2装置3の少なくともいずれかから、所定の確率でノイズが付与された第1データ又は第2データを受信する。ここで、所定の確率は、第1データと第2データとを統合して統合データを生成した場合に、ε-局所型差分プライバシーを満たされるように統合データにノイズが付与されているときの、第1データ及び第2データにおけるノイズの付与率である。また、ノイズは、例えば、実際のデータに対し、実際のデータが取り得る他のデータが置換されることを示している。第1データ及び第2データにノイズが付与されていることにより、第1データ及び第2データそれぞれに含まれるユーザの情報の一部が秘匿化され、ユーザのプライバシーを高めることができる。
【0041】
生成部132は、第1事業者から取得した第1データと、第2事業者から取得した第2データとを関連付けたデータである統合データの入力に対し、統合データを出力するように設定されたデータ生成モデルであって、統合データとして第1データ及び第2データの少なくともいずれかが入力されたことに応じて、当該入力された統合データが出力されるように設定された損失関数によりパラメータを更新可能なデータ生成モデルを生成する。
【0042】
具体的にはまず、生成部132は、第1データ及び第2データとともに受信部131が受信したデータIDに基づいて、第1事業者が使用する第1装置2から取得した第1データと、第2事業者が使用する第2装置3から取得した第2データとを関連付けたデータである統合データを生成する。
【0043】
そして、生成部132は、当該統合データの入力に対して、当該統合データが出力するように設定された損失関数により、パラメータが設定されたデータ生成モデルを生成する。例えば、生成部132は、生成した統合データを入力データ及び出力データとした教師データとする。そして、生成部132は、当該教師データを用いて、データ生成モデルへの入力データと、データ生成モデルから出力される出力データとの差を示す損失関数の値が0になるように、層を構成するノードと、当該ノードと接続される他のノードとの接続関係の強さを示すパラメータの学習を行う。これにより、統合データの入力に対し、統合データを出力するようにパラメータが設定されたデータ生成モデルが生成される。
【0044】
送信部133は、生成部132が生成したデータ生成モデルを、第1装置2及び第2装置3の少なくともいずれかに送信する。なお、送信部133が送信する前のデータ生成モデルを、送信前モデルともいう。
【0045】
第1装置2及び第2装置3は、受信部を有しており、情報処理装置1が送信したデータ生成モデルを受信する。また、第1装置2及び第2装置3は、更新部を有しており、データ生成モデルに、統合データとして第1データ及び第2データの少なくともいずれかを入力し、データ生成モデルが有するパラメータを更新する。
【0046】
例えば、第1装置2及び第2装置3は、データ生成モデルが有する設定用パラメータの値を、疑似統合データを出力させる値に設定する。第1装置2及び第2装置3は、第1データ又は第2データのいずれか一方をデータ生成モデルに入力し、データ生成モデルから出力された疑似統合データを取得することができる。これにより、第1事業者及び第2事業者は、自身が保有する第1データ又は第2データをデータ生成モデルに入力することで、自身が保有していないデータを補完した疑似統合データを取得することができるので、当該自身が保有していないデータに基づいて分析を行うことができる。
【0047】
また、データ生成モデルは、第1データが入力された場合には、損失関数により、共通パラメータと、第1固有パラメータとが更新され、第2データが入力された場合には、損失関数により、共通パラメータと、第2固有パラメータとが更新される。ここで、更新の回数は1回に限らない。また、過学習を防ぐために、共通パラメータの値を更新する際に、当該共通パラメータが変化する度合いを制限する正則化を行ってもよい。第1事業者又は第2事業者側においてパラメータが更新されたデータ生成モデルを、更新後モデルともいう。第1装置2及び第2装置3は、例えば所定時間おきに更新後モデルを情報処理装置1に送信する。
【0048】
受信部131は、第1装置2及び第2装置3の少なくともいずれかから、損失関数によりパラメータが更新されたデータ生成モデルである更新後モデルを受信する。
更新部134は、受信部131が受信した更新後モデルに含まれるパラメータに基づいて、生成部132により生成された送信前モデルに設けられているパラメータを更新することにより、送信前モデルを更新する。
【0049】
更新部134は、更新後モデルと、送信前モデルとに含まれているパラメータを比較し、更新されているパラメータを特定する。更新部134は、送信前モデルに含まれているパラメータのうち、更新されているパラメータを、更新後モデルに含まれている更新後のパラメータに更新する。
【0050】
例えば、更新部134は、更新後モデルにおいて、共通パラメータと、第1固有パラメータとが更新されている場合には、送信前モデルに含まれている当該共通パラメータ及び第1固有パラメータの値を、更新後モデルに含まれている共通パラメータ及び第1固有パラメータの値に更新する。また、更新部134は、更新後モデルにおいて、共通パラメータと、第2固有パラメータとが更新されている場合には、送信前モデルに含まれている当該共通パラメータ及び第2固有パラメータの値を、更新後モデルに含まれている共通パラメータ及び第2固有パラメータの値に更新する。
【0051】
ここで、第1装置2及び第2装置3から更新後モデルを受信した場合には、受信した2つの更新後モデルの双方において、共通パラメータの値が更新されていることとなる。この場合、更新部134は、送信前モデルに含まれている共通パラメータの値を、第1装置2から受信した更新後モデルに含まれている共通パラメータの値と、第2装置3から受信した更新後モデルに含まれている共通パラメータの値とに基づいて更新する。更新部134は、例えば、送信前モデルに含まれている共通パラメータの値を、第1装置2から受信した更新後モデルに含まれている共通パラメータの値と、第2装置3から受信した更新後モデルに含まれている共通パラメータの値との平均値に更新する。
【0052】
ここで、更新部134は、送信前モデルに含まれている共通パラメータの値を、第1装置2から受信した更新後モデルに含まれている共通パラメータの値と、第2装置3から受信した更新後モデルに含まれている共通パラメータの値との中央値などの統計値に更新してもよい。また、更新部134は、過学習を防ぐために、送信前モデルに含まれている共通パラメータの値を更新する際に、当該共通パラメータが変化する度合いを制限する正則化を行ってもよいし、複数の学習環境を用意し、複数の学習環境それぞれにおいて、送信前モデルに含まれている共通パラメータの値を更新し、更新した共通パラメータの値を集約してもよい。このようにすることで、情報処理装置1は、第1装置2及び第2装置3において行われたデータ生成モデルの学習結果を送信前モデルに反映させることができる。
【0053】
なお、受信部131は、第1装置2と、第2装置3とのそれぞれから、データ生成モデルの利用状況を示す情報として、利用回数を示す情報を取得してもよい。そして、更新部134は、第1装置2と、第2装置3とのそれぞれにおけるデータ生成モデルの利用状況と、第1装置2から受信した更新後モデルに含まれている共通パラメータの値と、第2装置3から受信した更新後モデルに含まれている共通パラメータの値とに基づいて、送信前モデルに含まれている共通パラメータの値を更新してもよい。第1装置2と、第2装置3とのそれぞれにおけるデータ生成モデルの利用回数に基づいて、第1装置2から受信した更新後モデルに含まれている共通パラメータの値と、第2装置3から受信した更新後モデルに含まれている共通パラメータの値とのそれぞれの重み付けを行い、重み付けが行われた2つの共通パラメータの平均値を、送信前モデルに含まれている共通パラメータの値としてもよい。
【0054】
また、更新部134は、第1装置2及び第2装置3の少なくともいずれかから受信した更新後モデルに含まれるパラメータに基づいて、送信前モデルのパラメータを更新したが、これに限らない。例えば、更新部134は、疑似統合データに基づいて送信前モデルのパラメータを更新してもよい。
【0055】
この場合、受信部131は、第1装置2及び第2装置3の少なくともいずれかから、疑似統合データを受信する。ここで、受信部131は、第1装置2及び第2装置3の少なくともいずれかから、所定の確率でノイズが付与された疑似統合データを受信してもよい。このようにすることで、情報処理装置1は、匿名化処理が行われた疑似統合データを収集することができ、収集する過程において匿名化処理が行われていないユーザ情報が流出することを抑制することができる。
【0056】
更新部134は、受信部131が受信した疑似統合データを用いてデータ生成モデル(送信前モデル)の学習を行い、疑似統合データの入力に対して、当該疑似統合データが出力されるようにパラメータを更新することにより、データ生成モデルを更新する。
【0057】
また、更新部134は、疑似統合データを生成する過程でデータ生成モデルが生成する、パラメータを更新するための中間データ、例えば、パラメータの勾配を示す勾配情報に基づいて、送信前モデルのパラメータを更新してもよい。この場合、受信部131は、第1装置2及び第2装置3の少なくともいずれかから、疑似統合データを生成する過程でデータ生成モデルが生成する、パラメータを更新するための中間データを受信する。中間データは、例えば、データ生成モデルの中間層に含まれる所定の層において出力され、当該所定の層の次の層に入力されるデータ集合である。ここで、受信部131は、第1装置2及び第2装置3の少なくともいずれかから、所定の確率でノイズが付与された中間データを受信してもよい。この場合、中間データに含まれる複数のデータそれぞれが取り得る値が予め特定されており、中間データに含まれる複数のデータが、他の取り得るデータに所定の確率で置換されているものとする。
【0058】
更新部134は、受信部131が受信した中間データを、中間層を構成する複数の層のうち、当該中間データが入力される層に入力することにより、データ生成モデル(送信前モデル)の学習を行う。これにより、更新部134は、中間データに基づいて、中間データに対応する統合データが出力されるように、パラメータを更新することにより、データ生成モデルを更新する。
【0059】
また、受信部131は、第1装置2及び第2装置3の少なくともいずれかから、第1の疑似統合データと、当該第1の疑似統合データを出力する過程で得られる潜在変数とを受信してもよい。そして、送信部133は、受信部131が受信した潜在変数を第1装置2及び第2装置3のうち、潜在変数の受信元とは異なる他方の装置に送信してもよい。この場合、他方の装置は、自身が予め受信しているデータ生成モデルに対し、当該潜在変数を用いて第2の疑似統合データを出力させ、当該第2の疑似統合データを情報処理装置1に送信する。ここで、他方の装置におけるパラメータの学習に正則化を加えておいてもよい。情報処理装置1の受信部131は、当該他方の装置から第2の疑似統合データを受信する。
【0060】
更新部134は、受信部131が受信した第1の疑似統合データと第2の疑似統合データとの比較結果に基づいて、送信前モデルから第1の疑似統合データが出力されるようにパラメータを更新することにより、当該送信前モデルを更新する。例えば、更新部134は、受信部131が受信した第1の疑似統合データと第2の疑似統合データとを比較し、一致度が所定の閾値を超えることを条件として、生成部132が生成したデータ生成モデル、すなわち、送信前モデルから第1の疑似統合データが出力されるようにパラメータを更新することにより、当該送信前モデルを更新する。
【0061】
第1の疑似統合データと第2の疑似統合データとの一致度が所定の閾値を超えている場合、第1の疑似統合データを出力した事業者側に配布されたデータ生成モデルのパラメータが更新されている確率が高い。これに対し、情報処理装置1は、事業者側に配布されたデータ生成モデルのパラメータの変化が大きい確率が高い場合に、当該パラメータを送信前モデルのパラメータに反映させることができる。なお、更新部134は、一致度が所定の閾値を超えることを条件として、送信前モデルから第1の疑似統合データが出力されるようにパラメータを更新したが、これに限らない。更新部134は、受信部131が第1の疑似統合データを受信したことに応じて、無条件で、送信前モデルから第1の疑似統合データが出力されるようにパラメータを更新してもよい。
【0062】
送信部133は、更新部134により更新されたデータ生成モデルを、第1装置2及び第2装置3の少なくともいずれかに送信する。これにより、第1事業者は、第2事業者において、第2データに基づいて更新されたパラメータが反映されたデータ生成モデルを用いて、精度が向上した疑似統合データを取得することができる。同様に、第2事業者は、第1事業者において、第1データに基づいて更新されたパラメータが反映されたデータ生成モデルを用いて、精度が向上した疑似統合データを取得することができる。
【0063】
[データ生成モデルの使用に伴う課金]
続いて、データ生成モデルの使用に伴う課金について説明する。
受信部131は、第1装置2及び第2装置3の少なくともいずれかから、データ生成モデルの利用状況を示す利用状況情報を受信する。例えば、利用状況情報は、利用した事業者を示す事業者識別情報と、データ生成モデルを利用した回数とを関連付けた情報である。また、データモデルを利用した回数は、入力データとして統合データの一部である第1データ又は第2データを入力し、データ生成モデルから疑似統合データを取得した回数である。なお、データ生成モデルの学習フェーズと、データ生成モデルを利用して疑似統合データを取得する予測フェーズとがあるところ、データモデルを利用した回数は、予測フェーズにおいて疑似統合データを取得した回数であってもよい。
【0064】
課金部135は、受信部131が受信した利用状況情報に基づいて、データ生成モデルを利用した事業者に対して課金を行う。例えば、課金部135は、利用状況情報が示す事業者識別情報が示す事業者に対し、当該利用状況情報が示すデータ生成モデルを利用した回数が多ければ多いほど課金額が高くなるように課金を行う。このようにすることで、情報処理装置1を運用する集約事業者は、事業者によるデータ生成モデルの利用に対する対価を得ることができる。
【0065】
[動作シーケンス]
続いて、情報処理装置1に係る処理の流れについて説明する。
図4は、情報処理装置1がデータ生成モデルを生成し、更新するまでの処理の流れを示すシーケンス図である。
【0066】
まず、受信部131は、第1装置2からデータIDと第1データとを関連付けた複数の第1レコードを受信するとともに(S1)、第2装置3からデータIDと第2データとを関連付けた複数の第2レコードを受信する(S2)。
【0067】
続いて、生成部132は、受信した第1レコード及び第2レコードに含まれるデータIDとをキーとして第1レコードと第2レコードとを連結することにより、統合データを生成する(S3)。続いて、生成部132は、生成した統合データを教師データとしてデータ生成モデルの学習を行うことにより、データ生成モデルを生成する(S4)。
続いて、送信部133は、生成部132が生成したデータ生成モデルを第1装置2及び第2装置3に送信する(S5、S6)。
【0068】
第1装置2は、情報処理装置1から受信したデータ生成モデルに対し、入力データとして第1データを入力し、データ生成モデルから疑似統合データを出力させることにより、疑似統合データを取得する(S7)。データ生成モデルは、入力データとして第1データが入力されると、共通パラメータ及び第1固有パラメータを更新する。第1装置2は、共通パラメータ及び第1固有パラメータが更新されたデータ生成モデル、すなわち更新後モデルを情報処理装置1に送信する(S8)。
【0069】
同様に、第2装置3は、情報処理装置1から受信したデータ生成モデルに対し、入力データとして第2データを入力し、データ生成モデルから疑似統合データを出力させることにより、疑似統合データを取得する(S9)。データ生成モデルは、入力データとして第2データが入力されると、共通パラメータ及び第2固有パラメータを更新する。第2装置3は、共通パラメータ及び第2固有パラメータが更新されたデータ生成モデル、すなわち更新後モデルを情報処理装置1に送信する(S10)。情報処理装置1の受信部131は、第1装置2及び第2装置3から更新後モデルを受信する。
【0070】
更新部134は、第1装置2及び第2装置3から受信した更新後モデルに含まれているパラメータに基づいて、S4において生成したデータ生成モデルのパラメータを更新する(S11)。これにより、情報処理装置1は、入力データとして第1データと第2データとのうち一方のデータしか入力されなかった場合における、当該入力されたデータに基づく学習結果を、S4において生成したデータ生成モデルに反映することができる。
【0071】
続いて、送信部133は、更新部134により更新されたデータ生成モデルを第1装置2及び第2装置3に送信する(S12、S13)。その後、第1装置2及び第2装置3において、データ生成モデルを用いた疑似統合データの取得が行われる。
【0072】
[情報処理装置1による効果]
以上説明したように、本実施の形態に係る情報処理装置1は、入力されたデータに基づいて決定され、出力されるデータの決定に用いられる複数の潜在変数を有するデータ生成モデルであって、第1事業者から取得した第1データ、又は第2事業者から取得した第2データのいずれか一方の入力を受け付けた場合に、第1データ又は第2データのうち、入力されなかったデータである未入力データに対応する潜在変数が取り得る値を生成することにより、入力された第1データ又は第2データと、前記未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力するデータ生成モデルを生成する。そして、情報処理装置1は、生成したデータ生成モデルを、第1事業者が使用する第1装置2及び第2事業者が使用する第2装置3の少なくともいずれかに送信する。このようにすることで、第1装置2及び第2装置3において、当該データ生成モデルを用いて、データの結合用として事業者に提供しなかったデータに対し、どのような内容のデータが結合されるのかを予測することができる。
【0073】
なお、本発明により、国連が主導する持続可能な開発目標(SDGs)の目標9「産業と技術革新の基盤をつくろう」に貢献することが可能となる。
【0074】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を併せ持つ。
【符号の説明】
【0075】
1 情報処理装置
2 第1装置
3 第2装置
11 通信部
12 記憶部
13 制御部
131 受信部
132 生成部
133 送信部
134 更新部
135 課金部
S 情報処理システム
【要約】
【課題】データの結合用として提供しなかったデータに対し、どのような内容のデータが結合されるのかを予測可能とする。
【解決手段】情報処理装置1は、複数の潜在変数を有するデータ生成モデルであって、第1事業者から取得した第1データ、又は第2事業者から取得した第2データのいずれか一方の入力を受け付けた場合に、入力されなかったデータである未入力データに対応する潜在変数が取り得る値を生成することにより、入力された第1データ又は第2データと、未入力データに対応する疑似データとを関連付けた統合データである疑似統合データを出力するデータ生成モデルを生成する生成部132と、生成部132が生成したデータ生成モデルを、第1事業者が使用する第1装置2及び第2事業者が使用する第2装置3の少なくともいずれかに送信する送信部133と、を有する。
【選択図】
図2