JP6673367B2 - 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム - Google Patents
情報処理装置、情報処理システム、および情報処理方法、並びにプログラム Download PDFInfo
- Publication number
- JP6673367B2 JP6673367B2 JP2017560052A JP2017560052A JP6673367B2 JP 6673367 B2 JP6673367 B2 JP 6673367B2 JP 2017560052 A JP2017560052 A JP 2017560052A JP 2017560052 A JP2017560052 A JP 2017560052A JP 6673367 B2 JP6673367 B2 JP 6673367B2
- Authority
- JP
- Japan
- Prior art keywords
- variable
- data
- calculation
- information processing
- result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 202
- 238000003672 processing method Methods 0.000 title claims description 19
- 238000004364 calculation method Methods 0.000 claims description 368
- 238000000034 method Methods 0.000 claims description 249
- 238000012545 processing Methods 0.000 claims description 212
- 238000007477 logistic regression Methods 0.000 claims description 160
- 230000008569 process Effects 0.000 claims description 154
- 238000006243 chemical reaction Methods 0.000 claims description 52
- 238000007476 Maximum Likelihood Methods 0.000 claims description 38
- 238000002940 Newton-Raphson method Methods 0.000 claims description 37
- 230000014509 gene expression Effects 0.000 description 54
- 239000011159 matrix material Substances 0.000 description 22
- 201000010099 disease Diseases 0.000 description 14
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 230000008520 organization Effects 0.000 description 11
- 208000031226 Hyperlipidaemia Diseases 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 8
- HVYWMOMLDIMFJA-DPAQBDIFSA-N cholesterol Chemical compound C1C=C2C[C@@H](O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2 HVYWMOMLDIMFJA-DPAQBDIFSA-N 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 239000003814 drug Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 229940079593 drug Drugs 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000013215 result calculation Methods 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/20—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Public Health (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Primary Health Care (AREA)
- Biomedical Technology (AREA)
- Epidemiology (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Computer Security & Cryptography (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Operations Research (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
具体的には、例えば、説明変数(x)を、
(x1)ユーザの性別(男=1、女=0)
(x2)ユーザの年齢(0〜)、
(x3)ユーザのコレステロール値(例えば150〜250)、
これらの複数の説明変数(x1〜x3)とする。
また、結果変数(y)を、
(y1)病気(例えば高脂血症)の発症の有無(発症あり=1、発症なし=0)
この1つの結果変数(y1)とする。
これらの各ユーザ対応の説明変数は、各ユーザの個人情報であり、公開することは好ましくない。
この病院の保持しているデータも個人情報であり、公開すべきではない。
なお、個人情報等、公開すべきではないデータを、セキュアデータ、あるいはセンシティブデータ(機微データ)と呼ぶ。
しかし、例えば任意の説明変数(x1〜x3)から、結果変数(y)を推定することが求められる場合がある。
具体的には、(y1)病気(例えば高脂血症)の発症があると推定されるユーザに、その病気(例えば高脂血症)の薬、あるいは予防薬の薬の広告を提供するといった広告出力を行えば、薬を買ってもらえる可能性を高めることができ、より効果の高い広告出力が可能となる。
ロジスティック回帰分析は、この推定処理手法の一つである。
このような解析処理を開示した従来技術として、例えば特許文献1(特開2011−83101号公報)や、特許文献2(特開2009−199068号公報)がある。
秘匿化データを利用して統計量を求める方法としては秘密計算(セキュア計算)を使う。しかし、秘匿化データから、お互いに情報を開示せずに統計量を計算する具体的な方法は示されておらず、秘密計算を行うための枠組みに関する構成のみを開示しているにすぎない。
この特許文献1に開示されている秘密計算システムを用いて、ロジスティック回帰のパラメータを推定する場合、一般的なセキュア計算をそのまま用いることになり、非常に効率が悪くなる。
また、入力値を秘匿して計算を行う一般的なセキュア計算では、秘密にすべき入力値の個数に応じて計算量や通信量が増大するという問題がある。
各標本に対応付けられた2種類の異なるセキュアデータである第1の変数と第2の変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
第1の変数と第2の変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行して、前記ロジスティック回帰パラメータを算出する情報処理装置にある。
各標本に対応付けられたセキュアデータである説明変数を保持する説明変数保持装置と、
各標本に対応付けられたセキュアデータである結果変数を保持する結果変数保持装置を有する情報処理システムであり、
前記結果変数保持装置は、
各標本に対応付けられた結果変数の総和(t_0)を算出して前記説明変数保持装置に出力し、
前記説明変数保持装置は、
結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
算出した内積(t_s)、および結果変数保持装置から入力した結果変数の総和(t_0)を適用してロジスティック回帰パラメータを算出する情報処理システムにある。
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、
各標本に対応付けられた2種類の異なるセキュアデータである第1の変数と第2の変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
第1の変数と第2の変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行して、前記ロジスティック回帰パラメータを算出する情報処理方法にある。
各標本に対応付けられたセキュアデータである説明変数を保持する説明変数保持装置と、
各標本に対応付けられたセキュアデータである結果変数を保持する結果変数保持装置を有する情報処理システムにおいて実行する情報処理方法であり、
前記結果変数保持装置は、
各標本に対応付けられた結果変数の総和(t_0)を算出して前記説明変数保持装置に出力し、
前記説明変数保持装置は、
結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
算出した内積(t_s)、および結果変数保持装置から入力した結果変数の総和(t_0)を適用してロジスティック回帰パラメータを算出する情報処理方法にある。
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、
各標本に対応付けられた2種類の異なるセキュアデータである第1の変数と第2の変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
第1の変数と第2の変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出する処理と、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行させて、前記ロジスティック回帰パラメータ算出処理を実行させるプログラムにある。
具体的には、各標本に対応のセキュアデータである説明変数と結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出する。データ処理部は、説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、内積算出処理以外の計算処理を、変換データを用いない計算処理として実行してNewton−Raphson法(繰返し収束法)を用いた最尤法に従って、ロジスティック回帰パラメータを算出する。
本構成により、高速かつ効率的なロジスティック回帰モデルのパラメータ算出処理が実現される。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
1.ロジスティック回帰分析の概要について
2.ロジスティック回帰分析によるパラメータ推定処理について
3.最尤法によるロジスティック回帰パラメータの推定処理について
4.セキュア計算を用いたロジスティック回帰パラメータの推定方法について
5.セキュア計算を削減したロジスティック回帰パラメータの推定方法について
6.本開示のパラメータ算出処理における計算量の削減効果について
7.情報処理装置のハードウェア構成例について
8.本開示の構成のまとめ
まず、ロジスティック回帰分析の概要について説明する。
ある説明変数(x)から結果変数(y)を予測する手法としてロジスティック回帰分析が知られている。
図1は、ロジスティック回帰分析を行うためのデータ例である。
複数の標本(i)についての、結果変数(y)と説明変数(x)のリストを示している。標本iは、例えば1人のユーザiに相当する。
結果変数(y)は、病気、例えば高脂血症の発症の有無(発症あり=1、発症なし=0)である。
説明変数(x)は性別(x1)、年齢(x2)、コレステロール値(x3)としている。
このデータは、組織A(エンティティA)がWebサイトの閲覧ユーザからの閲覧情報等に基づいて生成、取得したデータであり、マーケッティング上、価値のあるデータである。しかし、個人情報を含む情報であるため、公開することは好ましくない。すなわち、セキュアデータ(センシティブデータや機微データ等とも呼ばれる)であり、漏えいを防止すべきデータである。
この病院の保持しているデータも、セキュアデータであり、漏えいを防止すべきデータである。
従って、組織A,Bを含め、第三者も説明変数(x1〜x3)と、結果変数(y1)を併せて確認することができないという設定である。
具体的なロジスティック回帰分析処理例について説明する。
(x1)ユーザの性別(男=1、女=0)
(x2)ユーザの年齢(0〜)、
(x3)ユーザのコレステロール値(例えば150〜250)、
これらの複数の説明変数(x1〜x3)とする。
また、結果変数(y)を、
(y1)病気(例えば高脂血症)の発症の有無(発症あり=1、発症なし=0)
この1つの結果変数(y1)とする。
しかし、この100人のユーザの結果変数(y)、すなわち、(y1)病気(例えば高脂血症)の発症の有無(発症あり=1、発症なし=0)については、別の組織B(エンティティB)、例えばある病院が保持しているセキュアデータである。
従って、組織A(エンティティA)は、この100人のユーザの結果変数(y)を取得できない。
説明変数(x)の保持者は、この結果変数(y)の変換データ(秘匿化データ)を受領して、様々な演算を実行することで、所定の説明変数(x)に対応付けられる結果変数(y)を推定することができる。
この推定処理の1つの代表的手法がロジスティック回帰分析である。
ロジスティック回帰分析では、説明変数(x)の観測値、例えば、図1に示す(x1〜x3)が与えられている条件のもとで、ある事象が発生する確率p(x)を算出する式を設定し、設定した式中のパラメータを算出(推定)する。
上記(式1)において、
x_1,・・・,x_rは、説明変数である。
β_0,・・・,β_rは、ロジスティック回帰パラメータである。以下、単にパラメータと呼ぶ。
なお、以下の説明において、下線に続く文字(例えば_0)は、下付き文字を表すものとする。
β_0,・・・,β_rは、β0〜βrを示している。
パラメータβ_0,・・・,β_rを決定することで、上記(式1)に従って、説明変数(x)の観測値(x_1,・・・,x_r)が与えられているという条件の下で、ある事象が発生する確率p(x)を算出することが可能になる。
次に、ロジスティック回帰分析によるパラメータ推定処理について説明する。
図2は、本開示のロジスティック回帰分析処理を実行する1つの情報処理システム構成例を示す図である。
これらの情報処理装置A110と情報処理装置B120は、説明変数(x)と、結果変数(y)のいずれかのみを保持する装置である。
また、企業にとっては、これらのデータは経済的価値がある資産であり、他社に渡したくないという事情がある。
(A)学習データとして、各エンティティ(情報処理装置A110、情報処理装置B120)が、説明変数(x)と結果変数(y)を個別に秘密データ(セキュアデータ)として保持している場合、
(B)ロジスティック回帰モデルを適用することで、
所定の説明変数(x)が与えられたとき、その説明変数(x)が与えられた要素i(例えばユーザi)についての結果変数(y)を推定可能となるという、有益な知見を取得することができる。
具体的には、p(x)=1は、結果変数y=1、すなわち病気が発症することを示し、p(x)=0は、結果変数y=0、すなわち病気が発症しないことを示する。
一方、算出値p(x)が0に近ければ、そのユーザi(標本i)は、病気発症の可能性が低いと判断することができる。
具体的な説明の前に、まず、用語の定義と基本アルゴリズムの説明を行う。
(2−1−1)説明変数(x)が連続変数である場合のパラメータ推定アルゴリズム
連続変数とは、数や量で測れる変数で、例えば、図1に示す例では、年齢やコレステロールの値等である。
このように、説明変数xが連続変数である場合は、先に説明した(式1)に従った確率推定式の説明変数(x_1,・・・,x_r)として、連続変数である説明変数(x)の値をそのまま代入してよい。
すなわち、例えば年齢を示す説明変数(x)の年齢データ(54)や、コレステロール値を示す(213)等を(式1)の説明変数(x_1,・・・,x_r)にそのまま代入してよい。
カテゴリ変数とは、数や量で測れない変数で、例えば性別等のデータ(男=1、女=0等)である。カテゴリ変数がとり得る値が2つの場合、説明変数(x)の値は0、または1である。
この場合は、先に説明した(式1)に従った確率推定式の説明変数(x_1,・・・,x_r)として、説明変数(x)の値(0または1)をそのまま代入してよい。
先に説明した(式1)に従った確率推定式の説明変数(x_1,・・・,x_r)として、説明変数(x)の値をそのまま代入することができない。
このとき、j番目の説明変数(x_j)について、カテゴリ数Kに対応するK個の説明変数(x_jk)を設定し、このK個の説明変数(x_jk)の値を以下のように設定する。
x_jk=1:j番目の説明変数の第kカテゴリに属する
x_jk=0:j番目の説明変数の第kカテゴリに属しない
kは、1〜Kであり、説明変数(x_jk)はカテゴリ数Kに等しい個数、設定される。
パラメータβ_jk(k=1,・・・,K_j)を、説明変数(x_jk)対応のパラメータとする。
x_1k,・・・,x_rkは、事象j(j=1〜r)のカテゴリk(k=1〜K_j)の説明変数である。
この説明変数(x_jk)は、本来の説明変数(x_j)から生成されるカテゴリ対応の仮の説明変数であり、ダミー変数とも呼ばれる。
また、β_0、β_1k,・・・,β_rkは、ロジスティック回帰パラメータである。
なお、β_1k,・・・,β_rkは、事象j(j=1〜r)のカテゴリk(k=1〜K_j)の説明変数に対応するロジスティック回帰パラメータである。
次に、説明変数(x)に、連続変数と、カテゴリ変数が混在する場合のパラメータ推定アルゴリズムについて説明する。
(a)連続変数対応の説明変数(x_j)対応のパラメータ(β_j)、
(b)カテゴリ変数対応の説明変数(x_jk)対応のパラメータ(β_jk)、
(a)連続変数対応の説明変数(x_j)対応のパラメータ(β_j)については、1、
(b)カテゴリ変数対応の説明変数(x_jk)対応のパラメータ(β_jk)については、各jについて、K−1(カテゴリ数=K)、
上記の自由度となる。
連続変数対応のs個の説明変数(x_j)に関する独立なパラメータ数は、s個、
カテゴリ数(K_j)個のカテゴリ変数対応のt個の説明変数(x_jk)に関する独立なパラメータ数は、
(K_1−1)+(K_2−1)+・・・+(K_t−1)個となる。
次に、パラメータ推定のために用いるデータである標本と、標本から生成される中間的なデータ構造であるプロファイルについて説明する。
標本(i)の各々には、j個の説明変数(x_j)と、1つ以上の結果変数(y)の値が設定されている。
標本の大きさ(数)をnとして、第i番目の標本(i=1,・・・,n)に対応する結果変数(y_i)の値を以下のように定義する。
y_i=1;ある事象が発生
y_i=0;ある事象が発生せず
これらが得られているものとする。
例えば、図5の左に示す(1)標本単位データのようなデータである。
結果変数(y)の値が1、すなわち、y_i=1となる標本数に相当する事象の発生数は、以下の(式3)によって示される。
説明変数(xi_1,xi_2,・・・,xi_r)、ただしi=1〜n、この説明変数の構成値からなるベクトルを説明変数ベクトルxiとする。
n個の説明変数ベクトルxiの中から、相異なるパターンを抽出し、それらに番号をつけたものx_j(j=1,・・・,J)をプロファイルと呼ぶ。
このプロファイル抽出により、図5の右に示す(2)プロファイル単位データが生成される。
Jは標本の中で出現する説明変数のパターン数である。
また、x_j=(x_j1,・・・,x_jr)とする。
(2)プロファイル単位データ中の(d)は、結果変数(y)がy=1となる標本数に相当するデータである。
先に説明したように、前述の(式1)、すなわちロジスティック回帰モデルに従った(式1)を用いて、ロジスティック回帰パラメータ(β_0,・・・,β_r)を推定することで、ある説明変数(x)の値が与えられたとき、その説明変数に対応する、より確からしい結果変数(y)を推定することができる。
例えば、図1や、図4(A)に示すデータを全て把握している場合のパラメータ推定処理である。
すなわち、例えば1つの組織(エンティティ)が、結果変数値と説明変数値からなるデータを両方とも保持し、1つの組織(エンティティ)が利用可能な情報処理装置の記憶部に複数標本の結果変数値と説明変数値からなるデータを格納している場合に、これらのデータを用いてパラメータβ=β_0,・・・,β_rを、最尤法を用いて推定する方法について説明する。
つまり、下記(式8)の連立方程式を解く。
なお、上記(式9)におけるkは繰り返し数である。
k=0としたパラメータ初期値:β(k)には、適当な任意値を設定して繰り返し計算を開始する。
各変数の意味を、以下の(式11)に示す。
しかし、前述したように、実際には、説明変数(x)、結果変数(y)はいずれも個人データ等のセキュアデータである場合が多く、説明変数(x)、結果変数(y)の双方とも知り得る状況にはならないケースが多い。
以下、このような場合のパラメータ推定方法について説明する。
次に、図3に示すように、説明変数(x)と結果変数(y)の各データが、異なる組織等によって分割して保有され、これらのデータを相互に開示できない設定である場合に、セキュア計算を用いてパラメータβ=β_0,・・・,β_rを、最尤法を用いて推定する方法について説明する。
また、企業にとっては、これらのデータは経済的価値がある資産であり、他社に渡したくないという事情がある。
その一方で、異なる企業間でデータを組み合わせて、単独で使う場合よりもより多くの知見を得たいというニーズはある。
このパラメータ推定により、各エンティティ(情報処理装置A110、情報処理装置B120)は、説明変数(x)と結果変数(y)との関係を導く(推定)ことが可能となる。
これらの変換データを適用して、ロジスティック回帰モデル、すなわち前述した(式1)に設定されたロジスティック回帰パラメータβ_0,・・・,β_rを推定する。
なお、セキュアデータの変換データを用いた計算処理をセキュア計算と呼ぶ。
図6は、セキュアデータの加算値を、GMW方式に従ったセキュア計算によって算出する処理例を示す図である。
装置A,210は、セキュアデータX(例えば説明変数(x))を保持している。
また、装置B,220は、セキュアデータY(例えば結果変数(y))を保持している。
これらのセキュアデータX,Yは、公開することが好ましくない個人データ等のセキュアデータである。
X=((x_1)+(x_2))mod_m
上記式において、(x_1)は、0〜(m−1)から一様にランダムに選択し、
(x_2)は、
(x_2)=(X−(x_1))mod m
上記式を満たすように定める。
このように、2つの分割データ(x_1),(x_2)を生成する。
性別の値(0)の場合は、分割値は(40)と(60)に分割する等の処理が可能である。
年齢(54)は(10)と(44)に分割する等の処理が可能であり、その他の様々な分割処理が可能である。
例えば、分割データはセットで公開されず、例えば、一方の分割データのみが公開、すなわち、他の装置に提供される。
Y=((y_1)+(y_2))mod_m
上記式において、(y_1)は、0〜(m−1)から一様にランダムに選択し、
(y_2)は、
(y_2)=(Y−(y_1))mod m
上記式を満たすように定める。
このように、2つの分割データ(y_1),(y_2)を生成する。
装置A,210は、装置B,220に分割データ(x_1)を提供する。
一方、装置B,220は、装置A,210に、分割データ(y_2)を提供する。
しかし、Xの分割データである(x_1)、(x_2)の一方のデータのみを取得しても、セキュアデータXを特定することはできない。
同様に、Yの分割データである(y_1)、(y_2)の一方のデータのみを取得しても、セキュアデータYを特定することはできない。
従って、セキュアデータの分割データの一部のみのデータは、セキュアデータを特定できないデータであり、外部に出力することが許容される。
一方、装置B,220は、分割データ(y_2)を、装置A,210の計算処理実行部に出力する。
装置A,210の計算処理実行部は、ステップS21aにおいて、分割データを利用して、以下の分割データ同士の加算処理を実行する。
((x_2)+(y_2))mod m
装置A,210は、この加算結果を装置B,220の計算処理実行部に出力する。
一方、装置B,220の計算処理実行部は、ステップS21bにおいて、分割データを利用して、以下の分割データ同士の加算処理を実行する。
((x_1)+(y_1))mod m
装置B,220は、この加算結果を装置A,210の計算処理実行部に出力する。
次に、装置A,210の計算処理実行部は、ステップS22aにおいて、以下の処理を実行する。
(1)ステップS21aにおいて算出した分割データの加算結果、(x_2)+(y_2)、
(2)装置B,220から入力した分割データの加算結果、(x_1)+(y_1)、
これらの2つの加算結果を、さらに加算する。すなわち、以下の計算を実行する。
((x_1)+(y_1)+(x_2)+(y_2))mod m
すなわち、
((x_1)+(y_1)+(x_2)+(y_2))mod m
=X+Y
となる。
一方、装置B,220の計算処理実行部は、ステップS22bにおいて、以下の処理を実行する。
(1)ステップS21bにおいて算出した分割データの加算結果、(x_1)+(y_1)、
(2)装置A,210から入力した、分割データの加算結果、(x_2)+(y_2)、
これらの2つの加算結果を、さらに加算する。すなわち、以下の計算を実行する。
((x_1)+(y_1)+(x_2)+(y_2))mod m
すなわち、
((x_1)+(y_1)+(x_2)+(y_2))mod m
=X+Y
となる。
この図6に示す処理が、GMW方式に従ったセキュア計算を適用したセキュアデータの加算値算出処理例である。
装置A,210は、セキュアデータXを保持している。
また、装置B,220は、セキュアデータYを保持している。
これらのセキュアデータX,Yは、公開することが好ましくないセキュアデータである。
X=((x_1)+(x_2))mod m
このように、セキュアデータXをランダムに分割して2つの分割データ(x_1),(x_2)を生成する。
Y=((y_1)+(y_2))mod m
このように、セキュアデータYをランダムに分割して2つの分割データ(y_1),(y_2)を生成する。
一方、装置B,220は、装置A,210の計算処理実行部に、分割データ(y_2)を提供する。
X,Yはセキュアデータであり、外部に流出させることはできない。
同様に、Yの分割データである(y_1)、(y_2)の一方のデータのみを取得しても、セキュアデータYを特定することはできない。
従って、セキュアデータの分割データの一部のみのデータは、セキュアデータを特定できないデータであり、外部に出力することが許容される。
一方、装置B,220は、分割データ(y_2)を、装置A,210の計算処理実行部に出力する。
装置A,210は、Xの分割データである(x_1)、(x_2)と、装置B,220から受信したYの分割データ(y_1)を保持している。
処理は、以下の手順で実行される。
(ステップS31a)
入力値を、x_2、
出力値M(x_2)を、M_(x_2)=(x_2)×(y_1)+r、
上記の入出力値設定とした[1−out−of−m OT]を、装置B,220と実行する。
送信者と選択者という2つのエンティティが存在する。
送信者はm個の要素からなる入力値(M_0,M_1,・・・,M_(m−1))を持つ。
選択者はσ∈{0,1,...,m−1}という入力値を持つ。
一方、送信者は選択者の入力値σを知ることができない.
このように、[1−out−of−m OT]プロトコルは、m個の要素から1要素のみを送受信して演算処理を進めるプロトコルであり、m個の要素のどの要素が送受信されたかについては、要素受信側は特定できない設定としたプロトコルである。
入力値を、y_2、
出力値M_(y_2)'を、M_(y_2)'=(x_1)×(y_2)+r'、
上記の入出力値設定とした[1−out−of−m OT]を、装置B,220と実行する。
装置A,210の出力値として、出力値:M_(x_2)+M_(y_2)を以下の式に従って計算する。
M_(x_2)+M_(y_2)
=((x_2)×(y_2)+(x_2)×(y_1)+r+(x_1)×(y_2)+r')mod m
装置B,220は、Yの分割データである(y_1)、(y_2)と、装置A,210から受信したXの分割データ(x_1)を保持している。
(ステップS31b)
乱数r∈{0,...,m−1}を選び、セキュアデータYの分割値y_1に基づいて、[1−out−of−m OT]で用いる入力値列、
i×(y_1)+r
ただし、i=0,1,・・・,(m−1)
上記の入力値列を生成する。
M_0=0×(y_1)+r,
M_1=1×(y_1)+r,
...,
M_(m−1)=(m−1)×(y_1)+r、
これらの入力値列を生成する。
さらに、前述したステップS31aの設定に従った[1−out−of−m OT]を、装置A,210と実行する。
乱数r'∈{0,...,m−1}を選び、分割値y_1に基づいて、[1−out−of−m OT]で用いる入力値列、
i×(x_1)+r'
ただし、i=0,1,・・・,(m−1)
上記の入力値列を生成する。
M'_0=0×(x_1)+r',
M'_1=1×(x_1)+r'
...,
M'_(m−1)=(m−1)×(x_1)+r'
これらの入力値列を生成する。
さらに、前述したステップS32aの設定に従った[1−out−of−m OT]を、装置A,210と実行する。
装置B,220の出力値として、以下の出力値を計算する。
((x_1)×(y_1)−r−r')mod m
上記の値を、装置B,220の出力値として計算する.
(((x_2)×(y_2)+(x_2)×(y_1)+r+(x_1)×(y_2)+r')+((x_1)×(y_1)−r−r')
=((x_1)+(x_2))×((y_1)+(y_2))
=X×Y
装置A,210と、装置B,220間で、ステップS33a、ステップS33bの算出結果を相互に提供することで、上記のセキュアデータX,Yの乗算値X×Yが算出できる。
この図7に示す処理が、GMW方式に従ったセキュア計算を適用したセキュアデータの乗算値算出処理例である。
また、図6、図7に示すセキュア計算処理例は、セキュア計算の一例であり、セキュア計算態様には、その他、様々な異なる計算処理が可能である。
すなわち、Newton−Raphson法(繰返し収束法)を用いて、パラメータβを最尤法に従って推定するための式である。
Newton−Raphson法(繰返し収束法)を用いて、パラメータβを算出する。一般にパラメータβの最尤推定値の解は、以下の(式a)の繰り返し計算によって算出できる。
上記(式a)は、図8に示すように展開することができる。
L(β)=log{like(β)}=・・・
をβで偏微分して0とおいた連立方程式である。
なお、図8の(式d)、(式e)に含まれる(d_j)は、先に図5を参照して説明した図5の右に示す(2)プロファイル単位データ中の(d)であり、結果変数(y)がy=1となる標本数に相当するデータである。
これらのセキュアデータ、すなわち、説明変数(x)と、結果変数(y)は、それぞれ2つの異なる情報処理装置が個別に保持しており、共有や公開ができないデータである。
セキュア計算は、例えば図6、図7を参照して説明したように、セキュアデータの変換データ(例えば分割データ)を生成して、この変換データを装置間で入出力する等、各セキュアデータを変換したデータを装置間で入出力し変換データを適用した計算を行うものである。
従って、セキュア計算を行うためには、図8に示すマトリックスXやマトリックスVに含まれる説明変数1つ1つについて、それぞれ分割データ等の変換データを生成して、装置間で入出力し、この変換データを用いた計算を行うことが必要となる。
従って、セキュアデータの数が多い場合、図8に示す(式a)の繰り返し計算処理は、多大な計算時間や計算資源を要することになる。すなわち計算コストが増大してしまうという問題がある。
上述したように、説明変数(x)と結果変数(y)の各データが、異なる組織等によって分割して保有され、これらのデータを相互に開示できない設定である場合に、セキュア計算を用いてパラメータβ=β_0,・・・,β_rを推定しようとすると、多大な計算時間や計算資源を要し、計算コストが増大してしまうという問題がある。
また、企業にとっては、これらのデータは経済的価値がある資産であり、他社に渡したくないという事情がある。
すなわち、各エンティティ(情報処理装置A110、情報処理装置B120)は、説明変数(x)と結果変数(y)との関係を推定することが可能となる。
これらの変換データを適用して、ロジスティック回帰モデル、すなわち前述した(式1)に設定されたロジスティック回帰パラメータβ_0,・・・,β_rを推定する。
図9には、パラメータ推定処理を実行するデータ処理部であるパラメータ算出実行部111,121を示している。
パラメータ算出実行部111,121は、説明変数(x)や結果変数(y)を外部に漏らすことなく、パラメータ推定を実行する。
一方、説明変数保持装置である情報処理装置B120のパラメータ算出実行部121は、入力部141、内積計算部142、データ送受信部143、繰り返し計算部144、出力部145を有する。
すなわち、ロジスティック回帰モデル(式1)のロジスティック回帰パラメータβ=β_0,・・・,β_rを、最尤法を用いて推定する処理シーケンスを説明するフローチャートである。
まず、ロジスティック回帰モデル(式1)のロジスティック回帰パラメータβ=β_0,・・・,β_rの算出処理の対象となるデータを構成する要素(i)、および各要素に対応して設定される説明変数(x)と、結果変数(y)を以下の設定とする。
結果変数:y_i∈{0,1}
説明変数:r個の変数(xi_1,xi_2,・・・,xi_r)
これらの説明変数と、結果変数が対応付けられているものとする。
情報処理装置B120は、説明変数値からなるデータ(xi_1,xi_2,・・・,xi_r)(i=1,・・・,n)を保持する。
これらのデータはいずれも公開が許容されないセキュアデータである。
次に、ロジスティック回帰パラメータβ=β_0,・・・,β_r推定処理の手順を説明する。
図10に示すフローチャートに示す各ステップの処理について、順次、説明する。
ステップS101の処理は、入力部からのデータ入力処理である。
図9に示す結果変数(y)保持装置である情報処理装置A110のパラメータ算出実行部111の入力部131は、ステップS101aにおいて、情報処理装置A110の記憶部に保持された結果変数y_i(ただし、i=1,・・・,n)を記憶部から取得してパラメータ算出実行部111に入力する。
ステップS102の処理は、情報処理装置A110、情報処理装置B120のパラメータ算出実行部111,121内の内積計算部132,142の実行する処理である。
情報処理装置A110の入力値である結果変数値からなるデータy_i(i=1,・・・,n)と、
情報処理装置B120の入力値である説明変数値からなるデータ(xi_1,xi_2,・・・,xi_r)(i=1,・・・,n)、
これらのデータを直接、利用することのないセキュア計算によって実行する。
図11に示すように、上記の(式13)の説明変数(x)と結果変数(y)との内積(t_s)算出式として示すデータdを適用した演算式は図11中の(式e)の演算式301に相当する。
変換データには、例えばセキュアデータの暗号化データや、図6、図7を参照して説明した分割データ等、様々な変換データがある。
先に説明した図6、図7は、セキュアデータの分割データを利用したセキュア計算の一手法であるGMW方式に従ったセキュア計算の処理例である。
また、図7は、セキュアデータの乗算値を、GMW方式に従ったセキュア計算によって算出する処理例を示す図である。
すなわち、ステップS102において、情報処理装置A,110、情報処理装置B,120の各々は、それぞれの装置が保持するセキュアデータである説明変数(x)や結果変数(y)の値を他装置に開示することなく、変換データのみを他装置に出力して、説明変数(x)と結果変数(y)の内積(t_s)をセキュア計算によって算出する。
次に、図10に示すフローのステップS103において、結果変数(y)保持装置である情報処理装置A110のパラメータ算出実行部111の繰り返し計算用入力値生成部133は、結果変数(y)の総和(t_0)を以下の(式14)に従って算出して、算出値を、データ送受信部134を介して情報処理装置B120のパラメータ算出実行部121に出力する。
ステップS103で実行する結果変数(y)の総和(t_0)の算出処理は、この図11中の(式d)の演算式302を実行する処理に相当する。
すなわち、結果変数(y)の変換データの生成処理や、変換データの外部装置への出力処理を行なうことなく、情報処理装置A110が内部に保持するセキュアデータである結果変数(y)を取得して、取得した結果変数(y)を、そのまま適用して情報処理装置A110内部の演算装置において、結果変数(y)の総和(t_0)を算出する処理として実行することができる。
なお、結果変数(y)の総和(t_0)はセキュアデータではないため、外部出力可能となる。
このような一般的な演算処理とすることで、セキュア計算を実行する場合に比較して、計算時間や計算資源を大幅に削減することが可能となる。
次に、ステップS104において、説明変数(x)保持装置である情報処理装置B120のパラメータ算出実行部121の繰り返し計算部144は、先に説明した(式1)で示されるロジスティック回帰モデルに従った式に対して、Newton−Raphson法による繰返し計算を実行して、ロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の更新および算出処理を実行する。
また、上記(式16)、(式17)に示す各記号の意味は、先に最尤法によるロジスティック回帰パラメータの推定処理として説明した(式6)〜(式11)に示す記号と同じ意味である。例えば、
L(β)=log{like(β)}
である。
ステップS104でも、図11に示すNewton−Raphson法による繰返し計算におけるマトリックスX、マトリックスV等の計算が行われる。これらのマトリックスにはセキュアデータとしての説明変数(x)が含まれる。
しかし、ステップS104の処理は、説明変数保持装置である情報処理装置B120において実行される。
すなわち、説明変数保持装置である情報処理装置B120は、外部にセキュアデータ(説明変数)を出力する必要がなく、ステップS101bにおいて入力した説明変数をそのまま利用してマトリックスX,Vを用いた計算を行うことができる。
しかし、この結果変数(y)に基づく値(d)を用いた計算結果、すなわち、図11に示す演算式302の演算結果(t_0)は、結果変数保持装置である情報処理装置A110がステップS103で生成し、情報処理装置B120に入力されている。
従って、情報処理装置B120は、この入力値(t_0)を図11(式d)に代入するのみでよく、図11に示す(式d)についてもセキュア計算として実行する必要がない。
次に、ステップS105において、説明変数(x)保持装置である情報処理装置B120のパラメータ算出実行部121の出力部145は、ステップS104において算出したロジスティック回帰パラメータβ_i(i=0,1,・・・,r)を、情報処理装置B120のデータ処理部に出力する。
確率p(x)は結果変数(y)の値に相当する。
結果変数(y)保持装置である情報処理装置A110は、ロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の算出を行っていない。
すなわち、先に説明した様に、以下の(式13)に従った内積(t_s)の算出処理のみである。
すなわち、例えば先に図6、図7を参照して説明したように、セキュアデータである説明変数(x)と結果変数(y)の分割データ等の変換データを生成して、生成した変換データを適用した演算を行うことになる。
すなわち、先に図8を参照して説明したNewton−Raphson法による繰返し計算において必要となるマトリックスX、マトリックスV等のセキュア計算は、不要となるため、パラメータ算出に必要となる計算量が大幅に削減され、演算コストの削減、処理の高速化が可能となる。
次に、図12と図13に示す2つのフローチャートを参照して、本開示のパラメータ算出処理による計算量の削減効果について説明する。
図12、および図13には、以下の2つのフローチャートを示している。
(1)Newton−Raphason法による繰り返し計算に適用する説明変数(x)と結果変数(y)のすべてを変換データとしたセキュア計算により実行する処理フロー
(2)説明変数(x)と結果変数(y)の内積(t_s)算出処理のみをセキュア計算として実行する本開示の処理フロー
まず、図12に示すフローチャートに従って、
「(1)Newton−Raphason法による繰り返し計算に適用する説明変数(x)と結果変数(y)のすべてを変換データとしたセキュア計算により実行する処理」
について説明する。
ステップS201a,bの処理は、入力部からのデータ入力処理である。
結果変数(y)保持装置である情報処理装置A110は、ステップS201aにおいて、情報処理装置A110の記憶部に保持された結果変数y_i(ただし、i=1,・・・,n)を記憶部から取得して情報処理装置A110のデータ処理部(演算実行部)に入力する。
一方、説明変数(x)保持装置である情報処理装置B120は、ステップS201bにおいて、情報処理装置B120の記憶部に保持された説明変数(xi_1,xi_2,・・・,xi_r)(ただし、i=1,・・・,n)を記憶部から取得してデータ処理部(演算実行部)に入力する。
ステップS202a,S202bの処理は、情報処理装置A110、情報処理装置B120のデータ処理部(演算実行部)におけるセキュアデータの変換データ生成処理である。
説明変数(x)と結果変数(y)はいずれも公開が制限されるセキュアデータであり、これらセキュアデータをロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の算出処理に直接、用いることはできない。
結果変数保持装置である情報処理装置A110は、ステップS202aにおいて、結果変数(y)の変換データを生成する。
一方、説明変数(x)保持装置である情報処理装置B120は、ステップS202bにおいて、説明変数(x)の変換データを生成する。
変換データとしては、例えばセキュアデータ(説明変数(x)、結果変数(y))の暗号化データや、図6、図7を参照して説明した分割データ等、様々な態様の変換データがある。
次のステップS203の処理は、先に図8を参照して説明したNewton−Raphson法(繰返し収束法)を用いた最尤法によるロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の算出処理である。
これらのセキュアデータ、すなわち、説明変数(x)と、結果変数(y)は、それぞれ2つの異なる情報処理装置が個別に保持しており、相互に公開できないデータである。
セキュア計算は、例えば図6、図7を参照して説明したように、セキュアデータの分割データを生成して、その一部を装置間で入出力する等、セキュアデータを個別に変換して装置間で入出力する処理が必要である。
従って、セキュア計算を行うためには、図8(式b2)に示すマトリックスXやマトリックスVに含まれる説明変数1つ1つについて、それぞれ分割データ等の変換データを生成して、装置間で入出力する等の処理が必要となる。
従って、セキュアデータの数が多い場合、図8に示す(式a)の繰り返し計算処理は、多大な計算時間や計算資源を要することになる。すなわち計算コストが増大してしまう。
すなわち、図12に示すフローのステップS203の処理には、多大な計算資源と計算時間を要することになる。
ステップS203におけるセキュア計算によるロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の算出が終了すると、次に、ステップS204において、2つの情報処理装置A、Bは、これらのパラメータをデータ処理部に出力する。
図8に示す(式d)、(式e)についても同様であり、これらの式の構成要素として含まれる説明変数(x)、結果変数(y)も全てセキュアデータである。
従って、これらの計算を行う場合には、セキュアデータである説明変数、および結果変数各々に対応する分割データ等の変換データを生成して計算処理を実行することが必要となる。
「(2)説明変数(x)と結果変数(y)の内積(t_s)算出処理のみをセキュア計算として実行する本開示の処理」
について説明する。
ステップS301a,bの処理は、入力部からのデータ入力処理である。
結果変数(y)保持装置である情報処理装置A110は、ステップS301aにおいて、情報処理装置A110の記憶部に保持された結果変数y_i(ただし、i=1,・・・,n)を記憶部から取得して情報処理装置A110のデータ処理部(演算実行部)に入力する。
一方、説明変数(x)保持装置である情報処理装置B120は、ステップS301bにおいて、情報処理装置B120の記憶部に保持された説明変数(xi_1,xi_2,・・・,xi_r)(ただし、i=1,・・・,n)を記憶部から取得してデータ処理部(演算実行部)に入力する。
ステップS302a,S302bの処理は、情報処理装置A110、情報処理装置B120のデータ処理部(演算実行部)におけるセキュアデータの変換データ生成処理である。
説明変数(x)と結果変数(y)はいずれも公開が制限されるセキュアデータであり、これらセキュアデータをロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の算出処理に直接、用いることはできない。
結果変数保持装置である情報処理装置A110は、ステップS302aにおいて、結果変数(y)の変換データを生成する。
一方、説明変数(x)保持装置である情報処理装置B120は、ステップS302bにおいて、説明変数(x)の変換データを生成する。
変換データとしては、例えばセキュアデータ(説明変数(x)、結果変数(y))の暗号化データや、図6、図7を参照して説明した分割データ等、様々な態様の変換データがある。
ステップS303の処理は、情報処理装置A110、情報処理装置B120のデータ処理部(演算実行部)において、説明変数(x)と結果変数(y)の内積(t_s)を算出する処理である。
この処理は、先に説明した図10のフローにおけるステップS102の処理に対応する処理である。
先に説明したように、以下の(式12)に従って、説明変数(x)と結果変数(y)の内積(t_s)を算出する。
図13に示すフローにおいて、セキュアデータ(説明変数(x),結果変数(y))の変換データを利用したセキュア計算は、このステップS303の処理のみとなる。
先に、図11を参照して説明した(式e)の一部の計算処理のみが、セキュア計算として実行されることになる。
しかし、この図13に示すフローに従った処理では、図11に示す(式e)の演算式301の算出のみをセキュア計算として実行するのみである。
次のステップS304は、結果変数(y)保持装置である情報処理装置A110が、結果変数(y)の総和(t_0)を以下の(式14)に従って算出して、算出値を、データ送受信部134を介して情報処理装置B120のパラメータ算出実行部121に出力する処理である。
ステップS304で実行する結果変数(y)の総和(t_0)の算出処理は、この図11中の(式d)の演算式302を実行する処理に相当する。
すなわち、結果変数(y)の変換データの生成処理や、変換データの外部装置への出力処理を行なうことなく、情報処理装置A110が内部に保持するセキュアデータである結果変数(y)を取得して、取得した結果変数(y)を、そのまま適用して情報処理装置A110内部の演算装置において、結果変数(y)の総和(t_0)を算出する処理として実行することができる。
次に、ステップS305において、説明変数(x)保持装置である情報処理装置B120は、先に説明した(式1)で示されるロジスティック回帰モデルに従った式に対して、図8、図11を参照して説明したNewton−Raphson法による繰返し計算を実行して、ロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の更新および算出処理を実行する。
次に、ステップS306において、説明変数(x)保持装置である情報処理装置B120は、ステップS305において算出したロジスティック回帰パラメータβ_i(i=0,1,・・・,r)を、情報処理装置B120のデータ処理部に出力する。
なお、ロジスティック回帰パラメータβ_i(i=0,1,・・・,r)の算出を実行した説明変数(x)保持装置である情報処理装置B120は、結果変数(y)保持装置である情報処理装置A110からの要求に応じて、算出したパラメータを情報処理装置A110に提供する。ロジスティック回帰パラメータβ_i(i=0,1,・・・,r)自体は、セキュアデータではないため、各装置間での入出力処理や、共有処理が許容される。
しかし、ステップS305の処理は、説明変数保持装置である情報処理装置Bにおいて実行されるため、外部にセキュアデータ(説明変数)を出力する必要がなく、ステップS101bにおいて入力した説明変数をそのまま利用してマトリックスX,Vを用いた計算を行うことができる。
しかし、この結果変数(y)に基づく値(d)を用いた計算結果、すなわち、図11に示す演算式302の演算結果を、結果変数保持装置である情報処理装置AがステップS304で生成し、情報処理装置Bは、この演算結果を入力してそのまま利用可能であるため、図11に示す(式d)についてもセキュア計算として実行する必要がない。
最後に、上述した実施例に従った処理を実行する情報処理装置のハードウェア構成例について、図14を参照して説明する。
CPU(Central Processing Unit)401は、ROM(Read Only Memory)402、または記憶部408に記憶されているプログラムに従って各種の処理を実行する制御部やデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)403には、CPU401が実行するプログラムやデータなどが記憶される。これらのCPU401、ROM402、およびRAM403は、バス404により相互に接続されている。
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
(1) 各標本に対応付けられた2種類の異なるセキュアデータである第1の変数と第2の変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
第1の変数と第2の変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行して、前記ロジスティック回帰パラメータを算出する情報処理装置。
Newton−Raphson法(繰返し収束法)を用いた最尤法に従って、ロジスティック回帰パラメータを算出する(1)に記載の情報処理装置。
前記第2の変数は、結果変数である(1)に記載の情報処理装置。
説明変数と結果変数との内積(t_s)の算出処理を、説明変数の分割データと、結果変数の分割データを適用したセキュア計算により算出する(3)に記載の情報処理装置。
前記説明変数の保持装置であり、
前記データ処理部は、
前記Newton−Raphson法(繰返し収束法)を用いた最尤法に従ったロジスティック回帰パラメータ算出処理において、前記内積算出処理以外の説明変数を適用した計算処理をセキュア計算ではなく、説明変数をそのまま適用した計算処理として実行する(3)または(4)いずれかに記載の情報処理装置。
説明変数の保持装置であり、
前記データ処理部は、
結果変数保持装置から、結果変数を適用した計算結果を入力し、入力した結果変数適用計算結果を利用してロジスティック回帰パラメータを算出する(3)〜(5)いずれかに記載の情報処理装置。
説明変数の保持装置であり、
前記データ処理部は、
算出したロジスティック回帰パラメータを結果変数保持装置に出力する(3)〜(7)いずれかに記載の情報処理装置。
各標本に対応付けられたセキュアデータである結果変数を保持する結果変数保持装置を有する情報処理システムであり、
前記結果変数保持装置は、
各標本に対応付けられた結果変数の総和(t_0)を算出して前記説明変数保持装置に出力し、
前記説明変数保持装置は、
結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
算出した内積(t_s)、および結果変数保持装置から入力した結果変数の総和(t_0)を適用してロジスティック回帰パラメータを算出する情報処理システム。
Newton−Raphson法(繰返し収束法)を用いた最尤法に従って、ロジスティック回帰パラメータを算出する(9)に記載の情報処理システム。
説明変数と結果変数との内積(t_s)の算出処理を、説明変数の分割データと、結果変数の分割データを適用したセキュア計算により算出する(9)または(10)に記載の情報処理システム。
前記Newton−Raphson法(繰返し収束法)を用いた最尤法に従ったロジスティック回帰パラメータ算出処理において、前記内積算出処理以外の説明変数を適用した計算処理をセキュア計算ではなく、説明変数をそのまま適用した計算処理として実行する(9)〜(11)いずれかに記載の情報処理システム。
算出したロジスティック回帰パラメータを結果変数保持装置に出力する(9)〜(12)いずれかに記載の情報処理システム。
前記情報処理装置は、
各標本に対応付けられた2種類の異なるセキュアデータである第1の変数と第2の変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
第1の変数と第2の変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行して、前記ロジスティック回帰パラメータを算出する情報処理方法。
各標本に対応付けられたセキュアデータである結果変数を保持する結果変数保持装置を有する情報処理システムにおいて実行する情報処理方法であり、
前記結果変数保持装置は、
各標本に対応付けられた結果変数の総和(t_0)を算出して前記説明変数保持装置に出力し、
前記説明変数保持装置は、
結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
算出した内積(t_s)、および結果変数保持装置から入力した結果変数の総和(t_0)を適用してロジスティック回帰パラメータを算出する情報処理方法。
前記情報処理装置は、
各標本に対応付けられた2種類の異なるセキュアデータである第1の変数と第2の変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
第1の変数と第2の変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出する処理と、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行させて、前記ロジスティック回帰パラメータ算出処理を実行させるプログラム。
具体的には、各標本に対応のセキュアデータである説明変数と結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを算出する。データ処理部は、説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、内積算出処理以外の計算処理を、変換データを用いない計算処理として実行してNewton−Raphson法(繰返し収束法)を用いた最尤法に従って、ロジスティック回帰パラメータを算出する。
本構成により、高速かつ効率的なロジスティック回帰モデルのパラメータ算出処理が実現される。
111 パラメータ算出実行部
112 内積計算部
113 繰り返し計算用入力値生成部
114 データ送受信部
120 情報処理装置B
121 入力部
122 内積計算部
123 データ送受信部
124 繰り返し計算部
125 出力部
401 CPU
402 ROM
403 RAM
404 バス
405 入出力インタフェース
406 入力部
407 出力部
408 記憶部
409 通信部
410 ドライブ
411 リムーバブルメディア
Claims (13)
- 各標本に対応付けられた2種類の異なるセキュアデータである説明変数と結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを、Newton−Raphson法(繰返し収束法)を用いた最尤法に従って算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行して、前記ロジスティック回帰パラメータを算出する情報処理装置。 - 前記データ処理部は、
説明変数と結果変数との内積(t_s)の算出処理を、説明変数の分割データと、結果変数の分割データを適用したセキュア計算により算出する請求項1に記載の情報処理装置。 - 前記情報処理装置は、
前記説明変数の保持装置であり、
前記データ処理部は、
前記Newton−Raphson法(繰返し収束法)を用いた最尤法に従ったロジスティック回帰パラメータ算出処理において、前記内積算出処理以外の説明変数を適用した計算処理をセキュア計算ではなく、説明変数をそのまま適用した計算処理として実行する請求項1に記載の情報処理装置。 - 前記情報処理装置は、
説明変数の保持装置であり、
前記データ処理部は、
結果変数保持装置から、結果変数を適用した計算結果を入力し、入力した結果変数適用計算結果を利用してロジスティック回帰パラメータを算出する請求項1に記載の情報処理装置。 - 前記結果変数適用計算結果は、結果変数の総和(t_0)である請求項4に記載の情報処理装置。
- 前記情報処理装置は、
説明変数の保持装置であり、
前記データ処理部は、
算出したロジスティック回帰パラメータを結果変数保持装置に出力する請求項1に記載の情報処理装置。 - 各標本に対応付けられたセキュアデータである説明変数を保持する説明変数保持装置と、
各標本に対応付けられたセキュアデータである結果変数を保持する結果変数保持装置を有する情報処理システムであり、
前記結果変数保持装置は、
各標本に対応付けられた結果変数の総和(t_0)を算出して前記説明変数保持装置に出力し、
前記説明変数保持装置は、
結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを、Newton−Raphson法(繰返し収束法)を用いた最尤法に従って算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行し、
算出した内積(t_s)、および結果変数保持装置から入力した結果変数の総和(t_0)を適用してロジスティック回帰パラメータを算出する情報処理システム。 - 前記データ処理部は、
説明変数と結果変数との内積(t_s)の算出処理を、説明変数の分割データと、結果変数の分割データを適用したセキュア計算により算出する請求項7に記載の情報処理システム。 - 前記データ処理部は、
前記Newton−Raphson法(繰返し収束法)を用いた最尤法に従ったロジスティック回帰パラメータ算出処理において、前記内積算出処理以外の説明変数を適用した計算処理をセキュア計算ではなく、説明変数をそのまま適用した計算処理として実行する請求項7に記載の情報処理システム。 - 前記説明変数保持装置は、
算出したロジスティック回帰パラメータを結果変数保持装置に出力する請求項7に記載の情報処理システム。 - 情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、
各標本に対応付けられた2種類の異なるセキュアデータである説明変数と結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを、Newton−Raphson法(繰返し収束法)を用いた最尤法に従って算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行して、前記ロジスティック回帰パラメータを算出する情報処理方法。 - 各標本に対応付けられたセキュアデータである説明変数を保持する説明変数保持装置と、
各標本に対応付けられたセキュアデータである結果変数を保持する結果変数保持装置を有する情報処理システムにおいて実行する情報処理方法であり、
前記結果変数保持装置は、
各標本に対応付けられた結果変数の総和(t_0)を算出して前記説明変数保持装置に出力し、
前記説明変数保持装置は、
結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを、Newton−Raphson法(繰返し収束法)を用いた最尤法に従って算出するデータ処理部を有し、
前記データ処理部は、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出し、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行し、
算出した内積(t_s)、および結果変数保持装置から入力した結果変数の総和(t_0)を適用してロジスティック回帰パラメータを算出する情報処理方法。 - 情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、
各標本に対応付けられた2種類の異なるセキュアデータである説明変数と結果変数との関係性を示すロジスティック回帰モデルのパラメータであるロジスティック回帰パラメータを、Newton−Raphson法(繰返し収束法)を用いた最尤法に従って算出するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
説明変数と結果変数との内積(t_s)を、各変数の変換データを適用した計算処理であるセキュア計算を適用して算出する処理と、
前記内積算出処理以外の計算処理を、変換データを用いない計算処理として実行させて、前記ロジスティック回帰パラメータ算出処理を実行させるプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016001677 | 2016-01-07 | ||
JP2016001677 | 2016-01-07 | ||
PCT/JP2016/085115 WO2017119211A1 (ja) | 2016-01-07 | 2016-11-28 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2017119211A1 JPWO2017119211A1 (ja) | 2018-10-25 |
JP6673367B2 true JP6673367B2 (ja) | 2020-03-25 |
Family
ID=59274135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017560052A Active JP6673367B2 (ja) | 2016-01-07 | 2016-11-28 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20180366227A1 (ja) |
EP (1) | EP3401828B1 (ja) |
JP (1) | JP6673367B2 (ja) |
WO (1) | WO2017119211A1 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019164722A (ja) * | 2018-03-20 | 2019-09-26 | ヤフー株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
JP7159717B2 (ja) * | 2018-09-10 | 2022-10-25 | 日本電信電話株式会社 | 秘密統計処理システム、方法、統計処理装置及びプログラム |
CN112805769B (zh) * | 2018-10-04 | 2023-11-07 | 日本电信电话株式会社 | 秘密s型函数计算系统、装置、方法及记录介质 |
AU2019352310B2 (en) * | 2018-10-04 | 2022-07-28 | Nippon Telegraph And Telephone Corporation | Secret sigmoid function calculation system, secret logistic regression calculation system, secret sigmoid function calculation apparatus, secret logistic regression calculation apparatus, secret sigmoid function calculation method, secret logistic regression calculation method and program |
PL3602379T3 (pl) * | 2019-01-11 | 2021-08-02 | Advanced New Technologies Co., Ltd. | Rozproszona struktura ramowa szkoleniowa wielostronnego modelu bezpieczeństwa do ochrony prywatności |
SG11201909946UA (en) | 2019-01-11 | 2019-11-28 | Alibaba Group Holding Ltd | Logistic regression modeling scheme using secrete sharing |
US11190336B2 (en) * | 2019-05-10 | 2021-11-30 | Sap Se | Privacy-preserving benchmarking with interval statistics reducing leakage |
WO2021002008A1 (ja) * | 2019-07-04 | 2021-01-07 | 日本電信電話株式会社 | 学習装置、予測装置、学習方法、予測方法、及びプログラム |
JP7318721B2 (ja) * | 2019-10-10 | 2023-08-01 | 日本電信電話株式会社 | 近似関数計算装置、方法及びプログラム |
CN111611545B (zh) * | 2020-05-18 | 2023-06-06 | 国网江苏省电力有限公司电力科学研究院 | 基于主成分分析和logistic回归的电缆老化状态评估方法和装置 |
AU2020472128B2 (en) * | 2020-10-16 | 2023-11-30 | Nippon Telegraph And Telephone Corporation | Parameter estimation device, parameter estimation system, parameter estimation method, and program |
CN114692133A (zh) * | 2021-01-22 | 2022-07-01 | 支付宝(杭州)信息技术有限公司 | 一种程序运行方法及系统 |
CN112836211A (zh) * | 2021-01-22 | 2021-05-25 | 支付宝(杭州)信息技术有限公司 | 一种程序运行方法及系统 |
CN112818337A (zh) * | 2021-01-22 | 2021-05-18 | 支付宝(杭州)信息技术有限公司 | 一种程序运行方法及系统 |
CN112836210A (zh) * | 2021-01-22 | 2021-05-25 | 支付宝(杭州)信息技术有限公司 | 一种程序运行方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5047198B2 (ja) | 2008-01-21 | 2012-10-10 | 日本電信電話株式会社 | 秘密計算システム、秘密計算方法、秘密計算装置、検証装置、およびプログラム |
JP5479838B2 (ja) | 2009-10-06 | 2014-04-23 | 古河電工パワーシステムズ株式会社 | 電線用カバーおよび電線とカバーの防水構造 |
JP5772558B2 (ja) * | 2011-12-12 | 2015-09-02 | 富士通株式会社 | 情報処理方法、プログラム及び装置 |
JP2014206696A (ja) * | 2013-04-15 | 2014-10-30 | 株式会社インテック | データ秘匿型内積計算システム、方法、及びプログラム |
JP2015194959A (ja) * | 2014-03-31 | 2015-11-05 | ソニー株式会社 | 情報処理装置、情報処理方法及びプログラム |
-
2016
- 2016-11-28 US US16/063,325 patent/US20180366227A1/en not_active Abandoned
- 2016-11-28 WO PCT/JP2016/085115 patent/WO2017119211A1/ja active Application Filing
- 2016-11-28 JP JP2017560052A patent/JP6673367B2/ja active Active
- 2016-11-28 EP EP16883711.0A patent/EP3401828B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2017119211A1 (ja) | 2017-07-13 |
EP3401828A1 (en) | 2018-11-14 |
US20180366227A1 (en) | 2018-12-20 |
EP3401828B1 (en) | 2020-05-06 |
EP3401828A4 (en) | 2019-01-02 |
JPWO2017119211A1 (ja) | 2018-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6673367B2 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
US11902413B2 (en) | Secure machine learning analytics using homomorphic encryption | |
Rahulamathavan et al. | Privacy-preserving multi-class support vector machine for outsourcing the data classification in cloud | |
Bansal et al. | Privacy preserving back-propagation neural network learning over arbitrarily partitioned data | |
Fremdt et al. | Testing the equality of covariance operators in functional samples | |
Masuda et al. | Self-exciting point process modeling of conversation event sequences | |
CN110990871A (zh) | 基于人工智能的机器学习模型训练方法、预测方法及装置 | |
WO2022247620A1 (zh) | 保护隐私的确定业务数据特征有效值的方法及装置 | |
Kadison et al. | A note on derivations of Murray–von Neumann algebras | |
Aljably et al. | Anomaly detection over differential preserved privacy in online social networks | |
Tanneru et al. | Quantifying uncertainty in natural language explanations of large language models | |
Khan et al. | Vertical federated learning: A structured literature review | |
WO2023100720A1 (ja) | 機械学習装置、機械学習システム、機械学習方法、および機械学習プログラム | |
JP2018055057A (ja) | データ撹乱装置、方法及びプログラム | |
Sun et al. | Differentially private AUC computation in vertical federated learning | |
Achar | Data Privacy-Preservation: A Method of Machine Learning | |
JP6978385B2 (ja) | 匿名化装置、匿名化方法及び匿名化プログラム | |
Hu et al. | Inferring weighted directed association network from multivariate time series with a synthetic method of partial symbolic transfer entropy spectrum and granger causality | |
Guo et al. | A privacy preserving Markov model for sequence classification | |
Ullah et al. | Bayesian analysis of the weibull paired comparison model using numerical approximation | |
Darwish et al. | Modelling the privacy impact of external knowledge for sensor data in the industrial internet of things | |
Ponte et al. | Where’s Waldo? A framework for quantifying the privacy-utility trade-off in marketing applications | |
Su et al. | Inferring infection rate based on observations in complex networks | |
Nguyen Duy et al. | FedMSPC: A Federated Multivariate Statistical Process Control Framework For Privacy-Preserving Process Modeling Across Company Borders | |
Baruch et al. | Fighting COVID-19 in the Dark: Methodology for Improved Inference Using Homomorphically Encrypted DNN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191002 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200121 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200217 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6673367 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |