KR102412829B1 - 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치 - Google Patents

개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치 Download PDF

Info

Publication number
KR102412829B1
KR102412829B1 KR1020210139258A KR20210139258A KR102412829B1 KR 102412829 B1 KR102412829 B1 KR 102412829B1 KR 1020210139258 A KR1020210139258 A KR 1020210139258A KR 20210139258 A KR20210139258 A KR 20210139258A KR 102412829 B1 KR102412829 B1 KR 102412829B1
Authority
KR
South Korea
Prior art keywords
learning
data
network
training
modulated data
Prior art date
Application number
KR1020210139258A
Other languages
English (en)
Other versions
KR20220052837A (ko
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 주식회사 딥핑소스
Publication of KR20220052837A publication Critical patent/KR20220052837A/ko
Application granted granted Critical
Publication of KR102412829B1 publication Critical patent/KR102412829B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine 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
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • 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/048Activation functions
    • 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/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Bioethics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Facsimile Transmission Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Abstract

본 발명은 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서, (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계; (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및 (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계; 를 포함하는 방법에 관한 것이다.

Description

개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치 {METHOD FOR TRAINING AND TESTING OBFUSCATION NETWORK CAPABLE OF PROCESSING DATA TO BE OBFUSCATED FOR PRIVACY, AND TRAINING DEVICE AND TESTING DEVICE USING THE SAME}
본 발명은 개인 정보 보호를 위하여 원본 데이터를 변조(obfuscation)하는 변조 네트워크를 학습하는 방법 및 이를 이용한 학습 장치, 그리고, 개인 정보 보호를 위하여 원본 데이터를 변조하기 위하여 학습된 변조 네트워크를 테스팅하는 방법 및 이를 이용한 테스팅 장치에 관한 것이다.
빅데이터(big data)란, 기존의 기업 환경이나 공공 기관에서 사용되는 정형화된 데이터는 물론, 전자 상거래 데이터, 메타 데이터, 웹 로그 데이터, 무선 식별(RFID: Radio Frequency Identification) 데이터, 센서 네트워크 데이터, 소셜 네트워크 데이터, 인터넷 텍스트와 문서에 관한 데이터, 인터넷 검색 인덱싱 데이터 등 기존에 미처 활용하지 못하던 비정형화 또는 반정형화된 데이터를 모두 포함하는 데이터로서, 이와 같은 데이터는 일반적으로 보통의 소프트웨어 툴 및 컴퓨터 시스템으로는 다루기 어려운 수준의 데이터 양을 갖게 된다는 의미에서 빅데이터라 칭하고 있다.
또한, 이러한 빅데이터는 그 자체만으로는 의미가 없을 수 있으나, 패턴 등에 대한 기계 학습을 통해 다양한 분야에서 새로운 데이터를 만들어내거나 판단 또는 예측을 하는데 유용하게 사용될 수 있다.
근래에 들어, 개인 정보 보호법 강화 등으로 인해 이러한 빅데이터를 거래 또는 공유하기 위해서는 해당 데이터의 개인 식별이 가능한 정보를 삭제하거나 해당 개인의 동의를 받는 것이 요구된다. 하지만, 상당한 양의 빅데이터 중 개인 식별이 가능한 정보가 있는지 여부를 일일이 확인하기도 어려울 뿐만 아니라 개인의 동의를 일일이 받는 것도 불가능하였기 때문에 이를 지원하기 위한 다양한 기술들이 등장하고 있다.
이에 관한 종래 기술의 일 예로서, 한국등록특허공보 제1861520호에 개시된 기술을 예로 들 수 있는데, 이에 따르면, 입력된 변형 대상 이미지에서 사람의 얼굴 영역을 검출하는 검출 단계, 상기 변형 대상 이미지에서 사람이 비식별 되도록 상기 검출된 얼굴 영역을 사람의 얼굴 형상이 아닌 왜곡된 제1 이미지로 변형하는 제1 비식별화 단계, 및 상기 제1 이미지를 토대로 소정의 얼굴 형성을 갖는 제2 이미지를 생성하고, 상기 변형 대상 이미지에서 상기 제1 이미지를 상기 제2 이미지로 변형시키되, 상기 제2 이미지는 상기 검출 단계에서 검출된 얼굴 영역의 형상과 상이한 얼굴 형상을 갖도록 생성되는 제2 식별화 단계를 포함하는 얼굴 비식별화 방법이 제공된다.
하지만, 위와 같은 종래 기술을 비롯하여 지금까지 소개된 기술에 의하면, 데이터 상에 얼굴, 텍스트 등의 식별 정보를 포함하는지 여부를 확인하고, 식별 정보에 해당하는 부분을 마스킹(masking) 또는 블러(blur) 처리하여 지우거나 가리는 방식이었기 때문에, 원본 데이터의 손상으로 인해 기계 학습에서 사용되기 어려웠고, 데이터 상에 예측하지 못한 식별 정보가 포함되어 이를 비식별화하지 못하는 경우도 종종 발생하였다. 특히, 종래의 보안 카메라(security camera)는 영상 이미지 내에 프레임 간 변화가 있는 모든 픽셀을 블러(blur) 처리하는 방식으로 비식별 처리를 수행하게 되는 데, 이러한 방식으로 비식별 처리를 수행하게 되면, 비식별된 얼굴의 표정 등 주요 정보가 원본 영상 이미지에 담긴 정보와 달라지게 될 뿐만 아니라 얼굴 검출 과정에서 누락된 개인 식별 정보가 원본 영상 이미지 상에 그대로 남게 되는 문제가 있었다.
이에 본 발명자(들)는, 원본 데이터와 상이하게 변조된 변조 데이터를 생성하되, 학습 모델에 원본 데이터가 입력됨에 따라 출력되는 결과와 해당 학습 모델에 위의 변조 데이터가 입력됨에 따라 출력되는 결과가 서로 동일하거나 유사하게 되는 기술을 제안하는 바이다.
본 발명은, 전술한 종래 기술의 문제점을 모두 해결하는 것을 그 목적으로 한다.
또한, 본 발명은, 데이터 내에서 개인 식별 정보를 찾는 작업이 요구되지 않으므로, 비교적 간편하면서도 정확하게 변조 처리를 수행할 수 있도록 하는 것을 또 다른 목적으로 한다.
또한, 본 발명은, 원본 데이터로부터 비가역적으로 변조(obfuscation)하여 변조 처리된 데이터를 생성함으로써, 원본 데이터의 보안 및 프라이버시를 지킬 수 있는 것을 또 다른 목적으로 한다.
또한, 본 발명은, 인간에게는 전혀 다르게 보이는 데이터이지만, 컴퓨터에게는 서로 동일하거나 유사하게 보이는 데이터를 생성하는 것을 또 다른 목적으로 한다.
또한, 본 발명은, 빅데이터 거래 시장을 보다 활성화시키는 것을 또 다른 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.
본 발명의 일 실시예에 따르면, 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서, (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계; (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및 (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계; 를 포함하는 방법이 제공된다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 (b) 단계에서, 상기 학습 장치는, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며, 상기 (c) 단계에서, 상기 학습 장치는, 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킬 수 있다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 (a) 단계에서, 상기 학습 장치는, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며, 상기 (b) 단계에서, 상기 학습 장치는, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 학습용 특징 정보를 출력하도록 하며, 상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, (ii) 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_1 에러를 최대화하도록, 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하며, 상기 학습 장치는, 상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하고, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 학습용 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, (iii-2) 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_k 에러를 최대화하도록, 상기 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 (k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 할 수 있다.
상기 (c) 단계에서, 상기 학습 장치는, 입력되는 데이터가 리얼(real)인지 페이크(fake)인지를 판별하는 디스크리미네터(discriminator)에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킬 수 있다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 (b) 단계에서, 상기 학습 장치는, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며, 상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킬 수 있다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 (a) 단계에서, 상기 학습 장치는, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며, 상기 (b) 단계에서, 상기 학습 장치는, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 특징 정보를 출력하도록 하며, 상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 제1 학습용 압축 인식 변조 데이터를 판별한 제1 학습용 변조 데이터 스코어인 제2_1 에러를 최대화하도록 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터를 판별한 제1 학습용 데이터 스코어를 최대화하며, 상기 제1 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시켜 상기 디스크리미네터가 제1 학습된 디스크리미네터가 되도록 하고, 상기 학습 장치는, 상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하도록 하며, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, 제(k-1) 학습된 디스크리미네터에 입력되는 상기 제k 학습용 압축 인식 변조 데이터를 판별한 제k 학습용 변조 데이터 스코어인 제2_k 에러를 최대화 하도록 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 제(k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 하고, (iii-2) 상기 제(k-1) 학습된 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터를 판별한 제k 학습용 데이터 스코어를 최대화하며, 상기 제k 학습용 변조 데이터 스코어를 최소화하도록 상기 제(k-1) 학습된 디스크리미네터를 학습시켜 상기 제(k-1) 학습된 디스크리미네터가 제k 학습된 디스크리미네터가 되도록 할 수 있다.
상기에서, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어의 최대값은 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 리얼로 판별하는 1이며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어의 최소값은 상기 학습용 압축 인식 변조 데이터를 페이크로 판별하는 0일 수 있다.
상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 차이에 의해 상기 제1 에러를 획득하고, (ii) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터의 차이에 의해 상기 제2 에러를 획득하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터의 차이에 의해 상기 제2 에러를 획득할 수 있다.
상기에서, 상기 학습 장치는, 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 노름 또는 코사인 유사도(cosine similarity)에 의해 상기 제1 에러를 획득할 수 있다.
상기 (c) 단계에서, 상기 학습 장치는, 상기 제1 학습용 특징 정보를 클래스별로 맵핑한 상기 학습용 압축 인식 변조 데이터에 대한 프로바빌리티(probability)와 상기 학습용 데이터에 대응되는 그라운드 트루스를 참조하여 획득한 클래스 로스를 더 참조하여 상기 제1 에러를 획득할 수 있다.
상기 (c) 단계에서, 상기 학습 장치는, 상기 학습용 압축 인식 변조 데이터의 엔트로피, 노이즈 정도 중 적어도 일부를 참조로 하여 퀄리티를 측정하고, 측정된 상기 퀄리티를 더 참조하여 상기 제1 에러를 획득할 수 있다.
또한, 본 발명의 일 실시예에 따르면, 개인 정보 보호를 위하여 원본 데이터를 비식별 처리하는 변조 네트워크를 테스팅하는 방법에 있어서, (a) 학습 장치에 의해, (i) 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, (iii) (iii-1) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조한 제1 에러를 최소화하며, (iii-2) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태에서, 테스트 장치가, 테스트용 데이터를 획득하는 단계; 및 (b) 상기 테스트 장치가, 상기 테스트용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 변조 네트워크의 학습된 파라미터에 의해 상기 테스트용 데이터를 변조하여 상기 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 상기 테스트용 변조 데이터를 상기 테스트용 데이터의 변조 처리된 데이터로 획득하는 방법이 제공된다.
상기 (a) 단계에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 학습 장치에 의해, (i) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (ii) (ii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, (ii-2) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태일 수 있다.
상기 (a) 단계에서, 상기 학습 장치에 의해, 입력되는 데이터가 리얼인지 페이크를 판별하는 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태일 수 있다.
상기 (a) 단계에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 학습 장치에 의해, (ii) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (iii-2) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태일 수 있다.
또한, 본 발명의 일 실시예에 따르면, 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서, 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및 상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서; 를 포함하며, 상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하는 학습 장치가 제공된다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 프로세서는, 상기 (II) 프로세스에서, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며, 상기 (III) 프로세스에서, 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킬 수 있다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 프로세서는, 상기 (I) 프로세스에서, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며, 상기 (II) 프로세스에서, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 학습용 특징 정보를 출력하도록 하며, 상기 (III) 프로세스에서, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, (ii) 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_1 에러를 최대화하도록, 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하며, 상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하고, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 학습용 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, (iii-2) 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_k 에러를 최대화하도록, 상기 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 (k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 할 수 있다.
상기 프로세서는, 상기 (III) 프로세스에서, 입력되는 데이터가 리얼(real)인지 페이크(fake)인지를 판별하는 디스크리미네터(discriminator)에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킬 수 있다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 프로세서는, 상기 (II) 프로세스에서, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며, 상기 (III) 프로세스에서, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킬 수 있다.
상기에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 프로세서는, 상기 (I) 프로세스에서, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며, 상기 (II) 프로세스에서, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 특징 정보를 출력하도록 하며, 상기 (III) 프로세스에서, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 제1 학습용 압축 인식 변조 데이터를 판별한 제1 학습용 변조 데이터 스코어인 제2_1 에러를 최대화하도록 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터를 판별한 제1 학습용 데이터 스코어를 최대화하며, 상기 제1 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시켜 상기 디스크리미네터가 제1 학습된 디스크리미네터가 되도록 하고, 상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하도록 하며, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, 제(k-1) 학습된 디스크리미네터에 입력되는 상기 제k 학습용 압축 인식 변조 데이터를 판별한 제k 학습용 변조 데이터 스코어인 제2_k 에러를 최대화 하도록 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 제(k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 하고, (iii-2) 상기 제(k-1) 학습된 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터를 판별한 제k 학습용 데이터 스코어를 최대화하며, 상기 제k 학습용 변조 데이터 스코어를 최소화하도록 상기 제(k-1) 학습된 디스크리미네터를 학습시켜 상기 제(k-1) 학습된 디스크리미네터가 제k 학습된 디스크리미네터가 되도록 할 수 있다.
상기에서, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어의 최대값은 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 리얼로 판별하는 1이며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어의 최소값은 상기 학습용 압축 인식 변조 데이터를 페이크로 판별하는 0일 수 있다.
상기 프로세서는, 상기 (III) 프로세스에서, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 차이에 의해 상기 제1 에러를 획득하고, (ii) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터의 차이에 의해 상기 제2 에러를 획득하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터의 차이에 의해 상기 제2 에러를 획득할 수 있다.
상기 프로세서는, 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 노름 또는 코사인 유사도에 의해 상기 제1 에러를 획득할 수 있다.
상기 프로세서는, 상기 (III) 프로세스에서, 상기 제1 학습용 특징 정보를 클래스별로 맵핑한 상기 학습용 압축 인식 변조 데이터에 대한 프로바빌리티(probability)와 상기 학습용 데이터에 대응되는 그라운드 트루스를 참조하여 획득한 클래스 로스를 더 참조하여 상기 제1 에러를 획득할 수 있다.
상기 프로세서는, 상기 (III) 프로세스에서, 상기 학습용 압축 인식 변조 데이터의 엔트로피, 노이즈 정도 중 적어도 일부를 참조로 하여 퀄리티를 측정하고, 측정된 상기 퀄리티를 더 참조하여 상기 제1 에러를 획득할 수 있다.
또한, 본 발명의 일 실시예에 따르면, 개인 정보 보호를 위하여 원본 데이터를 비식별 처리하는 변조 네트워크를 테스팅하는 테스팅 장치에 있어서, 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 테스팅하기 위한 인스트럭션들이 저장된 메모리; 및 상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 테스팅하기 위한 동작을 수행하는 프로세서; 를 포함하며, 상기 프로세서는, (I) 학습 장치에 의해, (i) 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, (iii) (iii-1) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조한 제1 에러를 최소화하며, (iii-2) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태에서, 테스트용 데이터를 획득하는 프로세스, 및 (II) 상기 테스트용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 변조 네트워크의 학습된 파라미터에 의해 상기 테스트용 데이터를 변조하여 상기 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 상기 테스트용 변조 데이터를 상기 테스트용 데이터의 변조 처리된 데이터로 획득하는 테스팅 장치가 제공된다.
상기 (I) 프로세스에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 학습 장치에 의해, (i) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (ii) (ii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, (ii-2) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태일 수 있다.
상기 (I) 프로세스에서, 상기 학습 장치에 의해, 입력되는 데이터가 리얼인지 페이크를 판별하는 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태일 수 있다.
상기 (I) 프로세스에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며, 상기 학습 장치에 의해, (ii) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (iii-2) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태일 수 있다.
이 외에도, 본 발명의 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명에 의하면, 데이터 내에서 개인 식별 정보를 찾는 작업이 요구되지 않으므로, 비교적 간편하면서도 정확하게 변조 처리를 수행할 수 있게 된다.
또한, 본 발명에 의하면, 원본 데이터로부터 비가역적으로 변조하여 변조 처리된 데이터를 생성함으로써, 데이터의 보안 및 프라이버시를 지킬 수 있게 된다.
또한, 본 발명에 의하면, 인간에게는 전혀 다르게 보이는 데이터이지만, 컴퓨터에게는 서로 동일하거나 유사하게 보이는 데이터를 생성할 수 있게 된다.
또한, 본 발명에 의하면, 빅데이터 거래 시장을 보다 활성화시킬 수 있게 된다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 "통상의 기술자")에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 본 발명의 일 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 학습 장치를 개략적으로 도시한 것이고,
도 2는 본 발명의 일 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 방법을 개략적으로 도시한 것이고,
도 3는 본 발명의 일 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 다른 방법을 개략적으로 도시한 것이고,
도 4는 본 발명의 다른 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 방법을 개략적으로 도시한 것이고,
도 5는 본 발명의 다른 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 다른 방법을 개략적으로 도시한 것이고,
도 6은 본 발명의 일 실시예에 따라 학습된 변조 네트워크를 테스팅하는 테스팅 장치를 개략적으로 도시한 것이고,
도 7은 본 발명의 일 실시예에 따라 학습된 변조 네트워크를 테스팅하는 방법을 개략적으로 도시한 것이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 본 발명의 정신과 범위를 벗어나지 않으면서 일 실시예로부터 다른 실시예로 변경되어 구현될 수 있다. 또한, 각각의 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신과 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 특허청구범위의 청구항들이 청구하는 범위 및 그와 균등한 모든 범위를 포괄하는 것으로 받아들여져야 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 구성요소를 나타낸다.
이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 여러 바람직한 실시예에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 학습 장치를 개략적으로 도시한 것이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 학습 장치(100)는 러닝 네트워크에서 학습용 데이터의 결과와 동일하거나 유사한 결과가 출력되도록 학습용 데이터를 학습용 변조 데이터로 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리(110)와 메모리(110)에 저장된 인스트럭션들에 따라 변조 네트워크를 학습시키는 동작을 수행하는 프로세서(120)를 포함할 수 있다.
구체적으로, 학습 장치(100)는 전형적으로 컴퓨팅 장치(예컨대, 컴퓨터 프로세서, 메모리, 스토리지, 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS) 및 스토리지 영역 네트워크(SAN)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다.
또한, 컴퓨팅 장치의 프로세서는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 컴퓨팅 장치는 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.
그러나, 컴퓨팅 장치가 본 발명을 실시하기 위한 미디엄, 프로세서 및 메모리가 통합된 형태인 integrated 프로세서를 포함하는 경우를 배제하는 것은 아니다.
한편, 학습 장치(100)는 학습용 데이터가 획득되면, 메모리(110)에 저장된 인스트럭션들에 따라 프로세서(120)가, 학습용 데이터를 변조 네트워크에 입력하여 변조 네트워크로 하여금 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 한다. 그리고, 학습 장치(100)의 프로세서(120)는 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 컴프레션 네트워크로 하여금 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 학습용 압축 인식 변조 데이터를 생성하도록 한다. 다음으로, 학습 장치(100)의 프로세서(120)는 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 학습용 데이터를 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 데이터를 러닝 연산하여 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 한다. 이후, 학습 장치(100)의 프로세서(120)는 제1 학습용 특징 정보와 제2 학습용 특징 정보를 참조하여 생성한
제1_1 에러와, 제1 학습용 특징 정보를 이용하여 생성한 학습용 태스크 특정 출력(task specific output)과 이에 대응되는 그라운드 트루스(ground truth)를 참조하여 생성한 제1_2 에러 중 적어도 하나를 이용하여 생성한 제1 에러를 최소화하며, 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 학습용 변조 데이터를 참조하여 생성하거나, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터와, 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록 변조 네트워크를 학습시킬 수 있다.
또한, 학습 장치(100)의 프로세서(120)는 입력되는 데이터가 리얼(real)인지 페이크(fake)인지를 판별하는 디스크리미네터(discriminator)에 입력된 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 제2 에러로 획득한 상태에서, 제1 에러를 최소화하며 제2 에러를 최대화하도록 변조 네트워크를 학습시킴과 더불어, 디스크리미네터에 입력된 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터를 학습시킬 수 있다.
이와 같이 구성된 본 발명의 일 실시예에 따른 학습 장치(100)를 이용하여 개인 정보 보호를 위하여 원본 데이터를 변조 처리하는 변조 네트워크를 학습시키는 방법을 도 2 내지 도 5를 참조하여 설명하면 다음과 같다.
도 2는 본 발명의 일 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 방법을 개략적으로 도시한 것이다.
먼저, 학습용 데이터(x)가 획득되면, 학습 장치(100)는, 학습용 데이터(x)를 변조 네트워크(O)에 입력하여 변조 네트워크(O)로 하여금 학습용 데이터(x)를 변조하여 학습용 변조 데이터(x', O(x))를 생성하도록 한다.
이때, 학습용 변조 데이터(x')는, 사람에게는 학습용 데이터(x)와 다르게 인식되나, 러닝 네트워크에서는 학습용 데이터(x)와 동일하거나 유사한 것으로 인식될 수 있다.
한편, 변조 네트워크(O)는 일 예로, 입력되는 학습용 데이터(x)인 이미지를 컨볼루션 연산하는 다수의 컨볼루션 레이어들을 포함하는 encoder와, encoder에서 출력되는 피처맵을 디컨볼루션하여 학습용 변조 데이터(x')를 출력하는 다수의 디컨볼루션 레이어들을 포함하는 decoder를 포함할 수 있으나, 이에 한정되지 않으며, 입력되는 학습용 데이터를 학습용 변조 데이터로 변조하는 다양한 구조의 러닝 네트워크를 포함할 수 있다.
다음으로, 학습 장치(100)는 학습용 변조 데이터(x')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 학습용 변조 데이터(x')를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 학습용 압축 인식 변조 데이터(x")를 생성하도록 한다.
이때, 컴프레션 네트워크(C)는, 변조 네트워크(O)의 학습시 데이터 압축에 효율적인 형태를 고려하여 원본 데이터를 변조할 수 있도록 하기 위한 것일 수 있다.
일 예로, 원본 데이터가 이미지일 경우, 변조된 데이터도 동일한 형태의 이미지로 볼 수 있으므로, 변조된 데이터는 원본 데이터와 비슷한 수준의 압축률이 요구되는 경우가 많다. 따라서, 컴프레션 네트워크(C)를 통해 학습용 변조 데이터(x')가 데이터 압축 알고리즘을 거쳐 바이너리 데이터가 되도록 하고 바이너리 데이터를 다시 압축 해제함으로써 데이터 압축과 관련한 정보를 가지는 학습용 압축 인식 변조 데이터(x")가 되도록 할 수 있다.
그리고, 데이터 압축 및 해제를 위한 알고리즘은 JPEG, MPEG 등을 포함할 수 있으나, 본 발명이 이에 한정되지 않으며, 데이터 압축 및 해제에 이용되는 모든 데이터 압축 알고리즘을 포함할 수 있다.
다음으로, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x")를 학습된 파라미터를 가지는 러닝 네트워크(F)에 입력하여 러닝 네트워크(F)로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터(x")를 러닝 연산하여 학습용 압축 인식 변조 데이터(x")에 대응하는 제1 학습용 특징(characteristic) 정보(F(x"))를 생성하도록 하며, 학습용 데이터(x)를 러닝 네트워크(F)에 입력하여 러닝 네트워크(F)로 하여금 학습된 파라미터를 이용하여 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대응하는 제2 학습용 특징 정보(F(x))를 생성하도록 할 수 있다.
이때, 러닝 네트워크(F)는 머신 러닝 네트워크를 포함할 수 있으나, 이에 한정되지 않으며, 학습된 파라미터에 따라 입력되는 학습용 압축 인식 변조 데이터(x")를 러닝 연산하여 제1 학습용 특징 정보(F(x"))를 출력하며, 학습용 데이터(x)를 러닝 연산하여 제2 학습용 특징 정보(F(x))를 출력하도록 하는 모든 러닝 네트워크를 포함할 수 있다. 그리고, 머신 러닝 네트워크는 K-최근접 이웃(k-Nearest Neighbors), 선형 회귀(Linear Regression), 로지스틱 회귀(Logistic Regression), 서포트 벡터 머신(SVM, Support Vector Machine), 결정 트리(Decision Tree)와 랜덤 포레스트(Random Forest), 신경망(Neural Network), 군집(Clustering), 시각화(Visualization)와 차원 축소(Dimensionality Reduction), 연관 규칙 학습(Association Rule Learning), 심층 신뢰 신경망(Deep Belief Network), 강화 학습(Reinforcement Learning), 및 딥 러닝(deep learning) 알고리즘 중 적어도 하나를 포함할 수 있으나, 머신 러닝 네트워크는 이에 한정되지 않으며 다양한 러닝 알고리즘을 포함할 수 있다. 또한, 변조 처리를 위한 대상은 원본 데이터(x)에 포함된 개인 정보일 수 있으며, 개인 정보는 개인 식별 정보, 개인의 의료 정보, 생체 정보, 행동 정보 등 개인과 관련한 모든 정보를 포함할 수 있다.
그리고, 제1 학습용 특징 정보(F(x")와 제2 학습용 특징 정보(F(x))는 각각 학습용 압축 인식 변조 데이터(x")와 학습용 데이터(x)에 대한 피처(feature) 또는 로짓(logits) 일 수 있다. 또한, 제1 학습용 특징 정보(F(x")와 제2 학습용 특징 정보(F(x))는 각각 학습용 압축 인식 변조 데이터(x")와 학습용 데이터(x) 내 소정 특징과 연관된 피처 값, 또는 소정 특징과 관련한 벡터(vector), 행렬(matrix) 및 좌표(coordinate) 중 적어도 하나에 관한 값을 포함하는 로짓일 수 있다. 예를 들어, 학습용 데이터(x)가 얼굴 이미지 데이터인 경우에, 위의 결과는 얼굴 인식을 위한 클래스, 얼굴 특징, 일 예로, 웃음에 대한 상태, 얼굴 특징점(landmark point, 예를 들어, 눈의 양 끝점)에 관한 좌표일 수 있다.
다음으로, 학습 장치(100)는 제1 학습용 특징 정보(F(x"))와 제2 학습용 특징 정보(F(x))를 참조하여 획득한 에러와, 제1 학습용 특징 정보(F(x"))를 이용하여 생성한 태스크 특정 출력(task specific output)과 이에 대응되는 그라운드 트루스(ground truth)를 참조하여 획득한 에러 중 적어도 하나를 참조하여 생성한 제1 에러를 최소화하며, 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 학습용 변조 데이터를 참조하여 생성하거나, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터와, 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킬 수 있다. 이때, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터를 이용하여 제2 에러를 생성한 것과는 달리, 학습용 데이터와 학습용 변조 데이터를 참조하거나, 학습용 데이터와 학습용 압축 인식 변조 데이터를 참조하여 제2 에러를 생성할 수도 있다.
즉, 학습 장치(100)는 변조 네트워크(O)를 학습시킴에 있어서, 제2 에러를 이용하여 변조 네트워크(O)가 학습용 데이터(x)와는 차이가 많은 학습용 변조 데이터(x')를 출력하도록 학습시키며, 제1 에러를 이용하여 러닝 네트워크(F)에서 학습용 데이터(x)와 동일하거나 유사하게 인식되도록 학습용 데이터(x)를 변조하여 학습용 변조 데이터(x')를 출력하도록 학습시킬 수 있다. 또한, 변조 네트워크(O)는 학습용 데이터(x')와 비슷한 수준의 압축률을 가지는 학습용 변조 데이터(x')를 출력하도록 학습될 수 있다.
이때, 학습 장치(100)는 제1 학습용 특징 정보(F(x"))와 제2 학습용 특징 정보(F(x))의 차이와, 제1 학습용 특징 정보(F(x"))를 이용하여 생성한 학습용 태스크 특정 출력과 이에 대응되는 그라운드 트루스의 차이 중 적어도 하나를 참조하여 제1 에러를 획득할 수 있다. 일 예로, 학습 장치(100)는 제1 학습용 특정 정보(F(x"))와 제2 학습용 특징 정보(F(x))의 노름(norm) 또는 코사인 유사도(cosine similarity)에 의해 제1 에러를 획득할 수 있으나, 이에 한정되지 않으며, 제1 학습용 특징 정보(F(x"))와 제2 학습용 특징 정보(F(x))의 차이를 산출할 수 있는 다양한 알고리즘을 적용할 수 있다. 또한, 학습 장치(100)는 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터와, 학습용 변조 데이터(x')의 차이에 의해 제2 에러를 획득하거나, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터와, 학습용 압축 인식 변조 데이터(x")의 차이에 의해 제2 에러를 획득할 수 있다. 이에 더하여, 학습 장치(100)는 학습용 데이터와 학습용 변조 데이터의 차이에 의해 제2 에러를 획득하거나, 학습용 데이터와 학습용 압축 인식 변조 데이터의 차이에 의해 제2 에러를 획득할 수 있다.
그리고, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터는 각각, 학습용 데이터 또는 학습용 변조 데이터 각각에 랜덤 노이즈 생성 네트워크(미도시)를 통해 생성된 랜덤 노이즈를 부가하여 생성할 수 있다. 일 예로, 랜덤 노이즈 생성 네트워크로 하여금 정규분포 N(0, σ)에 따른 랜덤 노이즈를 생성하도록 하며, 생성된 노이즈를 학습용 데이터 또는 학습용 변조 데이터에 각각 추가하여 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터를 생성할 수 있다. 또한, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터 각각은 랜덤 노이즈 이외에도, 학습용 데이터 또는 학습용 변조 데이터 각각을 블루(blur) 처리하거나 학습용 데이터 또는 학습용 변조 데이터 각각의 해상도를 변경하여 생성할 수 있으나, 이에 한정되지 않으며, 학습용 데이터 또는 학습용 변조 데이터를 보정하는 다양한 방법이 적용될 수 있다.
또한, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x")의 엔트로피, 노이즈 정도 중 적어도 일부를 참조로 하여 퀄리티(quality)를 측정하고, 측정된 퀄리티를 더 참조하여 제1 에러를 획득할 수 있다. 즉, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x") 의 퀄리티를 최소화, 일 예로, 학습용 압축 인식 변조 데이터(x") 의 엔트로피, 노이즈 등을 최대화하도록 변조 네트워크(O)를 학습시킬 수 있다.
그리고, 학습 장치(100)는 제1 에러를 최소화하도록 하며, 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킬 경우, 러닝 네트워크(F)의 학습된 파라미터는 고정하여 업데이트하지 않으며, 변조 네트워크(O)에 대해서만 학습을 진행할 수 있다.
한편, 태스크 특정 출력은 러닝 네트워크(F)가 수행하고자 하는 태스크(task)에 대한 출력으로, 클래스 분류를 위한 클래스에 대한 프로바빌리티(probability), 위치 검출을 위한 리그레이션에 대한 좌표값 등 러닝 네트워크(F)의 학습된 태스크에 따른 다양한 결과값을 가질 수 있으며, 러닝 네트워크(F)에서 출력되는 특징 정보를 액티베이션 유닛의 액티베이션 함수를 이용하여 연산하여 러닝 네트워크(F)에서 수행하고자 하는 태스크에 대응하여 태스크 특정 출력을 생성할 수 있다. 이때, 액티베이션 함수로는 sigmoid, linear, softmax, rlinear, square, sqrt, srlinear, abs, tanh, brlinear 등이 사용될 수 있으나, 본원발명이 이에 한정되지는 않는다.
일 예로, 러닝 네트워크(F)가 클래스 분류를 위한 태스크를 수행하는 경우, 학습 장치(100)는 러닝 네트워크(F)에서 출력되는 제1 학습용 특징 정보를 클래스별로 맵핑하여 학습용 압축 인식 변조 데이터에 대한 클래스별 프로바빌리티를 생성할 수 있다. 이때, 클래스별 프로바빌리티는 설정된 클래스별로 러닝 네트워크(F)에서 출력되는 제1 학습용 특징 정보(F(x"))가 정답일 확률을 나타낼 수 있다. 예를 들어, 학습용 데이터가 얼굴 이미지 데이터인 경우에, 얼굴이 웃는 상태일 프로바빌리티는 0.75, 웃지 않는 상태일 프로바빌리티는 0.25 등과 같이 출력될 수 있다. 이때, 러닝 네트워크(F)에서 출력되는 제1 학습용 특징 정보(F(x"))를 클래스별로 매핑하는 데 softmax를 사용할 수 있으나, 이에 한정되지 않으며, 제1 학습용 특징 정보(F(x"))를 클래스별로 매핑하는 다양한 알고리즘이 이용될 수 있다.
그리고, 학습 장치(100)에 의한 제1 에러를 이용한 변조 네트워크(O)의 학습시, 컴프레션 네트워크(C)는, 실제 사용될 데이터 압축 알고리즘을 이용한 포워드 패스(forward pass)와는 달리, 백워드 패스(backward pass)에서는 데이터 압축 알고리즘이 C(x') = x'인 경우를 가정하여 그래디엔트(gradient)를 변조 네트워크(O)로 전달하여 줄 수 있다. 즉, 포워드 패스에서 생성되는 바이너리 데이터는 실제로 O(x) = x'를 데이터 압축 알고리즘으로 압축한 결과와 동일하며, 결과적으로 백워드 패스에서 컴프레션 네트워크(C)는 identify function으로 작용할 수 있다.
도 3은 본 발명의 일 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 다른 방법을 개략적으로 도시한 것으로, 도 2에서의 러닝 네트워크(F)를 학습된 파라미터를 가지는 다수의 러닝 네트워크(F1, F2, ??, Fn)으로 구성한 것이다. 이때, 다수의 러닝 네트워크(F1, F2, ??, Fn) 각각은 서로 다른 태스크를 수행하도록 학습된 상태일 수 있다. 하기의 설명에서는 상기 도 2의 설명에서 용이하게 이해 가능한 부분에 대해서는 상세한 설명을 생략하기로 한다.
먼저, 학습용 데이터(x)가 획득되면, 학습 장치(100)는, 학습용 데이터(x)를 변조 네트워크(O)에 입력하여 변조 네트워크(O)로 하여금 학습용 데이터(x)를 변조하여 학습용 변조 데이터(x', O(x))를 생성하도록 한다.
이때, 학습용 데이터(x)는 학습에 이용하기 위한 원본 데이터 또는 원본 데이터를 보정한 보정된 데이터일 수 있으며, 학습용 변조 데이터(x')는, 사람에게는 학습용 데이터(x)와 다르게 인식되나, 러닝 네트워크에서는 학습용 데이터(x)와 동일하거나 유사한 것으로 인식될 수 있다.
다음으로, 학습 장치(100)는 학습용 변조 데이터(x')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 학습용 변조 데이터(x')를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터(x")를 생성하도록 한다.
이때, 컴프레션 네트워크(C)는, 변조 네트워크(O)의 학습시 데이터 압축에 효율적인 형태를 고려하여 원본 데이터를 변조할 수 있도록 하기 위한 것일 수 있다.
일 예로, 원본 데이터가 이미지일 경우, 변조된 데이터도 동일한 형태의 이미지로 볼 수 있으므로, 변조된 데이터는 원본 데이터와 비슷한 수준의 압축률이 요구되는 경우가 많다. 따라서, 컴프레션 네트워크(C)를 통해 학습용 변조 데이터(x')가 데이터 압축 알고리즘을 거쳐 바이너리 데이터가 되도록 하고 바이너리 데이터를 다시 압축 해제함으로써 데이터 압축과 관련한 정보를 가지는 학습용 압축 인식 변조 데이터(x")가 되도록 할 수 있다.
다음으로, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x")를 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가지는 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)에 입력하여 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)로 하여금 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn) 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터(x")를 러닝 연산하여 학습용 압축 인식 변조 데이터(x")에 대응하는 제1_1 학습용 특징(characteristic) 정보(F1(x")) 내지 제1_n 학습용 특징 정보(Fn(x"))를 생성하도록 한다. 또한, 학습 장치(100)는 학습용 데이터(x)를 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가지는 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)에 입력하여 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)으로 하여금 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn) 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터를 이용하여 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대응하는 제2_1 학습용 특징 정보(F1(x)) 내지 제2_n 학습용 특징 정보(Fn(x))를 생성하도록 할 수 있다.
다음으로, 학습 장치(100)는 제1_1 학습용 특징 정보(F1(x"))와 제2_1 학습용 특징 정보(F1(x))를 참조하거나, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제1_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))와 제2_n 학습용 특징 정보(Fn(x))를 참조거나, 제1_n 학습용 특징 정보(Fn(x"))를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제1_n 에러의 평균인 제1 에러를 최소화하며, 학습용 데이터를 보정한 학습용 보정된 데이터 또는 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 학습용 변조 데이터를 참조하여 생성하거나, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터와, 학습용 압축 인식 변조 데이터(x")를 참조하여 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킬 수 있다. 이때, 학습용 보정된 데이터 또는 학습용 보정된 변조 데이터를 이용하여 제2 에러를 생성하는 것과는 달리, 학습용 데이터와 학습용 변조 데이터를 참조하거나, 학습용 데이터와 학습용 압축 인식 변조 데이터를 참조하여 제2 에러를 생성할 수도 있다. 그리고, 제1 그라운드 트루스 내지 제n 그라운드 트루스는 학습용 데이터에 대응되는 것으로 동일한 그라운드 트루스일 수 있다.
즉, 학습 장치(100)는 제1_1 학습용 특징 정보(F1(x"))와 제2_1 학습용 특징 정보(F1(x))를 참조한 제(1_1)_1 에러를 획득하고, 제1_2 학습용 특징 정보(F2(x"))와 제2_2 학습용 특징 정보(F2(x))를 참조한 제(1_1)_2 에러를 획득하는 동작에 따라 제1_n 학습용 특징 정보(Fn(x"))와 제2_n 학습용 특징 정보(Fn(x))를 참조한 제(1_1)_n 에러를 산출하고, 산출된 제(1_1)_1 에러 내지 제(1_1)_n 에러의 평균인 제1_1 에러를 획득하며, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러를 산출하고, 산출된 제(1_2)_1 에러 내지 제(1_2)_n 에러의 평균인 제1_2 에러를 획득한다. 그리고, 학습 장치(100)는 제1_1 에러와 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킬 수 있다. 이때, 제1 에러는 제1_1 에러, 제1_2 에러, 및 제1_1 에러와 제1_2 에러의 합 중 어느 하나일 수 있으나, 본원발명이 이에 한정되지는 않는다.
또한, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x") 의 엔트로피, 노이즈 정도 중 적어도 일부를 참조로 하여 퀄리티를 측정하고, 측정된 퀄리티를 더 참조하여 제1 에러를 획득할 수 있다. 즉, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x") 의 퀄리티를 최소화, 일 예로, 학습용 압축 인식 변조 데이터(x") 의 엔트로피, 노이즈 등을 최대화하도록 변조 네트워크(O)를 학습시킬 수 있다.
그리고, 학습 장치(100)는 제1 에러를 최소화하도록 하며, 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킬 경우, 러닝 네트워크(F)의 학습된 파라미터는 고정하여 업데이트하지 않으며, 변조 네트워크(O)에 대해서만 학습을 진행할 수 있다.
한편, 상기에서는 제1_1 학습용 특징 정보(F1(x"))와 제2_1 학습용 특징 정보(F1(x))를 참조하여 획득한 제(1_1)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))와 제2_n 학습용 특징 정보를 참조하여 획득한 제(1_1)_n 에러의 평균인 제1_1 에러와, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러의 평균인 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시켰으나, 이와는 달리, 제(1_1)_1 에러와 제(1_2)_1 중 적어도 하나를 참조한 제1_1 에러 내지 제(1_1)_n 에러와 제(1_2)_n 중 적어도 하나를 참조한 제1_n 에러를 최소화하도록 변조 네트워크(O)를 순차적으로 학습시킬 수도 있다.
즉, 학습 장치(100)는 학습용 데이터(x)를 변조 네트워크(O)로 입력하여 변조 네트워크(O)로 하여금 학습용 데이터(x)를 변조하여 제1 학습용 변조 데이터(x1')를 생성하도록 하고, 제1 학습용 변조 데이터(x1')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 제1 학습용 변조 데이터(x1')를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하며, 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 제1 학습용 압축 인식 변조 데이터(x1")를 생성하도록 한다. 그리고, 학습 장치(100)는 제1 학습용 압축 인식 변조 데이터(x1")를 제1 러닝 네트워크(F1)에 입력하여 제1 러닝 네트워크(F1)로 하여금 제1 러닝 네트워크(F1)의 제1 학습된 파라미터에 의해 제1 학습용 압축 인식 변조 데이터(x1")를 러닝 연산하여 제1 학습용 압축 인식 변조 데이터(x1")에 대한 제1_1 학습용 특징 정보(F1(x1"))를 출력하도록 하며, 학습용 데이터(x)를 제1 러닝 네트워크(F1)에 입력하여 제1 러닝 네트워크(F1)로 하여금 제1 러닝 네트워크(F1)의 제1 학습된 파라미터에 의해 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대한 제2_1 학습용 특징 정보(F1(x))를 출력하도록 한다. 이후, 학습 장치(100)는 제1_1 학습용 특징 정보(F1(x1"))와 제2_1 학습용 특징 정보(F1(x))를 참조한 제(1_1)_1 에러와, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 중 적어도 하나를 참조하여 획득한 제1_1 에러를 최소화하며, 학습용 보정된 데이터 또는 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터와, 제1 학습용 변조 데이터를 참조하여 생성하거나, 학습용 보정된 데이터 또는 제1 학습용 보정된 변조 데이터와, 제1 학습용 압축 인식 변조 데이터(x1")를 참조하여 생성한 제2_1 에러를 최대화하도록 변조 네트워크(O)를 학습시켜 변조 네트워크(O)이 제1 학습된 변조 네트워크(O1)이 되도록 한다. 이때, 학습용 보정된 데이터 또는 제1 학습용 보정된 변조 데이터를 이용하여 제2_1 에러를 생성하는 것과는 달리, 학습용 데이터와 제1 학습용 변조 데이터를 참조하여 생성하거나, 학습용 데이터와 제1 학습용 압축 인식 변조 데이터를 참조하여 제2_1 에러를 생성할 수도 있다.
그리고, 학습 장치(100)는 상수인 k를 2부터 n까지 증가시켜가며 상기의 동작을 반복하여 제n 러닝 네트워크(Fn)까지 수행함으로써 제n 학습된 변조 네트워크(On)을 획득할 수 있게 된다.
즉, 학습 장치(100)는, 학습용 데이터(x)를 제(k-1) 학습된 변조 네트워크(O(k-1))로 입력하여 제(k-1) 학습된 변조 네트워크(O(k-1))로 하여금 학습용 데이터(x)를 변조하여 제k 학습용 변조 데이터(xk')를 생성하도록 하고, 제k 학습용 변조 데이터(xk')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 제k 학습용 변조 데이터(xk')를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하며, 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 제k 학습용 압축 인식 변조 데이터(xk")를 생성하도록 한다. 그리고, 학습 장치(100)는 제k 학습용 압축 인식 변조 데이터(xk")를 제k 러닝 네트워크(Fk)에 입력하여 제k 러닝 네트워크(Fk)로 하여금 제k 러닝 네트워크(Fk)의 제k 학습된 파라미터에 의해 제k 학습용 압축 인식 변조 데이터(xk")를 러닝 연산하여 제k 학습용 압축 인식 변조 데이터(xk")에 대한 제1_k 학습용 특징 정보(Fk(xk"))를 출력하도록 하며, 학습용 데이터(x)를 제k 러닝 네트워크(Fk)에 입력하여 제k 러닝 네트워크(Fk))로 하여금 제k 러닝 네트워크(Fk)의 제k 학습된 파라미터에 의해 학습용 데이터(x)를 네트워크 연산하여 학습용 데이터(x)에 대한 제2_k 학습용 특징 정보(Fk(xk))를 출력하도록 한다, 이후, 학습 장치(100)는 제1_k 학습용 특징 정보(Fk(xk"))와 제2_k 학습용 특징 정보(Fk(x))를 참조하여 획득한 제(1_1)_k 에러와, 제1_k 학습용 특징 정보를 이용하여 생성한 제k 태스크 특정 출력과 이에 대응되는 제k 그라운드 트루스를 참조하여 획득한 제(1_2)_k 에러 중 적어도 하나를 참조하여 획득한 제1_k 에러를 최소화하며, 학습용 보정된 데이터 또는 제k 학습용 보정된 변조 데이터와, 제k 학습용 변조 데이터를 참조하거나, 학습용 보정된 데이터 또는 제k 학습용 보정된 변조 데이터와, 제k 학습용 압축 인식 변조 데이터(xk")를 참조한 제2_k 에러를 최대화하도록 제(k-1) 학습된 변조 네트워크(O(k-1))를 학습시켜 제(k-1) 학습된 변조 네트워크(O(k-1))이 제k 학습된 변조 네트워크(Ok)이 되도록 할 수 있다. 이때, 학습용 보정된 데이터 또는 제k 학습용 보정된 변조 데이터를 이용하여 제2_k 에러를 생성하는 것과는 달리, 학습용 데이터와 제k 학습용 변조 데이터를 참조하여 생성하거나, 학습용 데이터와 제k 학습용 압축 인식 변조 데이터를 참조하여 제2_k 에러를 생성할 수도 있다.
도 4는 본 발명의 다른 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 방법을 개략적으로 도시한 것이다. 이하의 설명에서는 상기 도 2와 도 3의 설명으로부터 용이하게 이해 가능한 부분에 대해서는 상세한 설명을 생략하기로 한다.
먼저, 학습용 데이터(x)가 획득되면, 학습 장치(100)는, 학습용 데이터(x)를 변조 네트워크(O)에 입력하여 변조 네트워크(O)로 하여금 학습용 데이터(x)를 변조(obfuscation)하여 학습용 변조 데이터(x', O(x))를 생성하도록 한다.
다음으로, 학습 장치(100)는 학습용 변조 데이터(x')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 학습용 변조 데이터(x')를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 학습용 압축 인식 변조 데이터(x")를 생성하도록 한다.
다음으로, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x")를 학습된 파라미터를 가지는 러닝 네트워크(F)에 입력하여 러닝 네트워크(F)로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터(x")를 러닝 연산하여 학습용 압축 인식 변조 데이터(x")에 대응하는 제1 학습용 특징(characteristic) 정보(F(x"))를 생성하도록 하며, 학습용 데이터(x)를 러닝 네트워크(F)에 입력하여 러닝 네트워크(F)로 하여금 학습된 파라미터를 이용하여 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대응하는 제2 학습용 특징 정보(F(x))를 생성하도록 할 수 있다.
다음으로, 학습 장치(100)는 입력되는 데이터가 리얼(real)인지 페이크(fake)인지를 판별하는 디스크리미네터(discriminator)(D)에 입력된 학습용 압축 인식 변조 데이터(x") 룰 판별한 학습용 변조 데이터 스코어를 제2 에러로 획득한 상태에서, 제1 에러를 최소화하며, 학습용 변조 데이터 스코어인 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킴과 더불어, 디스크리미네터(D)에 입력된 학습용 데이터, 학습용 보정된 데이터 및 학습용 보정된 변조 데이터 중 어느 하나를 판별한 학습용 데이터 스코어를 최대화하며, 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터(D)를 학습시킬 수 있다.
즉, 학습 장치(100)는 변조 네트워크(O)를 학습시킴에 있어서, 제1 에러를 이용하여 러닝 네트워크(F)에서는 학습용 데이터(x)와 동일하거나 유사하게 인식되도록 학습용 데이터(x)를 변조하여 학습용 변조 데이터(x')를 출력하도록 학습시키며, 제2 에러를 이용하여 원본 데이터(x)와는 다르지만 원본 데이터(x)와의 구별이 어렵도록 하며, 데이터 압축 정보를 가지는 학습용 변조 데이터(x')를 출력하도록 학습시킬 수 있다.
이때, 디스크리미네터(D)에 입력된 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나를 판별한 학습용 데이터 스코어의 최대값은 학습용 데이터, 학습용 보정된 데이터, 또는 학습용 보정된 변조 데이터를 리얼로 판별하는 1이며, 디스크리미네터(D)에 입력된 학습용 압축 인식 변조 데이터(x")를 판별한 학습용 변조 데이터 스코어의 최소값은 학습용 압축 인식 변조 데이터(x")를 페이크로 판별하는 0일 수 있다. 즉, 디스크리미네터(D)는 학습용 압축 인식 변조 데이터(x")를 학습용 데이터, 학습용 보정된 데이터, 또는 학습용 보정된 변조 데이터로 인식하도록 학습될 수 있다.
도 5는 본 발명의 다른 실시예에 따라 원본 데이터를 변조 처리하는 변조 네트워크를 학습하는 다른 방법을 개략적으로 도시한 것으로, 도 4에서의 러닝 네트워크(F)를 학습된 파라미터를 가지는 다수의 러닝 네트워크(F1, F2, ??, Fn)으로 구성한 것이다. 하기의 설명에서는 상기 도 2 내지 도 4의 설명에서 용이하게 이해 가능한 부분에 대해서는 상세한 설명을 생략하기로 한다.
먼저, 학습용 데이터(x)가 획득되면, 학습 장치(100)는, 학습용 데이터(x)를 변조 네트워크(O)에 입력하여 변조 네트워크(O)로 하여금 학습용 데이터(x)를 변조(obfuscation)하여 학습용 변조 데이터(x', O(x))를 생성하도록 한다.
다음으로, 학습 장치(100)는 학습용 변조 데이터(x')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 학습용 변조 데이터(x')를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 학습용 압축 인식 변조 데이터(x")를 생성하도록 한다.
다음으로, 학습 장치(100)는 학습용 압축 인식 변조 데이터(x")를 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가지는 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)에 입력하여 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)로 하여금 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn) 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터(x")를 러닝 연산하여 학습용 압축 인식 변조 데이터(x")에 대응하는 제1_1 학습용 특징(characteristic) 정보(F1(x")) 내지 제1_n 학습용 특징 정보(Fn(x"))를 생성하도록 한다. 또한, 학습 장치(100)는 학습용 데이터(x)를 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가지는 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)에 입력하여 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn)으로 하여금 제1 러닝 네트워크(F1) 내지 제n 러닝 네트워크(Fn) 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터를 이용하여 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대응하는 제2_1 학습용 특징 정보(F1(x)) 내지 제2_n 학습용 특징 정보(Fn(x))를 생성하도록 할 수 있다.
다음으로, 학습 장치(100)는 제1_1 학습용 특징 정보(F1(x"))와 제2_1 학습용 특징 정보(F1(x))를 참조하여 획득한 제(1_1)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))와 제2_n 학습용 특징 정보(Fn(x))를 참조하여 획득한 제(1_1)_n 에러의 평균인 제1_1 에러와, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러의 평균인 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 디스크리미네터(D)에 입력된 학습용 압축 인식 변조 데이터(x") 에 대응되는 학습용 변조 데이터 스코어인 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시키고, 디스크리미네터(D)에 입력된 학습용 데이터, 학습용 보정된 데이터, 또는 학습용 보정된 변조 데이터 중 어느 하나에 대응되는 학습용 데이터 스코어를 최대화하며, 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터(D)를 학습시킬 수 있다.
즉, 학습 장치(100)는 제1_1 학습용 특징 정보(F1(x"))와 제2_1 학습용 특징 정보(F1(x))를 참조하여 제(1_1)_1 에러를 획득하고, 제1_2 학습용 특징 정보(F2(x"))와 제2_2 학습용 특징 정보(F2(x))를 참조하여 제(1_1)_2 에러를 획득하는 동작에 따라 제1_n 학습용 특징 정보(Fn(x"))와 제2_n 학습용 특징 정보(Fn(x))를 참조한 제(1_1)_n 에러를 산출하고, 산출된 제(1_1)_1 에러 내지 제(1_1)_n 에러의 평균인 제1_1 에러를 획득하며, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 상기 제1_n 학습용 특징 정보(Fn(x"))를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러를 산출하고, 산출된 제(1_2)_1 에러 내지 제(1_2)_n 에러의 평균인 제1_2 에러를 획득한다. 그리고, 학습 장치(100)는 제1_1 에러와 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시킬 수 있다.
한편, 상기에서는 제1_1 학습용 특징 정보(F1(x"))와 제2_1 학습용 특징 정보(F1(x))를 참조하여 획득한 제(1_1)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))와 제2_n 학습용 특징 정보를 참조하여 획득한 제(1_1)_n 에러의 평균인 제1_1 에러와, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보(Fn(x"))를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러의 평균인 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 디스크리미네터에 입력된 학습용 압축 인식 변조 데이터에 대응되는 학습용 변조 데이터 스코어인 제2 에러를 최대화하도록 변조 네트워크(O)를 학습시켰으나, 이와는 달리, 제(1_1)_1 에러와 제(1_2)_1 중 적어도 하나를 참조한 제1_1 에러 내지 제(1_1)_n 에러와 제(1_2)_n 중 적어도 하나를 참조한 제1_n 에러를 최소화하도록 변조 네트워크(O)를 순차적으로 학습시킬 수도 있다.
즉, 학습 장치(100)는 학습용 데이터(x)를 변조 네트워크(O)로 입력하여 변조 네트워크(O)로 하여금 학습용 데이터(x)를 변조하여 제1 학습용 변조 데이터(x1')를 생성하도록 하며, 제1 학습용 변조 데이터(x1')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 제1 학습용 변조 데이터(x1')를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하고, 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 제1 학습용 압축 인식 변조 데이터(x1")를 생성하도록 할 수 있다. 그리고, 학습 장치(100)는 제1 학습용 압축 인식 변조 데이터(x1")를 제1 러닝 네트워크(F1)에 입력하여 제1 러닝 네트워크(F1)로 하여금 제1 러닝 네트워크(F1)의 제1 학습된 파라미터에 의해 제1 학습용 압축 인식 변조 데이터(x1")를 러닝 연산하여 제1 학습용 압축 인식 변조 데이터(x1")에 대한 제1_1 학습용 특징 정보(F1(x1"))를 출력하도록 하며, 학습용 데이터(x)를 제1 러닝 네트워크(F1)에 입력하여 제1 러닝 네트워크(F1)로 하여금 제1 러닝 네트워크(F1)의 제1 학습된 파라미터에 의해 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대한 제2_1 학습용 특징 정보(F1(x))를 출력하도록 한다. 이후, 학습 장치(100)는 제1_1 학습용 특징 정보(F1(x1"))와 제2_1 학습용 특징 정보(F1(x)를 참조하여 획득한 제(1_1)_1 에러와, 제1_1 학습용 특징 정보(F1(x"))를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 중 적어도 하나를 참조하여 획득한 제1_1 에러를 최소화하며, 디스크리미네터(D)에 입력된 제1 학습용 압축 인식 변조 데이터(x1")를 판별한 제1 학습용 변조 데이터 스코어인 제2_1 에러를 최대화하도록 변조 네트워크(O)를 학습시켜 변조 네트워크(O)이 제1 학습된 변조 네트워크(O1)이 되도록 하고, 디스크리미네터(D)에 입력된 학습용 데이터, 학습용 보정된 데이터, 및 제1 학습용 보정된 변조 데이터 중 어느 하나에 대응되는 제1 학습용 데이터 스코어를 최대화하며, 제1 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터(D)를 학습시켜 디스크리미네터(D)가 제1 학습된 디스크리미네터(D1)가 되도록 한다.
그리고, 학습 장치(100)는 상수인 k를 2부터 n까지 증가시켜가며 상기의 동작을 반복하여 제n 러닝 네트워크(Fn)까지 수행함으로써 제n 학습된 변조 네트워크(On)을 획득할 수 있게 된다.
즉, 학습 장치(100)는, 학습용 데이터(x)를 제(k-1) 학습된 변조 네트워크(O(k-1))로 입력하여 제(k-1) 학습된 변조 네트워크(O(k-1))로 하여금 학습용 데이터(x)를 변조하여 제k 학습용 변조 데이터(xk')를 생성하도록 하며, 제k 학습용 변조 데이터(xk')를 컴프레션 네트워크(C)에 입력하여 컴프레션 네트워크(C)로 하여금 제k 학습용 변조 데이터(xk')를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하며, 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 제k 학습용 압축 인식 변조 데이터(xk")를 생성하도록 한다. 그리고, 학습 장치(100)는 제k 학습용 압축 인식 변조 데이터(xk")를 제k 러닝 네트워크(Fk)에 입력하여 제k 러닝 네트워크(Fk)로 하여금 제k 러닝 네트워크(Fk)의 제k 학습된 파라미터에 의해 제k 학습용 압축 인식 변조 데이터(xk")를 러닝 연산하여 제k 학습용 압축 인식 변조 데이터(xk")에 대한 제1_k 학습용 특징 정보(Fk(xk"))를 출력하도록 하며, 학습용 데이터(x)를 제k 러닝 네트워크(Fk)에 입력하여 제k 러닝 네트워크(Fk))로 하여금 제k 러닝 네트워크(Fk)의 제k 학습된 파라미터에 의해 학습용 데이터(x)를 러닝 연산하여 학습용 데이터(x)에 대한 제2_k 학습용 특징 정보(Fk(xk))를 출력하도록 한다, 이후, 학습 장치(100)는 제1_k 학습용 특징 정보(Fk(xk"))와 제2_k 학습용 특징 정보(Fk(x)를 참조하여 획득한 제(1_1)_k 에러와, 제1_k 학습용 특징 정보(Fk(x"))를 이용하여 생성한 제k 태스크 특정 출력과 이에 대응되는 제k 그라운드 트루스를 참조하여 획득한 제(1_2)_k 에러 중 적어도 하나를 참조하여 획득한 제1_k 에러를 최소화하며, 제(k-1) 학습된 디스크리미네터(D(k-1))에 입력된 제k 학습용 압축 인식 변조 데이터(xk") 를 판별한 제k 학습용 변조 데이터 스코어인 제2_k 에러를 최대화하도록 제(k-1) 학습된 변조 네트워크(O(k-1))를 학습시켜 제(k-1) 학습된 변조 네트워크(O(k-1))이 제k 학습된 변조 네트워크(Ok)이 되도록 하고, 제(k-1) 학습된 디스크리미네터(D(k-1))에 입력된 학습용 데이터, 학습용 보정된 데이터, 및 제k 학습용 보정된 변조 데이터 중 어느 하나를 판별한 제k 학습용 데이터 스코어를 최대화하며, 제k 학습용 변조 데이터 스코어를 최소화하도록 제(k-1) 학습된 디스크리미네터(D(k-1))를 학습시켜 제(k-1) 학습된 디스크리미네터(D(k-1))가 제k 학습된 디스크리미네터(Dk)가 되도록 할 수 있다.
도 6은 본 발명의 일 실시예에 따라 학습된 변조 네트워크(O)를 테스팅하는 테스팅 장치를 개략적으로 도시한 것이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 테스팅 장치(200)는 데이터 압축 정보를 가지며, 러닝 네트워크에서 테스팅 데이터의 결과와 동일하거나 유사한 결과가 출력되도록 테스팅 데이터를 테스팅용 변조 데이터로 변조하도록 학습된 변조 네트워크를 테스팅하기 위한 인스트럭션들이 저장된 메모리(210)와 메모리(210)에 저장된 인스트럭션들에 따라 학습된 변조 네트워크를 테스팅하는 동작을 수행하는 프로세서(220)를 포함할 수 있다.
구체적으로, 테스팅 장치(200)는 전형적으로 컴퓨팅 장치(예컨대, 컴퓨터 프로세서, 메모리, 스토리지, 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS) 및 스토리지 영역 네트워크(SAN)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다.
또한, 컴퓨팅 장치의 프로세서는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 컴퓨팅 장치는 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.
그러나, 컴퓨팅 장치가 본 발명을 실시하기 위한 미디엄, 프로세서 및 메모리가 통합된 형태인 integrated 프로세서를 포함하는 경우를 배제하는 것은 아니다.
한편, 테스팅 장치(200)는, 학습 장치에 의해, 학습용 데이터를 변조 네트워크에 입력하여 변조 네트워크로 하여금 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 학습용 변조 데이터를 컴프레션 네트워크에 입력하여 컴프레션 네트워크로 하여금 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 학습용 데이터를 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 데이터를 러닝 연산하여 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, 제1 학습용 특징 정보와 제2 학습용 특징 정보를 참조하여 획득한 제1_1 에러와, 제1 학습용 특징 정보를 이용하여 생성한 태스크 특정 출력과 이에 대응되는 그라운드 트루스를 참조하여 획득한 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 학습용 데이터, 학습용 보정된 데이터, 또는 학습용 보정된 변조 데이터와, 학습용 변조 데이터를 참조하여 획득하거나, 학습용 데이터, 학습용 보정된 데이터, 또는 학습용 보정된 변조 데이터와, 학습용 압축 인식 변조 데이터를 참조하여 획득한 제2 에러를 최대화하도록 변조 네트워크를 학습시킨 상태에서, 테스트용 데이터가 획득되면, 메모리(210)에 저장된 인스트럭션들에 따라 프로세서가(220)가, 테스트용 데이터를 변조 네트워크로 입력하여 변조 네트워크로 하여금 변조 네트워크의 학습된 파라미터에 의해 테스트용 데이터를 변조하여 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 테스트용 변조 데이터를 테스트용 데이터의 변조 처리된 데이터로 획득할 수 있다.
또한, 테스팅 장치(200)는, 학습 장치에 의해 학습용 데이터를 변조 네트워크에 입력하여 변조 네트워크로 하여금 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 학습용 변조 데이터를 컴프레션 네트워크에 입력하여 컴프레션 네트워크로 하여금 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 학습용 데이터를 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 데이터를 러닝 연산하여 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, 제1 학습용 특징 정보와 제2 학습용 특징 정보를 참조하여 획득한 제1_1 에러와, 제1 학습용 특징 정보를 이용하여 생성한 태스크 특정 출력과 이에 대응되는 그라운드 트루스를 참조하여 획득한 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 입력되는 데이터가 리얼인지 페이크인지를 판별하는 디스크리미네터에 입력된 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어인 제2 에러를 최대화하도록 변조 네트워크를 학습시킴과 더불어, 디스크리미네터에 입력된 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나에 대응되는 학습용 데이터 스코어를 최대화하며 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터를 학습시킨 상태에서, 테스트용 데이터가 획득되면, 메모리(210)에 저장된 인스트럭션들에 따라 프로세서가(220)가, 테스트용 데이터를 변조 네트워크로 입력하여 변조 네트워크로 하여금 변조 네트워크의 학습된 파라미터에 의해 테스트용 데이터를 컨실링하여 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 테스트용 변조 데이터를 테스트용 데이터의 변조 처리된 데이터로 획득할 수 있다.
도 7은 본 발명의 일 실시예에 따라 학습된 변조 네트워크를 테스팅하는 방법을 개략적으로 도시한 것이다.
도 7을 참조하면, 테스팅 장치(200)가, 데이터 압축 정보를 가지며, 러닝 네트워크에서 원본 데이터의 결과와 동일하거나 유사한 결과가 출력되도록 원본 데이터를 변조 데이터로 변조하도록 학습된 변조 네트워크(O)에 테스트용 데이터, 일 예로, 도 7의 (a)의 원본 이미지들을 입력하여 변조 네트워크(O)로 하여금 학습된 결과에 따라 테스트용 데이터를 변조하여 데이터 압축 정보를 가지는 테스트용 변조 데이터, 일 예로, 도 7의 (b)의 변조 이미지들을 출력하도록 한다.
참고로, 도 7의 (a)는 캐나다 고등 연구소(CIFAR: Canadian Institute for Advanced Research)에서 이미지 분류 문제 해결을 위해 수집해 정리한 데이터인 CIFAR-10 분류 데이터 세트로부터 선정된 64개의 이미지 샘플을 예시적으로 나타내는 도면이다.
도 7의 (a)의 이미지 샘플을 원본 데이터로 하여 본 발명의 실시예에 따라 변조 처리한 변조 데이터는 도 7의 (b)에서와 같이 나타내어진다.
도 7의 (a) 및 도 7의 (b)를 참조하면, 본 발명의 실시예에 따라 변조 처리된 도 7의 (b)의 64개의 변조 데이터는, 도 7의 (a)의 64개의 원본 데이터와는 시각적으로 상이하나, 러닝 네트워크에 입력할 경우, 러닝 네트워크는 원본 데이터와 동일하거나 유사한 결과를 출력한다.
한편, 학습된 변조 네트워크(O)는 도 2 내지 도 5의 설명에서와 같은 방법에 의해 학습된 상태일 수 있다.
즉, 학습된 변조 네트워크(O)는, 학습 장치에 의해, 학습용 데이터를 변조 네트워크에 입력하여 변조 네트워크로 하여금 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 컴프레션 네트워크로 하여금 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 학습용 데이터를 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 데이터를 러닝 연산하여 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, 제1 학습용 특징 정보와 제2 학습용 특징 정보를 참조하여 획득한 제1_1 에러와, 제1 학습용 특징 정보를 이용하여 생성한 태스크 특정 출력과 이에 대응되는 그라운드 트루스를 참조하여 획득한 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나와 학습용 변조 데이터를 참조하거나, 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나와 학습용 압축 인식 변조 데이터를 참조하여 획득한 제2 에러를 최대화하도록 변조 네트워크를 학습시킨 상태일 수 있다.
또한, 상기에서, 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n 러닝 네트워크를 포함하며, 학습 장치에 의해, 학습용 압축 인식 변조 데이터를 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각에 입력하여 각각의 제1 러닝 네트워크 내지 제n 러닝 네트워크로 하여금 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터에 의해 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 학습용 데이터를 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각에 입력하여 각각의 제1 러닝 네트워크 내지 제n 러닝 네트워크로 하여금 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터에 의해 학습용 데이터를 러닝 연산하여 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며, 제1_1 학습용 특징 정보와 제2_1 학습용 특징 정보를 참조하여 획득한 제(1_1)_1 에러 내지 제1_n 학습용 특징 정보와 제2_n 학습용 특징 정보를 참조하여 획득한 제(1_1)_n 에러의 평균인 제1_1 에러와, 제1_1 학습용 특징 정보를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러의 평균인 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나와 학습용 변조 데이터를 참조하거나, 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나와 학습용 압축 인식 변조 데이터를 참조한 제2 에러를 최대화하도록 변조 네트워크를 학습시킨 상태일 수 있다.
그리고, 학습된 변조 네트워크(O)는, 학습 장치에 의해, 학습용 데이터를 변조 네트워크에 입력하여 변조 네트워크로 하여금 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 컴프레션 네트워크로 하여금 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하고, 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 학습용 데이터를 러닝 네트워크에 입력하여 러닝 네트워크로 하여금 학습된 파라미터를 이용하여 학습용 데이터를 러닝 연산하여 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, 제1_1 학습용 특징 정보와 제2_1 학습용 특징 정보를 참조하여 획득한 제(1_1)_1 에러 내지 제1_n 학습용 특징 정보와 제2_n 학습용 특징 정보를 참조하여 획득한 제(1_1)_n 에러의 평균인 제1_1 에러와, 제1_1 학습용 특징 정보를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러의 평균인 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 입력되는 데이터가 리얼인지 페이크인지를 판별하는 디스크리미네터에 입력된 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어인 제2 에러를 최대화하도록 변조 네트워크를 학습시킴과 더불어, 디스크리미네터에 입력된 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나를 판별한 학습용 데이터 스코어를 최대화하며 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터를 학습시킨 상태일 수 있다.
또한, 상기에서, 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n 러닝 네트워크를 포함하며, 학습 장치에 의해, 학습용 압축 인식 변조 데이터를 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각에 입력하여 각각의 제1 러닝 네트워크 내지 제n 러닝 네트워크로 하여금 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터에 의해 학습용 압축 인식 변조 데이터를 러닝 연산하여 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 학습용 데이터를 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각에 입력하여 각각의 제1 러닝 네트워크 내지 제n 러닝 네트워크로 하여금 제1 러닝 네트워크 내지 제n 러닝 네트워크 각각의 제1 학습된 파라미터 내지 제n 학습된 파라미터에 의해 학습용 데이터를 러닝 연산하여 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며, 제1_1 학습용 특징 정보와 제2_1 학습용 특징 정보를 참조하여 획득한 제(1_1)_1 에러 내지 제1_n 학습용 특징 정보와 제2_n 학습용 특징 정보를 참조하여 획득한 제(1_1)_n 에러의 평균인 제1_1 에러와, 제1_1 학습용 특징 정보를 이용하여 생성한 제1 태스크 특정 출력과 이에 대응되는 제1 그라운드 트루스를 참조하여 획득한 제(1_2)_1 에러 내지 제1_n 학습용 특징 정보를 이용하여 생성한 제n 태스크 특정 출력과 이에 대응되는 제n 그라운드 트루스를 참조하여 획득한 제(1_2)_n 에러의 평균인 제1_2 에러 중 적어도 하나를 참조한 제1 에러를 최소화하며, 디스크리미네터에 입력된 학습용 압축 인식 변조 데이터에 대응되는 학습용 변조 데이터 스코어인 제2 에러를 최대화하도록 변조 네트워크를 학습시키고, 디스크리미네터에 입력된 학습용 데이터, 학습용 보정된 데이터, 및 학습용 보정된 변조 데이터 중 어느 하나에 대응되는 학습용 데이터 스코어를 최대화하며, 학습용 변조 데이터 스코어를 최소화하도록 디스크리미네터를 학습시킨 상태일 수 있다.
한편, 본 발명의 실시예에 따라 학습된 변조 네트워크에서 변조 처리된 데이터 압축 정보를 가지는 변조 데이터는 이미지 빅데이터 구매를 원하는 구매자에게 제공(또는 판매)될 수 있다.
또한, 본 발명의 일 실시예에 따르면, 위의 구매자에게 변조 처리된 이미지 데이터가 제공(또는 판매)되면서, 학습된 변조 네트워크를 테스팅하는 방법을 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록되어 제공될 수 있다. 본 발명의 일 실시예에 따르면, 구매자는 기록 매체에 기록된 프로그램 명령어를 컴퓨팅 장치를 이용하여 실행함으로써, 자신이 별도로 보유하거나 다른 출처 또는 경로로부터 획득된 원본 데이터로부터 변조 처리된 데이터를 생성할 수 있으며, 변조 처리된 데이터를 자신의 러닝 네트워크에서 이용할 수 있게 된다. 또한, 구매자는 그 변조 처리된 데이터, 자신이 보유하거나 다른 출처 또는 경로로부터 획득된 원본 이미지 데이터, 및 위의 제공(또는 판매)받은 변조 처리된 이미지 데이터 중 적어도 둘 이상을 자신의 러닝 네트워크에서 함께 사용할 수도 있게 된다.
한편, 본 발명의 일 실시예에 따르면, 학습된 변조 네트워크를 테스팅하는 방법을 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현한 경우, 정확도가 높게 설정되어 구매자의 컴퓨팅 장치에서는 컴퓨팅 오버 헤드(computational overhead)를 발생시킬 수 있으므로, 구매자가 설정을 통해 정확도를 감소시킬 수 있도록 하여 컴퓨팅 오버 헤드를 방지할 수 있도록 할 수 있다.
이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
100: 학습 장치,
110: 메모리,
120: 프로세서,
200: 테스팅 장치,
210: 메모리,
220: 프로세서

Claims (30)

  1. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서,
    (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계;
    (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및
    (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계;
    를 포함하되,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 (b) 단계에서, 상기 학습 장치는, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며,
    상기 (c) 단계에서, 상기 학습 장치는, 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 방법.
  2. 삭제
  3. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서,
    (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계;
    (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및
    (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계;
    를 포함하되,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 (a) 단계에서, 상기 학습 장치는, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며,
    상기 (b) 단계에서, 상기 학습 장치는, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 학습용 특징 정보를 출력하도록 하며,
    상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, (ii) 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_1 에러를 최대화하도록, 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하며,
    상기 학습 장치는, 상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하고, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 학습용 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, (iii-2) 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_k 에러를 최대화하도록, 상기 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 (k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 하는 방법.
  4. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서,
    (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계;
    (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및
    (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계;
    를 포함하되,
    상기 (c) 단계에서,
    상기 학습 장치는,
    입력되는 데이터가 리얼(real)인지 페이크(fake)인지를 판별하는 디스크리미네터(discriminator)에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시키는 방법.
  5. 제4항에 있어서,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 (b) 단계에서, 상기 학습 장치는, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며,
    상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시키는 방법.
  6. 제4항에 있어서,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 (a) 단계에서, 상기 학습 장치는, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며,
    상기 (b) 단계에서, 상기 학습 장치는, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 특징 정보를 출력하도록 하며,
    상기 (c) 단계에서, 상기 학습 장치는, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 제1 학습용 압축 인식 변조 데이터를 판별한 제1 학습용 변조 데이터 스코어인 제2_1 에러를 최대화하도록 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터를 판별한 제1 학습용 데이터 스코어를 최대화하며, 상기 제1 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시켜 상기 디스크리미네터가 제1 학습된 디스크리미네터가 되도록 하고,
    상기 학습 장치는, 상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하도록 하며, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, 제(k-1) 학습된 디스크리미네터에 입력되는 상기 제k 학습용 압축 인식 변조 데이터를 판별한 제k 학습용 변조 데이터 스코어인 제2_k 에러를 최대화 하도록 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 제(k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 하고, (iii-2) 상기 제(k-1) 학습된 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터를 판별한 제k 학습용 데이터 스코어를 최대화하며, 상기 제k 학습용 변조 데이터 스코어를 최소화하도록 상기 제(k-1) 학습된 디스크리미네터를 학습시켜 상기 제(k-1) 학습된 디스크리미네터가 제k 학습된 디스크리미네터가 되도록 하는 방법.
  7. 제4항에 있어서,
    상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어의 최대값은 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 리얼로 판별하는 1이며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어의 최소값은 상기 학습용 압축 인식 변조 데이터를 페이크로 판별하는 0인 방법.
  8. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서,
    (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계;
    (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및
    (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계;
    를 포함하되,
    상기 (c) 단계에서,
    상기 학습 장치는, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 차이에 의해 상기 제1 에러를 획득하고, (ii) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터의 차이에 의해 상기 제2 에러를 획득하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터의 차이에 의해 상기 제2 에러를 획득하는 방법.
  9. 제8항에 있어서,
    상기 학습 장치는, 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 노름 또는 코사인 유사도(cosine similarity)에 의해 상기 제1 에러를 획득하는 방법.
  10. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서,
    (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계;
    (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및
    (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계;
    를 포함하되,
    상기 (c) 단계에서,
    상기 학습 장치는, 상기 제1 학습용 특징 정보를 클래스별로 맵핑한 상기 학습용 압축 인식 변조 데이터에 대한 프로바빌리티(probability)와 상기 학습용 데이터에 대응되는 그라운드 트루스를 참조하여 획득한 클래스 로스를 더 참조하여 상기 제1 에러를 획득하는 방법.
  11. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법에 있어서,
    (a) 학습용 데이터가 획득되면, 학습 장치가, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 단계;
    (b) 상기 학습 장치가, 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 단계; 및
    (c) 상기 학습 장치가, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 단계;
    를 포함하되,
    상기 (c) 단계에서,
    상기 학습 장치는, 상기 학습용 압축 인식 변조 데이터의 엔트로피, 노이즈 정도 중 적어도 일부를 참조로 하여 퀄리티를 측정하고, 측정된 상기 퀄리티를 더 참조하여 상기 제1 에러를 획득하는 방법.
  12. 개인 정보 보호를 위하여 원본 데이터를 비식별 처리하는 변조 네트워크를 테스팅하는 방법에 있어서,
    (a) 학습 장치에 의해, (i) 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, (iii) (iii-1) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조한 제1 에러를 최소화하며, (iii-2) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태에서, 테스트 장치가, 테스트용 데이터를 획득하는 단계; 및
    (b) 상기 테스트 장치가, 상기 테스트용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 변조 네트워크의 학습된 파라미터에 의해 상기 테스트용 데이터를 변조하여 상기 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 상기 테스트용 변조 데이터를 상기 테스트용 데이터의 변조 처리된 데이터로 획득하는 단계를 포함하되,
    상기 (a) 단계에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 학습 장치에 의해, (i) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (ii) (ii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, (ii-2) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태인 방법.
  13. 삭제
  14. 개인 정보 보호를 위하여 원본 데이터를 비식별 처리하는 변조 네트워크를 테스팅하는 방법에 있어서,
    (a) 학습 장치에 의해, (i) 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, (iii) (iii-1) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조한 제1 에러를 최소화하며, (iii-2) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태에서, 테스트 장치가, 테스트용 데이터를 획득하는 단계; 및
    (b) 상기 테스트 장치가, 상기 테스트용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 변조 네트워크의 학습된 파라미터에 의해 상기 테스트용 데이터를 변조하여 상기 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 상기 테스트용 변조 데이터를 상기 테스트용 데이터의 변조 처리된 데이터로 획득하는 단계를 포함하되,
    상기 (a) 단계에서,
    상기 학습 장치에 의해, 입력되는 데이터가 리얼인지 페이크를 판별하는 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태인 방법.
  15. 제14항에 있어서,
    상기 (a) 단계에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 학습 장치에 의해, (ii) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (iii-2) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태인 방법.
  16. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하되,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 프로세서는, 상기 (II) 프로세스에서, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며,
    상기 (III) 프로세스에서, 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 학습 장치.
  17. 삭제
  18. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하되,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 프로세서는, 상기 (I) 프로세스에서, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며,
    상기 (II) 프로세스에서, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 학습용 특징 정보를 출력하도록 하며,
    상기 (III) 프로세스에서, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, (ii) 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제1 학습용 보정된 변조 데이터와, 상기 제1 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_1 에러를 최대화하도록, 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하며,
    상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하고, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 학습용 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, (iii-2) 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 제k 학습용 보정된 변조 데이터와, 상기 제k 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2_k 에러를 최대화하도록, 상기 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 (k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 하는 학습 장치.
  19. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하되,
    상기 프로세서는, 상기 (III) 프로세스에서, 입력되는 데이터가 리얼(real)인지 페이크(fake)인지를 판별하는 디스크리미네터(discriminator)에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시키는 학습 장치.
  20. 제19항에 있어서,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 프로세서는, 상기 (II) 프로세스에서, 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 학습용 특징 정보 내지 제1_n 학습용 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 학습용 특징 정보 내지 제2_n 학습용 특징 정보를 출력하도록 하며,
    상기 (III) 프로세스에서, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시키는 학습 장치.
  21. 제19항에 있어서,
    상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 프로세서는, 상기 (I) 프로세스에서, 상기 학습용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제1 학습용 변조 데이터를 생성하도록 하고, 상기 제1 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제1 학습용 변조 데이터를 데이터 압축하여 제1 학습용 바이너리 데이터를 생성하도록 하고, 상기 제1 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제1 학습용 압축 인식 변조 데이터를 생성하도록 하며,
    상기 (II) 프로세스에서, 상기 제1 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 제1 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제1 학습용 압축 인식 변조 데이터에 대한 제1_1 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크에 입력하여 상기 제1 러닝 네트워크로 하여금 상기 제1 러닝 네트워크의 상기 제1 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_1 특징 정보를 출력하도록 하며,
    상기 (III) 프로세스에서, (i) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 제1 학습용 압축 인식 변조 데이터를 판별한 제1 학습용 변조 데이터 스코어인 제2_1 에러를 최대화하도록 상기 변조 네트워크를 학습시켜 상기 변조 네트워크가 제1 학습된 변조 네트워크가 되도록 하고, (ii) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제1 학습용 변조 데이터를 보정한 제1 학습용 보정된 변조 데이터를 판별한 제1 학습용 데이터 스코어를 최대화하며, 상기 제1 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시켜 상기 디스크리미네터가 제1 학습된 디스크리미네터가 되도록 하고,
    상수인 k를 2부터 n까지 증가시켜가며, (i) 상기 학습용 데이터를 상기 제(k-1) 학습된 변조 네트워크로 입력하여 상기 제(k-1) 학습된 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 제k 학습용 변조 데이터를 생성하도록 하며, 상기 제k 학습용 변조 데이터를 상기 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 제k 학습용 변조 데이터를 데이터 압축하여 제k 학습용 바이너리 데이터를 생성하도록 하고, 상기 제k 학습용 바이너리 데이터를 데이터 압축 해제하여 상기 데이터 압축 정보를 가지는 제k 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 제k 학습용 압축 인식 변조 데이터를 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 제k 학습된 파라미터에 의해 상기 제k 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 제k 학습용 압축 인식 변조 데이터에 대한 제1_k 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제k 러닝 네트워크에 입력하여 상기 제k 러닝 네트워크로 하여금 상기 제k 러닝 네트워크의 상기 제k 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 제2_k 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_k 학습용 특징 정보와 상기 제2_k 학습용 특징 정보를 참조한 제1_k 에러를 최소화하며, 제(k-1) 학습된 디스크리미네터에 입력되는 상기 제k 학습용 압축 인식 변조 데이터를 판별한 제k 학습용 변조 데이터 스코어인 제2_k 에러를 최대화 하도록 제(k-1) 학습된 변조 네트워크를 학습시켜 상기 제(k-1) 학습된 변조 네트워크가 제k 학습된 변조 네트워크가 되도록 하고, (iii-2) 상기 제(k-1) 학습된 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 제k 학습용 변조 데이터를 보정한 제k 학습용 보정된 변조 데이터를 판별한 제k 학습용 데이터 스코어를 최대화하며, 상기 제k 학습용 변조 데이터 스코어를 최소화하도록 상기 제(k-1) 학습된 디스크리미네터를 학습시켜 상기 제(k-1) 학습된 디스크리미네터가 제k 학습된 디스크리미네터가 되도록 하는 학습 장치.
  22. 제19항에 있어서,
    상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어의 최대값은 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 리얼로 판별하는 1이며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어의 최소값은 상기 학습용 압축 인식 변조 데이터를 페이크로 판별하는 0인 학습 장치.
  23. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하되,
    상기 프로세서는, 상기 (III) 프로세스에서, (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 차이에 의해 상기 제1 에러를 획득하고, (ii) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터의 차이에 의해 상기 제2 에러를 획득하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터의 차이에 의해 상기 제2 에러를 획득하는 학습 장치.
  24. 제23항에 있어서,
    상기 프로세서는, 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보의 노름 또는 코사인 유사도에 의해 상기 제1 에러를 획득하는 학습 장치.
  25. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하되,
    상기 프로세서는, 상기 (III) 프로세스에서, 상기 제1 학습용 특징 정보를 클래스별로 맵핑한 상기 학습용 압축 인식 변조 데이터에 대한 프로바빌리티(probability)와 상기 학습용 데이터에 대응되는 그라운드 트루스를 참조하여 획득한 클래스 로스를 더 참조하여 상기 제1 에러를 획득하는 학습 장치.
  26. 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 학습 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습시키기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 학습시키기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습용 데이터가 획득되면, (i) 상기 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하는 프로세스, (II) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징(characteristic) 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하는 프로세스, 및 (III) (i) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조하여 생성한 제1 에러를 최소화하며, (ii) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시키는 프로세스를 수행하되,
    상기 프로세서는, 상기 (III) 프로세스에서, 상기 학습용 압축 인식 변조 데이터의 엔트로피, 노이즈 정도 중 적어도 일부를 참조로 하여 퀄리티를 측정하고, 측정된 상기 퀄리티를 더 참조하여 상기 제1 에러를 획득하는 학습 장치.
  27. 개인 정보 보호를 위하여 원본 데이터를 비식별 처리하는 변조 네트워크를 테스팅하는 테스팅 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 테스팅하기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 테스팅하기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습 장치에 의해, (i) 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, (iii) (iii-1) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조한 제1 에러를 최소화하며, (iii-2) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태에서, 테스트용 데이터를 획득하는 프로세스, 및 (II) 상기 테스트용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 변조 네트워크의 학습된 파라미터에 의해 상기 테스트용 데이터를 변조하여 상기 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 상기 테스트용 변조 데이터를 상기 테스트용 데이터의 변조 처리된 데이터로 획득하는 프로세스를 수행하되,
    상기 (I) 프로세스에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 학습 장치에 의해, (i) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (ii) (ii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, (ii-2) 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 상기 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태인 테스팅 장치.
  28. 삭제
  29. 개인 정보 보호를 위하여 원본 데이터를 비식별 처리하는 변조 네트워크를 테스팅하는 테스팅 장치에 있어서,
    개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 테스팅하기 위한 인스트럭션들이 저장된 메모리; 및
    상기 메모리에 저장된 상기 인스트럭션들에 따라 개인 정보 보호를 위하여 원본 데이터를 변조하는 상기 변조 네트워크를 테스팅하기 위한 동작을 수행하는 프로세서;
    를 포함하며,
    상기 프로세서는, (I) 학습 장치에 의해, (i) 학습용 데이터를 변조 네트워크에 입력하여 상기 변조 네트워크로 하여금 상기 학습용 데이터를 변조하여 학습용 변조 데이터를 생성하도록 하며, 상기 학습용 변조 데이터를 컴프레션 네트워크로 입력하여 상기 컴프레션 네트워크로 하여금 상기 학습용 변조 데이터를 데이터 압축하여 학습용 바이너리 데이터를 생성하도록 하고, 상기 학습용 바이너리 데이터를 데이터 압축 해제하여 데이터 압축 정보를 가지는 학습용 압축 인식 변조 데이터를 생성하도록 하며, (ii) 상기 학습용 압축 인식 변조 데이터를 학습된 파라미터를 가지는 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대응하는 제1 학습용 특징 정보를 생성하도록 하며, 상기 학습용 데이터를 상기 러닝 네트워크에 입력하여 상기 러닝 네트워크로 하여금 상기 학습된 파라미터를 이용하여 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대응하는 제2 학습용 특징 정보를 생성하도록 하며, (iii) (iii-1) 상기 제1 학습용 특징 정보와 상기 제2 학습용 특징 정보를 참조한 제1 에러를 최소화하며, (iii-2) 상기 학습용 데이터를 보정(modify)한 학습용 보정된 데이터 또는 상기 학습용 변조 데이터를 보정한 학습용 보정된 변조 데이터와, 상기 학습용 변조 데이터를 참조하여 생성하거나, 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터와, 상기 학습용 압축 인식 변조 데이터를 참조하여 생성한 제2 에러를 최대화하도록, 상기 변조 네트워크를 학습시킨 상태에서, 테스트용 데이터를 획득하는 프로세스, 및 (II) 상기 테스트용 데이터를 상기 변조 네트워크로 입력하여 상기 변조 네트워크로 하여금 상기 변조 네트워크의 학습된 파라미터에 의해 상기 테스트용 데이터를 변조하여 상기 데이터 압축 정보를 가지는 테스트용 변조 데이터를 출력하도록 하며, 상기 테스트용 변조 데이터를 상기 테스트용 데이터의 변조 처리된 데이터로 획득하는 프로세스를 수행하되,
    상기 (I) 프로세스에서,
    상기 학습 장치에 의해, 입력되는 데이터가 리얼인지 페이크를 판별하는 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 학습용 변조 데이터 스코어를 상기 제2 에러로 획득한 상태에서, 상기 제1 에러를 최소화하며 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시킴과 더불어, 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 학습용 데이터 스코어를 최대화하며 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태인 테스팅 장치.
  30. 제29항에 있어서,
    상기 (I) 프로세스에서, 상기 러닝 네트워크는 각각 제1 학습된 파라미터 내지 제n 학습된 파라미터를 가진 제1 러닝 네트워크 내지 제n - 상기 n은 1 이상의 정수임 - 러닝 네트워크를 포함하며,
    상기 학습 장치에 의해, (ii) 상기 학습용 압축 인식 변조 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 압축 인식 변조 데이터를 러닝 연산하여 상기 학습용 압축 인식 변조 데이터에 대한 각각의 제1_1 특징 정보 내지 제1_n 특징 정보를 출력하도록 하며, 상기 학습용 데이터를 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각에 입력하여 각각의 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크로 하여금 상기 제1 러닝 네트워크 내지 상기 제n 러닝 네트워크 각각의 상기 제1 학습된 파라미터 내지 상기 제n 학습된 파라미터에 의해 상기 학습용 데이터를 러닝 연산하여 상기 학습용 데이터에 대한 각각의 제2_1 특징 정보 내지 제2_n 특징 정보를 출력하도록 하며, (iii) (iii-1) 상기 제1_1 학습용 특징 정보와 상기 제2_1 학습용 특징 정보를 참조한 제1_1 에러 내지 상기 제1_n 학습용 특징 정보와 상기 제2_n 학습용 특징 정보를 참조한 제1_n 에러의 평균인 상기 제1 에러를 최소화하며, 상기 디스크리미네터에 입력된 상기 학습용 압축 인식 변조 데이터를 판별한 상기 학습용 변조 데이터 스코어인 상기 제2 에러를 최대화하도록 상기 변조 네트워크를 학습시키고, (iii-2) 상기 디스크리미네터에 입력된 상기 학습용 보정된 데이터 또는 상기 학습용 보정된 변조 데이터를 판별한 상기 학습용 데이터 스코어를 최대화하며, 상기 학습용 변조 데이터 스코어를 최소화하도록 상기 디스크리미네터를 학습시킨 상태인 테스팅 장치.
KR1020210139258A 2020-10-21 2021-10-19 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치 KR102412829B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020200137122 2020-10-21
KR20200137122 2020-10-21
US17/234,953 2021-04-20
US17/234,953 US11200342B1 (en) 2020-10-21 2021-04-20 Method for training and testing obfuscation network capable of processing data to be obfuscated for privacy, and training device and testing device using the same

Publications (2)

Publication Number Publication Date
KR20220052837A KR20220052837A (ko) 2022-04-28
KR102412829B1 true KR102412829B1 (ko) 2022-06-27

Family

ID=78828608

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210139258A KR102412829B1 (ko) 2020-10-21 2021-10-19 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치

Country Status (4)

Country Link
US (1) US11200342B1 (ko)
EP (1) EP4232992A4 (ko)
KR (1) KR102412829B1 (ko)
WO (1) WO2022086145A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11669635B1 (en) * 2021-11-29 2023-06-06 Deeping Source Inc. Learning method and learning device for training obfuscation network capable of obfuscating original data for privacy and testing method and testing device using the same
US11423643B1 (en) * 2021-11-29 2022-08-23 Deeping Source Inc. Method for generating obfuscated image to be used in training learning net work and labeling device using the same
US11886955B2 (en) 2022-02-16 2024-01-30 Protopia AI, Inc. Self-supervised data obfuscation in foundation models
EP4266216A1 (en) * 2022-04-20 2023-10-25 Deeping Source Inc. Learning method and learning device for training obfuscation network capable of obfuscating original data for privacy to achieve information restriction obfuscation and testing method and testing device using the same
WO2024059538A1 (en) * 2022-09-14 2024-03-21 Visa International Service Association Anonymizing time-series data using matrix profile

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101784265B1 (ko) 2016-06-09 2017-10-12 주식회사 그리즐리 빅데이터의 비식별화 처리 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10104265B2 (en) * 2015-04-22 2018-10-16 Email Data Source, Inc. Method and device for generating a privatized electronic image for a plurality of electronic documents
US10535120B2 (en) * 2017-12-15 2020-01-14 International Business Machines Corporation Adversarial learning of privacy protection layers for image recognition services
KR102035796B1 (ko) * 2018-07-26 2019-10-24 주식회사 딥핑소스 데이터를 비식별 처리하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
US11347865B2 (en) * 2019-03-29 2022-05-31 Blackberry Limited Determining security risks in binary software code
US11636334B2 (en) * 2019-08-20 2023-04-25 Micron Technology, Inc. Machine learning with feature obfuscation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101784265B1 (ko) 2016-06-09 2017-10-12 주식회사 그리즐리 빅데이터의 비식별화 처리 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Kim et al. Training with the Invisibles: Obfuscating Images to Share Safely for Learning Visual Recognition Models, arXiv, 2019년 1월, pp. 1-12. 1부.*
Liyang Xie, "Privacy-Preserving Distributed Multi-Task Learning with Asynchronous Updates", https://doi.org/10.1145/3097983.3098152, Pages 1195-1204(2017.08.13.)
Nikhil Chhabra, "Generative Adversarial Networks for Image Anonymization", Aachen University(2017.12.31.)

Also Published As

Publication number Publication date
EP4232992A1 (en) 2023-08-30
US11200342B1 (en) 2021-12-14
WO2022086145A1 (en) 2022-04-28
KR20220052837A (ko) 2022-04-28
EP4232992A4 (en) 2024-04-17

Similar Documents

Publication Publication Date Title
KR102412829B1 (ko) 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치
JP7040712B2 (ja) 個人情報保護のために原本データをコンシーリング処理する変調ネットワークを学習する方法及びテストする方法、そして、これを利用した学習装置及びテスト装置
KR102184787B1 (ko) 개인 정보를 보호하기 위하여 원본 데이터를 컨실링 처리하여 생성된 변조 데이터를 인식하기 위해 사용되는 사용자 러닝 네트워크를 학습하는 방법 및 테스트하는 방법, 그리고 이를 이용한 학습 장치 및 테스트 장치
KR102412832B1 (ko) 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치
JP7362165B2 (ja) プライバシーのためにデータをコンシーリング処理することができる変造ネットワークに対応される適応ネットワークを学習する方法及びテストする方法、そしてこれを利用した学習装置及びテスト装置{method for training and testing adaption network corresponding to obfuscation network capable of processing data to be concealed for privacy、and training device and testing device using the same}
JP7060619B2 (ja) バイオメトリック識別システムおよび方法
Sandhya et al. Biometric template protection: A systematic literature review of approaches and modalities
Hashemi et al. Visual malware detection using local malicious pattern
KR102128649B1 (ko) 정보 암호화 및 해독
KR102389915B1 (ko) 원본 이미지의 영역별로 서로 다른 컨실링 프로세스가 수행되도록 하여 원본 이미지를 컨실링 처리하는 변조 네트워크를 학습하는 방법 및 테스트하는 방법, 그리고, 이를 이용한 학습 장치 및 테스트 장치
US20230021661A1 (en) Forgery detection of face image
US11017319B1 (en) Method for training obfuscation network which conceals original data to be used for machine learning and training surrogate network which uses obfuscated data generated by obfuscation network and method for testing trained obfuscation network and learning device and testing device using the same
KR102395452B1 (ko) 개인 정보 보호를 위하여 원본 데이터를 비식별 처리한 변조 데이터를 인식하기 위한 사용자 러닝 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치
KR102570955B1 (ko) 러닝 네트워크의 학습에 이용하기 위한 익명화 이미지를 생성하는 방법 및 이를 이용한 라벨링 장치
KR102483650B1 (ko) 사용자 인증 장치 및 방법
KR20230121974A (ko) 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조네트워크를 학습하는 방법 및 테스트하는 방법, 그리고, 이를 이용한 학습 장치 및 테스트 장치
KR102260039B1 (ko) 개인 정보 보호를 위하여 원본 데이터를 컨실링 처리하는 변조 네트워크를 학습하는 방법 및 테스트하는 방법, 그리고, 이를 이용한 학습 장치 및 테스트 장치
KR102244190B1 (ko) 데이터를 컨실링 처리하는 방법 및 이를 이용한 데이터 변조 장치
EP4266216A1 (en) Learning method and learning device for training obfuscation network capable of obfuscating original data for privacy to achieve information restriction obfuscation and testing method and testing device using the same
Ghani et al. Toward robust and privacy-enhanced facial recognition: A decentralized blockchain-based approach with GANs and deep learning
KR20220136011A (ko) 생체 정보의 도용 여부를 검출하는 방법 및 장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant