KR20230170215A - 비디오-텍스트 질의 응답을 위한 학습 장치 - Google Patents

비디오-텍스트 질의 응답을 위한 학습 장치 Download PDF

Info

Publication number
KR20230170215A
KR20230170215A KR1020220070445A KR20220070445A KR20230170215A KR 20230170215 A KR20230170215 A KR 20230170215A KR 1020220070445 A KR1020220070445 A KR 1020220070445A KR 20220070445 A KR20220070445 A KR 20220070445A KR 20230170215 A KR20230170215 A KR 20230170215A
Authority
KR
South Korea
Prior art keywords
feature
video
video data
text
learning
Prior art date
Application number
KR1020220070445A
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 KR1020220070445A priority Critical patent/KR20230170215A/ko
Publication of KR20230170215A publication Critical patent/KR20230170215A/ko

Links

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/732Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/738Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Library & Information Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 개시의 일 실시예에 따르면, 비디오-텍스트 질의 응답을 위한 학습 장치는 비디오 데이터의 제1 특징을 입력으로 하여 비디오 데이터의 통합 특징을 출력하도록 구성된 비디오 특징 추출 모듈 및 텍스트 데이터를 입력으로 하여 텍스트 데이터의 제2 특징을 출력하도록 구성된 텍스트 특칭 추출 모듈 및 비디오 데이터를 입력으로 하여 제1 특징을 출력하도록 사전 학습된 모델로부터 제1 특징을 획득하고, 제1 특징을 기초로 비디오 데이터 또는 텍스트 데이터의 슈도 정답(Pseudo GroundTruth)을 결정하고, 통합 특징, 제2 특징 및 슈도 정답을 기초로 하는 손실 함수를 이용하여 텍스트 데이터 및 비디오 데이터의 관계성을 학습하는 학습 모듈을 포함할 수 있다.

Description

