Разложение функции Softmax на основе CosFace для интерпретации и анализа динамики обучения

Автор: Шокоров В.А., Самосюк А.В.

Журнал: Труды Московского физико-технического института @trudy-mipt

Рубрика: Информатика и управление

Статья в выпуске: 1 (69) т.18, 2026 года.

Бесплатный доступ

С ростом числа прикладных применений искусственного интеллекта задача интерпретации поведения нейронной сети становится актуальнее. Существуют подходы интерпретации модели на основании градиентов, с помощью Activation Patching, а также с использованием Sparse Autoencoder. В работе предлагается метод декомпозиции функции SoftMax в рамках функции потерь CosFace для задачи распознавания лиц. Данная декомпозиция позволит упростить описание процесса обучения модели. Ключевой вклад работы: (1) замена зависящего от данных SoftMax на фиксированные веса взаимодействия логитов, (2) устранение артефактов обучения прототипов через максимальный марджин (исключение градиента отталкивания от целевого прототипа) и использование «чистых» прототипов (исключение негативной компоненты и балансировка обновления). Доказательство сохранения точности (±0.5%) приводится на датасетах LFW, CFP-FP, AgeDB, IJB при упрощении анализа динамики обучения.

Объяснимый искусственный интеллект, декомпозиция softmax, интерпретация модели ии, распознавание лиц

Короткий адрес: https://sciup.org/142247880

IDR: 142247880   |   УДК: 004.93’11

CosFace softmax decomposition to facilitate interpretability and learning dynamics analysis

With the growing number of artificial intelligence applications, the relevance of the neural network interpretability problem also increases. Some approaches focus on explaining model behavior based on gradients or Activation Patching, while some other works use Sparse Autoencoders. This work proposes a method to decompose the SoftMax function within the CosFace loss in the context of face recognition. Such decomposition simplifies the analysis of the model learning dynamics without substantially sacrificing quality. The key contributions of the work are: (1) replacing the data-dependent SoftMax with fixed logits interaction weights, and (2) eliminating training class prototypes shift from a class centroids via: maximum margin (removing the repulsive gradients from the target prototype) and using «pure» gradient-free prototypes (eliminating the negative component with balanced update). Benchmarks demonstrate a negligible accuracy (±0.5%) difference from the baseline model on LFW, CFP-FP, AgeDB, and IJB datasets while simplifying the analysis of learning dynamics.

Текст научной статьи Разложение функции Softmax на основе CosFace для интерпретации и анализа динамики обучения

На данный момент глубокое машинное обучение во многом является экспериментальной наукой. Наибольшее развитие направление машинного обучения получило за счет экспериментальных наблюдений, которые улучшают качество сети, но не отвечают на вопрос почему те или иные гиперпараметры и модификации оптимальны. Разрабатывается множество подходов для теоретического описания процесса обучения модели. Существуют методы, основанные на применении байесовской теории, например количественная оценка неопределённости (Uncertainty quantification) [6]. Они используются для статистического анализа и описания процесса обучения, но требуют значительное количество ресурсов, а также не дают простого описания поведения модели. Также данные подходы не способны предсказать процесс обучения при переходе на новые данные. Более современные направления, основанные на данной теории, это Tensor Programs [7,8] и Neural Tangent Kernels [9].

Помимо статистических методов существуют подходы, направленные на описание весов модели и их роли в предсказании. Данные методы основываются на интерпретации обученной модели. Существуют подходы интерпретации модели на основании градиентов [1,2], позволяющие найти наиболее информативные для предсказания области на изображении. С развитием LLM появились более продвинутые подходы интерпретации модели. Авторы [3] показывают, что можно описать поведение небольшого числа нейронов, а также можно найти целые направления (группы нейронов), описывающие определенный шаблон в данных [4, 5].

