Понимание устойчивости к состязаниям через призму сверточных фильтров

На основе совместной работы с Дженис Койпер.

Глубокое обучение оказало значительное влияние на компьютерное зрение. Это позволило компьютерам автоматически изучать высокоуровневые функции из данных и использовалось для разработки моделей, которые могут превзойти традиционные подходы в различных задачах, таких как распознавание объектов, классификация изображений и семантическая сегментация. Приложения включают автономное вождение, медицинскую диагностику и распознавание лиц, а также многие другие. Однако было показано, что модели глубокого обучения по своей природе чувствительны к сдвигам распределения входных данных.

Например, имея достаточно большие и качественные данные, можно было бы легко обучить модель распознавать дорожные знаки (что было бы необходимо для задач автономного вождения). При правильном выполнении модель распознает уличные знаки, показанные во время обучения, и те, которые не были показаны ранее (она продемонстрирует обобщение). Можно легко сделать вывод, что высокая точность проверки будет соответствовать модели, которая будет безопасно распознавать все новые данные. Но это часто не так, если в новых данных есть сдвиг в распределении. Для автономного вождения это могло быть связано с изменением погодных условий, низким разрешением бортовых камер, плохой освещенностью и т. д., которые ранее не отражались в обучающих данных. Я бы сказал, что совершенно невозможно собрать обучающие данные, которые будут представлять все возможные среды.

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

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

В то время как большинство текущих исследований изучают эти проблемы с разных точек зрения, в большинстве случаев эти подходы могут быть обобщены для изучения эффектов сдвигов распределения в данных изображений и возникающих в результате различий в активациях, значимости и картах признаков. Вместо этого мы предлагаем изучить сдвиги изученных весов (фильтров свертки) обученных моделей CNN и задаться вопросом: Что делает свертки моделей надежного зрения особенными?

Данные оценки и установка эксперимента

Чтобы понять различия, возникающие из-за состязательного обучения, мы собрали 71 контрольную точку модели (на основе 13 различных архитектур) из RobustBench-таблицы лидеров, обученной на CIFAR-10, CIFAR-100 и ImageNet-1k. (надежные модели). Все эти модели были обучены противостоять атакам со стороны L-бесконечности на основе различных подходов, но все модели были обучены с помощью обучения со стороны противника. Кроме того, мы обучали индивидуальную модель для каждой появляющейся архитектуры, используя стандартные процедуры обучения (обычные модели), без какой-либо специальной регуляризации надежности и без каких-либо внешних данных (даже если надежный аналог полагался на них). Так как обучение на ImageNet1k с выбранными нами параметрами привело к довольно низкой производительности, мы заменили эти модели эквивалентными предварительно обученными моделями из отличной timm-библиотеки. Всего мы собрали 615 863 744 пары надежных/нормальных сверточных фильтров формы 3 x 3.

Распределения шаблонов фильтров

Во-первых, мы хотим понять различия в шаблонах. Поскольку изученные фильтры будут различаться по величине, а величина, как правило, ниже в более глубоких слоях (для улучшения градиентного потока), мы сначала нормализуем все фильтры до единичной длины. Это позволяет нам сосредоточиться на шаблоне фильтра без интерференции величины. Затем мы выполняем разложение по сингулярным числам (SVD) всех фильтров. Это дает нам представление на основе максимальной дисперсии: сумма основных компонентов 3 x 3 = 9 (также называемых базисными векторами или собственными изображениями), взвешенных с помощью коэффициентов 3 x 3 = 9, позволяет реконструировать каждый фильтр.

Это дает нам то преимущество, что представление на основе SVD не ограничивается отдельными пикселями, а захватывает соответствующие подшаблоны фильтра (см. v0 … v9). Для анализа нескольких фильтров мы можем просто рассматривать коэффициенты на той же основе, что и распределения.

Чтобы измерить, насколько различны два распределения Pi, Qi, мы можем использовать любое измерение расхождения. В этой работе мы используем известную дивергенцию Кульбака-Лейблера (KL) с небольшой поправкой для обеспечения симметрии.

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

Примечание. В нашей предыдущей работе [2] мы увидели сильное влияние разреженных фильтров на распределения. Разреженные фильтры будут в основном описываться близкими к нулю коэффициентами, что приведет к большим пикам в KDE. Расхождение KL будет сильно увеличено и смещено в эту область KDE. Поэтому мы удаляем разреженность из весов слоев для этого анализа.

Где расположены самые большие распределительные смены?

Мы исследуем наиболее значительные сдвиги в шаблонах фильтров и измеряем сдвиг распределения на различных этапах глубины. Для сравнения моделей с разной глубиной мы группируем коэффициенты фильтра в децилях их относительной глубины в модели. Для всех наборов данных полученные сдвиги, по-видимому, увеличиваются с глубиной свертки. Однако разница уменьшается по мере увеличения сложности набора данных (ImageNet1k > CIFAR100 > CIFAR10). Кроме того, значительный сдвиг можно увидеть в самом первом слое свертки (но не в следующих ранних слоях). Обратите внимание, что первичные этапы свертки в моделях ImageNet1k используют больший размер ядра и поэтому не включены в это исследование, но мы ожидаем, что там будут аналогичные наблюдения. Изображение авторов.

