모델 혁신: Vision Transformers
ㅁ 모델 혁신
ㅇ 정의:
딥러닝 모델의 성능 향상과 새로운 접근 방식을 통해 기존 한계를 극복하려는 기술적 시도.
ㅇ 특징:
– 기존 모델 대비 구조적 변화 또는 새로운 개념 도입.
– 특정 문제 해결에 특화된 설계.
– 학습 효율성 및 일반화 성능 개선 목표.
ㅇ 적합한 경우:
– 기존 모델로 해결하기 어려운 문제에 적용.
– 새로운 데이터 유형이나 대규모 데이터 환경에서의 활용.
ㅇ 시험 함정:
– 모델 혁신과 단순한 하이퍼파라미터 튜닝의 차이를 혼동할 수 있음.
– 특정 혁신 기술의 실제 적용 사례를 묻는 문제에서 혼란 발생 가능.
ㅇ 시험 대비 “패턴 보기” 예시:
1) 모델 혁신은 기존 모델의 하이퍼파라미터 조정만으로 이루어진다. (X)
2) 모델 혁신은 성능 향상을 위해 새로운 구조적 접근을 포함한다. (O)
================================
1. Vision Transformers
ㅇ 정의:
이미지 데이터를 처리하기 위해 Transformer 구조를 활용한 딥러닝 모델.
ㅇ 특징:
– CNN 대신 Attention 메커니즘을 활용하여 이미지의 전역적 관계를 학습.
– 입력 이미지를 패치(patch) 단위로 분할하여 처리.
– 대규모 데이터와 강력한 컴퓨팅 자원을 요구.
ㅇ 적합한 경우:
– 고해상도 이미지 분석.
– 전역적 이미지 정보가 중요한 문제.
ㅇ 시험 함정:
– Vision Transformers와 CNN의 차이를 모호하게 묻는 문제.
– 패치 크기와 모델 성능 간의 관계에 대한 오해.
ㅇ 시험 대비 “패턴 보기” 예시:
1) Vision Transformers는 CNN의 구조를 기반으로 한다. (X)
2) Vision Transformers는 Attention 메커니즘을 활용한 구조이다. (O)
ㅁ 추가 학습 내용
Vision Transformers 학습을 위해 추가로 알아야 할 개념은 다음과 같이 정리할 수 있습니다:
1. Self-Attention 메커니즘:
– Self-Attention은 입력 데이터의 각 요소가 다른 요소들과의 관계를 학습하는 방법입니다.
– Query, Key, Value를 계산하고, Query와 Key의 내적을 통해 Attention Score를 구한 뒤 Softmax를 적용하여 가중치를 얻습니다. 이를 Value에 곱해 최종 출력을 생성합니다.
– 이를 이미지 처리에 적용할 때는 이미지를 패치(patch) 단위로 나누고, 각 패치를 Flatten하여 입력으로 사용합니다. 패치 간의 관계를 학습하기 위해 Self-Attention 메커니즘을 활용합니다.
2. Vision Transformers의 응용 사례와 성능 비교:
– Vision Transformers는 이미지 분류, 객체 검출, 세그멘테이션 등 다양한 컴퓨터 비전 작업에 응용됩니다.
– 대표적인 사례로 ImageNet 데이터셋에서의 이미지 분류 작업이 있으며, 기존 CNN 기반 모델에 비해 경쟁력 있는 성능을 보여줍니다.
– 특히 대규모 데이터셋에서는 CNN보다 더 나은 일반화 성능을 발휘하는 경우가 많습니다.
3. Transformer 모델의 학습 효율성을 높이기 위한 최적화 기법:
– 학습률 스케줄링: Warm-up 단계에서 학습률을 서서히 증가시킨 후, 학습이 진행됨에 따라 감소시키는 방식이 흔히 사용됩니다.
– 데이터 증강 기법: CutMix, MixUp, RandAugment 등 다양한 데이터 증강 기법을 활용하여 모델의 일반화 성능을 향상시킬 수 있습니다.
– 가중치 초기화와 정규화 기법도 학습 안정성을 높이는 데 중요한 역할을 합니다.
4. Vision Transformers의 주요 한계점과 이를 보완하기 위한 연구 동향:
– 한계점:
– 높은 컴퓨팅 자원 소모: Self-Attention 연산의 복잡도가 입력 크기에 따라 제곱적으로 증가하여 메모리와 계산 비용이 높습니다.
– 소규모 데이터셋에서의 성능 저하: 대규모 데이터셋에서 우수한 성능을 보이지만, 소규모 데이터셋에서는 과적합 문제가 발생할 수 있습니다.
– 보완 연구 동향:
– 효율적인 Transformer 변형: Sparse Attention, Linformer, Performer 등을 통해 계산 복잡도를 줄이는 연구가 진행되고 있습니다.
– 사전 학습(pretraining)과 전이 학습(transfer learning): 대규모 데이터셋에서 사전 학습 후, 소규모 데이터셋에 전이 학습을 적용하여 성능을 개선합니다.
– 하이브리드 모델: CNN과 Transformer를 결합하여 두 모델의 장점을 활용하는 접근법도 연구되고 있습니다.