В рамках задачи теоретического описания процесса обучения модели остается множество открытых вопросов и проблем. Архитектура сети состоит из большого числа блоков, которые могут работать по-разному на разных этапах обучения. Одним из таких блоков является функция потерь. В данной работе предлагается идея декомпозиции функции SoftMax на большом числе классов. Предлагаемая декомпозиция призвана упростить анализ модели, не ухудшая ее качество. SoftMax интересен, потому что используется как часть механизма внимания в LLM, а также как компонента стандартных функций потерь. Проблема функции SoftMax заключается в том, что она является единой формулой, значение которой вычисляется на прямом проходе нейронной сети для каждого отдельного объекта батча, и в зависимости от этого определяется и градиент. Подобный адаптивный формат значительным образом препятствует выявлению универсальных правил взаимодействия фичей во время обучения сети.

Для упрощения задачи в данной работе рассматривается смежное направление: задача распознавания лиц. В ней используется модель-кодировщик, которая преобразовывает входное изображение в эмбеддинг так, чтобы попарные расстояния между эмбеддингами одного класса были меньше, чем до других классов. Популярный подход решения - это применение функции потерь на основании марджина [10-16,19-23]. Логитами выступает матрица косинусных расстояний с применением дополнительного марджина [10]. Данное упрощение позволяет нам проводить эксперименты на простой задаче, для которой существует множество решений и обучающих данных.

Таким образом, в данной работе рассматривается функция потерь на примере CosFace [И] за счет избавления от гиперпараметров и раскладывания ее на интерпретируемые компоненты. Предлагаемые модификации CosFace [11] решают три ключевые проблемы:

  • -    Устранение гиперпараметра марджина через концепцию максимального марджина. Задача марджина, независимо от его конструкции, это минимизация градиента на отталкивание от своего прототипа. Максимальный марджин - непараметрический метод минимизации градиента на отталкивание от своего. Описание приведено в п. 3.3.

  • -    Использование прототипов с честным усреднением. Подход для точного представления распределения каждого класса, в отличие от CosFace [И], где в весах про-

  • тотипов хранятся также и компоненты, полученные за счет отталкивания от других эмбеддингов, и. 3.4. Дополнительно в CosFace [11] нормировка прототипов добавляет дисбаланс градиентов, поэтому в п. 3.5 описывается предлагаемый метод обновления прототипов.
  • -    Замена SoftMax на взвешенную сумму логитов с фиксированными весами, и. 3.6.

Это позволяет сформулировать интерпретируемую модель взаимодействия классов, где

  • -    Эмбеддинги притягиваются к своим прототипам.

  • -    Отталкивание от чужих классов описывается фиксированными весами.

  • -    Прототипы хранят честные усредненные представления классов.

  • 2.    Обзор литературы

Общая схема декомпозированной функции потерь представлена на рис. 1. Тестирование на большой модели представлено в п. 3.7.

Рис. 1. Схема предлагаемого подхода декомпозиции функции SoftMax с марджииом. е — эмбед-дииг, выход из модели, IV — веса прототипов, причем веса всегда имеют единичную норму, поэтому при подсчете косинусных расстояний 9, в знаменателе нет нормы IV. Применяется максимальный марджии ( 9у = 0), у — метка правильного класса, а накапливает среднее значение весов на отталкивания от чужих (SoftMax(s 0)^ ) и не имеет градиента. Итоговая функция потерь есть сумма С+ + С- '

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

Ключевым компонентом большинства подходов является идея из [12], а именно использование проекции эмбеддингов и прототипов на сферу, а также использование марджина, для дополнительного разделения классов, введенного в [12, 13]. В работах [14, 15] предлагается идея зависимости марджина от близости эмбеддинга к целевому прототипу, как индикатор сложного сэмпла. Затем данная идея была развита в работах [16, 17]. В работе [20] авторы показали, что возможна простая модификация стандартных margin-based лоссов, когда вместо фиксированного гиперпараметра т, используется нормальное распределение для генерации значения марджина. В работе [21] авторы предложили автоматизировать подбор оптимального значения марджина с помощью обучения с подкреплением