비디오-텍스트 질의 응답을 위한 학습 장치{LEARNING DEVICE FOR VIDEO-TEXT QUESTION ANSWERING}
본 개시는 비디오-텍스트 질의 응답을 위한 학습 장치에 관한 것이다.
정보의 양이 빠르게 증가하면서 필요한 정보만을 효율적으로 얻기 위한 질의 응답 시스템의 중요도가 증가하고 있다. 그 중에서도 비디오-텍스트 질의 응답 모델은 비디오나 텍스트를 입력으로 받아서 적절한 응답을 도출하도록 설계된 모델로, 비디오와 텍스트의 관계를 이용하여 질의 응답과 관련한 다양한 과제를 해결할 수 있다.
그러나, 비디오는 언어로만 구성된 텍스트와는 다르게 다양한 속성의 정보를 포함하고 있어, 길고 복잡한 비디오에 대한 질의 응답을 위해서는 높은 수준의 추론 능력이 요구된다. 그러나, 종래 비디오-텍스트 질의 응답 모델은 비디오와 텍스트를 유사한 데이터로 취급하여 통합된 입력을 받는 모델로 설계되어, 실제 서비스 적용에 불가능할 정도로 비효율적이다는 문제가 있다. 또한, 종래 모델들은 다양한 유형의 비디오에 대해 질의 응답을 수행하기에는 성능이 정체된 실정이다.
본 개시에서는 상술한 문제를 해결하기 위하여 비디오 및/또는 텍스트 각각의 모션(motion), 어피어런스(appearance), 오디오(audio) 등의 속성을 구분하여 학습하고, 사전 학습된 모델에 의해 가이드된 슈도(pseudo) 정답을 활용하여 학습하는 비디오-텍스트 질의 응답을 위한 학습 장치가 제공된다.
본 개시의 일 실시예에 따르면, 비디오-텍스트 질의 응답을 위한 학습 장치는 비디오 데이터의 제1 특징을 입력으로 하여 비디오 데이터의 통합 특징을 출력하도록 구성된 비디오 특징 추출 모듈, 텍스트 데이터를 입력으로 하여 텍스트 데이터의 제2 특징을 출력하도록 구성된 텍스트 특칭 추출 모듈, 비디오 데이터를 입력으로 하여 제1 특징을 출력하도록 사전 학습된 모델로부터 제1 특징을 획득하고, 제1 특징을 기초로 비디오 데이터 또는 텍스트 데이터의 슈도 정답(Pseudo GroundTruth)을 결정하고, 통합 특징, 제2 특징 및 슈도 정답을 기초로 하는 손실 함수를 이용하여 텍스트 데이터 및 비디오 데이터의 관계성을 학습하는 학습 모듈을 포함할 수 있다.
일 실시예에 따르면, 제1 특징은 비디오 데이터의 제1 속성과 연관된 제1 서브 특징 및 비디오 데이터의 제2 속성과 연관된 제2 서브 특징을 포함하고, 제2 특징으로부터 제1 속성과 연관된 제3 서브 특징 및 제2 속성과 연관된 제4 서브 특징을 추출할 수 있다.
일 실시예에 따르면, 슈도 정답은 제1 속성과 연관된 제1 슈도 정답 및 제2 속성과 연관된 제2 슈도 정답을 포함하고, 손실 함수는 제1 슈도 정답과 제3 서브 특징을 기초로 하는 손실 함수 및 제2 슈도 정답과 제4 서브 특징을 기초로 하는 손실 함수를 포함할 수 있다.
일 실시예에 따르면, 제1 속성은 비디오 데이터의 어피어런스(appearance)와 연관된 속성을 포함하고, 제2 속성은 비디오 데이터의 모션(motion)과 연관된 속성을 포함할 수 있다.
일 실시예에 따르면, 학습 모듈은 제2 특징을 분해하여 제3 서브 특징 및 제4 서브 특징을 획득할 수 있다.
일 실시예에 따르면, 제1 특징은 비디오 데이터의 복수의 속성과 각각 연관된 복수의 서브 특징을 포함하고, 복수의 속성은 비디오 데이터의 어피어런스, 모션, 장면(scene), 발화(speech) 및 소리(audio) 중 적어도 하나와 연관된 속성을 포함할 수 있다.
일 실시예에 따르면, 학습 모듈은 사전 학습된 모델로부터 복수의 비디오 데이터 각각에 대한 복수의 특징을 획득하고, 복수의 비디오 데이터는 비디오 데이터를 포함하고, 복수의 특징은 제1 특징을 포함하고, 슈도 정답은 복수의 특징을 기초로 산출된 유사도에 따라 결정될 수 있다.
일 실시예에 따르면, 학습 모듈은 복수의 특징 중 유사도가 가장 높은 특징을 슈도 정답으로 결정할 수 있다.
일 실시예에 따르면, 유사도가 가장 높은 특징은 복수의 비디오 데이터 중 비디오 데이터가 아닌 비디오 데이터로부터 추출된 특징을 포함할 수 있다.
일 실시예에 따르면, 손실 함수는 통합 특징과 제2 특징을 기초로 하는 손실 함수를 포함할 수 있다.
일 실시예에 따르면, 손실 함수는 정규화가 수행된 제2 특징을 기초로 할 수 있다.
본 개시의 다른 실시예에 따르면, 적어도 하나의 프로세서에 의해 수행되는 비디오-데이터 질의 응답을 위한 학습 방법은 비디오 데이터를 입력으로 하여 비디오 데이터의 제1 특징을 출력하도록 사전 학습된 모델로부터 제1 특징을 획득하는 단계, 제1 특징을 입력으로 하여 비디오 데이터의 통합 특징을 출력하는 단계, 텍스트 데이터를 입력으로 하여 텍스트 데이터의 제2 특징을 출력하는 단계, 제1 특징을 기초로 비디오 데이터 또는 텍스트 데이터의 슈도 정답(Pseudo GroundTruth)을 결정하는 단계 및 통합 특징, 제2 특징 및 슈도 정답을 기초로 하는 손실 함수를 이용하여 텍스트 데이터 및 비디오 데이터의 관계성을 학습하는 단계를 포함할 수 있다.
본 개시의 또 다른 실시예에 따르면, 비디오-텍스트 질의 응답을 위한 학습 방법을 실행시키도록 컴퓨터로 판독 가능한 기록 매체에 기록된 컴퓨터 프로그램이 제공될 수 있다.
본 개시의 일 실시예에 따르면, 비디오 및/또는 텍스트의 정적 특징과 동적 특징을 구분하여 학습함으로써 사용자의 질의에 정확히 매칭되는 응답을 출력하는 비디오-텍스트 질의 응답 모델을 설계할 수 있다.
본 개시의 일 실시예에 따르면, 특정 속성의 특징을 출력하도록 사전 학습된 모델을 활용함으로써 학습 모델을 단순화할 수 있다.
본 개시의 일 실시예에 따르면, 학습 데이터셋에 포함된 샘플들 간의 관계성이 반영되도록 사전 학습된 모델로부터 추출된 특징들 사이의 유사도를 기초로 슈도 정답을 결정하고, 결정된 슈도 정답을 이용하여 비디오와 텍스트 사이의 관계를 학습함으로써, 성능이 극대화된 비디오-텍스트 질의 응답 모델을 설계할 수 있다.
본 개시의 일 실시예에 따르면, 비디오-텍스트 해석능력을 근본적으로 향상시킴으로써, 종래 동영상을 업로드할 시 사용자가 필요한 정보를 직접 기재해야 했던 것과는 다르게 자동 기재 서비스를 제공할 수 있다.
도 1은 본 개시의 일 실시예에 따른 비디오-텍스트 질의 응답을 위한 학습을 수행하는 모델의 아키텍처이다.
도 2는 본 개시의 일 실시예에 따른 비디오-텍스트 질의 응답을 위한 학습 모델의 구현을 위하여, 정보 처리 시스템이 복수의 사용자 단말과 통신 가능하도록 연결된 구성을 나타내는 개요도이다.
도 3은 본 개시의 일 실시예에 따른 사용자 단말 및 정보 처리 시스템의 내부 구성을 나타내는 블록도이다.
도 4는 본 개시의 일 실시예에 따른 학습 장치의 구성을 나타내는 블록도이다.
도 5는 본 개시의 일 실시예에 따른 전문가들의 아키텍처이다.
도 6은 본 개시의 일 실시예에 따라 제2 학습 모듈이 슈도 정답을 결정하는 예시를 나타낸다.
도 7은 본 개시의 일 실시예에 따른 비디오-텍스트 질의 응답을 위한 학습 모델을 나타내는 예시도이다.
이하, 본 개시의 실시를 위한 구체적인 내용을 첨부된 도면을 참조하여 상세히 설명한다. 다만, 이하의 설명에서는 본 개시의 요지를 불필요하게 흐릴 우려가 있는 경우, 널리 알려진 기능이나 구성에 관한 구체적 설명은 생략하기로 한다.
첨부된 도면에서, 동일하거나 대응하는 구성요소에는 동일한 참조부호가 부여되어 있다. 또한, 이하의 실시예들의 설명에 있어서, 동일하거나 대응되는 구성요소를 중복하여 기술하는 것이 생략될 수 있다. 그러나 구성요소에 관한 기술이 생략되어도, 그러한 구성요소가 어떤 실시예에 포함되지 않는 것으로 의도되지는 않는다.
개시된 실시예의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 통상의 기술자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 개시된 실시예에 대해 구체적으로 설명하기로 한다. 본 명세서에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다. 또한, 복수의 표현은 문맥상 명백하게 복수인 것으로 특정하지 않는 한, 단수의 표현을 포함한다. 명세서 전체에서 어떤 부분이 어떤 구성요소를 '포함'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
본 개시의 일 실시예에 따르면, '메모리'는 전자 정보를 저장 가능한 임의의 전자 컴포넌트를 포함하도록 넓게 해석되어야 한다. '메모리'는 임의 액세스 메모리(RAM), 판독-전용 메모리(ROM), 비-휘발성 임의 액세스 메모리(NVRAM), 프로그램가능 판독-전용 메모리(PROM), 소거-프로그램가능 판독 전용 메모리(EPROM), 전기적으로 소거가능 PROM(EEPROM), 플래쉬 메모리, 자기 또는 광학 데이터 저장장치, 레지스터들 등과 같은 프로세서-판독가능 매체의 다양한 유형들을 지칭할 수도 있다. 프로세서가 메모리로부터 정보를 판독하고/하거나 메모리에 정보를 기록할 수 있다면 메모리는 프로세서와 전자 통신 상태에 있다고 불린다.
도 1은 본 개시의 일 실시예에 따른 비디오-텍스트 질의 응답을 위한 학습을 수행하는 모델(100)(이하, '학습 모델'이라 한다)의 아키텍처이다. 여기서, 학습 모델(100)은 비디오(또는, 이미지)에 대한 질의로부터 해당 비디오와 연관된 텍스트를 응답으로 출력하는 신경망 모델의 기초가 될 수 있다. 또한, 학습 모델(100)은 텍스트에 대한 질의로부터 해당 텍스트와 연관된 비디오를 응답으로 출력하는 신경망 모델의 기초가 될 수 있다.
학습 모델(100)은 기 마련된 데이터셋을 이용하여, 비디오로부터 해당 비디오와 쌍으로 구성된 텍스트를 출력하거나, 텍스트로부터 해당 텍스트와 쌍으로 구성된 비디오를 출력하도록 학습될 수 있다. 구체적으로, 학습 모델(100)은 비디오로부터 추출된 특징을 기초로 해당 비디오를 지시하는 텍스트를 출력하도록 학습될 수 있다. 또는, 학습 모델(100)은 텍스트로부터 추출된 특징을 기초로 해당 텍스트가 지시하는 비디오를 출력하도록 학습될 수 있다. 이 때, 비디오는 복수의 속성 각각에 대한 특징들을 포함할 수 있다. 여기서, 복수의 속성은 어피어런스(appearance) 속성, 배경(background) 속성, 모션(motion) 속성, 오디오(audio) 속성, 발화(speech) 속성 등을 포함할 수 있다. 예를 들어, 잔디밭에서 야구하는 사람에 대한 비디오는 어피어런스(appearance) 속성에 대한 특징으로서 야구공, 야구 유니폼, 글로브(glove), 배트 등과 연관된 특징(들)을 포함할 수 있다. 또한, 잔디밭에서 야구하는 사람에 대한 비디오는 배경(background) 속성에 대한 특징으로서 잔디밭의 질감, 색상 등과 연관된 특징(들)을 포함할 수 있다. 또한, 잔디밭에서 야구하는 사람에 대한 비디오는 모션(motion) 속성에 대한 특징으로서 야구 배트를 휘두르는 모션, 야구공이 날아가는 모션 등과 연관된 특징(들)을 포함할 수 있다.
한편, 학습 모델(100)이 학습에 이용하는 데이터셋은 제한적이므로, 학습 모델(100)을 기초로 설계된 신경망 모델에 학습 과정에서 충분히 경험하지 못한 데이터가 입력되는 경우, 신경망 모델은 일정 수준의 성능을 출력하지 못하게 된다. 예를 들어, 학습 모델(100)은 '잔디밭에서 야구하는 사람', '흙바닥에서 야구하는 사람', '잔디밭에서 축구하는 사람' 및 '흙바닥에서 축구하는 사람'에 대한 비디오가 각각 100, 10, 10 및 100개 포함된 데이터셋을 이용하여 학습을 수행할 수 있다. 그리고 나서, 학습 모델(100)을 기초로 설계된 신경망 모델에 '흙바닥에서 야구하는 사람'에 대한 비디오가 입력되면, 신경망 모델은 해당 비디오로부터'흙바닥'의 질감, 색상 등과 연관된 특징을 추출하여 '흙바닥에서 축구하는 사람'을 지시하는 텍스트를 출력할 수 있다. 이는, 학습 모델(100)이 학습 과정에서 100개의 '흙바닥에서 축구하는 사람'에 대한 비디오로부터 추출된 '흙바닥'의 특징으로부터 '축구'와 연관된 텍스트를 출력하도록 충분히 학습되었기 때문이다. 이와 같은 문제를 해결하기 위해, 본 개시의 학습 모델(100)은 비디오의 복수의 속성을 구분하여 학습을 수행할 수 있다. 한편, 도 1을 참고하면 학습 모델(100)은 비디오 특징 추출 모듈(110), 텍스트 특징 추출 모듈(120) 및 학습 모듈(130)을 포함할 수 있다.
비디오 특징 추출 모듈(110)은 비디오 데이터(미도시)가 입력된 사전 훈련된 비디오 특징 추출 모델들(이하, '전문가(들)'라 한다)로부터 비디오 데이터 특징(112)을 획득할 수 있다. 여기서, 전문가(들)는 입력된 비디오 데이터로부터 어피어런스(appearance) 특징을 추출하도록 사전 학습된 모델, 모션(motion) 특징을 추출하도록 사전 학습된 모델, 오디오(audio) 특징을 추출하도록 사전 학습된 모델 및 발화(speech) 특징을 추출하도록 사전 학습된 모델 중 적어도 하나를 포함할 수 있다. 이를 위해, 학습 모델(100)은 전문가(들)를 포함하거나, 전문가(들)와 연결될 수 있다.
비디오 특징 추출 모듈(110)은 비디오 데이터 특징(112)으로부터 비디오 데이터 통합 특징(114)을 추출하도록 구성될 수 있다. 예를 들어, 비디오 특징 추출 모듈(110)은 비디오 데이터 특징(112)으로부터 비디오 데이터 통합 특징(114)을 추출하는 비디오 인코더를 포함할 수 있다. 즉, 비디오 특징 추출 모듈(110)은 전문가(들)로부터 비디오 데이터 특징(112)을 수신하고, 수신된 비디오 데이터 특징(112)으로부터 학습 모델(100)의 학습에 이용되는 비디오 데이터 통합 특징(114)을 추출할 수 있다.
텍스트 특징 추출 모듈(120)은 텍스트 데이터(122)로부터 텍스트 데이터 특징(124)을 추출하도록 구성될 수 있다. 예를 들어, 텍스트 특징 추출 모듈(120)은 텍스트 데이터(122)로부터 텍스트 데이터 특징(124)을 추출하는 텍스트 인코더를 포함할 수 있다. 한편, 비디오 특징 추출 모듈(110) 및/또는 텍스트 특징 추출 모듈(120)은 각각 프로젝션 레이어를 더 포함할 수 있다. 프로젝션 레이어에 대한 상세한 설명은 도 4에서 후술된다.
비디오 데이터 특징(112)은 동적 특징(dynamic feature)과 정적 특징(static feature)을 포함할 수 있다. 이는, 비디오 데이터 특징(112)을 생성하는 전문가가 입력된 비디오 데이터를 해석하는 관점에 따라, 비디오 데이터 특징(112)의 속성이 결정되기 때문이다. 예를 들어, 어피어런스(appearance) 전문가(즉, 비디오 데이터로부터 정적 특징을 추출하도록 사전 학습된 모델)는 비디오 데이터로부터 정적 특징(112_1)을 추출할 수 있다. 다른 예를 들어, 모션(motion) 전문가(즉, 비디오 데이터로부터 동적 특징을 추출하도록 사전 학습된 모델)는 입력된 비디오 데이터로부터 동적 특징(112_2)을 추출할 수 있다. 추가적으로, 오디오(audio) 전문가(즉, 비디오 데이터로부터 오디오 특징을 추출하도록 사전 학습된 모델)는 입력된 비디오로부터 오디오 특징(112_n)을 추출할 수 있다. 이에 따라, 학습 모델(100)은 복수의 전문가로부터 하나의 비디오 데이터에 대한 복수의 특징(112_1 내지 112_n)을 획득할 수 있다.
학습 모듈(130)은 전문가(들)로부터 비디오 데이터 특징(112)을 획득하는 방식을 따르는 슈도 동적/정적 포지티브 샘플링 알고리즘을 기초로 학습을 수행할 수 있다. 구체적으로, 학습 모듈(130)은 비디오 데이터의 정적 특징(112_1) 및 텍스트 데이터(122)의 정적 특징(126) 기초로 하는 손실 함수를 이용하여 학습을 수행하고, 비디오 데이터의 동적 특징(112_2) 및 텍스트 데이터(122)의 동적 특징(128)을 기초로 하는 손실 함수를 이용하여 학습을 수행할 수 있다. 즉, 학습 모듈(130) 비디오 데이터 및 텍스트 데이터 사이의 관계성을 비디오 데이터 및/또는 텍스트 데이터의 속성(어피어런스, 모션, 오디오, 발화 등)에 따라 구분하여 학습할 수 있다. 이러한 구성에 의해, 학습 모델(100)은 상술한 학습 데이터셋의 한계를 극복할 수 있다.
학습 모듈(130)은 지도 학습을 위해 요구되는 비디오 데이터 및/또는 텍스트 데이터의 슈도 정답을 생성할 수 있다. 구체적으로, 학습 모듈(130)에 포함된 슈도 레이블 생성 모듈(132)은 비디오 데이터 특징(112)을 이용하여 슈도 정답을 생성할 수 있다. 여기서, 슈도 정답은 학습에 이용하기 위해 학습 모델(100)이 직접 생성한 비디오 데이터 및/또는 텍스트 데이터의 레이블을 지칭할 수 있다. 예를 들어, 비디오 데이터셋에 제1 내지 n의 비디오 데이터(여기서, n은 2 이상의 자연수)가 포함된 경우, 제1 비디오 데이터의 슈도 정답은 제1 비디오 데이터와 가장 유사한 정적 특징을 갖는 제k 비디오 데이터(여기서, 1≤k≤n 그리고 k≠1)로 결정될 수 있다. 이 경우, 제1 비디오 데이터와 쌍을 이루는 제1 텍스트 데이터의 슈도 정답 또한, 제k 비디오 데이터로 결정될 수 있다. 다른 예를 들어, 제a 비디오 데이터(여기서, 1≤a≤n)의 슈도 정답은 제a 비디오 데이터와 가장 유사한 정적 특징을 갖는 제b 비디오 데이터(여기서, 1≤b≤n 그리고 b≠a)로 결정될 수 있다. 이 경우, 제a 비디오 데이터와 쌍을 이루는 제a 텍스트 데이터의 슈도 정답 또한, 제b 비디오 데이터로 결정될 수 있다. 이와 유사하게, 제c 비디오 데이터(여기서, 1≤c≤n) 및 제c 텍스트 데이터의 슈도 정답은 제c 비디오 데이터와 가장 유사한 동적 특징을 갖는 제d 비디오 데이터(여기서, 1≤d≤n 그리고 d≠c)로 결정될 수 있다. 이와 같이 학습 모듈(130)이 슈도 정답을 생성하고, 생성된 슈도 정답을 이용하여 학습을 수행하는 구성에 의해, 학습 모델(100)을 기초로 설계된 질의 응답 신경망 모델의 성능이 향상될 수 있다. 이는, 학습 모델(100)이 상술한 방법에 따라 비디오 데이터셋에 포함된 비디오 데이터(들) 각각 사이의 관계성에 대해서도 학습했다는 사실에 기인할 수 있다.
도 2는 본 개시의 일 실시예에 따른 비디오-텍스트 질의 응답을 위한 학습 모델의 구현을 위하여, 정보 처리 시스템(230)이 복수의 사용자 단말(210_1, 210_2, 210_3)과 통신 가능하도록 연결된 구성을 나타내는 개요도이다. 도 1의 학습 모델(100)은 복수의 사용자 단말(210_1, 210_2, 210_3) 및/또는 정보 처리 시스템(230) 상에 구현될 수 있다. 예를 들어, 도 1의 학습 모델(100)의 전부는 복수의 사용자 단말(210_1, 210_2, 210_3) 각각에 구현되거나, 정보 처리 시스템(230)에서 구현될 수 있다. 다른 예를 들어, 도 1의 학습 모델(100)의 일부가 정보 처리 시스템(230) 상에 구현된 경우, 정보 처리 시스템(230)은 네트워크(220)를 통해 사용자 단말의 비디오-텍스트 질의 응답을 위한 학습 시스템(들)(즉, 학습 모델(100)의 나머지 일부)을 포함할 수 있다.
정보 처리 시스템(230)은 복수의 사용자 단말(210_1, 210_2, 210_3) 비디오-텍스트 질의 응답과 연관된 컴퓨터 실행 가능한 프로그램(예를 들어, 다운로드 가능한 어플리케이션) 및 데이터를 저장, 제공 및 실행할 수 있는 하나 이상의 서버 장치 및/또는 데이터베이스, 또는 클라우드 컴퓨팅 서비스 기반의 하나 이상의 분산 컴퓨팅 장치 및/또는 분산 데이터베이스를 포함할 수 있다.
정보 처리 시스템(230)에 의해 제공되는 질의 응답 서비스는, 복수의 사용자 단말(210_1, 210_2, 210_3)의 각각에 설치된 어플리케이션 등을 통해 사용자에게 제공될 수 있다. 예를 들어, 질의 응답 서비스는 웹 브라우저(또는, 어플리케이션)가 제공하는 검색 서비스, 동영상 플랫폼 서비스 등 질의-응답 기술이 적용 가능한 모든 서비스를 지칭할 수 있다.
복수의 사용자 단말(210_1, 210_2, 210_3)은 네트워크(220)를 통해 정보 처리 시스템(230)과 통신할 수 있다. 네트워크(220)는 복수의 사용자 단말(210_1, 210_2, 210_3)과 정보 처리 시스템(230) 사이의 통신이 가능하도록 구성될 수 있다. 네트워크(220)는 설치 환경에 따라, 예를 들어, 이더넷(Ethernet), 유선 홈 네트워크(Power Line Communication), 전화선 통신 장치 및 RS-serial 통신 등의 유선 네트워크, 이동통신망, WLAN(Wireless LAN), Wi-Fi, Bluetooth 및 ZigBee 등과 같은 무선 네트워크 또는 그 조합으로 구성될 수 있다. 통신 방식은 제한되지 않으며, 네트워크(220)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망, 위성망 등)을 활용하는 통신 방식뿐 아니라 사용자 단말(210_1, 210_2, 210_3) 사이의 근거리 무선 통신 역시 포함될 수 있다.
도 2에서 데스크탑(210_1), 랩탑(210_2) 및 휴대전화(210_3)가 사용자 단말의 예로서 도시되었으나, 이에 한정되지 않으며, 사용자 단말(210_1, 210_2, 210_3)는 유선 및/또는 무선 통신이 가능하고 질의 응답과 연관된 프로그램이 설치되어 실행될 수 있는 임의의 컴퓨팅 장치일 수 있다. 또한, 도 2에는 세 개의 사용자 단말(210_1, 210_2, 210_3)가 네트워크(220)를 통해 정보 처리 시스템(230)과 통신하는 것으로 도시되어 있으나, 이에 한정되지 않으며, 상이한 수의 사용자 단말(210_1, 210_2, 210_3)가 네트워크(220)를 통해 정보 처리 시스템(230)과 통신하도록 구성될 수도 있다.
일 실시예에 따르면, 정보 처리 시스템(230)은 사용자 단말(210_1, 210_2, 210_3)로부터 데이터를 수신할 수 있다. 이 경우, 데이터는 사용자 단말(210_1, 210_2, 210_3)에 입력 및/또는 저장된 텍스트 데이터를 지칭할 수 있다. 예를 들어, 데이터는 사용자 단말(210_1, 210_2, 210_3) 각각의 입력 장치를 통해 입력된 텍스트, 텍스트 데이터를 포함하는 문서, 파일 등을 지칭할 수 있다. 또한, 데이터는 사용자 단말(210_1, 210_2, 210_3)로부터 획득되거나, 사용자 단말(210_1, 210_2, 210_3)에 저장된 비디오 데이터를 지칭할 수 있다. 예를 들어, 데이터는 사용자 단말(210_1, 210_2, 210_3) 각각의 이미지 센서에 의해 촬영된 이미지, 사용자 단말(210_1, 210_2, 210_3) 각각에 저장된 이미지 등을 지칭할 수 있다. 또한, 데이터는 사용자 단말(210_1, 210_2, 210_3)의 비디오-텍스트 질의 응답을 위한 학습을 위하여 사용자 단말(210_1, 210_2, 210_3)의 프로세서 등에 의하여 가공된 데이터를 지칭할 수 있다. 예를 들어, 데이터는 사용자 단말(210_1, 210_2, 210_3) 각각에 의해 추출된 텍스트 데이터 특징 및/또는 비디오 데이터 특징을 지칭할 수 있다.
일 실시예에 따르면, 정보 처리 시스템(230)은 사용자 단말(210_1, 210_2, 210_3)로부터 데이터를 전송할 수 있다. 이 경우, 데이터는 질의 응답 서비스를 제공하는 정보 처리 시스템(230)의 서버, 메모리 등에 저장된 텍스트 데이터를 지칭할 수 있다. 또한, 데이터는 질의 응답 서비스를 제공하는 정보 처리 시스템(230)의 서버, 메모리 등에 저장된 비디오 데이터를 지칭할 수 있다. 한편, 데이터는 정보 처리 시스템(230)의 비디오-텍스트 질의 응답을 위한 학습을 위하여 정보 처리 시스템(230)의 프로세서 등에 의하여 가공된 데이터를 지칭할 수 있다. 예를 들어, 데이터는 정보 처리 시스템(230)에 의해 추출된 텍스트 데이터 특징 및/또는 비디오 데이터 특징을 지칭할 수 있다.
도 3은 본 개시의 일 실시예에 따른 사용자 단말(210) 및 정보 처리 시스템(230)의 내부 구성을 나타내는 블록도이다. 사용자 단말(210)은 비디오-텍스트 질의 응답과 연관된 프로그램 등이 실행 가능하고 유/무선 통신이 가능한 임의의 컴퓨팅 장치를 지칭할 수 있으며, 예를 들어, 도 2의 데스크탑(210_1), 랩탑(210_2), 휴대전화(210_3) 등을 포함할 수 있다. 도시된 바와 같이, 사용자 단말(210)은 메모리(312), 프로세서(314), 통신 모듈(316) 및 입출력 인터페이스(318)를 포함할 수 있다. 이와 유사하게, 정보 처리 시스템(230)은 메모리(332), 프로세서(334), 통신 모듈(336) 및 입출력 인터페이스(338)를 포함할 수 있다. 도 3에 도시된 바와 같이, 사용자 단말(210) 및 정보 처리 시스템(230)은 각각의 통신 모듈(316, 336)을 이용하여 네트워크(220)를 통해 데이터를 통신할 수 있도록 구성될 수 있다. 또한, 입출력 장치(320)는 입출력 인터페이스(318)를 통해 사용자 단말(210)에 데이터를 입력하거나 사용자 단말(210)로부터 생성된 데이터를 출력하도록 구성될 수 있다.
메모리(312, 332)는 비-일시적인 임의의 컴퓨터 판독 가능한 기록매체를 포함할 수 있다. 일 실시예에 따르면, 메모리(312, 332)는 RAM(random access memory), ROM(read only memory), 디스크 드라이브, SSD(solid state drive), 플래시 메모리(flash memory) 등과 같은 비소멸성 대용량 저장 장치(permanent mass storage device)를 포함할 수 있다. 다른 예로서, ROM, SSD, 플래시 메모리, 디스크 드라이브 등과 같은 비소멸성 대용량 저장 장치는 메모리와는 구분되는 별도의 영구 저장 장치로서 사용자 단말(210) 또는 정보 처리 시스템(230)에 포함될 수 있다. 또한, 메모리(312, 332)에는 운영체제와 적어도 하나의 프로그램 코드(예를 들어, 사용자 단말(210) 및/또는 정보 처리 시스템(230)에 설치되어 구동되는 비디오-텍스트 질의 응답을 위한 코드)가 저장될 수 있다.
이러한 소프트웨어 구성요소들은 메모리(312, 332)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독가능한 기록매체는 이러한 사용자 단말(210) 및 정보 처리 시스템(230)에 직접 연결가능한 기록 매체를 포함할 수 있는데, 예를 들어, 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 예로서, 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 모듈(316, 336)을 통해 메모리(312, 332)에 로딩될 수도 있다. 예를 들어, 적어도 하나의 프로그램은 개발자들 또는 어플리케이션의 설치 파일을 배포하는 파일 배포 시스템이 네트워크(220)를 통해 제공하는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 메모리(312, 332)에 로딩될 수 있다.
프로세서(314, 334)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(312, 332) 또는 통신 모듈(316, 336)에 의해 프로세서(314, 334)로 제공될 수 있다. 예를 들어, 프로세서(314, 334)는 메모리(312, 332)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 모듈(316, 336)은 네트워크(220)를 통해 사용자 단말(210)과 정보 처리 시스템(230)이 서로 통신하기 위한 구성 또는 기능을 제공할 수 있으며, 사용자 단말(210) 및/또는 정보 처리 시스템(230)이 다른 사용자 단말 또는 다른 시스템(일례로 별도의 클라우드 시스템 등)과 통신하기 위한 구성 또는 기능을 제공할 수 있다. 일례로, 사용자 단말(210)의 프로세서(314)가 메모리(312) 등과 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청 또는 데이터(예를 들어, 비디오 데이터 송수신 요청, 비디오 데이터 송수신 요청 등)는 통신 모듈(316)의 제어에 따라 네트워크(220)를 통해 정보 처리 시스템(230)으로 전달될 수 있다. 역으로, 정보 처리 시스템(230)의 프로세서(334)의 제어에 따라 제공되는 제어 신호나 명령이 통신 모듈(336)과 네트워크(220)를 거쳐 사용자 단말(210)의 통신 모듈(316)을 통해 사용자 단말(210)에 수신될 수 있다. 예를 들어, 사용자 단말(210)은 정보 처리 시스템(230)으로부터 비디오 데이터셋, 텍스트 데이터셋 등을 수신할 수 있다.
입출력 인터페이스(318)는 입출력 장치(320)와의 인터페이스를 위한 수단일 수 있다. 일 예로서, 입력 장치는 오디오 센서 및/또는 이미지 센서를 포함한 카메라, 키보드, 마이크로폰, 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커, 햅틱 피드백 디바이스(haptic feedback device) 등과 같은 장치를 포함할 수 있다. 다른 예로, 입출력 인터페이스(318)는 터치스크린 등과 같이 입력과 출력을 수행하기 위한 구성 또는 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수 있다.
도 3에서는 입출력 장치(320)가 사용자 단말(210)에 포함되지 않도록 도시되어 있으나, 이에 한정되지 않으며, 사용자 단말(210)과 하나의 장치로 구성될 수 있다. 또한, 정보 처리 시스템(230)의 입출력 인터페이스(338)는 정보 처리 시스템(230)과 연결되거나 정보 처리 시스템(230)이 포함할 수 있는 입력 또는 출력을 위한 장치(미도시)와의 인터페이스를 위한 수단일 수 있다. 도 3에서는 입출력 인터페이스(318, 338)가 프로세서(314, 334)와 별도로 구성된 요소로서 도시되었으나, 이에 한정되지 않으며, 입출력 인터페이스(318, 338)가 프로세서(314, 334)에 포함되도록 구성될 수 있다.
사용자 단말(210) 및 정보 처리 시스템(230)은 도 3의 구성요소들보다 더 많은 구성요소들을 포함할 수 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 일 실시예에 따르면, 사용자 단말(210)은 상술된 입출력 장치(320) 중 적어도 일부를 포함하도록 구현될 수 있다. 또한, 사용자 단말(210)은 트랜시버(transceiver), GPS(Global Positioning system) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수 있다. 예를 들어, 사용자 단말(210)이 스마트폰인 경우, 일반적으로 스마트폰이 포함하고 있는 구성요소를 포함할 수 있으며, 예를 들어, 가속도 센서, 자이로 센서, 마이크 모듈, 카메라 모듈, 각종 물리적인 버튼, 터치패널을 이용한 버튼, 입출력 포트, 진동을 위한 진동기 등의 다양한 구성요소들이 사용자 단말(210)에 더 포함되도록 구현될 수 있다.
일 실시예에 따르면, 사용자 단말(210)의 프로세서(314)는 질의 응답을 위한 신경망의 학습 및 추론을 수행하는 프로그램을 동작하도록 구성될 수 있다. 이 때, 해당 프로그램과 연관된 코드가 사용자 단말(210)의 메모리(312)에 로딩될 수 있다. 프로그램이 동작되는 동안에, 사용자 단말(210)의 프로세서(314)는 입출력 장치(320)로부터 제공된 데이터를 입출력 인터페이스(318)를 통해 수신하거나 통신 모듈(316)을 통해 정보 처리 시스템(230)으로부터 데이터를 수신할 수 있으며, 수신된 데이터를 처리하여 메모리(312)에 저장할 수 있다. 또한, 이러한 데이터는 통신 모듈(316)을 통해 정보 처리 시스템(230)에 제공될 수 있다.
사용자 단말(210)의 질의 응답을 위한 신경망의 학습 및 추론을 수행하는 프로그램이 동작되는 동안에, 프로세서(314)는 입출력 인터페이스(318)와 연결된 터치 스크린, 키보드, 오디오 센서 및/또는 이미지 센서를 포함하는 카메라, 마이크로폰 등의 입력 장치를 통해 입력되거나 선택된 음성 데이터, 텍스트, 이미지, 영상 등을 수신할 수 있으며, 수신된 음성 데이터, 텍스트, 이미지 및/또는 영상 등을 메모리(312)에 저장하거나 통신 모듈(316) 및 네트워크(220)를 통해 정보 처리 시스템(230)에 제공할 수 있다. 일 실시예에 따르면, 프로세서(314)는 입력 장치를 통해 사용자로부터 데이터의 전송 요청을 수신하고, 해당 데이터/요청을 네트워크(220) 및 통신 모듈(316)을 통해 정보 처리 시스템(230)에 제공할 수 있다.
정보 처리 시스템(230)의 프로세서(334)는 복수의 사용자 단말 및/또는 복수의 외부 시스템으로부터 수신된 데이터를 관리, 처리 및/또는 저장하도록 구성될 수 있다. 일 실시예에 따르면, 프로세서(334)는 사용자 단말(210)로부터 수신한 텍스트 데이터, 텍스트 데이터 특징, 비디오 데이터, 비디오 데이터 특징 등을 저장, 처리 및 전송할 수 있다. 추가적으로 또는 대안적으로, 프로세서(334)는 네트워크(220)와 연결된 별도의 클라우드 시스템, 데이터베이스 등으로부터 사용자 단말(210)의 신경망의 학습 및 추론을 위해 이용되는 알고리즘을 실행하기 위한 프로그램 등을 저장 및/또는 업데이트하도록 구성될 수 있다.
도 4는 본 개시의 일 실시예에 따른 학습 장치(400)의 구성을 나타내는 블록도이다. 학습 장치(400)는 도 1의 학습 모델(100)을 포함할 수 있다. 또한, 학습 장치(400)는 도 2 및 3의 프로세서(314, 334)들 중 적어도 일부에 대응될 수 있다. 도시된 바와 같이, 학습 장치(400)는 비디오 특징 추출 모듈(410), 텍스트 특징 추출 모듈(420) 및 학습 모듈(430) 중 적어도 하나를 포함할 수 있다. 여기서, 비디오 특징 추출 모듈(410), 텍스트 특징 추출 모듈(420) 및 학습 모듈(430)은 각각 도 1의 비디오 특징 추출 모듈(110), 텍스트 특징 추출 모듈(120) 및 학습 모듈(130)과 대응될 수 있다.
비디오 특징 추출 모듈(410)은 적어도 하나의 비디오 인코더를 포함할 수 있다. 이 경우, 비디오 특징 추출 모듈(410)의 멀티-레이어 트랜스포머(multi-layer transformer)가 비디오 인코더로 설계되는 것이므로, 위치 임베딩(P; positional embedding) 및 세그먼트 마스크(M; segment mask)이 요구될 수 있다. 또한, 비디오 인코더에는 전문가의 모달리티(modality)를 식별하기 위한 전문가 임베딩(E; expert embedding)이 요구될 수 있다. 이에 따라, 비디오 인코더에 대한 비디오 임베딩 V는 수학식 1로 표현될 수 있다.
비디오 특징 추출 모듈(410)은 입력된 비디오 임베딩 V를 융합하여 비디오 데이터 통합 특징(예: 비디오 데이터 통합 특징(114))을 출력할 수 있다. 이 경우, 비디오 데이터 통합 특징의 크기는 비디오 임베딩 V의 길이와 비례하지만, 연산의 효율을 위해 비디오 인코더는 비디오 데이터 통합 특징만을 이용할 수 있다. 이에 따라, 비디오 데이터 통합 특징은 수학식 2로 표현될 수 있다. 여기서, 는 출력을 합산하는 집계 함수를 지칭하며, 예를 들어, 는 맥스-풀링(max pooling)으로 구현될 수 있다.
텍스트 특징 추출 모듈(420)은 텍스트 데이터로부터 텍스트 데이터 특징을 추출하도록 구성될 수 있다. 예를 들어, 텍스트 특징 추출 모듈(420)은 텍스트 데이터로부터 텍스트 데이터 특징을 추출하는 텍스트 인코더를 포함할 수 있다. 이 경우, 텍스트 인코더는 사전 훈련된 텍스트 인코더 모델을 지칭할 수 있다. 예를 들어, 사전 훈련된 모델 BERT가 수학식 3과 같이 따라 텍스트 인코더 로 이용될 수 있다. 이 경우, 단어 임베딩(W; word embedding), 위치 임베딩(P; positional embedding) 및 세그먼트 마스크(M; segment mask)가 수학식 3 및 4와 같이 텍스트 인코더 의 입력(T)으로 이용될 수 있다. 여기서, 는 출력을 합산하는 집계 함수를 지칭하며, 예를 들어, 는 맥스-풀링(max pooling)으로 구현될 수 있다.
비디오 특징 추출 모듈(410) 및/또는 텍스트 특징 추출 모듈(420)은 각각 프로젝션 레이어(projection layer)를 더 포함할 수 있다. 이에 따라, 학습 장치(400)는 프로젝션 레이어(projection layer)를 통해 공유된 잠재적 공간(shared latent space)에 비디오 인코더로부터 출력된 비디오 데이터 통합 특징 및/또는 텍스트 인코더로부터 출력된 텍스트 데이터 특징을 투영할 수 있다. 예를 들어, 학습 장치(400)는 프로젝션 레이어를 통해 수학식 2 및 3의 및/또는 를 공유된 잠재적 공간에 투영할 수 있다. 이 경우, 프로젝션 레이어의 투영 헤드 으로 간단한 멀티-레이어 퍼셉트론(MLP; multi-layer perceptron)이 사용될 수 있다. 한편, 프로젝션 레이어를 통한 투영 과정은 수학식 5 및 6으로 표현될 수 있으며, 잠재적 공간에서 v와 t 사이의 유사도는 후술되는 대조 학습을 위해 산출될 수 있다.
학습 모듈(430)은 비디오 데이터와 텍스트 데이터의 관계성을 학습할 수 있다. 학습 모듈(430)은 비디오 데이터와 텍스트 데이터의 관계성을 학습하고, 학습된 관계성을 기초로 학습 장치(400)를 업데이트 하기 위한 손실 함수를 산출할 수 있다. 이 경우, 학습 모듈(430)이 이용하는 총 손실 함수 는 수학식 7으로 나타낼 수 있다. 이하에서는, 총 손실 함수 가 산출되는 과정에 대하여 상세히 후술된다.
학습 모듈(430)은 비디오 데이터 통합 특징(예: 비디오 데이터 통합 특징(114)) 및 텍스트 데이터 특징(예: 텍스트 데이터 특징(124))을 기초로 하는 손실 함수를 이용하여 학습하는 제1 학습 모듈(432)을 포함할 수 있다. 특히, 제1 학습 모듈(432)은 대조 학습 방식으로 비디오 데이터 통합 특징과 텍스트 데이터 특징 사이의 관계성을 학습할 수 있다. 다만, 제1 학습 모듈(432)은 비디오 데이터를 포함하는 비디오 데이터셋과 텍스트 데이터를 포함하는 텍스트 데이터셋 사이의 페어-와이즈(pair-wise) 관계성 또는 트리플렛-와이즈(triplet-wise) 관계성만을 고려할 수 있다는 한계가 존재한다. 따라서, 본 개시의 제1 학습 모듈(432)은 InfoNCE 손실 함수를 이용하여 비디오 데이터셋에 포함된 복수의 비디오 데이터 각각과 텍스트 데이터셋에 포함된 복수의 텍스트 데이터 각각 사이의 모든 관계성을 학습하는 방식으로 상술한 한계를 해결할 수 있다.
제1 학습 모듈(432)은 임의의 비디오 데이터에 대한 임의의 텍스트 데이터의 관계성 및 임의의 텍스트 데이터에 대한 임의의 비디오 데이터의 관계성을 동시에 학습할 수 있다. 예를 들어, 제1 학습 모듈(432)은 CLIP 형식의 손실 함수를 이용하여 임의의 비디오 데이터에 대한 임의의 텍스트 데이터의 관계성 및 임의의 텍스트 데이터에 대한 임의의 비디오 데이터의 관계성을 동시에 학습할 수 있다. 이 경우, 제1 학습 모듈(432)의 목적 함수는 수학식 8과 같이 정의될 수 있다. 수학식 8에서 B와 N은 각각 앵커(anchor)에 대한 배치 샘플들 및 네거티브 백들(negative bags)을 나타내고, i번째 쌍인 은 포지티브(positive) 쌍을 나타낸다. 또한, 는 활성화를 캘리브레이션하기 위한 템퍼러쳐(temperature) 항을 나타낸다. 한편, 양방향 검색의 경우, 앵커는 비디오 함수 (즉, 첫 번째 항)과 텍스트 함수 모두로 설정될 수 있다.
학습 모듈(430)은 텍스트 데이터 특징으로부터 추출된 정적 특징(예: 정적 특징(126))과 해당 텍스트 데이터와 쌍을 이루는 비디오 데이터의 슈도 정답 사이의 관계성을 학습하는 제2 학습 모듈(434)을 포함할 수 있다. 이 경우, 제2 학습 모듈(434)은 정적 특징의 경우와 유사하게, 텍스트 데이터 특징으로부터 추출된 동적 특징(예: 동적 특징(128))과 해당 텍스트 데이터와 쌍을 이루는 비디오 데이터의 슈도 정답 사이의 관계성을 학습할 수도 있다.
제2 학습 모듈(434)은 슈도 정답을 생성할 수 있다. 예를 들어, 제2 학습 모듈(434)은 전문가(들)로부터 복수의 비디오 데이터로부터 추출된 복수의 동적 특징(예: 동적 특징(112_2)) 을 수신하고, 수신된 복수의 동적 특징을 기초로 슈도 정답을 생성할 수 있다. 여기서, 복수의 비디오 데이터는 비디오 데이터셋에 포함된 복수의 비디오 데이터 중 추출된 동적 특징이 동일한 배치에 존재하는 복수의 비디오 데이터를 지칭할 수 있다.
제2 학습 모듈(434)은 복수의 동적 특징 각각 사이의 유사도를 산출하고, 산출된 유사도를 기초로 복수의 비디오 데이터 각각의 슈도 정답을 결정할 수 있다. 예를 들어, 제2 학습 모듈(434)은 특정 비디오 데이터의 동적 특징과 나머지 비디오 데이터의 동적 특징 사이의 유사도를 산출하고, 가장 높은 값의 유사도를 갖는 비디오 데이터를 특정 비디오 데이터의 슈도 정답으로 결정할 수 있다. 이를 위해, 제2 학습 모듈(434)은 복수의 비디오 데이터의 복수의 동적 특징(예: 동적 특징(112_2))에 대한 코사인 유사도 행렬 을 산출할 수 있다. 그리고 나서, 제2 학습 모듈(434)은 슈도 정답 을 생성하기 위하여 의 각 행에 대하여 argmax 연산을 수행할 수 있다. 슈도 포지티브의 경우, 학습을 수행하는 동안의 적응 가중(adaptively weighting)을 위한 유사치이 정의될 수 있다. 한편, 제2 학습 모듈(434)은 상술한 것과 동일한 방법에 따라 복수의 비디오 데이터의 복수의 정적 특징(예: 정적 특징(112_1))을 기초로 복수의 비디오 데이터 각각의 슈도 정답 을 결정할 수 있다.
제2 학습 모듈(434)은 텍스트 데이터 특징으로부터 텍스트 데이터의 정적 특징(예: 정적 특징(126)) 및/또는 동적 특징(예: 동적 특징(128))을 추출할 수 있다. 구체적으로, 제2 학습 모듈(434)은 텍스트 데이터 특징을 분해하여 정적 특징 및/또는 동적 특징을 획득할 수 있다. 비디오 특징 추출 모듈(410)의 비디오 인코더는 학습 과정에서 처음부터 학습되는 반면, 텍스트 특징 추출 모듈(420)의 텍스트 인코더는 사전 훈련된 가중치(예: BERT의 사전 설정된 가중치)로부터 미세 조정된다. 그러나, 텍스트 인코더는 텍스트 데이터셋에서만 학습되기 때문에 비디오 데이터셋을 이해하는 데 어려움이 따른다. 이를 위해, 제2 학습 모듈(434)은 텍스트 인코더가 비디오 데이터셋을 이해하는 정도를 향상시키기 위하여, 텍스트 인코더를 통해 획득된 텍스트 데이터 특징을 정적 특징과 동적 특징으로 명시적으로 나눈 후, 분해할 수 있다. 텍스트 데이터 특징 는 수학식 9로 표현될 수 있다. 수학식 9에서 는 각각 텍스트 데이터의 동적 지향 특징(motion-oriented feature)(즉, 동적 특징) 및 정적 지향 특징(static-oriented feature)(즉, 정적 특징)을 지칭할 수 있다.
제2 학습 모듈(434)은 텍스트 데이터의 동적 특징 및 비디오 데이터의 동적 특징으로부터 결정된 슈도 정답을 기초로 하는 손실 함수를 산출할 수 있다. 유사하게, 제2 학습 모듈(434)은 텍스트 데이터의 정적 특징 및 비디오 데이터의 정적 특징으로부터 결정된 슈도 정답을 기초로 하는 손실 함수를 산출할 수 있다. 이 경우, 손실 함수 는 각각 수학식 10와 같이 정의될 수 있다. 수학식 10에서, i번째 샘플이 입력인 때의 포지티브 샘플은 로 정의될 수 있다. 또한, 는 각각 포지티브 샘플을 제외한 다른 모든 샘플들을 나타낸다. 한편, 제2 학습 모듈(434)은 앵커(anchor)와 포지티브 샘플 간의 유사도가 낮은 때 학습이 중단되는 상황을 방지하기 위하여, 포지티브 샘플의 유사치 를 손실 균형 조정을 위한 적응 가중치로 사용할 수 있다.
제2 학습 모듈(434)은 전문가(들)로부터 각각 상이한 모달리티를 학습하는 방식으로 텍스트 데이터 특징의 동적 특징 및 정적 특징을 분해할 수 있다. 즉, 제2 학습 모듈(434)은 텍스트 데이터 특징을 동적 속성(예: 어피어런스)과 연관된 서브 특징 및 정적 속성(예: 모션)과 연관된 서브 특징으로 분해할 수 있다. 이를 위해, 제2 학습 모듈(434)은 특징을 분해하도록 구성된 추가 손실 함수를 이용할 수 있다. 예를 들어, 제2 학습 모듈(434)은 특징을 분해하도록 구성된 추가 손실 함수 을 이용하여 텍스트 데이터 특징을 동적 특징 및 정적 특징으로 분해할 수 있다. 여기서, 추가 손실 함수 을 이용하여 특징들 간의 관계를 약화시키고, 텍스트 데이터 특징의 각 차원에 포함된 중복된 정보의 양을 감소하도록 구성된 정규화 목적의 손실 함수를 지칭하며, 수학식 11과 같이 정의될 수 있다. 수학식 11에서 I는 단위 행렬을 지칭한다.
도 5는 본 개시의 일 실시예에 따른 전문가들(510, 520)의 아키텍처이다. 여기서, 제1 전문가(510)는 비디오 데이터로부터 정적 특징을 추출하도록 사전 학습된 모델을 지칭하고, 제2 전문가(520)는 비디오 데이터로부터 동적 특징을 추출하도록 사전 학습된 모델을 지칭할 수 있다. 도시된 바와 같이, 비디오 특징 추출 모듈(예: 비디오 특징 추출 모듈(110))의 비디오 임베딩 V는 제1 전문가(510) 및 제2 전문가(520) 각각의 모달리티를 식별하기 위한 전문가 임베딩 E, 세그먼트 마스크 M, 위치 임베딩 P 및 출력된 특징 벡터 F를 포함할 수 있다. 한편, 본 개시에서는 비디오 데이터의 동적 특징 및 정적 특징이 각각 어피어런스 특징을 추출하도록 구성된 제1 전문가(510) 및 모션 특징을 추출하도록 구성된 제2 전문가(520)인 것으로 도시되었으나 이에 한정되지 않는다. 예를 들어, 비디오 데이터의 동적 특징은 오디오 특징, 발화 특징 등을 추출하도록 구성된 전문가(미도시)로부터 획득될 수 있다. 다른 예를 들어, 비디오 데이터의 정적 특징은 배경 특징을 추출하도록 구성된 전문가(미도시)로부터 획득될 수 있다.
도 6은 본 개시의 일 실시예에 따라 제2 학습 모듈(예: 제2 학습 모듈(434))이 슈도 정답(또는, 슈도 레이블(Pseudo label))을 결정하는 예시를 나타낸다. 도시된 바와 같이, 제2 학습 모듈은 복수의 비디오 데이터 각각에 대한 정적 특징 기반 슈도 정답과 동적 특징 기반 슈도 정답을 병렬적으로 결정할 수 있다. 이 경우, 동일한 비디오 데이터에 대한 정적 특징 기반 슈도 정답은 동적 특징 기반 슈도 정답과 상이하게 결정될 수 있다. 예를 들어, 복수의 비디오 데이터의 정적 특징들 사이의 유사도를 기초로 결정된 제1 비디오 데이터의 정적 특징 기반 슈도 정답은 제8 비디오 데이터로 결정되고, 복수의 비디오 데이터의 동적 특징들 사이의 유사도를 기초로 결정된 제1 비디오 데이터의 동적 특징 기반 슈도 정답은 제3 비디오 데이터로 결정될 수 있다.
도 7은 본 개시의 일 실시예에 따른 비디오-텍스트 질의 응답을 위한 학습 모델(700)을 나타내는 예시도이다. 학습 모델(700)은, 기계학습 모델의 일 예로서, 기계학습(Machine Learning) 기술과 인지과학에서, 생물학적 신경망의 구조에 기초하여 구현된 통계학적 학습 알고리즘 또는 그 알고리즘을 실행하는 구조이다.
학습 모델(700)은 생물학적 신경망에서와 같이 시냅스의 결합으로 네트워크를 형성한 인공 뉴런인 노드(Node)들이 시냅스의 가중치를 반복적으로 조정하여, 특정 입력에 대응한 올바른 출력과 추론된 출력 사이의 오차가 감소되도록 학습함으로써, 문제 해결 능력을 가지는 기계학습 모델을 나타낼 수 있다. 예를 들어, 학습 모델(700)은 기계 학습, 딥러닝 등의 인공지능 학습법에 사용되는 임의의 확률 모델, 뉴럴 네트워크 모델 등을 포함할 수 있으며, 상술된 딥 뉴럴 네트워크와 연관된 모델을 포함할 수 있다.
학습 모델(700)은 다층의 노드들과 이들 사이의 연결로 구성된 다층 퍼셉트론(MLP: multilayer perceptron)으로 구현된다. 본 실시예에 따른 학습 모델(700)은 MLP를 포함하는 다양한 인공신경망 모델 구조들 중의 하나를 이용하여 구현될 수 있다. 도 7에 도시된 바와 같이, 학습 모델(700)은, 외부로부터 입력 신호 또는 데이터(710)를 수신하는 입력층(720), 입력 데이터에 대응한 출력 신호 또는 데이터(750)를 출력하는 출력층(740), 입력층(720)과 출력층(740) 사이에 위치하며 입력층(720)으로부터 신호를 받아 특성을 추출하여 출력층(740)으로 전달하는 n개(여기서, n은 양의 정수)의 은닉층(730_1 내지 730_n)으로 구성된다. 여기서, 출력층(740)은 은닉층(730_1 내지 730_n)으로부터 신호를 받아 외부로 출력한다.
학습 모델(700)의 학습 방법에는 교사 신호(정답)의 입력에 의해서 문제의 해결에 최적화되도록 학습하는 지도 학습(Supervised Learning) 방법과, 교사 신호를 필요로 하지 않는 비지도 학습(Unsupervised Learning) 방법이 있다. 예를 들어, 딥 뉴럴 네트워크와 연관된 학습 모델(700)은 학습 데이터를 이용하여 지도 학습 및/또는 비지도 학습된 모델일 수 있다. 이렇게 학습된 학습 모델(700)은 컴퓨팅 장치의 메모리(미도시)에 저장될 수 있으며, 컴퓨팅 장치는 학습 모델(700)에 대한 양자화를 수행할 수 있다. 예를 들어, 컴퓨팅 장치는 32 비트 부동소수점(32-bit floating point)으로 학습된 학습 모델(700)의 가중치(weight), 출력값 및/또는 입력값을 이산화 값(예를 들어, 정수)으로 양자화할 수 있다.
일 실시예에 따르면, 컴퓨팅 장치는 학습 모델(700)의 학습에 사용된 학습 데이터를 사용하지 않고도, 학습 모델(700)에 대한 양자화를 수행할 수 있다. 예를 들어, 학습 모델(700)은 복수의 정규화 레이어를 포함할 수 있으며, 양자화는 각 정규화 레이어의 후속 레이어의 입력값들에 대해 수행될 수 있다. 이 경우, 컴퓨팅 장치는 정규화 레이어의 통계적 특성(정규화 레이어의 기준화 인수)을 이용하여 출력값(activation output) 등에 대한 양자화를 수행할 수 있다. 다시 말해, 컴퓨팅 장치는 학습 모델(700)의 학습 시 사용된 학습 데이터의 적어도 일부 없이, 정규화 레이어로부터 추출된 통계 정보로부터 정규화 레이어의 복수의 출력값들과 연관된 클리핑 값을 결정하고, 결정된 클리핑 값 및 학습 모델(700)에서의 추론 시 사용되는 데이터의 비트 수를 이용하여, 후속 레이어의 입력값들과 연관된 이산화 간격을 결정할 수 있다.
이하에서는, 본 개시의 비디오-텍스트 질의 응답을 위한 학습 방법을 기초로 설계된 질의 응답 신경망 모델의 실험례가 제공된다.
데이터셋
본 개시와 연관된 실험에서는 20개의 영어 문장으로 주석이 달린 10k 비디오 클립이 포함된 데이터셋 MSR-VTT가 사용되었다. 또한, 모델의 학습을 위해 9k 비디오 클립과 텍스트 쌍을 사용하고, 테스트를 위해 1k 비디오 클립 또는 텍스트 쌍을 사용하는 기존 프로토콜이 채택되었다.
본 개시와 연관된 실험에서는 100k 캡션이 주석으로 달린 20k YouTube 자르지 않은 비디오를 포함하는 데이터셋 ActivityNet Captions가 사용되었다. 특히, 각 비디오에 대해 비디오 단락 검색 성능을 평가하기 위해 주석이 달린 모든 캡션을 다음 단락에 연결했다. 이 경우, 약 5k 비디오에 대한 평가를 위해 val1 분할이 이용되었다.
본 개시와 연관된 실험에서는 202개 영화에서 추출된 45초 미만의 약 120k 짧은 비디오 클립을 포함하는 데이터셋 LSMDC가 사용되었다. 특히, 각 클립에는 영화 스크립트에서 추출하거나 DVS(Descriptive Video Services)에서 전사한 캡션이 하나씩 포함되어 있다. 이 경우, 학습 데이터셋과 테스트 데이터셋은 각각 110K 비디오 클립 및 1K 비디오 클립으로 구성된다.
미터법
검색 성능을 평가하기 위하여, 극단값의 영향을 덜 받는 여러 지점( 즉 , R@k , k=1, 5, 10, 50)과 기하학적 평균(GeoM)에서 Recall을 측정했다. 여기서, R@k는 top-k 검색 결과에 올바른 것(correct one)이 존재할 확률을 나타낸다.
구현 세부 I - 아키텍처
텍스트 인코더의 경우, 사전 훈련된 BERTbase 케이스 체크포인트와 함께 BERT이 사용되었고, 집계 함수로 Max-pooling이 채택되었다. 비디오 인코더의 경우, 4개의 트랜스포머 레이어와 4개의 어텐션 헤드를 스택하고, 은닉층의 크기는 768, 중간층의 크기는 768로 설정했다. 그리고 나서, 3072의 은닉 차원에 대한 프로젝션을 위해 2-Layer MLP가 사용되었다. 공유 공간의 차원은 768로 설정되었다.
구현 세부 II - 전문가(들)
본 실험에서는 MMT를 따르고, MMT에 의해 제공되는 사전 훈련된 전문가 기능이 본 개시의 전문가(들)로서 사용되었다. MMT의 7개의 전문가 기능 중 어피어런스, 모션, 장면(scene), 발화 및 오디오 특징을 추출하는 전문가(들)가 사용되었으며, SENet-154 및 S3D는 각각은 어피어런스 특징(즉, 정적 특징) 및 모션 특징(즉, 동적 특징) 추출에 사용되었다. 또한, DenseNet은 장면 특징 추출을 위한 전문가로서 사용되었고, VGGish은 오디오 특징 추출을 위한 전문가로서 사용되었다. 스피치 특징은 Google Cloud Speech to Text API에 의해 생성된 언어 벡터가 사용되었다.
구현 세부 II - 최적화
학습률이 1e-4이고 가중치 감소가 1e-2인 옵티마이저로 AdamW가 사용되었다. 또한, 학습률 스케줄러로 cosine annealing warm restarts가 사용되었다. 데이터셋 MSR-VTT 및 ActivityNet Captions에 대해 각각 60 Epoch, LSMDC에 대해 50 Epoch를 훈련했다. InfoNCE 손실 함수에 대해 템퍼러처 항은 0.07로 설정되었다.
Ablation Study
MSR-VTT 데이터셋에서 본 개시의 비디오-텍스트 질의 응답을 위한 학습 방법의 효율성이 검증되었다. 제안된 방법이 의도한 대로 작동하는지 확인하기 위해 손실 측면에서 ablation study가 수행되었으며, 표 1에서 보는 바와 같이 전문가 유도 대조 손실 및 특징 분해의 효과를 확인할 수 있다. 우선, 는 특징 분해 없이도 검색 성능을 상당히 향상시켰다(+2.4). 설정을 명확히 하기 위해 텍스트 표현이 두 손실 함수( , )를 계산하는 데 모두 사용되었다. 전문가 유도 대조 손실과 특징 분해의 조합이 큰 개선(+4.5)으로 이어지는 것을 확인할 수 있다. 따라서 비디오 데이터의 동적 특징 및 정적 특징을 이해하기 위해 단일 텍스트 표현(즉, 분해되지 않은 텍스트 표현)으로 학습하는 것보다 분해 후 학습하는 것이 더 검색 성능을 향상시킴을 확인할 수 있다.
각 구성 요소의 영향을 더 깊이 파악하기 위해 표 2 내지 5와 같이 다양한 실험이 수행되었다. 본 실험은 전체 모델을 기반으로 한다는 사실에 유의해야 한다.
표 2는 제1 학습 모듈(예: 제1 학습 모듈(432))에 의한 학습의 주요 손실을 비교한 결과를 나타낸다. Ranking 손실 은 MMT에서의 최대 Ranking hinge 손실을 의미한다. InfoNCE 손실은 Ranking 손실 훈련 효율성보다 더 나은 성능을 보여준다. 또한, Ranking 손실로 인해 본 개시의 학습 방법은 전문가(들)로부터 좋은 표현을 학습할 수 없다.
표 3은 비디오 인코더에 대한 비디오 데이터 특징 집계 작업을 비교한 결과를 나타낸다. Max pooling 및 Average pooling은 비디오 인코더(즉, 트랜스포머)에서 모든 출력 토큰을 가져온다. CLS는 전문가(들) 각각의 CLS 토큰 출력의 평균 합계를 의미한다. Average pooling은 다른 것보다 우수한 성능을 나타내므로, 비디오 데이터 특징을 집계하기 위해 Average pooling이 채택되었다.
표 4는 학습에 사용된 모든 전문가(들)가 실질적으로 학습에 도움이 되는지 확인한 결과를 나타낸다. (i)7개의 전문가 목록은 다음과 같다:(어피어런스, 모션, 오디오, 장면, OCR, 얼굴, 발화). (ii)5개의 전문가 목록은 다음과 같다:(어피어런스, 모션, 오디오, 장면, 발화). (iii) 2개의 전문가 목록은 어피어런스와 모션에 해당한다. 실험 결과, 5개의 전문가를 사용한 경우에 본 개시의 학습 방법이 가장 효과적인 것으로 나타났다.
표 5는 의 대안이 될 수 있는 두 개의 추가 정규화 항을 평가한 결과를 나타낸다. 그러나, 결과적으로 이 최고의 성능을 달성하는 것을 확인할 수 있다.
종래 기술들과의 비교
이하에서는, 3개의 벤치마크 데이터셋에 대하여 종래 질의 응답 모델과의 성능을 비교한 결과가 후술된다.
표 6은 우리는 MSR-VTT 데이터셋에서 video-to-text 및 text-to-video의 검색 결과를 나타낸다. 표 3을 참고하면, 본 개시의 학습 모델이 최첨단 성능을 달성함을 확인할 수 있다.
표 7 및 8은 ActivityNet Captions 및 LSMDC에 대한 결과를 나타낸다. 비교를 위해 두 데이터셋에 대한 textto-video 검색 결과만이 제공된다. MSR-VTT의 결과와 유사하게, 본 개시의 학습 방법은 두 벤치마크에서 지속적으로 최첨단 성능을 보여줌을 확인할 수 있다.
'분해'를 위한 오디오 전문가의 활용
표 9는 비디오-텍스트 정렬 학습을 위한 오디오 전문가(즉, 비디오 데이터의 오디오 특징을 추출하도록 사전 학습된 모델)의 가이드를 검토한 결과를 나타낸다. 이 실험에서 분해를 위해 텍스트 특징은 3개로 분해되었다. 그리고 나서, 총 손실 함수에 오디오 전문가에 대한 손실 함수가 추가되었으며, 오디오 특징은 본 개시의 동적 특징 및 정적 특징과 동일한 방법으로 처리되었다. 표 9을 참고하면, 본 개시의 학습 방법과 같이 어피어런스 전문가 및 모션 전문가를 사용하는 것이 다른 전문가를 사용할 때보다 우수한 성능을 출력함을 확인할 수 있다. 구체적으로, 어피어런스 전문가가 존재할 때의 오디오 전문가의 성능은 모션 전문가보다 더 나은 성능을 보였으나, 어피어런스 전문가 및 모션 전문가의 조합보다는 좋은 성능을 보이지 않았다.
본 개시에서는 전문가 주도의 양성 샘플링과 특징 분해로 구성된 전문가 주도의 대조 학습을 소개했다. 본 개시의 학습 방법은 BERT와 비디오-텍스트 정렬을 위한 대비 손실이 있는 비디오 변환기 인코더를 기반으로 구축되었다. 결과적으로, 본 개시의 학습 방법은 절제 연구를 통해 제안된 구성 요소의 효과를 검증했다. 또한, 아키텍처의 다양한 설정에 대한 광범위한 실험 결과를 제공하고, 세 가지 벤치마크에서 최첨단 결과를 달성했다.
본 개시의 앞선 설명은 통상의 기술자들이 본 개시를 행하거나 이용하는 것을 가능하게 하기 위해 제공된다. 본 개시의 다양한 수정예들이 통상의 기술자들에게 쉽게 자명할 것이고, 본원에 정의된 일반적인 원리들은 본 개시의 취지 또는 범위를 벗어나지 않으면서 다양한 변형예들에 적용될 수도 있다. 따라서, 본 개시는 본원에 설명된 예들에 제한되도록 의도된 것이 아니고, 본원에 개시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위가 부여되도록 의도된다.
비록 예시적인 구현예들이 하나 이상의 독립형 컴퓨터 시스템의 맥락에서 현재 개시된 주제의 양태들을 활용하는 것을 언급할 수도 있으나, 본 주제는 그렇게 제한되지 않고, 오히려 네트워크나 분산 컴퓨팅 환경과 같은 임의의 컴퓨팅 환경과 연계하여 구현될 수도 있다. 또 나아가, 현재 개시된 주제의 양상들은 복수의 프로세싱 칩들이나 디바이스들에서 또는 그들에 걸쳐 구현될 수도 있고, 스토리지는 복수의 디바이스들에 걸쳐 유사하게 영향을 받게 될 수도 있다. 이러한 디바이스들은 PC들, 네트워크 서버들, 및 핸드헬드 디바이스들을 포함할 수도 있다.
본 명세서에서는 본 개시가 일부 실시예들과 관련하여 설명되었지만, 본 발명이 속하는 기술분야의 통상의 기술자가 이해할 수 있는 본 개시의 범위를 벗어나지 않는 범위에서 다양한 변형 및 변경이 이루어질 수 있다는 점을 알아야 할 것이다. 또한, 그러한 변형 및 변경은 본 명세서에서 첨부된 특허청구의 범위 내에 속하는 것으로 생각되어야 한다.
100: 비디오-텍스트 질의 응답을 위한 학습 모델
110: 비디오 특징 추출 모듈
112: 비디오 데이터 특징
114: 비디오 데이터 통합 특징
120: 텍스트 특징 추출 모듈
122: 텍스트 데이터
124: 텍스트 데이터 특징
126: 텍스트 데이터의 정적 특징
128: 텍스트 데이터의 동적 특징
130: 학습 모듈
132: 슈도(Pseudo) 정답 생성 모듈

