JPWO2020071441A1 - 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム - Google Patents
秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム Download PDFInfo
- Publication number
- JPWO2020071441A1 JPWO2020071441A1 JP2020550513A JP2020550513A JPWO2020071441A1 JP WO2020071441 A1 JPWO2020071441 A1 JP WO2020071441A1 JP 2020550513 A JP2020550513 A JP 2020550513A JP 2020550513 A JP2020550513 A JP 2020550513A JP WO2020071441 A1 JPWO2020071441 A1 JP WO2020071441A1
- Authority
- JP
- Japan
- Prior art keywords
- share
- secret
- grad
- eta
- bit
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- 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
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
Abstract
Description
(参考非特許文献1:千田浩司,濱田浩気,五十嵐大,高橋克巳,“軽量検証可能3パーティ秘匿関数計算の再考”,In CSS,2010.)
[秘匿化]
[[x]]をxを秘密分散で秘匿した値(以下、xのシェアという)とする。秘密分散方法には、任意の方法を用いることができる。例えば、GF(261-1)上のShamir秘密分散、Z2上の複製秘密分散を用いることができる。
(参考非特許文献2:Shamir, A., “How to share a secret”, Communications of theACM, Vol.22, No.11, pp.612-613, 1979.)
秘密計算による加算[[x]]+[[y]]は、[[x]], [[y]]を入力とし、[[x+y]]を出力する。秘密計算による乗算[[x]]×[[y]](mul([[x]], [[y]]))は、[[x]], [[y]]を入力とし、[[x×y]]を出力する。
(参考非特許文献3:Ben-Or, M., Goldwasser, S. and Wigderson, A., “Completenesstheorems for non-cryptographic fault-tolerant distributed computation”, Proceedings of the twentieth annual ACM symposium on Theory of computing, ACM, pp. 1-10, 1988.)
(参考非特許文献4:Gennaro, R., Rabin, M. O. and Rabin, T., “Simplied VSS and fast-track multiparty computations with applications to threshold cryptography”, Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing, ACM, pp.101-111, 1998.)
秘密計算hpsum([[x→]], [[y→]])は、[[x→]], [[y→]](ただし、x→=(x0, …, xn-1), y→=(y0, …, yn-1))を入力とし、[[Σj=0 n-1xjyj]]を出力する。つまり、2つのベクトルの第j要素の積の和を出力する。
(秘密一括写像)
図1に示すような単調増加関数であるシグモイド関数σ(x)を秘密計算するために、本発明の実施形態では、秘密一括写像を用いる。以下、秘密一括写像について説明する。
ここでは、秘密一括写像を用いてシグモイド関数を秘密計算するアルゴリズム(秘密シグモイド関数計算アルゴリズム)について説明する。例えば、参考非特許文献5に記載の秘密一括写像のアルゴリズムを用いることができる。
(参考非特許文献5:濱田浩気, 五十嵐大, 千田浩司, “秘匿計算上の一括写像アルゴリズム”, 電子情報通信学会論文誌A, Vol.J96-A, No.4, pp.157-165, 2013.)
つまり、秘密シグモイド関数計算アルゴリズムは、ベクトルx→=(x0, …, xm-1)のシェア[[x→]]=([[x0]], …, [[xm-1]])を入力とし、シグモイド関数σ(x)の定義域を表すパラメータ(a0, …, ak-1)と値域を表すパラメータ(σ(a0), …, σ(ak-1))(ただし、kは1以上の整数、a0, …, ak-1はa0<…<ak-1を満たす実数)により定義される秘密一括写像mapσを用いて、0≦i≦m-1に対して、aj≦xi<aj+1となるjをf(i)とし、([[σ(af(0))]], …, [[σ(af(m-1))]])を出力する。
ロジスティック回帰分析のモデルf(x→)(ただし、x→=(x1, …, xn))は、n+1次元ベクトルw→=(w0, …, wn)をモデルパラメータとして、次式により表される。
(入力)説明変数のデータxi →、目的変数のデータyi(ただし、0≦i≦m-1、mは1以上の整数であり、学習データの数を表す)
なお、学習率η及び学習回数Tについては、適切な値が設定されるものとする。
ここでは、ロジスティック回帰モデルのモデルパラメータを秘密計算するアルゴリズム(秘密ロジスティック回帰計算アルゴリズム)について説明する。秘密ロジスティック回帰計算アルゴリズムは、説明変数のデータxi →のシェア[[xi →]]、目的変数のデータyiのシェア[[yi]]を入力とし、公開値であるパラメータη, Tを用いて、モデルパラメータw→のシェア[[w→]]を計算し、出力する。具体的な手順を図2に示す。図2をみれば、ステップ4〜ステップ23では式(3)に従い[[w→]]を計算していることがわかる。また、ステップ10において、秘密シグモイド関数計算アルゴリズムSigmoidを用いてシグモイド関数の値を求めていることもわかる。
上述した通り、秘密一括写像では精度を任意に設定することができるが、値域や定義域のサイズに比例するオーバーヘッドがかかるため、より効率よくシグモイド関数を秘密計算するためには精度とオーバーヘッドのバランスを考える必要がある。例えば、精度を10-4程度に設定すると、平文と比較しても定義域や値域のサイズを少なく抑えつつ、精度よく計算することができる。
以下、図3〜図5を参照して秘密シグモイド関数計算システム10について説明する。図3は、秘密シグモイド関数計算システム10の構成を示すブロック図である。秘密シグモイド関数計算システム10は、W個(Wは3以上の所定の整数)の秘密シグモイド関数計算装置1001、…、100Wを含む。秘密シグモイド関数計算装置1001、…、100Wは、ネットワーク800に接続しており、相互に通信可能である。ネットワーク800は、例えば、インターネットなどの通信網あるいは同報通信路などでよい。図4は、秘密シグモイド関数計算装置100i(1≦i≦W)の構成を示すブロック図である。図5は、秘密シグモイド関数計算システム10の動作を示すフローチャートである。
以下、図6〜図8を参照して秘密ロジスティック回帰計算システム20について説明する。図6は、秘密ロジスティック回帰計算システム20の構成を示すブロック図である。秘密ロジスティック回帰計算システム20は、W'個(W'は3以上の所定の整数)の秘密ロジスティック回帰計算装置2001、…、200W'を含む。秘密ロジスティック回帰計算装置2001、…、200W'は、ネットワーク800に接続しており、相互に通信可能である。ネットワーク800は、例えば、インターネットなどの通信網あるいは同報通信路などでよい。図7は、秘密ロジスティック回帰計算装置200i(1≦i≦W')の構成を示すブロック図である。図8は、秘密ロジスティック回帰計算システム20の動作を示すフローチャートである。
秘密一括写像と右シフトを用いてロジスティック回帰分析を行ってもよい。秘密一括写像には数値精度の調節をできる性質がある。しかし、より高い精度で計算したい場合、及び/又は、大きな学習データを用いる場合は、右シフトを用いて精度の調節を更に行ってもよい。なお、単に右シフトと書いた場合には、算術右シフトを表す。
η/mを2べきで近似し、右シフト(rshift)に置き換えてもよい。第2実施形態の変形例1では、学習率ηを高い精度にすることで細やかな設定が可能である。しかし、第2実施形態の変形例1では、右シフト演算が2回必要であり、b_y+b,x+b_η,b_tmp+b_m+Hが大きな値になりやすいため、計算の効率が落ちる可能性がある。このため、第2実施形態の変形例2では、ηとの乗算と1/mとの乗算をまとめてη/mとして処理することで処理回数を減らし、計算効率を向上させる。
第2実施形態のロジスティック回帰を行う際に、右シフトを用いてデータを秘匿したまま正規化を行ってもよい。例えば身長と年齢などの値域の異なるデータを全て0から1などの特定の範囲に収まるようにする前処理である正規化は、機械学習全般でよく用いられている。そのため、秘密計算上の機械学習を実運用可能なものにするためには、正規化を秘密計算上でできる必要がある。
第2実施形態のロジスティック回帰を行う際に、Nesterov Accelerated Gradient(NAG)法を適用してもよい。単純な勾配降下法を用いてパラメータ学習を行うと学習効率が良くないため、実際には学習効率を上げるために最適化手法を取り入れる場合が多い。しかし、多くの最適化手法は除算などの秘密計算が苦手とする計算を含むため、秘密計算でパラメータ学習を行う際に最適化手法を取り入れることは容易ではない。そのような状況の中で、NAG法は、加減乗算のみで実現できる最適化手法であり、低コストで秘密計算に取り入れることができる。
f(xi →)=σ(w→・(1,xi →))
wj,t+1=wj,t-vj,t+1
f(xi →)=σ(θ→・(1,xi →))
θ→=w→-αv→
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
(参考非特許文献2:Shamir, A., “How to share a secret”, Communications of the ACM, Vol.22, No.11, pp.612-613, 1979.)
(参考非特許文献3:Ben-Or, M., Goldwasser, S. and Wigderson, A., “Completeness theorems for non-cryptographic fault-tolerant distributed computation”, Proceedings of the twentieth annual ACM symposium on Theory of computing, ACM, pp. 1-10, 1988.)
(参考非特許文献4:Gennaro, R., Rabin, M. O. and Rabin, T., “Simplified VSS and fast-track multiparty computations with applications to threshold cryptography”, Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing, ACM, pp.101-111, 1998.)
max(a,b)は、aとbの大きい方の値を示す。上記の計算で得たシフト量Sを用いて以下の計算を行うと、0≦^xi≦1となるように正規化できる。
Claims (13)
- mapσをシグモイド関数σ(x)の定義域を表すパラメータ(a0, …, ak-1)と値域を表すパラメータ(σ(a0), …, σ(ak-1)) (ただし、kは1以上の整数、a0, …, ak-1はa0<…<ak-1を満たす実数)により定義される秘密一括写像とし、
3個以上の秘密シグモイド関数計算装置で構成され、入力ベクトルx→=(x0, …, xm-1)のシェア[[x→]]=([[x0]], …, [[xm-1]])から、入力ベクトルx→に対するシグモイド関数の値y→=(y0, …, ym-1)のシェア[[y→]]=([[y0]], …, [[ym-1]])を計算する秘密シグモイド関数計算システムであって、
前記シェア[[x→]]から、mapσ([[x→]])=([[σ(af(0))]], …, [[σ(af(m-1))]])(ただし、f(i)(0≦i≦m-1)は、aj≦xi<aj+1となるj)を計算し、([[y0]], …, [[ym-1]])=([[σ(af(0))]], …, [[σ(af(m-1))]])により、前記シェア[[y→]]を計算する秘密一括写像計算手段と
を含む秘密シグモイド関数計算システム。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項1に記載の秘密シグモイド関数計算システムを用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
3個以上の秘密ロジスティック回帰計算装置で構成され、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算システムであって、
モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化手段と、
i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算手段と、
j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[e]]から、[[wj,t+1]]=[[wj,t]]-η(1/m)[[e]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新手段と
を含む秘密ロジスティック回帰計算システム。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項1に記載の秘密シグモイド関数計算システムを用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
秘密計算の対象となる任意の値をpとし、pの精度をb_p[bit]と表記した場合には、pのシェア[[p]]は実際には[[p×2b_p]]という固定小数点数のシェアであることを表し、
秘密計算の対象となる任意のベクトルをq→とし、q→の要素をqiとし、q→の精度をb_q[bit]と表記した場合には、q→のシェア[[q→]]は実際には[[qi×2b_q]]という固定小数点数のシェアにより構成されることを表し、
w→,w0 →,wt →,wt+1 →,eta_grad_ave_shiftの精度をb_w[bit]と表記し、xi →(0≦i≦m-1)の精度をb_x[bit]と表記し、yi(0≦i≦m-1),ci(0≦i≦m-1),di(0≦i≦m-1)の精度をb_y[bit]と表記し、ηの精度をb_η[bit]と表記し、学習データ数の逆数1/mの精度をb_m+H[bit]と表記し、bi(0≦i≦m-1)の精度をb_w+b_x[bit]と表記し、eの精度をb_y+b_x[bit]と表記し、eta_gradの精度をb_y+b_x+b_η[bit]と表記し、eta_grad_shiftの精度をb_tmp[bit]と表記し、eta_grad_aveの精度をb_tmp+b_m+H[bit]と表記し、
b_w,b_x,b_y,b_η,b_m,H,b_tmpを予め定められた正の整数とし、
rshift(a,b)は、aという値をb[bit]だけ算術右シフトすることを表わすとして、
3個以上の秘密ロジスティック回帰計算装置で構成され、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算システムであって、
モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化手段と、
i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算手段と、
j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記η及び前記[[e]]から、[[eta_grad]]=η[[e]]により、[[eta_grad]]を計算し、
前記[[eta_grad]]から、[[eta_grad_shift]]=rshift([[eta_grad]], b_y+b_x+b_η-b_tmp)により、[[eta_grad_shift]]を計算し、
前記[[eta_grad_shift]]から、[[eta_grad_ave]]=(1/m)[[eta_grad_shift]]により、[[eta_grad_ave]]を計算し、
前記[[eta_grad_ave]]から、[[eta_grad_ave_shift]]=rshift([[eta_grad_ave]], b_tmp+b_m+H-b_w)により、[[eta_grad_ave_shift]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[eta_grad_ave_shift]]から、[[wj,t+1]]=[[wj,t]]-[[eta_grad_ave_shift]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新手段と
を含む秘密ロジスティック回帰計算システム。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項1に記載の秘密シグモイド関数計算システムを用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
秘密計算の対象となる任意の値をpとし、pの精度をb_p[bit]と表記した場合には、pのシェア[[p]]は実際には[[p×2b_p]]という固定小数点数のシェアであることを表し、
秘密計算の対象となる任意のベクトルをq→とし、q→の要素をqiとし、q→の精度をb_q[bit]と表記した場合には、q→のシェア[[q→]]は実際には[[qi×2b_q]]という固定小数点数のシェアにより構成されることを表し、
w→,w0 →,wt →,wt+1 →,eta_grad_aveの精度をb_w[bit]と表記し、xi →(0≦i≦m-1)の精度をb_x[bit]と表記し、yi(0≦i≦m-1),ci(0≦i≦m-1),di(0≦i≦m-1)の精度をb_y[bit]と表記し、ηの精度をb_η[bit]と表記し、bi(0≦i≦m-1)の精度をb_w+b_x[bit]と表記し、eの精度をb_y+b_x[bit]と表記し、
b_w,b_x,b_y,b_ηを予め定められた正の整数とし、
rshift(a,b)は、aという値をb[bit]だけ算術右シフトすることを表わすとし、
floorは切り捨てを表す関数とし、X=-(floor(log2(η/m)))として、
3個以上の秘密ロジスティック回帰計算装置で構成され、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算システムであって、
モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化手段と、
i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算手段と、
j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記[[e]]から、[[eta_grad_ave]]=rshift([[e]], X+b_y+b_x-b_w)により、[[eta_grad_ave]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[eta_grad_ave]]から、[[wj,t+1]]=[[wj,t]]-[[eta_grad_ave]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新手段と
を含む秘密ロジスティック回帰計算システム。 - mapσをシグモイド関数σ(x)の定義域を表すパラメータ(a0, …, ak-1)と値域を表すパラメータ(σ(a0), …, σ(ak-1)) (ただし、kは1以上の整数、a0, …, ak-1はa0<…<ak-1を満たす実数)により定義される秘密一括写像とし、
入力ベクトルx→=(x0, …, xm-1)のシェア[[x→]]=([[x0]], …, [[xm-1]])から、入力ベクトルx→に対するシグモイド関数の値y→=(y0, …, ym-1)のシェア[[y→]]=([[y0]], …, [[ym-1]])を計算する、3個以上の秘密シグモイド関数計算装置で構成される秘密シグモイド関数計算システムの中の秘密シグモイド関数計算装置であって、
前記シェア[[x→]]から、mapσ([[x→]])=([[σ(af(0))]], …, [[σ(af(m-1))]])(ただし、f(i)(0≦i≦m-1)は、aj≦xi<aj+1となるj)を計算し、([[y0]], …, [[ym-1]])=([[σ(af(0))]], …, [[σ(af(m-1))]])により、前記シェア[[y→]]を計算するための秘密一括写像計算部と
を含む秘密シグモイド関数計算装置。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を、3個以上の、請求項5に記載の秘密シグモイド関数計算装置で構成される秘密シグモイド関数計算システムを用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する、3個以上の秘密ロジスティック回帰計算装置で構成される秘密ロジスティック回帰計算システムの中の秘密ロジスティック回帰計算装置であって、
モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定するための初期化部と、
i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算するための誤差計算部と、
j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[e]]から、[[wj,t+1]]=[[wj,t]]-η(1/m)[[e]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するためのモデルパラメータ更新部と
を含む秘密ロジスティック回帰計算装置。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項5に記載の秘密シグモイド関数計算システムを用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
秘密計算の対象となる任意の値をpとし、pの精度をb_p[bit]と表記した場合には、pのシェア[[p]]は実際には[[p×2b_p]]という固定小数点数のシェアであることを表し、
秘密計算の対象となる任意のベクトルをq→とし、q→の要素をqiとし、q→の精度をb_q[bit]と表記した場合には、q→のシェア[[q→]]は実際には[[qi×2b_q]]という固定小数点数のシェアにより構成されることを表し、
w→,w0 →,wt →,wt+1 →,eta_grad_ave_shiftの精度をb_w[bit]と表記し、xi →(0≦i≦m-1)の精度をb_x[bit]と表記し、yi(0≦i≦m-1),ci(0≦i≦m-1),di(0≦i≦m-1)の精度をb_y[bit]と表記し、ηの精度をb_η[bit]と表記し、学習データ数の逆数1/mの精度をb_m+H[bit]と表記し、bi(0≦i≦m-1)の精度をb_w+b_x[bit]と表記し、eの精度をb_y+b_x[bit]と表記し、eta_gradの精度をb_y+b_x+b_η[bit]と表記し、eta_grad_shiftの精度をb_tmp[bit]と表記し、eta_grad_aveの精度をb_tmp+b_m+H[bit]と表記し、
b_w,b_x,b_y,b_η,b_m,H,b_tmpを予め定められた正の整数とし、
rshift(a,b)は、aという値をb[bit]だけ算術右シフトすることを表わすとして、
3個以上の秘密ロジスティック回帰計算装置で構成され、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算システムの中の秘密ロジスティック回帰計算装置であって、
モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化手段と、
i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算手段と、
j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記η及び前記[[e]]から、[[eta_grad]]=η[[e]]により、[[eta_grad]]を計算し、
前記[[eta_grad]]から、[[eta_grad_shift]]=rshift([[eta_grad]], b_y+b_x+b_η-b_tmp)により、[[eta_grad_shift]]を計算し、
前記[[eta_grad_shift]]から、[[eta_grad_ave]]=(1/m)[[eta_grad_shift]]により、[[eta_grad_ave]]を計算し、
前記[[eta_grad_ave]]から、[[eta_grad_ave_shift]]=rshift([[eta_grad_ave]], b_tmp+b_m+H-b_w)により、[[eta_grad_ave_shift]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[eta_grad_ave_shift]]から、[[wj,t+1]]=[[wj,t]]-[[eta_grad_ave_shift]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新手段と
を含む秘密ロジスティック回帰計算装置。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項5に記載の秘密シグモイド関数計算システムを用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
秘密計算の対象となる任意の値をpとし、pの精度をb_p[bit]と表記した場合には、pのシェア[[p]]は実際には[[p×2b_p]]という固定小数点数のシェアであることを表し、
秘密計算の対象となる任意のベクトルをq→とし、q→の要素をqiとし、q→の精度をb_q[bit]と表記した場合には、q→のシェア[[q→]]は実際には[[qi×2b_q]]という固定小数点数のシェアにより構成されることを表し、
w→,w0 →,wt →,wt+1 →,eta_grad_aveの精度をb_w[bit]と表記し、xi →(0≦i≦m-1)の精度をb_x[bit]と表記し、yi(0≦i≦m-1),ci(0≦i≦m-1),di(0≦i≦m-1)の精度をb_y[bit]と表記し、ηの精度をb_η[bit]と表記し、bi(0≦i≦m-1)の精度をb_w+b_x[bit]と表記し、eの精度をb_y+b_x[bit]と表記し、
b_w,b_x,b_y,b_ηを予め定められた正の整数とし、
rshift(a,b)は、aという値をb[bit]だけ算術右シフトすることを表わすとし、
floorは切り捨てを表す関数とし、X=-(floor(log2(η/m)))として、
3個以上の秘密ロジスティック回帰計算装置で構成され、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算システムの中の秘密ロジスティック回帰計算装置であって、
モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化手段と、
i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算手段と、
j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記[[e]]から、[[eta_grad_ave]]=rshift([[e]], X+b_y+b_x-b_w)により、[[eta_grad_ave]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[eta_grad_ave]]から、[[wj,t+1]]=[[wj,t]]-[[eta_grad_ave]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新手段と
を含む秘密ロジスティック回帰計算装置。 - mapσをシグモイド関数σ(x)の定義域を表すパラメータ(a0, …, ak-1)と値域を表すパラメータ(σ(a0), …, σ(ak-1)) (ただし、kは1以上の整数、a0, …, ak-1はa0<…<ak-1を満たす実数)により定義される秘密一括写像とし、
3個以上の秘密シグモイド関数計算装置で構成される秘密シグモイド関数計算システムが、入力ベクトルx→=(x0, …, xm-1)のシェア[[x→]]=([[x0]], …, [[xm-1]])から、入力ベクトルx→に対するシグモイド関数の値y→=(y0, …, ym-1)のシェア[[y→]]=([[y0]], …, [[ym-1]])を計算する秘密シグモイド関数計算方法であって、
前記秘密シグモイド関数計算システムが、前記シェア[[x→]]から、mapσ([[x→]])=([[σ(af(0))]], …, [[σ(af(m-1))]])(ただし、f(i)(0≦i≦m-1)は、aj≦xi<aj+1となるj)を計算し、([[y0]], …, [[ym-1]])= ([[σ(af(0))]], …, [[σ(af(m-1))]])により、前記シェア[[y→]]を計算する秘密一括写像計算ステップと
を含む秘密シグモイド関数計算方法。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項9に記載の秘密シグモイド関数計算方法を用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
3個以上の秘密ロジスティック回帰計算装置で構成される秘密ロジスティック回帰計算システムが、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算方法であって、
前記秘密ロジスティック回帰計算システムが、モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化ステップと、
前記秘密ロジスティック回帰計算システムが、i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算ステップと、
前記秘密ロジスティック回帰計算システムが、j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[e]]から、[[wj,t+1]]=[[wj,t]]-η(1/m)[[e]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新ステップと
を含む秘密ロジスティック回帰計算方法。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項9に記載の秘密シグモイド関数計算方法を用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
秘密計算の対象となる任意の値をpとし、pの精度をb_p[bit]と表記した場合には、pのシェア[[p]]は実際には[[p×2b_p]]という固定小数点数のシェアであることを表し、
秘密計算の対象となる任意のベクトルをq→とし、q→の要素をqiとし、q→の精度をb_q[bit]と表記した場合には、q→のシェア[[q→]]は実際には[[qi×2b_q]]という固定小数点数のシェアにより構成されることを表し、
w→,w0 →,wt →,wt+1 →,eta_grad_ave_shiftの精度をb_w[bit]と表記し、xi →(0≦i≦m-1)の精度をb_x[bit]と表記し、yi(0≦i≦m-1),ci(0≦i≦m-1),di(0≦i≦m-1)の精度をb_y[bit]と表記し、ηの精度をb_η[bit]と表記し、学習データ数の逆数1/mの精度をb_m+H[bit]と表記し、bi(0≦i≦m-1)の精度をb_w+b_x[bit]と表記し、eの精度をb_y+b_x[bit]と表記し、eta_gradの精度をb_y+b_x+b_η[bit]と表記し、eta_grad_shiftの精度をb_tmp[bit]と表記し、eta_grad_aveの精度をb_tmp+b_m+H[bit]と表記し、
b_w,b_x,b_y,b_η,b_m,H,b_tmpを予め定められた正の整数とし、
rshift(a,b)は、aという値をb[bit]だけ算術右シフトすることを表わすとして、
3個以上の秘密ロジスティック回帰計算装置で構成される秘密ロジスティック回帰計算システムが、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算方法であって、
前記秘密ロジスティック回帰計算システムが、モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化ステップと、
前記秘密ロジスティック回帰計算システムが、i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算ステップと、
前記秘密ロジスティック回帰計算システムが、j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記η及び前記[[e]]から、[[eta_grad]]=η[[e]]により、[[eta_grad]]を計算し、
前記[[eta_grad]]から、[[eta_grad_shift]]=rshift([[eta_grad]], b_y+b_x+b_η-b_tmp)により、[[eta_grad_shift]]を計算し、
前記[[eta_grad_shift]]から、[[eta_grad_ave]]=(1/m)[[eta_grad_shift]]により、[[eta_grad_ave]]を計算し、
前記[[eta_grad_ave]]から、[[eta_grad_ave_shift]]=rshift([[eta_grad_ave]], b_tmp+b_m+H-b_w)により、[[eta_grad_ave_shift]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[eta_grad_ave_shift]]から、[[wj,t+1]]=[[wj,t]]-[[eta_grad_ave_shift]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新ステップと
を含む秘密ロジスティック回帰計算方法。 - mを1以上の整数、ηを0<η<1を満たす実数、Sigmoid([[x]])を請求項9に記載の秘密シグモイド関数計算方法を用いて入力ベクトルx→のシェア[[x→]]から、入力ベクトルx→に対するシグモイド関数の値y→のシェア[[y→]]を計算する関数とし、
秘密計算の対象となる任意の値をpとし、pの精度をb_p[bit]と表記した場合には、pのシェア[[p]]は実際には[[p×2b_p]]という固定小数点数のシェアであることを表し、
秘密計算の対象となる任意のベクトルをq→とし、q→の要素をqiとし、q→の精度をb_q[bit]と表記した場合には、q→のシェア[[q→]]は実際には[[qi×2b_q]]という固定小数点数のシェアにより構成されることを表し、
w→,w0 →,wt →,wt+1 →,eta_grad_aveの精度をb_w[bit]と表記し、xi →(0≦i≦m-1)の精度をb_x[bit]と表記し、yi(0≦i≦m-1),ci(0≦i≦m-1),di(0≦i≦m-1)の精度をb_y[bit]と表記し、ηの精度をb_η[bit]と表記し、bi(0≦i≦m-1)の精度をb_w+b_x[bit]と表記し、eの精度をb_y+b_x[bit]と表記し、
b_w,b_x,b_y,b_ηを予め定められた正の整数とし、
rshift(a,b)は、aという値をb[bit]だけ算術右シフトすることを表わすとし、
floorは切り捨てを表す関数とし、X=-(floor(log2(η/m)))として、
3個以上の秘密ロジスティック回帰計算装置で構成される秘密ロジスティック回帰計算システムが、説明変数のデータxi →のシェア[[xi →]](0≦i≦m-1)、目的変数のデータyiのシェア[[yi]](0≦i≦m-1)から、ロジスティック回帰モデルのモデルパラメータw→のシェア[[w→]]を計算する秘密ロジスティック回帰計算方法であって、
前記秘密ロジスティック回帰計算システムが、モデルパラメータw→の初期値w0 →のシェア[[w0 →]]を設定する初期化ステップと、
前記秘密ロジスティック回帰計算システムが、i=0, …, m-1に対して、t回更新を行ったモデルパラメータw→の値wt →のシェア[[wt →]]と前記シェア[[xi →]]から、[[bi]]=hpsum([[wt →]], [[(1, xi →)]])により、[[bi]]を計算し、
前記[[bi]] (0≦i≦m-1)から、([[c0]],…, [[cm-1]])=Sigmoid(([[b0]],…, [[bm-1]]))により、([[c0]],…, [[cm-1]])を計算し、
i=0, …, m-1に対して、前記シェア[[yi]]と前記([[c0]],…, [[cm-1]])の第i要素[[ci]]から、[[di]]=[[ci]]-[[yi]]により、誤差[[di]]を計算する誤差計算ステップと、
前記秘密ロジスティック回帰計算システムが、j=0, …, nに対して、
前記誤差[[di]] (0≦i≦m-1)と前記シェア[[xi →]]の第j要素[[xi,j]] (0≦i≦m-1)から、[[e]]=Σi=0 m-1[[di]][[xi,j]]により、[[e]]を計算し、
前記[[e]]から、[[eta_grad_ave]]=rshift([[e]], X+b_y+b_x-b_w)により、[[eta_grad_ave]]を計算し、
前記シェア[[wt →]]の第j要素[[wj,t]]と前記[[eta_grad_ave]]から、[[wj,t+1]]=[[wj,t]]-[[eta_grad_ave]]により、t+1回更新を行ったモデルパラメータw→の値wt+1 →のシェア[[wt+1 →]]の第j要素[[wj,t+1]]を計算するモデルパラメータ更新ステップと
を含む秘密ロジスティック回帰計算方法。 - 請求項5に記載の秘密シグモイド関数計算装置または請求項6から8の何れかに記載の秘密ロジスティック回帰計算装置としてコンピュータを機能させるためのプログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018189297 | 2018-10-04 | ||
JP2018189297 | 2018-10-04 | ||
JP2019003285 | 2019-01-11 | ||
JP2019003285 | 2019-01-11 | ||
PCT/JP2019/038966 WO2020071441A1 (ja) | 2018-10-04 | 2019-10-02 | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020071441A1 true JPWO2020071441A1 (ja) | 2021-09-02 |
JP7092206B2 JP7092206B2 (ja) | 2022-06-28 |
Family
ID=70055631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020550513A Active JP7092206B2 (ja) | 2018-10-04 | 2019-10-02 | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20210358332A1 (ja) |
EP (1) | EP3863002B1 (ja) |
JP (1) | JP7092206B2 (ja) |
CN (1) | CN112805768B (ja) |
AU (1) | AU2019352310B2 (ja) |
WO (1) | WO2020071441A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210287573A1 (en) * | 2018-05-25 | 2021-09-16 | Nippon Telegraph And Telephone Corporation | Secret batch approximation system, secure computation device, secret batch approximation method, and program |
JP6795863B1 (ja) * | 2020-01-24 | 2020-12-02 | Eaglys株式会社 | 秘密計算用変換装置、秘密計算システム、秘密計算用変換方法、および秘密計算用変換プログラム |
JP7451445B2 (ja) | 2021-02-10 | 2024-03-18 | 株式会社東芝 | 秘匿演算方法、秘匿演算システム及び秘匿演算管理装置 |
JP2022150498A (ja) * | 2021-03-26 | 2022-10-07 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 学習プログラム、学習方法及び学習装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017119211A1 (ja) * | 2016-01-07 | 2017-07-13 | ソニー株式会社 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
US20180218171A1 (en) * | 2017-01-31 | 2018-08-02 | Hewlett Packard Enterprise Development Lp | Performing privacy-preserving multi-party analytics on horizontally partitioned local data |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2155038C (en) * | 1995-07-31 | 2008-12-09 | Gordon B. Agnew | Elliptic curve encryption systems |
JP5486520B2 (ja) * | 2011-01-21 | 2014-05-07 | 日本電信電話株式会社 | セキュア集合関数システム、秘密集合関数装置、セキュア集合関数処理方法、セキュア集合関数プログラム |
US9064123B2 (en) * | 2011-03-10 | 2015-06-23 | Nippon Telegraph And Telephone Corporation | Secure product-sum combination system, computing apparatus, secure product-sum combination method and program therefor |
JP5689826B2 (ja) * | 2012-01-26 | 2015-03-25 | 日本電信電話株式会社 | 秘密計算システム、暗号化装置、秘密計算装置及びその方法、プログラム |
JP6006842B1 (ja) * | 2015-07-22 | 2016-10-12 | 日本電信電話株式会社 | 秘密計算装置、その方法、およびプログラム |
WO2019236997A1 (en) * | 2018-06-08 | 2019-12-12 | Zestfinance, Inc. | Systems and methods for decomposition of non-differentiable and differentiable models |
JP6921233B2 (ja) * | 2019-01-11 | 2021-08-18 | アドバンスド ニュー テクノロジーズ カンパニー リミテッド | 秘密分散を使用したロジスティック回帰モデリング方式 |
-
2019
- 2019-10-02 WO PCT/JP2019/038966 patent/WO2020071441A1/ja unknown
- 2019-10-02 AU AU2019352310A patent/AU2019352310B2/en active Active
- 2019-10-02 EP EP19868468.0A patent/EP3863002B1/en active Active
- 2019-10-02 CN CN201980064791.5A patent/CN112805768B/zh active Active
- 2019-10-02 US US17/279,595 patent/US20210358332A1/en active Pending
- 2019-10-02 JP JP2020550513A patent/JP7092206B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017119211A1 (ja) * | 2016-01-07 | 2017-07-13 | ソニー株式会社 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
US20180218171A1 (en) * | 2017-01-31 | 2018-08-02 | Hewlett Packard Enterprise Development Lp | Performing privacy-preserving multi-party analytics on horizontally partitioned local data |
Non-Patent Citations (3)
Title |
---|
三品 気吹 ほか: "高精度かつ高効率な秘密ロジスティック回帰の設計と実装", CSS2018 コンピュータセキュリティシンポジウム2018論文集 [USB], vol. Vol.2018,No.2,4A2−2, JPN6019048539, 15 October 2018 (2018-10-15), JP, pages 1229 - 1236, ISSN: 0004774235 * |
呉 双 ほか: "垂直分割モデルにおけるプライバシ保護ロジスティックス回帰分析", 2014年度 人工知能学会全国大会(第28回)論文集[CD−ROM], vol. 2B5−OS−15b−4, JPN6016048600, 15 May 2014 (2014-05-15), JP, pages 1 - 4, ISSN: 0004774233 * |
田中 哲士 ほか: "秘密分散ベース秘密計算を用いたニューラルネットワークのコスト評価", 電子情報通信学会技術研究報告, vol. 116, no. 65, JPN6019048538, 19 May 2016 (2016-05-19), JP, pages 119 - 126, ISSN: 0004774234 * |
Also Published As
Publication number | Publication date |
---|---|
JP7092206B2 (ja) | 2022-06-28 |
CN112805768A (zh) | 2021-05-14 |
EP3863002B1 (en) | 2023-02-15 |
WO2020071441A1 (ja) | 2020-04-09 |
CN112805768B (zh) | 2023-08-04 |
AU2019352310B2 (en) | 2022-07-28 |
US20210358332A1 (en) | 2021-11-18 |
EP3863002A1 (en) | 2021-08-11 |
AU2019352310A1 (en) | 2021-05-13 |
EP3863002A4 (en) | 2022-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7092206B2 (ja) | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム | |
JP7067632B2 (ja) | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム | |
US11164484B2 (en) | Secure computation system, secure computation device, secure computation method, and program | |
US11294633B2 (en) | Secure computation system, secure computation device, secure computation method, and program | |
WO2020075797A1 (ja) | 秘密右シフト演算システム、秘密除算システム、それらの方法、秘密計算装置、およびプログラム | |
EP4016506B1 (en) | Softmax function secret calculation system, softmax function secret calculation device, softmax function secret calculation method, neural network secret calculation system, neural network secret learning system, and program | |
Tjell et al. | Privacy in distributed computations based on real number secret sharing | |
JP2019095635A (ja) | 処理装置、推論装置、学習装置、処理システム、処理方法、及び処理プログラム | |
JP2021064008A (ja) | 処理装置、推論装置、学習装置、処理システム、処理方法、及び処理プログラム | |
Stoian et al. | Deep neural networks for encrypted inference with tfhe | |
WO2019225531A1 (ja) | 秘密一括近似システム、秘密計算装置、秘密一括近似方法、およびプログラム | |
JP7205623B2 (ja) | 秘密共役勾配法計算システム、秘密計算装置、共役勾配法計算装置、秘密共役勾配法計算方法、共役勾配法計算方法、およびプログラム | |
JP6825119B2 (ja) | 秘密読み込み装置、秘密書き込み装置、それらの方法、およびプログラム | |
WO2022079894A1 (ja) | 秘密指数部統一システム、秘密指数部統一装置、秘密指数部統一方法、秘密和計算システム、秘密積和計算システム、プログラム | |
JP7279796B2 (ja) | 秘密勾配降下法計算方法、秘密深層学習方法、秘密勾配降下法計算システム、秘密深層学習システム、秘密計算装置、およびプログラム | |
WO2022254599A1 (ja) | 秘密共役勾配法計算方法、秘密共役勾配法計算システム、秘密計算装置、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210317 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210317 |
|
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: 20220517 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220530 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7092206 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |