Введение

Было показано, что классификаторы глубоких нейронных сетей неправильно откалиброваны [1], т. е. их вероятности предсказания не являются надежными оценками достоверности. Например, если нейронная сеть классифицирует изображение как «собаку» с вероятностью p, p нельзя интерпретировать как достоверность предсказанного сетью класса для изображения. Кроме того, классификаторы нейронных сетей часто слишком самоуверенны в своих прогнозах [1]. Классификатор калиброванной нейронной сети выводит вероятности классов, которые соответствуют истинной вероятности правильности класса в наборе данных истинности [1]. Таким образом, если калиброванный классификатор помечает 100 входных изображений как «собака» с вероятностью 0,4, то количество изображений, которые точно классифицируются как собака, должно быть примерно 40 (40% от 100) [2]. Калибровка нейронных сетей особенно важна в критически важных для безопасности приложениях, где надежные оценки достоверности имеют решающее значение для принятия обоснованных решений. Некоторые из этих приложений включают медицинскую диагностику в здравоохранении и беспилотные автомобили.

Измерение ошибки калибровки

Диаграммы надежности

Диаграммы надежности отображают разрыв между точностью и калибровкой, который приводит к неправильной калибровке. Например, на рисунке ниже показана диаграмма надежности для модели Resnet-110, обученной на наборе данных CIFAR-100 [1].

Гуо и др. [1] поясняют, что диаграмма надежности строится следующим образом.
Для каждой выборки i мы используем следующие обозначения:

Предсказания модели для всех выборок сгруппированы в M бинов на основе вероятности их предсказания. Каждый бин Bₘ представляет собой набор индексов выборок, вероятность предсказания которых лежит в следующем интервале

Точность бина Bₘ определяется как -

Достоверность бина Bₘ определяется как -

Таким образом, диаграмма надежности отображает точность M интервалов в зависимости от их достоверности. На идеальную калибровку указывает acc(Bₘ) = conf(Bₘ) для всех интервалов M, т. е. синие полосы идеально совпадают с диагональной линией. Красные полосы указывают на неправильную калибровку, т.е.

  • Если синяя полоса находится ниже диагональной линии, точность бина ниже, чем достоверность бина. Это указывает на то, что модель слишком уверена в образцах в этом бине, а красная полоса показывает степень чрезмерной уверенности в этом бине.
  • С другой стороны, если синяя полоса находится выше диагональной линии, точность корзины выше, чем достоверность корзины. Это указывает на то, что модель недостоверна для образцов в этом бине, а красная полоса показывает степень недоверия для этого бина.

Ожидаемая ошибка калибровки

Поскольку диаграммы надежности являются лишь визуальным инструментом для анализа неправильной калибровки модели, Guo et al. предложить ожидаемую ошибку калибровки в качестве скалярной метрики для количественной оценки ошибки калибровки. Это средневзвешенная разница между точностью и достоверностью по M интервалам для n выборок.

Для идеально откалиброванной модели ECE = 0. Однако получить идеально откалиброванную модель невозможно. Обратитесь к этой статье для получения дополнительных калибровочных показателей.

Пример расчета ЕСЕ

Предположим, что у нас есть 5 изображений в нашем наборе данных. Вот метки истинности для этих 5 изображений с предсказанными метками (из нейронной сети) и связанными с ними вероятностями.

Рассмотрим количество ячеек M как 4. Тогда ячейки задаются формулой

Точность и достоверность каждого бина

Следовательно, ЕСЕ можно рассчитать как

Методы калибровки

В этом разделе мы рассмотрим несколько распространенных методов калибровки. К ним также относятся методы, которые не были предложены в качестве методов калибровки, но были показаны для калибровки нейронных сетей. Обратите внимание, что мы не охватываем все методы калибровки, представленные в литературе.

Масштабирование Platt

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

Это также может быть расширено для задачи классификации нескольких классов, и этот метод называется матричным масштабированием[1]. Для задачи классификации k-классов линейное преобразование применяется к логитам для получения k-преобразованных логитов.

