KR101646926B1 - 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템 - Google Patents

멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템 Download PDF

Info

Publication number
KR101646926B1
KR101646926B1 KR1020150053829A KR20150053829A KR101646926B1 KR 101646926 B1 KR101646926 B1 KR 101646926B1 KR 1020150053829 A KR1020150053829 A KR 1020150053829A KR 20150053829 A KR20150053829 A KR 20150053829A KR 101646926 B1 KR101646926 B1 KR 101646926B1
Authority
KR
South Korea
Prior art keywords
layer
learning
conceptual
concept
microcode
Prior art date
Application number
KR1020150053829A
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 KR1020150053829A priority Critical patent/KR101646926B1/ko
Application granted granted Critical
Publication of KR101646926B1 publication Critical patent/KR101646926B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F15/18
    • 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
    • G06N7/005
    • G06N99/005

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Machine Translation (AREA)

Abstract

멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템이 개시된다. 입력 데이터를 처리하여 출력 데이터를 생성하는 컴퓨팅 장치에서 심층 개념망을 구축하는 방법으로서, 실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조와 개념 층을 학습하는 단계, 및 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하는 단계를 포함한다.

Description

멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템{METHOD AND SYSTEM OF DEEP CONCEPT HIOERARCHY FOR RECONSTRUCTION IN MULTI-MODALITY DATA}
본 발명의 실시예들은 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템에 관한 것이다.
심층 모델(Deep Architecture)은 얕은 모델(Shallow Architecture)과 대비되는 기계학습 모델 구조의 일종이다. 기계학습 모델 혹은 인공신경망 모델에서 두 개 이상의 많은 은닉 변수 층을 가지는 모델을 심층 모델이라고 한다. 심층 모델은 얕은 모델보다 더 적은 파라미터 혹은 적은 모델 복잡도를 가지고 데이터를 잘 표현할 수 있다. 대표적인 예로 Deep Neural Networks, Deep Belief Networks, Sum-Product Networks 와 같은 모델이 있다.
멀티 모달리티 데이터 복원은 두 개 이상의 모달리티 데이터를 학습하여, 일부 모달리티의 데이터가 주어졌을 때, 다른 모달리티의 데이터를 복원하는 것을 지칭하는 것으로서, 일부 종래 기술에서는 다른 모달리티의 데이터를 복원하는 문제를 풀기 위한 학습 및 추론 방법을 제시하고 있다.
또한, 점진적 학습은, 모델을 학습한 뒤에 새로운 데이터가 들어왔을 때, 모델을 처음부터 다시 학습하는 대신에, 새로운 데이터의 정보에 대해서만 기존 모델에 추가하여 학습하는 방법을 지칭한다. 이러한 점진적 학습 방법은 아주 많은 데이터가 지속적으로 유입되는 빅데이터 상황에서 유용하게 쓰인다.
군집화(clustering)는 비슷한 양상을 보이는 데이터들을 하나의 군집으로 묶는 것을 지칭한다. 군집화를 위해서는 지속적으로 들어오는 데이터에 대하여 실시간으로 두 개 이상의 모달 정보에 대한 연합 지식을 구축해야 한다. 이러한 문제는, 예컨대 이미지 정보에서 관련 텍스트를 생성하거나 특정 키워드를 추출하거나, 이미지로 단어를 검색하는 문제와 텍스트 정보에서 관련 이미지를 추출 혹은 검색하는 문제로 크게 대변될 수 있다.
두 개 이상의 모달 정보에 대한 연합 지식을 구축하는 기술은 지능 시스템에서 다양하게 사용될 수 있다. 예컨대, 언어 모달과 시각 모달에 대한 연합 지식을 구축하여 이미지 검색이나 이미지 자동 태그 생성, 물체 인식 성능 강화와 같은 다양한 일들을 할 수 있다.
실제 환경에서 심층 모델 연합 지식을 사용하기 위해 지속적으로 들어오는 데이터에 맞게 구조와 가중치를 변화시키는 것은 중요하다. 하지만 기존의 방법들은 한번 모델을 학습하면 그 구조와 가중치를 변화시키기가 어려웠다. 그것이 가능한 방법들은 제한적인 단층 표현력으로 인해 실제 데이터의 분포를 잘 표현하는 데 어려움이 있다. 이러한 문제는 네이버(www.naver.com), 다음(www.daum.net)과 같은 검색 포탈을 운영하는 회사들에게 있어 근본적인 문제이다.
상기와 같은 종래 기술의 문제점을 해결하기 위한 본 발명의 목적은, 기존의 실시간 학습이 어려운 다른 알고리즘을 대체하여, 지속적으로 들어오는 데이터에 대하여 실시간으로 학습하는 것이 가능한, 멀티 모달리티 데이터 복원을 위한 심층 개념망(Deep Concept Hierarchy) 구축 방법 및 그 시스템을 제공하는데 있다.
상기와 같은 종래 기술의 문제점을 해결하기 위한 본 발명의 다른 목적은, 기존에 실시간 학습이 가능하지만 표현력이 얕은, 얕은 모델(shallow architecture)을 대신하여, 지속적으로 들어오는 데이터에 대하여 표현력이 더 큰, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템을 제공하는데 있다.
상기의 목적을 달성하기 위하여 본 발명의 일 측면에서는, 입력 데이터를 처리하여 출력 데이터를 생성하는 컴퓨팅 장치에서 심층 개념망을 구축하는 방법으로서, 실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조와 개념 층을 학습하는 단계, 및 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하는 단계를 포함하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법을 제공한다.
여기에서, 심층 구조와 개념 층을 학습하는 단계는, 입력 데이터에 대하여 마이크로코드 층에 대한 구조를 학습하는 제1서브단계를 포함할 수 있다.
여기에서, 심층 구조와 개념 층을 학습하는 단계는, 제1서브단계 후에 제1서브단계에서 학습된 마이크로코드 층에 대한 1차 개념 층을 학습하는 제2서브단계를 더 포함할 수 있다.
여기에서, 심층 구조와 개념 층을 학습하는 단계는, 제2서브단계 후에 마이크로코드 층에 대한 2차 개념 층을 학습하는 제3서브단계를 더 포함할 수 있다.
여기에서, 가중치를 학습하는 단계에서는, 제1서브단계, 제2서브단계 및 제3서브단계에서 각각 학습된 마이크로코드 층들에 대한 가중치를 학습할 수 있다.
여기에서, 심층 개념망 구축 방법은, 가중치의 학습 결과에 기초하여 심층 개념망 모델을 생성 또는 저장하는 단계를 더 포함할 수 있다.
여기에서, 심층 개념망 구축 방법은, 심층 개념망 모델을 토대로 모달 입력 데이터에서 모달 재현 데이터를 예측하는 단계를 더 포함할 수 있다.
여기에서, 심층 구조와 개념 층을 학습하는 단계는, 마이크로코드 층을 베이지안(Bayesian) 확률 기반으로 추론할 수 있다.
여기에서, 심층 구조와 개념 층을 학습하는 단계는, 엣지 형태로 된 파라미터 공간의 구조를 학습하는 기계학습 알고리즘에서 파라미터 공간의 구조 즉, 마이크로코드(microcode) 층과 그 심층 구조를 학습하는데에 그래프 몬테카를로(graph Monte Carlo) 알고리즘을 이용할 수 있다.
여기에서, 심층 개념망 구축 방법은, 마이크로코드 층의 심층 구조의 일부인 1차 개념 층에 대한 학습과 가중치에 대한 학습 후에 유사도를 사용하여 실시간 군집화하는 단계를 더 포함할 수 있다.
여기에서, 심층 구조와 개념 층을 학습하는 단계는, 마이크로코드 층의 심층 구조의 다른 일부인 2차 개념 층을 학습하기 위하여 상기 입력 데이터의 일부 상위 개념들을 관측값의 함수로 미리 지정하여 사용할 수 있다.
여기에서, 가중치를 학습하는 단계는, 가중치를 학습하기 위하여 추계학적인 기울기 상승(stochastic gradient ascent)을 사용할 수 있다.
상기의 목적을 달성하기 위하여 본 발명의 다른 측면에서는, 심층 모델(deep architecture) 또는 깊은 학습(deep learning)을 이용하는 심층 개념망 구축 시스템으로서, 프로그램을 저장하는 메모리, 및 메모리에 연결되어 프로그램을 수행하는 프로세서를 포함하되, 프로세서가 프로그램에 의해 실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조와 개념 층을 학습하고, 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 시스템을 제공한다.
여기에서, 프로세서는, 서로 다른 두 개 이상의 모달 정보에 대한 지식을 학습하기 위해, 입력 데이터에 대하여 마이크로코드 층을 학습하고, 마이크로코드 층으로부터 상기 마이크로코드 층과 다른 층으로서 상기 마이크로코드 층의 심층 구조의 일부인 1차 개념 층을 학습하고, 1차 개념 층으로부터 상기 마이크로코드 층의 심층 구조의 다른 일부인 2차 개념 층을 학습하고, 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 마이크로코드 층, 1차 개념 층 및 2차 개념 층에 대하여 가중치를 학습할 수 있다.
여기에서, 프로세서는, 가중치의 학습 결과에 기초하여 심층 개념망 모델을 생성 및/또는 저장하고, 심층 개념망 모델을 토대로 모달 입력 데이터에서 모달 재현 데이터를 예측할 수 있다.
상기의 목적을 달성하기 위하여 본 발명의 또 다른 측면에서는, 심층 모델을 이용하여 입력 데이터를 처리하여 출력 데이터를 생성하는 심층 개념망 구축 시스템으로서, 실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조 및 개념 층을 학습하는 제1 학습부, 및 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 제1 학습부의 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하는 제2 학습부를 포함하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 시스템을 제공한다.
여기에서, 제1 학습부는, 입력 데이터에 대하여 마이크로코드 층을 학습하는 마이크로코드 층 구조 학습부, 마이크로코드 층 구조 학습부에서 학습된 마이크로코드 층에 대하여 1차 개념 층을 학습하는 1차 개념층 학습부, 및 1차 개념층 학습부에서 학습된 1차 개념 층에 대하여 2차 개념 층을 학습하는 2차 개념층 학습부를 포함할 수 있다.
여기에서, 제2 학습부는, 마이크로코드 층 구조 학습부, 1차 개념층 학습부 및 2차 개념층 학습부에서 각각 학습된 마이크로코드 층, 1차 개념 층, 및 2차 개념 층에 대한 가중치를 학습할 수 있다.
여기에서, 심층 개념망 구축 시스템은, 가중치의 학습 결과에 의해 생성되는 심층 개념망 모델을 저장하는 데이터베이스에 연결되어 심층 개념망 모델을 토대로 모달 입력 데이터에서 모달 재현 데이터를 예측하는 예측부를 더 포함할 수 있다.
상기와 같은 본 발명에 따른 멀티 모달리티 데이터 복원 구축을 위한 심층 개념망 구축 방법 및 그 시스템을 이용할 경우에는, 실시간으로 들어오는 멀티모달 데이터에 대해서 모달 간 관계를 학습하고 학습된 데이터들 상호 간에 복원을 수행할 수 있다. 예컨대, 검색 서비스 제공에 있어, 실시간으로 들어오는 네이버나 구글의 이미지-문서 정보를 학습하여, 이미지를 설명하는 문장을 자동으로 생성하면서 문장 기반으로 이미지를 검색할 수 있다. 이는 제한된 연산 용량을 가지고 훨씬 더 많은 데이터를 한꺼번에 학습할 수 있는 기반을 제공하며, 시스템의 성능 향상을 가지고 올 수 있다. 게다가, 그 기대 효과는 단지 검색에 그치지 않고, 여러 이종(a different kind) 데이터의 응용에 활용될 수 있다.
또한, 상기와 같은 본 발명에 따른 멀티 모달리티 데이터 복원 구축을 위한 심층 개념망 구축 방법 및 그 시스템을 이용할 경우에는, 두 개 이상의 모달 정보의 연합 지식을 표현력이 큰 심층 모델(Deep Architecture)의 새로운 구조로 실시간 획득할 수 있다. 그리고, 좀 더 넓은 의미에서 보면, 서로 다른 언어 형태를 가지는 외국어 번역에도 이러한 기술이 사용될 수 있으며, 영화를 요약하는 기술에도 본 실시예의 기술이 사용될 수 있다. 즉, 본 실시예의 심층 개념망 시스템 및 이를 이용하는 학습 방법은 이미지 검색을 포함한 포탈 사이트 검색 기술 전반, 번역 기술, 기사 및 문서 작성 자동화를 포함한 다양한 영역에 사용될 수 있다.
도 1은 본 발명의 일실시예에 따른 심층 개념망 구축 시스템의 블록도이다.
도 2는 본 발명의 실시예에 따른 심층 개념망(deep concept hierarchy, DCH)의 구조 측면에서의 예시도이다.
도 3은 본 발명의 다른 실시예에 따른 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법의 흐름도이다.
도 4는 본 발명의 실시예에 따른 심층 개념망 모델 데이터베이스를 이용한 비디오 데이터 자막으로부터의 비디오 데이터 영상 정보 생성에 대한 예시도이다.
도 5는 본 발명의 실시예에 따른 심층 개념망 모델 데이터베이스를 이용한 비디오 영상 정보로부터 자막으로의 번역에 대한 예시도이다.
도 6은 본 발명의 실시예에 따른 심층 개념망 모델 데이터베이스를 이용한 번역 성능에 대한 예시도이다.
도 7은 본 발명의 실시예에 따른 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법을 수행하는 시스템의 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 등의 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급되는 경우, 어떤 구성요소는 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 이들 사이에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 이들의 중간에 다른 구성요소가 존재하지 아니하는 것으로 이해되어야 할 것이다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 이를 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
도 1은 본 발명의 일실시예에 따른 심층 개념망 구축 시스템의 블록도이다. 도 2는 본 발명의 실시예에 따른 심층 개념망의 구조 측면에서의 예시도이다.
도 1을 참조하면, 본 실시예에 따른 심층 개념망 구축 시스템은, 학습부(11), 예측부(13) 및 심층 개념망 모델 데이터베이스(DB)(12)를 포함한다.
학습부(11)는 두 개 이상의 모달 데이터(모달1 입력 데이터, 모달2 입력 데이터 등)를 입력으로 받아 데이터 내의 패턴을 파악하고 이를 심층 개념망 모델(deep concept hierarchy, DCH)로 데이터베이스에 저장한다. 이때, 학습이 점진적으로 이루어질 수 있다는 점이 본 실시예의 심층 개념망 구축 시스템에서 중요하다. 학습부(11)에서는 지속적으로 들어오는 데이터를 작은 단위로 모아 그 정보를 심층 개념망 모델에 반영한다.
본 실시예에 따른 심층 개념망(deep concept hierarchy, DCH)의 구조는 두 개 이상의 모달 정보를 학습할 수 있으며, 도 2에 도시한 바와 같이, 세 개의 모달 정보를 학습하기 위한 심층 개념망 구조를 구비할 수 있다. 심층 개념망은 심층 신경망으로 지칭될 수도 있다.
본 실시예에서는, 설명을 용이하게 하기 위하여, 세 개의 층(microcode Layer, Concept Layer 1, Concept Layer 2)을 학습하는 방법을 소개한다. 하지만 이를 일반화하여 4개 이상의 층으로 확장하여 학습하는 것 역시 개념적으로 무리가 없다. 마찬가지로 본 실시예에서는, 설명을 용이하게 하기 위하여, 두 개의 모달 (모달 1, 모달 2)을 학습하는 방법을 소개한다. 하지만 이를 일반화하여 3개 이상의 모달로 확장하여 학습하는 것 역시 개념적으로 무리가 없다.
심층 개념망 구축 시스템에 대하여 좀더 구체적으로 설명하면, 도 1에 도시한 바와 같이, 본 실시예에 따른 학습부(11)는 심층 개념망 구축 시스템에 지속적으로 들어오는 데이터에 대하여 실시간으로 두 개 이상의 모달 정보(예컨대, 모달1 입력 데이터 및 모달2 입력 데이터 포함)에 대한 연합 지식을 구축하기 위해 마이크로코드 층 구조 학습부(111), 1차 개념층 학습부(112), 2차 개념층 학습부(113) 및 마이크로코드 층 가중치 학습부(114)를 포함한다.
마이크로코드 층 구조 학습부(111)는 두 개 이상의 모달 정보에 대한 전체 구조의 일부인 마이크로코드(microcode) 층 구조를 학습한다. 마이크로코드 층 구조 학습부(111)는 기계학습 알고리즘에서 파라미터 공간의 구조를 학습하는데 사용되는 그래프 몬테카를로(graph Monte Carlo) 알고리즘을 이용할 수 있다. 기계학습 알고리즘은 엣지 형태로 된 파리미터 공간의 구조를 학습하는데 이용된다. 그래프 몬테카를로 알고리즘은 균등 그래프 몬테카를로(uniform graph Monte Carlo, UGMC) 방법, 빈익빈 부익부 그래프 몬테카를로(poorer-richer graph Monte Carlo, PRGMC) 방법, 공정한 그래프 몬테카를로(fair graph Monte Carlo, FGMC) 중 어느 하나 이상을 포함할 수 있다.
1차 개념 층 학습부(112)는 마이크로코드 층 구조 학습부(111)에서 학습된 마이크로코드 층의 심층 구조의 일부인 1차 개념 층 구조를 학습한다.
2차 개념 층 학습부(113)는 1차 개념 층 학습부(112)에서 학습된 1차 개념 층에 대하여 마이크로코드 층의 심층 구조의 다른 일부인 2차 개념 층 구조를 학습한다. 2차 개념 층 학습부(113)는 2차 개념 층 구조의 학습을 위해 중요 상위 개념들을 관측값의 함수로 미리 저장하여 사용할 수 있다.
전술한 마이크로코드 층, 1차 개념 층 및 2차 개념 층은 모달 입력 데이터 또는 그 마이크로코드 층과 개념 층들의 관계를 설명하는 층 구조를 구비한다.
마이크로코드 층 가중치 학습부(114)는 마이크로코드 층과 그 개념 층들의 확률 관계를 설명하는 가중치를 포함하는 것으로서, 마이크로코드 층 구조 학습부(111), 1차 개념 층 학습부(112) 및 2차 개념 층 학습부(113) 각각에서 학습된 마이크로코드 층, 1차 개념 등, 및 2차 개념 층의 가중치를 학습한다. 마이크로코드 층 가중치 학습부(114)는 마이크로코드 층과 그 심층 구조에 대한 가중치를 학습하기 위하여 추계학적인 기울기 상승(stochastic gradient ascent)을 사용할 수 있다.
본 실시예의 심층 개념망 구축 시스템은 1차 개념 층 학습부(112)의 1차 개념 층 구조와 마이크로코드 층 가중치 학습부(114)의 가중치를 학습하기 위하여 유사도를 사용하여 실시간 군집화를 수행하는 방법을 이용할 수 있다.
또한, 심층 개념망 구축 시스템은 서로 다른 두 개 이상의 모달 정보에 대한 지식을 학습할 수 있는 심층 개념망의 구조를 구축하는데 베이지안(Bayesian) 확률 기반으로 추론하는 방법을 이용할 수 있다.
전술한 학습부(11)는 실시간 입력되는 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 지식을 다단계로 학습하고 다단계 학습 결과에 대한 가중치를 학습하여 데이터의 확률 분포에 맞게 모델의 구조를 실시간 변화시킨다. 학습부(11)의 마이크로코드 층 가중치 학습부(114)에서 출력되는 학습 결과는 심층 개념망 모델 데이터베이스(12)에 저장된다.
예측부(13)는 임의의 모달 입력 데이터를 바탕으로 다른 임의의 모달 데이터를 재현한다. 예를 들어, 예측부(13)는 모달3 입력 데이터에 대하여 심층 개념망 모델을 적용하여 모달3 재현 데이터를 생성할 수 있다.
이하에서는 본 실시예에 따른 심층 개념망 모델에 대한 추론 방법에 대하여 좀더 구체적으로 설명하기로 한다.
본 실시예의 심층 개념망 모델에 대한 추론 방법에서는 아래의 수학식 1 및 수학식 2와 같이 표현되는 데이터를 모달 정보로 이용하기로 한다.
Figure 112015037173898-pat00001
Figure 112015037173898-pat00002
학습부(11) 즉 마이크로코드 학습부는 그래프 몬테카를로 알고리즘을 이용할 수 있는데, 수학식 1 및 수학식 2를 토대로 이를 나타내면 다음과 같다.
마이크로코드 층 G는 여러 마이크로코드(microcode)의 집합이다. G를 구성하는 i번째(ith) 마이크로코드 ei는 데이터에 대한 함수 fi 및 가중치 ai로 구성된다.
심층 개념망에서는 개념적으로 상위 개념 층의 발화에 따라 마이크로코드가 켜지거나 꺼지는 것을 가정한다. 그러나, 마이크로코드 층 내의 마이크로코드가 활성화되고 이것들이 동등하게 발화된다고 가정할 때, 모델이 가정한 데이터의 공산(likelihood)에 대하여 다음과 같은 수학식을 이용할 수 있다.
즉, 다음의 두 데이터 패턴 w(t)와 r(t)을 포함하는 멀티모달 데이터 DN에 대하여 다음의 수학식 3으로서 마이크로코드 층 G를 정의할 수 있다.
Figure 112015037173898-pat00003
여기에서, θ는 일반적으로 주어진 모델을 의미하는 기호이다. 함수 fi는 마이크로코드 ei와 멀티모달 데이터 패턴 w(t)와 r(t)을 매칭하여 보고, 매칭되면 1을 출력하되 매칭되지 않으면 0을 출력하는 함수이다. 일반적으로 하나의 함수는 w(t)와 r(t)이 가질 수 있는 값 중 일부의 값으로 표현되는 식을 가지며, 이를 나타내면 수학식 4의 오른쪽 식과 같이 표현될 수 있다.
그리고, 마이크로코드 층 G에 새로운 마이크로코드의 집합 {e}를 추가하는 경우, k-차수 마이크로코드 즉 하이퍼에지(hyperedege)일 때, k-차수 마이크로코드(k-order microcode)를 뽑기 위하여 다음의 수학식 4 및 5를 이용할 수 있다. 초기 마이크로코드 층 G는 빈 값(empty)를 가질 수 있다.
Figure 112015037173898-pat00004
Figure 112015037173898-pat00005
즉, 새로운 G를 뽑는 방식은 다음의 1. 내지 3.으로 요약될 수 있다.
1. 각 e에 해당하는 k-차수의 v(x)를 뽑는다.
2. 일정한 개수 |{e}|k에 대하여 1을 반복한다.
3. 원하는 차수 k들에 대하여 이를 반복한다.
한편, P(v(x))를 뽑는 방법에 따라 그래프 몬테카를로(graph Monte Carle) 방법이 세분화될 수 있다.
본 실시예에서는 그래프 몬테카를로 방법에 대해 다음의 세 종류를 제안한다.
첫째, 균등 그래프 몬테카를로(uniform graph Monte Carlo, UGMC) 알고리즘은 다음의 P(v(x)) 확률에 따라 그래프 구조를 업데이트할 수 있다. 이를 나타내면 수학식 6과 같다.
Figure 112015037173898-pat00006
여기서, x+ (n)은 n번째 데이터가 가지고 있는 변수들의 집합이다. 데이터 인스턴스가 주어졌을 때 수학식 6에 따라 UGMC에서 만들어질 수 있는 마이크로코드들은 같은 확률로 생성된다.
둘째, 빈인빈 부익부 그래프 몬테카를로(poorer-richer graph Monte Carlo, PRGMC)는 다음의 P(v(x)) 확률에 따라 그래프 구조를 업데이트할 수 있다. 이를 나타내면 수학식 7과 같다.
Figure 112015037173898-pat00007
여기서, R+{}는 오름차순 랭크함수이고, d(v)는 v 차수를 나타낸다. 그리고, h(v, e)는 e가 v를 포함할 경우 1을 반환하는 인디케이터(indicator) 함수이다. 이에 따라 PRGMC에서는 데이터에 자주 등장하는 패턴을 더 많이 포함하고 작고 밀집된 구조를 갖게 된다.
셋째, 공정한 그래프 몬테카를로(fair graph Monte Carlo, FGMC)는 다음의 P(v(x)) 확률에 따라 그래프 구조를 업데이트할 수 있다. 이를 나타내면 수학식 8과 같다.
Figure 112015037173898-pat00008
여기서, R-{}는 내림차순 랭크함수이다. FGMC에서는 데이터에 자주 등장하지 않는 패턴을 더 많이 포함하고 UGMC 또는 PRGMC보다 더 크고 성긴 구조를 갖게 된다.
전술한 마이크로코드의 구조 변화는 데이터가 새로 들어올 때마다 실시간으로 이루어질 수 있다.
전술한 마이크로코드의 구조 변화를 토대로 심층 개념망 구축 시스템의 1차 개념 층 학습부(112)의 작동 원리를 좀더 상세히 설명하면 다음과 같다.
1차 개념 층 학습부(112)가 유사도를 바탕으로 한 실시간 군집화(clustering)를 수행할 때, 기존 골자 또는 기본 프레임으로서 군집화를 통해 각 m번째 c1 노드에 해당하는 마이크로코드들 hm을 지정할 수 있다. 즉, hm은 m번째 클러스터(cluster)에 해당하는 마이크로코드의 집합이다.
군집화 알고리즘으로는 다양한 모델이 사용될 수 있으며, 특히 k-평균 클러스터링(k-means clustering)과 계층적 클러스터링(hierarchical clustering)을 포함할 수 있다. 그리고, 군집화 알고리즘은 1차 개념 층을 점진적으로 학습하기 위하여 새로운 데이터와 이를 바탕으로 새로 만들어진 마이크로코드를 클러스터에 추가하는 일을 수행할 수 있다.
군집화에서 클러스터의 개수는 모델의 성능에 큰 영향을 미친다. 따라서, 새로운 데이터의 분포를 반영하여 클러스터의 개수를 조절하기 위한 방법을 본 실시예에 따른 학습 방법 또는 구축 방법에서 사용할 수 있다.
본 실시예에 적용되는, 클러스터의 개수를 조절하기 위한 방법은 다음과 같다.
먼저, m번째 노드(node)는 다음 <조건 1>에 두 개의 노드로 분리된다.
<조건 1>
Figure 112015037173898-pat00009
다음, 모든 노드에서 다음의 <조건 2>가 성립하면 군집화를 전체적으로 다시 수행한다.
<조건 2>
Figure 112015037173898-pat00010
여기서, sim 함수는 다음의 수학식 9와 같이 정의된다.
Figure 112015037173898-pat00011
여기서, Dist(hm)은 hm 내의 각 마이크로코드 간의 거리의 합으로 정의된다.
각 마이크로코드 간의 거리는 다양하게 정의될 수 있으며, 각 마이크로코드가 포함하는 변수에 대한 유클리디안 거리가 사용될 수 있다.
다음으로 전술한 마이크로코드의 구조 변화를 토대로 심층 개념망 구축 시스템의 2차 개념 층 학습부(113)의 작동 원리를 좀더 상세히 설명하면 다음과 같다.
2차 개념 층 학습부(113)에 들어가는 노드를 각 모달과 태스크(task)에 맞는 영역 지식(domain-knowledge)를 사용하여 관측값의 함수로 미리 정의할 수 있다.
예를 들면, c2 노드와 c1 노드 간의 가중치 p(c2=k|c1=m)=wkm을 학습할 수 있다. 이는 입력 데이터에서 c2 노드의 발화와 c1 노드에 속한 하이퍼에지의 발화 비율의 합에 비례하는 값에 해당할 수 있다. 구체적으로는 다음의 수학식 10과 같이 정의될 수 있다.
Figure 112015037173898-pat00012
여기서, δ(k,t)는 k번째 c2 노드에 대한 함수로서 입력 데이터의 패턴이 k번째 c2 노드와 일치하면 1, 일치하지 아니하면 1을 내는 함수이다.
다음으로 전술한 마이크로코드의 구조 변화를 토대로 심층 개념망 구축 시스템의 마이크로코드 층 가중치 학습부(114)의 작동 원리를 좀더 상세히 설명하면 다음과 같다.
마이크로코드 층 가중치 학습부(114)는 다음의 수학식 11 내지 수학식 14와 같이 확률 식들에 의거하여 실시간으로 가중치를 업데이트할 수 있다.
Figure 112015037173898-pat00013
Figure 112015037173898-pat00014
Figure 112015037173898-pat00015
Figure 112015037173898-pat00016
위의 수학식 14는 마이크로코드 층 가중치 학습부(114)가 마이크로코드 층의 심층 구조의 일부인 2차 개념 층 구조를 학습하기 위하여 추계학적인 기울기 상승(stochastic gradient ascent)을 사용하는 경우에 대응된다.
전술한 마이크로코드의 구조 변화를 토대로 예측부(13)에서 모달 입력 데이터를 예측하여 모달 재현 데이터를 생성하는 원리를 좀더 상세히 설명하면 다음과 같다.
예측부(13)는 다음의 수학식 15를 통해 데이터에 대한 확률을 정의할 수 있다.
Figure 112015037173898-pat00017
위의 수학식 15를 바탕으로 임의의 모달 정보 w가 주어졌을 때, 예측부(13)는 모달 정보 w에 부합하는 다른 임의의 모달 정보 r을 계산할 수 있다. 이러한 예측부(13)의 예측 결과는 다음의 수학식 16에 의해 생성될 수 있다.
Figure 112015037173898-pat00018
전술한 심층 개념망 구축 시스템을 이용하여 문장을 생성하는 알고리즘을 나타내면 다음의 표 1과 같다.
Figure 112015037173898-pat00019
위의 문장 생성 알고리즘에 의하면, 질의 단어는 이미지 패치를 단어로 바꿈으로써 얻어질 수 있다.
전술한 심층 개념망 구축 시스템의 작동 과정을 간략히 정리하면 다음과 같다. 도 3은 본 발명의 또 다른 실시예에 따른 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법의 흐름도이다.
도 3을 참조하면, 심층 개념망 구축 시스템은, 지속적으로 유입되는 데이터 중 서로 다른 두 개 이상의 모달 정보(모달 1 입력 데이터와 모달 2 입력 데이터 포함)에 대한 지식(영역 지식 등)을 학습하기 위하여 먼저 서로 다른 두 개 이상의 모달 정보를 포함하는 입력 데이터에 대하여 마이크로코드 층을 학습한다(S31). 본 단계(S1)에서 심층 개념망 구축 시스템은 베이지안(Bayesian) 확률 기반으로 마이크로코드 층을 추론할 수 있으나, 이에 한정되지는 않는다. 베이지안 확률은 지식의 상태를 측정하기 위해 사용되는 방법으로서 본 실시예에도 적용가능하다.
다음, 상기의 단계(S31) 후에 마이크로코드 층의 심층 구조의 일부인 1차 개념 층을 학습한다(S32). 그리고, 상기의 단계(S32) 후에 마이크로코드 층의 심층 구조의 다른 일부인 2차 개념 층을 학습한다(S33).
여기서, 상기의 단계들(S31 내지 S33)에서 입력 데이터의 층들의 관계를 설명하는 층들의 구조를 학습한다. 입력 데이터의 층들은 입력 데이터 바로 윗단의 마이크로코드(microcode) 층과 마이크로코드 층 윗단의 여러 단들(stages)의 개념 층들로 구분될 수 있다.
다음, 상기의 단계들(S31, S32 및 S33)에서 각각 학습된 마이크로코드 층, 1차 개념 층, 및 2차 개념 층의 가중치를 학습한다(S34). 본 단계(S34)에서는 각 층의 확률 관계를 설명하는 가중치를 학습한다.
전술한 단계들(S31 내지 S34)에 의하면, 두 개 이상의 모달 데이터를 입력으로 받아 데이터 내의 패턴을 파악하고 이를 심층 개념망 모델로 저장할 수 있다(S35). 이때, 전술한 단계들(S31 내지 S34)에서는 지속적으로 들어오는 데이터를 작은 단위로 모아 그 정보를 모델에 반영함으로써 학습이 점진적으로 이루어지도록 구현된다.
다음, 심층 개념망 구축 시스템의 예측부는 심층 개념망 모델 데이터베이스를 토대로 시스템에 입력된 임의의 모달 데이터로부터 다른 임의의 모달 데이터를 재현한다(S36). 예를 들어, 예측부는 모달 3 입력 데이터를 바탕으로 모달 3 재현 데이터를 예측할 수 있다.
다음은 본 발명의 바람직한 실시예를 참조하여 구체적인 실시예를 소개한다. 본 실시예는 아동용 비디오에서 자막과 화면의 정보에서 시각(Vision)과 언어(Language)의 모달 정보를 동시에 학습하는 수행 과제이다.
일예로 ‘뽀로로’ 만화 비디오 데이터를 사용하였으며, 14개의 DVD, 183개의 에피소드, 1232분 크기의 데이터가 사용되었다. 이 비디오에 있는 자막과 영상에서 추출될 수 있는 이미지 패치(patch)와 단어들이 심층 개념망의 입력 데이터로 사용되었다.
본 실시예에 따른 심층 개념망 학습 설정(setting)에서의 특이 사항은 다음과 같다.
첫째, 이미지 패치를 만화 비디오에서 뽑기 위하여 MSER(maximally stable extremal region)을 사용하였다.
둘째, 패치(patch)를 표현하기 위한 특징(feature)으로 SIFT(scale-invariant feature transform)와 3원색(RGB)을 사용하였다.
셋째, 2차 개념 층의 중요 개념을 애니메이션에서 캐릭터가 등장하는지 여부로 정의하였다.
위의 실시예에서 학습된 결과의 성능과 유용성을 보이기 위하여 두 개의 과제를 수행하였다. 하나는 텍스트를 바탕으로 이미지 정보를 재현 혹은 복원하는 것으로, 이는 대표적으로 검색 서비스 중에서 이미지 검색과 관계가 있다. 다른 하나는, 이미지 정보를 바탕으로 텍스트를 재현하는 것이며, 이는 이미지 자동 태깅이나 자동 설명 기술과 관계가 있다. 각 과제의 결과를 나타내면 도 4 및 도 5와 같다.
도 4는 본 실시예의 심층 개념망 모델을 이용한 비디오 데이터 자막으로부터의 비디오 데이터 영상 정보 생성에 대한 예시도이다. 도 4는 비디오 데이터의 자막에서 획득한 질의 문장(query sentences)을 입력 데이터로 하는 심층 개념망을 통해 제1 시즌(1 season)의 1 내지 52 에피소드들(1~52 episodes) 중에서 생성한 비디오 데이터 영상 정보, 제1-2 시즌(2 seasons)의 1 내지 104 에피소드들(1~104 episodes) 중에서 생성한 비디오 데이터 영상 정보, 및 전체 시즌(all seasons)의 1 내지 183 에피소드들(1~183 episodes) 중에서 생성한 비디오 데이터 영상 정보를 각각 예시한다.
그리고, 도 5는 본 실시예의 심층 개념망 모델을 이용한 비디오 영상 정보로부터 자막으로의 번역에 대한 예시도이다. 도 5는 심층 개념망을 이용하여 에피소드 1 내지 13 및 에피소드 1 내지 36에서 각각 주어진 특정한 두 애니메이션 영상들(scenes)에 대하여 새로운 문장을 생성한 결과이다. 첫번째 영상의 실제 자막은 "And petty taught loopy how to ski"이고, 두번째 영상의 실제 자막은 "Wow poby, you caugth so many already"이며, 이에 대한 UGMC, PRGMC 및 FGMC 방법에 의한 학습 결과를 각각 보여주고 있다. UGMC(uniform graph Monte Carlo), PRGMC(poorer-richer graph Monte Carlo) 및 FGMC(fair graph Monte Carlo)는 본 실시예에 따른 학습 방법으로서 서로 다른 그래프 몬테카를로(graph Monte Carlo) 방법을 이용한 심층 개념망 학습 방법을 의미하며, SPC는 비교 방법으로서 성긴 집단 부호(sparse population coding) 모델을 이용한 학습 방법을 나타낸다.
도 6은 본 실시예에 따른 심층 개념망 모델을 이용하는 번역 성능에 대한 예시도이다.
본 실시예에서는 학습 데이터가 증가함에 따라서 심층 개념망 모델의 이미지 기반 자막 생성 및 캐릭터 기반 이미지 생성에 대한 예측 성능이 증가함을 보여준다.
즉, 도 6의 (a)에 나타낸 바와 같이 비디오 영상을 바탕으로 자막 재생성(Translation performance)을 수행하고 그 성능을 평가한 그래프이다. 성능 평가는 생성된 자막의 단어 개수 중 실제 자막이 포함하는 올바른 단어의 개수(Precision)으로 정하였다. UGMC, PRGMC 및 FGMC는 본 실시예에 따른 학습 방법으로서 서로 다른 그래프 몬테카를로(graph Monte Carlo) 방법을 이용한 심층 개념망 학습 방법을 의미하며, SPC는 비교 방법으로서 성긴 집단 부호(sparse population coding) 모델을 이용한 학습 방법을 나타낸다.
또한, 도 6의 (b)에 나타낸 바와 같이, 서로 다른 캐릭터(Pororo & Crong, Eddy & Rody 등)가 영상에 있다고 가정할 때 특정 질의(query) 예컨대 "It is a good weather. Do you want some cookies?" 이에 대하여 심층 개념망 모델을 통해 1 내지 13 에피스도들과 1 내지 183 에피소드들에서 각각 이미지들을 생성할 수 있다. 이러한 이미지들은 학습 데이터가 증가함에 따라 생성되는 이미지가 복잡해지는 것을 알 수 있다.
도 7은 본 발명의 일실시예에 따른 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법을 수행하는 시스템의 블록도이다.
도 7을 참조하면, 본 실시예에 따른 심층 개념망 구축 방법을 수행하는 시스템(이하, 설명의 편의상 컴퓨팅 장치라고 한다)(70)은, 프로세서(71)와 메모리(72)를 포함한다. 또한, 컴퓨팅 장치(70)는 통신 인터페이스(73)를 더 포함할 수 있다.
본 실시예에 따른 컴퓨팅 장치(70)는 프로세서(4)와 메모리(5)를 포함하여 이루어질 수 있으나, 이에 한정되지는 않으며, 통신 인터페이스(73) 외에 입출력 시스템, 카메라 서브 시스템, 센서 또는 이들의 조합 등의 주변장치를 더 포함할 수 있다. 주변장치는 오디오 장치, 마이크 또는 이들의 조합을 포함할 수 있다.
프로세서(71)는 하나 이상의 코어, 캐시 메모리, 메모리 인터페이스 및 주변장치 인터페이스를 포함할 수 있다. 멀티 코어(multi-core)는 두 개 이상의 독립 코어를 단일 집적 회로로 이루어진 하나의 패키지로 통합한 것을 지칭한다. 단일 코어는 중앙 처리 장치를 지칭할 수 있다. 중앙처리장치(CPU)는 MCU(micro control unit)와 주변 장치(외부 확장 장치를 위한 집적회로)가 함께 배치되는 SOC(system on chip)로 구현될 수 있으나, 이에 한정되지는 않는다. 중앙처리장치는 처리할 명령어를 저장하는 레지스터(register), 비교, 판단, 연산을 담당하는 산술논리연산장치(arithmetic logical unit, ALU), 명령어의 해석과 실행을 위해 CPU를 내부적으로 제어하는 제어부(control unit), 내부 버스 등을 구비할 수 있다.
또한, 프로세서(71)는 하나 이상의 데이터 프로세서, 이미지 프로세서, 또는 코덱(CODEC)을 포함할 수 있으나, 이에 한정되지는 않는다. 데이터 프로세서, 이미지 프로세서 또는 코덱은 별도로 구성될 수도 있다. 주변장치 인터페이스는 프로세서(71)와 입출력 시스템 및 여러 다른 주변 장치를 연결하고, 메모리 인터페이스는 프로세서(71)와 메모리(72)를 연결한다.
또한, 프로세서(71)는 메모리 컨트롤러를 구비할 수 있다. 메모리 컨트롤러는 메모리(72) 상의 저장 영역에 대한 주소와 주소에 어떻게 접근할지를 제어하고, 메모리(72)의 특정 주소에 데이터를 기록하거나 읽어낼 수 있다. 또한, 메모리 컨트롤러는 메모리(72)의 리프레쉬(refresh)를 수행하거나 동작 전압을 공급하거나, 프로세서(71)와 메모리(72) 사이에서 이들 간의 의사소통 또는 신호 송수신을 담당할 수 있다. 한편, 메모리 컨트롤러는 프로세서(71)에 탑재되지 않고, 메모리(72)와 함께 별도의 메모리 시스템을 구성하도록 구현될 수 있다.
전술한 구성의 프로세서(71)는 여러 가지의 소프트웨어 프로그램을 실행하여 컴퓨팅 장치(70)에서의 멀티 모달리티 데이터 복원 등을 위해 데이터 획득, 데이터 처리 및 데이터 출력을 수행할 수 있다. 또한, 프로세서(71)는 메모리(72)에 저장되어 있는 특정한 소프트웨어 모듈(명령어 세트)을 실행하여 해당 모듈에 대응하는 특정한 여러 가지의 기능을 수행할 수 있다. 즉, 프로세서(71)는 메모리(72)에 저장된 소프트웨어 모듈들에 의해 구현되는 심층 개념망 모델에 의해 컴퓨팅 장치(70)에 입력되는 모달 입력 데이터에서 임의의 모달 데이터를 재현할 수 있다.
메모리(72)는 프로세서(71) 내의 메모리 인터페이스에 결합될 수 있다. 메모리(72)는 하나 이상의 자기 디스크 저장 장치와 같은 고속 랜덤 액세스 메모리 및/또는 비휘발성 메모리, 하나 이상의 광 저장 장치 및/또는 플래시 메모리를 포함할 수 있다.
또한, 메모리(72)는 소프트웨어, 프로그램, 명령어 집합 또는 이들의 조합을 저장할 수 있다. 소프트웨어의 구성요소는 운영 체제(operating system) 모듈, 통신 모듈, 그래픽 모듈, 사용자 인터페이스 모듈, MPEG(moving picture experts group) 모듈, 카메라 모듈, 하나 이상의 애플리케이션 모듈 등을 포함할 수 있다. 모듈은 명령어들의 집합으로서 명령어 세트(instruction set) 또는 프로그램으로 표현될 수 있다.
예를 들어, 메모리(72)는 마이크로코드 층의 학습을 위한 제1 모듈, 1차 개념 층 학습을 위한 제2 모듈, 2차 개념 층 학습을 위한 제3 모듈, 마이크로코드 층 가중치 학습을 위한 제4 모듈 및 모달 입력 데이터로부터 모달 재현 데이터의 예측을 위한 제5 모듈 등을 포함할 수 있다.
운영 체제는 예컨대 MS(microsoft) WINDOWS, LINUX, 다윈(Darwin), RTXC, UNIX, OS X, iOS, 맥 OS, VxWorks, 구글 OS, 안드로이드(android), 바다(삼성 OS), 플랜 9 등과 같은 내장 운영 체제를 포함하고, 컴퓨팅 장치의 시스템 작동(system operation)을 제어하기 위한 여러 가지의 구성요소를 구비할 수 있다.
심층 개념망 모델 구축이나 이와 관련된 기능의 제어를 제외한 일반적인 시스템 작동 또는 그 기능의 제어를 위해, 컴퓨팅 장치(70)는 예를 들어 메모리 관리 및 제어, 저장 하드웨어 제어 및 관리, 전력 제어 및 관리 등을 위한 수단이나 이러한 수단에 상응하는 기능을 수행하는 구성부를 포함할 수 있다. 전술한 운영 체제는 여러 가지의 하드웨어(장치)와 소프트웨어 구성요소(모듈) 사이의 통신을 수행하는 기능도 구비할 수 있으나, 이에 한정되지는 않는다.
통신 인터페이스(73)는 하나 이상의 유선 및/또는 무선 통신 서브시스템을 포함할 수 있다. 무선 통신 서브시스템은 무선 주파수(radio frequency) 수신기 및 송수신기 및/또는 광(예컨대, 적외선) 수신기 또는 송수신기를 포함할 수 있다. 통신 인터페이스는 네트워크 예를 들어, GSM(Global System for Mobile Communication) 네트워크, EDGE(Enhanced Data GSM Environment) 네트워크, CDMA(Code Division Multiple Access) 네트워크, W-CDMA(W-Code Division Multiple Access) 네트워크, LTE(Long Term Evolution) 네트워크, OFDMA(Orthogonal Frequency Division Multiple Access) 네트워크, WiMax 네트워크, Wi-Fi(Wireless Fidelity) 네트워크, Bluetooth 네트워크 등에 연결되어 적어도 하나 이상의 통신 프로토콜을 지원할 수 있다.
컴퓨팅 장치(70)에 구비될 수 있는 주변장치로서, 입출력 시스템은 터치 스크린 제어기 및/또는 기타 입출력 제어기를 포함할 수 있다. 터치스크린 제어기는 터치 스크린에 연결될 수 있다. 터치 스크린 및 터치 스크린 제어기는, 이하에 한정되지는 않지만, 터치 스크린과의 하나 이상의 접촉점을 결정하기 위한 용량성, 저항성, 적외선 및 표면 음향파 기술들뿐 아니라 기타 근접 센서 배열 또는 기타 요소들을 포함하는 임의의 멀티 터치 감지 기술을 이용하여 접촉 및 움직임 또는 이들의 중단을 검출할 수 있다.
터치스크린은 디스플레이 모듈의 일종으로서 컴퓨팅 장치(70) 상의 사용자 인터페이스로서 기능할 수 있다. 즉, 터치스크린은 사용자의 터치 입력을 프로세서(71)에 전달할 수 있다. 또한 터치스크린은 컴퓨팅 장치(70)에서 멀티 모달리티 데이터의 입력, 처리 및 출력 등에 대한 정보를 시각적으로 보여주는 수단 및/또는 구성부로서 동작할 수 있다. 시각적 출력(visual output)은 텍스트(text), 그래픽(graphic), 비디오(video), 또는 이들의 조합 형태를 가질 수 있다.
전술한 터치스크린은 여러 가지 디스플레이 타입들 중 어느 한 형태로 제조될 수 있다. 예를 들어 터치스크린은, 이에 한정되지는 않지만, LCD(liquid crystal display), LED(light emitting diode), LPD(light emitting polymer display), OLED(organic light emitting diode), AMOLED(active matrix organic light emitting diode) 또는 FLED(flexible LED) 형태로 구현될 수 있다.
또한, 컴퓨팅 장치(70)에 구비될 수 있는 주변장치로서, 기타 입출력 제어기는 컴퓨팅 장치(70)에 탑재되거나 결합하는 기타 입출력 장치에 연결될 수 있다. 기타 입출력 장치는 하나 이상의 버튼, 로커(rocker) 스위치, 섬 휠(thumb-wheel), 다이얼(dial), 스틱(stick), 스타일러스와 같은 포인터 장치, 오디오 장치, 또는 이들의 조합 등을 포함할 수 있다.
한편, 본 실시예에 따른 컴퓨팅 장치(70)는 전술한 구성으로 한정되지 않고, 하나 이상의 스트림 프로세싱(processing) 및/또는 애플리케이션 특정 집적 회로(ASIC, Application Specific Integrated circuit)를 포함하는 하드웨어, 소프트웨어 또는 이들의 조합에 의해 구현되고 메모리(72) 등에 저장되는 심층 개념망 모델 데이터베이스를 통해 멀티 모달리티 입력 데이터로부터 임의의 멀티 모달리티 데이터를 재현 또는 복원할 수 있다.
한편, 전술한 실시예들에 있어서, 심층 개념망 구축 시스템의 구성요소들(도 1의 111 내지 114, 12 및 13 참조)은 컴퓨터 장치에 탑재되는 기능 블록이나 모듈일 수 있으나, 이에 한정되지 않는다. 전술한 구성요소들은 이들이 수행하는 일련의 기능을 구현하기 위한 소프트웨어 형태로 컴퓨터 판독 가능 매체(기록매체)에 저장되거나 혹은 캐리어 형태로 원격지에 전송되어 다양한 컴퓨터 장치에서 동작하도록 구현될 수 있다. 이 경우, 컴퓨터 판독 가능 매체는 네트워크를 통해 연결되는 복수의 컴퓨터 장치나 클라우드 시스템에 결합할 수 있고, 복수의 컴퓨터 장치나 클라우드 시스템 중 적어도 하나 이상은 메모리 시스템에 본 실시예의 심층 개념망 구축 시스템 및/또는 심층 개념망 모델 데이터베이스를 구현한 프로그램이나 소스 코드 등을 저장할 수 있다.
즉, 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하는 형태로 구현될 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수 있다.
또한, 컴퓨터 판독 가능 매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 하드웨어 장치는 본 실시예의 소음 제거 방법을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
11: 학습부
12: 심층 개념망 모델 데이터베이스
13: 예측부
111: 마이크로코드 층 구조 학습부
112: 1차 개념 층 학습부
113: 2차 개념 층 학습부
114: 마이크로코드 층 가중치 학습부

