Paper Review

[논문 리뷰] DeBERTa: Decoding-enhanced BERT with Disentangled Attention

dotudy 2025. 1. 3. 11:01

Abstract

pre-trained neural language model은 많은 NLP의 성능의 향상을 가져왔다. 해당 논문에서는 두 개의 새로운 기술을 이용하여 BERT와 RoBERTa 모델을 향상시킨 새로운 model architecture DeBERTa (Decoding-enhanced BERT with disentangled attention)를 제공한다. 첫번째로 disentangled attention mechanism이 있다. 이는 Content vector, Position vector 벡터로 나눠서 단어를 표현하고 단어들 사이의 attention weight을 단어의 내용과 상대적인 위치에 따라 각각 disentanlged matrices를 사용해 계산된다. Content vector는 단어의 의미와 관련된 정보를 담고 있으며 position vector는 단어가 문장에서 어떤 위치에 있는지에 대한 정보를 담고 있다. 단어들 사이의 attention weight는 단어의 내용과 상대적인 위치에 따라 각각 disentanlged matrices를 사용해 계산된다. 두 번째로 enhanced mask decoder는 모델 사전 학습 단계에서 마스킹된 토큰을 예측하는 데 사용된다. 마지막으로 새로운 virtual adversarial training 방법이 모델의 일반화 성능을 향상시키기 위해 fine-tuning 과정에서 사용된다. RoBERTa-Large와 비교했을 때 DeBERTa model은 절반의 학습 데이터만 사용해도 다양한 자연어 처리 작업에서 향상된 성능을 보여준다. 여러 test에서도 우수한 성능을 보여주었다. 

 

Overview

1. 두 가지의 새로운 기술로 BERT와 RoBERTa를 개선한 모델

- Disentangled Attention Mechanism : 각 단어의 attention weight를 서로 독립인 두 벡터 content vector 와 positive vector의 조합으로 표현

- Enhanced Mask Decoder : Masked Language Model(MLM)로 pre-training시, [Mask] token을 예측하는 layer에서 absolute position 정보를 추가한 enhanced mask decoder를 사용

2. Pre-training efficiency 및 performance Improvemnet

- Pre-training 단계에서의 학습 효율이 향상되었고 NLU(Natural Language Understand)와 NLG(Natural Language Generation) downstream task에서 SOTA를 달성하였다.

 

Background

자연어처리(Natural Language Processing, NLP)

컴퓨터가 자연어를 이해하거나 생성할 수 있도록 하는 학문 분야 (NLU+NLG)

자연어 이해(Natural Language Understand, NLU)

자연어 형태의 문장을 기계가 이해할 수 있게 만드는 기술

ex) 감정 분석, 상식 추론, 의미론적 구문 분석, 의미론적 유사도 측정 등

자연어 생성(Natural Language Generation, NLG)

학습 결과로 기계가 자연어 문장을 생성하는 기술

생성형 언어모델, 문장 생성, 스토리 생성

 

현재는 질의응답, 문서요약, 대화 상태 추적 등 다양한 자연어이해 task를 수행하기 위한 연구

 

Pre-trained Language Model(PLM)

- 사전학습 언어모델은 수십~수백 GB 이상의 대용량 텍스트 데이터로부터 언어의 문법 및 의미를 학습하여 다양한 응용 task에 범용적으로 적용하는 기술

- 기존 사전학습 언어모델을 사용하지 않는 방법 대비 우수한 성능을 보임이 많은 연구를 통하여 증명

 

Transformer-based PLM

- 자연어처리 모델은 Encoder-Decoder가 결합한 형태로 변해가는 추세이며, 그중에서도 Transformer 기반의 모델이 매우 강력한 성능을 보이고 있음.

- Transformer의 Encoder를 사용한 BERT의 MLM을 기반으로 다양한 응용 모델이 연구됨에 따라 Input noise에 영향을 적게 받고 양방향의 context 정보를 깊게 고려할 수 있게 됨.

 

주요 언어 모델의 흐름