Используя эти преобразованные логиты, калиброванная вероятность и прогнозируемый класс получаются следующим образом.

Поскольку параметры W увеличиваются квадратично с увеличением k, Guo et al. предложить векторное масштабирование, в котором W ограничено диагональной матрицей. Параметры во всех вариантах Platt Scaling оптимизируются за счет минимизации перекрестной энтропийной потери по отношению к проверочному набору (иногда называемому набором отложенной калибровки). Обратите внимание, что веса ​​сети не обновляются при оптимизации этих параметров.

Масштабирование температуры

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

T ‹ 1 делает выходное распределение более пиковым (уменьшает энтропию), а T › 1 смягчает выходное распределение (увеличивает энтропию). Этот пост из обмена статистикой дает дополнительную интуицию, стоящую за T.
В программе Temperature Scaling [1] T рассматривается как скалярный параметр и оптимизируется за счет минимизации перекрестной энтропийной потериотносительно пропущенного проверочного набора. . Веса сети не обновляются при оптимизации для T.

Гуо и др. [1] показывают, что настройка одного параметра T может значительно улучшить ECE ​​нейронной сети. Они также показывают, что температурное масштабирование работает лучше, чем матричное и векторное масштабирование, для различных наборов данных классификации изображений в архитектурах CNN. Наконец, на приведенных ниже диаграммах надежности показана неоткалиброванная сеть Resnet-110 по сравнению с сетью Resnet-110, откалиброванной с температурным масштабированием. Дополнительные результаты шкалы температуры и шкалы Платта см. в Таблице 1 статьи. Температурное масштабирование также является методом апостериорной калибровки.

Сглаживание ярлыков

Сглаживание меток было введено Szegedy et al. [4] как метод регуляризации глубоких нейронных сетей. При сглаживании меток целевые значения для модели классификации смягчаются путем выполнения взвешенной комбинации исходного целевого значения y и равномерного распределения по меткам 1/K (которое не зависит на обучающих примерах). Параметр ɑ управляет степенью сглаживания.

В своей статье 2019 года Когда помогает сглаживание этикеток? Хинтон и др. [5] показывают, что применение сглаживания меток приводит к неявной калибровке нейронных сетей. Авторы утверждают, что смягчение целей приводит к смягчению логитов softmax (т. е. логитов последнего слоя), что помогает уменьшить чрезмерную уверенность и впоследствии снижает ECE сети. Ниже приведены результаты для классификации изображений (архитектуры Resnet-56 и Inception-v4) и задач машинного перевода (архитектура Transformer). В таблице также показано, что эффект сглаживания меток и температурного масштабирования на калибровку нейронной сети аналогичен.

Перепутать

Смешивание — это метод увеличения данных, в котором новые выборки генерируются путем выполнения выпуклой комбинации двух случайно выбранных изображений и их соответствующих меток [6]. Объединение меток двух выборок аналогично сглаживанию меток, т. е. дает мягкие метки для вновь сгенерированных изображений. Параметр ɑ присваивает веса двум изображениям и их соответствующим меткам для выпуклой комбинации.

В статье Обучение миксапу: улучшенная калибровка и неопределенность прогноза для глубоких нейронных сетей Туласидасан и др. [7] утверждают, что смешение имеет эффект регуляризации в сети, что приводит к уменьшению переобучения и запоминания, что ограничивает чрезмерную уверенность в сети. Графики ниже показывают, что смешивание имеет самый низкий ECE (ошибка калибровки)с высокой точностью теста по сравнению с другими методами калибровки, такими как сглаживание меток для четырех наборов данных в задаче классификации изображений.

Потеря фокуса

Фокусная потеря была предложена для устранения дисбаланса классов в задачах зрения, таких как обнаружение объектов [8]. Фокусная потеря изменяет кросс-энтропийную потерю с помощью мультипликативного коэффициента, который позволяет сети сосредоточиться на жестких образцах, которые трудно правильно классифицировать. Для легко классифицируемых выборок прогнозируемая вероятность будет выше, а мультипликативный член сделает потери для этой выборки очень малыми. Это позволяет сети сосредоточиться на образцах с более высокими потерями.

