# Почему идеальные тесты ИИ проваливаются в реальном мире

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

---

В современной индустрии машинного обучения обостряется скрытый кризис доверия, вызванный феноменом «недоспецификации» (underspecification). Известный IT-исследователь Янник Кильхер разобрал масштабную коллективную работу ученых из Google и MIT, авторы которой утверждают, что стандартные методы тестирования нейросетей не способны гарантировать их адекватное поведение в реальном мире. Анализируя предложенные примеры от эпидемиологии до больших языковых моделей, Кильхер критически оценивает выводы авторов, ищет границу между фундаментальным сдвигом данных и случайными капризами алгоритмов, а также предлагает альтернативные пути решения этой проблемы.

## 🚀 Суть проблемы: почему идеальные тесты ИИ лгут в реальном мире
[[JUMP:0:00]]

В основу разбора легла масштабная научная работа «Underspecification Presents Challenges for Credibility in Modern Machine Learning», написанная Александром Д'Амур, Кэтрин Хеллер, Дэном Молдованом и огромным коллективом инженеров компании Google при участии Массачусетского технологического института (MIT). Как иронично отмечает Янник Кильхер, список авторов настолько огромен, что публикация больше напоминает статью физиков-ядерщиков из CERN. Основной объем текста составляет около 30 страниц, не считая приложений.

Главная проблема, которую фиксирует исследование, формулируется как «недоспецификация» пайплайна машинного обучения. По определению авторов, процесс обучения считается недоспецифицированным, если он способен возвращать множество различных моделей (предикторов), имеющих эквивалентно высокую точность на отложенной тестовой выборке (held-out performance), но ведущих себя совершенно по-разному после развертывания в реальных условиях.

Классический процесс разработки ИИ строится на следующих этапах:

* Сбор большого массива данных.
* Разделение выборки на обучающую (train) и тестовую (test).
* Предположение об одинаковом распределении данных (i.i.d. assumption), согласно которому тестовый набор отражает реальный мир.

Однако на практике, когда модель сталкивается с реальной эксплуатацией, распределение данных неизбежно меняется. В глубоком обучении существует непрерывный континуум локальных минимумов функции потерь. Переход алгоритма в тот или иной минимум зависит от незначительных гиперпараметров: архитектуры сети, размера батча, скорости обучения и, что самое критичное, от начального случайного зерна (random seed). 

Смена random seed при неизменности всех остальных параметров заставляет алгоритм выбирать разные локальные минимумы. На тестовом наборе все эти модели показывают одинаково превосходный результат. Но при развертывании одна модель может продолжить работать стабильно, а другая полностью провалится. Пайплайн обучения просто «не знает» о существовании скрытых важных признаков реального мира, и включение или игнорирование этих признаков моделью становится делом чистой случайности. По мнению Кильхера, это принципиально отличает недоспецификацию от классического «сдвига домена» (domain shift). В данном случае хорошая модель физически присутствует в пространстве возможных решений, но у разработчика нет инструментов, чтобы выделить ее на этапе тестирования.



## 📊 Эпидемиологический тупик и проблемы ранних прогнозов
[[JUMP:11:12]]

Для демонстрации феномена авторы вводят понятие «стресс-тестирования» — проверки одного конкретного аспекта поведения модели на специфическом наборе данных. Первым практическим примером в работе выступает простая математическая модель распространения инфекционных заболеваний (типа SIR). В ней используются дифференциальные уравнения движения инфекции внутри популяции, зависящие от двух ключевых параметров:

* Параметр $\beta$ — скорость передачи инфекции от зараженных к восприимчивым гражданам.
* Параметр $d$ — средняя продолжительность периода, в течение которого инфицированный индивид остается заразным.

Гипотетический сценарий предполагает, что на ранней стадии пандемии у исследователей есть лишь несколько первых точек данных об экспоненциальном росте числа заболевших. Задача — настроить параметры $\beta$ и $d$, чтобы предсказать дальнейшую траекторию эпидемии. 

Поскольку на начальном этапе количество восприимчивого населения остается практически константным (иммунитет еще не выработался), число заражений растет строго экспоненциально. В формулу этого роста входят оба параметра одновременно, из-за чего существует бесконечное множество пар значений $\beta$ и $d$, дающих абсолютно идентичную экспоненциальную кривую на начальном этапе. 