Claims (20)

  1. 입력 데이터를 처리하여 출력 데이터를 생성하는 컴퓨팅 장치에서 심층 개념망을 구축하는 방법으로서,
    실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조와 개념 층을 학습하는 단계; 및
    상기 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 상기 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하는 단계를 포함하며,
    상기 심층 구조와 개념 층을 학습하는 단계는, 상기 입력 데이터에 대하여 마이크로코드 층을 학습하고, 상기 마이크로코드 층에 대한 1차 개념 층을 학습하고, 상기 1차 개념 층에 대한 2차 개념 층을 학습하며,
    상기 가중치를 학습하는 단계는, 상기 마이크로코드 층, 상기 1차 개념 층, 및 상기 2차 개념 층에 대한 가중치를 학습하며,
    상기 마이크로코드 층은 상기 입력 데이터를 작은 단위로 모은 마이크로코드들의 집합이고, 상기 1차 개념 층은 상기 마이크로코드 층과 다른 상기 마이크로코드 층의 심층 구조의 일부이고, 상기 2차 개념 층은 상기 마이크로코드 층의 심층 구조의 다른 일부인, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 청구항 1에 있어서,
    상기 가중치를 학습하는 단계 후에, 상기 가중치의 학습 결과에 기초하여 심층 개념망 모델을 생성하는 단계를 더 포함하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  7. 청구항 6에 있어서,
    상기 심층 개념망 모델을 토대로 모달 입력 데이터에서 모달 재현 데이터를 예측하는 단계를 더 포함하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  8. 청구항 1에 있어서,
    상기 심층 구조와 개념 층을 학습하는 단계는, 상기 입력 데이터에 대하여 마이크로코드 층을 베이지안(Bayesian) 확률 기반으로 추론하여 학습하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  9. 청구항 1에 있어서,
    상기 심층 구조와 개념 층을 학습하는 단계는, 엣지 형태로 된 파라미터 공간의 구조를 학습하는 기계학습 알고리즘에서 상기 파라미터 공간의 구조를 학습하거나 또는 상기 마이크로코드(microcode) 층과 상기 마이크로코드 층의 심층 구조를 학습하는데에 그래프 몬테카를로(graph Monte Carlo) 알고리즘을 이용하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  10. 청구항 9에 있어서,
    상기 그래프 몬테카를로 알고리즘은, 균등 그래프 몬테카를로(uniform graph Monte Carlo, UGMC) 방법, 빈익빈 부익부 그래프 몬테카를로(poorer-richer graph Monte Carlo, PRGMC) 방법, 공정한 그래프 몬테카를로(fair graph Monte Carlo, FGMC) 중 어느 하나 이상을 포함하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  11. 청구항 9에 있어서,
    상기 1차 개념 층에 대한 학습은, 유사도를 사용하여 실시간 군집화를 수행하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  12. 청구항 11에 있어서,
    상기 2차 개념 층에 대한 학습은, 상기 1차 개념 층의 노드들을 각 모달과 태스크에 맞는 영역 지식을 사용하여 관측값의 함수로 미리 지정하여 사용하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  13. 청구항 12에 있어서,
    상기 가중치를 학습하는 단계는, 상기 2차 개념 층에 대한 학습을 위하여 추계학적인 기울기 상승(stochastic gradient ascent)을 사용하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법.
  14. 심층 모델(deep architecture) 또는 깊은 학습(deep learning)을 이용하는 심층 개념망 구축 시스템으로서,
    프로그램을 저장하는 메모리; 및
    상기 메모리에 연결되어 상기 프로그램을 수행하는 프로세서를 포함하되,
    상기 프로세서는 상기 프로그램에 의해 실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조와 개념 층을 학습하고, 상기 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 상기 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하며,
    상기 심층 구조와 개념 층에 대한 학습은, 상기 입력 데이터에 대하여 마이크로코드 층을 학습하고, 상기 마이크로코드 층에 대한 1차 개념 층을 학습하고, 상기 1차 개념 층에 대한 2차 개념 층을 학습하며,
    상기 가중치에 대한 학습은, 상기 마이크로코드 층, 상기 1차 개념 층, 및 상기 2차 개념 층에 대한 가중치를 학습하며,
    상기 마이크로코드 층은 상기 입력 데이터를 작은 단위로 모은 마이크로코드들의 집합이고, 상기 1차 개념 층은 상기 마이크로코드 층과 다른 상기 마이크로코드 층의 심층 구조의 일부이고, 상기 2차 개념 층은 상기 마이크로코드 층의 심층 구조의 다른 일부인, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 시스템.
  15. 삭제
  16. 청구항 14에 있어서,
    상기 프로세서는, 상기 가중치의 학습 결과에 기초하여 심층 개념망 모델을 생성하고, 상기 심층 개념망 모델을 토대로 임의의 모달 입력 데이터에서 모달 재현 데이터를 예측하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 시스템.
  17. 심층 모델을 이용하여 입력 데이터를 처리하여 출력 데이터를 생성하는 심층 개념망 구축 시스템으로서,
    실시간 들어오는 입력 데이터에 대하여 서로 다른 두 개 이상의 모달 정보에 대한 심층 구조 및 개념 층을 학습하는 제1 학습부; 및
    상기 입력 데이터의 확률 분포에 맞게 모델의 구조를 변화시키기 위하여 상기 제1 학습부에서 학습된 심층 구조와 개념 층에서의 학습 결과들에 대한 가중치를 학습하는 제2 학습부를 포함하며,
    상기 제1 학습부는, 상기 입력 데이터에 대하여 마이크로코드 층을 학습하는 마이크로코드 층 구조 학습부, 상기 마이크로코드 층에 대한 1차 개념 층을 학습하는 1차 개념 층 학습부, 및 상기 1차 개념 층에 대한 2차 개념 층을 학습하는 2차 개념 층 학습부를 포함하며,
    상기 제2 학습부는, 상기 마이크로코드 층 구조 학습부, 상기 1차 개념 층 학습부 및 상기 2차 개념 층 학습부에서 학습된 상기 마이크로코드 층, 상기 1차 개념 층, 및 상기 2차 개념 층에 대한 가중치를 학습하며,
    상기 마이크로코드 층은 상기 입력 데이터를 작은 단위로 모은 마이크로코드들의 집합이고, 상기 1차 개념 층은 상기 마이크로코드 층과 다른 상기 마이크로코드의 심층 구조의 일부이고, 상기 2차 개념 층은 상기 마이크로코드 층의 심층 구조의 다른 일부인, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 시스템.
  18. 삭제
  19. 삭제
  20. 청구항 17에 있어서,
    상기 가중치의 학습 결과에 의해 생성되는 심층 개념망 모델을 저장하는 데이터베이스에 연결되어 상기 심층 개념망 모델을 토대로 임의의 모달 입력 데이터에서 모달 재현 데이터를 예측하는 예측부를 더 포함하는, 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 시스템.
