KR20210051045A - 도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치 - Google Patents

도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치 Download PDF

Info

Publication number
KR20210051045A
KR20210051045A KR1020190135804A KR20190135804A KR20210051045A KR 20210051045 A KR20210051045 A KR 20210051045A KR 1020190135804 A KR1020190135804 A KR 1020190135804A KR 20190135804 A KR20190135804 A KR 20190135804A KR 20210051045 A KR20210051045 A KR 20210051045A
Authority
KR
South Korea
Prior art keywords
domain
vector
information
module
block
Prior art date
Application number
KR1020190135804A
Other languages
English (en)
Inventor
정용현
최현진
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020190135804A priority Critical patent/KR20210051045A/ko
Priority to US16/668,280 priority patent/US11288547B2/en
Publication of KR20210051045A publication Critical patent/KR20210051045A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2134Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on separation criteria, e.g. independent component analysis
    • G06F18/21345Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on separation criteria, e.g. independent component analysis enforcing sparsity or involving a domain transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • 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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/143Segmentation; Edge detection involving probabilistic approaches, e.g. Markov random field [MRF] modelling
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • G06V10/7784Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors
    • G06V10/7788Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors the supervisor being a human, e.g. interactive learning with a human teacher
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치가 개시된다. 개시되는 일 실시예에 따른 생성 모델 학습 장치는, 입력 데이터에서 특징을 추출하여 특징 벡터를 출력하는 인코더, 특징 벡터를 기반으로 입력 데이터를 복원하는 디코더, 및 생성 모델을 통해 학습시키려고 하는 도메인 정보를 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하고, 특징 벡터와 도메인 벡터 블록을 합하여 디코더로 입력시키는 도메인 모듈을 포함한다.

Description

