JP6835559B2 - Privacy protection data provision system - Google Patents
Privacy protection data provision system Download PDFInfo
- Publication number
- JP6835559B2 JP6835559B2 JP2016239460A JP2016239460A JP6835559B2 JP 6835559 B2 JP6835559 B2 JP 6835559B2 JP 2016239460 A JP2016239460 A JP 2016239460A JP 2016239460 A JP2016239460 A JP 2016239460A JP 6835559 B2 JP6835559 B2 JP 6835559B2
- Authority
- JP
- Japan
- Prior art keywords
- deep learning
- parameter
- value
- error
- anonymization
- 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
- 238000012545 processing Methods 0.000 claims description 70
- 238000013135 deep learning Methods 0.000 claims description 66
- 238000000034 method Methods 0.000 claims description 39
- 238000004364 calculation method Methods 0.000 claims description 29
- 238000013136 deep learning model Methods 0.000 claims description 29
- 230000008569 process Effects 0.000 claims description 29
- 230000035945 sensitivity Effects 0.000 claims description 17
- 230000006870 function Effects 0.000 description 30
- 238000011156 evaluation Methods 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 14
- 230000004913 activation Effects 0.000 description 9
- 238000012360 testing method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 3
- 238000002790 cross-validation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
Images
Description
本発明は、プライバシ保護データ提供システムに関する。 The present invention relates to the privacy protection data providing system.
近年、個人データなどのプライバシ保護が必要なデータを公開する際に、差分プライバシと称される処理を施して、個々のデータのプライバシを確保した上で、適正なデータ解析が実行できるようにしたものが提案されている。 In recent years, when publishing data that requires privacy protection, such as personal data, a process called differential privacy has been performed to ensure the privacy of individual data, and then appropriate data analysis can be performed. Things have been proposed.
データに対して差分プライバシの処理を施す際には、プライバシの保護レベルが、「ε」で示されるプライバシ指標で示される。プライバシ指標「ε」の値が0に近づくほど、データの保護レベルが高く、プライバシ指標「ε」の値が大きいほど、データの保護レベルが低くなる。 When processing differential privacy on data, the privacy protection level is indicated by the privacy index indicated by "ε". The closer the value of the privacy index "ε" is to 0, the higher the data protection level, and the larger the value of the privacy index "ε", the lower the data protection level.
具体的には、あるデータベースDを匿名化して差分プライバシの処理を施す匿名学習アルゴリズムAが存在するとき、この匿名学習アルゴリズムAは、確率的要素を含むアルゴリズムになる。すなわち、データベースDを、確率的要素を含む匿名学習アルゴリズムAで匿名化したときには、確率的要素を含むために、処理を施す毎に異なる匿名化済データs1,s2,・・・,snが得られる。ここで、データベースDと、そのデータベースDから1レコードだけ異なるデータとしたデータベースD′とを用意し、それぞれのデータベースD,D′の集合Sの特定のデータsi(データsiはデータs1〜snのいずれか)になる確率の比が、プライバシ指標「ε」を使ったexp(ε)以下になるとき、この匿名学習アルゴリズムAは、差分プライバシを満たすアルゴリズムになる。 Specifically, when there is an anonymous learning algorithm A that anonymizes a certain database D and performs differential privacy processing, the anonymous learning algorithm A becomes an algorithm including a probabilistic element. That is, when the database D is anonymized by the anonymous learning algorithm A including the stochastic element, different anonymized data s1, s2, ..., Sn are obtained each time the processing is performed because the database D contains the stochastic element. Be done. Here, a database D and a database D'with data different from the database D by one record are prepared, and specific data si of the set S of the respective databases D and D'(data si is the data s1 to sn. When the ratio of the probability of becoming (any) is less than or equal to exp (ε) using the privacy index “ε”, this anonymous learning algorithm A becomes an algorithm that satisfies the differential privacy.
この差分プライバシを満たす点を、より分かりやすく述べると、例えば、多数の個人情報からなる特定のデータベースDに、ある任意の一人のデータを追加(又は削除)したものを、データベースD′とする。ここで、データベースDを匿名学習アルゴリズムAで差分プライバシの処理を施して匿名化した結果と、データベースD′を匿名学習アルゴリズムAで差分プライバシの処理を施して匿名化した結果とが、ほとんど変わらないとき(つまり上述した閾値exp(ε)を超えないとき)、プライバシが守られた状態で、データベースDが公開されたと言える。 To describe the point of satisfying this differential privacy more clearly, for example, a database D'in which the data of an arbitrary person is added (or deleted) to a specific database D composed of a large amount of personal information is referred to as a database D'. Here, there is almost no difference between the result of anonymizing the database D by performing differential privacy processing by the anonymous learning algorithm A and the result of anonymizing the database D'by applying the differential privacy processing by the anonymous learning algorithm A. When (that is, when the above-mentioned threshold exp (ε) is not exceeded), it can be said that the database D is open to the public while the privacy is maintained.
これは、データベースDを構成する各データで特定される個人から見たとき、一人一人のデータの有無に関わらず、結果がほぼ同じであるため、プライバシが守られた状態と見なせることになる。言い換えると、データベースDとデータベースD′のいずれであっても、結果が同じになることを意味している。
特許文献1には、差分プライバシを満たして、データを集計する手法の一例についての記載がある。
This can be regarded as a state in which privacy is protected because the results are almost the same regardless of the presence or absence of each person's data when viewed from the individual specified by each data constituting the database D. In other words, it means that the result will be the same regardless of whether it is database D or database D'.
上述したように、差分プライバシの処理を施す匿名学習アルゴリズムを作成することで、データの匿名化が可能であるが、実際には、どのようなデータベース構成であっても、確率の比がexp(ε)以下になる条件を満たして、かつニューラルモデルの精度が高くなるような機械学習を行う匿名学習アルゴリズムの作成は難しいという問題があった。 As described above, data can be anonymized by creating an anonymous learning algorithm that performs differential privacy processing, but in reality, the probability ratio is exp (regardless of the database configuration). ε) There is a problem that it is difficult to create an anonymous learning algorithm that performs machine learning that satisfies the following conditions and increases the accuracy of the neural model.
本発明は、匿名化された深層学習モデルを形成する際に、どのようなデータであっても、精度の高い好適な匿名化された深層学習モデルが得られるプライバシ保護データ提供システムを提供することを目的とする。 The present invention, in forming the anonymized deep learning model, whatever the data and provides privacy protection data providing system that precise preferred anonymized deep learning model is obtained The purpose is.
本発明の一側面のプライバシ保護データ提供システムは、データベース内の生データに対して、深層学習アルゴリズムを適用して深層学習モデルを得る深層学習処理部と、深層学習処理部で得られた深層学習モデルに対して、差分プライバシに基づく匿名化処理を施して、匿名モデルを得る匿名化処理部とを備えたプライバシ保護データ提供システムである。
ここで、匿名化処理部は、深層学習モデルに含まれる重みパラメータ及びバイアスパラメータに対して、それぞれのパラメータ値にラプラス分布に基づいた誤差を与えると共に、ラプラス分布に基づいて誤差を与えた各パラメータが、最大値及び最小値で示される閾値の範囲を超えたとき、閾値の範囲に制限するようにしたことを特徴とする。
The privacy protection data providing system of one aspect of the present invention is a deep learning processing unit that applies a deep learning algorithm to raw data in a database to obtain a deep learning model, and a deep learning processing unit obtained by the deep learning processing unit. It is a privacy protection data providing system provided with an anonymization processing unit that obtains an anonymization model by performing anonymization processing based on differential privacy on the model.
Here, the anonymization processing unit gives an error based on the Laplace distribution to each parameter value for the weight parameter and the bias parameter included in the deep learning model, and each parameter to which an error is given based on the Laplace distribution. However, when the range of the threshold value indicated by the maximum value and the minimum value is exceeded, the limit is limited to the range of the threshold value.
また、本発明の他の側面のプライバシ保護データ提供システムは、データベース内の生データに対して、差分プライバシに基づく匿名化処理を施しながら、深層学習アルゴリズムを適用して深層学習済の匿名モデルを得る深層学習処理部を備えたプライバシ保護データ提供システムである。
ここで、深層学習処理部は、深層学習モデルを得る演算時に使用する重みパラメータ及びバイアスパラメータに対して、それぞれのパラメータ値にラプラス分布に基づいた誤差を与えると共に、ラプラス分布に基づいて誤差を与えた各パラメータが、最大値及び最小値で示される閾値の範囲を超えたとき、閾値の範囲に制限するようにしたことを特徴とする。
Further, the privacy-protected data providing system of another aspect of the present invention applies a deep learning algorithm to anonymize the raw data in the database based on differential privacy to obtain a deep-learned anonymous model. It is a privacy protection data providing system equipped with a deep learning processing unit to obtain.
Here, the deep learning processing unit gives an error based on the Laplace distribution to each parameter value for the weight parameter and the bias parameter used in the calculation for obtaining the deep learning model, and also gives an error based on the Laplace distribution. When each parameter exceeds the threshold range indicated by the maximum value and the minimum value, the parameter is limited to the threshold range.
本発明によれば、ラプラス分布に基づいて誤差を与えた各パラメータが、最大値及び最小値で示される閾値の範囲を超えたとき、閾値の範囲に制限するようにしたことで、誤差を与えてデータの匿名化を行っても、データの変動範囲を適正な範囲に制限することができ、適切な匿名化ができるようになる。その結果、匿名化による深層学習モデルの精度低下を軽減できるようになる。 According to the present invention, when each parameter to which an error is given based on the Laplace distribution exceeds the threshold range indicated by the maximum value and the minimum value, the error is given by limiting to the threshold range. Even if the data is anonymized, the fluctuation range of the data can be limited to an appropriate range, and the appropriate anonymization can be performed. As a result, it becomes possible to reduce the decrease in accuracy of the deep learning model due to anonymization.
<1.第1の実施の形態例>
以下、本発明の第1の実施の形態例を、図1〜図5を参照して説明する。
<1. Example of the first embodiment>
Hereinafter, examples of the first embodiment of the present invention will be described with reference to FIGS. 1 to 5.
[システム全体の構成]
図1は、第1の実施の形態例のプライバシ保護データ提供システムの構成を示す。
データベース1には、個人情報が含まれる多数の生データが蓄積され、データベース1に蓄積された生データが、深層学習処理部2に供給される。深層学習処理部2は、予め用意された深層学習アルゴリズムを適用した演算を行い、生データを深層学習した深層学習モデル3を得る。
[System-wide configuration]
FIG. 1 shows the configuration of the privacy protection data providing system of the first embodiment.
A large amount of raw data including personal information is accumulated in the
そして、深層学習処理部2で得た深層学習モデル3が、匿名化処理部10に供給される。匿名化処理部10は、供給された深層学習モデル3に対して、差分プライバシに基づく匿名化処理を施して、匿名化済みの深層学習モデル4(以下、「匿名化モデル4」と称する)を得る。
Then, the
匿名化処理部10が、差分プライバシに基づいて匿名化モデル4を得る際には、深層学習モデル3に含まれる重みパラメータ及びバイアスパラメータに対して、それぞれのパラメータ値にラプラス分布に基づいて誤差を与えて、差分プライバシの処理を施す。但し、それぞれのパラメータ値にラプラス分布に基づいた誤差を与える際には、その誤差として、最大値及び最小値を示す閾値で制限するようにした。
ラプラス分布に基づいた誤差を与えるということは、誤差を与えたパラメータ値が、確率的要素を含む値になり、結果的に匿名化が行われた匿名化モデル4が得られることになる。
When the
Giving an error based on the Laplace distribution means that the parameter value to which the error is given becomes a value including a stochastic element, and as a result, an anonymization model 4 in which anonymization is performed is obtained.
[ε−差分プライバシの処理構成]
図2は、匿名化処理部10の機能を示すブロック図である。
図2に示すように、匿名化処理部10は、データ入力部11、ε入力部12、パラメータ構造決定部13、パラメータ初期値決定部14、閾値決定部15、閾値超え判定部16及び閾値計算部17を備える。更に、匿名化処理部10は、匿名化演算部18及びデータ出力部19を備える。
[Ε-Differential privacy processing configuration]
FIG. 2 is a block diagram showing the function of the
As shown in FIG. 2, the
データ入力部11には、深層学習モデルのデータが入力され、このデータが匿名化演算部18に供給される。ε入力部12には、差分プライバシの処理を行う際の指標「ε」が入力され、指標「ε」が、匿名化演算部18に供給される。
The data of the deep learning model is input to the
パラメータ構造決定部13は、深層学習モデル3のパラメータ構造を決める機能を有し、このパラメータ構造決定部13で決定された深層学習モデル3のパラメータ構造が、匿名化演算部18に供給される。なお、パラメータ構造決定部13で決定されるパラメータ構造には、少なくとも重みパラメータとバイアスパラメータが含まれる。そして、匿名化演算部18は、これら重みパラメータとバイアスパラメータに誤差を与える処理を行う。
The parameter
パラメータ初期値決定部14は、上述した重みパラメータとバイアスパラメータのパラメータ初期値を決定する。このパラメータ初期値は、匿名化演算部18に供給され、匿名化演算部18は、このパラメータ初期値を用いて、パラメータ構造決定部13で決定されるパラメータ構造の初期値を決定する。
The parameter initial
閾値決定部15は、ラプラス分布に基づいて得た誤差を設定する際の最大値と最小値を制限するための閾値を決定する。この閾値決定部15における閾値の決定の際には、後述する閾値計算部17での計算結果が利用される。
閾値超え判定部16は、匿名化演算部18が演算を行う際に、パラメータ構造決定部13で決定した誤差値が、閾値決定部15で決定した閾値(最大値又は最小値)を超えたか否かを判定する。
The threshold
In the threshold value exceeding
閾値計算部17は、閾値を設定するための計算を行い、計算結果を匿名化演算部18に供給する。
匿名化演算部18は、閾値超え判定部16での判定結果が、閾値を超えていた場合には閾値を誤差値とする処理を行う。匿名化演算部18で演算した結果は、データ出力部19から出力される。
The threshold value calculation unit 17 performs a calculation for setting the threshold value, and supplies the calculation result to the
The
[全体の処理の流れ]
図3は、第1の実施の形態例のプライバシ保護データ提供システムでの処理の流れを示すフローチャートである。
まず、深層学習処理部2は、データベース1から生データを取得する(ステップS11)。そして、深層学習処理部2は、取得した生データに対して、予め用意された深層学習アルゴリズムを適用して深層学習を行い(ステップS12)、深層学習処理の結果として、深層学習済モデルを取得する(ステップS13)。
[Overall processing flow]
FIG. 3 is a flowchart showing a processing flow in the privacy protection data providing system of the first embodiment.
First, the deep
次に、ステップS13で取得した深層学習済モデルに対して、匿名化処理部10が、匿名化処理を行う(ステップS14)。この匿名化処理を行う際には、閾値による制限を設定した上で、ラプラス分布に基づく誤差の付与を行う。
なお、ステップS14において、匿名化処理の制限に使用される閾値は、匿名化処理部10における、重みパラメータの変動量の最大値及び最小値を示す閾値と、バイアスパラメータの変動量の最大値及び最小値を示す閾値である。これらの閾値の生成処理(ステップS20)の詳細については数式を用いて後述する。
そして、匿名化処理部10によるステップS14での匿名化処理の実行で、匿名化モデルを取得し(ステップS15)、得られた匿名化モデルをデータ出力部19から出力する。
Next, the
In step S14, the threshold values used to limit the anonymization process are the threshold value indicating the maximum and minimum values of the fluctuation amount of the weight parameter in the
Then, by executing the anonymization process in step S14 by the
[深層学習の詳細]
次に、ここまで説明したステップS12〜S15の各処理の詳細について説明する。
まず、図4を参照して、深層学習が行われる例について説明する。
図4において、H(l)は、深層学習の1番目の層を示す。図4はL=3の例であり、全体でL+1個の層を持っている。入力層はH(0)、出力層はH(L)である。それぞれの層は、複数(又は1つ)のノードを有する。ノードNi (l)は、層H(l)のi番目のノードを表し、n(l)は層H(l)におけるノードの個数を表す。層H(l)には、ノードN1 (l),N2 (l),・・・,Nn(l) (l)がある。
[Details of deep learning]
Next, the details of each process of steps S12 to S15 described so far will be described.
First, an example in which deep learning is performed will be described with reference to FIG.
In FIG. 4, H (l) represents the first layer of deep learning. FIG. 4 is an example of L = 3, and has L + 1 layers as a whole. The input layer is H (0) and the output layer is H (L) . Each layer has a plurality of (or one) nodes. Node N i (l) represents the i-th node in layer H (l), n (l ) is the number of nodes in layer H (l). The layer H (l) has nodes N 1 (l) , N 2 (l) , ..., N n (l) (l) .
また、図4において、wij (l)は、ノードNi (l−1)とノードNj (l)の間の重みパラメータを表す。bj (l)は、ノードNj (l)へのバイアスパラメータを表す。F(l)は、層H(l)の活性化関数を表す。xi (l)はノードNi (l)への入力を表し、yi (l)はノードNi (l)からの出力を表す。
これらの入出力の値は、以下の式で計算される。
Further, in FIG. 4, wij (l) represents a weight parameter between the node N i (l-1) and the node N j (l). b j (l) represents a bias parameter to node N j (l). F (l) represents the activation function of layer H (l). x i (l) represents the input to the node Ni (l) , and y i (l) represents the output from the node Ni (l).
These input / output values are calculated by the following formula.
ここで、tiは、ノードNi (L)の目標出力値を表し、Mは誤差関数を表す。誤差関数Mは、入力としてyi (L)及びtiを取り、その誤差の値を返す。
学習データは、いくつかのバッチと呼ばれるまとまりに分割される。以下のプロセスは各バッチに対して行われる。
Here, t i represents the target output value of the node N i (L), M represents an error function. Error function M takes y i (L) and t i as input, returns the value of the error.
The training data is divided into groups called batches. The following process is performed for each batch.
バッチ内の各レコードに対して、深層学習アルゴリズムにより、yi (L)を計算する(i=1,・・・,n(L))。
次に、深層学習アルゴリズムにより、各ノードNi (l)における誤差信号(δi (l)とおく)を計算する。l=Lのとき、δi (L)は以下の[数2]式のように計算される。
For each record in the batch, y i (L) is calculated by the deep learning algorithm (i = 1, ..., n (L) ).
Next, the deep learning algorithm to calculate each node N i (put and δ i (l)) an error signal in (l). When l = L, δ i (L) is calculated by the following equation [Equation 2].
l=1,・・・・,L−1に対しては、δi (l)は以下の[数3]式のように計算される。 For l = 1, ..., L-1, δ i (l) is calculated by the following equation [Equation 3].
そして、深層学習アルゴリズムにより、δi (l)をバッチ内の各レコードに対して計算し、その総和を新たにδi (l)とおく。
次に、変動量Δwij (l)を、以下のように定義する。
Then, δ i (l) is calculated for each record in the batch by the deep learning algorithm, and the sum is newly set as δ i (l) .
Next, the variation amount [Delta] w ij a (l), defined as follows.
最後に、深層学習アルゴリズムにより、各重みパラメータwij (l) for l=1,・・・,L,i=1,・・・,n(l−1), and j=1,・・・,n(l)を、以下の[数5]式のように更新する。 Finally, according to the deep learning algorithm, each weight parameter wij (l) for l = 1, ..., L, i = 1, ..., n (l-1) , and j = 1, ... , N (l) is updated as shown in the following equation [Equation 5].
ここで、学習率α、正則項λは、事前に決定しておく。
バイアスパラメータに関しては、以下のように更新する。
Here, the learning rate α and the regular term λ are determined in advance.
The bias parameters are updated as follows.
ここで、Δbj (l)=δj (l)である。
この[数1]式から[数6]式のプロセスを、全てのバッチに対して行う。
また、このプロセスを複数回繰り返す。この繰り返し回数をエポック数と呼ぶ。エポック数は、深層学習を行う前に事前引用文献、又は学習を進めながら決定する。
Here, Δb j (l) = δ j (l) .
The process of the formulas [Equation 1] to [Equation 6] is performed for all batches.
Also, this process is repeated multiple times. This number of repetitions is called the epoch number. The number of epochs is determined by pre-cited references or while proceeding with learning before deep learning.
[ε−差分プライバシの詳細]
次に、ε−差分プライバシについて説明する。
例えば、データベースDとデータベースD′は、最大で1レコードだけ異なるとする。ランダム機構Aは、出力の全ての集合Yについて、以下の[数7]式の条件が成り立つとき、ε−差分プライバシを実現する。
[Ε-Details of differential privacy]
Next, ε-difference privacy will be described.
For example, database D and database D'are different by a maximum of one record. The random mechanism A realizes ε-difference privacy when the following condition of Eq. [Equation 7] is satisfied for all sets Y of outputs.
データベースDとデータベースD′とを、1レコードだけ異なるデータベースであると考える。入力のデータベースとして理論上可能性のある全てのデータベースの集合をQとおく。このとき、fを、f:Q→Rである関数とする。ここで、全てのデータベースD及びデータベースD′に対して以下の[数8]式が成立するとき、Δfをfのグローバルセンシティビティ(global sensitivity)、つまりfの値が取り得る範囲と定義する。 Consider database D and database D'as databases that differ by one record. Let Q be the set of all databases that are theoretically possible as input databases. At this time, let f be a function such that f: Q → R. Here, when the following [Equation 8] equation holds for all databases D and database D', Δf is defined as the global sensitivity of f, that is, the range in which the value of f can be taken.
次に、ラプラスメカニズムと呼ばれる、ε−差分プライバシを満たす匿名化のメカニズムを説明する。
Lap(v)を、平均0、スケールがvであるラプラス分布に基づいてランダムな誤差を出力する関数であるとする。このとき、ある関数fに対して、ランダムメカニズムAが、f(D)+Lap(Δf/ε)を出力するとき、ランダムメカニズムAは、ε−差分プライバシを満たす。
Next, an anonymization mechanism that satisfies ε-differential privacy, called the Laplace mechanism, will be described.
Let Lap (v) be a function that outputs a random error based on a Laplace distribution with a mean of 0 and a scale of v. At this time, when the random mechanism A outputs f (D) + Lap (Δf / ε) for a certain function f, the random mechanism A satisfies ε-difference privacy.
ここでは、誤差bを与える対象の変数が、1つのデータの有無によって変動し得る値の幅の最大値をdとおく。ここでの最大値dは、実際の値ではなく、匿名化前のデータベースとして想定し得る値の幅から算出する。そして、誤差b=d/εとする。つまり、最大値dの値が大きく、εが小さいほど、誤差bの値が大きくなり、与えられる誤差が大きくなる。 Here, let d be the maximum value of the range of values in which the variable to be given the error b can fluctuate depending on the presence or absence of one data. The maximum value d here is calculated from the range of values that can be assumed as a database before anonymization, not the actual value. Then, the error b = d / ε is set. That is, the larger the value of the maximum value d and the smaller the ε, the larger the value of the error b and the larger the given error.
なお、深層学習の重みパラメータやバイアスパラメータは複数存在する。これらパラメータの集合に対してε−差分プライバシを満たすこともできるが、本実施の形態では、個々のパラメータに対して個別にε−差分プライバシを満たすようにする。
このように個々のパラメータに対して個別にε−差分プライバシを満たすようにする場合には、ランダム機構Aは、各パラメータにおける出力の全ての集合Yについて、以下の式が成り立ち、個々のパラメータに対して個別にε−差分プライバシを満たすことになる。なお、データベースDとデータベースD′は、最大で1レコードだけ異なる。
There are a plurality of weight parameters and bias parameters for deep learning. Although it is possible to satisfy the ε-differential privacy for the set of these parameters, in the present embodiment, the ε-differential privacy is individually satisfied for each parameter.
In this way, when the ε-difference privacy is individually satisfied for each parameter, the random mechanism A holds the following equation for all sets Y of outputs in each parameter, and the following equation holds for each parameter. On the other hand, the ε-differential privacy is satisfied individually. Note that database D and database D'are different by a maximum of one record.
[各パラメータの閾値設定例]
次に、重みパラメータwij (l)とバイアスパラメータbj (l)に対して値の閾値を設定する処理について説明する。なお、この処理は、図3のステップS20の処理に相当する。
この処理は、1レコードだけ異なるときに変わりうる値の、理論上の最大値(グローバルセンシティビティ)を減少させることで、パラメータに与える誤差を減少させるために行われる。これにより、深層学習モデルの精度低下を軽減させる、つまり精度の向上を図ることができる。
[Example of threshold setting for each parameter]
Next, a description will be given of a process for setting a threshold value for the weight parameter w ij (l) and the bias parameter b j (l). This process corresponds to the process of step S20 in FIG.
This process is performed to reduce the error given to the parameter by reducing the theoretical maximum value (global sensitivity) of the value that can change when only one record is different. As a result, it is possible to reduce the decrease in accuracy of the deep learning model, that is, to improve the accuracy.
ここでは、重みパラメータwij (l)の最大値をwmax、最小値をwminとする。また、バイアスパラメータbj (l)の最大値をbmax、最小値をbminとする。
また、本実施の形態では、深層学習への入力値(学習データ)にも閾値を設定する。この入力値の閾値は、ここでは[0,1]とする。ここでの閾値[0,1]とは、最小値を“0”とし、最大値を“1”として、“0”以上“1”以下に制限することを意味する。
Here, the maximum value of the weight parameter wij (l) is w max , and the minimum value is w min . Further, the maximum value of the bias parameter b j (l) is b max , and the minimum value is b min .
Further, in the present embodiment, a threshold value is also set for the input value (learning data) for deep learning. The threshold value of this input value is set to [0,1] here. The threshold value [0,1] here means that the minimum value is "0" and the maximum value is "1", and the threshold value is limited to "0" or more and "1" or less.
本実施の形態では、匿名化処理部10は、深層学習を行った後、学習済重みパラメータwij (l)に対して誤差を与える。つまり、深層学習時の全てのi,j,l(図3参照)に対して、wij (l)+Lap(wmax−wmin/ε)を計算する。この計算結果を、rij (l)とおく。もし、計算結果rij (l)の値が、最大値wmaxを超えた場合、重みパラメータwij (l)の値を最大値(閾値)wmaxに修正する。
同様に、もし計算結果rij (l)の値が、最小値wminを下回った場合、重みパラメータwij (l)の値を最小値(閾値)wminに修正する。
In the present embodiment, the
Similarly, if the value of the calculation result rij (l) is less than the minimum value w min , the value of the weight parameter wij (l) is corrected to the minimum value (threshold value) w min.
また、この最大値及び最小値で制限する処理を、バイアスパラメータbj (l)に対しても行う。つまり、バイアスパラメータbj (l)の計算結果を、min(bmax,max(bmin,bj (l)+Lap((bmax−bmin)/ε)))に設定する。 Further, the process of limiting this maximum value and the minimum value is also performed with respect to the bias parameters b j (l). That is, the calculation result of the bias parameter b j (l) is set to min (b max , max (b min , b j (l) + Lap ((b max −b min ) / ε)))).
[閾値を設定したときにε−差分プライバシを満たすことの説明]
次に、閾値(最大値、最小値)で誤差を制限したときのパラメータが、ε−差分プライバシを満たしたものであることを説明する。
上述したように、本実施の形態では、深層学習時の重みパラメータwij (l)やバイアスパラメータbj (l)(図4参照)として、重みパラメータwij (l)の理論上の最大幅(グローバルセンシティビティ)は(wmax−wmin)であり、バイアスパラメータbj (l)の理論上の最大幅(グローバルセンシティビティ)は(bmax−bmin)である。次に説明するように、学習済み重みパラメータwj (l)の計算結果を、min(wmax,max(wmin,bj (l)+Lap((wmax−wmin)/ε)))に設定し、学習済みバイアスパラメータbj (l)の計算結果を、min(bmax,max(bmin,bj (l)+Lap((bmax−bmin)/ε)))に設定することで、ε−差分プライバシを満たすことができる。
[Explanation of satisfying ε-differential privacy when threshold is set]
Next, it will be described that the parameters when the error is limited by the threshold value (maximum value, minimum value) satisfy the ε-difference privacy.
As described above, in this embodiment, as the weight parameters w ij during deep learning (l) and the bias parameter b j (l) (see FIG. 4), the maximum width of the theoretical weight parameter w ij (l) (Global sensitivity) is (w max −w min ), and the theoretical maximum width (global sensitivity ) of the bias parameter b j (l ) is (b max −b min ). As will be described next, the calculation result of the learned weight parameter w j (l) is calculated as min (w max , max (w min , b j (l) + Lap ((w max −w min ) / ε))). And set the calculation result of the learned bias parameter b j (l) to min (b max , max (b min , b j (l) + Lap ((b max −b min ) / ε)))). Therefore, the ε-differential privacy can be satisfied.
ランダムメカニズムAが、min(fmin, max(fmax,f(D)+Lap(Δf/ε)))を出力するとき、ランダムメカニズムAはε−差分プライバシを実現する。ここで、fmax及びfminは、f(D)が取り得る理論上の最大値と最小値である。
ここで、データベースDと、そのデータベースDに対して1レコードだけ異なるデータベースD′をおく。
また、F(D)=f(D)+Lap(Δf/ε)とおく。F(D)の値が[fmin,fmax]の範囲に入るとき、[数7]式が成立する。
When the random mechanism A outputs min (f min , max (f max , f (D) + Lap (Δf / ε))), the random mechanism A realizes ε-differential privacy. Here, f max and f min are the theoretical maximum and minimum values that f (D) can take.
Here, a database D and a database D'that differs from the database D by one record are placed.
Further, it is set as F (D) = f (D) + Lap (Δf / ε). When the value of F (D) falls within the range of [f min , f max ], the equation [Equation 7] is established.
次に、F(D)の値がfminを下回る場合を考える。このとき、A(D)の出力値はfminになる。A(D)の出力がfminになる確率は、次の[数9]式で表される。 Next, consider the case where the value of F (D) is less than f min. At this time, the output value of A (D) becomes f min. The probability that the output of A (D) will be f min is expressed by the following equation [Equation 9].
[数9]式において、Lap(v,u)は、スケールパラメータがvであり、平均との差がuである、ラプラス分布の確率密度関数の値を表す。
同様に、A(D′)の出力値がfminとなる確率は、次の[数10]式で表される。
In the equation [Equation 9], Lap (v, u) represents the value of the probability density function of the Laplace distribution in which the scale parameter is v and the difference from the average is u.
Similarly, the probability that the output value of A (D') is f min is expressed by the following equation [Equation 10].
[数9]式の値と、[数10]式の値の比は、最大で[数11]式で表される。 The ratio of the value of the formula [Equation 9] to the value of the formula [Equation 10] is expressed by the formula [Equation 11] at the maximum.
ここで、|f(D)−f(D′)|≦Δfであるから、[数11]式の値は、exp(ε)以下である。したがって、ε−差分プライバシを満たす。 Here, since | f (D) −f (D ′) | ≦ Δf, the value of the equation [Equation 11] is exp (ε) or less. Therefore, it satisfies ε-difference privacy.
次に、F(D)の値がfmax以上となる場合を考える。このとき、A(D)の出力値はfmaxに制限される。A(D)の出力がfmaxとなる確率は、次の[数12]式で表される。 Next, consider the case where the value of F (D) is f max or more. At this time, the output value of A (D) is limited to f max. The probability that the output of A (D) becomes f max is expressed by the following equation [Equation 12].
同様に、A(D′)の出力値がfmaxとなる確率は、次の[数13]式で表される。 Similarly, the probability that the output value of A (D') becomes f max is expressed by the following equation [Equation 13].
[数12]式の値と、[数13]式の値の比は、最大で[数14]式で表される。 The ratio of the value of the formula [Equation 12] to the value of the formula [Equation 13] is expressed by the formula [Equation 14] at the maximum.
ここで、|f(D)−f(D′)|≦Δfであるから、[数14]式の値は、exp(ε)以下である。したがって、ε−差分プライバシを満たす。
このように誤差を最大値と最小値の閾値に制限することがε−差分プライバシを満たすことは、全てのパラメータについて成立する。したがって、本実施の形態のように各パラメータの誤差を閾値で制限することで、ε−差分プライバシが成り立つ。
Here, since | f (D) −f (D ′) | ≦ Δf, the value of the equation [Equation 14] is exp (ε) or less. Therefore, it satisfies ε-difference privacy.
Limiting the error to the maximum and minimum thresholds in this way satisfies the ε-differential privacy holds for all parameters. Therefore, by limiting the error of each parameter with a threshold value as in the present embodiment, ε-differential privacy is established.
図9は、ここまで数式を用いて説明した、誤差を最大値と最小値の閾値に制限する処理の概略を示すものである。図9に示すように、例えばあるパラメータが取り得る値の範囲が“0”以上“1”以下であり、ある時点でのパラメータ値が0.8であるとする(グローバルセンシティビティは、最大値“1”と最小値“0”の差)。そして、このパラメータ値“0.8”に誤差を付与して、誤差付与済のパラメータ値が“1.1”になったとき、パラメータ値を閾値の範囲の上限値である“1”に制限する処理が行われる。
なお、この図9に示す例は、パラメータを閾値で制限する概略を非常に簡略化して示すものであり、実際の閾値に制限する処理は、ここまで数式を参照して説明した様々な条件を考慮して行われるものである。
FIG. 9 shows an outline of the process of limiting the error to the threshold value of the maximum value and the minimum value, which has been described by using the mathematical formula so far. As shown in FIG. 9, for example, it is assumed that the range of values that a certain parameter can take is "0" or more and "1" or less, and the parameter value at a certain point in time is 0.8 (global sensitivity is the maximum value). Difference between "1" and minimum value "0"). Then, an error is added to this parameter value "0.8", and when the parameter value to which the error has been added becomes "1.1", the parameter value is limited to "1" which is the upper limit value of the threshold range. Processing is performed.
In addition, the example shown in FIG. 9 shows the outline of limiting the parameter by the threshold value in a very simplified manner, and the process of limiting the parameter to the actual threshold value includes various conditions described with reference to the mathematical formulas so far. It is done in consideration.
[実データで評価した例]
図5は、本実施の形態の処理を、評価用のデータセットに対して実行した場合の例を示す。ここでは、評価用のデータセットとして、プライバシ保護データマイニングの分野で広く利用されている、[アダルトデータセット(Adult data set)]を利用する。[アダルトデータセット]は、15種類の属性(年齢、性別、人種、年収、など)から構成されており、欠損値を含むレコードを除外して、45,222レコードから成る。年収の属性は、各レコードの人物の年収が、5万ドルを超えているか否かの2値を取る。
そして、年収を除く14の属性から、年収が5万ドルを超えているか否かを予測する深層学習システムを構築する。
[Example of evaluation using actual data]
FIG. 5 shows an example when the processing of the present embodiment is executed on the data set for evaluation. Here, [Adult data set], which is widely used in the field of privacy protection data mining, is used as a data set for evaluation. The [Adult Data Set] is composed of 15 types of attributes (age, gender, race, annual income, etc.), and is composed of 45,222 records excluding records including missing values. The annual income attribute takes two values as to whether or not the annual income of a person on each record exceeds $ 50,000.
Then, from 14 attributes excluding the annual income, a deep learning system that predicts whether or not the annual income exceeds 50,000 dollars will be constructed.
まず、差分プライバシを満たすような匿名化を行わない、生データに対して事前実験を行い、深層学習モデルの精度が高くなるような深層学習アルゴリズムの構造を決定した。学習率は0.01、バッチサイズは50、エポック数は500、正則項は0.001、中間層の数は4(入力層、出力層を含めると、全部で5層)が良い結果を出した。 First, we conducted a preliminary experiment on raw data without anonymization to satisfy the differential privacy, and determined the structure of the deep learning algorithm so that the accuracy of the deep learning model would be high. Good results are obtained when the learning rate is 0.01, the batch size is 50, the number of epochs is 500, the regular term is 0.001, and the number of intermediate layers is 4 (5 layers in total including the input layer and output layer). did.
ここでは、10分割交差検定を行って、差分プライバシを満たす匿名化を行うと共に、その匿名化を行う際に、誤差の最大値と最小値を閾値に制限する処理を行った場合の匿名化モデルの精度を計測した。この例では、精度を評価する手法として、手法[accuracy]と手法[f−measure]を用いた。10分割交差検定は、データセットを9:1の比率で2つに分け、比率9の方のデータをトレーニングデータとし、比率1のデータをテストデータとする。すなわち、比率9のトレーニングデータを使って学習を行い、比率1のテストデータから、給料を除く14種類の属性を入力として学習済みの深層学習モデルに投入して、給料を予測する処理を行う。そして、その予測結果と、実際の値を比較して評価を行う。この評価を10回行うようにして、各レコードが一度ずつテストデータに含まれるようにする。
Here, a 10-fold cross-validation test is performed to perform anonymization that satisfies the differential privacy, and when the anonymization is performed, an anonymization model is performed when the maximum and minimum values of the error are limited to the threshold value. The accuracy of was measured. In this example, the method [accuracy] and the method [f-meter] were used as methods for evaluating the accuracy. In the 10-fold cross-validation test, the data set is divided into two at a ratio of 9: 1, the data of the ratio 9 is used as training data, and the data of
手法[accuracy]と手法[f−measure]の2つの評価指標の値(図5の縦軸)は、いずれも0から1までの値であり、1に近いほど精度が高いことを示す。図5の横軸はデータセットの数(バッチサイズ)を示し、図5A、図5B、図5Cは、それぞれε=1、ε=10、ε=100の場合を示す。
例えば、図5Cに示す例では、手法[accuracy]での評価指標値が0.85、手法[f−measure]の評価指標値が0.79となり、いずれも良好な精度が確保されていることが分かる。
The values of the two evaluation indexes (vertical axis in FIG. 5) of the method [accuracy] and the method [f-mere] are both values from 0 to 1, and the closer to 1 the higher the accuracy. The horizontal axis of FIG. 5 indicates the number of data sets (batch size), and FIGS. 5A, 5B, and 5C show the cases of ε = 1, ε = 10, and ε = 100, respectively.
For example, in the example shown in FIG. 5C, the evaluation index value of the method [accuracy] is 0.85, and the evaluation index value of the method [f-mease] is 0.79, and good accuracy is ensured in both cases. I understand.
<2.第2の実施の形態例>
次に、本発明の第2の実施の形態例を、図6〜図8を参照して説明する。この第2の実施の形態例を説明する図6〜図8において、第1の実施の形態例で説明した図1〜図5と同一の構成及び処理については同一符号を付し、詳細な説明を省略する。
<2. Example of the second embodiment>
Next, an example of the second embodiment of the present invention will be described with reference to FIGS. 6 to 8. In FIGS. 6 to 8 for explaining the second embodiment, the same components and processes as those in FIGS. 1 to 5 described in the first embodiment are designated by the same reference numerals and will be described in detail. Is omitted.
[システム全体の構成]
図6は、第2の実施の形態例のプライバシ保護データ提供システムの構成を示す。
データベース1には、個人情報が含まれる多数の生データが蓄積され、データベース1に蓄積された生データが、深層学習処理部20に供給される。深層学習処理部20は、予め用意された深層学習アルゴリズムを適用した演算を行うと同時に、深層学習の演算時に、差分プライバシに基づく匿名化処理を施して、匿名化済みの深層学習モデルである、匿名化モデル4を得る。
[System-wide configuration]
FIG. 6 shows the configuration of the privacy protection data providing system of the second embodiment.
A large amount of raw data including personal information is accumulated in the
深層学習処理部20が、差分プライバシに基づいて匿名化モデル4を得る際には、深層学習アルゴリズムで使用する重みパラメータ及びバイアスパラメータに対して、それぞれのパラメータ値の変動量にラプラス分布に基づいて誤差を与えて、差分プライバシの処理を施す。但し、それぞれのパラメータ値の変動量にラプラス分布に基づいた誤差を与える際には、その誤差として、最大値及び最小値を示す閾値で制限するようにした。
ラプラス分布に基づいた誤差を与えるということは、誤差を与えたパラメータ値が、確率的要素を含む値になり、結果的に匿名化が行われた匿名化モデル4が得られることになる。
深層学習処理部20が深層学習時に差分プライバシに基づいて匿名化モデル4を得るための誤差の生成は、図2に示した匿名化処理部10での処理と同様の構成で実現される。
When the deep
Giving an error based on the Laplace distribution means that the parameter value to which the error is given becomes a value including a stochastic element, and as a result, an anonymization model 4 in which anonymization is performed is obtained.
The generation of an error for the deep
[全体の処理の流れ]
図7は、第2の実施の形態例のプライバシ保護データ提供システムでの処理の流れを示すフローチャートである。
まず、深層学習処理部20は、データベース1から生データを取得する(ステップS31)。そして、深層学習処理部20は、取得した生データのパラメータの変動量に対して、グローバルセンシティビティによる制限を設定したラプラス分布に基づく誤差の付与を行いながら、予め用意された深層学習アルゴリズムを適用して深層学習を行う(ステップS32)。このときには、深層学習を行いながら逐次的に、パラメータの変動量のグローバルセンシティビティを計算する。パラメータの変動量のグローバルセンシティビティを計算することで、グローバルセンシティビティとプライバシ指標「ε」からラプラス分布が決まり、ラプラス分布で誤差を与えることで、匿名化が行われる。そして、深層学習処理の結果として、匿名化モデルを取得し(ステップS33)、得られた匿名化モデルをデータ出力部19から出力する。
[Overall processing flow]
FIG. 7 is a flowchart showing a processing flow in the privacy protection data providing system of the second embodiment.
First, the deep
ステップS32において、匿名化処理の制限に使用される閾値は、深層学習処理部20における、重みパラメータの変動量の最大値及び最小値を示す閾値と、バイアスパラメータの変動量の最大値及び最小値を示す閾値である。
In step S32, the threshold values used for limiting the anonymization process are the threshold value indicating the maximum and minimum values of the fluctuation amount of the weight parameter in the deep
[深層学習の詳細]
次に、ここまで説明したステップS31〜S33の各処理の詳細について説明する。
本実施の形態例では、活性化関数と誤差関数を事前に決めて、匿名化された深層学習を行う。
例えば、f(x)=max(0;x)で定義されるReLUが、深層学習の最終層を除く活性化関数として広く利用されている。
深層学習の利用目的として、カテゴリ分類の場合、最終層の活性化関数(F(L))
としてソフトマックス関数が、また、誤差関数としてクロスエントロピー誤差関数が広く利用されている。
ソフトマックス関数は、次の[数15]式のように定義される。
[Details of deep learning]
Next, the details of each process of steps S31 to S33 described so far will be described.
In the embodiment of the present embodiment, the activation function and the error function are determined in advance, and anonymized deep learning is performed.
For example, ReLU defined by f (x) = max (0; x) is widely used as an activation function excluding the final layer of deep learning.
For the purpose of using deep learning, in the case of categorization, the activation function of the final layer (F (L))
The softmax function is widely used as an error function, and the cross entropy error function is widely used as an error function.
The softmax function is defined as the following equation [Equation 15].
また、クロスエントロピー誤差関数は、次の[数16]式のように定義される。 Further, the cross entropy error function is defined as the following equation [Equation 16].
ここでは、匿名化された深層学習を行う場合、深層学習を行う最終層を除く各層は、活性化関数ReLUを、最終層の活性化関数としてソフトマックス関数を、誤差関数としてクロスエントロピー誤差関数を利用する。
最終層の活性化関数がソフトマックス関数であり、かつ、誤差関数がクロスエントロピー誤差関数の場合、誤差信号δj(L) for j=1,・・・,n(L)の値は、次の[数17]式に示すように計算される。
Here, when performing anonymized deep learning, each layer except the final layer for deep learning uses the activation function ReLU, the softmax function as the activation function of the final layer, and the cross entropy error function as the error function. Use.
When the activation function of the final layer is the softmax function and the error function is the cross entropy error function, the values of the error signals δ j (L) for j = 1, ···, n (L) are as follows. It is calculated as shown in the formula [Equation 17] of.
[数17]式において、yj (L)はノードNj (L)の出力値を表し、tj (L)はノードNj (L)の目標出力値を表す。
最終層以外の層において活性化関数ReLUを使った場合、最終層以外の各ノードの誤差信号δj (l)=1,・・・,L−1は次の[数18]式で計算される。
In the equation [Equation 17], y j (L) represents the output value of the node N j (L) , and t j (L) represents the target output value of the node N j (L).
When the activation function ReLU is used in a layer other than the final layer, the error signals δ j (l) = 1, ···, L-1 of each node other than the final layer are calculated by the following equation [Equation 18]. To.
xj (1)の値として取り得る範囲は、[bj (1)+Σimin(wi,j (1),0), bj (1)+Σimax(wi,j (1),0)]である。また、xj (2)の値として取り得る範囲は、[bj (2)+Σi(bi (1)+Σkmax(wk,i (1),0))min(wi,j (2),0), bj (2)+Σi(bi (1)+Σkmax(wk,i (1),0))max(wi,j (2),0)]となる。深層学習では、xj (l) for l=1,・・・,Lは、次の[数19]式で計算される。 The range that can be taken as the value of x j (1) is [b j (1) + Σ i min (wi , j (1) , 0), b j (1) + Σ i max (wi , j (1)). , 0)]. Also, the possible range as the value of x j (2) is, [b j (2) + Σ i (b i (1) + Σ k max (w k, i (1), 0)) min (w i, j (2), 0), b j (2) + Σ i (b i (1) + Σ k max (w k, i (1), 0)) max (w i, j (2), a 0)] .. In deep learning, x j (l) for l = 1, ..., L is calculated by the following equation [Equation 19].
ここで、min(yi (0))=0であり、max(yi (0))=1である。これは、深層学習の第1層目への入力値を0以上1以下の範囲に正規化しているためである。また、最終層以外の層では、活性化関数ReLUを使っているので、l=1,・・・,L−1において、yj (l)は、次の[数20]式によって計算される。 Here, min (y i (0) ) = 0 and max (y i (0) ) = 1. This is because the input value to the first layer of deep learning is normalized to the range of 0 or more and 1 or less. Further, since the activation function ReLU is used in the layers other than the final layer, y j (l) is calculated by the following equation [Equation 20] at l = 1, ..., L-1. ..
これによって、max(yj (l))の値は、常に0以上であることがわかる。
次に、誤差信号δj (l)の取り得る値の範囲を計算する。深層学習モデルの出力値の範囲は、−1から1までであるので、次の[数21]式のように定義される。
From this, it can be seen that the value of max (y j (l)) is always 0 or more.
Next, the range of possible values of the error signal δ j (l) is calculated. Since the range of the output value of the deep learning model is from -1 to 1, it is defined as the following equation [Equation 21].
また、l=1,・・・,L−1について、次の[数22]式で示される。ここで、全てのjとlについて、min(δj (l))であり、max(δj (l))≧0である。 Further, l = 1, ..., L-1 is expressed by the following equation [Equation 22]. Here, for all j and l, min (δ j (l) ) and max (δ j (l) ) ≧ 0.
最終的には、次の[数23]式が得られる。 Finally, the following equation [Equation 23] is obtained.
bj (l)については、次の[数24]式で示される。 b j (l) is expressed by the following equation [Equation 24].
また、l=1,・・・,L−1について、次の[数25]式で示される。 Further, l = 1, ..., L-1 is expressed by the following equation [Equation 25].
既に述べたように、重みパラメータの変動量Δwij (l)と、バイアスパラメータの変動量Δbj (l)に基づいて、重みパラメータとバイアスパラメータを、[数5]式と[数6]式により更新する。つまり、データ入力ごとに毎回、重みパラメータとバイアスパラメータを更新する。
ここで本実施の形態例では、このときの変動量にラプラス分布に基づく誤差を与える。重みパラメータの変動量Δwij (l)と、バイアスパラメータの変動量Δbj (l)についても、値の閾値を設定する。
As already mentioned, the variation amount [Delta] w ij of the weighting parameters (l), based on the bias parameters of the variation amount [Delta] b j (l), the weighting parameters and the bias parameter, [Expression 5] equation [6] where Update by. That is, the weight and bias parameters are updated each time data is entered.
Here, in the example of the present embodiment, an error based on the Laplace distribution is given to the fluctuation amount at this time. A variation amount [Delta] w ij of the weighting parameters (l), for a bias parameter variation amount Δb j (l), sets the threshold value.
ここでは、ΔwmaxとΔwminを、重みパラメータの変動量Δwij (l)の最大値と最小値とする。また、ΔbmaxとΔbminを、バイアスパラメータΔbj (l)の最大値と最小値とする。 Here, Δw max and Δw min are the maximum and minimum values of the fluctuation amount Δw ij (l) of the weight parameter. Further, Δb max and Δb min are set as the maximum and minimum values of the bias parameters Δb j (l).
また、深層学習のエポック数をEとおく。各バッチに対して学習を行う際に、それぞれのwij (l)とbj (l)に対して、重みパラメータの変動量Δwij (l)を、min(Δwmax, min(Δwmax,wij (l)+Lap((Δwmax−Δwmin)・E/ε)))に設定する。また、バイアスパラメータの変動量Δbj (l)をmin(Δbmax, max(Δbmin,bj (l)+Lap((Δbmax−Δbmin)・E/ε)))に設定する。 Also, let E be the number of epochs for deep learning. When performing learning for each batch, for each w ij (l) and b j (l), the variation amount [Delta] w ij of the weighting parameters (l), min (Δw max , min (Δw max, w ij (l) + Lap ((Δw max −Δw min ) ・ E / ε)))). Further, the fluctuation amount Δb j (l) of the bias parameter is set to min (Δb max , max (Δb min , b j (l) + Lap ((Δb max − Δb min ) · E / ε))).
[閾値を設定したときにε−差分プライバシを満たすことの説明]
次に、深層学習を行う際に、パラメータを閾値(最大値,最小値)で誤差を制限した匿名モデルが、ε−差分プライバシを満たしたものであることを説明する。
各重みパラメータとバイアスパラメータは、[数5]式と[数6]式に基づいて更新される。[数5]式と[数6]式において、重みパラメータの変動量Δwij (l)とバイアスパラメータの変動量Δbj (l)は学習の入力値に依存して変わるが、それ以外の値は入力値に依存しない。したがって、第1の実施の形態で、閾値を設定したときにε−差分プライバシを満たすことを証明した場合と同様に、Δwij (l)をmin(Δwmax, max(Δwmin,wij (l)+Lap((Δwmax−Δwmin)・E/ε)))に設定し、また、Δbj (l)をmin(Δbmax, max(Δbmin,bj (l)+Lap((Δbmax−Δbmin)・E/ε)))に設定することで、各エポックのイテレーションは、パラメータベース(ε/E)−差分プライバシを満たす。
全体でEエポックあるので、次に説明する証明より、最終的にε−差分プライバシを満たす。
[Explanation of satisfying ε-differential privacy when threshold is set]
Next, it will be described that the anonymous model in which the error is limited by the threshold value (maximum value, minimum value) of the parameters when performing deep learning satisfies the ε-differential privacy.
Each weight parameter and bias parameter is updated based on the [Equation 5] and [Equation 6] equations. In Equation 5 equation [6] where it variation [Delta] w ij of the weighting parameters (l) and the bias parameter variation amount [Delta] b j (l) will vary depending on the input value of the learning, other values Does not depend on the input value. Thus, in the first embodiment, as in the case of proving that satisfying ε- difference privacy when setting the threshold value, [Delta] w ij (l) a min (Δw max, max (Δw min, w ij ( l) + Lap ((Δw max −Δw min ) · E / ε))), and set Δb j (l) to min (Δb max , max (Δb min , b j (l)) + Lap ((Δb max)) By setting −Δb min ) · E / ε)))), the iteration of each epoch satisfies the parameter base (ε / E) − differential privacy.
Since there is an E epoch as a whole, the ε-differential privacy is finally satisfied from the proof described below.
ランダムメカニズムAが、d個のランダムメカニズムA1,・・・,Adから成り立っており、これを1回ずつ続けて実施するものとする。ここでは、i≧2において、Aiは入力としてAi−1の出力値を取る。Adの出力値が、Aの出力値となる。
各Aiは、パラメータベースεi−差分プライバシを満たすものとする。このとき、Aはパラメータベース(Σi=1 dεi)の差分プライバシを実現する。
Random mechanism A is, d number of random mechanism A 1, ···, which consists of A d, shall be carried out continues to this once. Here, when i ≧ 2, A i takes the output value of A i-1 as an input. The output value of Ad becomes the output value of A.
Each A i shall satisfy the parameter base ε i − differential privacy. At this time, A realizes a parameter-based (Σ i = 1 d ε i ) differential privacy.
ランダムメカニズムAは、d個のランダムメカニズムA1,・・・,Adから成り立っており、これを1回ずつ続けて実施するものとする。i≧2において、Aiは入力としてAi−1の出力値を取る。Adの出力値が、Aの出力値となる。ここで、各Aiは、εi−差分プライバシを満たすものとする。このとき、ランダムメカニズムAは(Σi=1 dεi)−差分プライバシを実現する。
この処理は各パラメータに対して実行されるので、ここでのランダムメカニズムAは、パラメータベース(Σi=1 dεi)−差分プライバシを実現する。
Random mechanism A is, d number of random mechanism A 1, ···, which consists of A d, shall be carried out continues to this once. When i ≧ 2, A i takes the output value of A i-1 as an input. The output value of Ad becomes the output value of A. Here, it is assumed that each A i satisfies ε i − differential privacy. At this time, the random mechanism A realizes (Σ i = 1 d ε i ) -differential privacy.
Since this process is executed for each parameter, the random mechanism A here realizes parameter base (Σ i = 1 d ε i ) -differential privacy.
図10は、第2の実施の形態例での、誤差を最大値と最小値の閾値に制限する処理の概略を示すものである。図10に示すように、例えばあるパラメータの変動量として取り得る最大の範囲が“0”以上“1”以下であり、ある時点での変動量が0.6であるとする。そして、学習しながら逐次的に算出された閾値の範囲が、“0.3”以上“0.7”以下であるとする(この場合のグローバルセンシティビティは、0.7―0.3=0.4)。この閾値の範囲(グローバルセンシティビティ)とプライバシ指標「ε」からラプラス分布が決まる。ラプラス分布で誤差を与える処理が行われる。なお、グローバルセンシティビティ(Δf)は、既に説明した[数8]式で計算されるものである。
ここで、図10に示すように、パラメータの変動量“0.5”に誤差を付与して、誤差付与済のパラメータの変動量が“0.1”になったとき、その時点での閾値の範囲の下限値である“0.3”に制限する処理が行われる。ラプラス分布はグローバルセンシティビティとプライバシ指標「ε」から計算されるため、グローバルセンシティビティの値を小さく(つまり閾値の幅を小さく)することで、ラプラス分布の誤差を小さくすることができ、深層学習の精度の向上につながる。
この図10に示す例についても、図9の例と同様に、パラメータの変動量を閾値で制限する概略を非常に簡略化して示すものであり、実際の閾値に制限する処理は、ここまで数式を参照して説明した様々な条件を考慮して行われるものである。
また、第2の実施の形態例の場合でも、グローバルセンシティビティ(Δf)が、パラメータの変動量として取り得る最大の範囲と一致する場合には、図9に示す状態で閾値の制限が行われることになる。
FIG. 10 shows an outline of the process of limiting the error to the threshold values of the maximum value and the minimum value in the second embodiment. As shown in FIG. 10, for example, it is assumed that the maximum range that can be taken as the fluctuation amount of a certain parameter is “0” or more and “1” or less, and the fluctuation amount at a certain point in time is 0.6. Then, it is assumed that the range of the threshold values calculated sequentially while learning is "0.3" or more and "0.7" or less (the global sensitivity in this case is 0.7-0.3 = 0). .4). The Laplace distribution is determined from this threshold range (global sensitivity) and the privacy index "ε". Processing that gives an error in the Laplace distribution is performed. The global sensitivity (Δf) is calculated by the equation [Equation 8] already described.
Here, as shown in FIG. 10, when an error is added to the parameter fluctuation amount “0.5” and the error-added parameter fluctuation amount becomes “0.1”, the threshold value at that time is reached. The process of limiting to "0.3", which is the lower limit of the range of, is performed. Since the Laplace distribution is calculated from the global sensitivity and privacy index "ε", the error of the Laplace distribution can be reduced by reducing the value of global sensitivity (that is, reducing the threshold width), and deep learning. It leads to the improvement of the accuracy of.
Similar to the example of FIG. 9, the example shown in FIG. 10 also shows the outline of limiting the fluctuation amount of the parameter by the threshold value in a very simplified manner. It is carried out in consideration of various conditions explained with reference to.
Further, even in the case of the second embodiment, if the global sensitivity (Δf) matches the maximum range that can be taken as the fluctuation amount of the parameter, the threshold value is limited in the state shown in FIG. It will be.
[実データで評価した例]
図8は、本実施の形態の処理を、評価用のデータセットに対して実行した場合の例を示す。この図8の例は、第1の実施の形態で説明した図5での評価と同じ条件で行ったものである。
図8の横軸はデータセットの数(バッチサイズ)を示し、図8A、図8B、図8Cは、それぞれε=1、ε=10、ε=100の場合を示す。
図8A、図8B、図8Cに示すように、いずれの場合でも良好な精度が確保されていることが分かる。ここで、図5(第1の実施の形態例)と、図8(第2の実施の形態例)とを比較すると分かるように、εの値が小さいときは、第1の実施の形態例の方が、高い精度が得られる。一方、εの値が大きいときは、第2の実施の形態例の方が、高い精度が得られる。但し、この結果は使用するデータセットによって変わるものであり、いずれの実施の形態を適用するのが好ましいかは、使用するデータセットによって異なる。
[Example of evaluation using actual data]
FIG. 8 shows an example in which the processing of the present embodiment is executed on the data set for evaluation. The example of FIG. 8 is performed under the same conditions as the evaluation of FIG. 5 described in the first embodiment.
The horizontal axis of FIG. 8 indicates the number of data sets (batch size), and FIGS. 8A, 8B, and 8C show the cases of ε = 1, ε = 10, and ε = 100, respectively.
As shown in FIGS. 8A, 8B, and 8C, it can be seen that good accuracy is ensured in all cases. Here, as can be seen by comparing FIG. 5 (example of the first embodiment) and FIG. 8 (example of the second embodiment), when the value of ε is small, the example of the first embodiment Higher accuracy can be obtained. On the other hand, when the value of ε is large, higher accuracy can be obtained in the second embodiment. However, this result varies depending on the data set used, and which embodiment is preferably applied depends on the data set used.
なお、図5及び図8に示す評価例では、予測した年収が5万ドル以下で、実際の年収が5万ドル以下である場合の回数をTN、予測した年収が5万ドル以下で、実際の年収が5万ドルを超えている場合の回数をFNとした。また、予測した年収が5万ドルを超えていて、実際に5万ドルを超えている場合の回数をTP、予測した年収が5万ドルを超えていて、実際の年収が5万ドル以下である場合の回数をFPとした。
このとき、手法[accuracy]では、[数26]式での評価を行う。また、手法[f−measure]では、[数27]式での評価を行う。
In the evaluation examples shown in FIGS. 5 and 8, the number of times when the predicted annual income is 50,000 dollars or less and the actual annual income is 50,000 dollars or less is TN, and the predicted annual income is 50,000 dollars or less. The number of times when the annual income exceeds 50,000 dollars is defined as FN. In addition, the number of times when the predicted annual income exceeds 50,000 dollars and actually exceeds 50,000 dollars is TP, the predicted annual income exceeds 50,000 dollars, and the actual annual income is 50,000 dollars or less. The number of times in a certain case was defined as FP.
At this time, in the method [accuracy], the evaluation is performed by the equation [Equation 26]. Further, in the method [f-meter], the evaluation is performed by the equation [Equation 27].
以上説明したように、本発明の各実施の形態によると、ラプラス分布に基づいた誤差を与えて匿名化を行う際に、その誤差の最大値と最小値を閾値で制限するようにしたことで、匿名化を行う際に与える誤差を一定の範囲に制限することができ、誤差が少ない適切な匿名化を行うことができる。その結果、深層学習モデルの精度低下を軽減できるようになる。 As described above, according to each embodiment of the present invention, when anonymization is performed by giving an error based on the Laplace distribution, the maximum value and the minimum value of the error are limited by a threshold value. , The error given when performing anonymization can be limited to a certain range, and appropriate anonymization with less error can be performed. As a result, it becomes possible to reduce the decrease in accuracy of the deep learning model.
なお、ここまで説明した数式は、本発明の各実施の形態を適用する場合の好適な一例を示したものであり、本発明は、これらの数式で説明した処理に限定されるものではない。 The mathematical formulas described so far show suitable examples when applying each embodiment of the present invention, and the present invention is not limited to the processes described in these mathematical formulas.
1…データベース(生データ)、2…深層学習処理部、3…深層学習モデル、4…匿名化モデル(匿名化済の深層学習モデル)、10…匿名化処理部(閾値制限付き差分プライバシ適用)、11…データ入力部、12…ε入力部、13…パラメータ構造決定部、14…パラメータ初期値決定部、15…閾値決定部、16…閾値超え判定部、17…閾値計算部、18…匿名化演算部、19…データ出力部、20…機械学習処理部(差分プライバシ適用) 1 ... database (raw data), 2 ... deep learning processing unit, 3 ... deep learning model, 4 ... anonymized model (anonymized deep learning model), 10 ... anonymized processing unit (differential privacy application with threshold limitation) , 11 ... data input unit, 12 ... ε input unit, 13 ... parameter structure determination unit, 14 ... parameter initial value determination unit, 15 ... threshold determination unit, 16 ... threshold exceeding determination unit, 17 ... threshold calculation unit, 18 ... anonymous Chemical calculation unit, 19 ... Data output unit, 20 ... Machine learning processing unit (differential privacy applied)
Claims (3)
前記深層学習処理部で得られた深層学習モデルに対して、差分プライバシに基づく匿名化処理を施して匿名モデルを得る匿名化処理部と、を備えたプライバシ保護データ提供システムであり、
前記匿名化処理部は、前記深層学習モデルに含まれる重みパラメータ及びバイアスパラメータに対して、それぞれのパラメータ値にラプラス分布に基づいた誤差を与えると共に、ラプラス分布に基づいて誤差を与えた各パラメータが、最大値及び最小値で示される閾値の範囲を超えたとき、前記閾値の範囲に制限するようにしたことを特徴とする
プライバシ保護データ提供システム。 A deep learning processing unit that applies a deep learning algorithm to the raw data in the database to obtain a deep learning model,
A privacy protection data providing system including an anonymization processing unit that obtains an anonymization model by performing anonymization processing based on differential privacy on the deep learning model obtained by the deep learning processing unit.
The anonymization processing unit gives an error based on the Laplace distribution to each parameter value for the weight parameter and the bias parameter included in the deep learning model, and each parameter to which the error is given based on the Laplace distribution , A privacy protection data providing system, characterized in that when the range of the thresholds indicated by the maximum value and the minimum value is exceeded, the range of the thresholds is limited.
前記深層学習処理部は、深層学習モデルを得る演算時に使用する重みパラメータ及びバイアスパラメータに対して、それぞれのパラメータ値にラプラス分布に基づいた誤差を与えると共に、ラプラス分布に基づいて誤差を与えた各パラメータが、最大値及び最小値で示される閾値の範囲を超えたとき、前記閾値の範囲に制限するようにしたことを特徴とする
プライバシ保護データ提供システム。 It is a privacy protection data providing system equipped with a deep learning processing unit that applies a deep learning algorithm to obtain an anonymous model that has been deep learned while performing anonymization processing based on differential privacy on the raw data in the database.
The deep learning processing unit gives an error based on the Laplace distribution to each parameter value for the weight parameter and the bias parameter used in the calculation for obtaining the deep learning model, and gives an error based on the Laplace distribution. A privacy protection data providing system characterized in that when a parameter exceeds a range of thresholds indicated by a maximum value and a minimum value, the parameter is limited to the range of the threshold value.
その逐次的に取得した前記ラプラス分布に基づいた誤差を与えるようにした
請求項2に記載のプライバシ保護データ提供システム。 When the deep learning processing unit obtains a deep learning model, it sequentially calculates global sensitivities and performs a process of acquiring the Laplace distribution based on the calculated global sensitivities.
The privacy protection data providing system according to claim 2, wherein an error is given based on the sequentially acquired Laplace distribution.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016239460A JP6835559B2 (en) | 2016-12-09 | 2016-12-09 | Privacy protection data provision system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016239460A JP6835559B2 (en) | 2016-12-09 | 2016-12-09 | Privacy protection data provision system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018097467A JP2018097467A (en) | 2018-06-21 |
JP6835559B2 true JP6835559B2 (en) | 2021-02-24 |
Family
ID=62633568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016239460A Active JP6835559B2 (en) | 2016-12-09 | 2016-12-09 | Privacy protection data provision system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6835559B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102180617B1 (en) * | 2017-12-07 | 2020-11-19 | 한국과학기술원 | Apparatus and system for machine learning using coding technique |
CN109241774B (en) * | 2018-09-19 | 2020-11-10 | 华中科技大学 | Differential privacy space decomposition method and system |
WO2020250724A1 (en) * | 2019-06-11 | 2020-12-17 | ソニー株式会社 | Information processing method, information processing device, and program |
US12067144B2 (en) * | 2021-02-19 | 2024-08-20 | Samsung Electronics Co., Ltd. | System and method for privacy-preserving user data collection |
CN113379069A (en) * | 2021-07-06 | 2021-09-10 | 中国科学技术大学 | Online learning method with time delay release and meeting differential privacy |
JP2023018517A (en) | 2021-07-27 | 2023-02-08 | トヨタ自動車株式会社 | Machine learning model providing system, and machine learning model providing method |
CN115809483B (en) * | 2023-01-20 | 2023-04-28 | 武汉大学 | Self-adaptive adjustment method of related Laplace mechanism in dynamic release of position data |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10146958B2 (en) * | 2013-03-14 | 2018-12-04 | Mitsubishi Electric Research Laboratories, Inc. | Privacy preserving statistical analysis on distributed databases |
JP6310345B2 (en) * | 2014-06-30 | 2018-04-11 | 株式会社Nttドコモ | Privacy protection device, privacy protection method, and database creation method |
JP6177448B2 (en) * | 2014-09-22 | 2017-08-09 | 株式会社日立製作所 | Data processing method and data processing system |
CN106033555A (en) * | 2015-03-13 | 2016-10-19 | 中国科学院声学研究所 | Big data processing method based on depth learning model satisfying K-dimensional sparsity constraint |
-
2016
- 2016-12-09 JP JP2016239460A patent/JP6835559B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018097467A (en) | 2018-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6835559B2 (en) | Privacy protection data provision system | |
Zhang et al. | Managing non-cooperative behaviors in consensus-based multiple attribute group decision making: An approach based on social network analysis | |
Kocadağlı et al. | Nonlinear time series forecasting with Bayesian neural networks | |
EP3690677B1 (en) | Differentially private query budget refunding | |
Lopez-Martin et al. | Software development effort prediction of industrial projects applying a general regression neural network | |
Gupta et al. | Recommender system using fuzzy c-means clustering and genetic algorithm based weighted similarity measure | |
Zhang et al. | Comparing the prediction of joint species distribution models with respect to characteristics of sampling data | |
Kaushik et al. | Integrating firefly algorithm in artificial neural network models for accurate software cost predictions | |
JP6950756B2 (en) | Neural network rank optimizer and optimization method | |
Kaya et al. | Fuzzy process capability indices with asymmetric tolerances | |
CN109471982B (en) | Web service recommendation method based on QoS (quality of service) perception of user and service clustering | |
CN110119540B (en) | Multi-output gradient lifting tree modeling method for survival risk analysis | |
Leung et al. | On the selection of weight decay parameter for faulty networks | |
CN110675912A (en) | Gene regulation and control network construction method based on structure prediction | |
Ardimansyah et al. | Preprocessing matrix factorization for solving data sparsity on memory-based collaborative filtering | |
Dobles et al. | Machine learning methods for climbing route classification | |
Quan et al. | Rank-based approach for estimating correlations in mixed ordinal data | |
Peerlings et al. | Multivariate density estimation by neural networks | |
CN117237053B (en) | Air ticket distribution platform and control method thereof | |
Bova et al. | Hybrid method for prediction of users’ information behavior in the Internet based on bioinspired search | |
Burkhardt | Bayesian parameter inference of explosive yields using markov chain Monte Carlo techniques | |
CN113035363B (en) | Probability density weighted genetic metabolic disease screening data mixed sampling method | |
Naka et al. | A Comparative analysis of different Feature Selection methods on a Parkinson Data | |
CN114722273A (en) | Network alignment method, device and equipment based on local structural feature enhancement | |
Deutsch | Constrained smoothing of histograms and scatterplots with simulated annealing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170411 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191015 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200729 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210106 |
|
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: 20210126 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6835559 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |