Forwarded from Machinelearning
CoMotion - метод, разработанный Apple для одновременного отслеживания 3D-движений нескольких людей, который принципиально отличается от покадрового обнаружения и классических способов трекинга.
CoMotion использует рекуррентную модель, которая поддерживает набор отслеживаемых 3D-поз и обновляет их при поступлении нового кадра, непосредственно анализируя пиксели изображения. Способность использовать визуальные подсказки вкупе с парадигмой
tracking by attention
позволяет CoMotion эффективно отслеживать перекрывающихся и временно исчезающих из виду людей.Архитектура CoMotion состоит из модуля обнаружения (он определяет кандидатов на новые треки) и модуля обновления поз (корректирует позы существующих треков). Оба модуля работают с признаками изображения, извлеченными с помощью стандартной модели
ConvNextV2
. Модуль обновления поз использует cross-attention к признакам изображения для каждого трека, опираясь на предыдущие состояния, и применяет GRU для рекуррентного обновления скрытых состояний.Прогнозирование 3D-поз выполняется путем параметризации модели SMPL, а управление треками основано на эвристических правилах, использующих модифицированную метрику Object Keypoint Similarity (OKS).
Модель CoMotion обучается в 3 этапа. Первый - предварительное обучение энкодера и модуля обнаружения на больших наборах данных отдельных изображений (псевдо-размеченные InstaVariety, COCO, MPII и синтетический BEDLAM). Второй - обучение модуля обновления поз на коротких видео из BEDLAM, WHAC-A-MOLE и размеченных PoseTrack и DanceTrack. На финальном этапе обучение модуля обновления поз продолжается на более длинных видеопоследовательностях.
Экспериментальная оценка CoMotion проводилась на стандартных бенчмарках для отслеживания и оценки поз. На PoseTrack21 CoMotion показал значительное улучшение метрик (MOTA на 14% и IDF1 на 12%). При этом CoMotion работает на порядок быстрее, чем сопоставимая система 4DHumans.
# Clone the repo
git clone https://github.com/apple/ml-comotion.git
cd ml-comotion
# Create a conda env
conda create -n comotion -y python=3.10
conda activate comotion
# Install dependencies
pip install -e
# Download models
bash get_pretrained_models.sh
# Run CoMotion
python demo.py -i path/to/video.mp4 -o results/
@ai_machinelearning_big_data
#AI #ML #3DTracking #CoMotion #Apple
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2❤1
Forwarded from Machinelearning
FlexTok - метод токенизации изображений, который преобразует 2D-изображения в упорядоченные 1D-последовательности переменной длины.
Его цель - сократить объем данных, необходимых для обучения генеративных моделей, и при этом оставить достаточную информацию для качественной реконструкции и генерации.
В отличие от традиционных подходов, где число токенов фиксировано и зависит только от размера изображения, FlexTok подстраивается под сложность контента: простейшая сцена может кодироваться несколькими токенами, а сложная - десятками и сотнями .
FlexTok, это по сути, пайплайн из 3 компонентов: ViT‑энкодер, квантование регистров и маскирование внимания:
ViT‑энкодер с набором «регистровых» токенов читает латентные представления VAE‑GAN и конденсирует их в 1D-последовательность до 256 регистров .
Затем, с помощью FSQ‑квантования, каждый регистр дискретизируется в код из заранее определенного словаря размером ~64 000.
На этом этапе применяется "nested dropout": во время обучения случайно обрезаются последние токены, чтобы модель научилась упорядочивать информацию от грубых форм к деталям.
Параллельно применяется авторегрессионная маска внимания: каждый токен в цепочке видит только те, что были до него, и не знает о тех, что идут после. Это заставляет модель генерировать изображения шаг за шагом, от первого токена к последнему, и упрощает ей задачу прогнозирования следующих элементов.
Декодер в FlexTok - это модель rectified flow, которая на вход берет укороченные токены и слегка зашумленные латенты VAE и учится предсказывать тот шум, который нужно убрать, чтобы вернуть исходное представление.
Чтобы обучение шло быстрее и давало более точные результаты, добавляют REPA‑Loss: он сравнивает промежуточные признаки с векторами из DINOv2‑L. Благодаря этому даже при очень жесткой компрессии (от 1 до 256 токенов), FlexTok успешно восстанавливает детали изображения.
FlexTok легко встраивается в текстово‑ориентированные модели и может улучшить соответствие изображения описанию, даже если число токенов меняется. К тому же его адаптивная токенизация применима не только к картинкам, но и к аудио или видео.
@ai_machinelearning_big_data
#AI #ML #Tokenizer #Flextok #Apple
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2
Forwarded from Machinelearning
Embedding Atlas — опенсорсный инструмент от Apple для интерактивной визуализации больших наборов векторных представлений, который позволяет не просто смотреть на облако точек, а полноценно с ним работать. И что самое приятное, он способен отрисовывать до нескольких миллионов точек благодаря реализации на WebGPU.
Embedding Atlas сам находит скопления в данных и подписывает их, позволяя мгновенно сориентироваться в общей структуре датасета. Чтобы отделить реальные кластеры от случайных выбросов, используется оценка плотности ядра с отрисовкой контуров плотности.
Решена и вечная проблема визуализаций - "каша" из перекрывающихся точек. Embedding Atlas использует технологию order-independent transparency, так что даже при большом наложении точек картинка остаётся четкой и информативной.
В инструменте есть поиск в реальном времени и нахождение ближайших соседей. Можно ввести текстовый запрос или просто кликнуть на любую точку в облаке, и Embedding Atlas мгновенно подсветит наиболее похожие на нее данные.
Еще есть интерактивный фильтр по метаданным. Например, можно выбрать на гистограмме определенный класс объектов, и визуализация тут же отфильтрует эмбединги, оставив только соответствующие ему точки.
Дает три варианта интеграции: утилиту командной строки для быстрой визуализации датафреймов, виджет для Jupyter, позволяющий встраивать атлас прямо в ноутбуки, и компонент для Streamlit, если вы создаете полноценные веб-приложения.
Этот пакет для тех, кто хочет встроить визуализацию в собственные веб-приложения. Он предоставляет готовые UI-компоненты в виде API:
Table
, EmbeddingView
, EmbeddingViewMosaic
и EmbeddingAtlas
.@ai_machinelearning_big_data
#AI #ML #Embedding #Visualisation #Apple
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩7❤3👍3