С точки зрения недоспецификации, если разделить имеющиеся начальные точки на обучающую и тестовую выборки, любая пара параметров идеально в них впишется. Но при долгосрочном прогнозировании эти модели выдадут радикально отличающиеся графики: одна предскажет быстрое угасание болезни, а другая — колоссальный пик заболеваемости. 

Особый интерес Кильхера вызвал эксперимент с инициализацией параметров. При использовании гамма-распределения для начальных весов модели итоговые прогнозы оказались в среднем существенно выше, чем при использовании нормального распределения. При одинаковых данных и процедурах смена характера инициализации полностью перестраивает ожидания от модели. Янник Кильхер называет этот пример отличной иллюстрацией тезиса авторов, но добавляет критическое замечание: в реальности исправить такую недоспецификацию без получения данных из будущего физически невозможно.

## 🧬 Теоретические игры и медицинская геномика
[[JUMP:20:45]]

Далее авторы обращаются к теоретическому анализу на примере двухслойной нейронной сети, где веса первого слоя ($W$) зафиксированы случайным образом, а обучается только второй слой параметров ($\theta$). Исследователи математически доказывают, что для любой случайно выбранной матрицы весов можно подобрать такое микроскопическое состязательное изменение (adversarial perturbation) в данных, которое никак не повлияет на общую точность независимых моделей, но точечно разрушит работу одной конкретной сети. Как утверждает Кильхер, этот математический трюк безупречен в теории, однако он построен искусственно: авторы сконструировали ситуацию, которая по определению подтверждает их же тезисы, что снижает ценность доказательства для реальной практики.

В домене медицинской геномики ученые Google рассмотрели задачу прогнозирования на основе сильно скоррелированных данных, сгруппированных в кластеры. Сравнивались два подхода:

1.  Выбор репрезентативных данных из каждого кластера с помощью специальной сложной эвристики (на графиках авторов отмечена красной точкой).
2.  Случайный выбор представителей из кластеров (синие точки).

На тренировочном и тестовом наборах внутри исходного распределения (in-distribution) все модели показали кучные, стабильно хорошие результаты с минимальной разницей в нормализованной среднеквадратичной ошибке. Однако при переносе моделей на данные из других лабораторий (out-of-distribution) разброс точности стал колоссальным. Самое важное: корреляция между успешностью модели на внутреннем тесте и на внешнем тесте оказалась крайне слабой. 



Тем не менее Янник Кильхер выражает скепсис по поводу данного кейса. Ведущий подчеркивает, что не видит здесь принципиального отличия от классического дрейфа данных (data drift). Кроме того, лучшие результаты моделей на внешних данных все равно оказались хуже, чем на внутренних тестах, что, по мнению Кильхера, формально нарушает строгое авторское определение недоспецификации.

## 👁️ Компьютерное зрение и «ортогональная» уязвимость нейросетей
[[JUMP:33:56]]

В области компьютерного зрения эксперименты проводились на бенчмарке ImageNet-C, который применяет к стандартным изображениям различные типы цифровых искажений (пикселизация, размытие, изменение контрастности). Исследователи обучили ансамбль сверточных сетей с абсолютно идентичной архитектурой и на одних и тех же данных, меняя только random seed.

На чистом тестовом наборе ImageNet все нейросети продемонстрировали одинаково высокую точность. Но при столкновении с искажениями начался хаос:

* Разброс качества работы моделей на зашумленных картинках оказался огромным.
* Устойчивость к разным типам помех оказалась взаимно ортогональной. Модель, идеально справляющаяся с эффектом пикселизации, демонстрировала отвратительные результаты при изменении контрастности, и наоборот.

Янник Кильхер выделяет это как серьезный вызов для индустрии. Поскольку типов потенциальных искажений в реальном мире бесконечно много, разработчик не может предусмотреть и зашить в спецификацию обучения защиту от каждого из них. Попытка принудительно обучить сеть устойчивости к пикселизации может усугубить ее уязвимость к другим факторам или снизить общую точность на исходном чистом наборе данных. Главный вывод этого раздела, по мнению блогера: если вам важен конкретный аспект безопасности системы, вы обязаны тестировать именно его, не надеясь на общую точность ИИ.