(Reinforcement Learning). Дополнительно для улучшения баланса обучения и сходимости авторы учитывают балансировку градиентов на притягивание к целевому и отталкивание от чужих прототипов [18,19].

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

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

Ввиду того что функции потерь на базе SoftMax работают в формате эмбеддинг-прототип, а тестирование модели в формате эмбеддинг-эмбеддинг, авторы [29] предлагают использовать виртуальные прототипы для оценки реального распределения эмбеддингов классов. Для этого используется дополнительный набор параметров (прототипов), который обновляется без градиента во время обучения. В работе [30] авторы заменили виртуальные прототипы на версию модели с моментом (momentum encoder), что позволяет онлайн получать больше информации о реальном распределении классов.

3.    Предлагаемый подход3.1.    Методология

Наша цель - декомпозиция функции потерь CosFace [11] на интерпретируемые компоненты пригодные для анализа динамики обучения. Ключевые модификации:

  • -    Избавление от гиперпараметра маджин, п. 3.3.

  • -    Обучение «чистых» прототипов без артефактов отталкивания, и. 3.4.

  • -    Балансировка обновления прототипов для проблемы вызванной нормировкой векторов прототипов, п. 3.5.

  • -    Замена зависящего от данных SoftMax на фиксированные веса отталкивания, и. 3.6.

  • 3.2.    Постановка задачи

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

Тестирование качества модели производится на датасетах LFW [31], CFP-FP [32], AgeDB [33], IJB-B [34], IJB-C [35]. На датасетах LFW, CFP-FP, AgeDB оценивается точность распознавания 1:1. На датасетах IJB-B, IJB-C точность распознавания 1:1 при TPR(Q>FPR = 1е — 4. Обучение производится на предварительно выровненных изображениях размером 112 х 112.

Предварительное тестирование модификаций проводится на усеченном датасете (146 тыс. классов и 3 млн. изображений), полученном из датасета WebFace42M [36]. Используется модель ResNet-18 [37]. Размер батча 290, оптимизатор SGD с константным = 0.1, wd = 5е — 4, момент равен 0.9. Обучение идет 4 эпохи.

Обозначим f (ж) : Rn ^ Rd сверточную нейронную сеть, где п — размерность входных данных, d — размерность эмбеддинга е (векторного представления для ж). Для обучения нейронной сети используется матрица весов W, которая описывает прототипы классов. Для каждого ж из обучающей выборки есть метка правильного класса у. Обозначим е и Wi нормированные вектора е и Wi соответственно. Модель f (ж) обучается методом градиентного спуска, минимизируя функцию потерь (1). Для заданного е = f (ж) будем использовать 0 i = eTWi. Используются гиперпараметры s и m в соответствии с [11].

Рассмотрим градиент от функции потерь.

£ = — log

exp(s • (0у m)) exp(s ( — m)) + Y,i=y exp(s0i)

.

Раскладывая логарифм на два слагаемых, получаем

£ = s • т s 0у + log exp (s • (0у т)) + У^ exp(s • 0i) i=y

Для упрощения анализа функция потерь разбивается на две компоненты и делится на s. Константные слагаемые, которые не влияют на градиент, выкидываются:

£+ = —Оу ;      £- =LSE(s • (Оу — m),...,s 0i)/s,                   (2)

где £+ — компонента лосса, отвечающая за позитивное взаимодействие, то есть притягивание к своему вектору прототипа W. £- — отвечает за отталкивание от всех чужих прототипов. LSE(v) = log (exp(^o) + ... + exp(rn)).

Градиент от функции LSE есть функция SoftMaж. Тогда градиент на е есть

Ve£/s = Ve£+ + Ve£- = —!Ку + ^ «iWi,                  (3)

i где ai = SoftMaж(s • do,..., s • (0у — m),... ,s • 0k).

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

Отметим, что для базовой функции потерь множитель s дает дополнительный эффект неявного изменения темпа обучения ( 1г). Это происходит за счет того, что s появляется в градиенте как дополнительный множитель. По этой причине в уравнении (2) выражение было предварительно разделено на s.

Из (3) получаем, что градиент на эмбеддинг - это взвешенная сумма векторов прототипов. Причем с весом 1 идет притягивание к своему (Wу)- Веса на отталкивание (ai) в сумме дают 1. В данном случае мы не группируем отталкивание и притягивание к своему W у в одпо слагаемое.

3.3.    Максимальный марджин

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

Шаг обучения

0.5        00         0.5

а)