도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치{METHOD FOR INSERTING DOMAIN INFORMATION, METHOD AND APPARATUS FOR LEARNING OF GENERATIVE MODEL}
본 발명의 실시예는 생성 모델(Generative Model)의 효과적인 학습을 위한 기술과 관련된다.
최근, 인간 수준의 지능을 구현하는 인공 지능 시스템이 다양한 분야에서 이용되고 있다. 인공 지능 시스템은 기존의 룰(rule) 기반 스마트 시스템과 달리 기계가 스스로 학습하고 판단하는 시스템이다. 이러한 인공 지능 시스템은 주로 딥러닝(Deep Learning)을 통한 학습 방법을 사용하고 있다.
딥러닝을 통한 학습 방법으로 생성 모델(Generative Model)이 있는데, 이러한 생성 모델의 예로는 VAE(Variational Auto Encoder), GAN(Generative Adversarial Network) 등이 있다. 생성 모델은 예를 들어, 입력되는 이미지에서 특징을 추출하고, 추출된 특징을 기반으로 새로운 이미지를 복원하여 출력하는 딥러닝 학습 모델이다.
기존의 생성 모델에서는 도메인(예를 들어, 헤어스타일, 인종, 성별 등) 별로 상이한 결과물을 생성할 때 도메인 별로 서로 다른 생성 모델을 만들고 학습하여 사용하였으므로, 도메인의 개수가 증가함에 따라 생성 모델의 개수도 증가하는 단점이 있다.
또한, 하나의 생성 모델(단일 생성 모델)을 이용하여 여러 도메인에 따른 결과물을 생성하는 방식도 있으나, 도메인의 개수가 증가할수록 학습 연산량이 크게 증가하는 단점이 있다. 즉, 기존에는 이미지와 함께 도메인 정보를 하나의 생성 모델에 입력으로 넣어 상이한 결과물을 만들어 내었다. 이를 위해, 이미지 정보의 입력을 위한 채널과 별개로 여러 개의 도메인 채널을 통해 도메인 정보를 입력으로 넣어 학습하였다. 이 경우, 도메인의 개수가 증가할수록 학습 파라미터가 증가하여 학습을 위한 연산량이 크게 증가하고 학습 속도가 저하되게 된다.
이에, 단일 생성 모델을 이용하면서도 학습 속도의 저하를 방지할 수 있는 방안이 요구된다.
한국공개특허공보 제10-2019-0017242호(2019.02.20)
개시되는 실시예는 생성 모델에 도메인 정보를 삽입하는 새로운 기법을 제공하기 위한 것이다.
개시되는 일 실시예에 따른 생성 모델 학습 장치는, 입력 데이터에서 특징을 추출하여 특징 벡터를 출력하는 인코더; 상기 특징 벡터를 기반으로 상기 입력 데이터를 복원하는 디코더; 및 생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하고, 상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 디코더로 입력시키는 도메인 모듈을 포함한다.
상기 도메인 모듈은, 상기 도메인 벡터 블록을 상기 도메인 정보의 도메인 타입의 개수에 따라 생성할 수 있다.
상기 도메인 모듈은, 상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하고, 상기 도메인 벡터 블록들 중 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록의 벡터 값은 1로 하고, 나머지 도메인 벡터 블록의 벡터 값은 0으로 할 수 있다.
상기 입력 데이터의 일부분에 대해 도메인 정보를 학습시키려고 하는 경우, 상기 도메인 모듈은, 상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하고, 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하며, 상기 생성된 도메인 벡터 블록들 중 상기 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 해당 도메인 벡터 블록에서 상기 입력 데이터의 일부분과 대응되는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 할 수 있다.
상기 입력 데이터는, 이미지이고, 상기 생성 모델 학습 장치는, 상기 이미지에 포함된 각 오브젝트를 구분하고, 구분된 오브젝트 이미지 정보를 상기 도메인 모듈로 전달하는 오브젝트 분할 모듈을 더 포함하고, 상기 도메인 모듈은,
상기 오브젝트 이미지 정보를 기반으로 상기 이미지에 포함된 오브젝트 별로 도메인 정보를 입력할 수 있다.
상기 도메인 모듈은, 상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하고, 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하며, 상기 생성된 도메인 벡터 블록들 중 상기 변경시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 상기 오브젝트 이미지 정보를 기반으로 해당 도메인 벡터 블록 내에서 해당 오브젝트와 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 할 수 있다.
개시되는 일 실시예에 따른 생성 모델 학습 방법은, 인코더에서, 입력 데이터에서 특징을 추출하여 특징 벡터를 출력하는 단계; 도메인 모듈에서, 생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하고, 상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 디코더로 입력시키는 단계; 및 상기 디코더에서, 상기 특징 벡터를 기반으로 상기 도메인 정보를 반영하여 상기 입력 데이터를 복원하는 단계를 포함한다.
상기 도메인 벡터 블록으로 생성하는 단계는, 상기 도메인 모듈에서, 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 도메인 벡터 블록을 생성할 수 있다.
상기 도메인 벡터 블록으로 생성하는 단계는, 상기 도메인 모듈에서, 상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하는 단계; 및 상기 도메인 벡터 블록들 중 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록의 벡터 값은 1로 하고, 나머지 도메인 벡터 블록의 벡터 값은 0으로 하는 단계를 포함할 수 있다.
상기 입력 데이터의 일부분에 대해 도메인 정보를 학습시키려고 하는 경우, 상기 도메인 모듈에서, 상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하는 단계; 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하는 단계; 및 상기 생성된 도메인 벡터 블록들 중 상기 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 해당 도메인 벡터 블록에서 상기 입력 데이터의 일부분과 대응되는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하는 단계를 포함할 수 있다.
상기 입력 데이터는, 이미지이고, 상기 생성 모델 학습 방법은, 오브젝트 분할 모듈에서, 상기 이미지에 포함된 각 오브젝트를 구분하고, 구분된 오브젝트 이미지 정보를 상기 도메인 모듈로 전달하는 단계; 및 상기 도메인 모듈에서, 상기 오브젝트 이미지 정보를 기반으로 상기 이미지에 포함된 오브젝트 별로 도메인 정보를 입력하는 단계를 더 포함할 수 있다.
상기 오브젝트 별로 도메인 정보를 입력하는 단계는, 상기 도메인 모듈에서, 상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하는 단계; 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하는 단계; 및 상기 생성된 도메인 벡터 블록들 중 상기 변경시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 상기 오브젝트 이미지 정보를 기반으로 해당 도메인 벡터 블록 내에서 해당 오브젝트와 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하는 단계를 포함할 수 있다.
개시되는 일 실시예에 따른 컴퓨팅 장치는, 하나 이상의 프로세서들; 메모리; 및 하나 이상의 프로그램들을 포함하고, 상기 하나 이상의 프로그램들은 상기 메모리에 저장되며, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되고, 생성 모델에 도메인 정보를 삽입하기 위한 컴퓨팅 장치로서, 상기 하나 이상의 프로그램들은, 상기 생성 모델의 인코더로부터 입력 데이터에 대한 특징 벡터를 수신하기 위한 명령; 생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하기 위한 명령; 및 상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 생성 모델의 디코더로 입력시키기 위한 명령을 포함한다.
개시되는 일 실시예에 따른 도메인 정보 삽입 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되고, 생성 모델에 도메인 정보를 삽입하기 위한 방법으로서, 상기 생성 모델의 인코더로부터 입력 데이터에 대한 특징 벡터를 수신하는 단계; 생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하는 단계; 및 상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 생성 모델의 디코더로 입력시키는 단계를 포함한다.
개시되는 실시예에 의하면, 도메인 정보를 인코더와 디코더 사이에 입력시킴으로써, 동일한 개수의 히든 레이어를 사용하는 경우 인코더의 학습 파라미터가 절반으로 감소하게 된다. 그로 인해, 단일 생성 모델을 사용하면서도 학습 연산량을 줄일 수 있으며 도메인 정보의 수를 증가시키더라도 학습 속도가 저하되는 것을 방지할 수 있게 된다.
또한, 개시되는 실시예에서는 인코더에서 출력되는 특징 벡터와 도메인 정보의 크기 차이가 기 설정된 기준 값 이상이 되는 경우, 도메인 정보의 크기를 특징 벡터와 대응되는 크기로 형성한 후 특징 벡터와 도메인 정보를 합침으로써, 특징 벡터와 도메인 정보 간의 정보량의 비대칭성 문제를 해결하고, 도메인 정보가 충분히 반영되어 학습되도록 할 수 있게 된다.
또한, 인코더의 출력 값의 사이즈와 무관하게 도메인 정보를 넣을 수 있기 때문에 도메인 정보를 넣는 방법을 정량화 할 수 있고, 생성 모델이 병목(Bottleneck) 구조가 아닌 경우(즉, 병목 구조를 사용하지 않거나 약한 병목 구조(예를 들어, 인코더가 이미지의 크기를 많이 축소하지 않는 구조))에도 적용할 수 있게 된다.
도 1은 본 발명의 일 실시예에 따른 생성 모델 학습 장치의 구성을 나타낸 도면
도 2는 개시되는 일 실시예에서 인코더의 출력인 특징 벡터와 도메인 정보의 원 핫 벡터가 합쳐져 디코더의 입력으로 하는 것을 설명하기 위한 도면
도 3은 개시되는 실시예에서 도메인 모듈이 인코더에서 출력되는 특징 벡터와 도메인 벡터 블록을 합치는 과정을 나타낸 도면
도 4는 개시도는 실시예에서 복수 개의 도메인 타입을 도메인 정보로 입력하는 것을 설명하기 위한 도면
도 5는 개시되는 일 실시예에서 입력 이미지 중 일부 영역에 대해서 도메인 정보를 학습시키는 상태를 개략적으로 나타낸 도면
도 6은 개시되는 실시예에서 입력 이미지의 오브젝트 별로 도메인 정보를 변경하여 출력 값을 생성하는 상태를 개략적으로 나타낸 도면
도 7은 개시되는 일 실시예에서 사람과 말을 오브젝트로 포함하는 이미지를 나타낸 도면
도 8은 본 발명의 일 실시예에 따른 생성 모델 학습 방법을 나타낸 흐름도
도 9는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다. 또한 본 명세서에 있어서, 2 이상의 데이터 또는 정보가 "관련"된다는 것은 하나의 데이터(또는 정보)를 획득하면, 그에 기초하여 다른 데이터(또는 정보)의 적어도 일부를 획득할 수 있음을 의미한다.
도 1은 본 발명의 일 실시예에 따른 생성 모델 학습 장치의 구성을 나타낸 도면이다.
도 1을 참조하면, 생성 모델 학습 장치(100)는 인코더(102), 도메인 모듈(104), 및 디코더(106)를 포함할 수 있다. 예시적인 실시예에서, 생성 모델은 병목(Bottleneck) 구조를 가질 수 있다. 즉, 인코더(102)에서 입력 데이터의 차원이 축소되어 출력되고, 출력된 값이 디코더(106)에서 원 입력 데이터의 차원으로 증가되는 구조를 가질 수 있다. 이하에서는, 생성 모델이 병목 구조를 가지는 것을 일 예로 설명하나, 생성 모델은 병목 구조가 아닌 경우에도 적용될 수 있다.
인코더(102)는 입력되는 데이터(입력 데이터)에서 특징(Feature)을 추출할 수 있다. 이하에서, 입력 데이터는 이미지인 것을 일 예로 설명하기로 한다. 그러나, 입력 데이터가 이에 한정되는 것은 아니다.
인코더(102)는 입력되는 이미지의 차원을 축소하여 특징을 추출할 수 있다. 구체적으로, 인코더(102)는 복수 개의 히든 레이어(Hidden Layer)를 포함할 수 있다. 각 히든 레이어는 입력되는 이미지에서 기 설정된 크기(예를 들어, 3×3 픽셀 크기)의 필터를 일정 간격으로 이동시키면서 해당 필터에 대응되는 픽셀들(즉, 9개 픽셀)의 특징 값(예를 들어, 픽셀들의 중에서 최대값 또는 픽셀들의 평균값 등)을 추출하여 입력되는 이미지의 차원을 축소할 수 있다.
이때, 인코더(102)는 입력되는 이미지를 R(Red) 채널 이미지, G(Green) 채널 이미지, B(Blue) 채널 이미지로 각각 분리한 후, 분리된 각 이미지에 대해 이러한 작업을 수행할 수 있다. 인코더(102)의 출력 값은 입력된 이미지에 대한 특징 벡터로 표현될 수 있다.
도메인 모듈(104)은 인코더(102)의 출력 값(즉, 특징 벡터)에 도메인 정보를 합쳐서(concatenate) 디코더(106)로 입력시킬 수 있다. 즉, 개시되는 실시예에서는 도메인 정보를 인코더(102)와 디코더(106) 사이에 입력시키게 된다. 여기서, 도메인 정보는 디코더(106)의 입력으로 들어가기 때문에, 동일한 개수의 히든 레이어를 사용하는 경우 인코더(102)의 학습 파라미터가 절반으로 감소하게 된다. 그로 인해, 단일 생성 모델을 사용하면서도 학습 연산량을 줄일 수 있으며 학습 속도가 저하되는 것을 방지할 수 있게 된다.
도메인 모듈(104)은 도메인 정보를 벡터화 하여 도메인 벡터를 생성할 수 있다. 도메인 모듈(104)은 도메인 벡터를 인코더(102)의 출력인 특징 벡터와 합쳐서 디코더(106)로 입력시킬 수 있다. 도메인 정보는 생성 모델을 통해 학습하려고 하는 주제(또는 내용)일 수 있다. 예시적인 실시예에서, 입력 이미지가 인물 이미지인 경우, 도메인 정보는 헤어 스타일, 인종, 성별 등이 될 수 있다. 여기서, 헤어 스타일, 인종, 성별 등은 각각 도메인 타입이 될 수 있다.
예시적인 실시예에서, 도메인 모듈(104)은 생성 모델을 통해 학습하려고 하는 도메인 정보를 원 핫 벡터(One Hot Vector)로 벡터화 할 수 있다. 즉, 도메인 모듈(104)은 각 도메인 타입에 고유한 인덱스를 부여하고, 도메인 타입의 개수에 대응하는 차원의 벡터에서 해당 도메인 타입의 인덱스에 대응하는 벡터 값은 1로 하고, 나머지 인덱스에 대응하는 벡터 값은 0으로 하는 원 핫 벡터를 생성할 수 있다.
예를 들어, 헤어 스타일이라는 도메인 타입의 인덱스가 1이고, 인종이라는 도메인 타입의 인덱스가 2이며, 성별이라는 도메인 타입의 인덱스가 3인 경우, 헤어 스타일의 원 핫 벡터는 (1, 0, 0)이 되고, 인종의 원 핫 벡터는 (0, 1, 0)이 되며, 성별의 원 핫 벡터는 (0, 0, 1)이 된다. 도메인 타입이 m개인 경우, 원 핫 벡터는 m차원의 벡터가 될 수 있다.
도메인 모듈(104)은 도 2에 도시된 바와 같이, 인코더(102)의 출력인 특징 벡터와 도메인 정보의 원 핫 벡터를 합쳐서 디코더(106)의 입력으로 할 수 있다.
한편, 도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터와 도메인 정보의 원 핫 벡터(도메인 벡터)의 크기 차이가 기 설정된 기준 값 이상이 되는 경우, 도메인 벡터의 크기를 특징 벡터와 대응되는 크기로 형성한 후, 특징 벡터와 도메인 벡터를 합칠 수 있다.
즉, 도 2에서 인코더(102)의 특징 벡터는 n 사이즈의 정보량을 가지고 있는 반면, 도메인 정보의 원 핫 벡터는 한 가지 타입에 대해 1 사이즈의 정보량을 가지고 있으므로, 인코더(102)의 특징 벡터에서 n의 크기가 증가할수록 특징 벡터와 원 핫 벡터 간의 정보의 비대칭성은 증가하게 된다. 이러한 상태에서, 인코더(102)의 특징 벡터와 도메인 정보의 원 핫 벡터를 합쳐서 디코더(106)로 입력하여 학습하게 되면, 전체 생성 모델은 인코더(102)에 입력되는 이미지(즉, 입력 이미지)의 정보를 더 많이 유지한 채 학습되고, 도메인 정보가 제대로 반영되지 못하게 된다.
따라서, 개시되는 실시예에서는 인코더(102)에서 출력되는 특징 벡터와 도메인 정보의 원 핫 벡터(도메인 벡터)의 크기 차이가 기 설정된 기준 값 이상이 되는 경우, 도메인 벡터의 크기를 특징 벡터와 대응되는 크기로 형성한 후 특징 벡터와 도메인 벡터를 합침으로써, 특징 벡터와 도메인 벡터 간의 정보의 비대칭성 문제를 해결할 수 있다.
구체적으로, 도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터의 크기를 산출할 수 있다. 예를 들어, 채널의 개수가 c이고, 이미지의 폭(Width)의 크기가 w이며, 이미지의 높이(Height)의 크기가 h라고 할 때, 이미지는 (c, w, h)의 크기를 가지며, 이미지의 정보의 크기는 c × w × h가 된다.
여기서, 이미지가 인코더(102)의 학습 레이어(L)를 거쳤을 때 변경되는 정보는 아래 수학식 1의 정보 크기 변경 함수 L(c, w, h)로 나타낼 수 있다.
(수학식 1)
Figure pat00001
여기서, s는 이미지에서 필터(filter)가 이동하는 간격, fw는 필터의 폭의 크기, fh는 필터의 높이의 크기, f는 필터의 개수를 의미한다.
수학식 1에서 s는 이미지의 크기인(w, h)를 (w/s, h/s)로 줄어들게 하며, 필터의 개수 f는 채널 개수 c를 c×f로 변경시키게 된다. 그리고, 필터의 폭(fw)과 높이(fh)는 이미지의 크기인(w, h)를 (w-fw, h- fh)의 크기로 변경시키게 된다.
여기서, 수학식 1에 따른 정보(이미지가 학습 레이어 L을 거쳤을 때 변경되는 정보)의 크기는 수학식 2와 같이 나타낼 수 있다.
(수학식 2)
Figure pat00002
그리고, 인코더(102)에 i개의 학습 레이어가 있는 경우, Li = L(Li - 1)과 같이 직전 학습 레이어에 따라 재귀적으로 그 정보(이미지의 변경되는 크기 정보)를 산출할 수 있다.
도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터의 크기와 동일한 크기의 도메인 벡터 블록을 생성할 수 있다. 이때, 도메인 모듈(104)은 도메인 타입의 개수만큼 도메인 벡터 블록을 생성할 수 있다. 도 3은 개시되는 실시예에서 도메인 모듈(104)이 인코더(102)에서 출력되는 특징 벡터와 도메인 벡터 블록을 합치는 과정을 나타낸 도면이다.
도 3을 참조하면, 인코더(102)에서 출력되는 특징 벡터의 크기가 (n, w', h')인 경우를 살펴보기로 한다. 즉, 인코더(102)에서 출력되는 특징 벡터는 n개의 채널을 가지며, 각 채널의 이미지는 폭이 w', 높이가 h'인 경우이다.
여기서, 도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터의 크기와 동일한 크기의 도메인 벡터 블록(DB)을 생성할 수 있다. 즉, 도메인 모듈(104)은 채널의 개수가 n개이고, 이미지의 폭이 w', 높이가 h'인 도메인 벡터 블록을 생성할 수 있다.
이때, 도메인 모듈(104)은 도메인 타입의 개수(m)만큼 도메인 벡터 블록(DB1, DB2, ??, DBm)을 생성할 수 있다. 각 도메인 벡터 블록(DB1, DB2, ??, DBm)은 채널의 개수가 n개이고, 이미지의 폭이 w', 높이가 h'로서 인코더(102)에서 출력되는 특징 벡터와 동일한 크기일 수 있다.
도메인 모듈(104)은 각 도메인 벡터 블록(DB1, DB2, ??, DBm)의 벡터 값을 삽입할 때, 학습하고자 하는 도메인 타입의 원 핫 벡터를 기반으로 각 도메인 벡터 블록에 벡터 값을 삽입할 수 있다. 예를 들어, 도메인 타입이 헤어 스타일, 인종, 및 성별로 3개가 있고, 헤어 스타일의 인덱스가 1, 인종의 인덱스가 2, 성별의 인덱스가 3인 경우를 살펴보기로 한다.
그러면, 도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터와 동일한 크기를 갖는 3개의 도메인 벡터 블록(DB1, DB2, DB3)을 생성할 수 있다. 그리고, 학습하고자 하는 도메인 타입이 인종인 경우, 해당 도메인 타입의 원 핫 벡터는 (0, 1, 0)이므로, 제1 도메인 벡터 블록(DB1)의 벡터 값은 모두 0으로 하고, 제2 도메인 벡터 블록(DB2)의 벡터 값은 모두 1로 하며, 제3 도메인 벡터 블록(DB3)의 벡터 값은 모두 0으로 할 수 있다.
즉, 도메인 벡터 블록(DB1, DB2, DB3)들 중 해당 도메인 타입의 인덱스 순서와 대응되는 제2 도메인 벡터 블록(DB2)의 벡터 값은 1로 하고, 나머지 도메인 벡터 블록(DB2, DB3)의 벡터 값은 0으로 할 수 있다.
개시되는 실시예에서, 도메인 벡터 블록은 벡터 값이 0 아니면 1로 표현될 수 있으며, 도메인 벡터 블록의 벡터 값이 1로 표현되는 것을 해당 도메인 벡터 블록이 활성화되는 것으로 지칭할 수 있다. 이 경우, 앞의 예에서 제2 도메인 벡터 블록((DB2)이 활성화 된 것으로 표현될 수 있다.
이와 같이, 인코더(102)에서 출력되는 특징 벡터와 대응되는 크기의 도메인 벡터 블록을 형성하고, 특징 벡터와 도메인 벡터 블록들을 합쳐 디코더(106)의 입력으로 하는 경우, 인코더(102)의 출력 값과 입력하고자 하는 도메인 정보량 간의 비대칭성 문제를 해결하고, 도메인 정보가 충분히 반영되어 학습되도록 할 수 있게 된다.
또한, 인코더(102)의 출력 값의 사이즈와 무관하게 도메인 정보를 넣을 수 있기 때문에 도메인 정보를 넣는 방법을 정량화 할 수 있고, 생성 모델이 병목(Bottleneck) 구조가 아닌 경우(즉, 병목 구조를 사용하지 않거나 약한 병목 구조(예를 들어, 인코더(102)가 이미지의 크기를 많이 축소하지 않는 구조))에도 적용할 수 있게 된다. 그로 인해, 반도체 웨이퍼 이미지 등과 같은 고용량의 이미지들이나 고차원 데이터에 대해서도 다양한 도메인 정보를 반영한 학습이 가능해지게 된다.
여기서는, 인코더(102)로 입력되는 정보가 2차원인 이미지인 것으로 설명하였으나, 인코더(102)로 입력되는 정보가 3차원 이상의 다차원인 경우에도 이와 동일한 방식으로 인코더(102)에서 출력되는 특징 벡터와 동일한 크기의 도메인 벡터 블록을 생성할 수 있다.
한편, 도메인 모듈(104)은 복수 개의 도메인 타입을 도메인 정보로 입력할 수도 있다. 예를 들어, 앞의 예에서 헤어 스타일(인덱스가 1이고, 원 핫 벡터는 (1,0,0))이라는 도메인 타입과 성별(인덱스가 3이고, 원 핫 벡터는(0, 0, 1))이라는 도메인 타입을 학습하고자 하는 경우, 도메인 모듈(104)은 도 4에 도시된 바와 같이, 인코더(102)에서 출력되는 특징 벡터와 동일한 크기를 갖는 3개의 도메인 벡터 블록(DB1, DB2, DB3)을 생성할 수 있다.
여기서, 도메인 모듈(104)은 제1 도메인 벡터 블록(DB1)의 벡터 값은 모두 1로 하고, 제2 도메인 벡터 블록(DB2)의 벡터 값은 모두 0으로 하며, 제3 도메인 벡터 블록(DB3)의 벡터 값은 모두 1로 할 수 있다. 즉, 학습하고자 하는 도메인 타입의 원 핫 벡터 값을 조합하여 해당 도메인 벡터 블록을 활성화(제1 도메인 벡터 블록(DB1)과 제3 도메인 벡터 블록(DB3)을 활성화)할 수 있다.
또한, 도메인 모듈(104)은 입력 이미지에서 일 부분에 대해서만 도메인 정보를 학습시킬 수도 있다. 도 5는 개시되는 일 실시예에서 입력 이미지 중 일부 영역에 대해서 도메인 정보를 학습시키는 상태를 개략적으로 나타낸 도면이다.
도 5를 참조하면, 입력 이미지(I)에서 특정 부분(a)에 대해 도메인 정보를 학습시키려고 하는 경우, 도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터와 동일한 크기의 도메인 벡터 블록들을 생성하고, 생성된 도메인 벡터 블록들 중에서 학습시키려고 하는 도메인 타입과 대응되는 도메인 벡터 블록을 선택할 수 있다. 예를 들어, 학습시키려고 하는 도메인 타입이 인덱스가 1인 헤어 스타일인 경우, 도메인 모듈(104)은 도메인 벡터 블록들 중 해당 도메인 타입의 인덱스와 대응되는 순서인 첫 번째 도메인 벡터 블록을 선택할 수 있다.
도메인 모듈(104)은 선택된 도메인 벡터 블록 내에서 특정 부분(a)과 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 할 수 있다. 즉, 도메인 모듈(104)은 선택된 도메인 벡터 블록 내에서 특정 부분(a)과 대응하는 부분만 활성화시킴으로써, 입력 이미지(I) 중 특정 부분(a)에 대해서만 해당 도메인 타입을 학습시킬 수 있다.
이러한 방법은, 생성 모델이 병목 구조가 아닌 경우에 적용할 수 있다. 즉, 인코더(102)에서 입력 이미지의 크기가 축소되지 않고 입력 이미지의 크기 그대로 출력되는 경우, 입력 이미지 중 특정 부분에만 도메인 정보를 학습시킬 수 있다.
한편, 개시되는 실시예에 따른 생성 모델에 의하면, 입력 이미지에서 오브젝트 별로 도메인 정보를 변경하여 출력 값을 생성할 수 있다. 즉, 도메인 벡터 블록을 이용하여 도메인 정보를 학습시킨 생성 모델에 의하면, 입력 이미지 중 각 오브젝트에 대해 도메인 정보를 변경하여 출력 값을 생성할 수 있게 된다.
도 6은 개시되는 실시예에서 입력 이미지의 오브젝트 별로 도메인 정보를 변경하여 출력 값을 생성하는 상태를 개략적으로 나타낸 도면이다. 여기서, 생성 모델은 인코더(102)에서 입력 이미지의 크기가 축소되지 않고, 입력 이미지의 크기 그대로 출력되는 구조일 수 있다.
구체적으로, 생성 모델 학습 장치(100)는 입력 이미지에서 각 오브젝트를 분할하기 위한 오브젝트 분할 모듈(108)을 더 포함할 수 있다. 예를 들어, 입력 이미지가 도 7에서 도시한 바와 같이, 오브젝트가 말과 사람이 포함된 경우, 오브젝트 분할 모듈(108)은 입력 이미지(도 7의 (a))에서 각 오브젝트를 구분(도 7의 (b))하고, 구분된 오브젝트 이미지 정보를 도메인 모듈(104)로 전달할 수 있다.
예를 들어, 오브젝트 분할 모듈(108)은 입력 이미지에서 사람에 대한 오브젝트 이미지 정보를 도메인 모듈(104)로 전달할 수 있다. 여기서, 오브젝트 이미지 정보는 입력 이미지 중 사람에 해당하는 부분은 1의 픽셀 값을 갖고, 나머지 부분은 0의 픽셀 값을 가질 수 있다.
한편, 도메인 모듈(104)은 인코더(102)에서 출력되는 특징 벡터와 동일한 크기의 도메인 벡터 블록들을 생성하고, 생성된 도메인 벡터 블록들 중에서 변경하려고 하는 도메인 타입과 대응되는 도메인 벡터 블록을 선택할 수 있다. 예를 들어, 변경하려고 하는 도메인 타입이 인덱스가 1인 헤어 스타일인 경우, 도메인 모듈(104)은 도메인 벡터 블록들 중 첫 번째 도메인 벡터 블록을 선택할 수 있다.
도메인 모듈(104)은 사람에 대한 오브젝트 이미지 정보를 기반으로 선택된 도메인 벡터 블록 내에서 사람과 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 할 수 있다. 즉, 도메인 모듈(104)은 선택된 도메인 벡터 블록 내에서 사람과 대응하는 부분만 활성화시켜 도메인 정보로 삽입할 수 있다. 그러면, 디코더(106)에서는 입력 이미지 중 사람에 대한 오브젝트 이미지에 대해 해당 도메인 타입이 반영된 결과가 출력되게 된다.
한편, 여기서는 변경하려고 하는 도메인 타입이 1개인 것을 일 예로 설명하였으나, 이에 한정되는 것은 아니며 도메인 타입을 여러 개를 동시에 변경할 수도 있다. 예를 들어, 변경하고자 하는 도메인 타입의 인덱스가 1인 헤어 스타일과 인덱스가 3인 성별인 경우, 도메인 벡터 블록들 중에서 첫 번째 도메인 벡터 블록과 세 번째 도메인 벡터 블록을 선택하고, 사람에 대한 오브젝트 이미지 정보를 기반으로 첫 번째 도메인 벡터 블록과 세 번째 도메인 벡터 블록 내에서 사람과 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하여 도메인 정보를 삽입함으로써, 헤어 스타일과 성별에 대해 오브젝트별로 각각 도메인 정보를 변경하여 출력 값을 생성할 수 있게 된다.
여기서, 입력 이미지 중 말에 대해서도 도메인 정보를 변경하여 출력값을 생성시키고자 하는 경우, 도메인 모듈(104)은 오브젝트 분할 모듈(108)로부터 말에 대한 오브젝트 이미지 정보를 수신하고, 도메인 벡터 블록들 중 학습시키려고 하는 도메인 타입과 대응되는 도메인 벡터 블록을 선택하며, 선택된 도메인 벡터 블록에서 말에 대한 오브젝트 이미지 정보를 기반으로 해당 부분을 활성화시켜 도메인 정보로 삽입할 수 있다.
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 "모듈"은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아니다.
도 8은 본 발명의 일 실시예에 따른 생성 모델 학습 방법(800)을 나타낸 흐름도이다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
802 단계에서, 인코더(102)는 입력 데이터에서 특징을 추출하여 특징 벡터를 출력한다. 입력 데이터는 예를 들어, 2차원의 이미지일 수 있으나, 이에 한정되는 것은 아니며, 1차원 데이터 또는 3차원 이상의 데이터일 수도 있다.
804 단계에서, 도메인 모듈(104)은 생성 모델에서 학습시키려고 하는 도메인 정보를 인코더(102)에서 출력되는 특징 벡터와 합쳐서 디코더(106)로 입력시킨다.
806 단계에서, 디코더(106)는 특징 벡터를 기반으로 도메인 정보를 반영하여 입력 데이터를 복원한다.
도 9는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 생성 모델 학습 장치(100)일 수 있다. 또한, 컴퓨팅 장치(12)는 인코더(102)일 수 있다. 또한, 컴퓨팅 장치(12)는 도메인 모듈(104)일 수 있다. 또한, 컴퓨팅 장치(12)는 디코더(106)일 수 있다.
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100 : 생성 모델 학습 장치
102 : 인코더
104 : 도메인 모듈
106 : 디코더
108 : 오브젝트 분할 모듈

Claims (14)

  1. 생성 모델 학습 장치로서,
    입력 데이터에서 특징을 추출하여 특징 벡터를 출력하는 인코더;
    상기 특징 벡터를 기반으로 상기 입력 데이터를 복원하는 디코더; 및
    생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하고, 상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 디코더로 입력시키는 도메인 모듈을 포함하는, 생성 모델 학습 장치.
  2. 청구항 1에 있어서,
    상기 도메인 모듈은,
    상기 도메인 벡터 블록을 상기 도메인 정보의 도메인 타입의 개수에 따라 생성하는, 생성 모델 학습 장치.
  3. 청구항 2에 있어서,
    상기 도메인 모듈은,
    상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하고, 상기 도메인 벡터 블록들 중 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록의 벡터 값은 1로 하고, 나머지 도메인 벡터 블록의 벡터 값은 0으로 하는, 생성 모델 학습 장치.
  4. 청구항 1에 있어서,
    상기 입력 데이터의 일부분에 대해 도메인 정보를 학습시키려고 하는 경우,
    상기 도메인 모듈은,
    상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하고, 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하며, 상기 생성된 도메인 벡터 블록들 중 상기 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 해당 도메인 벡터 블록에서 상기 입력 데이터의 일부분과 대응되는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하는, 생성 모델 학습 장치.
  5. 청구항 1에 있어서,
    상기 입력 데이터는, 이미지이고,
    상기 생성 모델 학습 장치는,
    상기 이미지에 포함된 각 오브젝트를 구분하고, 구분된 오브젝트 이미지 정보를 상기 도메인 모듈로 전달하는 오브젝트 분할 모듈을 더 포함하고,
    상기 도메인 모듈은,
    상기 오브젝트 이미지 정보를 기반으로 상기 이미지에 포함된 오브젝트 별로 도메인 정보를 입력하는, 생성 모델 학습 장치.
  6. 청구항 5에 있어서,
    상기 도메인 모듈은,
    상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하고, 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하며, 상기 생성된 도메인 벡터 블록들 중 상기 변경시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 상기 오브젝트 이미지 정보를 기반으로 해당 도메인 벡터 블록 내에서 해당 오브젝트와 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하는, 생성 모델 학습 장치.
  7. 생성 모델 학습 방법으로서,
    인코더에서, 입력 데이터에서 특징을 추출하여 특징 벡터를 출력하는 단계;
    도메인 모듈에서, 생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하고, 상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 디코더로 입력시키는 단계; 및
    상기 디코더에서, 상기 특징 벡터를 기반으로 상기 도메인 정보를 반영하여 상기 입력 데이터를 복원하는 단계를 포함하는, 생성 모델 학습 방법.
  8. 청구항 7에 있어서,
    상기 도메인 벡터 블록으로 생성하는 단계는,
    상기 도메인 모듈에서, 상기 도메인 정보의 도메인 타입의 개수에 따라 상기 도메인 벡터 블록을 생성하는, 생성 모델 학습 방법.
  9. 청구항 8에 있어서,
    상기 도메인 벡터 블록으로 생성하는 단계는, 상기 도메인 모듈에서,
    상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하는 단계; 및
    상기 도메인 벡터 블록들 중 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록의 벡터 값은 1로 하고, 나머지 도메인 벡터 블록의 벡터 값은 0으로 하는 단계를 포함하는, 생성 모델 학습 방법.
  10. 청구항 7에 있어서,
    상기 입력 데이터의 일부분에 대해 도메인 정보를 학습시키려고 하는 경우, 상기 도메인 모듈에서,
    상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하는 단계;
    상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하는 단계; 및
    상기 생성된 도메인 벡터 블록들 중 상기 학습시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 해당 도메인 벡터 블록에서 상기 입력 데이터의 일부분과 대응되는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하는 단계를 포함하는, 생성 모델 학습 방법.
  11. 청구항 7에 있어서,
    상기 입력 데이터는, 이미지이고,
    상기 생성 모델 학습 방법은,
    오브젝트 분할 모듈에서, 상기 이미지에 포함된 각 오브젝트를 구분하고, 구분된 오브젝트 이미지 정보를 상기 도메인 모듈로 전달하는 단계; 및
    상기 도메인 모듈에서, 상기 오브젝트 이미지 정보를 기반으로 상기 이미지에 포함된 오브젝트 별로 도메인 정보를 입력하는 단계를 더 포함하는, 생성 모델 학습 방법.
  12. 청구항 11에 있어서,
    상기 오브젝트 별로 도메인 정보를 입력하는 단계는, 상기 도메인 모듈에서,
    상기 도메인 정보의 각 도메인 타입에 고유 인덱스를 부여하는 단계;
    상기 도메인 정보의 도메인 타입의 개수에 따라 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록들을 생성하는 단계; 및
    상기 생성된 도메인 벡터 블록들 중 상기 변경시키려고 하는 도메인 타입의 인덱스와 대응되는 순서의 도메인 벡터 블록을 활성화시키되, 상기 오브젝트 이미지 정보를 기반으로 해당 도메인 벡터 블록 내에서 해당 오브젝트와 대응하는 부분의 벡터 값은 1로 하고, 나머지 부분의 벡터 값은 0으로 하는 단계를 포함하는, 생성 모델 학습 방법.
  13. 하나 이상의 프로세서들;
    메모리; 및
    하나 이상의 프로그램들을 포함하고, 상기 하나 이상의 프로그램들은 상기 메모리에 저장되며, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되고, 생성 모델에 도메인 정보를 삽입하기 위한 컴퓨팅 장치로서,
    상기 하나 이상의 프로그램들은,
    상기 생성 모델의 인코더로부터 입력 데이터에 대한 특징 벡터를 수신하기 위한 명령;
    생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하기 위한 명령; 및
    상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 생성 모델의 디코더로 입력시키기 위한 명령을 포함하는, 컴퓨팅 장치.
  14. 하나 이상의 프로세서들, 및
    상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되고, 생성 모델에 도메인 정보를 삽입하기 위한 방법으로서,
    상기 생성 모델의 인코더로부터 입력 데이터에 대한 특징 벡터를 수신하는 단계;
    생성 모델을 통해 학습시키려고 하는 도메인 정보를 상기 특징 벡터와 대응되는 크기의 도메인 벡터 블록으로 생성하는 단계; 및
    상기 특징 벡터와 상기 도메인 벡터 블록을 합하여 상기 생성 모델의 디코더로 입력시키는 단계를 포함하는, 도메인 정보 삽입 방법.
KR1020190135804A 2019-10-29 2019-10-29 도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치 KR20210051045A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190135804A KR20210051045A (ko) 2019-10-29 2019-10-29 도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치
US16/668,280 US11288547B2 (en) 2019-10-29 2019-10-30 Method for inserting domain information, method and apparatus for learning of generative model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190135804A KR20210051045A (ko) 2019-10-29 2019-10-29 도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20210051045A true KR20210051045A (ko) 2021-05-10

Family

ID=75587139

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190135804A KR20210051045A (ko) 2019-10-29 2019-10-29 도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치

Country Status (2)

Country Link
US (1) US11288547B2 (ko)
KR (1) KR20210051045A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190017242A (ko) 2017-08-10 2019-02-20 한양대학교 산학협력단 대립쌍 구조 기반의 생성모델을 이용한 패킷손실은닉 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11651584B2 (en) * 2018-10-16 2023-05-16 General Electric Company System and method for memory augmented domain adaptation
US11055572B2 (en) * 2019-02-22 2021-07-06 Canon Kabushiki Kaisha System and method of training an appearance signature extractor
US20200364624A1 (en) * 2019-05-16 2020-11-19 Retrace Labs Privacy Preserving Artificial Intelligence System For Dental Data From Disparate Sources

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190017242A (ko) 2017-08-10 2019-02-20 한양대학교 산학협력단 대립쌍 구조 기반의 생성모델을 이용한 패킷손실은닉 방법 및 장치

Also Published As

Publication number Publication date
US11288547B2 (en) 2022-03-29
US20210125003A1 (en) 2021-04-29

Similar Documents

Publication Publication Date Title
US10664060B2 (en) Multimodal input-based interaction method and device
KR102605077B1 (ko) 모바일 디바이스에서 사실적인 머리 회전들 및 얼굴 애니메이션 합성을 위한 방법들 및 시스템들
CN111553267B (zh) 图像处理方法、图像处理模型训练方法及设备
KR102287407B1 (ko) 이미지 생성을 위한 학습 장치 및 방법과 이미지 생성 장치 및 방법
KR20190091806A (ko) 생성적 적대 네트워크를 이용한 비디오 시퀀스 생성 시스템 및 그 방법
CN113850168A (zh) 人脸图片的融合方法、装置、设备及存储介质
CN112215171A (zh) 目标检测方法、装置、设备及计算机可读存储介质
KR20220005548A (ko) 이미지 처리 방법 및 장치
KR102332114B1 (ko) 이미지 처리 방법 및 장치
KR20210045229A (ko) 컴퓨팅 장치 및 그 동작 방법
KR20230062429A (ko) 문장 기반 스케치 추천 방법 및 장치
CN113657272B (zh) 一种基于缺失数据补全的微视频分类方法及系统
CN114783017A (zh) 基于逆映射的生成对抗网络优化方法及装置
KR102612625B1 (ko) 신경망 기반의 특징점 학습 장치 및 방법
CN117252947A (zh) 图像处理方法、装置、计算机、存储介质及程序产品
KR20210051045A (ko) 도메인 정보 삽입 방법 및 이를 이용한 생성 모델 학습 방법 및 장치
KR20200134813A (ko) 기계 학습을 위한 이미지 처리 장치 및 방법
KR101592087B1 (ko) 배경 영상의 위치를 이용한 관심맵 생성 방법 및 이를 기록한 기록 매체
US11423308B1 (en) Classification for image creation
KR102259878B1 (ko) 융합 컨볼루셔널 오토인코더를 이용한 객체의 회전에 영향을 받지 않는 분류 모델을 생성하기 위한 장치 및 이를 위한 방법
US11670023B2 (en) Artificial intelligence techniques for performing image editing operations inferred from natural language requests
US20220405501A1 (en) Systems and Methods to Automatically Determine Human-Object Interactions in Images
CN114627211A (zh) 视频名片生成方法、装置、计算机设备和存储介质
CN113055546A (zh) 处理图像的系统和方法
CN113628122A (zh) 图像处理方法、模型训练方法、装置及设备

Legal Events

Date Code Title Description
A201 Request for examination