## 📝 Лингвистические ловушки: случайные семена гендерных стереотипов
[[JUMP:36:49]]

Наиболее подробно Кильхер останавливается на экспериментах в сфере обработки естественного языка (NLP) с моделью BERT. Авторы проверяли влияние случайного зерна как на этапе тонкой настройки (fine-tuning), так и на этапе тяжелого предварительного обучения (pre-training). Модели обучались стандартной задаче определения семантической близости текстов (наподобие бенчмарка GLUE), где алгоритм ничего не знает о социальных концептах.

Для стресс-тестирования использовались специально сконструированные датасеты для оценки справедливости (fairness) и предвзятости. Проверялись предложения с упоминанием профессий, где целевые сущности заменялись на местоимения «он» или «она» (например, «Врач идет»). Идеальная, непредвзятая языковая модель должна оценивать контекстуальную близость таких предложений одинаково, то есть разница (дельта) в оценках сходства для мужского и женского гендера должна стремиться к нулю.

Ученые сопоставили полученную дельту с официальной статистикой Бюро правовой статистики США (BLS) о реальном соотношении женщин и мужчин в этих профессиях. Кильхер хвалит этот подход, отмечая, что он гораздо глубже и адекватнее стандартных требований из лагеря «борцов за социальную справедливость», которые часто требуют жесткого распределения 50/50 вопреки реальному положению дел в индустрии.

Результаты тестов выявили следующие факты:

* Корреляция предсказаний моделей со статистикой BLS колеблется в широком диапазоне от 0.3 до 0.7.
* Взаимосвязь между итоговой точностью выполнения основного языкового теста и уровнем гендерной предвзятости фактически отсутствует — коэффициент корреляции Спирмена составил всего 0.08.

Это доказывает, что для успешного прохождения языковых тестов модели вовсе не обязательно усваивать жесткие социальные стереотипы. Однако из-за недоспецификации пайплайна конкретная нейросеть случайно впитывает эти предвзятости в сильной или слабой степени, просто оказавшись в определенном локальном минимуме из-за random seed. Причем семена, заложенные при pre-training, оказывают решающее влияние на то, как модель будет вести себя после fine-tuning, разделяя итоговые нейросети на четкие поведенческие кластеры.



При анализе метода главных компонент (PCA) над результатами 20 различных дообучений одного чекпоинта BERT Кильхер высказывает жесткую критику. Авторы заявляют, что первая главная компонента (отвечающая за 22% вариации) четко отражает стереотипные ассоциации между профессиями и полом. Янник считает этот вывод «притянутым за уши». На графиках присутствует огромный хаотичный шум, и авторы, по мнению ведущего, сознательно выделили лишь удобные им экстремальные точки-выбросы (например, фразы вроде «регистратор ползет»), проигнорировав общую несвязанную картину распределения.

## 🛠️ Критика Янника Кильхера и поиск практических решений
[[JUMP:55:40]]

Финальная дискуссия в научной работе Google кажется Кильхеру откровенно слабой. Авторы ограничиваются банальным призывом: «Тщательно проверяйте модели на специфических задачах перед их внедрением и следите за стабильностью результатов». Янник категорически согласен с необходимостью проверок, но подчеркивает, что это констатация проблемы, а не ее решение.

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

> «Если Google или другие корпорации публикуют базовую модель вроде BERT, им следует выкладывать в открытый доступ не один единственный чекпоинт, а пакет из 50 различных вариантов, обученных с разными random seeds. Тогда конечные разработчики смогут протестировать этот ансамбль на критически важном для их бизнеса узком срезе данных и выбрать ту модель, которая чисто случайно оказалась стабильной именно в этой ортогональной плоскости».

В заключение ведущий напоминает о фундаментальном законе компромиссов (trade-offs) в Computer Science, который авторы статьи полностью проигнорировали. Попытка жестко ограничить пайплайн обучения, добавив в него строгие спецификации против всех возможных отклонений, неизбежно приведет к падению общей обобщающей способности нейросети и снизит ее точность на базовых тестах. Несмотря на критические замечания к экспериментальной базе, Кильхер признает ценность работы, заставляющей индустрию трезво взглянуть на реальную надежность современных ИИ-технологий.