KR20210141026A - 생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법 - Google Patents

생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법 Download PDF

Info

Publication number
KR20210141026A
KR20210141026A KR1020200058088A KR20200058088A KR20210141026A KR 20210141026 A KR20210141026 A KR 20210141026A KR 1020200058088 A KR1020200058088 A KR 1020200058088A KR 20200058088 A KR20200058088 A KR 20200058088A KR 20210141026 A KR20210141026 A KR 20210141026A
Authority
KR
South Korea
Prior art keywords
learning
learned
generator
data
delimiter
Prior art date
Application number
KR1020200058088A
Other languages
English (en)
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 KR1020200058088A priority Critical patent/KR20210141026A/ko
Priority to US16/885,006 priority patent/US11615290B2/en
Priority to EP20194759.5A priority patent/EP3910556A1/en
Publication of KR20210141026A publication Critical patent/KR20210141026A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01VGEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
    • G01V1/00Seismology; Seismic or acoustic prospecting or detecting
    • G01V1/28Processing seismic data, e.g. for interpretation or for event detection
    • G01V1/282Application of seismic models, synthetic seismograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법이 제공된다. 일 실시예에 따른 재현 데이터 생성 장치는, 입력값으로부터 재현 데이터를 생성하는 생성자; 실제 데이터와 상기 재현 데이터를 구분하도록 학습되는 제1 구분자; 차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습되는 상기 제2 구분자; 및 상기 제1 구분자에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 제2 구분자에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 학습되는 제3 구분자를 포함한다.

Description

