Неравенство Рао-Крамера

Материал из MachineLearning.

Перейти к: навигация, поиск

Вы правы, я использовал недопустимый символ `→` в тексте. Вот исправленная версия статьи, где все стрелки заменены на текстовые обозначения (например, "->" или словесные описания), а также исправлены все остальные потенциальные проблемы с вики-разметкой.

---


Статья написана с использованием LLM ChatGPT (GPT-5.6 Sol) и проверена участником Aleksei Kovalenko 20:00, 14 июля 2026 (MSD)


Содержание

Адаптация модели во время тестирования (англ. test-time adaptation, TTA) — класс методов машинного обучения, позволяющих модифицировать предварительно обученную модель или её внутренние представления на этапе логического вывода (инференса) без доступа к исходным обучающим данным. Основная цель TTA — повышение устойчивости модели к сдвигу распределения (англ. distribution shift) между обучающей и тестовой выборками, который возникает в реальных приложениях вследствие изменения освещённости, ракурса, стиля изображения, шума сенсора или иных факторов, не контролируемых на этапе обучения.

В отличие от классического обучения, где модель фиксируется после завершения тренировки, TTA предполагает адаптацию параметров, нормализационных статистик или выходных представлений непосредственно в момент обработки тестового примера или мини-батча. Это делает методы TTA критически важными для систем компьютерного зрения, обработки естественного языка и робототехники, работающих в нестационарных средах.

Формальная постановка задачи

Пусть f_\theta: \mathcal{X} \to \mathcal{Y} — модель, параметризованная вектором \theta \in \Theta, обученная на данных \{(x_i, y_i)\}_{i=1}^N, порождённых распределением P_{\text{train}}(x, y). На этапе тестирования модель сталкивается с выборкой \{x_j^*\}_{j=1}^M, распределение которой P_{\text{test}}(x, y) отличается от обучающего: P_{\text{test}}(x) \ne P_{\text{train}}(x) (ковариатный сдвиг) и/или P_{\text{test}}(y|x) \ne P_{\text{train}}(y|x) (условный сдвиг). Задача TTA формулируется как поиск \theta^*(x^*) или модифицированного предсказания \hat{y}^* для каждого тестового примера x^* (или для каждого батча), минимизирующего ожидаемую ошибку на тестовом распределении:

\theta^* = \arg\min_{\theta' \in \Theta} \mathbb{E}_{(x^*, y^*) \sim P_{\text{test}}} \mathcal{L}(f_{\theta'}(x^*), y^*),

при условии, что доступ к P_{\text{train}} и обучающим данным \{(x_i, y_i)\} отсутствует (или ограничен).

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

Классификация методов TTA

Методы адаптации во время тестирования можно разделить на три основные категории в зависимости от того, какие компоненты модели модифицируются.

Адаптация статистик нормализации

Наиболее распространённый и вычислительно лёгкий подход — перенастройка статистик слоёв пакетной нормализации (англ. batch normalization, BN). В стандартном обучении BN использует скользящие средние и дисперсии, накопленные на обучающей выборке. При сдвиге распределения эти статистики становятся нерелевантными. TTA-методы этого класса пересчитывают среднее и дисперсию на каждом тестовом батче[1]:

\mu_{\text{test}}^{(l)} = \frac{1}{B} \sum_{j=1}^B z_j^{(l)}, \quad \sigma_{\text{test}}^{(l)} = \sqrt{\frac{1}{B} \sum_{j=1}^B (z_j^{(l)} - \mu_{\text{test}}^{(l)})^2 + \epsilon},

где z_j^{(l)} — активации слоя l в текущем батче размера B. Затем слой BN использует \mu_{\text{test}}^{(l)} и \sigma_{\text{test}}^{(l)} вместо сохранённых обучающих статистик. Этот подход, известный как адаптивная пакетная нормализация (англ. adaptive batch normalization), лежит в основе многих ранних работ по TTA[1].

