익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
비전 트랜스포머
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
비전 트랜스포머(Vision Transformer, 줄여서 ViT)는 이미지 처리를 위해 고안된 딥러닝 구조로, 전통적인 합성곱 신경망(CNN) 대신 트랜스포머(self-attention) 아키텍처를 활용하여 이미지를 “패치(patch)” 단위로 처리한다. <ref>“An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale”, arXiv:2010.11929, https://arxiv.org/abs/2010.11929</ref> ==정의== 비전 트랜스포머는 이미지를 일정 크기의 패치로 나눈 다음, 각 패치를 토큰처럼 간주하여 순차(sequence) 입력으로 만들어 트랜스포머 인코더(transformer encoder)를 통해 처리함으로써 이미지의 특징(feature)을 학습하는 모델이다. 합성곱 신경망(CNN)에 비해 전역(global) 문맥(context)과 장거리(long-range) 상관관계(correlation)를 보다 직접적으로 포착할 수 있다. <ref>“Vision Transformer: What It Is & How It Works”, V7labs, https://v7labs.com/blog/vision-transformer-guide</ref> ==구성 요소 및 작동 원리== #이미지 패치 분할 및 임베딩 #*입력 이미지를 H×W 크기, C 채널(RGB 등)의 배열로 본다. #*P×P 크기의 패치들로 분할하고, 각 패치를 평탄화(flatten)한 뒤 선형 투영(linear projection)을 통해 고정 차원 임베딩 벡터로 변환한다. #*패치의 순서를 알리기 위해 위치(position) 임베딩(position embedding)을 더한다. <ref>“ViT Architecture Overview”, Viso.ai, https://viso.ai/deep-learning/vision-transformer-vit</ref> #클래스 토큰 추가 #*입력 시퀀스 앞에 특수 토큰 “[CLS]” 또는 유사 특수 토큰을 삽입한다. #*이 토큰은 트랜스포머 인코더의 마지막 층 출력에서 전체 이미지 정보를 요약하는 용도로 사용된다. <ref>“ViT Documentation”, HuggingFace, https://huggingface.co/docs/transformers/en/model_doc/vit</ref> #트랜스포머 인코더 블록 #*여러 개의 인코더 블록(transformer encoder layers)을 쌓는다. #*각 블록은 멀티헤드 셀프 어텐션(multi-head self-attention), 피드포워드 네트워크(feed-forward network), 레이어 정규화(layer normalization), 잔차 연결(residual connections) 등을 포함한다. <ref>“An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale”, arXiv:2010.11929</ref> #분류 헤드 및 출력 #*인코더의 출력에서 클래스 토큰 벡터 또는 모든 패치 토큰의 집계(예: 평균 풀링(global average pooling))을 취한다. #*이 벡터를 간단한 MLP(선형 레이어 + 활성함수 + softmax) 분류 헤드를 통과시켜 최종 클래스 예측을 한다. <ref>“ViT Documentation”, HuggingFace, https://huggingface.co/docs/transformers/en/model_doc/vit</ref> ==합성곱 신경망과의 차이점== 비전 트랜스포머와 합성곱 신경망(CNN)은 이미지 처리에 있어 여러 면에서 다르다. #특징 추출 방식 #*CNN은 작은 커널(kernel, 예: 3×3, 5×5)을 이용해서 지역(local) 특징을 계층적으로 추출한다. #*ViT는 패치들을 이용해 전역 관계(global relationships)를 직접 모델링하며, 공간(spatial)적으로 멀리 떨어진 패치 사이의 상호작용(interaction)을 어텐션(attention) 메커니즘으로 잡아낸다. <ref>“Vision Transformer: What It Is & How It Works”, V7labs, https://v7labs.com/blog/vision-transformer-guide</ref> #지역성(inductive bias) #*CNN은 필터 공유(weight sharing), 국소 수용 영역(local receptive field) 등의 구조적 편향(structural prior)이 있어서 적은 데이터에도 일반화할 수 있는 경향이 있다. #*ViT는 이런 지역적 구조가 내재되어 있지 않기 때문에 더 많은 데이터와 정교한 정규화(regularization), 데이터 보강(data augmentation) 등이 필요하다. <ref>“ViT Architecture Overview”, Viso.ai, https://viso.ai/deep-learning/vision-transformer-vit</ref> #연산 복잡도 및 자원 요구 #*CNN의 합성곱 연산은 국소적(local)이며 스트라이드(stride), 풀링(pooling) 등을 통해 공간 크기를 줄임으로써 계산량을 관리한다. #*ViT의 어텐션 연산은 토큰(token, 패치) 수의 제곱(quadratic)에 비례하여 연산 및 메모리 비용이 커지며, 특히 높은 해상도 이미지일수록 부담이 커진다. #표현력 및 일반화 성능 #*ViT는 충분히 큰 학습 데이터셋과 적절한 사전학습(pretraining)이 있을 경우, CNN보다 뛰어난 일반화(generalization) 및 표현력(capacity)을 보이는 경우가 많다. <ref>“An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale”, arXiv:2010.11929</ref> #*그러나 데이터가 적거나 사전학습이 부족한 경우, CNN이 더 안정적(stable)이고 효율적(efficient)일 수 있다. ==장단점 및 개선 과제== *장점 **전역(global) 관계 및 문맥 파악 용이 **모듈 구조(modular)로 다양한 크기의 패치, 깊이(depth), 폭(width) 조정 가능 **사전학습된 모델(pretrained model)의 전이 학습(transfer learning)에서 높은 성능 *한계 **데이터 효율성이 낮음 — 많은 양의 데이터 필요 **연산 및 메모리 비용 중요 — 특히 패치 수가 많거나 고해상도 입력 시 부담 **지역적 특징(local features)에 대한 초기 이해가 부족할 수 있음 — 작은 디테일(detail) 포착이 어려울 수 있음 ==같이 보기== *[[합성곱 신경망]] *[[셀프 어텐션]] *[[트랜스포머 (인공지능)|트랜스포머 (인공 신경망)]] *[[딥러닝]] *[[이미지 분류]] ==참고 문헌== An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale, Alexey Dosovitskiy et al., 2020 ==각주== <references /> [[분류:인공지능]] [[분류:딥 러닝]]
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록