생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법{SYNTHETIC DATA GENERATION APPARATUS BASED ON GERATIVE ADVERSARIAL NETWORKS AND LEARNING METHOD THEREOF}
개시되는 실시예들은 생성적 적대 신경망(GAN; Generative Adversarial Network)을 이용하여 차등정보보호(DP; Differential Privacy)가 보장된 재현 데이터(synthetic data)를 생성하기 위한 기술과 관련된다.
생성적 적대 신경망(GAN)은 심층 신경망(deep neural network)을 이용하는 생성 모델(generative model)의 한 종류이다. 생성 모델은 주어진 데이터 세트의 분포(distribution)를 추정할 수 있는 모델로서, 추정된 분포를 이용해서 데이터를 샘플링(sampling) 혹은 생성(generation)할 수 있다. GAN은 두 개의 심층 신경망, 즉 생성자(generator)와 구분자(discriminator)로 구성된다. 생성자는 랜덤한 노이즈(random noise)로부터 데이터를 생성하는 역할을 하고, 구분자는 주어진 데이터가 생성된 데이터인지 실제 데이터인지 구분하는 역할을 한다. 생성자와 구분자가 마치 2인 게임(two-player game)처럼 서로 경쟁하면서 학습이 이루어진다. 생성자는 구분자가 실제 데이터와 구별할 수 없는 가짜 데이터를 생성하도록 학습되고, 구분자는 생성된 데이터와 실제 데이터를 더 잘 구별하도록 학습된다. 경쟁적인(혹은 적대적인) 두 심층 신경망 이 평형(equilibrium)에 도달하면 학습이 종료된다. 학습이 완료된 후 생성자는 실제 데이터와 구별할 수 없는 데이터를 생성할 수 있게 된다.
한편, 차등정보보호(DP)란 어떤 분석 알고리즘이 어느 정도로 프라이버시를 보호할 수 있는지를 수학적으로 증명 가능한 방법으로 측정할 수 있는 프레임워크이다. 분석 알고리즘에 DP를 적용하면, 그 분석 결과가 어느 정도로 프라이버시를 보호하는지 정량화(quantification)할 수 있다. 기존의 익명화(anonymization) 방법들이 입력 데이터 중심의 프라이버시 보호 방법이었다면, DP는 분석 알고리즘에 적절한 처리를 가해서 최종적으로 프라이버시를 보호하는 방법이다.
DP를 사용하면, 민감한 개인 정보를 사용해서 학습되는 머신 러닝 모델을 보다 안전하게 설계할 수 있다. 이에 따라 프라이버시 보호 머신 러닝 (privacy-preserving machine learning)을 구현하기 위한 다양한 방법이 제안되었다. 그러나 DP에 의한 프라이버시 보장성과 DP를 적용한 머신 러닝 알고리즘의 성능은 트레이드-오프(trade-off) 관계에 있다. 따라서 DP를 만족시키면서도 머신 러닝 모델의 성능 저하를 줄일 수 있는 방법이 필요하게 되었다.
개시되는 실시예들은 GAN을 이용하여 재현 데이터를 생성하는 알고리즘이 차등정보보호를 만족시키면서도 실제 데이터를 정교하게 재현하기 위한 방법을 제공하기 위한 것이다.
예시적인 실시예에 따르면, 입력값으로부터 재현 데이터를 생성하는 생성자; 실제 데이터와 상기 재현 데이터를 구분하도록 학습되는 제1 구분자; 차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습되는 상기 제2 구분자; 및 상기 제1 구분자에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 제2 구분자에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 학습되는 제3 구분자를 포함하는 생성적 적대 신경망 기반의 재현 데이터 생성 장치가 제공된다.
상기 제2 구분자는, DP-GAN 또는 PATE-GAN 중 어느 하나의 알고리즘을 사용하여 상기 차등 정보 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습될 수 있다.
상기 생성자는, 상기 제1 구분자, 상기 제2 구분자 및 상기 제3 구분자에 의하여 순차적으로 학습될 수 있다.
다른 예시적인 실시예에 따르면, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 실제 데이터와 생성자로부터 생성되는 재현 데이터를 구분하도록 제1 구분자를 학습하는 단계; 학습된 상기 제1 구분자를 이용하여 상기 생성자를 1차 학습하는 단계; 차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 제2 구분자를 학습하는 단계; 학습된 상기 제2 구분자를 이용하여 상기 생성자를 2차 학습하는 단계; 상기 1차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 2차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 제3 구분자를 학습하는 단계; 및 학습된 상기 제3 구분자를 이용하여 상기 생성자를 3차 학습하는 단계를 포함하는, 기계 학습 방법이 제공된다.
상기 제2 구분자를 학습하는 단계는, DP-GAN 또는 PATE-GAN 중 어느 하나의 알고리즘을 사용하여 상기 차등 정보 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습을 수행할 수 있다.
다른 예시적인 실시예에 따르면, 하나 이상의 프로세서들; 메모리; 및 하나 이상의 프로그램들을 포함하고, 상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며, 상기 하나 이상의 프로그램들은, 실제 데이터와 생성자로부터 생성되는 재현 데이터를 구분하도록 제1 구분자를 학습하는 단계; 학습된 상기 제1 구분자를 이용하여 상기 생성자를 1차 학습하는 단계; 차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 제2 구분자를 학습하는 단계; 학습된 상기 제2 구분자를 이용하여 상기 생성자를 2차 학습하는 단계; 상기 1차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 2차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 제3 구분자를 학습하는 단계; 및 학습된 상기 제3 구분자를 이용하여 상기 생성자를 3차 학습하는 단계를 포함하는 단계들을 수행하기 위한 명령을 포함하는, 컴퓨팅 장치가 제공된다.
상기 제2 구분자를 학습하는 단계는, DP-GAN 또는 PATE-GAN 중 어느 하나의 알고리즘을 사용하여 상기 차등 정보 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습을 수행하도록 구성될 수 있다.
개시되는 실시예에 따르면, 서로 다른 역할을 하는 세 개의 구분자(discriminator)를 이용하여 순차적으로 GAN의 학습을 수행함으로써 차등정보보호를 만족하면서도 실제 데이터의 통계적 특성을 잘 따르는 정교한 재현 데이터를 생성할 수 있다.
도 1은 일 실시예에 따른 생성적 적대 신경망 기반의 재현 데이터 생성 장치를 설명하기 위한 블록도
도 2는 일 실시예에 따른 생성자와 제1 구분자 간의 학습 과정을 설명하기 위한 예시도
도 3은 일 실시예에 따른 학습 과정에 따른 데이터의 분포를 설명하기 위한 그래프
도 4는 일 실시예에 따른 생성적 적대 신경망의 학습 방법을 설명하기 위한 흐름도
도 5는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 일 실시예에 따른 생성적 적대 신경망 기반의 재현 데이터 생성 장치(100)를 설명하기 위한 블록도이다. 개시되는 실시예들에 따른 재현 데이터 생성 장치(100)는 생성적 적대 신경망(Generative Adversarial Network; GAN)을 이용하여 차등 정보 보호(Differential Privacy; DP)를 만족하면서도 실제 데이터의 통계적 특성을 잘 따르는 정교한 재현 데이터(synthetic data)를 생성하기 위한 기계 학습 모델 구조를 포함한다. DP는 어떤 분석 알고리즘이 어느 정도로 프라이버시를 보호할 수 있는지를 수학적으로 정량화할 수 있는 프레임워크이다. DP를 만족하는 머신 러닝 알고리즘을 설계하면 적대적인 공격자에 의해 민감한 개인정보가 노출되는 위험을 정량적으로 줄일 수 있다. 그러나 DP는 확률적 임의성(randomness)에 기반하기 때문에, DP에 의한 프라이버시 보장성과 DP를 적용한 머신 러닝 알고리즘의 성능은 트레이드-오프(trade-off) 관계에 있다. 따라서, DP를 만족시키면서도 가능한 성능저하를 줄일 수 있는 방법이 필요하다.
이를 위하여, 개시되는 실시예에 따른 재현 데이터 생성 장치(100)는 하나의 생성자(102)와 제1 구분자(104), 제2 구분자(106) 및 제3 구분자(108)를 포함하는 3개의 구분자를 포함하도록 구성된다.
생성자(102)는 입력값(z)으로부터 실제 데이터(x)와 유사한 재현 데이터(G(z))를 생성한다. 이때 입력값(z)은 난수(random number)일 수 있다.
제1 구분자(104)는 생성자(102)로부터 생성되는 재현 데이터(G(z))를 실제 데이터(x)와 구분하도록 학습된다. 제1 구분자(104)를 통하여, 생성자(102)는 실제 데이터(x)와 유사한 재현 데이터(G(z))를 생성하도록 학습될 수 있다.
제2 구분자(106)는 차등 정보 보호 기준을 만족하면서 실제 데이터(x)와 재현 데이터(G(z))를 구분하도록 학습된다. 제2 구분자(104)를 통하여 생성자(102)는 차등 정보 보호 기준을 만족하는 재현 데이터(GDP(z))를 생성하도록 학습될 수 있다.
개시되는 실시예들에서, 제2 구분자(106)는 차등 정보 보호 기준을 만족하기 위한 다양한 알고리즘 중 하나를 적용하여 학습을 수행할 수 있다. 상기 알고리즘은, 예를 들어 DP-GAN(Differentially Private Adversarial Network) 또는 PATE-GAN (Private Aggregation of Teacher Ensembles) 등을 포함할 수 있다. 그러나 개시되는 실시예들은 특정 알고리즘에 한정되는 것은 아니다.
제3 구분자(108)는 제1 구분자(104)에 의해 학습된 생성자(102)로부터 출력되는 재현 데이터(G(z))와 제2 구분자(106)에 의해 학습된 생성자(102)로부터 출력되는 재현 데이터(GDP(z))를 구분하도록 학습된다. 제3 구분자(108)를 통하여, 생성자(102)는 차등 정보 보호 기준을 만족하면서도 실제 데이터(x)와 구분이 어려운 정교한 재현 데이터를 생성하도록 학습될 수 있다.
일 실시예에서, 생성자(102)는 제1 구분자(104), 제2 구분자(106) 및 제3 구분자(108)에 의하여 순차적으로 학습될 수 있다.
도 2는 일 실시예에 따른 생성자(102)와 제1 구분자(104) 간의 학습 과정을 설명하기 위한 예시도이다. 도시된 예시도에서, 제1 구분자(104)는 생성자(102)로부터 생성된 재현 데이터(G(z))와 실제 데이터(x)를 구분하여, 실제 데이터(x)인 경우 1을 출력하고, 재현 데이터(G(z))인 경우 0을 출력하도록 학습된다. 생성자(102)는 제1 구분자(104)가 실제 데이터(x)와 구분할 수 없는 정교한 재현 데이터(G(z))를 생성하도록 학습된다. 다시 말해, 생성자(102)는 제1 구분자(104)가 재현 데이터(G(z))를 입력받고 이를 실제 데이터로 판단하여 1을 출력하도록 학습된다. 다음의 수학식 1은 실제 데이터와 유사한 재현 데이터를 생성하기 위한 minimax optimization을 나타낸 것이다.
[수학식 1]
Figure pat00001
=
Figure pat00002
Figure pat00003
=
Figure pat00004
Figure pat00005
위 수학식에서 G는 생성자(102), Dreal은 제1 구분자(104), x는 실제 데이터, z는 난수, G(z)는 재현 데이터,
Figure pat00006
,
Figure pat00007
은 각각 제1 구분자(104) 및 생성자(102)의 손실함수이다.
도시되지는 않았으나, 생성자(102)와 제2 구분자(106) 간의 학습 및 생성자(102)와 제3 구분자(108) 간의 학습 또한 유사한 과정을 통해 수행된다.
생성자(102)와 제2 구분자(106) 간의 학습 과정에서, 제2 구분자(106)는 생성자(102)로부터 차등 정보 보호를 만족하면서 재현 데이터(G(z))와 실제 데이터(x)를 구분하여, 실제 데이터(x)인 경우 1을 출력하고, 재현 데이터(G(z))인 경우 0을 출력하도록 학습된다. 예를 들어, 제2 구분자(106)는 출력값이 랜덤한 노이즈(random noise)를 추가하는 등의 방법을 통하여 차등 정보 보호를 만족하도록 학습될 수 있다.
생성자(102)는 제2 구분자(106)가 차등 정보 보호를 만족하는 재현 데이터(GDP(z))를 생성하도록 학습된다. 다시 말해, 생성자(102)는 제2 구분자(106)가 재현 데이터(GDP(z))를 입력받고 이를 실제 데이터로 판단하여 1을 출력하도록 학습된다. 다음의 수학식 2는 차등 정보 보호를 만족하는 재현 데이터를 생성하기 위한 minimax optimization을 나타낸 것이다.
[수학식 2]
Figure pat00008
=
Figure pat00009
Figure pat00010
=
Figure pat00011
Figure pat00012
=
Figure pat00013
위 수학식에서 G는 생성자(102),
Figure pat00014
은 제2 구분자(106), x는 실제 데이터, z는 난수,
Figure pat00015
는 차등 정보 보호를 만족하는 재현 데이터,
Figure pat00016
,
Figure pat00017
은 각각 제2 구분자(106) 및 생성자(102)의 손실함수이다.
생성자(102)와 제3 구분자(108) 간의 학습 과정에서, 제3 구분자(108)는 제1 구분자(104)에 의해 학습된 제1 재현 데이터(G(z))와 제2 구분자(106)에 의해 학습된 제2 재현 데이터(GDP(z))를 구분하여, 제1 재현 데이터(G(z))인 경우 1을 출력하고, 제2 재현 데이터(GDP(z))인 경우 0을 출력하도록 학습된다.
생성자(102)는 제3 구분자(106)가 구분할 수 없는 정교한 제2 재현 데이터(GDP(z))를 생성하도록 학습된다. 다시 말해, 생성자(102)는 제3 구분자(106)가 제2 재현 데이터(GDP(z))를 입력받고 이를 제1 재현 데이터(G(z))로 판단하여 1을 출력하도록 학습된다. 다음의 수학식 3은 차등 정보 보호를 보장하면서도 실제 데이터의 분포가 유사한 재현 데이터를 생성하기 위한 minimax optimization을 나타낸 것이다.
[수학식 3]
Figure pat00018
=
Figure pat00019
Figure pat00020
=
Figure pat00021
Figure pat00022
=
Figure pat00023
위 수학식에서 G는 생성자(102),
Figure pat00024
는 제3 구분자(108), G(z)는 제1 재현 데이터, z는 난수,
Figure pat00025
는 제2 재현 데이터,
Figure pat00026
,
Figure pat00027
은 각각 제3 구분자(108) 및 생성자(102)의 손실함수이다.
상기 수학식 1 내지 3에 도시된 세 개의 minimax optimization이 평형에 도달하면 학습이 종료된다. 도 3은 일 실시예에 따른 학습 과정에 따른 데이터의 분포를 설명하기 위한 그래프이다. 도시된 그래프에서 점선으로 표시된 p(x)는 실제 데이터(x)의 분포, p(G(z))는 제1 구분자(104)에 의하여 학습되는 재현 데이터(G(z))의 분포, p(GDP(z))는 제2 구분자(106)에 의하여 학습되는 DP가 보장된 재현 데이터(GDP(z))의 분포를 각각 나타낸다.
생성자(102)는 제1 구분자(104)와의 학습을 통하여 실제 데이터의 분포와 재현 데이터의 분포의 차이(dist1(p(x), p(G(z))))를 최소화하도록 학습될 수 있다. 다음으로 생성자(102)는 제2 구분자(106)와의 학습을 통하여 차등 정보 보호를 만족하면서 실제 데이터의 분포와 재현 데이터의 분포의 차이(dist2(p(x), p(GDP(z))))를 최소화하도록 학습될 수 있다. 마지막으로 생성자는 제3 구분자(108)와의 학습을 통하여 제1 구분자(104)에 의한 학습 결과(G(z))의 분포와 제2 구분자(106)에 의한 학습 결과(GDP(z))의 분포의 차이(dist3(p(G(z)), p(GDP(z))))를 최소화하도록 학습될 수 있다. 상기 과정을 통하여 생성자(102)는 차등 정보 보호 기준을 만족하면서도 실제 데이터(x)와 구분이 어려운 정교한 재현 데이터를 생성하도록 학습될 수 있다.
도 4는 일 실시예에 따른 생성적 적대 신경망의 학습 방법(400)을 설명하기 위한 흐름도이다. 도시된 흐름도는 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치, 예를 들어 재현 데이터 생성 장치(100)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
단계 402에서, 재현 데이터 생성 장치(100)는 실제 데이터(x)와 생성자(102)로부터 생성되는 재현 데이터(G(z))를 구분하도록 제1 구분자(104)를 학습한다.
단계 404에서, 재현 데이터 생성 장치(100)는 학습된 제1 구분자(104)를 이용하여 생성자(102)를 1차 학습한다. 이 과정을 통해 생성자(102)는 실제 데이터(x)와 유사한 분포를 가지는 재현 데이터(G(z))를 생성하도록 학습될 수 있다.
단계 406에서, 재현 데이터 생성 장치(100)는 차등 정보 보호 기준을 만족하면서 실제 데이터(x)와 재현 데이터(G(z))를 구분하도록 제2 구분자(106)를 학습한다.
단계 408에서, 재현 데이터 생성 장치(100)는 학습된 상기 제2 구분자(106)를 이용하여 상기 생성자(102)를 2차 학습한다. 이 과정을 통해 생성자(102)는 차등 정보 보호 기준을 만족하는 재현 데이터(GDP(z))를 생성하도록 학습될 수 있다.
단계 410에서, 재현 데이터 생성 장치(100)는 단계 404에 의해 학습된 생성자(102)로부터 출력되는 제1 재현 데이터(G(z)) 및 단계 408에 의해 학습된 생성자(102)로부터 출력되는 제2 재현 데이터(GDP(z))를 구분하도록 제3 구분자(108)를 학습한다. 본 단계의 학습을 위해 재현 데이터 생성 장치(100)는 상기 404 단계의 수행 이후, 생성자(102)로부터 복수의 제1 재현 데이터(G(z))를 획득하여 저장해 둘 수 있다.
단계 412에서, 재현 데이터 생성 장치(100)는 학습된 제3 구분자(108)를 이용하여 상기 생성자(102)를 3차 학습한다. 이 과정을 통해 생성자(102)는 차등 정보 기준을 만족하면서도 실제 데이터의 분포와 유사한 재현 데이터를 생성하도록 학습될 수 있다.
도 5는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 본 발명의 실시예들에 따른 재현 데이터 생성 장치(100)일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(102)와 연결될 수도 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 생성적 적대 신경망 기반의 재현 데이터 생성 장치
102: 생성자
104: 제1 구분자
106: 제2 구분자
108: 제3 구분자

Claims (7)

  1. 입력값으로부터 재현 데이터를 생성하는 생성자;
    실제 데이터와 상기 재현 데이터를 구분하도록 학습되는 제1 구분자;
    차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습되는 상기 제2 구분자; 및
    상기 제1 구분자에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 제2 구분자에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 학습되는 제3 구분자를 포함하는 생성적 적대 신경망 기반의 재현 데이터 생성 장치.
  2. 청구항 1에 있어서,
    상기 제2 구분자는, DP-GAN 또는 PATE-GAN 중 어느 하나의 알고리즘을 사용하여 상기 차등 정보 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습되는, 생성적 적대 신경망 기반의 재현 데이터 생성 장치.
  3. 청구항 1에 있어서,
    상기 생성자는, 상기 제1 구분자, 상기 제2 구분자 및 상기 제3 구분자에 의하여 순차적으로 학습되는, 생성적 적대 신경망 기반의 재현 데이터 생성 장치.
  4. 하나 이상의 프로세서들, 및
    상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
    실제 데이터와 생성자로부터 생성되는 재현 데이터를 구분하도록 제1 구분자를 학습하는 단계;
    학습된 상기 제1 구분자를 이용하여 상기 생성자를 1차 학습하는 단계;
    차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 제2 구분자를 학습하는 단계;
    학습된 상기 제2 구분자를 이용하여 상기 생성자를 2차 학습하는 단계;
    상기 1차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 2차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 제3 구분자를 학습하는 단계; 및
    학습된 상기 제3 구분자를 이용하여 상기 생성자를 3차 학습하는 단계를 포함하는, 기계 학습 방법.
  5. 청구항 4에 있어서,
    상기 제2 구분자를 학습하는 단계는,
    DP-GAN 또는 PATE-GAN 중 어느 하나의 알고리즘을 사용하여 상기 차등 정보 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습을 수행하는, 기계 학습 방법.
  6. 하나 이상의 프로세서들;
    메모리; 및
    하나 이상의 프로그램들을 포함하고,
    상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며,
    상기 하나 이상의 프로그램들은,
    실제 데이터와 생성자로부터 생성되는 재현 데이터를 구분하도록 제1 구분자를 학습하는 단계;
    학습된 상기 제1 구분자를 이용하여 상기 생성자를 1차 학습하는 단계;
    차등 정보 보호 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 제2 구분자를 학습하는 단계;
    학습된 상기 제2 구분자를 이용하여 상기 생성자를 2차 학습하는 단계;
    상기 1차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제1 재현 데이터 및 상기 2차 학습 단계에 의해 학습된 상기 생성자로부터 출력되는 제2 재현 데이터를 구분하도록 제3 구분자를 학습하는 단계; 및
    학습된 상기 제3 구분자를 이용하여 상기 생성자를 3차 학습하는 단계를 포함하는 단계들을 수행하기 위한 명령을 포함하는, 컴퓨팅 장치.
  7. 청구항 6에 있어서,
    상기 제2 구분자를 학습하는 단계는,
    DP-GAN 또는 PATE-GAN 중 어느 하나의 알고리즘을 사용하여 상기 차등 정보 기준을 만족하면서 상기 실제 데이터와 상기 재현 데이터를 구분하도록 학습을 수행하도록 구성되는, 컴퓨팅 장치.
