컴퓨터 비전 작업을 위한 이미지 모델 아키텍처, 사전 학습 가중치, 학습·검증·내보내기 스크립트를 제공하는 PyTorch 라이브러리입니다.
google-research/vision_transformer
Google Research 논문의 Vision Transformer(ViT) 및 MLP-Mixer 이미지 분류 모델을 위한 JAX/Flax 코드와 사전 학습 체크포인트입니다.
- 스타
- 12,770
- 포크
- 1,478
- 열린 이슈
- 137
- 마지막 커밋
- 지난달
어떤 프로젝트인가요?
이 저장소는 이미지 인식을 위해 이미지를 고정 크기 패치의 시퀀스로 처리하거나 전체 MLP 네트워크로 처리하는 두 아키텍처인 Vision Transformer(ViT)와 MLP-Mixer의 코드 및 사전 학습 체크포인트를 공개합니다. ViT 원 논문, MLP-Mixer, ViT 학습에 관한 AugReg 연구, LiT 제로샷 이미지-텍스트 모델 및 sharpness-aware training 관련 후속 연구 등 여러 Google Research 논문과 함께 제공됩니다.
모델은 ImageNet과 ImageNet-21k로 사전 학습되었으며, 코드에는 CIFAR-10/100과 TensorFlow Datasets에서 사용할 수 있는 모든 데이터셋을 대상으로 JAX 및 Flax에서 파인튜닝하는 스크립트가 포함되어 있습니다. 다양한 증강 및 정규화 설정을 적용한 ViT와 하이브리드 모델 5만 개 이상의 체크포인트를 비롯해 다수의 체크포인트가 Google Cloud Storage 버킷에 호스팅되어 있습니다. Colab 노트북에서는 모델 탐색, 파인튜닝 및 LiT 추론을 다루며, timm PyTorch 라이브러리로 여러 체크포인트를 불러올 수 있습니다.
이 프로젝트는 Google의 공식 제품이 아니며, 작성자는 멀티 호스트 학습과 같은 고급 학습 코드는 별도의 big_vision 저장소에 있다고 안내합니다.
핵심 기능
- 01JAX 및 Flax로 ViT와 MLP-Mixer 모델을 구현합니다.
- 02ImageNet과 ImageNet-21k로 사전 학습한 체크포인트를 제공합니다.
- 03TensorFlow Datasets를 통해 사용자 지정 데이터셋을 사용하는 파인튜닝 CLI를 포함합니다.
- 04다양한 증강 설정이 적용된 ViT 및 하이브리드 체크포인트를 5만 개 이상 제공합니다.
- 05모델 탐색, 파인튜닝 및 LiT 추론을 위한 Colab 노트북을 포함합니다.
활용 사례
- 사전 학습된 ViT 또는 Mixer를 사용자 지정 이미지 분류 데이터셋에 파인튜닝하기.
- 연구에서 ViT와 MLP-Mixer 아키텍처 및 학습 레시피를 비교하기.
- 공개된 LiT 모델로 제로샷 이미지-텍스트 추론 실행하기.
빠른 시작
- 1
Python 3.10 이상이 설치되어 있는지 확인합니다
- 2
JAX와 GPU용 종속 항목을 설치합니다
pip install -r vit_jax/requirements.txt - 3
ImageNet-21k로 사전 학습된 ViT-B/16 모델을 CIFAR-10에서 미세 조정합니다
python -m vit_jax.main --workdir=/tmp/vit-$(date +%s) --config=$(pwd)/vit_jax/configs/vit.py:b16,cifar10 --config.pretrained_dir='gs://vit_models/imagenet21k'
사용 전 알아둘 점
- 미세 조정에는 GPU 또는 TPU가 필요하며, README에 따르면 사용 가능한 가속기를 모두 사용합니다.
- Colab의 TPU 설정은 느리므로 대규모 데이터셋에는 전용 머신을 권장합니다.
- JAX와 Flaxformer를 설치하려면 각 저장소의 별도 안내를 따라야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- vision_transformer은(는) 무엇인가요?
- Google Research 논문의 Vision Transformer(ViT) 및 MLP-Mixer 이미지 분류 모델을 위한 JAX/Flax 코드와 사전 학습 체크포인트입니다. 이 저장소는 이미지 인식을 위해 이미지를 고정 크기 패치의 시퀀스로 처리하거나 전체 MLP 네트워크로 처리하는 두 아키텍처인 Vision Transformer(ViT)와 MLP-Mixer의 코드 및 사전 학습 체크포인트를 공개합니다. ViT 원 논문, MLP-Mixer, ViT 학습에 관한 AugReg 연구, LiT 제로샷 이미지-텍스트 모델 및 sharpness-aware training 관련 후속 연구 등 여러 Google Research 논문과 함께 제공됩니다.
- vision_transformer은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- vision_transformer은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- vision_transformer은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. vision_transformer의 마지막 커밋은 2026년 10월 1일입니다.
- vision_transformer은(는) 어디에 사용할 수 있나요?
- 사전 학습된 ViT 또는 Mixer를 사용자 지정 이미지 분류 데이터셋에 파인튜닝하기. 연구에서 ViT와 MLP-Mixer 아키텍처 및 학습 레시피를 비교하기. 공개된 LiT 모델로 제로샷 이미지-텍스트 추론 실행하기.
- vision_transformer는 어떻게 설치하나요?
- Python 3.10 이상이 설치되어 있는지 확인합니다 JAX와 GPU용 종속 항목을 설치합니다: pip install -r vit_jax/requirements.txt ImageNet-21k로 사전 학습된 ViT-B/16 모델을 CIFAR-10에서 미세 조정합니다: python -m vit_jax.main --workdir=/tmp/vit-$(date +%s) --config=$(pwd)/vit_jax/configs/vit.py:b16,cifar10 --config.pretrained_dir='gs://vit_models/imagenet21k'
- vision_transformer은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/google-research/vision_transformer
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
이미지 분류와 관련 비전 작업을 위한 Vision Transformer(ViT) 및 다양한 변형 모델의 PyTorch 구현체입니다.
JAX, TensorFlow, PyTorch에서 실행되는 텍스트·이미지·오디오 모델을 제공하는 Keras 3용 사전 학습 모델 라이브러리입니다.
JAX 모델 가중치와 옵티마이저 상태 등의 저장 및 복원을 위한 체크포인팅·영속성 유틸리티입니다.
빠른 연구 반복을 위해 설계된, JAX/Flax 머신러닝 모델 학습용 모듈형 확장 가능 라이브러리입니다.
Ultralytics YOLO는 객체 탐지, 분할, 분류, 자세 추정, 추적 등을 지원하는 컴퓨터 비전용 Python 라이브러리입니다.