# Янник Килчер о DINO: как Vision Transformer научился видеть объекты без учителя

Источник: https://www.youtube.com/watch?v=h3ij3F3cPIk
Канал: Yannic Kilcher
Опубликовано: 01.05.2021

---

Эта статья основана на разборе [Янника Килчера (Yannic Kilcher)](https://www.youtube.com/@YannicKilcher), где он детально анализирует работу исследователей из Facebook AI Research (FAIR), представивших DINO — новый метод обучения Vision Transformer (ViT). Технология позволяет нейросетям обучаться распознаванию образов без использования размеченных данных (меток), демонстрируя при этом удивительные способности к сегментации объектов.

## 🚀 DINO: Самодистилляция без меток
[[JUMP:02:14]]

Метод **DINO** (Self-**di**stillation with **no** labels) представляет собой парадигму обучения Vision Transformer, которая активирует в моделях «возникающие» (emerging) свойства [02:27]. Как отмечает Янник Килчер, наиболее поразительным результатом является то, что нейросеть, которую никогда не учили, что такое «собака» или «лошадь», начинает идеально отслеживать контуры этих объектов в видеопотоке [00:40].

Ключевые особенности системы:

*   **Отсутствие учителя:** Модель обучается на «сырых» изображениях без аннотаций [03:07].
*   **Автоматическая сегментация:** Карты внимания (attention maps) DINO напрямую показывают маски объектов, что в классических сверточных сетях (CNN) требовало бы сложных дополнительных манипуляций [03:47].
*   **Превосходство над классикой:** Линейный классификатор, обученный поверх замороженных признаков DINO, достигает точности 80,1% Top-1 на ImageNet [04:43].

## 🧠 Архитектура: Студент против Учителя
[[JUMP:14:03]]

В основе DINO лежит концепция дистилляции знаний, но в необычном формате «самодистилляции». В стандартном обучении есть большая обученная модель (учитель) и маленькая (студент). В DINO архитектуры идентичны, и учитель строится на лету.

Механизм работы [15:35]:

1.  **Студент (Student):** Это сеть, которая активно обучается с помощью градиентного спуска.
2.  **Учитель (Teacher):** Его веса обновляются как экспоненциальное скользящее среднее (EMA) от весов студента. Учитель — это более «стабильная» версия студента [15:49].
3.  **Лосс (Loss):** Задача студента — предсказать тот же выход, который дает учитель для того же изображения, но представленного в другом ракурсе.

Янник Килчер подчеркивает, что эта схема позволяет избежать «коллапса модели», когда нейросеть начинает выдавать одинаковый (тривиальный) ответ для любого изображения, чтобы формально минимизировать ошибку [13:36].

## 🛠 Методология и инструменты
[[JUMP:10:56]]

DINO обходится без «негативных примеров» (contrastive learning), которые типичны для таких алгоритмов, как SimCLR. Вместо сравнения разных картинок, система фокусируется на разных «взглядах» (views) одной и той же картинки.

**Процесс подготовки данных:**

*   **Global Crops:** Крупные фрагменты изображения (покрытие >50%), которые дают контекст [12:04].
*   **Local Crops:** Мелкие фрагменты (покрытие <50%), заставляющие систему догадываться о целом по части [12:16].
*   **Аугментации:** Использование случайного поворота, изменения цвета (color jitter) и соляризации, чтобы сделать изображения разными для студента и учителя, сохраняя их суть [11:10].

**Технические параметры стабилизации:**

*   **Centering (Центрирование):** Учитель вычитает среднее значение своих предсказаний из текущих лоджитов, что предотвращает доминирование одного измерения в векторе признаков [21:41].
*   **Sharpening (Заострение):** В функции Softmax для учителя используется низкая «температура», что делает его распределение вероятностей более резким и уверенным. Это дает студенту четкий сигнал для подражания [22:38].

## 📈 Результаты и визуализация внимания
[[JUMP:28:23]]

Нейросеть не просто учит абстрактные цифры, она выстраивает логическое пространство признаков. Янник Килчер демонстрирует карту кластеризации ImageNet, созданную DINO: похожие объекты (тракторы, комбайны, минибусы) автоматически оказываются рядом, хотя сеть не знала их названий [32:49].

Визуализация внимания (Attention Maps) в ViT, обученном через DINO, работает как полноценный инструмент сегментации:

*   На изображениях лошадей четко видны уздечки [30:22].
*   У грузовиков колеса отделены от кузова в логике внимания сети [30:37].
*   Система успешно отслеживает объекты даже за препятствиями (окклюзиями), например, корабль за волной или лошадь за травой [00:53].

## 🧐 Почему это работает: Критическое мнение Янника Килчера
[[JUMP:33:53]]

Несмотря на впечатляющие результаты, Янник Килчер выделяет два критических фактора, которые «помогают» нейросети выглядеть умнее, чем она есть на самом деле:

1.  **Человеческий приоритет (Human Prior):** Мы сами закладываем знания в модель через выбор аугментаций. Например, меняя яркость, мы «говорим» сети, что яркость не важна для идентификации объекта. Таким образом, знания передаются не через метки, а через архитектуру искажений [34:50].
2.  **Смещение датасета (Dataset Bias):** Янник утверждает, что ImageNet и фото из Instagram не являются случайными данными. Люди всегда снимают какой-то *объект*, помещая его в центр кадра. Сеть учится искать «то, что было важно для фотографа», а не просто структуру мира [37:33].

По мнению ведущего, для достижения истинного автономного интеллекта нам нужно научиться избавляться от спроектированных человеком аугментаций и использовать по-настоящему сырые, не отобранные людьми данные [38:43].