상세 컨텐츠

본문 제목

[스노피 AI] Vision Transformer 쉽게 이해하기 - 5. Self-Attention Mechanism

SnowPea(스노피) AI

by 와포 2024. 8. 5. 10:51

본문

Self-Attention Mechanism

1. Introduction to Self-Attention

· Definition : Intra-Attention이라고도 알려진 Self-Attention은 모델이 단일 시퀀스의 여러 부분 간의 관계를 고려할 수 있도록 하는 메커니즘입니다. 다른 모든 요소와 관련하여 시퀀스의 각 요소에 대한 attention score를 계산하여 모델이 관련 기능 및 종속성에 집중할 수 있도록 합니다.

2. Importance of Self-Attention

· Context understanding : Self-Attention을 사용하면 모델이 데이터 내의 장기적인 종속성과 컨텍스트 관계를 캡처할 수 있습니다.

  • Efficiency : 병렬화를 활성화하여 순환 신경망(RNN)에 비해 처리 효율성을 높입니다.

3. Self-Attention Mechanism Overview

  • Steps:
    1. Input Representation: 입력 시퀀스를 임베딩으로 변환합니다.
    2. Query, Key, and Value Vectors: 시퀀스의 각 요소에 대해 세 가지 다른 표현(쿼리, 키, 값)을 계산합니다.
    3. Attention Scores: 쿼리 및 키 벡터를 사용하여 attention score를 계산합니다.
    4. Softmax Function: softmax 함수를 사용하여 attention score를 nomalization합니다.
    5. Weighted Sum: attention score를 기준으로 값 벡터의 가중 합계를 계산합니다.

4. Detailed Steps

4.1. Input Representation

  • Process: 입력 시퀀스의 각 요소는 임베딩 벡터로 변환됩니다.
  • Example : 문장의 경우 각 단어는 임베딩 레이어를 사용하여 고정 차원 벡터로 변환됩니다.

4.2. Query, Key, and Value Vectors

  • Definition:
    • Query (Q): 무엇에 집중할지 결정합니다.
    • Key (K): 비교할 데이터 포인트를 나타냅니다.
    • Value (V): 실제 정보를 포함합니다.
  • Computation:
    • Q=W Q
    • K=W KX
    • V=W VX
    • 여기서 W Q, W K, W V는 가중치 행렬이고 X는 입력 임베딩입니다.

4.3. Attention Scores

  • Formula :
    • 여기서 dk는 키 벡터의 차원입니다
  • Explanation : 쿼리와 키 벡터의 내적은 쿼리와 관련하여 각 키의 중요성을 나타내는 attention score를 결정합니다.

4.4. Softmax Function

  • Purpose: attention score를 확률로 변환합니다.
  • Formula :
  • Explanation : At
  • tention score의 합이 1이 되도록 하여 가중치로 사용할 수 있도록 합니다.

4.5. Weighted Sum

  • Process: 값 벡터에 nomalization된 attention score를 곱하여 최종 출력을 얻습니다.
  • Formula :
  • Explanation : attention score로 표시된 관련성을 기준으로 전체 시퀀스의 정보를 집계합니다.

5. Visualization

  • 시각화는 입력 시퀀스의 여러 부분 간의 관계를 보여줌으로써 self-attention 메커니즘이 어떻게 작동하는지 이해하는 데 도움이 됩니다. 이는 모델이 계산 중에 초점을 맞추고 있는 이미지 또는 문장의 부분을 이해하는 데 특히 유용할 수 있습니다..
  • Visualization Steps : 값 벡터에 nomalization된 attention score를 곱하여 최종 출력을 얻습니다.
    • Input Embedding : 입력 데이터를 임베딩으로 표현합니다.
    • Computing Attention Scores : 쿼리, 키 및 값 벡터를 사용하여 attention score를 계산합니다.
    • Applying Softmax : 어텐션 점수를 nomalization합니다.
    • Generating Output : 가치 벡터와 주의 가중치를 결합하여 최종 출력을 생성합니다.

6. Example Calculation

  • Step-by-Step: 작은 입력 시퀀스를 사용하여 간단한 예를 살펴보세요
  • Details: 쿼리, 키, 값 벡터, attention score, softmax nomalization 및 최종 출력을 계산하는 방법을 보여줍니다.

7. Applications in Vision Transformers

  • ViT Usage: ViT(Vision Transformers)에서 Self-Attention은 이미지의 여러 패치 간의 관계를 모델링하는 데 사용됩니다.
  • Advantages: 모델이 global dependency와 상황별 정보를 효율적으로 캡처할 수 있습니다.

8. Advantages and Disadvantages

  • Advantages:
    • Captures long-range dependencies.
    • 병렬화 가능하여 효율성이 향상됩니다.
  • Disadvantages:
    • 긴 시퀀스의 경우 계산 집약적입니다.
    • 많은 양의 메모리가 필요합니다.

9. Conclusion

  • Summary: Self-Attention은 모델이 시퀀스 내의 상황별 관계를 이해할 수 있도록 하는 강력한 메커니즘으로, NLP와 컴퓨터 비전 모두의 작업에 매우 중요합니다.
  • Future Directions: 계산 복잡성을 줄이고 성능을 향상시키기 위해 Self-Attention 메커니즘을 최적화하는 방법에 대한 지속적인 연구가 필요합니다.

 

 

SNOWPEA AI

SnowPea-VH로 빠르고 쉽게 AI 가상인간을 만들어보세요. 무료 체험하기 SnowPea-VH는 텍스트를 입력하는 것만으로도 놀라운 AI 버추얼 휴먼 영상을 생성합니다. 지금 바로 체험해보세요. 무료 체험하기

www.wafour.com

 

관련글 더보기

댓글 영역