모델이 예측해야할 단어와 연관이 있는 입력단어 부분을 집중해서 보자는 Attention mechanism

sequential 한 특성을 없애고 attention만을 가지고 E-D를 수행하는 Transformer모델

 

 

RoBERTa

기본적으로 BERT와 동일한 구조 -> Pre-training 과정에서 BERT 모델을 더 robust하게 optimizatioin해보자.

BERT와 차이점

1. 학습 데이터: BERT에 비해 더 많은 데이터 (160GB, BERT의 약 10배)/ 더 큰 batch size(BERT의 약 32배)로 더 오래 학습 진행

2. Pre-training Objective: Next Sentence Prediction task(NSP)를 제거

3. Sequence Length: BERT input의 Max Length 값인 512를 넘어가지 않는 선에서 문장을 최대한 이어 붙여 full-sentence 형식의 input 구성

4. Dynamic masking: BERT는 학습 전에 전처리 과정에서 masking을 진행하여 학습 도중 동일하게 [Mask] token 처리가 된 입력 문장을 반복해서 보게되는 문제가 있음. -> 동일한 [Mask]에 대해 반복 학습 되는 것을 피하기 위해, 매 epoch마다 다른 masking을 진행

 

즉, BERT와 구조적 차이없이, hyper-parameter의 조정, input data 형식의 변화, NSP task 제거만으로 타 모델대비 

 

 

Prerequisite

Disentangled란?

Disentangled Representation

- 서로 뒤얽혀 있는 특징 요소들을 독립적으로 풀어서 표현하자.

데이터의 다양성을 설명하는 latent 요소들을 분리하여 표현함으로써 interpretablility를 높임

얼굴 -> 눈, 나이, 안경착용여부 등 처럼 표현하고자 하는 어떤 하나의 개념을 여러가지 sub로 분해하여 표현함

 

Positional Embedding(Encoding)이란?

단어의 위치 정보를 특정 차원의 벡터로 표현하는 것

Transformer에서는 각 단어의 임베딩 벡터에 위치 정보들을 더하여 모델의 입력으로 사용

Positional Embedding 벡터는 학습하여 사용할 수도 있고, 특정 길이에 따라 고정된 값을 사용할 수도 있음. 

두가지 방법론. 왼쪽이 주로 Transformer에서 기본적으로 사용되고 있는 임베딩 방법

본 논문에서는 오른쪽 사용

 

어떤 입력 문장의 길이에 따라서 각 단어의 위치 인덱스가 부여됨. 기존 토큰 임베딩에 더해서 사용됨.

각 단어마다 상대적 위치정보가 달라지기 때문에 input embedding에 한번에 넣기보다는 attention을 구하는 과정에서 사용

얼만큼 떨어져있는지 상대적인 거리 관계 정보도 알 수 있지만 어떤 방향에 있는지 거리정보도 파악할 수 있다.

 

 

 

Paper Revice

 

1. RoBERTa와 마찬가지로 NSP가 없음.

BERT와 다른점

1. Distangled Attention Transformer Layer

- BERT는 content(=word) embedding과 absolute position embedding을 더하여 input layer에서 사용

- 하지만 어떤 하나의 content pair에 대한 attention weight는 content 정보뿐만 아니라 relative position 정보에도 영향을 받는다고 주장.

-> deep과 learning이 같이 있을 때 더 강력한 의미를 갖는다.

즉, 상대적 위치정보(절대적인 거리 + 방향 정보)로 단어간의 relation을 학습할 수 있음.

 

[goal]

- Disentanglement 기법을 통해 attention 계산에 사용되는 input representation을 content와 position 벡터로 분리하여 표현하고 학습해보자.

- content와 position 간의 관계를 fully modeled 할수 있도록하자.

i 번째 position의 token representation

For a token at position i in a sequence, we represent it using two vectors, tHiu and tPi|j u

HI: content에 대한 vector

Pi\j = j번째 position의 token으로부터의 relative position 정보 

이를 더하지 않고 독립적으로 봄.

 

token i와 token j간의 cross attention

query token i

key token j

 