Claims (13)

  1. 비디오 데이터의 제1 특징을 입력으로 하여 상기 비디오 데이터의 통합 특징을 출력하도록 구성된 비디오 특징 추출 모듈;
    텍스트 데이터를 입력으로 하여 상기 텍스트 데이터의 제2 특징을 출력하도록 구성된 텍스트 특칭 추출 모듈; 및
    상기 비디오 데이터를 입력으로 하여 상기 제1 특징을 출력하도록 사전 학습된 모델로부터 상기 제1 특징을 획득하고, 상기 제1 특징을 기초로 상기 비디오 데이터 또는 상기 텍스트 데이터의 슈도 정답(Pseudo GroundTruth)을 결정하고, 상기 통합 특징, 상기 제2 특징 및 상기 슈도 정답을 기초로 하는 손실 함수를 이용하여 상기 텍스트 데이터 및 상기 비디오 데이터의 관계성을 학습하는 학습 모듈
    을 포함하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  2. 제1항에 있어서,
    상기 제1 특징은 상기 비디오 데이터의 제1 속성과 연관된 제1 서브 특징 및 상기 비디오 데이터의 제2 속성과 연관된 제2 서브 특징을 포함하고,
    상기 제2 특징으로부터 상기 제1 속성과 연관된 제3 서브 특징 및 상기 제2 속성과 연관된 제4 서브 특징을 추출하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  3. 제2항에 있어서,
    상기 슈도 정답은 상기 제1 속성과 연관된 제1 슈도 정답 및 상기 제2 속성과 연관된 제2 슈도 정답을 포함하고,
    상기 손실 함수는 상기 제1 슈도 정답과 상기 제3 서브 특징을 기초로 하는 손실 함수 및 상기 제2 슈도 정답과 상기 제4 서브 특징을 기초로 하는 손실 함수를 포함하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  4. 제2항에 있어서,
    상기 제1 속성은 상기 비디오 데이터의 어피어런스(appearance)와 연관된 속성을 포함하고, 상기 제2 속성은 상기 비디오 데이터의 모션(motion)과 연관된 속성을 포함하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  5. 제2항에 있어서,
    상기 학습 모듈은 상기 제2 특징을 분해하여 상기 제3 서브 특징 및 상기 제4 서브 특징을 획득하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  6. 제1항에 있어서,
    상기 제1 특징은 상기 비디오 데이터의 복수의 속성과 각각 연관된 복수의 서브 특징을 포함하고,
    상기 복수의 속성은 상기 비디오 데이터의 어피어런스, 모션, 장면(scene), 발화(speech) 및 소리(audio) 중 적어도 하나와 연관된 속성을 포함하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  7. 제1항에 있어서,
    상기 학습 모듈은 상기 사전 학습된 모델로부터 복수의 비디오 데이터 각각에 대한 복수의 특징을 획득하고,
    상기 복수의 비디오 데이터는 상기 비디오 데이터를 포함하고,
    상기 복수의 특징은 상기 제1 특징을 포함하고,
    상기 슈도 정답은 상기 복수의 특징을 기초로 산출된 유사도에 따라 결정되는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  8. 제7항에 있어서,
    상기 학습 모듈은 상기 복수의 특징 중 상기 유사도가 가장 높은 특징을 상기 슈도 정답으로 결정하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  9. 제8항에 있어서,
    상기 유사도가 가장 높은 특징은 상기 복수의 비디오 데이터 중 상기 비디오 데이터가 아닌 비디오 데이터로부터 추출된 특징을 포함하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  10. 제1항에 있어서,
    상기 손실 함수는 상기 통합 특징과 상기 제2 특징을 기초로 하는 손실 함수를 포함하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  11. 제1항에 있어서,
    상기 손실 함수는 정규화가 수행된 상기 제2 특징을 기초로 하는, 비디오-텍스트 질의 응답을 위한 학습 장치.
  12. 비디오 데이터를 입력으로 하여 상기 비디오 데이터의 제1 특징을 출력하도록 사전 학습된 모델로부터 상기 제1 특징을 획득하는 단계;
    상기 제1 특징을 입력으로 하여 상기 비디오 데이터의 통합 특징을 출력하는 단계;
    텍스트 데이터를 입력으로 하여 상기 텍스트 데이터의 제2 특징을 출력하는 단계;
    상기 제1 특징을 기초로 상기 비디오 데이터 또는 상기 텍스트 데이터의 슈도 정답(Pseudo GroundTruth)을 결정하는 단계; 및
    상기 통합 특징, 상기 제2 특징 및 상기 슈도 정답을 기초로 하는 손실 함수를 이용하여 상기 텍스트 데이터 및 상기 비디오 데이터의 관계성을 학습하는 단계
    를 포함하는, 적어도 하나의 프로세서에 의해 수행되는 비디오-텍스트 질의 응답을 위한 학습 방법.
  13. 제12항에 기재된 비디오-텍스트 질의 응답을 위한 학습 방법을 실행시키도록 컴퓨터로 판독 가능한 기록 매체에 기록된 컴퓨터 프로그램.
