KR20230069780A - 멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치 - Google Patents

멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치 Download PDF

Info

Publication number
KR20230069780A
KR20230069780A KR1020220039804A KR20220039804A KR20230069780A KR 20230069780 A KR20230069780 A KR 20230069780A KR 1020220039804 A KR1020220039804 A KR 1020220039804A KR 20220039804 A KR20220039804 A KR 20220039804A KR 20230069780 A KR20230069780 A KR 20230069780A
Authority
KR
South Korea
Prior art keywords
token
image
language model
modal
learning
Prior art date
Application number
KR1020220039804A
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 US17/985,286 priority Critical patent/US20230153630A1/en
Publication of KR20230069780A publication Critical patent/KR20230069780A/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
    • G06N3/09Supervised learning
    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Multimedia (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Machine Translation (AREA)

Abstract

멀티 모달 대화(multi-modal dialog)를 위한 언어 모델 학습 방법 및 장치가 개시된다. 일 실시예에 따른 언어 모델 학습 방법은, 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 단계; 상기 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 상기 토큰화를 통해 생성된 복수의 토큰 중 하나 이상의 토큰을 마스크(mask) 토큰으로 대체하여 제2 토큰 시퀀스를 생성하는 단계; 상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 단계; 및 상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 멀티 모달 대화 데이터 내에서 상기 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 단계를 포함한다.

Description

멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치{METHOD AND APPARATUS FOR TRAINING LANGUAGE MODEL FOR MULTI-MODAL DIALOG}
개시되는 실시예들은 멀티 모달 대화를 위한 언어 모델을 학습시키기 위한 기술과 관련된다.
레이블 없이도 다량의 데이터만으로 만들 수 있는 태스크(task)로 딥러닝 모델을 훈련하는 기술을 자기지도학습(self-supervised learning)이라고 한다. 자기지도학습은 보통 프리텍스트(pretext) 태스크로 사전학습 할 때 적용되는데, 이렇게 훈련한 모델을 다시 다운스트림(downstream) 태스크에 맞게 소량의 레이블 있는 데이터로 파인 튜닝(fine-tuning)하는 방법이 주로 사용되고 있다. NLP(Natural Language Processing) 분야에서는 트랜스포머(transformer) 계통의 모델들, 특히 BERT(Bidirectional Encoder Representations from Transformers)와 같은 모델을 자기지도학습 방법으로 훈련하여 많은 성과를 거두고 있다. 이러한 방식을 이미지, 텍스트, 오디오 등을 포함하는 멀티 모달(multi-modal) 데이터에 대해 적용하고자 하는 시도도 이루어지고 있다.
자기지도학습의 사전학습에 있어서 레이블 없이 훈련할 수 있는 태스크를 만드는 일은 매우 중요한데, CV(Computer Vision)에서는 대조 학습(contrastive learning) 방법이 NLP에서는 MLM(Masked Language Model) 방식과 NSP(Next Sentence Prediction) 방식이 주로 사용되고 있다. CV와 NLP를 통합해야 하는 멀티 모달 모델에 대해서는 텍스트와 이미지를 순차적으로 입력하면서 MLM과 유사한 masked multi-modal learning 방식과 multi-modal alignment prediction 등의 방식을 활용하고 있다.
그러나, VQA(Visual Question Answering)와 같은 멀티 모달 문제가 복잡해지면서 지금까지의 학습 방법으로는 원하는 성능을 얻지 못하는 경우가 늘고 있다. 예를 들어 기존의 Visual Dialog나 VQA 2.0 데이터셋과 같은 경우 하나의 이미지를 제시한 상태에서 처음부터 끝까지 이미지에 집중한 질의응답이 이루어졌지만, MMDD(Multi-Modal Dialogue Dataset)나 PhotoChat 데이터셋과 같은 문제에서는 좀더 자연스러운 대화가 이어지는 가운데 이미지가 1회 이상 등장하며 대화가 진행된다. 기존의 학습 방법으로는 실제 일상 대화 상황과 더 흡사한 이런 문제가 주어지면 효과적으로 작동하는 모델을 만들기 어려우며, 기존 방법으로 학습된 모델은 이미지가 주어지기 전이나 이미지가 다른 이미지로 전환되었을 때 맥락을 벗어난 판단을 내리기 쉽다.
따라서 실제 상황에 가까운 멀티 모달 대화 이해를 위해서는 맥락의 변화를 이해할 수 있는 새로운 모델 학습 방법이 필요하다.
대한민국 공개특허공보 제10-2021-0124901호 (2021.10.15. 공개)
개시되는 실시예들은 멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치를 제공하기 위한 것이다.
일 실시예에 따른 언어 모델 학습 방법은, 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 하나 이상의 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 단계; 상기 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 상기 토큰화를 통해 생성된 복수의 토큰 중 하나 이상의 토큰을 마스크(mask) 토큰으로 대체하여 제2 토큰 시퀀스를 생성하는 단계; 상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 단계; 및 상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 멀티 모달 대화 데이터 내에서 상기 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 단계를 포함한다.
상기 제2 토큰 시퀀스를 생성하는 단계는, 상기 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성할 수 있다.
상기 학습시키는 단계는, 상기 마스크 토큰에 대한 상기 언어 모델의 출력 벡터에 기초한 제1 손실 함수, 및 상기 이미지 존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제1 유사도 및 상기 이미지 부존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제2 유사도에 기초한 제2 손실 함수를 이용하여 상기 언어 모델을 학습시킬 수 있다.
상기 학습시키는 단계는, 상기 제1 손실 함수에 기초하여 상기 제1 토큰 시퀀스에서 상기 마스크 토큰으로 대체된 토큰을 예측하되, 상기 제2 손실 함수에 기초하여 상기 제1 유사도가 커지고 상기 제2 유사도가 작아지도록 상기 언어 모델을 학습시킬 수 있다.
일 실시예에 따른 언어 모델 학습 장치는, 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 하나 이상의 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 토큰화부; 상기 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 상기 토큰화를 통해 생성된 복수의 토큰 중 하나 이상의 토큰을 마스크(mask) 토큰으로 대체하여 제2 토큰 시퀀스를 생성하는 토큰 삽입부; 상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 특징 벡터 생성부; 및 상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 멀티 모달 대화 데이터 내에서 상기 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 학습부를 포함한다.
상기 토큰 삽입부는, 상기 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성할 수 있다.
상기 학습부는, 상기 마스크 토큰에 대한 상기 언어 모델의 출력 벡터에 기초한 제1 손실 함수, 및 상기 이미지 존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제1 유사도 및 상기 이미지 부존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제2 유사도에 기초한 제2 손실 함수를 이용하여 상기 언어 모델을 학습시킬 수 있다.
상기 학습부는, 상기 제1 손실 함수에 기초하여 상기 제1 토큰 시퀀스에서 상기 마스크 토큰으로 대체된 토큰을 예측하되, 상기 제2 손실 함수에 기초하여 상기 제1 유사도가 커지고 상기 제2 유사도가 작아지도록 상기 언어 모델을 학습시킬 수 있다.
일 실시예에 따른 언어 모델 학습 방법은, 제1 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 하나 이상의 메시지 그룹으로 분류하는 단계; 상기 제1 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹과 상기 이미지의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터를 생성하는 단계; 상기 제2 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹에 포함된 각 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 단계; 상기 제2 멀티 모달 대화 데이터 내 상기 이미지의 등장 위치에 기초하여, 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰이 삽입된 제2 토큰 시퀀스를 생성하는 단계; 상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 단계; 및 상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 제1 멀티 모달 대화 데이터 내에서 상기 이미지 및 상기 하나 이상의 메시지 그룹의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 단계를 포함한다.
상기 제2 토큰 시퀀스를 생성하는 단계는, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성할 수 있다.
상기 학습시키는 단계는, 최대 우도 추정에 기초한 손실 함수를 이용하여 상기 언어 모델을 학습시킬 수 있다.
상기 제2 토큰 시퀀스는, 상기 하나 이상의 메시지 그룹 각각의 시작을 나타내는 특수 토큰을 포함하고, 상기 학습시키는 단계는, 상기 특수 토큰 및 상기 이미지 존재 토큰 각각에 대한 상기 언어 모델의 출력 벡터에 기초하여 상기 하나 이상의 메시지 그룹 및 상기 이미지 각각의 상기 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하되, 상기 손실 함수가 최대가 되도록 상기 언어 모델을 학습시킬 수 있다.
일 실시예에 따른 언어 모델 학습 장치는, 제1 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 하나 이상의 메시지 그룹으로 분류하고, 상기 제1 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹과 상기 이미지의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터를 생성하는 그룹화부; 상기 제2 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹에 포함된 각 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 토큰화부; 상기 제2 멀티 모달 대화 데이터 내 상기 이미지의 등장 위치에 기초하여, 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰이 삽입된 제2 토큰 시퀀스를 생성하는 토큰 삽입부; 상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 특징 벡터 생성부; 및 상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 제1 멀티 모달 대화 데이터 내에서 상기 이미지 및 상기 하나 이상의 메시지 그룹의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 학습부를 포함한다.
상기 토큰 삽입부는, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성할 수 있다.
상기 학습부는, 최대 우도 추정에 기초한 손실 함수를 이용하여 상기 언어 모델을 학습시킬 수 있다.
상기 제2 토큰 시퀀스는, 상기 하나 이상의 메시지 그룹 각각의 시작을 나타내는 특수 토큰을 포함하고, 상기 학습부는, 상기 특수 토큰 및 상기 이미지 존재 토큰 각각에 대한 상기 언어 모델의 출력 벡터에 기초하여 상기 하나 이상의 메시지 그룹 및 상기 이미지 각각의 상기 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하되, 상기 손실 함수가 최대가 되도록 상기 언어 모델을 학습시킬 수 있다.
개시되는 실시예들에 따르면, 멀티 모달 대화 데이터의 맥락이 자유롭게 등장하는 자연스러운 대화에서도 학습 모델의 성능을 높일 수 있다.
도 1은 일 실시예에 따른 언어 모델 학습 장치의 구성도
도 2는 멀티 모달 대화 데이터의 일 예를 나타낸 도면
도 3은 일 실시예에 따른 토큰 시퀀스 생성을 예시적으로 설명하기 위한 도면
도 4 및 도 5는 일 실시예에 따른 언어 모델 학습을 예시적으로 설명하기 위한 도면
도 6은 일 실시예에 따른 언어 모델 학습 방법의 순서
도 7은 다른 실시예에 따른 언어 모델 학습 장치의 구성도
도 8은 일 실시예에 따른 텍스트 메시지 그룹화를 예시적으로 설명하기 위한 도면
도 9는 일 실시예에 따른 토큰 시퀀스 생성을 예시적으로 설명하기 위한 도면
도 10은 일 실시예에 따른 언어 모델 학습을 예시적으로 설명하기 위한 도면
도 11은 일 실시예에 따른 언어 모델 학습 방법의 순서도
도 12는 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 일 실시예에 따른 언어 모델 학습 장치의 구성도이다.
도 1을 참조하면, 일 실시예에 따른 언어 모델 학습 장치(100)는 토큰화부(110), 토큰 삽입부(120), 특징 벡터 생성부(130) 및 학습부(140)를 포함한다.
일 실시예에 따른 언어 모델 학습 장치(100)는 하나 이상의 텍스트 메시지와 하나 이상의 이미지를 포함하는 멀티 모달 대화(multi-modal dialog) 데이터를 이용하여 언어 모델(language model)을 학습시키기 위한 장치(100)이다.
일 실시예에 따르면, 토큰화부(110), 토큰 삽입부(120), 특징 벡터 생성부(130) 및 학습부(140)는 하나 이상의 하드웨어 프로세서 또는 하나 이상의 하드웨어 프로세서 및 소프트웨어의 결합에 의해 구현될 수 있으며, 도시된 예와 달리 구체적 동작에 있어 명확히 구분되지 않을 수 있다.
이하에서, 멀티 모달 대화는 텍스트 메시지 및 이미지를 이용하여 2명 이상의 화자 사이에 수행되는 대화를 의미하며, 멀티 모달 대화 데이터는 멀티 모달 대화에서 화자 사이에 주고받은 하나 이상의 텍스트 메시지와 하나 이상의 이미지를 포함할 수 있다.
토큰화부(110)는 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 토큰화하여 제1 토큰 시퀀스를 생성한다.
일 실시예에 따르면, 토큰화부(110)는 사전 설정된 단위로 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 분할함으로써 하나 이상의 텍스트 메시지 각각을 토큰화할 수 있다. 구체적으로, 토큰화부(110)는 예를 들어, 문자(character) 단위, 단어(word) 단위, 서브워드(subword) 단위, 형태소(morpheme) 단위, 띄어쓰기(whitespace) 단위 등을 기준으로 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 토큰화할 수 있다. 그러나 토큰화를 위한 단위는 상술한 예 외에도 실시예에 따라 다양하게 설정될 수 있다.
한편, 제1 토큰 시퀀스는 멀티 모달 대화 데이터에 포함된 각 텍스트 메시지를 토큰화하여 생성된 복수의 토큰을 포함할 수 있으며, 복수의 토큰은 각각 멀티 모달 대화 데이터 내 등장 위치에 따라 제1 토큰 시퀀스 내에 순차적으로 배치될 수 있다.
또한, 일 실시예에 따르면, 제1 토큰 시퀀스는 멀티 모달 대화 데이터에 포함된 각 텍스트 메시지를 토큰화하여 생성된 복수의 토큰 외에 토큰 시퀀스의 시작과 종료를 나타내는 토큰, 각 텍스트 메시지에 대한 토큰을 구분하기 위한 토큰 등과 같이 사전 설정된 하나 이상의 특수 토큰(special token)을 더 포함할 수 있다.
토큰 삽입부(120)는 멀티 모달 대화 데이터 내 이미지의 등장 위치에 기초하여 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 제1 토큰 시퀀스에 포함된 복수의 토큰 중 하나 이상의 토큰을 마스크(mask) 토큰으로 대체하여 제2 토큰 시퀀스를 생성한다.
이때, 이미지 존재 토큰은 멀티 모달 대화 데이터에서 이미지가 등장하는 위치를 나타내는 특수 토큰이며, 이미지 부존재 토큰은 멀티 모달 대화 데이터에서 이미지가 등장하지 않는 위치를 나타내는 나타내는 특수 토큰을 의미할 수 있다. 구체적으로, 일 실시예에 따르면, 토큰 삽입부(120)는 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하는 위치에 대응하는 위치에 이미지 존재 토큰을 삽입할 수 있다. 또한, 토큰 삽입부(120)는 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하지 않는 위치에 대응하는 위치에 이미지 부존재 토큰을 삽입할 수 있다.
한편, 일 실시예에 따르면, 토큰 삽입부(120)는 사전 설정된 비율에 따라 제1 토큰 시퀀스에 포함된 복수의 토큰 중 일부를 마스크 토큰으로 대체할 수 있다. 또한, 실시예에 따라, 토큰 삽입부(120)는 제1 토큰 시퀀스에 포함된 토큰 중 하나 이상의 토큰을 임의의 토큰으로 대체할 수도 있다.
도 2는 멀티 모달 대화 데이터의 일 예를 나타낸 도면이고, 도 3은 일 실시예에 따른 토큰 시퀀스 생성을 예시적으로 설명하기 위한 도면이다.
도 2에 도시된 예에서 멀티 모달 대화 데이터(200)는 화자 'A'와 화자 'B'에 의해 발화된 3개의 텍스트 메시지(210, 220, 230) 및 첫 번째 텍스트 메시지(210)와 두 번째 텍스트 메시지(220) 사이에 등장하는 이미지(240)를 포함하고 있다.
도 3을 참조하면, 토큰화부(110)는 멀티 모달 대화 데이터(200)에 포함된 각 텍스트 메시지(210, 220, 230)를 토큰화하여 제1 토큰 시퀀스(310)를 생성할 수 있다. 이때, 각 텍스트 메시지(210, 220, 230)를 토큰화하여 생성된 복수의 토큰은 멀티 모달 대화 데이터(200) 내에서 각 텍스트 메시지(210, 220, 230)의 등장 위치에 따라 제1 토큰 시퀀스(310) 내에서 순차적으로 배치될 수 있다.
한편, 제1 토큰 시퀀스(310)에는 각 텍스트 메시지(210, 220, 230)를 토큰화하여 생성된 토큰들 외에 특수 토큰인 [CLS] 토큰, [SOU] 토큰 및 [SEP] 토큰을 포함할 수 있다. 이때, [CLS] 토큰과 [SEP] 토큰은 각각 제1 토큰 시퀀스(310)의 첫 번째 토큰과 마지막 토큰으로 삽입될 수 있다. [SOU] 토큰은 각 텍스트 메시지의 시작 위치를 나타내기 위한 특수 토큰으로 각 텍스트 메시지(210, 220, 230)를 토큰화하여 생성된 토큰들 중 첫 번째 토큰 앞에 삽입될 수 있다.
한편, 제1 토큰 시퀀스(310)가 생성된 이후, 토큰 삽입부(120)는 멀티 모달 대화 데이터(200) 내 이미지(240)의 등장 위치에 기초하여 이미지 존재 토큰인 [IMG_O] 토큰과 이미지 부존재 토큰인 [IMG_X] 토큰을 제1 토큰 시퀀스(310)에 삽입하여 제2 토큰 시퀀스(320)를 생성할 수 있다. 구체적으로, 멀티 모달 대화 데이터(200)에서 이미지(240)는 첫 번째 텍스트 메시지(210)와 두 번째 텍스트 메시지(220) 사이에 등장하므로, 토큰 삽입부(120)는 제1 토큰 시퀀스(310)에 포함된 토큰들 중 첫 번째 텍스트 메시지(210)에 대한 마지막 토큰(즉, 'up') 다음에 [IMG_O] 토큰을 삽입할 수 있다. 또한, 토큰 삽입부(120)는 첫 번째 텍스트 메시지(210)에 대한 [SOU] 토큰 앞, 세 번째 텍스트 메시지(230)에 대한 [SOU] 토큰의 앞과 마지막 토큰(즉, 'those')의 뒤에 각각 [IMG_X] 토큰을 삽입할 수 있다.
다시 도 1을 참조하면, 특징 벡터 생성부(130)는 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터를 생성한다.
일 실시예에 따르면, 이미지에 대한 하나 이상의 특징 벡터는 각각 이미지 내 일부 영역에 대한 특징 벡터일 있다. 구체적인 예로, 하나 이상의 특징 벡터는 이미지 포함된 하나 이상의 객체 각각에 대한 특징 벡터일 수 있다. 이 경우, 특징 벡터 생성부(130)는 예를 들어, CNN(Convolutional Neural Network) 기반의 객체 탐지(object detection) 모델과 같이 이미지 내에 포함된 객체에 대한 특징 벡터를 추출하도록 사전 학습된 인공 신경망 기반의 모델을 이용하여 이미지에 대한 하나 이상의 특징 벡터를 생성할 수 있다.
학습부(140)는 제2 토큰 시퀀스 및 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터에 기초하여 멀티 모달 대화 데이터 내에서 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델(language model)을 학습시킨다.
일 실시예에 따르면, 언어 모델은 예를 들어, BERT(Bidirectional Encoder Representations from Transformers)와 같이 트랜스포머(transformer) 기반의 언어 모델일 수 있으나, 복수의 임베딩 벡터(embedding vector)를 입력받아 입력된 복수의 임베딩 벡터 각각에 대응하는 출력 벡터를 생성할 수 있는 인공 신경망 기반의 모델이라면 반드시 특정한 종류로 한정되지 않는다.
일 실시예에 따르면, 학습부(140)는 마스크 토큰에 대한 언어 모델의 출력 벡터에 기초한 제1 손실 함수 및 이미지 존재 토큰에 대한 언어 모델의 출력 벡터와 이미지에 대한 하나 이상의 특징 벡터에 대한 언어 모델의 출력 벡터 사이의 제1 유사도 및 이미지 부존재 토큰에 대한 언어 모델의 출력 벡터와 이미지에 대한 하나 이상의 특징 벡터에 대한 언어 모델의 출력 벡터 사이의 제2 유사도에 기초한 제2 손실 함수를 이용하여 언어 모델을 학습시킬 수 있다.
구체적으로, 일 실시예에 따르면, 제1 손실 함수는 아래의 수학식 1과 같은 교차 엔트로피 손실(cross entropy loss) 일 수 있다.
[수학식 1]
Figure pat00001
또한, 제2 손실 함수는 예를 들어, 아래의 수학식 2와 같은 대조 손실(contrastive loss)일 수 있다.
[수학식 2]
Figure pat00002
수학식 1 및 2에서, u는 멀티 모달 대화 데이터에 포함된 텍스트 메시지, t는 이미지 존재 토큰 및 이미지 부존재 토큰, i는 멀티 모달 대화 데이터에 포함된 이미지에 대한 특징 벡터를 나타내고, hu, ht, 및 hi는 각각 u, i 및 t에 대한 언어 모델의 출력 벡터를 나타낸다. 또한, τ는 사전 설정된 하이퍼파라미터(hyperparameter)인 temperature 파라미터로서 0보다 큰 값, zi 및 zt는 선형 투영(linear projection)을 나타낸다. 한편, sim은 유사도를 나타내며, 예를 들어, 코사인 유사도(cosine similarity)일 수 있다.
구체적으로, 학습부(140)는 제1 손실 함수에 기초하여 제1 토큰 시퀀스에서 마스크 토큰으로 대체된 토큰을 예측하되, 제2 손실 함수에 기초하여 제1 유사도가 커지고 제2 유사도가 작아지도록 언어 모델을 학습시킬 수 있다.
도 4 및 도 5는 일 실시예에 따른 언어 모델 학습을 예시적으로 설명하기 위한 도면이다.
도 4 및 도 5를 참조하면, 제2 토큰 시퀀스(410)에 포함된 각 토큰은 임베딩 벡터로 변환되어 멀티 모달 대화 데이터에 포함된 이미지에 대한 특징 벡터(420) 와 함께 언어 모델(430)로 입력된다.
이때, 일 실시예에 따르면, 제2 토큰 시퀀스(410)에 포함된 각 토큰에 대한 임베딩 벡터는 예를 들어, 각 토큰에 대한 토큰 임베딩 벡터와 위치 임베딩 벡터를 합한 값일 수 있다. 구체적으로, 언어 모델(430)이 BERT 기반의 모델인 경우, 각 토큰에 대한 토큰 임베딩 벡터는 워드피스(wordpiece) 임베딩을 통해 생성된 임베딩 벡터일 수 있으며, 위치 임베딩 벡터는 위치 임베딩(position embedding)을 통해 생성된 임베딩 벡터일 수 있다. 그러나, 제2 토큰 시퀀스(410)에 포함된 각 토큰에 대한 임베딩 벡터는 반드시 상술한 예에 한정되는 것은 아니며, 언어 모델의 종류에 따라 공지된 다양한 임베딩 기술을 이용하여 생성될 수 있다.
한편, 멀티 모달 대화 데이터 내 이미지에 대한 특징 벡터(420)는 예를 들어, 사전 학습된 객체 탐지 모델을 이용하여 이미지에 포함된 객체 영역으로부터 추출된 특징 벡터일 수 있으며, 위치 임베딩을 통해 생성된 위치 임베딩 벡터와 합해진 후 제2 토큰 시퀀스(410)에 포함된 각 토큰에 대한 임베딩 벡터와 함께 언어 모델(430)로 입력될 수 있다.
도 4 및 도 5에 도시된 예에서는 설명의 편의를 위해 이미지에 대한 특징 벡터(420)가 하나인 것으로 예시하고 있으나 반드시 이에 한정되는 것은 아니다. 예를 들어, 이미지 내에 복수의 객체가 포함되어 있는 경우, 이미지에 대한 특징 벡터 역시 복수일 수 있다.
한편, 언어 모델(430)은 언어 모델(430)로 입력된 각 임베딩 벡터로부터 제2 토큰 시퀀스(410)에 포함된 각 토큰 및 특징 벡터(420)에 대응하는 복수의 출력 벡터(440)를 생성하게 된다.
이 경우, 학습부(140)는 제1 손실 함수를 이용하여, 언어 모델(430)에 의해 생성된 복수의 출력 벡터(440) 중 마스크 토큰에 대응하는 출력 벡터(441, 442)로부터 마스크 토큰으로 대체되기 전 원래 토큰을 예측하도록 언어 모델(430)을 학습시킬 수 있다.
또한, 학습부(140)는 제2 손실 함수를 이용하여, 언어 모델(430)에 의해 생성된 복수의 출력 벡터(440) 중 이미지 존재 토큰에 대응하는 출력 벡터(444)와 특징 벡터(420)에 대응하는 출력 벡터(447) 사이의 제1 유사도가 증가하고, 이미지 부존재 토큰에 대응하는 출력 벡터(443, 445, 446)와 특징 벡터(420)에 대응하는 출력 벡터(447) 사이의 제2 유사도가 작아지도록 언어 모델(430)을 학습시킬 수 있다.
도 6은 일 실시예에 따른 언어 모델 학습 방법의 순서도이다.
도 6에 도시된 방법은 예를 들어, 도 1에 도시된 언어 모델 학습 장치(100)에 의해 수행될 수 있다.
도 6을 참조하면, 언어 모델 학습 장치(100)는, 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 토큰화하여 제1 토큰 시퀀스를 생성한다(610).
이후, 언어 모델 학습 장치(100)는 멀티 모달 대화 데이터 내 이미지의 등장 위치에 기초하여 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 제1 토큰 시퀀스에 포함된 복수의 토큰 중 하나 이상의 토큰을 마스크 토큰으로 대체하여 제2 토큰 시퀀스를 생성한다(620).
이때, 일 실시예에 따르면, 언어 모델 학습 장치(100)는 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하는 위치에 대응하는 위치에 이미지 존재 토큰을 삽입할 수 있다. 또한, 언어 모델 학습 장치(100)는 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하지 않는 위치에 대응하는 위치에 이미지 부존재 토큰을 삽입할 수 있다.
이후, 언어 모델 학습 장치(100)는 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터를 생성한다(630).
일 실시예에 따르면, 이미지에 대한 하나 이상의 특징 벡터는 각각 이미지 내 일부 영역에 대한 특징 벡터일 있다. 구체적인 예로, 하나 이상의 특징 벡터는 이미지 포함된 하나 이상의 객체 각각에 대한 특징 벡터일 수 있다.
이후, 언어 모델 학습 장치(100)는 제2 토큰 시퀀스 및 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터에 기초하여 멀티 모달 대화 데이터 내에서 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시킨다(640).
이때, 일 실시예에 따르면, 언어 모델 학습 장치(100)는 마스크 토큰에 대한 언어 모델의 출력 벡터에 기초한 제1 손실 함수 및 이미지 존재 토큰에 대한 언어 모델의 출력 벡터와 이미지에 대한 하나 이상의 특징 벡터에 대한 언어 모델의 출력 벡터 사이의 제1 유사도 및 이미지 부존재 토큰에 대한 언어 모델의 출력 벡터와 이미지에 대한 하나 이상의 특징 벡터에 대한 언어 모델의 출력 벡터 사이의 제2 유사도에 기초한 제2 손실 함수를 이용하여 언어 모델을 학습시킬 수 있다.
구체적으로, 언어 모델 학습 장치(100)는 제1 손실 함수에 기초하여 제1 토큰 시퀀스에서 마스크 토큰으로 대체된 토큰을 예측하되, 제2 손실 함수에 기초하여 제1 유사도가 커지고 제2 유사도가 작아지도록 언어 모델을 학습시킬 수 있다.
한편, 도 6에 도시된 순서도에서 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
도 7은 일 실시예에 따른 언어 모델 학습 장치의 구성도이다.
도 7을 참조하면, 일 실시예에 따른 언어 모델 학습 장치(700)는 그룹화부(710), 토큰화부(720), 토큰 삽입부(730), 특징 벡터 생성부(740) 및 학습부(750)를 포함한다.
일 실시예에 따르면, 그룹화부(710), 토큰화부(720), 토큰 삽입부(730), 특징 벡터 생성부(740) 및 학습부(750)는 하나 이상의 하드웨어 프로세서 또는 하나 이상의 하드웨어 프로세서 및 소프트웨어의 결합에 의해 구현될 수 있으며, 도시된 예와 달리 구체적 동작에 있어 명확히 구분되지 않을 수 있다.
그룹화부(710)는 제1 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 하나 이상의 메시지 그룹으로 분류하고, 제1 멀티 모달 대화 데이터 내 하나 이상의 메시지 그룹과 이미지의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터를 생성한다.
일 실시예에 따르면, 그룹화부(710)는 제1 멀티 모달 대화 데이터에서 이미지의 등장 이전에 등장하는 하나 이상의 텍스트 메시지를 하나의 메시지 그룹으로 분류하고 이미지 등장 이후에 등장하는 하나 이상의 텍스트 메시지를 다른 하나의 메시지 그룹으로 분류할 수 있다.
구체적으로, 도 8은 일 실시예에 따른 텍스트 메시지 그룹화를 예시적으로 설명하기 위한 도면이다.
도 8을 참조하면, 제1 멀티 모달 대화 데이터(810)에 하나의 이미지(812)가 포함되어 있고, 이미지(812) 등장 이전에 하나의 텍스트 메시지가 등장하고, 이미지(812) 등장 이후에 2개의 텍스트 메시지가 등장하고 있다. 이 경우, 그룹화부(710)는 제1 멀티 모달 대화 데이터(810)에서 이미지(812) 등장 이전에 등장하는 텍스트 메시지를 제1 메시지 그룹(811)으로 분류하고, 이미지 등장 이후에 등장하는 2개의 텍스트 메시지를 제2 메시지 그룹(813)으로 분류할 수 있다.
이후, 그룹화부(710)는 제1 메시지 그룹(811)과 제2 메시지 그룹(813)의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터(820)를 생성할 수 있다.
한편, 도 8에 도시된 예에서는 제1 메시지 그룹(811)과 제2 메시지 그룹(813)의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터(820)를 생성하는 것으로 예시하고 있으나, 반드시 이에 한정되는 것은 아니며, 그룹화부(710)는 도 8에 도시된 예와 달리, 제1 메시지 그룹(811), 이미지(812) 및 제2 메시지 그룹(813)의 등장 위치를 임의로 변경하여 제2 멀티 모달 대화 데이터(820)를 생성할 수 있다.
다시 도 7을 참조하면, 토큰화부(720)는 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 토큰화하여 제1 토큰 시퀀스를 생성한다.
일 실시예에 따르면, 토큰화부(720)는 사전 설정된 단위로 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 분할함으로써 하나 이상의 텍스트 메시지 각각을 토큰화할 수 있다. 구체적으로, 토큰화부(720)는 예를 들어, 문자 단위, 단어 단위, 서브워드 단위, 형태소 단위, 띄어쓰기 단위 등을 기준으로 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 토큰화할 수 있다. 그러나 토큰화를 위한 단위는 상술한 예 외에도 실시예에 따라 다양하게 설정될 수 있다.
한편, 제1 토큰 시퀀스는 제2 멀티 모달 대화 데이터에 포함된 각 텍스트 메시지를 토큰화하여 생성된 복수의 토큰을 포함할 수 있으며, 복수의 토큰은 각각 제2 멀티 모달 대화 데이터 내 등장 위치에 따라 순차적으로 배치될 수 있다.
또한, 일 실시예에 따르면, 제1 토큰 시퀀스는 제2 멀티 모달 대화 데이터에 포함된 각 텍스트 메시지를 토큰화하여 생성된 복수의 토큰 외에 토큰 시퀀스의 시작과 종료를 나타내는 토큰, 각 텍스트 메시지에 대한 토큰을 구분하기 위한 토큰 등과 같이 사전 설정된 하나 이상의 특수 토큰을 더 포함할 수 있다.
토큰 삽입부(730)는 제2 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하여 제2 토큰 시퀀스를 생성한다.
일 실시예에 따르면, 토큰 삽입부(730)는 제2 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하는 위치에 대응하는 위치에 이미지 존재 토큰을 삽입할 수 있다. 또한, 토큰 삽입부(730)는 제2 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하지 않는 위치에 대응하는 위치에 이미지 부존재 토큰을 삽입할 수 있다.
도 9는 일 실시예에 따른 토큰 시퀀스 생성을 예시적으로 설명하기 위한 도면이다.
구체적으로, 도 9는 도 8에 도시된 제2 멀티 모달 대화 데이터(820)로부터 토큰 시퀀스를 생성하는 일 예를 도시하고 있다.
도 8 및 도 9를 참조하면, 도 8에 도시된 예에서 제2 멀티 모달 대화 데이터(820)는 화자 'A'와 화자 'B'에 의해 발화된 3개의 텍스트 메시지(821, 822, 823) 및 두 번째 텍스트 메시지(822)와 세 번째 텍스트 메시지(823) 사이에 등장하는 이미지(824)를 포함하고 있다.
도 9를 참조하면, 토큰화부(720)는 제2 멀티 모달 대화 데이터(820)에 포함된 각 텍스트 메시지(821, 822, 823)를 토큰화하여 제1 토큰 시퀀스(910)를 생성할 수 있다. 이때, 각 텍스트 메시지(821, 822, 823)를 토큰화하여 생성된 복수의 토큰은 제2 멀티 모달 대화 데이터(820) 내에서 각 텍스트 메시지(821, 822, 823)의 등장 위치에 따라 제1 토큰 시퀀스(910) 내에서 순차적으로 배치될 수 있다.
한편, 제1 토큰 시퀀스(910)에는 각 텍스트 메시지(821, 822, 823)를 토큰화하여 생성된 토큰들 외에 특수 토큰인 [CLS] 토큰, [SOU] 토큰 및 [SEP] 토큰을 포함할 수 있다. 이때, [CLS] 토큰과 [SEP] 토큰은 각각 제1 토큰 시퀀스(910)의 첫 번째 토큰과 마지막 토큰으로 삽입될 수 있고, [SOU] 토큰은 각 텍스트 메시지(821, 822, 823)를 토큰화하여 생성된 토큰들 중 첫 번째 토큰 앞에 삽입될 수 있다.
한편, 제1 토큰 시퀀스(910)가 생성된 이후, 토큰 삽입부(730)는 제2 멀티 모달 대화 데이터(820) 내 이미지(824)의 등장 위치에 기초하여 이미지 존재 토큰인 [IMG_O] 토큰과 이미지 부존재 토큰인 [IMG_X] 토큰을 제1 토큰 시퀀스(910)에 삽입하여 제2 토큰 시퀀스(920)를 생성할 수 있다. 구체적으로, 제2 멀티 모달 대화 데이터(820)에서 이미지(824)는 두 번째 텍스트 메시지(822)와 세 번째 텍스트 메시지(823) 사이에 등장하므로, 토큰 삽입부(730)는 제1 토큰 시퀀스(910)에 포함된 토큰들 중 두 번째 텍스트 메시지(822)에 대한 마지막 토큰(즉, 'those') 다음에 [IMG_O] 토큰을 삽입할 수 있다. 또한, 토큰 삽입부(730)는 첫 번째 텍스트 메시지(821)에 대한 [SOU] 토큰 앞, 두 번째 텍스트 메시지(822)에 대한 [SOU] 토큰의 앞 및 세 번째 텍스트 메시지(823)에 대한 마지막 토큰(즉, 'up')의 뒤에 각각 [IMG_X] 토큰을 삽입할 수 있다.
다시 도 7을 참조하면, 특징 벡터 생성부(740)는 제2 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터를 생성한다.
일 실시예에 따르면, 이미지에 대한 하나 이상의 특징 벡터는 각각 이미지 내 일부 영역에 대한 특징 벡터일 있다. 구체적인 예로, 하나 이상의 특징 벡터는 이미지 포함된 하나 이상의 객체 각각에 대한 특징 벡터일 수 있다. 이 경우, 특징 벡터 생성부(640)는 예를 들어, CNN 기반의 객체 탐지 모델과 같이 이미지 내에 포함된 객체에 대한 특징 벡터를 추출하도록 사전 학습된 인공 신경망 기반의 모델을 이용하여 이미지에 대한 하나 이상의 특징 벡터를 생성할 수 있다.
학습부(750)는 제2 토큰 시퀀스 및 제2 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터에 기초하여 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 메시지 그룹 및 이미지의 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시킨다.
일 실시예에 따르면, 언어 모델은 예를 들어, BERT와 같이 트랜스포머 기반의 언어 모델일 수 있으나, 멀티 모달 대화 데이터로부터 생성된 입력 임베딩으로부터 특징을 출력할 수 있는 인공 신경망 기반의 모델이라면 반드시 특정한 종류로 한정되지 않는다.
일 실시예에 따르면, 학습부(750)는 최대 우도 추정(Maximum Likelihood Estimation, MLE)에 기초한 손실 함수를 이용하여 언어 모델을 학습할 수 있다. 구체적인 예로, 손실 함수는 아래의 수학식 3과 같이 ListMLE(Listwise Maximum Likelihood Estimation)에 기초한 손실 함수일 수 있다.
[수학식 3]
Figure pat00003
수학식 3에서, s1 및 s2는 각각 제2 멀티 모달 대화 데이터에 포함된 메시지 그룹에 대한 SOU 토큰을 나타내고, t1은 이미지 존재 토큰을 나타내고,
Figure pat00004
,
Figure pat00005
Figure pat00006
는 각각 s1, s2 및 t1에 대한 언어 모델의 출력 벡터를 나타낸다. 또한, g는 다층 퍼셉트론(Multi-Layer Perceptron, MLP)를 나타내고, y는 s1, s2 및 t1의 등장 위치에 대한 라벨을 나타낸다.
구체적으로, 학습부(750)는 손실 함수가 최대가 되는 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 메시지 그룹 및 이미지의 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하도록 언어 모델을 학습시킬 수 있다.
도 10은 일 실시예에 따른 언어 모델 학습을 예시적으로 설명하기 위한 도면이다.
도 10을 참조하면, 제2 토큰 시퀀스(1010)에 포함된 각 토큰은 임베딩 벡터로 변환되어 제2 멀티 모달 대화 데이터에 포함된 이미지에 대한 특징 벡터(1020)와 함께 언어 모델(1030)로 입력된다.
이때, 일 실시예에 따르면, 제2 토큰 시퀀스(1010)에 포함된 각 토큰에 대한 임베딩 벡터는 예를 들어, 각 토큰에 대한 토큰 임베딩 벡터와 위치 임베딩 벡터를 합한 값일 수 있다. 구체적으로, 언어 모델(1030)이 BERT 기반의 모델인 경우, 각 토큰에 대한 토큰 임베딩 벡터는 워드피스 임베딩을 통해 생성된 임베딩 벡터일 수 있으며, 위치 임베딩 벡터는 위치 임베딩을 통해 생성된 임베딩 벡터일 수 있다. 그러나, 제2 토큰 시퀀스(1010)에 포함된 각 토큰에 대한 임베딩 벡터는 반드시 상술한 예에 한정되는 것은 아니며, 언어 모델의 종류에 따라 공지된 다양한 임베딩 기술을 이용하여 생성될 수 있다.
한편, 제2 멀티 모달 대화 데이터 내 이미지에 대한 특징 벡터(1020)는 예를 들어, 사전 학습된 객체 탐지 모델을 이용하여 이미지에 포함된 객체 영역으로부터 추출된 특징 벡터일 수 있으며, 위치 임베딩을 통해 생성된 위치 임베딩 벡터와 합해진 후 제2 토큰 시퀀스(1010)에 포함된 각 토큰에 대한 임베딩 벡터와 함께 언어 모델(1030)로 입력될 수 있다. 한편, 도 10에 도시된 예에서는 설명의 편의를 위해 이미지에 대한 특징 벡터(1020)가 하나인 것으로 예시하고 있으나 반드시 이에 한정되는 것은 아니다. 예를 들어, 이미지 내에 복수의 객체가 포함되어 있는 경우, 이미지에 대한 특징 벡터 역시 복수일 수 있다.
한편, 언어 모델(1030)은 언어 모델(1030)로 입력된 각 임베딩 벡터로부터 제2 토큰 시퀀스(1010)에 포함된 각 토큰 및 특징 벡터(1020)에 대응하는 복수의 출력 벡터(1040)를 생성하게 된다.
한편, 학습부(750)는 손실 함수를 이용하여, 언어 모델(1030)에 의해 생성된 복수의 출력 벡터(1040) 중 각 메시지 그룹의 시작 위치에 있는 SOU 토큰에 대한 출력 벡터(1041, 1043)와 이미지 존재 토큰(즉, IMG_O 토큰)에 대응하는 출력 벡터(1042) 각각에 대해 제1 멀티 모달 대화 데이터 내 등장 위치를 나타내는 라벨을 추정하고, 손실 함수에 기초하여, 추정된 등장 위치가 제1 멀티 모달 대화 데이터 내 원래 등장 위치와 일치하도록 언어 모델(1030)을 학습시킬 수 있다.
도 11은 일 실시예에 따른 언어 모델 학습 방법의 순서도이다.
도 11에 도시된 방법은 예를 들어, 도 7에 도시된 언어 모델 학습 장치(700)에 의해 수행될 수 있다.
도 11을 참조하면, 언어 모델 학습 장치(700)는, 제1 멀티 모달 대화 데이터에 포함된 이미지의 위치에 기초하여 제1 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 하나 이상의 메시지 그룹으로 분류하고, 제1 멀티 모달 대화 데이터 내 하나 이상의 메시지 그룹과 이미지의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터를 생성한다 (1110).
이후, 언어 모델 학습 장치(700)는, 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지 각각을 토큰화하여 제1 토큰 시퀀스를 생성한다(1120).
이후, 언어 모델 학습 장치(700)는 제2 멀티 모달 대화 데이터 내 이미지의 등장 위치에 기초하여 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하여 제2 토큰 시퀀스를 생성한다(1130).
이때, 일 실시예에 따르면, 언어 모델 학습 장치(700)는 제2 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하는 위치에 대응하는 위치에 이미지 존재 토큰을 삽입할 수 있다. 또한, 언어 모델 학습 장치(700)는 제2 멀티 모달 대화 데이터 내에서 각 텍스트 메시지의 등장 직전 또는 직후 위치 중 이미지가 등장하지 않는 위치에 대응하는 위치에 이미지 부존재 토큰을 삽입할 수 있다.
이후, 언어 모델 학습 장치(700)는 제2 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터를 생성한다(1140).
일 실시예에 따르면, 이미지에 대한 하나 이상의 특징 벡터는 각각 이미지 내 일부 영역에 대한 특징 벡터일 있다. 구체적인 예로, 하나 이상의 특징 벡터는 이미지 포함된 하나 이상의 객체 각각에 대한 특징 벡터일 수 있다.
이후, 언어 모델 학습 장치(700)는 제2 토큰 시퀀스 및 제2 멀티 모달 대화 데이터에 포함된 이미지에 대한 하나 이상의 특징 벡터에 기초하여 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 메시지 그룹 및 이미지의 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시킨다. (1150).
이때, 일 실시예에 따르면, 언어 모델 학습 장치(700)는 최대 우도 추정에 기초한 손실 함수를 이용하여 언어 모델을 학습할 수 있다. 구체적으로, 언어 모델 학습 장치(700)는 손실 함수가 최대가 되는 제2 멀티 모달 대화 데이터에 포함된 하나 이상의 메시지 그룹 및 이미지의 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하도록 언어 모델을 학습시킬 수 있다.
한편, 도 11에 도시된 순서도에서 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
도 12는 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 컴퓨팅 장치(12)는 일 실시예에 따른 언어 모델 학습 장치(100, 700)에 포함된 하나 이상의 컴포넌트일 수 있다.
컴퓨팅 장치(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)와 연결될 수도 있다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 전술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
100, 700: 언어 모델 학습 장치
110, 720: 토큰화부
120, 730: 토큰 삽입부
130, 740: 특징 벡터 생성부
140, 750: 학습부
710: 그룹화부

Claims (16)

  1. 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 하나 이상의 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 단계;
    상기 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 상기 토큰화를 통해 생성된 복수의 토큰 중 하나 이상의 토큰을 마스크(mask) 토큰으로 대체하여 제2 토큰 시퀀스를 생성하는 단계;
    상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 단계; 및
    상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 멀티 모달 대화 데이터 내에서 상기 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 단계를 포함하는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  2. 청구항 1에 있어서,
    상기 제2 토큰 시퀀스를 생성하는 단계는, 상기 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성하는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  3. 청구항 1에 있어서,
    상기 학습시키는 단계는, 상기 마스크 토큰에 대한 상기 언어 모델의 출력 벡터에 기초한 제1 손실 함수, 및 상기 이미지 존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제1 유사도 및 상기 이미지 부존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제2 유사도에 기초한 제2 손실 함수를 이용하여 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  4. 청구항 3에 있어서,
    상기 학습시키는 단계는, 상기 제1 손실 함수에 기초하여 상기 제1 토큰 시퀀스에서 상기 마스크 토큰으로 대체된 토큰을 예측하되, 상기 제2 손실 함수에 기초하여 상기 제1 유사도가 커지고 상기 제2 유사도가 작아지도록 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  5. 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 하나 이상의 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 토큰화부;
    상기 멀티 모달 대화 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰을 삽입하고, 상기 토큰화를 통해 생성된 복수의 토큰 중 하나 이상의 토큰을 마스크(mask) 토큰으로 대체하여 제2 토큰 시퀀스를 생성하는 토큰 삽입부;
    상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 특징 벡터 생성부; 및
    상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 멀티 모달 대화 데이터 내에서 상기 이미지의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 학습부를 포함하는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  6. 청구항 5에 있어서,
    상기 토큰 삽입부는, 상기 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성하는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  7. 청구항 5에 있어서,
    상기 학습부는, 상기 마스크 토큰에 대한 상기 언어 모델의 출력 벡터에 기초한 제1 손실 함수, 및 상기 이미지 존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제1 유사도 및 상기 이미지 부존재 토큰에 대한 상기 언어 모델의 출력 벡터와 상기 하나 이상의 특징 벡터에 대한 상기 언어 모델의 출력 벡터 사이의 제2 유사도에 기초한 제2 손실 함수를 이용하여 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  8. 청구항 7에 있어서,
    상기 학습부는, 상기 제1 손실 함수에 기초하여 상기 제1 토큰 시퀀스에서 상기 마스크 토큰으로 대체된 토큰을 예측하되, 상기 제2 손실 함수에 기초하여 상기 제1 유사도가 커지고 상기 제2 유사도가 작아지도록 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  9. 제1 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 하나 이상의 메시지 그룹으로 분류하는 단계;
    상기 제1 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹과 상기 이미지의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터를 생성하는 단계;
    상기 제2 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹에 포함된 각 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 단계;
    상기 제2 멀티 모달 대화 데이터 내 상기 이미지의 등장 위치에 기초하여, 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰이 삽입된 제2 토큰 시퀀스를 생성하는 단계;
    상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 단계; 및
    상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 제1 멀티 모달 대화 데이터 내에서 상기 이미지 및 상기 하나 이상의 메시지 그룹의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 단계를 포함하는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  10. 청구항 9에 있어서,
    상기 제2 토큰 시퀀스를 생성하는 단계는, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성하는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  11. 청구항 9에 있어서,
    상기 학습시키는 단계는, 최대 우도 추정에 기초한 손실 함수를 이용하여 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  12. 청구항 11에 있어서,
    상기 제2 토큰 시퀀스는, 상기 하나 이상의 메시지 그룹 각각의 시작을 나타내는 특수 토큰을 포함하고,
    상기 학습시키는 단계는, 상기 특수 토큰 및 상기 이미지 존재 토큰 각각에 대한 상기 언어 모델의 출력 벡터에 기초하여 상기 하나 이상의 메시지 그룹 및 상기 이미지 각각의 상기 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하되, 상기 손실 함수가 최대가 되도록 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 방법.
  13. 제1 멀티 모달 대화(multi-modal dialog) 데이터에 포함된 이미지의 등장 위치에 기초하여 상기 제1 멀티 모달 대화 데이터에 포함된 하나 이상의 텍스트 메시지를 하나 이상의 메시지 그룹으로 분류하고, 상기 제1 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹과 상기 이미지의 등장 위치를 변경하여 제2 멀티 모달 대화 데이터를 생성하는 그룹화부;
    상기 제2 멀티 모달 대화 데이터 내 상기 하나 이상의 메시지 그룹에 포함된 각 텍스트 메시지를 토큰화하여 제1 토큰 시퀀스를 생성하는 토큰화부;
    상기 제2 멀티 모달 대화 데이터 내 상기 이미지의 등장 위치에 기초하여, 상기 제1 토큰 시퀀스에 하나 이상의 이미지 존재 토큰 및 하나 이상의 이미지 부존재 토큰이 삽입된 제2 토큰 시퀀스를 생성하는 토큰 삽입부;
    상기 이미지에 대한 하나 이상의 특징 벡터를 생성하는 특징 벡터 생성부; 및
    상기 제2 토큰 시퀀스 및 상기 하나 이상의 특징 벡터에 기초하여 상기 제1 멀티 모달 대화 데이터 내에서 상기 이미지 및 상기 하나 이상의 메시지 그룹의 등장 위치를 예측하도록 인공 신경망 기반의 언어 모델을 학습시키는 학습부를 포함하는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  14. 청구항 13에 있어서,
    상기 토큰 삽입부는, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하는 위치에 대응하는 위치에 상기 이미지 존재 토큰을 삽입하고, 상기 제2 멀티 모달 대화 데이터 내에서 상기 하나 이상의 텍스트 메시지 각각의 등장 직전 또는 직후 위치 중 상기 이미지가 등장하지 않는 위치에 대응하는 위치에 상기 이미지 부존재 토큰을 삽입하여 상기 제2 토큰 시퀀스를 생성하는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  15. 청구항 13에 있어서,
    상기 학습부는, 최대 우도 추정에 기초한 손실 함수를 이용하여 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
  16. 청구항 15에 있어서,
    상기 제2 토큰 시퀀스는, 상기 하나 이상의 메시지 그룹 각각의 시작을 나타내는 특수 토큰을 포함하고,
    상기 학습부는, 상기 특수 토큰 및 상기 이미지 존재 토큰 각각에 대한 상기 언어 모델의 출력 벡터에 기초하여 상기 하나 이상의 메시지 그룹 및 상기 이미지 각각의 상기 제1 멀티 모달 대화 데이터 내 등장 위치를 예측하되, 상기 손실 함수가 최대가 되도록 상기 언어 모델을 학습시키는, 멀티 모달 대화를 위한 언어 모델 학습 장치.
KR1020220039804A 2021-11-12 2022-03-30 멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치 KR20230069780A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/985,286 US20230153630A1 (en) 2021-11-12 2022-11-11 Method and apparatus for training language model for multi-modal dialog

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210155612 2021-11-12
KR1020210155612 2021-11-12

Publications (1)

Publication Number Publication Date
KR20230069780A true KR20230069780A (ko) 2023-05-19

Family

ID=86547021

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220039804A KR20230069780A (ko) 2021-11-12 2022-03-30 멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20230069780A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210124901A (ko) 2020-04-07 2021-10-15 네이버 주식회사 이미지 조건화 마스킹된 언어 모델링을 사용하여 이미지 인식을 위한 컨볼루션 신경망을 훈련하기 위한 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210124901A (ko) 2020-04-07 2021-10-15 네이버 주식회사 이미지 조건화 마스킹된 언어 모델링을 사용하여 이미지 인식을 위한 컨볼루션 신경망을 훈련하기 위한 방법

Similar Documents

Publication Publication Date Title
CN108733792B (zh) 一种实体关系抽取方法
US11972365B2 (en) Question responding apparatus, question responding method and program
JP7108675B2 (ja) 意味マッチング方法、装置、電子機器、記憶媒体及びコンピュータプログラム
KR102116518B1 (ko) 기계 독해에 기초한 질의 응답 장치 및 이를 이용한 질의 응답 방법
CN110413746A (zh) 对用户问题进行意图识别的方法及装置
KR101715118B1 (ko) 문서 감정 분류용 딥러닝 인코딩 장치 및 방법.
CN107679033A (zh) 文本断句位置识别方法和装置
KR102315830B1 (ko) 반지도 학습 기반 단어 단위 감정 임베딩과 lstm 모델을 이용한 대화 내에서 발화의 감정 분류 방법
KR20230016794A (ko) 언어 모델을 이용한 데이터 생성 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
CN111859940B (zh) 一种关键词提取方法、装置、电子设备及存储介质
CN111368531B (zh) 翻译文本处理方法、装置、计算机设备和存储介质
CN112861514B (zh) 分割语法和语义的注意力增强的全相关变分自编码器
CN113705315A (zh) 视频处理方法、装置、设备及存储介质
CN117436438A (zh) 情感分析方法、大语言模型的训练方法及装置
US20230153630A1 (en) Method and apparatus for training language model for multi-modal dialog
KR20210051523A (ko) 도메인 자동 분류 대화 시스템
KR20220069403A (ko) 하이라이팅 기능이 포함된 감정 분석 서비스를 위한 방법 및 장치
US20230130662A1 (en) Method and apparatus for analyzing multimodal data
KR20230069780A (ko) 멀티 모달 대화를 위한 언어 모델 학습 방법 및 장치
CN118132687A (zh) 语句处理和类目模型的训练方法、装置、设备及介质
Kim et al. Text embedding augmentation based on retraining with pseudo-labeled adversarial embedding
CN115438210A (zh) 文本图像生成方法、装置、终端及计算机可读存储介质
CN115034226A (zh) 用于确定文本中说话者的方法、装置、设备和存储介质
KR20190093439A (ko) 텍스트 콘텐츠의 장르를 추론하는 방법 및 컴퓨터 프로그램
CN111310847A (zh) 训练要素分类模型的方法和装置