б)

Рис. 2. На каждом шаге обучения с помощью CosFace [11] эмбеддинг притягивается с весом 1 к своему вектору и отталкивается от него же с весом ау; а) среднее значение ау; б) ау имеет значение в районе нуля из-за того, что 0 и 0у — m в среднем равны нулю. Поэтому мы заменяем 0у — m на 0 и называем это максимальным марджином

Таблица!

Сравнение результатов базовой функции потерь и функции потерь с максимальным марджином. Для CosFace [11] представлены усредненные метрики по 5 запускам

Рис. 3. Точность во время обучения модели с базовой функцией потерь и функцией потерь с максимальным марджином. Обучение идет в пределах дисперсии базовой функции потерь

Точность AgeDB [33]

Точность CFP-FP [32]

Точность

LFW [31]

IJBC [35]

IJBB [34]

CosFace [11]

88.84 ± 0.97

82.84 ± 1.17

98.08 ± 0.30

78.52 ± 1.13

74.34 ± 1.33

Максимальный марджин

89.0

84.21

98.05

75.65

71.76

На рис. 2а представлен график значения компоненты на отталкивание от своего вектора прототипа (а^ во время обучения модели. Значение получается близким к нулю, такой эффект происходит из-за того, что в функции потерь используется марджин m, который значительно смещает распределения ву в распределение 0 (см. рис. 26). Для упрощения анализа гиперпараметр т в (3) заменяется св- — т на 0 так, чтобы в в- не шел градиент от этой компоненты. Такой подход называем максимальный марджин. Отсюда получаем а- = 0. На рисунке Зив таблице 1 представлены результаты обучения модели с заменой в- — т на 0 и без нее. Устранение т снижает сложность функции потерь и повышает интерпретируемость градиентов.

3.4.    Прототипы без отталкивания от эмбеддинга

В базовой функции потерь CosFace [11] участвуют все взаимодействия: на притягивание и на отталкивание между прототипами и эмбеддингами. Как следствие, в весах каждого прототипа во время обучения есть компонента, которая описывает распределение эмбед-дингов своего соответствующего класса, а также и компонента, которая получена из-за отталкивания прототипа от всех эмбеддингов остальных классов. Компонента отталкивания, полученная за счет отталкивания в весах W, усложняет анализ модели. Мы предлагаем обновлять прототипы только градиентом на притягивание: Vy = ё • ф=- (4). Это гарантирует, что прототипы хранят «чистое» распределение своего класса. Данную модификацию для краткости назовем: без отталкивания в W. Результаты тестирования представлены на рис. 4 и в табл. 2.

В базовой функции потерь, как и для ё, градиент на Wi является взвешенной суммой эмбеддингов с теми же весами ai'.

Vуу i£/8 — ё (5i=-   ai) .

Отметим, что если У^ ai — 1, значит ai — 1/k в среднем, где к - это число классов, i

В большинстве датасетов к варьируется от сотен тысяч до нескольких миллионов, поэтому ai ~ 0. В таблице 2 представлены результаты обучения модели без использования части градиента на словарь, направленной на отталкивание. Когда

VWi£/8 ^ • $i=-

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

Т а б л и ц а 2

Сравнение результатов базовой функции потерь и функции потерь без отталкивания чужих прототипов

Точность AgeDB [33]

Точность CFP-FP [32]

Точность

LFW [31]

IJBC [35]

IJBB [34]

CosFace [И]

88.84 ± 0.97

82.84 ± 1.17

98.08 ± 0.30

78.52 ± 1.13

74.34 ± 1.33

Без отталкивания в W

88.40

83.94

98.08

79.66

74.95

3.5.    Обновление прототипов

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

Рис. 4. Точность во время обучения модели с базовой функцией потерь и функцией потерь без отталкивания чужих прототипов. Обучение идет в пределах дисперсии базовой функции потерь

словаря (рис. 56), ключевая идея в том, чтобы всегда поддерживать прототипы единичной нормы (||Wj|| = 1) и не использовать нормировку для W. Так достигается полная интерпретируемость поведения весов W, а скорость обновления W регулирует только в отличие от базового варианта. Таким образом, веса W хранят прототипы с честным усреднением.

Для начала покажем формулу градиента для скалярного произведения векторов с нормировкой:

Vw

eTw 1 / м = м e

-

w

eTw \

eTw где e — w^.—775 есть вычитание из e коллинеарной c w компоненты. Отметим, что нену-INI2

левой шаг из w вдоль градиента, представленного в (5), будет только увеличивать норму обновленного w.

Возвращаясь к £, из уравнения (5) следует, что градиент на веса Wj зависит только от угла между прототипом и эмбеддингом и обратно пропорционален норме самого вектора Wj (до нормировки). Для вектора маленькой и вектора большой нормы шаг оптимизатора будет разным. В работе [39] авторы рассматривают схожую проблему на примере сетей с нормировками по батчу и описывают понятие эффективного для балансировки шага оптимизатора. Авторы рассматривают норму всего слоя. Мы же рассматриваем нормы каждого вектора Wi независимо. Очевидно, что большой эффективный значит, что вес Wi будет полностью перезаписан пришедшим эмбеддингом. Также, при малом эффективном изменение веса Wj не будет значительно менять его направление.

На норму вектора Wj влияет несколько факторов:

  • -    частотность изображений данного класса среди всего датасета. Чем меньше изображений данного класса, тем чаще норма вектора Wj будет урезана за счет wd (weight decay);

  • -    близость эмбеддинга данного класса. Так как градиент на Wj есть ортогональная компонента градиента на ТУ относительно Wj. Значит, что чем меньше угол между эмбеддингом и вектором Wj, тем меньше будет обновление Wj, и как следствие, и изменение нормы Wj после обновления оптимизатором;

  • -    норма самого вектора W j. Норма градиента обратно пропорциональна ||Wj||.

Рассмотрим обновление веса Wj в соответствии с формулой (4). На рисунке 5а схематично изображен градиент и шаг обновления для веса Wj. В fe собраны все коэффициенты, которые применяются оптимизатором на градиент, а также в него добавлена норма Wj:

к =

s

^Wi ||(1 — mom)BS'

где mom — момент оптимизатора. За счет большого количества классов Wi получается достаточно редкие обновления, поэтому накопление, которое делает момент, сразу заменяется на сумму геометрической прогрессии. BS — размер батча, который также влияет на норму обновления весов.

а)