В статье Калибровка глубоких нейронных сетей с использованием Focal Loss Мухоти и соавт. [9] показывают, что Focal Loss минимизирует регуляризованное расхождение KL между предсказанным (softmax) и целевым распределениями.

Таким образом, авторы утверждают, что минимизация фокальных потерь требует минимизации расхождения KL между двумя распределениями и увеличения энтропии прогнозируемого распределения. Это увеличение энтропии смягчает распределение выходных данных и сдерживает самонадеянные прогнозы в глубоких нейронных сетях. Авторы также предлагают график, зависящий от выборки, называемый FLSD, который динамически присваивает значение параметру Ɣ на основе предварительно определенных диапазонов прогнозируемой вероятности. Более того, показано, что потерю фокуса можно комбинировать с температурным масштабированием для дальнейшего улучшения калибровки сети. В целом, фокусные потери и FLSD работают лучше, чем базовые методы калибровки, такие как сглаживание меток, в различных архитектурах для CIFAR-10, CIFAR-100 и Tiny-Imagenet. Обратитесь к Таблице 1 статьи для обзора всех результатов.

Заключение

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

Ссылки

[1] Го, Чуан и др. «О калибровке современных нейронных сетей. Международная конференция по машинному обучению. ПМЛР, 2017.

[2] Линь, Чжэнь, Шубхенду Триведи и Цзимэн Сунь. «Шаг назад с KCal: многоклассовая калибровка на основе ядра для глубоких нейронных сетей. препринт arXiv arXiv:2202.07679 (2022)

[3] Gualtieri, J. Anthony, et al. «Машинные классификаторы опорных векторов применительно к данным AVIRISПроцесс. Восьмой семинар JPL по геолого-геофизическим исследованиям. 1999.

[4] Сегеди, Кристиан и др. «Переосмысление исходной архитектуры компьютерного зрения. Материалы конференции IEEE по компьютерному зрению и распознаванию образов. 2016.

[5] Мюллер, Рафаэль, Саймон Корнблит и Джеффри Э. Хинтон. Когда помогает сглаживание меток? Достижения в системах обработки нейронной информации 32 (2019).

[6] Чжан, Хонги и др. «Смешение: Помимо минимизации эмпирического рискапрепринт arXiv arXiv:1710.09412 (2017 г.).

[7] Туласидасан, Сунил и др. «Обучение миксапу: улучшенная калибровка и неопределенность прогноза для глубоких нейронных сетейДостижения в области нейронных систем обработки информации 32 (2019).

[8] Лин, Цунг-Йи и др. «Потеря фокуса при обнаружении плотных объектовМатериалы международной конференции IEEE по компьютерному зрению. 2017.

[9] Мухоти, Джишну и др. «Калибровка глубоких нейронных сетей с использованием фокальной потериДостижения в области нейронных систем обработки информации 33 (2020): 15288–15299.

[10] Никсон, Джереми и др. «Измерение калибровки в глубоком обучении. Семинары CVPR. Том. 2. №7. 2019.

[11] Какова роль температуры в Softmax?[Cross Validated]

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

Независимая от редакции, Heartbeat спонсируется и публикуется Comet, платформой MLOps, которая позволяет специалистам по данным и командам машинного обучения отслеживать, сравнивать, объяснять и оптимизировать свои эксперименты. Мы платим нашим авторам и не продаем рекламу.

Если вы хотите внести свой вклад, перейдите к нашему призыву к участию. Вы также можете подписаться на получение нашего еженедельного информационного бюллетеня (Еженедельник глубокого обучения), заглянуть в блог Comet, присоединиться к нам в Slack и подписаться на Comet в Twitter и LinkedIn для получения ресурсов и событий. и многое другое, что поможет вам быстрее создавать более качественные модели машинного обучения.