WO2019073913A1 - 擬似データ生成装置、その方法、及びプログラム - Google Patents

擬似データ生成装置、その方法、及びプログラム Download PDF

Info

Publication number
WO2019073913A1
WO2019073913A1 PCT/JP2018/037310 JP2018037310W WO2019073913A1 WO 2019073913 A1 WO2019073913 A1 WO 2019073913A1 JP 2018037310 W JP2018037310 W JP 2018037310W WO 2019073913 A1 WO2019073913 A1 WO 2019073913A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
pseudo
matrix
pseudo data
attribute
Prior art date
Application number
PCT/JP2018/037310
Other languages
English (en)
French (fr)
Inventor
莉奈 岡田
長谷川 聡
彰伍 正木
Original Assignee
日本電信電話株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US16/754,511 priority Critical patent/US20200272422A1/en
Priority to JP2019548171A priority patent/JP6812569B2/ja
Priority to EP18866794.3A priority patent/EP3696706A4/en
Priority to CN201880065257.1A priority patent/CN111194448A/zh
Publication of WO2019073913A1 publication Critical patent/WO2019073913A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis

Definitions

  • the present invention relates to pseudo data generation technology.
  • pseudo data may be generated and analyzed as a substitute.
  • pseudo data in tabular form is created from original data in tabular form.
  • An example of tabular data is shown in FIG.
  • Non-Patent Document 1 and Non-Patent Document 2 are known as conventional techniques for creating tabular pseudo data from tabular data.
  • the pseudo data to be created is a table having only numerical attributes
  • the random number group is shaped by being able to hold properties (variance covariance, correlation, average vector, etc.) between the attributes in the original data. Generate simulated data.
  • An object of the present invention is to provide a pseudo data generation apparatus capable of generating pseudo data which does not largely deviate from original data even when data is visualized and analyzed, a method thereof, and a program.
  • the pseudo data generation device is a first pseudo data in which the ratio of the frequency distribution of each attribute approximates to the ratio of the frequency distribution of each attribute of the pseudo target data.
  • the average vector and correlation matrix of the first pseudo data match the average vector and correlation matrix of the pseudo target data
  • the minimum value and the maximum value of the first pseudo data are the minimum value of the pseudo target data and A matrix obtained by Cholesky decomposition of the pseudo-target data or a scaling matrix obtained by singular value decomposition of the pseudo-target data dispersion coefficient so as to be within the range of the maximum value
  • a data shaping unit that shapes the first pseudo data and uses the first pseudo data after the shaping as pseudo data.
  • a pseudo data generation method is a pseudo data generation method performed by a pseudo data generation device, and a ratio of frequency distribution of each attribute of pseudo target data
  • FIG. 2 is a functional block diagram of a pseudo data generation device according to the first embodiment.
  • FIG. 2 shows a functional block diagram of the pseudo data generation apparatus according to the first embodiment, and FIG. 3 shows its processing flow.
  • the pseudo data generation apparatus includes a random number generation unit 210 and a data shaping unit 230.
  • the pseudo data generation apparatus is, for example, a special program configured by reading a special program into a known or dedicated computer having a central processing unit (CPU: Central Processing Unit), a main memory (RAM: Random Access Memory), etc. Device.
  • the pseudo data generation device executes each process, for example, under the control of the central processing unit.
  • the data input to the pseudo data generation apparatus and the data obtained by each process are stored, for example, in the main storage device, and the data stored in the main storage device is read out to the central processing unit as necessary. It is used for other processing.
  • At least a part of each processing unit of the pseudo data generation apparatus may be configured by hardware such as an integrated circuit.
  • Each storage unit included in the pseudo data generation device is, for example, a main storage device such as a RAM (Random Access Memory), an auxiliary storage device configured by a hard disk, an optical disk, or a semiconductor memory device such as a flash memory It can be configured by middleware such as a relational database or key value store.
  • a main storage device such as a RAM (Random Access Memory)
  • auxiliary storage device configured by a hard disk, an optical disk, or a semiconductor memory device such as a flash memory
  • middleware such as a relational database or key value store.
  • the pseudo data generation apparatus generates and outputs pseudo data D ′, using the original data D and the number n ′ of records included in the pseudo data D ′ to be generated.
  • the pseudo data D ′ ⁇ R n ′ ⁇ d holds the mean vector ⁇ D of the original data D and the correlation matrix completely, approximates the frequency distribution, and falls within the range of the maximum value / minimum value of each attribute. There is data.
  • the tabular data as shown in FIG. 1 is regarded as a matrix, a row vector is called a record, and a column vector is called an attribute.
  • the original data D and the pseudo data D ′ may have different numbers of rows, but have the same number of columns.
  • the number of rows of the original data D is n> 0, the number of rows of the pseudo data D ′ is n ′> 0, and the number of columns of each is d> 0.
  • a list in which the average values of the respective attributes are arranged in the same order as the order of the original data D is set as an average vector ⁇ .
  • a date attribute is also included as a numerical attribute applicable in the present embodiment.
  • the date attribute is applied to the present embodiment, the target date in the original database is converted in advance to continuous values such as m milliseconds before and m milliseconds after a specific date.
  • the random number generation unit 210 generates first pseudo data X in which the ratio of the frequency distribution of each attribute approximates to the ratio of the frequency distribution of each attribute of the original data D (S210), and outputs the first pseudo data X.
  • the accuracy of approximation is related to the number of records n ′ included in the pseudo data, and the accuracy of approximation tends to be higher as n ′ is larger.
  • the random number generation unit 210 generates the i-th column vector randomly as the ratio of the frequency distribution of the i-th attribute for the first pseudo data X approximates the ratio of the frequency distribution h i for the original data D. This operation is repeated until i changes from 1 to d.
  • various known techniques can be used to generate column vectors. For example, the rejection method or the inverse function method known in Reference 1 etc. can be used. (Reference 1) Wakimoto Kazumasa, "Knowledge of Random Numbers", Morikita Publishing Co., Ltd., 1970, p. 61-71
  • the random number generation unit 210 arranges the generated d column vectors in the same sequence as the sequence of the original data D, and outputs it as first tabular pseudo data X.
  • ⁇ Data shaping unit 230 > Input: original data D ⁇ R n ⁇ d , first pseudo data X ⁇ R n ' ⁇ d Output: Pseudo data D ' ⁇ R n' x d
  • the data shaping unit 230 matches the average vector ⁇ and correlation matrix of the first pseudo data X with the average vector ⁇ D and correlation matrix of the original data D, and the minimum value and the maximum value of the first pseudo data X
  • First pseudo data X is shaped using a matrix obtained by Cholesky decomposition of original data D so as to be within the range of minimum value and maximum value (S 230)
  • the first pseudo data is output as pseudo data D '.
  • the first pseudo data X is shaped by the following processing 1. to 11.
  • Set the variable p 1.
  • the variable p is also referred to as a proportional coefficient.
  • R (i) D be the range of possible values of each i-th attribute in the original data D. This operation repeats i from 1 to d.
  • 3. Calculate the mean vector ⁇ of the first pseudo data X and the variance covariance matrix ⁇ .
  • 4. ⁇ to calculate the Q to meet the QQ T. Incidentally, for example, as a method of calculating Q, to Q T, it is possible to use Cholesky decomposition. 5.
  • Calculate r Q ⁇ 1 (r ⁇ ) for all r ⁇ X.
  • I is an identity matrix
  • diag ( ⁇ D ) is a diagonal matrix in which each element of the mean vector ⁇ D is in the diagonal component and the other components are 0.
  • the first pseudo data X may be shaped so that the average vector of the first pseudo data X matches the average vector of the original data D. it can. 10.
  • R (i) Y be the range of possible values of each i-th attribute in Y described above. This operation repeats i from 1 to d. 11. If R (i) Y is not out of the range of R (i) D for all i, Y is output as pseudo data D ′. In other words, when all R Y (i) are in the range of R D (i) , Y is output as pseudo data D ′.
  • ⁇ Modification> when there is no original data D, but there is data to be reproduced (simulated target data), not only the original data D but also statistical values of simulated target data (frequency distribution of each attribute, average vector, variance co A dispersion matrix, a range of possible values of each attribute, etc. may be input.
  • the original data D can be said to be an example of simulated target data.
  • the frequency distribution of each attribute of the original data D, the mean vector, the variance-covariance matrix, and the range (maximum value / minimum value) of the values that each attribute can take are calculated in each part.
  • the calculation may be performed outside the respective parts in advance, and may be input to the random number generation unit 210 and the data shaping unit 230, and the calculation in each part may be omitted.
  • the first pseudo data X is shaped using the Cholesky decomposition in the data shaping unit 230, but the first pseudo data X may be shaped using singular value decomposition.
  • U D is a matrix in which eigenvectors are gathered.
  • ⁇ D is a diagonal matrix whose eigenvalues are diagonal components and the other components are 0, and is also referred to as a scaling matrix.
  • This process singular value decomposition of the covariance matrix sigma D of the original data D, and corresponds to a process for obtaining the U D, scaling matrix lambda D. Furthermore, calculate ⁇ D 1/2 .
  • ⁇ D 1/2 is a matrix obtained by squaring all diagonal components of the scaling matrix ⁇ D.
  • Q D of the present embodiment corresponds to U D ⁇ D 1/2 of the modification. 9.
  • Y X (p ⁇ U D ⁇ D 1/2 ) T + I diag ( ⁇ D ).
  • singular value decomposition may be used. That is, the following process 4 is performed.
  • U satisfying 4. ⁇ U ⁇ U T, calculates the lambda.
  • U is a matrix in which eigenvectors are gathered.
  • is a diagonal matrix whose eigenvalue is a diagonal component and the other components are 0, and is also referred to as a scaling matrix.
  • This processing corresponds to processing for singular value decomposition of the variance-covariance matrix ⁇ of the first pseudo data to obtain U and a scaling matrix ⁇ .
  • ⁇ 1/2 is a matrix obtained by squaring all diagonal components of the scaling matrix ⁇ .
  • the program describing the processing content can be recorded in a computer readable recording medium.
  • a computer readable recording medium any medium such as a magnetic recording device, an optical disc, a magneto-optical recording medium, a semiconductor memory, etc. may be used.
  • this program is carried out, for example, by selling, transferring, lending, etc. a portable recording medium such as a DVD, a CD-ROM, etc. in which the program is recorded.
  • the program may be stored in a storage device of a server computer, and the program may be distributed by transferring the program from the server computer to another computer via a network.
  • a computer that executes such a program first temporarily stores a program recorded on a portable recording medium or a program transferred from a server computer in its own storage unit. Then, at the time of execution of the process, the computer reads the program stored in its storage unit and executes the process according to the read program.
  • the computer may read the program directly from the portable recording medium and execute processing in accordance with the program. Furthermore, each time a program is transferred from this server computer to this computer, processing according to the received program may be executed sequentially.
  • ASP Application Service Provider
  • the program includes information provided for processing by a computer that conforms to the program (such as data that is not a direct command to the computer but has a property that defines the processing of the computer).
  • each device is configured by executing a predetermined program on a computer, at least a part of the processing content may be realized as hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Operations Research (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)

Abstract

擬似データ生成装置は、擬似対象データの各属性の度数分布の割合へ各属性の度数分布の割合が近似する第一擬似データを生成する乱数生成部と、第一擬似データの平均ベクトル及び相関行列が擬似対象データの平均ベクトル及び相関行列と一致し、第一擬似データの最小値及び最大値が擬似対象データの最小値及び最大値の範囲内に存在するように、擬似対象データの分散共分散行列をコレスキー分解して得られる行列または擬似対象データの分散共分散行列を特異値分解して得られる拡大縮小行列を用いて、第一擬似データを整形し、整形後の第一擬似データを擬似データとするデータ整形部とを含む。

Description

擬似データ生成装置、その方法、及びプログラム
 本発明は、擬似データ生成技術に関する。
 プライバシ保護の分野では、セキュリティなどの問題で個人情報を含んだオリジナルデータを扱えない場合、代用として擬似データを生成して分析等を行うことがある。ここでは表形式のオリジナルデータから表形式の擬似データを作成するケースを考える。表形式のデータの例を図1に示す。
 表形式のオリジナルデータから表形式の擬似データを作成する従来技術として、非特許文献1や非特許文献2が知られている。これらの従来技術では、作成したい擬似データが数値属性のみを持つ表の場合、乱数群をオリジナルデータ内の属性間の性質(分散共分散、相関、平均ベクトル等)を保持できるよう整形することで擬似データを生成する。
Zhengli Huang, Wenliang Du, and Biao Chen. "Deriving private information from randomized data", In Proceedings of the 2005 ACM SIGMOD international conference on Management of data, pages 37-48. ACM, 2005. Haoran Li, Li Xiong, and Xiaoqian Jiang. "Differentially private synthesization of multi-dimensional data using copula functions", In Advances in database technology: proceedings. International Conference on Extending Database Technology, Vol. 2014, p. 475. NIH Public Access, 2014.
 しかしながら、この従来手法では、平均ベクトルや相関については保持できるが、度数分布や各属性の最大値、最小値が保持されない。そのため、データを可視化して分析する場合などにオリジナルデータと擬似データとの間に大きな乖離が出るという課題がある。
 本発明は、データを可視化して分析する場合もオリジナルデータと大きな乖離がない擬似データを生成できる擬似データ生成装置、その方法、及びプログラムを提供することを目的とする。
 上記の課題を解決するために、本発明の一態様によれば、擬似データ生成装置は、擬似対象データの各属性の度数分布の割合へ各属性の度数分布の割合が近似する第一擬似データを生成する乱数生成部と、第一擬似データの平均ベクトル及び相関行列が擬似対象データの平均ベクトル及び相関行列と一致し、第一擬似データの最小値及び最大値が擬似対象データの最小値及び最大値の範囲内に存在するように、擬似対象データの分散共分散行列をコレスキー分解して得られる行列または擬似対象データの分散共分散行列を特異値分解して得られる拡大縮小行列を用いて、第一擬似データを整形し、整形後の第一擬似データを擬似データとするデータ整形部とを含む。
 上記の課題を解決するために、本発明の他の態様によれば、擬似データ生成方法は、擬似データ生成装置が行う擬似データ生成方法であって、擬似対象データの各属性の度数分布の割合へ各属性の度数分布の割合が近似する第一擬似データを生成する乱数生成ステップと、第一擬似データの平均ベクトル及び相関行列が擬似対象データの平均ベクトル及び相関行列と一致し、第一擬似データの最小値及び最大値が擬似対象データの最小値及び最大値の範囲内に存在するように、擬似対象データの分散共分散行列をコレスキー分解して得られる行列または擬似対象データの分散共分散行列を特異値分解して得られる拡大縮小行列を用いて、第一擬似データを整形し、整形後の第一擬似データを擬似データとするデータ整形ステップとを含む。
 本発明によれば、データを可視化して分析する場合もオリジナルデータと大きな乖離がない擬似データを生成できるという効果を奏する。
本願明細書で扱う表形式のデータの例を示す図。 第一実施形態に係る擬似データ生成装置の機能ブロック図。 第一実施形態に係る擬似データ生成装置の処理フローの例を示す図。
 以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
<第一実施形態のポイント>
 オリジナルデータの分散共分散行列をコレスキー分解して得られる行列Qに注目する。行列Qに比例係数pをかけることによって、オリジナルデータの平均ベクトル、相関行列を完全に保持し、度数分布を近似しつつ、各属性の最大値・最小値の範囲内にデータが存在する擬似データを作ることができる。
<第一実施形態>
 図2は第一実施形態に係る擬似データ生成装置の機能ブロック図を、図3はその処理フローを示す。
 第一実施形態に係る擬似データ生成装置は、乱数生成部210及びデータ整形部230を含む。
 擬似データ生成装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。擬似データ生成装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。擬似データ生成装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。擬似データ生成装置の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。擬似データ生成装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。
 第一実施形態に係る擬似データ生成装置は、オリジナルデータDと生成する擬似データD'に含まれるレコード数n'とを入力とし、擬似データD'を生成し、出力する。ただし、擬似データD'∈Rn'×dは、オリジナルデータDの平均ベクトルμD、相関行列を完全に保持し、度数分布を近似しつつ、各属性の最大値・最小値の範囲内にデータが存在する。
 図1のような表形式のデータを行列とみなし、行ベクトルをレコード、列ベクトルを属性と呼ぶ。なお、オリジナルデータDと擬似データD'は、行数は異なることもあるが、列数は同じである。オリジナルデータDの行数をn>0、擬似データD'の行数をn'>0、それぞれの列数をd>0とする。オリジナルデータDと擬似データD'には、実数空間R上で表現可能な数値のみが格納されているとする。以降では、各属性における平均値をオリジナルデータDの並びと同じ並びで並べたリストを平均ベクトルμとする。例えば、図1の表データにおける平均ベクトルはμ=(43.66,166,60.66)Tとなる。なお、「行ベクトル」という記載のないベクトルは全て「列ベクトル」とする。
 また、本実施形態において適用可能な数値属性として日付属性も含む。日付属性を本実施形態に適用する場合は、予めオリジナルデータベース内の対象となる日付をある特定の日付に対してmミリ秒前、mミリ秒後などの連続値に変換する。
<乱数生成部210>
入力:オリジナルデータD∈Rn×d、生成するレコード数n'
出力:第一擬似データX∈Rn'×d
 乱数生成部210は、オリジナルデータDの各属性の度数分布の割合へ各属性の度数分布の割合が近似する第一擬似データXを生成し(S210)、出力する。なお、近似の精度は、擬似データに含まれるレコード数n'が大きさと関連し、n'が大きくなるほど近似の精度は高くなりやすい。
 例えば、まず、乱数生成部210は、オリジナルデータDの各属性の度数分布{hi}d i=1を計算する。
 次に、乱数生成部210は、第一擬似データXに対するi番目の属性の度数分布の割合がオリジナルデータDに対する度数分布hiの割合に近似するようランダムにi番目の列ベクトルを生成する。この操作をiが1からdになるまで繰り返す。なお、列ベクトルを生成する方法には様々な公知の技術を利用できる。例えば、参考文献1等で公知の棄却法または逆関数法を用いることができる。
(参考文献1)脇本 和昌、「乱数の知識」、森北出版株式会社、1970年,p.61-71
 乱数生成部210は、生成したd個の列ベクトルをオリジナルデータDの並びと同じ並びで並べ、表形式の第一擬似データXとして出力する。
<データ整形部230>
入力:オリジナルデータD∈Rn×d、第一擬似データX∈Rn'×d
出力:擬似データD'∈Rn'×d
 データ整形部230は、第一擬似データXの平均ベクトルμ及び相関行列がオリジナルデータDの平均ベクトルμD及び相関行列と一致し、第一擬似データXの最小値及び最大値がオリジナルデータDの最小値及び最大値の範囲内に存在するように、オリジナルデータDの分散共分散行列をコレスキー分解して得られる行列を用いて、第一擬似データXを整形し(S230)、整形後の第一擬似データを擬似データD'として出力する。
 例えば、以下の処理1.~11.により、第一擬似データXを整形する。
1.変数p=1とする。なお、変数pを比例係数ともいう。
2.オリジナルデータD内の各i番目の属性の取りうる値の範囲をR(i) Dとする。この操作はiを1からdまで繰り返す。
3.第一擬似データXの平均ベクトルμと分散共分散行列Σとを計算する。
4.Σ=QQTを満たすQを計算する。なお、Q,QTを算出する方法として例えば、コレスキー分解を用いることができる。
5.全てのr∈Xに対して、r=Q-1(r-μ)を計算する。つまり、第一擬似データXが含むレコードrをr=Q-1(r-μ)により更新する。
6.上記にて計算した全てのレコードr∈RdをまとめてZ'∈Rn'×dとする。
7.オリジナルデータDの平均ベクトルμDと分散共分散行列ΣDを計算する。
8.ΣD=QDQD Tを満たすQDを計算する。この処理は、オリジナルデータDの分散共分散行列ΣDをコレスキー分解する処理に相当し、QDは分散共分散行列ΣDをコレスキー分解して得られる行列である。
9.Y=X(p・QD)T+I diag(μD)を計算する。ここでのIは単位行列、diag(μD)は対角成分に平均ベクトルμDの各要素があり、それ以外の成分は0である対角行列とする。p2・ΣD=p2・QDQD T=(p・QD)(p・QD)Tを相関行列と呼び、p=1のときのp2・ΣD=p2・QDQD T=(p・QD)(p・QD)Tを分散共分散行列ともいう。X(p・QD)Tを計算しながら擬似データを生成することで、第一擬似データXの相関行列がオリジナルデータDの相関行列と一致するように第一擬似データXを整形することができる。また、I diag(μD)を計算しながら擬似データを生成することで、第一擬似データXの平均ベクトルがオリジナルデータDの平均ベクトルと一致するように第一擬似データXを整形することができる。
10.上述のY内の各i番目の属性の取りうる値の範囲をR(i) Yとする。この操作はiを1からdまで繰り返す。
11.全てのiに対してR(i) YがR(i) Dの範囲外になければYを擬似データD'として出力する。言い換えると、全てのRY (i)がRD (i)の範囲内にあるときYを擬似データD'として出力する。R(i) YがR(i) Dの範囲外にある場合p=p/2として、上述の9.に戻る。なお、変数pの更新式は非負実数全体の集合R+の範囲で現在のpより小さくするものであればよい。言い換えると、αを1より大きい実数の何れかとし、p=p/αとする。
<効果>
 以上の構成により、オリジナルデータDの平均ベクトル、相関行列を完全に保持、度数分布を近似しつつ、各属性の最大値・最小値の範囲内にデータが存在する擬似データD'を生成することができる。これにより、生成した擬似データD'は,オリジナルデータDの平均ベクトル、相関行列を完全に保持することができるため、オリジナルデータDと全く同じ線形回帰モデルを得ることができる。特に、オリジナルデータD内の各属性の取り得る値の範囲が同じような場合は、オリジナルデータDの各属性の度数分布と最大値最小値の近似を保持することができるため、データを可視化して分析する場合もオリジナルデータDと大きな乖離がない擬似データD'を生成できる。例えば、身長-170cmというプロフィールを持つレコードが生成されることなく、オリジナルデータDの各属性の度数分布を近似することができる。
<変形例>
 本実施形態において、オリジナルデータDは無いが、再現したいデータ(擬似対象データ)がある場合は、オリジナルデータDに限らず、擬似対象データの統計値(各属性の度数分布、平均ベクトル、分散共分散行列、各属性の取りうる値の範囲等)を入力としてもよい。オリジナルデータDは擬似対象データの一例とも言える。
 本実施形態では、オリジナルデータDの各属性の度数分布、平均ベクトル、分散共分散行列、各属性の取りうる値の範囲(最大値・最小値)を各部内で計算しているが、それぞれを予め各部外で計算し、乱数生成部210、データ整形部230の入力とし、各部内での計算を省略してもよい。
 本実施形態では、データ整形部230においてコレスキー分解を用いて第一擬似データXを整形しているが、特異値分解を用いて第一擬似データXを整形してもよい。その処理例について説明する。例えば、処理1.~7.及び処理10.,11.については本実施形態と同様の処理を行い、処理8.,9.において、以下のように処理を行う。
8.ΣD=UDΛDUT Dを満たすUD、ΛDを計算する。なお、UDは、固有ベクトルが集まった行列である。ΛDは固有値を対角成分とし、それ以外の成分は0である対角行列であり、拡大縮小行列ともいう。この処理は、オリジナルデータDの分散共分散行列ΣDを特異値分解し、UD、拡大縮小行列ΛDを求める処理に相当する。さらに、ΛD 1/2を計算する。ΛD 1/2は拡大縮小行列ΛDの対角成分を全て平方した行列である。本実施形態のQDが、本変形例のUDΛD 1/2に相当する。
9. Y=X(p・UDΛD 1/2)T+I diag(μD) を計算する。ΣD=p2・UDΛDUD T=(p・UDΛD 1/2)(p・UDΛD 1/2)Tを相関行列と呼び、p=1のときのΣ=p2・UDΛDUD T=(p・UDΛD 1/2)(p・UDΛD 1/2)Tを分散共分散行列ともいう。 X(p・UDΛD 1/2)T を計算しながら擬似データを生成することで、第一擬似データXの相関行列がオリジナルデータDの相関行列と一致するように第一擬似データXを整形することができる。
 なお、処理4.においても同様に、コレスキー分解に代えて特異値分解を用いてもよい。つまり、以下の処理4.を行う。
4.Σ=UΛUTを満たすU、Λを計算する。なお、Uは、固有ベクトルが集まった行列である。Λは固有値を対角成分とし、それ以外の成分は0である対角行列であり、拡大縮小行列ともいう。この処理は、第一擬似データの分散共分散行列Σを特異値分解し、U、拡大縮小行列Λを求める処理に相当する。さらに、Λ1/2を計算する。Λ1/2は拡大縮小行列Λの対角成分を全て平方した行列である。処理4.以降において、Q=UΛ1/2として処理を行う。
 理論上、分散共分散行列は正定値行列であるため、コレスキー分解によってΣ=QQT、ΣD=QDQD TとなるQ、QDを計算することは可能である。しかし、コンピュータでの数値計算では、オリジナルデータのレコード数nやXのレコード数n’が少ない場合はQ、QDが不安定になり、計算できなくなることが多い。そこで、直接コレスキー分解によってQ、QDを求めるのではなく、特異値分解によってUとΛ、UDとΛDを計算することで、Q=UΛ1/2、QD=UDΛD 1/2を計算することができる。
 以上の処理によって、第一実施形態と同様の効果を得ることができる。
<その他の変形例>
 本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
<プログラム及び記録媒体>
 また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (8)

  1.  擬似対象データの各属性の度数分布の割合へ各属性の度数分布の割合が近似する第一擬似データを生成する乱数生成部と、
     前記第一擬似データの平均ベクトル及び相関行列が前記擬似対象データの平均ベクトル及び相関行列と一致し、前記第一擬似データの最小値及び最大値が前記擬似対象データの最小値及び最大値の範囲内に存在するように、前記擬似対象データの分散共分散行列をコレスキー分解して得られる行列または前記擬似対象データの分散共分散行列を特異値分解して得られる拡大縮小行列を用いて、前記第一擬似データを整形し、整形後の前記第一擬似データを擬似データとするデータ整形部とを含む、
     擬似データ生成装置。
  2.  請求項1の擬似データ生成装置であって、
     前記データ整形部は、αを1より大きい実数の何れかとし、Iを単位行列とし、前記第一擬似データの平均ベクトルμと分散共分散行列Σとを求め、前記分散共分散行列Σに基づき計算される行列Qを用いて、第一擬似データが含むレコードrをr=Q-1(r-μ)により更新し、前記擬似対象データの平均ベクトル及び分散共分散行列をそれぞれμD及びΣDとし、ΣD=QDQD Tを満たすQDを計算し、Y=X(p・QD)T+I diag(μD)を計算し、Y内の各i番目の属性の取り得る範囲RY (i)が擬似対象データ内の各i番目の属性の取り得る範囲RD (i)の範囲外にある場合、p=p/αとし、Y=X(p・QD)T+I diag(μD)を再計算し、全ての前記範囲RY (i)が前記範囲RD (i)の範囲内にあるときYを前記擬似データとする、
     擬似データ生成装置。
  3.  請求項1の擬似データ生成装置であって、
     前記データ整形部は、αを1より大きい実数の何れかとし、Iを単位行列とし、前記第一擬似データの平均ベクトルμと分散共分散行列Σとを求め、前記分散共分散行列Σに基づき計算される行列Qを用いて、第一擬似データが含むレコードrをr=Q-1(r-μ)により更新し、前記擬似対象データの平均ベクトル及び分散共分散行列をそれぞれμD及びΣDとし、ΣD=UDΛDUD Tを満たすUD及びΛDを計算し、Y=X(p・UDΛD 1/2)T+Idiag(μD)を計算し、Y内の各i番目の属性の取り得る範囲RY (i)が擬似対象データ内の各i番目の属性の取り得る範囲RD (i)の範囲外にある場合、p=p/αとし、Y=X(p・UDΛD 1/2)T+I diag(μD)を再計算し、全ての前記範囲RY (i)が前記範囲RD (i)の範囲内にあるときYを前記擬似データとする、
     擬似データ生成装置。
  4.  請求項2または3の擬似データ生成装置であって、
     前記データ整形部は、コレスキー分解によりΣ=QQTを満たすQを計算するか、または、特異値分解によりΣ=UΛUTを満たすU、Λを計算してQ=UΛ1/2とする、
     擬似データ生成装置。
  5.  擬似データ生成装置が行う擬似データ生成方法であって、
     擬似対象データの各属性の度数分布の割合へ各属性の度数分布の割合が近似する第一擬似データを生成する乱数生成ステップと、
     前記第一擬似データの平均ベクトル及び相関行列が前記擬似対象データの平均ベクトル及び相関行列と一致し、前記第一擬似データの最小値及び最大値が前記擬似対象データの最小値及び最大値の範囲内に存在するように、前記擬似対象データの分散共分散行列をコレスキー分解して得られる行列または前記擬似対象データの分散共分散行列を特異値分解して得られる拡大縮小行列を用いて、前記第一擬似データを整形し、整形後の前記第一擬似データを擬似データとするデータ整形ステップとを含む、
     擬似データ生成方法。
  6.  請求項5の擬似データ生成方法であって、
     前記データ整形ステップは、αを1より大きい実数の何れかとし、Iを単位行列とし、前記第一擬似データの平均ベクトルμと分散共分散行列Σとを求め、前記分散共分散行列Σに基づき計算される行列Qを用いて、第一擬似データが含むレコードrをr=Q-1(r-μ)により更新し、前記擬似対象データの平均ベクトル及び分散共分散行列をそれぞれμD及びΣDとし、ΣD=QDQD Tを満たすQDを計算し、Y=X(p・QD)T+I diag(μD)を計算し、Y内の各i番目の属性の取り得る範囲RY (i)が擬似対象データ内の各i番目の属性の取り得る範囲RD (i)の範囲外にある場合、p=p/αとし、Y=X(p・QD)T+I diag(μD)を再計算し、全ての前記範囲RY (i)が前記範囲RD (i)の範囲内にあるときYを前記擬似データとする、
     擬似データ生成方法。
  7.  請求項6の擬似データ生成方法であって、
     前記データ整形ステップは、コレスキー分解によりΣ=QQTを満たすQを計算するか、または、特異値分解によりΣ=UΛUTを満たすU、Λを計算してQ=UΛ1/2とする、
     擬似データ生成方法。
  8.  請求項1から請求項4の何れかの擬似データ生成装置としてコンピュータを機能させるためのプログラム。
PCT/JP2018/037310 2017-10-13 2018-10-05 擬似データ生成装置、その方法、及びプログラム WO2019073913A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US16/754,511 US20200272422A1 (en) 2017-10-13 2018-10-05 Synthetic data generation apparatus, method for the same, and program
JP2019548171A JP6812569B2 (ja) 2017-10-13 2018-10-05 擬似データ生成装置、その方法、及びプログラム
EP18866794.3A EP3696706A4 (en) 2017-10-13 2018-10-05 PSEUDO DATA GENERATION DEVICE, METHOD AND PROGRAM
CN201880065257.1A CN111194448A (zh) 2017-10-13 2018-10-05 伪数据生成装置及其方法和程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017199201 2017-10-13
JP2017-199201 2017-10-13

Publications (1)

Publication Number Publication Date
WO2019073913A1 true WO2019073913A1 (ja) 2019-04-18

Family

ID=66100750

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/037310 WO2019073913A1 (ja) 2017-10-13 2018-10-05 擬似データ生成装置、その方法、及びプログラム

Country Status (5)

Country Link
US (1) US20200272422A1 (ja)
EP (1) EP3696706A4 (ja)
JP (1) JP6812569B2 (ja)
CN (1) CN111194448A (ja)
WO (1) WO2019073913A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7378271B2 (ja) 2019-11-06 2023-11-13 株式会社マクロミル 情報処理方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112966735B (zh) * 2020-11-20 2023-09-12 扬州大学 一种基于谱重建的监督多集相关特征融合方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200431A1 (en) * 2005-03-01 2006-09-07 Microsoft Corporation Private clustering and statistical queries while analyzing a large database
JP2016014963A (ja) * 2014-07-01 2016-01-28 日本電信電話株式会社 疑似データ生成装置及び方法及びプログラム
JP2016081168A (ja) * 2014-10-14 2016-05-16 株式会社エヌ・ティ・ティ・データ 雑音発生装置、雑音発生方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200431A1 (en) * 2005-03-01 2006-09-07 Microsoft Corporation Private clustering and statistical queries while analyzing a large database
JP2016014963A (ja) * 2014-07-01 2016-01-28 日本電信電話株式会社 疑似データ生成装置及び方法及びプログラム
JP2016081168A (ja) * 2014-10-14 2016-05-16 株式会社エヌ・ティ・ティ・データ 雑音発生装置、雑音発生方法及びプログラム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HAORAN LILI XIONGXIAOQIAN JIANG: "In Advances in database technology: proceedings. International Conference on Extending Database Technology", vol. 2014, 2014, NIH PUBLIC ACCESS, article "Differentially private synthesization of multi-dimensional data using copula functions", pages: 475
KAZUMASA WAKIMOTO: "Knowledge of Random Numbers", 1970, MORIKITA PUBLISHING CO., LTD., pages: 61 - 71
OKADA, RINA: "Privacy Preserved Synthetic Datasets Generation by Using Statistics", COMPUTER SECURITY SYMPOSIUM 2017, vol. 2017, 1 October 2017 (2017-10-01), pages 1366 - 1372, XP055685096 *
ZHENGLI HUANGWENLIANG DUBIAO CHEN: "In Proceedings of the 2005 ACM SIGMOD international conference on Management of data", 2005, ACM, article "Deriving private information from randomized data", pages: 37 - 48

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7378271B2 (ja) 2019-11-06 2023-11-13 株式会社マクロミル 情報処理方法

Also Published As

Publication number Publication date
CN111194448A (zh) 2020-05-22
JPWO2019073913A1 (ja) 2020-10-22
EP3696706A1 (en) 2020-08-19
EP3696706A4 (en) 2021-07-14
JP6812569B2 (ja) 2021-01-13
US20200272422A1 (en) 2020-08-27

Similar Documents

Publication Publication Date Title
Kaido et al. Confidence intervals for projections of partially identified parameters
Wang et al. Performance prediction for apache spark platform
Necoara Random coordinate descent algorithms for multi-agent convex optimization over networks
US10402427B2 (en) System and method for analyzing result of clustering massive data
US20210058239A1 (en) Secure aggregate sum system, secure computation apparatus, secure aggregate sum method, and program
Sobolev Pseudo-differential operators with discontinuous symbols: Widom’s conjecture
Shiino Stability analysis of mean-field-type nonlinear Fokker-Planck equations associated with a generalized entropy and its application to the self-gravitating system
JP2017507392A (ja) データベースキーの識別
Peng et al. On the convergence of asynchronous parallel iteration with unbounded delays
Goslee Correlation analysis of dissimilarity matrices
Li Linear operator‐based statistical analysis: A useful paradigm for big data
Tzeng Split‐and‐Combine Singular Value Decomposition for Large‐Scale Matrix
JP6812569B2 (ja) 擬似データ生成装置、その方法、及びプログラム
Fang et al. Improved Bounded Matrix Completion for Large-Scale Recommender Systems.
Yang et al. Rank-based shrinkage estimation for identification in semiparametric additive models
Barahmand et al. D-Zipfian: a decentralized implementation of Zipfian
Müller et al. On generalized surrogate duality in mixed-integer nonlinear programming
Zadorozhnyi Fractal queues simulation peculiarities
JP2021056570A (ja) データベースの分割システム、データベースの分割方法、及びデータベースの分割プログラム
Song et al. Central limit theorems of local polynomial threshold estimator for diffusion processes with jumps
do Rêgo Sousa et al. Indirect Inference for Lévy‐driven continuous‐time GARCH models
Sewal et al. A machine learning approach for predicting execution statistics of spark application
JP6000175B2 (ja) 匿名化システム、匿名化装置、利用者装置、匿名化方法、およびプログラム
Cao et al. Implementing a high-performance recommendation system using Phoenix++
Edelev et al. Large-scale analysis of energy system vulnerability using in-memory data grid.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18866794

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019548171

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018866794

Country of ref document: EP

Effective date: 20200513