Более продвинутые варианты, например, BN-Statistics Adaptation (BN-SA)[1], используют экспоненциально взвешенное скользящее среднее для учёта эволюции распределения во времени.

Адаптация параметров модели (градиентная)

Второй класс методов выполняет несколько шагов градиентного спуска на тестовом батче, минимизируя некоторый вспомогательный самообучающийся (англ. self-supervised) или согласующий (англ. consistency) лосс. При этом обучающие данные не используются, а адаптация происходит только за счёт информации, извлекаемой из тестового распределения.

Ключевые представители:

  • Test-Time Training (TTT)[1] — модель обучается совместно с основной задачей на вспомогательной задаче (например, поворот изображения). На этапе теста для каждого примера выполняется несколько градиентных шагов по вспомогательной задаче, что позволяет адаптировать внутренние представления. Это требует хранения дополнительной головы и значительных вычислительных затрат.
  • Tent (англ. Test Entropy minimization)[1] — минимизирует энтропию выходных распределений модели на тестовом батче:
\mathcal{L}_{\text{ent}}(x^*) = -\sum_{c=1}^C p_c(x^*) \log p_c(x^*),

где p_c — вероятность класса c после softmax. Обновляются только параметры слоёв нормализации (BN), что значительно быстрее полной адаптации. Tent является эталонным методом для TTA благодаря своей простоте и эффективности.

  • EATA (англ. Efficient Anti-Forgetting Test-Time Adaptation)[1] — улучшает Tent добавлением регуляризатора, предотвращающего катастрофическое забывание, и динамического отбора образцов с высокой достоверностью.

Адаптация без обновления параметров

Третий класс методов, называемых тестовым расширением (англ. test-time augmentation, TTAug), не изменяет параметры модели, а модифицирует входные данные или агрегирует предсказания от нескольких аугментированных версий тестового примера[1]. Хотя этот подход формально не является адаптацией в смысле изменения \theta, он часто включается в обзор TTA как частный случай.

Следует различать TTA и смежные концепции:

  • Few-shot learning предполагает наличие размеченных примеров из нового распределения.
  • Domain adaptation (адаптация домена) использует доступ к немаркированным данным из целевого домена на этапе обучения.
  • Meta-learning (мета-обучение) обучает модель быстро адаптироваться к новым задачам, но требует специального протокола обучения.

Алгоритмы и псевдокод

Ниже приведён обобщённый алгоритм для градиентного TTA на основе минимизации энтропии (Tent):