KR1020200058088A 2020-05-15 2020-05-15 생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법 KR20210141026A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200058088A KR20210141026A (ko) 2020-05-15 2020-05-15 생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법
US16/885,006 US11615290B2 (en) 2020-05-15 2020-05-27 Synthetic data generation apparatus based on generative adversarial networks and learning method thereof
EP20194759.5A EP3910556A1 (en) 2020-05-15 2020-09-07 Generative adversarial networks for synthetic data generation satisfying differential privacy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200058088A KR20210141026A (ko) 2020-05-15 2020-05-15 생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법

Publications (1)

Publication Number Publication Date
KR20210141026A true KR20210141026A (ko) 2021-11-23

Family

ID=72422104

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200058088A KR20210141026A (ko) 2020-05-15 2020-05-15 생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법

Country Status (3)

Country Link
US (1) US11615290B2 (ko)
EP (1) EP3910556A1 (ko)
KR (1) KR20210141026A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023087247A1 (en) * 2021-11-19 2023-05-25 Huawei Technologies Co., Ltd. System, apparatus and methods of privacy protection

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190244138A1 (en) * 2018-02-08 2019-08-08 Apple Inc. Privatized machine learning using generative adversarial networks
US11675921B2 (en) * 2020-04-02 2023-06-13 Hazy Limited Device and method for secure private data aggregation