б)

Рис. 5. а) Для случая без отталкивания в W (когда, веса W не содержат компоненты отталкивания), градиент на W равен ортогональной компоненте е относительно W (5) с коэффициентом к (6). Вектор ке, в случае нахождения в красной зоне, дает избыточное обновление веса W (Winew будет лежать справа от ке). б) Предлагаемая модификация, когда веса W всегда имеют единичную норму. При подсчете функции потерь нормировка веса W не используется

На рисунке 5а видна дополнительная проблема, проблема чрезмерного обновления весов. В случае когда вектор ке лежит в красной зоне, обновленный вектор словаря Winew будет лежать справа от е. Это является некорректным поведением. Подобная ситуация происходит регулярно во время обучения. На рисунке 6 представлен график нормы Wi для двух случайных классов во время обучения. Каждый резкий скачок вверх - это момент обновление прототипа эмбеддингом, пришедшем во время обучения. На всех остальных шагах норма вектора уменьшается за счет wd. Красными маркерами отмечены точки, когда обновление вектора прототипа получается избыточным (вектор ке лежит в красной зоне, рис. 5а).

Рис. 6. Нормы Wi для двух случайных классов во время обучения в логарифмической шкале. Для случая без отталкивания в W (когда веса W не содержат компоненты отталкивания). Каждый скачок нормы — момент обновления прототипа. На остальных шагах идет уменьшение нормы за счет wd. Красными маркерами отмечены шаги на которых происходит избыточное обновление весов W (попадание вектора ке в красную зону, рис. 5а)