Чтобы лучше понять причину наблюдаемых сдвигов распределения, мы визуализируем первый и последний (конечный) слои свертки:

Для самых глубоких слоев свертки мы наблюдаем, что нормальные фильтры демонстрируют явное отсутствие разнообразия и в основном напоминают нам фильтры размытия по Гауссу, в то время как фильтры, обученные со стороны противника, кажутся более богатыми по структуре и с большей вероятностью выполняют менее тривиальные преобразования. Мы наблюдаем это явление во многих более глубоких слоях.

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

Мы предполагаем, что в сочетании с широко используемыми ReLU-активациями (и их производными) первичные фильтры выполняют пороговую обработку входных данных, что может устранить небольшие возмущения. Действительно, построение графика разницы в активациях для естественных и возмущенных образцов позволяет нам получить визуальное подтверждение того, что эти фильтры успешно удаляют возмущения из различных областей интереса (ROI), например. от кошки, фона и переднего плана. Похоже, что защищенные от состязательности модели не являются устойчивыми по своей сути, но учатся предварительно обрабатывать данные.

Какие различия мы наблюдаем в качестве фильтров?

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

Мы измеряем качество с помощью трех различных статических показателей (имеется в виду использование только изученных параметров):

Разреженность – доля фильтров, не влияющих на фильтры
Доля фильтров, у которых разреженность всех весов в данном слое близка к нулю. Эти фильтры не влияют на карты объектов из-за их низкой величины. Чтобы максимально использовать доступную пропускную способность сети, это значение должно быть как можно меньше.

Энтропия дисперсии — разнообразие шаблонов фильтрации
Мы снова используем SVD, чтобы понять разнообразие шаблонов в данном слое. Поскольку SVD находит основу максимальной дисперсии, он естественным образом идентифицирует наиболее важные «подшаблоны». Зафиксировав распределения объясненной дисперсии, мы можем определить, является ли доминирующим один подшаблон (отсутствие разнообразия; асимметричное распределение дисперсии) или все подшаблоны одинаково важны (случайное/максимальное разнообразие; равномерное распределение дисперсии). Мы количественно оцениваем распределение объясненной дисперсии по неотрицательной логарифмической энтропии. Значение энтропийной дисперсии, равное 0, указывает на однородность имеющихся фильтров, тогда как максимальное значение указывает на равномерное распределение дисперсии по всем базисным векторам, как в случайных неинициализированных слоях. Значения, близкие к обеим границам интервала, указывают на вырождение, и трудно обеспечить хороший порог.

Ортогональность — избыточность банков фильтров/результирующих карт объектов
Ортогональность помогает с распространением градиента и напрямую связана с разнообразием сгенерированных карт объектов. Из-за вычислительных ограничений мы измеряем ортогональность между банками фильтров, а не отдельными фильтрами. Банки фильтров обрабатываются как векторы и нормализуются к единичной длине. Тогда ортогональность представляет собой просто скалярное произведение между весом слоя и его транспонированием. Значение ортогональности, равное 1, указывает на ортогональность всех банков фильтров в слое, тогда как 0 указывает на параллельные банки фильтров, которые, возможно, создают разномасштабные, но в остальном идентичные карты объектов.

В конце концов, все эти три показателя количественно определяют объем используемой емкости относительно размера сети.

Как и в случае со структурой, мы наблюдаем меньше различий в качестве по мере увеличения сложности набора данных, но также и общее повышение качества как для надежных, так и для обычных моделей. Результаты на ImageNet1k менее убедительны из-за небольшого размера выборки и почти оптимального базового уровня с точки зрения качества.

Разреженность. Мы наблюдаем очень высокий диапазон разреженности на всех уровнях для обычных моделей, который уменьшается по мере увеличения сложности набора данных. Надежное обучение значительно дополнительно минимизирует разреженность и ее охват на всех глубинах. Заметные выбросы включают первичные этапы, а также самые глубокие слои свертки для CIFAR-10. Как правило, разреженность кажется ниже на средних стадиях.

Энтропия дисперсии. Средняя энтропия дисперсии относительно постоянна на протяжении всей модели, но уменьшается с увеличением глубины. Энтропия надежных моделей начинает уменьшаться позже и менее значительна, но разница уменьшается по мере увеличения сложности набора данных. По сравнению с CIFAR-10 надежные модели CIFAR-100 показывают более низкую энтропию в более глубоких слоях, в то время как между обычными моделями нет четкой разницы. Модели ImageNet1k показывают более высокую энтропию на всех глубинах.

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

Заключение

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

Дальнейшие шаги

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

Что вы думаете? Нам интересно ваше мнение! Пожалуйста, поделитесь ими в комментариях.

Использованная литература:

[1] П. Гавриков и Дж. Кеупер, Состязательная устойчивость через призму сверточных фильтров (2022), CVPR 2022 Workshops

[2] П. Гавриков и Дж. Кеупер, БД фильтров CNN: эмпирическое исследование обученных сверточных фильтров (2022), CVPR 2022 Orals

Эта работа финансировалась Министерством науки, исследований и искусств земли Баден-Вюртемберг, Германия, в рамках гранта 32–7545.20/45/1 (Q-AMeLiA).