KR1020220070445A 2022-06-10 2022-06-10 비디오-텍스트 질의 응답을 위한 학습 장치 KR20230170215A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220070445A KR20230170215A (ko) 2022-06-10 2022-06-10 비디오-텍스트 질의 응답을 위한 학습 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220070445A KR20230170215A (ko) 2022-06-10 2022-06-10 비디오-텍스트 질의 응답을 위한 학습 장치

Publications (1)

Publication Number Publication Date
KR20230170215A true KR20230170215A (ko) 2023-12-19

Family

ID=89385443

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220070445A KR20230170215A (ko) 2022-06-10 2022-06-10 비디오-텍스트 질의 응답을 위한 학습 장치

Country Status (1)

Country Link
KR (1) KR20230170215A (ko)

Similar Documents

Publication Publication Date Title
US12020167B2 (en) Gradient adversarial training of neural networks
WO2020199932A1 (zh) 模型训练方法、人脸识别方法、装置、设备及存储介质
EP3711000B1 (en) Regularized neural network architecture search
US9965717B2 (en) Learning image representation by distilling from multi-task networks
US11704907B2 (en) Depth-based object re-identification
US10922609B2 (en) Semi-supervised learning via deep label propagation
US20230162023A1 (en) System and Method for Automated Transfer Learning with Domain Disentanglement
US20210374605A1 (en) System and Method for Federated Learning with Local Differential Privacy
US20190297381A1 (en) Artificial intelligence device and operating method thereof
US20230162481A1 (en) Pre-training of computer vision foundational models
US11507802B2 (en) Recursive learning for artificial intelligent agents
US20240054293A1 (en) Multi-turn dialogue response generation using asymmetric adversarial machine classifiers
JP6900576B2 (ja) 移動状況認識モデル学習装置、移動状況認識装置、方法、及びプログラム
KR102206181B1 (ko) 단말기 및 그의 동작 방법
JP2023513613A (ja) 適応共蒸留モデル
US20230050655A1 (en) Dialog agents with two-sided modeling
Fong et al. Gesture recognition from data streams of human motion sensor using accelerated PSO swarm search feature selection algorithm
US11727686B2 (en) Framework for few-shot temporal action localization
KR20230170215A (ko) 비디오-텍스트 질의 응답을 위한 학습 장치
US20220233963A1 (en) Computer Program For Performing Drawing-Based Security Authentication
KR102334666B1 (ko) 얼굴 이미지 생성 방법
CN111177493B (zh) 数据处理方法、装置、服务器和存储介质
US20240126993A1 (en) Transformer-based text encoder for passage retrieval
US20240144049A1 (en) Computerized question answering based on evidence chains
Akrout Deep facial emotion recognition model using optimal feature extraction and dual‐attention residual U‐Net classifier