ホーム » 技術 » 【技術】合成データの種類と特徴

はじめに

近年のIT技術の進歩に伴って、研究機関や企業によって多種多様なデータが収集されています。そして、収集されたデータを広く公開することが科学技術の発展や社会福祉の充実のために有益であると考えられています。しかし、これらのデータには個人情報や機密情報も含まれている場合があるため、公開前にデータをサニタイズしてプライバシーの保護や開示リスクの軽減に努める必要があります。

合成データ(Synthetic Data)は、元データの統計的性質あるいは構造を維持しつつ、ある種のアルゴリズムや人工知能によって生成されたデータのことです。このような合成データを用いることは、入手困難なデータを必要とする新しい技術開発やアプリケーションの検証を可能にするため、アカデミック分野においても近年注目されています。

本記事では、レビュー論文[1,2]を参考に、合成データの種類とその特徴について概説します。

なお、合成データについての詳しい説明は前回の記事をご参照ください。

【技術】合成データとは – プライバシーテック研究所

合成データの種類

合成データは、3つのカテゴリに分類されます[3]。

完全合成データ(Fully Synthetic Data)

完全合成データは、その名前の通り、元のデータを含まない完全に合成されたデータです。元のデータを含まないため、プライバシー保護の観点では非常に強力なものですが、データの真実性は失われます

完全合成データの生成には、調査データに対するベイズ分析と欠損値に対する多重代入法[4]が使用されます。ここで、ベイズ分析および多重代入法の簡単な説明を以下に記します。

ベイズ分析

ベイズの定理を基に構築されたベイズ統計学を用いた分析手法です。$P(X)$を事象$X$の確率、$P(Y|X)$を事象$X$のもとでの事象$Y$の条件付き確率とすると、事象$A$と事象$B$に対してベイズの定理は次のように表されます。

$$ P(A|B)=\frac{P(A)P(B|A)}{P(B)} $$

これは、もともと事象$A$が起きる確率$P(A)$は、事象$B$が起きるという新たな情報が得られた後では$P(A|B)$になることを意味します。そのため、$P(A)$は事前確率、$P(A|B)$は事後確率と呼ばれます。

このベイズの定理を用いると、新たな情報を手に入れる度に求めたい確率を更新することができます。

多重代入法[4]

多重代入法では、欠損値を含むデータの事後分布をベイズ分析によって求め、事後分布から得られた$M$個のデータセットに対して適当な統計分析を行い、$M$個の分析結果を統合して点推定値を算出します。このとき、統合した点推定値$\hat{\theta}_F$は、以下のように表されます。

$$ \hat{\theta}_F=\frac{1}{M}\sum_{l}\hat{\theta}_l $$

ここで、$\hat{\theta}_l$は$l$番目のデータセットに基づいた点推定値です。また、$\hat{\theta}_l$の分散推定値を$v_l$とすると、$\hat{\theta}_F$の分散推定値$T_F$は

$$ T_F=-\frac{1}{M}\sum_{l}v_l\ +\ \left(1+\frac{1}{M}\right)\left[\frac{1}{M-1}\sum_l(\hat{\theta}_l-\hat{\theta}_F)^2\right] $$

で計算されます。

ベイズ分析と多重代入法を用いた合成データの生成について具体的に説明します[5]。

準備として、以下のように文字を定義します。

  • ある母集団に属するサンプル数を$N$とし、そこから$n$個のデータを抽出する。
  • $X$を母集団に属するいくつかの変数とし、$Y$を欠損値を含む変数とする。
  • $Y_{inc}$ を$Y$の欠損していないデータとし、$Y_{exc}$ を$Y$の欠損しているデータとします。

このとき、次の手順により合成データを生成することができます。

1. $(N-n)$個のデータから、ベイズ分析により事後分布$f(Y_{exc}|X, Y_{inc})$を求めます。

2. 求めた事後分布$f(Y_{exc}|X, Y_{inc})$から$Y_{exc}M$回の無作為抽出を行い、要素数$Y_{exc}$の合成データ母集団を$M$個構築します。

3. 得られた合成データ母集団から、いくつかサンプリングして合成データを生成します。なお、ここでのサンプリングは合成データのデータ数を調整するためのものであり、必ずしも必要ではありません。また、ここで得られた合成データは事後分布$f(Y_{exc}|X, Y_{inc})$から得られたデータのみで構成されており、元のデータを含みません。

4. 多重代入法で示した合成データから計算される推定量と元のデータから計算される推定量を比較することで、得られた合成データの統計的妥当性を調べます。

このように、ベイズ分析と多重代入法を用いることで、元のデータを含まない完全に合成されたデータの生成、および、その統計的妥当性の確認を行うことができます。しかし、現実で扱うデータは非常に多くの変数を含んでいるため、完全合成データの作成は複雑な作業となります。そこで、データを機密性の高い情報と機密性の低い情報に分け、機密性の高い情報に属する変数のみでデータを合成する部分合成データという方法が考えられました。

部分合成データ(Partially Synthetic Data)

部分合成データは、機密性の高い情報のみを合成値に置き換えたデータです。元のデータが含まれているため、プライバシー保護の観点では完全合成データに劣る可能性があります。

部分合成データの生成に関する先駆的研究は1993年にLittle[6]によって行われ、その後、機密性保護のために変更されるデータ量を抑えるための新たな手法が2004年にLittleら[7]によって発表されています。

完全合成データで与えられた点推定値$\hat{\theta}_F$は部分合成データでも適用できますが、分散推定値$T_F$はそのままの形で適用できないことがReiter[8]によって実証されました。Reiterは、部分合成データにおける分散推定値$T_P$として以下の式を提案しています。

$$ T_p=\frac{1}{M}\sum_{l}v_l\ +\ \frac{1}{M}\left[\frac{1}{M-1}\sum_l(\hat{\theta}_l-\hat{\theta}_F)^2\right] $$

ハイブリッド合成データ(Hybrid Synthetic Data)

ハイブリッド合成データは、元のデータと合成データの両方を用いて生成されるデータです。ハイブリッド合成データには完全合成データと部分合成データの両方の利点があるため、優れたプライバシー保護を提供しますが、より多くのメモリと処理時間を要します

合成データの生成方法

Surenda & Mohanの論文[1]によると、2006年から2016年に発表された合成データの生成方法22種類のうち、完全合成データの生成を含むものが20種類あるのに対して、部分合成データの生成を含むものは5種類しかないようです(詳細は論文[1]をご参照ください)。これは、部分合成データには元のデータの情報が含まれているため、厳格なプライバシー保護技術の必要性に起因すると考えられます。なお、ハイブリッド合成データについては、計算の複雑さから実用的なところまで進んでいないのが現状です。

ソフトウェアパッケージ

Abowd & Woodcock[9,10]は、逐次回帰アプローチを用いて合成データを生成する手法を提案しています。この手法は、Rパッケージであるsynthpop[11]やIVEware[12,13]に実装されています。

また、合成データの生成に関する多くのソフトウェアパッケージがGitHub[14]で公開されています。

まとめ

本記事では、レビュー論文[1,2]を参考に、合成データの種類と特徴を概説しました。

  • 完全合成データは、元のデータを含まないためプライバシー保護の観点で非常に強力であるが、データの真実性は失われる
  • 部分合成データは、元のデータを含んでいるためプライバシー保護の観点で完全合成データに劣る可能性がある
  • ハイブリッド合成データは、完全合成データや部分合成データと比較して優れたプライバシー保護を提供できるが、多くのメモリと処理時間を要する

参考文献

[1] H. Surendra and H. S. Mohan, A review of synthetic data generation methods for privacy preserving data publishing, International Journal of Scientific and Technology Research, 6, 3, 95 (2017).

[2] T. E. Raghunathan, Synthetic data, Annual Review of Statistics and Its Application, 8, 129 (2021).

[3] C. C. Aggarwal and P. S. Yu, Privacy- Preserving Data Mining: Models and Algorithms, Springer series in Advances in Database Systems, 34 (2008).

[4] D. B. Rubin, Multiple Imputation for Nonresponse in Surveys, New York: Wiley (1987).

[5] J. Drechsler, Generating multiply imputed synthetic datasets: theory and implementation, Ph.D. thesis, Bamberg, Univ., Diss. (2010).

[6] R. J. A. Little, Statistical analysis of masked data, Journal of Official Statistics, 9, 407 (1993).

[7] R. J. A. Little, F. Liu, and T. E. Raghunathan, Statistical disclosure techniques based on multiple imputation, In Applied Modeling and Causal Inference from Incomplete-Data Perspectives, ed. A. Gelman, X.L. Meng, New York: Wiley, 141 (2004).

[8] J. P. Reiter, Inferences for partially synthetic, public use microdata sets, Surv. Methodol., 29, 181 (2003).

[9] J. M. Abowd, S. D. Woodcock, Disclosure limitation in longitudinal linked data. In Confidentiality, Disclosure and Data Access: Theory and Practical Applications for Statistical Agencies, ed. P. Doyle, J. Lane, J. Theeuwes, L. Zayatz, New York: North Holland, 215 (2001).

[10] J. M. Abowd, S. D. Woodcock, Multiply-imputing confidential characteristics and file links in longitudinal linked data. In Privacy in Statistical Databases, ed. J. Domingo-Ferrer, V. Torra, Heidelberg, Ger.: Springer-Verlag, 290 (2004).

[11] B. Nowok, G. M. Raab, and C. Dibben, synthpop: Bespoke creation of synthetic data in R. J. Stat. Softw., 74(11), 1 (2016).

synthpop: https://cran.r-project.org/web/packages/synthpop/index.html

[12] T. E. Raghunathan, P. Berglund, P. W. Solenberger, Multiple Imputation in Practice: With Examples Using IVEware. Boca Raton, FL: CRC (2018).

[13] T. E. Raghunathan, P. Berglund, P. W. Solenberger, J. Van Hoewyk, IVEware: imputation and variance estimation software user guide, Version 0.3. Tech. Rep., Surv. Methodol. Progr., Surv. Res. Cent., Inst. Soc. Res., Univ. Mich., Ann Arbor. (2018)

IVEware: www.iveware.org

[14] https://github.com/topics/synthetic-dataset-generation

セミナー・イベント情報