Мы предлагаем модификацию обновления словаря, которая обеспечивает однородность обновления весов Wi. Предлагаемый вариант имеет только один влияющий фактор (1г) и обеспечивает честное и однородное усреднение весов.

Схематичное изображение представлено на рис. 56. На каждом шаге обучения веса Wj имеют единичную норму, что уменвшает количество операций во время обучения. Как и в (6), к' - коэффициент с поправкой на то, что ||Wi\| = 1:

s lr

(1 — mom)BS

Обновление Wj идет по формуле

Wi

_ Wi + к'ё new = ^Wi + Уё\\

Из формул (7) и (8) следует, что lr напрямую контролирует скороств обновления W. При достаточно болвшом lr, Wj new будет схож с ё, а при малом lr происходит накопление. На рис. 7 и в табл. 3 представлены результаты обучения с предложенным методом обновления прототипов. Тестирование проводится при том же lr для W, что и у базового решения. Точность обученной модели во время обучения с прототипами с честным усреднением имеет точность выше базового решения. Для более качественного анализа положительного эффекта необходим точной подбор lr. В данном случае эффективный lr для W отличается, а, значит, также может создавать эффект высокой точности. Для нас важно, что при той же конфигурации предлагаемый подход дает качество не хуже.

Т а б л и ц а 3

Сравнение результатов базового и предлагаемого методов обновления прототипов

Рис. 7. Точность во время обучения модели с базовой функцией потерь и предлагаемого метода обновления прототипов

Точность AgeDB [33]

Точность CFP-FP [32]

Точность

LFW [31]

IJBC [35]

IJBB [34]

CosFace [И]

88.84 ± 0.97

82.84 ± 1.17

98.08 ± 0.30

78.52 ± 1.13

74.34 ± 1.33

Прототипы с честным усреднением

90.28

85.41

98 . 23

82.76

78 . 82

Прототипы с честным усреднением; Без отталкивания в W

89 . 40

85 . 10

98 . 18

78 . 54

73 . 90

3.6.    Генерация весов a

В (3) был введен вектор а, который описывает силу взаимодействия эмбеддинга и прототипов. Зависимоств значений а от каждого объекта препятствует анализу глобалвной динамики обучения. В данном пункте показано, что а можно зафиксироватв: (1) как среднее за время обучения, (2) сгенерировав из нормального распределения, (алгоритм 1). Качество модели сохраняется (табл. 4), что позволяет интерпретировать отталкивание как стабильный процесс с постоянными весами.

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

Для проверки гипотезы проводится несколько тестов. Результаты представлены в табл. 4. Первый, когда на каждом шаге обучения используются экспоненциально сглаженные значения весов а, так веса могут постепенно меняться во время обучения. Дополнительно тестируется вариант, когда веса а зафиксированы, а именно: когда для обученной модели сохраняется среднее значение каждого веса аi для каждого объекта датасета. Затем данные веса используется для обучения новой модели. Веса а применяются в порядке, который определяется сортировкой в (максимальный вес отталкивания а должен соответствовать ближайшему прототипу, а не случайному).

Также тестируется предварительная генерация весов. Для этого производится аппроксимация нормальным распределением матрицы косинусных расстояний между эмбеддинга-ми и всеми векторами W для обученной модели. После чего, данное распределение используется для генерации весов апОгта1- Алгоритм генерации описан в алгоритме 1. Результаты тестирования представлены на рис. 8 и в табл. 4. Подобная генерация позволяет описать взаимодействия.

Алгоритм 1 Алгоритм генерации весов апогта1

