Repolode
google-research

google-research/vision_transformer

Код на JAX/Flax и предобученные чекпойнты моделей Vision Transformer (ViT) и MLP-Mixer для классификации изображений из статей Google Research.

Звёзды
12,770
Форки
1,478
Открытые issues
137
Последний коммит
в прошлом месяце

Что это?

В репозитории опубликованы код и предобученные чекпойнты Vision Transformer (ViT) и MLP-Mixer — двух архитектур для распознавания изображений, которые обрабатывают изображения как последовательности патчей фиксированного размера или как сети, состоящие только из MLP. Репозиторий сопровождает несколько статей Google Research, включая оригинальную статью о ViT, работу MLP-Mixer, исследование AugReg по обучению ViT, а также более поздние работы о LiT — моделях для zero-shot сопоставления изображений и текста — и обучении с учётом резкости.

Модели предобучены на ImageNet и ImageNet-21k, а код включает скрипты для дообучения на JAX и Flax на таких наборах данных, как CIFAR-10/100, и на любых наборах, доступных через TensorFlow Datasets. Многие чекпойнты размещены в бакетах Google Cloud Storage; среди них — более 50 тысяч вариантов ViT и гибридных моделей с разными настройками аугментации и регуляризации. В Colab-ноутбуках рассматриваются модели, их дообучение и инференс LiT; несколько чекпойнтов также можно загрузить с помощью библиотеки timm для PyTorch.

Проект не является официальным продуктом Google. По словам автора, более продвинутый код для обучения, например для обучения на нескольких хостах, находится в отдельном репозитории big_vision.

Ключевые возможности

  • 01Реализует модели ViT и MLP-Mixer на JAX и Flax.
  • 02Предоставляет предобученные чекпойнты для ImageNet и ImageNet-21k.
  • 03Включает CLI для дообучения на пользовательских наборах данных через TensorFlow Datasets.
  • 04Предлагает более 50 тысяч чекпойнтов ViT и гибридных моделей с различными настройками аугментации.
  • 05Включает Colab-ноутбуки для знакомства с моделями, дообучения и инференса LiT.

Сценарии использования

  • Дообучение предобученной модели ViT или Mixer на пользовательском наборе данных для классификации изображений.
  • Сравнение архитектур ViT и MLP-Mixer, а также рецептов их обучения в исследовательских целях.
  • Запуск zero-shot-инференса для изображений и текста с выпущенными моделями LiT.

Быстрый старт

  1. 1

    Убедитесь, что установлена Python версии 3.10 или новее

  2. 2

    Установите JAX и зависимости для GPU

    pip install -r vit_jax/requirements.txt
  3. 3

    Дообучите модель ViT-B/16 (предварительно обученную на ImageNet-21k) на 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, используются все доступные ускорители.
  • Настройка TPU в Colab занимает много времени, поэтому для больших наборов данных рекомендуется выделенная машина.
  • Для установки JAX и Flaxformer необходимо следовать отдельным инструкциям в их репозиториях.

В подборках

Темы

Частые вопросы

Что такое vision_transformer?
Код на JAX/Flax и предобученные чекпойнты моделей Vision Transformer (ViT) и MLP-Mixer для классификации изображений из статей Google Research. В репозитории опубликованы код и предобученные чекпойнты Vision Transformer (ViT) и MLP-Mixer — двух архитектур для распознавания изображений, которые обрабатывают изображения как последовательности патчей фиксированного размера или как сети, состоящие только из MLP. Репозиторий сопровождает несколько статей Google Research, включая оригинальную статью о ViT, работу MLP-Mixer, исследование AugReg по обучению ViT, а также более поздние работы о LiT — моделях для zero-shot сопоставления изображений и текста — и обучении с учётом резкости.
vision_transformer можно использовать бесплатно? Какая у него лицензия?
vision_transformer распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
vision_transformer всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в vision_transformer — 1 окт. 2026 г..
Для чего можно использовать vision_transformer?
Дообучение предобученной модели ViT или Mixer на пользовательском наборе данных для классификации изображений. Сравнение архитектур ViT и MLP-Mixer, а также рецептов их обучения в исследовательских целях. Запуск zero-shot-инференса для изображений и текста с выпущенными моделями LiT.
Как установить vision_transformer?
Убедитесь, что установлена Python версии 3.10 или новее Установите JAX и зависимости для GPU: pip install -r vit_jax/requirements.txt Дообучите модель ViT-B/16 (предварительно обученную на ImageNet-21k) на 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 проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Библиотека PyTorch с архитектурами моделей для обработки изображений, предобученными весами и скриптами обучения, валидации и экспорта для задач компьютерного зрения.

37,3 тыс.+5 за неделю5,2 тыс.PythonApache-2.0Обновлён 4 дня назад

Модульная масштабируемая библиотека для обучения моделей машинного обучения на JAX/Flax, созданная для быстрых исследовательских итераций.

359+2 за неделю36PythonApache-2.0Активно поддерживаетсяОбновлён 24 часа назад