KR1020150053829A 2015-04-16 2015-04-16 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템 KR101646926B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150053829A KR101646926B1 (ko) 2015-04-16 2015-04-16 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150053829A KR101646926B1 (ko) 2015-04-16 2015-04-16 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR101646926B1 true KR101646926B1 (ko) 2016-08-09

Family

ID=56712660

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150053829A KR101646926B1 (ko) 2015-04-16 2015-04-16 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR101646926B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101779800B1 (ko) * 2016-09-27 2017-09-19 이재준 기계학습 기반 다면적 성장 평가 방법 및 시스템
KR20180080097A (ko) * 2017-01-03 2018-07-11 한국전자통신연구원 기계학습 지식 및 자동화된 기계 학습 절차 기반의 자가 학습 시스템
CN112686060A (zh) * 2020-12-29 2021-04-20 科大讯飞股份有限公司 文本翻译方法、装置、电子设备和存储介质
US11651214B2 (en) 2017-11-17 2023-05-16 Samsung Electronics Co., Ltd. Multimodal data learning method and device
CN117875407A (zh) * 2024-03-11 2024-04-12 中国兵器装备集团自动化研究所有限公司 一种多模态持续学习方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009111387A1 (en) * 2008-03-03 2009-09-11 Biospinex, Llc Methods and devices for in situ tissue navigation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009111387A1 (en) * 2008-03-03 2009-09-11 Biospinex, Llc Methods and devices for in situ tissue navigation

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101779800B1 (ko) * 2016-09-27 2017-09-19 이재준 기계학습 기반 다면적 성장 평가 방법 및 시스템
KR20180080097A (ko) * 2017-01-03 2018-07-11 한국전자통신연구원 기계학습 지식 및 자동화된 기계 학습 절차 기반의 자가 학습 시스템
KR102098897B1 (ko) 2017-01-03 2020-04-09 한국전자통신연구원 기계학습 지식 및 자동화된 기계 학습 절차 기반의 자가 학습 시스템
US11651214B2 (en) 2017-11-17 2023-05-16 Samsung Electronics Co., Ltd. Multimodal data learning method and device
CN112686060A (zh) * 2020-12-29 2021-04-20 科大讯飞股份有限公司 文本翻译方法、装置、电子设备和存储介质
CN112686060B (zh) * 2020-12-29 2024-04-30 中国科学技术大学 文本翻译方法、装置、电子设备和存储介质
CN117875407A (zh) * 2024-03-11 2024-04-12 中国兵器装备集团自动化研究所有限公司 一种多模态持续学习方法、装置、设备及存储介质
CN117875407B (zh) * 2024-03-11 2024-06-04 中国兵器装备集团自动化研究所有限公司 一种多模态持续学习方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN111581510B (zh) 分享内容处理方法、装置、计算机设备和存储介质
US10853726B2 (en) Neural architecture search for dense image prediction tasks
CN111274811B (zh) 地址文本相似度确定方法以及地址搜索方法
KR101646926B1 (ko) 멀티 모달리티 데이터 복원을 위한 심층 개념망 구축 방법 및 그 시스템
WO2021139191A1 (zh) 数据标注的方法以及数据标注的装置
WO2023065211A1 (zh) 一种信息获取方法以及装置
CN108304376B (zh) 文本向量的确定方法、装置、存储介质及电子装置
CN111814475A (zh) 用户画像构建方法、装置、存储介质和电子设备
CN116935188B (zh) 模型训练方法、图像识别方法、装置、设备及介质
CN114443899A (zh) 视频分类方法、装置、设备及介质
CN115131698A (zh) 视频属性确定方法、装置、设备及存储介质
CN115905528A (zh) 具有时序特征的事件多标签分类方法、装置及电子设备
Kuriakose et al. SceneRecog: a deep learning scene recognition model for assisting blind and visually impaired navigate using smartphones
CN116227467A (zh) 模型的训练方法、文本处理方法及装置
CN116975615A (zh) 基于视频多模态信息的任务预测方法和装置
CN113111917B (zh) 一种基于双重自编码器的零样本图像分类方法及装置
CN110019952B (zh) 视频描述方法、系统及装置
CN116860114B (zh) 基于人工智能的扩展现实交互方法及相关装置
CN111445545B (zh) 一种文本转贴图方法、装置、存储介质及电子设备
CN111797856B (zh) 建模方法、装置、存储介质及电子设备
CN115204318B (zh) 事件自动层级分类方法及电子设备
CN116957006A (zh) 预测模型的训练方法、装置、设备、介质及程序产品
CN115526390A (zh) 用于预测企业风险的方法、装置及存储介质
CN112632962A (zh) 人机交互系统中实现自然语言理解方法和装置
CN111797299A (zh) 模型训练方法、网页分类方法、装置、存储介质及设备

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant