Skip to main content

Vision Transformer

CNN의 한계

  • 합성곱 신경망은 이미지의 작은 부분을 처리하고 그 결과를 모아 좀 더 큰 부분을 처리 해나감
  • 서로 멀리 떨어진 부분들 사이의 관계를 잘 처리하지 못함
  • 서로 멀리 떨어진 feature들을 고려하기 위해서는 큰 필터가 필요 → 계산의 효율성 감소

순환신경망 recurrent neural network

  • 자연어 처리에서 흔히 사용하는 구조
  • 이전의 입력이 이후의 입력에 처리에 영향
  • 먼 거리에 떨어진 입력 간에 정보를 전달하려면 여러 단계를 거쳐야 함
  • 사라지는 경사(vanishing gradient) 문제

주의 메커니즘 attention mechanism

  • 이전의 입력 중 현재 입력을 처리하는데 필요한 정보를 바로 가져오는 방법
  • 현재 단계의 값과 이전 단계의 값을 비교하여 주의 가중치(attention weight)를 계산
  • 이전 단계의 값들에 주의 가중치를 적용하여 가중합
  • 현재 단계와 유사한 특성을 가지는 이전 단계의 값들을 더 큰 비중으로 반영

트랜스포머 Transformer

  • 주의 메커니즘만을 사용한 자연어 처리 모형
    • 문장 내에 주의 메커니즘 적용
    • 문장 간에도 주의 메커니즘 적용
  • Multi-Head Attention
    • 모든 단어는 Q, K, V 세 가지 임베딩을 가짐
    • Q와 K로 주의 가중치를 계산하여 V에 적용
    • 주의 가중치를 다양한 방식으로 계산하여 결합
  • 위치 인코딩
    • 순환신경망은 처리 과정 자체가 순서대로 이뤄지므로 단어의 순서를 반영
    • 트랜스포머 모형은 순서를 다루는 구조가 없음
    • 문장에서 단어의 위치를 인코딩하여 단어 임베딩에 더해줌
    • 정현파를 이용하여 만들기도 하고, 단어 임베딩과 마찬가지로학습 시킬 수도 있음

비전 트랜스포머 Vision Transformer

  • 트랜스포머를 컴퓨터 비전에 적용한 것
  • 이미지를 패치(patch)로 쪼개어, 패치의 시퀀스로 다룸
  • 자기 주의(self attention)는 순열 불변(permutation invariant)
    • 입력 순서가 달라져도 출력이 같음
  • 위치 인코딩을 함께 입력하여 순서 정보를 추가

귀납 편향 inductive bias

  • 모형의 귀납 편향: 데이터의 구조에 대해 모형의 가정
  • 예: CNN의 위치 등변성 translational equivariance:입력의 위치가 바뀌면 출력의 위치도 똑같이 바뀜
  • 머신러닝 모형은 이러한 가정 아래 훈련 데이터의 패턴을 일반화
  • 편향-분산 교환(bias-variance trade-off)
  • 편향이 강하면 분산이 작아짐
    • 학습 데이터셋에 따라 결과가 크게 달라지지 않음
    • 작은 데이터셋에서 성능이 좋음
  • 편향이 약하면 분산이 커짐
    • 학습 데이터셋에 따라 결과가 크게 달라짐
    • 큰 데이터셋에서 성능이 좋음

트랜스포머가 잘 작동하는 이유

  • 딥러닝의 트랜스포머 모형이 최근 각광(예: ChatGPT 등)
  • 기존의 딥러닝에서 널리 사용되던 CNN, RNN 등은 강한 편향
    • CNN은 국소적 관계에 대해, RNN은 순차적 관계에 대해 강한 가정을 가짐
    • RNN은 데이터를 순서대로 처리하므로 순서상 가까운 단어가 더 강한 영향
    • 그러나 자연어는 반드시 순서대로 처리되는 것은 아님(예: 주술호응)
  • 트랜스포머는 순서나 위치에 대한 가정이 없음 → 편향이 적음
  • 데이터가 적은 분야(예: 희귀 질환 진단)에서는 트랜스포머 활용이 어려움
  • 단, 트랜스포머는 CNN에 비해 계산 효율도 낮음
  • 트랜스포머의 계산 효율성을 높이거나 CNN과 결합하는 다양한 연구가 진행 중