Require: /() - обученная модель, возвращающая эмбеддинг е; веса прототипов W; X, Y - набор обучающих данных; s - параметр, используемый во время обучения модели.

Ensure: апогта1 - сгенерированные веса.

1: Пусть Vai’ ( v ) = — ^^ V{ i

2: Зададим d = 0

-1Е v, п ^ J

где п - длина вектора V.

  • 3:    for все х Е X do

  • 4:    Из (4.2) генерируем а для е = /(х)

  • 5:      d = d + тат(а)

  • 6:    end for

    -: d = d/\X |

  • 8:    а такая, что для вектора v, Vi ^ X(0,a2), верно: Nax(SoftMvx(vy) = d

  • 9:    return вектор апогmal = SoftMvx(v)

  • 3.7.    Итоговое тестирование

Для полноценной проверки качества при применении всех модификаций, проводится тестирование на полном датасете MSlMv3 [38] (93 тыс. классов и 5.2 млн изображений), используется модель ResNet-50 [37]. Размер батча 512, оптимизатор SGD с линейным понижением 1г с 0.1 до 0, wd = 5е — 4, момент равен 0.9. Обучение идет 20 эпох.

В данном тесте применяются все описанные выше модификации. Псевдокод для имплементации всех модификаций представлен в приложении П. 2. Общая схема показана на рис. 1. Результаты представлены на рис. 9 и в табл. 5. Используемые модификации:

Т а б л и ц а 4

Сравнение результатов базового решения для различных a

Точность AgeDB [33]

Точность CFP-FP [32]

Точность

LFW [31]

IJBC [35]

IJBB [34]

CosFace [И]

88.84 ± 0.97

82.84 ± 1.17

98.08 ± 0.30

78.52 ± 1.13

74.34 ± 1.33

Экспоненциальное сглаживание a

88.0

85.07

98.03

74.34

71.62

a от обученной модели

89.02

84.16

98.25

73.67

71.38

a norm al

89.65

83.60

97.97

80.8

76.63

Рис. 8. Точность во время обучения модели для базового решения при различных a. Обучение идет в пределах дисперсии базовой функции потерь

  • -    Макс, марджин. Пункт 3.3. Марджин заменяется на зануление ву, что обеспечивает максимальный градиент на притягивание.

  • -    Без отталкивания в W. Пункт 3.4. Прототипы обучаются без отталкивания от эм-беддингов. Следовательно, в каждом векторе прототипа лежат только вектора данного класса.

  • -    Экспоненциальное сглаживание a. Пункт 3.6. Во время обучения модели веса на отталкивание a усредняются во времени, что обеспечивает однородность и интерпретируемость обновления весов модели.

  • -    Прототипы с честным усреднением. Пункт 3.5. Предлагаемый подход обновления прототипов. Позволяет формировать вектора прототипов безградиентно за счет предсказуемого усреднения эмбеддингов класса.

  • 4. Заключение

Рис. 9. Точность во время обучения модели для базового решения и предлагаемого подхода. Датасет MSlMv3 [38], архитектура ResNet-50 [37]. Обучение идет в пределах дисперсии базовой функции потерь

Т а б л и ц а 5

Сравнение результатов базового решения и предлагаемого подхода. Датасет: MSlMv3 [38], архитектура ResNet-50 [37]

Точность AgeDB [33]

Точность CFP-FP [32]

Точность

LFW [31]

IJBC [35]

IJBB [34]

CosFace

98.17

98.01

99.77

96.59

95.34

Макс, марджин; Без отталкивания в W;

Экспоненциальное сглаживание а

97.62

97.06

99.73

96.38

94.97

Макс, марджин; Без отталкивания в W;

Экспоненциальное сглаживание а; Прототипы с честным усреднением

97.98

97.31

99.77

96.29

94.87

Мы предложили декомпозицию функции потерь CosFace [11] на три интерпретируемых компоненты:

  • -    Эмбеддинг строго притягивается к вектору своего прототипа.

  • -    Отталкивание от чужих классов описывается фиксированными весами а, не зависящими от батча.

  • -    Прототипы хранят чистые усредненные центроиды классов (без искажений от отталкивания, единообразные для всех классов).

Эксперименты подтверждают, что такая модель (рис. 1) сохраняет точность базового метода (табл. 5), но позволяет анализировать динамику обучения.

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

Перспективные направления развития:

  • -    Оптимизация вычислений с применением ANNS. В случае заморозки весов a достаточно знать только порядок ранжирования прототипов по расстоянию до эмбеддинга. Причем достаточно небольшого числа прототипов (см. приложение П. 1). Для этой задачи могут быть применены стриминговые алгоритмы ANNS [40] (approximate nearest neighbor search) для быстрого поиска по базе прототипов. Подход без отталкивания в W (п. 3.4) дает возможность безградиентно обновлять только небольшую часть базы, и только те прототипы, классы которых есть в батче. Использование алгоритмов ANNS позволяет уменьшить необходимое количество вычислительных ресурсов для обучения, что очень важно для оптимального масштабирования модели.

  • -    Исследование свойств a. Анализ связи между распределением a, параметром s и сходимостью модели. Была показана возможность фиксации весов a и замена на модельное распределение, но описание критерия оптимальности оставляем для дальнейшего исследования.

  • -    Применение в LLM. Адаптация декомпозиции для механизмов внимания в LLM, где SoftMax играет ключевую роль, и для Sparse Autoencoder [4,5], для онлайн выстраивания направлений во время обучения.

Предложенная декомпозиция открывает путь к аналитическому исследованию динамики обучения в моделях с SoftMax — от распознавания лиц до трансформеров.

Приложение П. 1

Значения a быстро уменьшаются при увеличении i. На рисунке 10 представлены значения a. Видно, что значения больше чем 10-5 имеет только п = 1000 значений из 140 тыс. Порог 10-5 выбран как число, близкое к машинному нулю, то есть цифра ниже которой значения считаются нулевыми. Следовательно, можно использовать только небольшое количество прототипов для обучения,и только те, которые входят в п наиболее близких прототипов для данного эмбеддинга. Результаты представлены в табл. 6.

Т а б л и ц а б

Сравнение результатов базового решения для различных a

Точность AgeDB [33]

Точность CFP-FP [32]

Точность

LFW [31]

IJBC [35]

IJBB [34]

CosFace [И]

88.84 ± 0.97

82.84 ± 1.17

98.08 ± 0.30

78.52 ± 1.13

74.34 ± 1.33

Топ п = 500

88.83

83.57

97.85

78.69

75.04

Топ п = 150

88.42

82.46

98.18

80.29

76.24

Топ п = 35

88.32

81.40

97.90

72.74

69.35

Топ п = 5

87.18

81.24

97.85

76.99

73.04

Топ п = 1

84.97

74.50

97.03

73.41

68.53

Рис. 10. Значения а в log-log шкале для обученной сети

Приложение П. 2

Псевдокод на PyTorch для упрощения имплементации предложенного подхода. Результаты представлены в табл. 5.

  • #    weights - веса прототипов optimizer = SGD(params=[

"params": model_weights, "Ir": 0.1, "momentum": 0.9,

"params": weights, "Ir": 0.1/(l - 0.9), "momentum": 0 ]) • • • norm_embeddings = F.normalize(embeddings)

  • #    weights идут c detach!! Cm. n. 3.4

logits = linear(norm_embeddings, weights.detachO)

loss_self = - S * (weights[labels] * norm_embeddings).sum(l) # Применение марджина. См. п. 3.3

logits *= S

  • #    Вычисление порядка сортировки и локальных а

  • a_values, a_indices = F.softmax(logits.detachO, dim=1).sort(dim=1) lse_loss = torch.gather(logits, 1, a_indices) * alphas, 1) # Обновление сглаженного а
  • alphas = alphas * 0.99 + a_values.mean(0) * 0.01