각각의 token vector가 독립적인 content와 포지션 벡터로 표현됨.

 

1. 단어 i와 단어 j 간의 의미 관계

2. 어떤 단어 i를 기준으로 다른 단어j 들은 어떤 상대적 위치를 갖는지 -> token i에 대해서 token j들의 상대적 위치 관계를 학습하여 주목해야할 상대 position학습

3. 어떤 단어 i의 상대적 위치가 정해졌을 때 관련있는 단어 j는 ? -> token i의 상대적 위치가 변했을 때, 그 position에 대해서 어떤 content j와 관련이 많은가를 학습

2, 3term이 독립적으로 완전히 다른 의미를 갖는 것은 아님. 

c1, c2, c3, c4 단어기 있을 떄

c2 단어는 c3단어와 1의 차이가 있다.

c3 단어는 c2단어까지 -1의 차이가 있다.

이러한 복합적인 정보를 세밀하게 학습할 수 있다.

 

 

token이 content와 position vector로 표현이 됨.

content vector, position vector가 각각 독립적으로 query와 key를 구성하게 됨.

W(projection matrix)들은 각각 독립적으로 traning

token i가 query라면 query들만 이용

반대면 key만 이용

 

 

델타 i,j 

 

k: 상대적 길이의 최댓값 (k = 512라면 -512~512까지의 2k만큼 길이의 indext matrex가 사용됨.

i = 10 , k =5

 

즉, tranformer block마다 relative position embeeding을 바탕으로 attention이 계산됨.

(이와 달리, BERT는 첫번째 Encoder input에만 position반영)

또한, relative position embedding matrix P는 layer간에 공유되며 이 matrix는 학습과정에서 update됨.

 

 

2. Enhanced Mask Decoder 

DeBERTa도 Pre-training 시 BERT처럼 MLM이용

Masked toekn prediction 과정에서 문맥의 content 와 position 정보를 이용

 - disentangled attention mechanism 으로 content 정보와 relative psotion 정보를 이용하지만 absolute position 정보는 사용하지 암ㅎ음.

 - local context 정보만 이용하는 것은 불충분함.

 

GOAL

Absolute psotion 정보를 Masked Token Prediction을 위해 부가적으로 사용하자.

BERT처럼 input layer에 absolute positon information을 추가하지말고 마지막 n개의 transformer layer에서 함께 사용하자.

 

본논문에서 마지막 n개 Transformer Encoder layer를 decoding layer, decoder로 칭함. (transformer decoder와 다름)

 

마지막 n개의 transformer block에서 이전 layer의 ouput에 absolute position embedding을 더해서 해당 player의 input으로 사용

n=2로 사용

이를 Enhanced Mask Decoder, EMD라고 칭하는데 이를 일반적이고 유연하게 확장하여 아양한 추가 정보를 사용할 수 있다.

 

 

finetunning을 위한 방법론

(Scale Invariant Fine-Tuning - SiFT)라는 새로운 알고리즘 제안. 이는 모델의 일반화 성능을 개선하기 위한 정규화 방법론 이다. workd embedding을 normalize하여 단어 혹은 모델 간 안정적인 분산을 유지하는데 자세한 알고리즘은 본 논문에서 언급하지 않고 있지만 실험적으로 적용하고 있는 단계라고 쓰여있고 추가 연구를 진행할 예정이라고 밝혔음.

 

 

실험

타 모델 대비 절반의 학습 데이터를 사용해서 더 좋은 성능을 보이는 것을 확인할 수 있다.

 

비슷한 크기의 이전 SOTA모델보다 성능이 더 좋음.

 

 

DeBERTa-base모델로 실험

Disentangled Attention을 이루는 각 요소와 absolute position을 더한 Enhanced Mask Decoder(EMD)가 의미가 있음을 입증

특히 P2C(position to content) term이 없었을 때, 성능이 하락한 것을 보아, 이 term이 중요함을 보임.

 

학습 효율성에 대한 표를 제시했는데 DeBERTa가 RoBERTa보다 pretraining step이 더적은 시점에서 baseline성능 증가