Вход: модель f_\theta с обучающими параметрами \theta и статистиками BN \{\mu_{\text{tr}}^{(l)}, \sigma_{\text{tr}}^{(l)}\}, тестовый батч \mathcal{B} = \{x_j^*\}_{j=1}^B, скорость обучения \eta, число шагов адаптации K. Выход: адаптированная модель f_{\theta'} и предсказания для \mathcal{B}.

  1. Для каждого тестового батча \mathcal{B}:
    1. Инициализировать \theta' = \theta.
    2. Для k = 1, \ldots, K:
      1. Вычислить выходные логиты z_j = f_{\theta'}(x_j^*) (используя текущие BN-статистики).
      2. Вычислить энтропийный лосс: \mathcal{L} = -\frac{1}{B} \sum_{j=1}^B \sum_{c=1}^C \text{softmax}(z_j)_c \log \text{softmax}(z_j)_c.
      3. Вычислить градиент \nabla_{\theta'} \mathcal{L} и обновить только параметры BN (или все параметры):
      4. \theta' = \theta' - \eta \nabla_{\theta'} \mathcal{L}.
      5. Обновить BN-статистики по текущему батчу: \mu^{(l)} \leftarrow \text{mean}(z^{(l)}), \ \sigma^{(l)} \leftarrow \text{std}(z^{(l)}).
    3. Вернуть предсказания \{f_{\theta'}(x_j^*)\}_{j=1}^B для текущего батча.
    4. Сбросить \theta' к исходному \theta для следующего батча (опционально, зависит от реализации: перманентная адаптация против батчевой).

Оценки эффективности и теоретические гарантии

Теоретический анализ TTA значительно сложнее стандартного обучения из-за отсутствия доступа к истинным меткам. Большинство работ приводят эмпирические результаты на бенчмарках: CIFAR-10-C, CIFAR-100-C, ImageNet-C (с коррупциями), DomainNet, Office-Home и др. Метрики включают точность (accuracy), устойчивость (robustness) и вычислительные затраты (время инференса, число дополнительных проходов).

Среди теоретических результатов выделяются работы, связывающие TTA с минимизацией верхней границы ошибки обобщения через дивергенцию Кульбака — Лейблера между обучающим и тестовым распределениями[1]. Показано, что адаптация с помощью энтропийной минимизации эквивалентна приближённому максимуму правдоподобия на тестовом распределении в предположении, что условное распределение P(y|x) инвариантно.

Для методов, обновляющих только статистики BN, существуют оценки улучшения обобщения при условии, что сдвиг распределения ограничен по расстоянию Вассерштейна[1]. Однако строгие гарантии сходимости для невыпуклых глубоких сетей в TTA до сих пор остаются открытой проблемой.

Сравнение с родственными подходами

Метод Доступ к данным на этапе адаптации Изменяемые компоненты Вычислительные затраты Требования к памяти Основная область применения
Fine-tuning Размеченные целевые данные Все параметры Высокие Высокие (градиенты) Статичная адаптация
Domain Adaptation (DA) Немаркированные целевые данные (обучение) Все параметры Средние Высокие Смена домена до инференса
TTA (статистики BN) Немаркированные тестовые батчи BN-статистики Низкие (доп. проход) Низкие (только статистики) Онлайн-адаптация к сдвигу
TTA (градиентная, Tent) Немаркированные тестовые батчи BN-параметры (гамма, бета) Средние (1-5 шагов) Средние (градиенты BN) Умеренный сдвиг
TTA (полная адаптация, TTT) Немаркированные тестовые примеры Все параметры (через SSL) Высокие (много шагов) Высокие Сильный сдвиг
Test-Time Augmentation Нет Входные данные (аугментации) Высокие (кратно B) Низкие (без обновлений) Неопределённость и робастность

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

Применения в машинном обучении

Компьютерное зрение

TTA широко применяется для классификации изображений при наличии природных искажений (шум, размытие, изменение освещения, погодные условия). Методы Tent и EATA показывают улучшение точности на 5–15% на наборах ImageNet-C и CIFAR-10-C по сравнению с базовым инференсом[1]. В сегментации медицинских изображений TTA используется для адаптации к различиям между сканерами и протоколами съёмки.

Обработка естественного языка

Для NLP TTA применяется в задачах классификации текстов при изменении стиля, жанра или временного периода. Методы адаптации статистик слоевой нормализации демонстрируют устойчивость к сдвигу в тональности отзывов[1].

Робототехника и автономные системы

В робототехнике TTA критически важна для адаптации к изменению освещения, погоды и динамики окружения. Методы, использующие байесовскую оптимизацию для выбора гиперпараметров адаптации, показывают эффективность в реальных роботизированных задачах манипуляции[1].

Ограничения и открытые проблемы

  • Катастрофическое забывание. Адаптация на последовательности тестовых батчей может приводить к дрейфу параметров и потере знаний, полученных на обучающем домене. Методы EATA и регулярные сбросы параметров частично решают эту проблему.
  • Зависимость от размера батча. Статистики BN требуют достаточно большого батча (обычно не менее 8) для надёжной оценки. Для онлайн-режима с батчем размером 1 методы становятся нестабильными; используются альтернативы, такие как Layer Normalization или Instance Normalization[1].
  • Ошибки в самообучении. Если модель изначально даёт неверные предсказания с высокой уверенностью, минимизация энтропии может усугубить ошибку (эффект «ложной уверенности»). Для борьбы используются пороги достоверности или консистентные регуляризаторы[1].
  • Вычислительная нагрузка. Даже адаптация BN требует дополнительного прохода по сети для обновления статистик, а градиентные методы — ещё и обратного распространения. В системах реального времени это может быть неприемлемо.
  • Теоретическое обоснование. Отсутствие строгих гарантий сходимости и обобщения для глубоких невыпуклых моделей остаётся серьёзным пробелом.

Современные обобщения и новые варианты

За последние годы (2022–2026) появилось несколько значимых направлений развития TTA:

  • Адаптация с защитой от отравления (англ. poisoning-robust TTA) — методы, устойчивые к злонамеренным тестовым примерам, которые пытаются испортить адаптацию[1].
  • Мультимодальная TTA — адаптация моделей, работающих с несколькими модальностями (изображение + текст, видео + звук), с учётом межмодальных корреляций[1].
  • TTA для больших языковых моделей (LLM) — адаптация статистик нормализации и добавление специальных префиксных токенов для учёта стиля запроса[1].
  • Безградиентная TTA — использование байесовской оптимизации и эволюционных стратегий для адаптации без вычисления градиентов, что критично для моделей с закрытым кодом[1].

Эти направления расширяют область применения TTA и повышают её практическую ценность.

Рекомендации по выбору метода

Выбор конкретного подхода TTA зависит от ресурсных ограничений и характера сдвига:

  • Если доступны большие тестовые батчи и допустима небольшая задержка, следует использовать Tent с обновлением BN-параметров (гамма и бета).
  • Если батч мал или данные поступают последовательно, следует применять адаптацию статистик BN с экспоненциальным сглаживанием или использовать методы на основе Instance Normalization.
  • Если допустимы высокие вычислительные затраты (например, в офлайн-обработке), следует использовать TTT или полную адаптацию с самообучением.
  • Если модель является чёрным ящиком, следует применять безградиентные методы или test-time augmentation.
  • Для защиты от катастрофического забывания следует выбирать EATA с регуляризацией и фильтрацией примеров.

Литература


Sun Y., Wang X., Liu Z., Miller J., Efros A., Hardt M. Test-time training with self-supervision for generalization under distribution shifts // Proceedings of the 37th International Conference on Machine Learning (ICML). — 2020. — С. 9229—9248.

Wang D., Shelhamer E., Liu S., Olshausen B., Darrell T. Tent: Fully test-time adaptation by entropy minimization // International Conference on Learning Representations (ICLR). — 2021.

Niu S., Wu J., Zhang Y., Chen Y., Zheng S., Zhao P., Tan M. Efficient test-time model adaptation without forgetting // Proceedings of the 39th International Conference on Machine Learning (ICML). — 2022. — С. 16888—16905.

Schneider S., Rusak E., Eck L., Bringmann O., Schiele B., Breuel T. Improving robustness against common corruptions by covariate shift adaptation // Advances in Neural Information Processing Systems (NeurIPS). — 2020. — Т. 33. — С. 11539—11551.

Hendrycks D., Dietterich T. Benchmarking neural network robustness to common corruptions and perturbations // Proceedings of the International Conference on Learning Representations (ICLR). — 2019.

Zhang M., Levine S., Finn C. MEMO: Test time robustness via adaptation and augmentation // Advances in Neural Information Processing Systems (NeurIPS). — 2022. — Т. 35. — С. 38629—38642.

Zhao P., Chen Y., Niu S., Wu J. Gradient-free test-time adaptation for black-box models // Advances in Neural Information Processing Systems (NeurIPS). — 2026. — Т. 39.

OpenAI Test-time adaptation techniques for GPT-52025.

Личные инструменты