Attention with Linear Biases(ALiBi)

JunD·2026년 3월 11일

자연어처리(NLP)

목록 보기
4/14
post-thumbnail

Intro

  • 시퀀스 데이터를 처리할 때 단어의 순서 즉, Positional 정보는 모델의 이해도를 결정하는 핵심 요소

  • 과거 BERT의 경우, 입력 단계에서 사인 or 코사인 주기함수를 사용하여 위치 정보를 모델에 부여했지만, 이 방법은 최대 토큰 제한이라는 물리적 벽이 존재

  • 토큰 개수 제한은 이는 긴 문맥을 처리해야하는 경우 문맥이 끊기는 심각한 문제가 발생한다.

ex)

  • RAG 구축 시 시멘틱 청킹을 사용한다고 가정할 때,
  • 청크 크기가 512 토큰을 벗어나면 청크에 유용한 정보가 있어도 무용지물

  • 비교적 최근 모델은 512 길이를 넘어 8,192 또는 그 이상의 토큰도 한 번에 처리 가능하며,

  • 해당 모델은 위치 정보를 매기는 대신 어텐션에 직접적인 거리 패널티를 주는 ALiBi(Attention with Linear Biases)를 사용한다.

  • 따라서 오늘 포스팅에선 ALiBi가 어떤 매커니즘을 갖는지 알아보고자 한다.


ALiBi(Attention with Linear Biases)

  • ALiBi의 핵심 개념은 기존 주기함수 인코딩 처럼위치 정보를 매기지 않고 단어 사이의 거리에 따라 점수를 부여하는 방법이다.
  • 기존에는 입력 단계에서 위치 정보를 더해 최종 입력을 구성했지만,

  • ALiBi는 입력 단계에서 위치 정보를 부여하지 않고 단어 간 관계를 계산하는 어텐션 스코어 산출 단계에서 직접 패널티를 부여

Attention Score=QKT단어 간 유사도+mB거리에 따른 페널티\text{Attention Score} = \underbrace{QK^T}_{\text{단어 간 유사도}} + \underbrace{m \cdot B}_{\text{거리에 따른 페널티}}

💡

  • B는 Bias를 의미하며, 상대적 거리를 나타내기 때문에 Bias 행렬은 0이하의 정수 값만 갖는다
    • ex) 문장: I like apple
      • 기준 단어가 I,
        like : 거리 1 (패널티 : -1), apple : 거리 2 (패널티 -2)

💡

  • m은 일종의 scaler로, 보통 어텐션 헤드(H) 개수에 따라 달라지며, 값은 아래와 같다.
    m=28n/H(n=1,2,,H)m = 2^{-8n/H} \quad (n=1, 2, \dots, H)

    • 첫 번째 헤드의 m : 281/8=21=0.52^{-8*1/8} = 2^{-1} = 0.5
    • 두 번째 헤드의 m : 282/8=22=0.252^{-8*2/8} = 2^{-2} = 0.25
      ...
    • 8번째 헤드의 m : 288/8=28=0.00392^{-8*8/8} = 2^{-8} = 0.0039
  • 이러한 패널티 차등을 통해 마치 여러 시점으로 긴 문맥을 파악하는 것이 특징


ALiBi의 장점

  1. 외삽(Extrapolation) 능력
    • 기존 언어 모델처럼 학습에 사용한 length만 사용하는 게 아닌, 학습되지 않은 length도 상대적 거리를 이용하여 처리
  1. 효율성
    • Pre-train 시, 비용 및 자원이 압도적으로 줄어듦
      • 만약 BERT와 같은 방법으로 8,192 토큰을 처리하도록 학습하면 셀프 어텐션은 819228192^2번의 연산이 필요, 비효율성 증대된다.

profile
Data Scientist & Data Analyst

0개의 댓글