Also Published As

Publication number Publication date
US11615290B2 (en) 2023-03-28
EP3910556A1 (en) 2021-11-17
US20210357728A1 (en) 2021-11-18

Similar Documents

Publication Publication Date Title
US11132281B2 (en) Applying consistent log levels to application log messages
KR20180077691A (ko) 문장 추상화 장치 및 방법
Yan et al. LSTM‐based hierarchical denoising network for Android malware detection
US11347891B2 (en) Detecting and obfuscating sensitive data in unstructured text
JP2021524079A (ja) 自然言語分類のための訓練データの拡張
US20040205411A1 (en) Method of detecting malicious scripts using code insertion technique
US11803657B2 (en) Generation of representative data to preserve membership privacy
US20220309167A1 (en) Cluster security based on virtual machine content
US11568183B2 (en) Generating saliency masks for inputs of models using saliency metric
KR20210141026A (ko) 생성적 적대 신경망 기반의 재현 데이터 생성 장치 및 상기 장치의 학습 방법
KR20200106108A (ko) 딥러닝 기반의 특허정보 워드임베딩 방법 및 그 시스템
KR20220003380A (ko) 데이터 익명화 장치 및 방법
KR20220029011A (ko) 마이크로 서비스 식별 장치 및 방법
KR102372642B1 (ko) 자동 응답 생성 방법 및 장치
US11853751B2 (en) Indirect function call target identification in software
KR102323621B1 (ko) 펌웨어 퍼징 장치 및 방법
KR20220102012A (ko) 데이터 생성 방법 및 장치
US20220188567A1 (en) Generation of training data from redacted information
KR20220049754A (ko) 영상 분류 모델 학습 장치 및 방법
KR20240076910A (ko) 안드로이드 어플리케이션의 권한 분석 방법 및 장치
US11929063B2 (en) Obfuscating audio samples for health privacy contexts
KR102394210B1 (ko) 커뮤니티 검출 장치 및 방법
KR102358678B1 (ko) 대규모 소셜 네트워크 분석 방법 및 이를 수행하기 위한 장치
US20230359765A1 (en) Protecting sensitive personal information in spoken commands
US20230118939A1 (en) Risk Assessment of a Container Build

Legal Events

Date Code Title Description
A201 Request for examination