Это 17-й день моего участия в ноябрьском испытании обновлений.Подробности о событии:Вызов последнего обновления 2021 г.
Facebook предложил общий метод атаки для НЛП, который можно оптимизировать с помощью градиента.Бумага была опубликована в EMNLP2021 под названиемGradient-based Adversarial Attacks against Text Transformers, исходный код находится вfacebookresearch/text-adversarial-attack
Background
Сначала определим модель,виявляются входным и выходным множествами соответственно. пробаправильно предсказывается моделью как метка, то есть. если один сСостязательные примеры, которые бесконечно близкисделать,ноявляется хорошим состязательным примером. Мы можем определить функциюизмерятьиблизость. Порог,если, рассматривается состязательный примерс образцомочень близко
Процесс поиска состязательных примеров рассматривается как задача оптимизации, например, для задач классификации модельвывести вектор логитов, так что, чтобы сделать прогноз модели неверным, мы можем выбрать маржинальную потерю в качестве состязательной потери:
Когда потери равны 0, модель будетОшибки прогнозирования под контролем. бумага о маржинальных убытках в 2017 годуTowards evaluating the robustness of neural networks, который доказал свою эффективность в алгоритмах состязания изображений.
В этой части заметки я хочу подробно объяснить, почему потеря маржи может привести к неправильной классификации модели. Конечной целью обучения модели является оптимизация маржинальных убытков таким образом, чтобы их значение убытка было уменьшено до 0, т. е.
Пока вышеуказанные условия выполняются, значение потерь равно 0. Путем деформации можно получить
в,относится к вводуправильно предсказывается моделью как класслогит-значение . может пожелать установить
и, который показывает, что среди всех категорий ошибокЛогит класса является наибольшим, и, комбинируя приведенные выше неравенства, можно получить
Подводя итог, наша цель оптимизации всегда состоит в том, чтобы уменьшить значение убытка до 0, но убыток до 0 не обязательно означает, что модель должна правильно предсказывать все выборки.Цель оптимизации маржинальных убытков состоит в том, чтобы модель предсказывала неправильную категорию .Логит-коэффициент предсказывает правильный класслогит большой. Пока есть выборка, которая правильно предсказана, потеря не может быть равна 0
Учитывая потери противника, процесс построения состязательных примеров можно рассматривать как задачу оптимизации с ограничениями:
мы можем поставить ограниченияВнесите его в функцию потерь, чтобы изменить исходные жесткие ограничения на мягкие ограничения.
Если функция ограниченийдифференцируем, его можно оптимизировать с помощью оптимизатора на основе градиента
Уравнение (2) широко используется в непрерывных полях данных, таких как изображения или речь, но на самом деле оно не подходит для текстовых данных, в основном по двум причинам:
- пространство данныхявляется дискретным и поэтому не может быть оптимизирован с помощью градиентов
- Ограничивающая функцияТрудно измерить текстовые данные, такие как вставка «не» в предложение, слово сводит на нет значение всего предложения, но если мы используем расстояние редактирования для вычисления разницы между двумя предложениями, их расстояние редактирования составляет всего 1
GBDA: Gradient-based Distributional Attack
Метод, предложенный авторами статьи, решает две указанные выше проблемы:
- использовать**Gumbel-Softmax**Позволяет оптимизировать процесс отбора проб с помощью градиентов.
- Путем введения двух мягких ограничений недоумения и семантического сходства семантика состязательных образцов становится более беглой и приближается к семантике исходных образцов.
Adversarial Distribution
сделатьэто предложениепоследовательность токенов, гдеиз фиксированного словарного запаса. Пусть распределение вероятностейиз параметризованной матрицы вероятностей,приговорКаждый токен в независимой выборке по следующей формуле
в,означает первыйвектор распределений вероятностей маркеров
Наша цель — оптимизировать матрицу параметров, так чтодля моделиСостязательные примеры , чтобы сделать это, нам нужно оптимизировать целевую функцию как
в,необязательный состязательный проигрыш, например, маржинальный проигрыш
Extension to probability vector inputs
Уравнение (5) заведомо не является выводной функцией, так как распределение дискретное, и мы получаем его путем выборки, формулы для операции выборки нет, поэтому ее нельзя вывести. Однако мы можем масштабировать уравнение (5), чтобы взять вектор вероятности в качестве входных данных и использовать Gumbel-Softamx в качествеРасчетное значение , для введения градиента
приговоркаждый токен вИндекс в словареСоответствующий вектор слов можно найти в таблице Word Embedding. В частности, мы определяемявляется функцией встраивания, поэтому токенВложение,вявляется размерностью вложения. задан вектор вероятности, который определяет токенВероятность выборки , то мы определяем
соответствует вектору вероятностиВектор встраивания. В частности, если токенВектор вероятностиявляется однократным вектором, то. С помощью уравнения (6) мы можем преобразовать последовательность входных векторов вероятностиРасширен до серии сращивания вложений:
Computing gradients using Gumbel-softmax
к моделиРасширение, чтобы взять вектор вероятности в качестве входных данных, позволяет нам использовать Gumbel-softmax для получения гладкой оценки уравнения (5). Пусть входная вероятностная последовательностьИз распределения Gumbel-softmax оно получается по следующей формуле:
в,Сейчасследовать равномерному распределению.ближе к 0,Чем ближе к одноразовому распределению
Определив гладкое приближение к уравнению (5), мы можем оптимизировать параметры, используя градиентный спускохватывать
Soft Constrains
Поскольку автор вводит Gumbel-softmax и использует вектор вероятности в качестве входных данных модели, невыводимая формула (5) переписывается в выводимую формулу (8), поэтому любая другая выводимая функция ограничений может быть легко оптимизирована. цель. Воспользовавшись этим преимуществом, авторы вводят ограничения беглости и семантического подобия в целевую функцию, чтобы генерировать более беглые и семантически более близкие состязательные примеры.
Fluency constraint with a Language model
Предыдущая работа основана на атаках на уровне слов, таких как использование Word2vec, GloVe и т. д., или использовании замены синонимов для обеспечения семантического сходства между семантическими исходными образцами и состязательными образцами, но эти методы имеют некоторые проблемы в большей или меньшей степени. сгенерированные состязательные образцы являются грамматически бессвязными и семантически бессвязными
Каузальные языковые модели (CLM) или авторегрессивные языковые модели обучаются максимизировать условные вероятности.. Более конкретно, для CLM с выходом логарифмической вероятности, последовательностьОтрицательное логарифмическое правдоподобие (NLL) рассчитывается с помощью авторегрессии.
в,
Поскольку входными данными модели, которую мы определили ранее, является вектор вероятности токена, мы также можем расширить определение NLL:
в
Similarity constraint with BERTScore
Автор предлагает использоватьBERTScore, который представляет собой метод оценки сходства сгенерированного текста. Предполагатьа такжепредставляет собой последовательность из двух токенов, пустьДля языковой модели мы можем получить контекстное векторное представление
тогда последовательностьиBERTscore определяется следующим образом:
в,это токенНормализованная частота обратного документа
Мы можем легко использовать последовательность векторов вероятности, описанную в уравнении (6)заменитьи использоватькак производное мягкое ограничение
Objective function
Наконец, мы объединяем маржинальные потери, ограничения беглости и ограничения сходства BERTscore, чтобы сформировать нашу конечную цель оптимизации:
в,являются гиперпараметрами, каждая итерация начинается сПопробуйте пакет входных данных и минимизируйте их с помощью оптимизатора Adam.. В частности, гиперпараметры в документе установлены как
Result
Экспериментальные результаты показывают, что наша атака способна снизить точность модели до уровня ниже 10% почти во всех случаях, сохраняя при этом высокий уровень семантического сходства (косинусное сходство выше 0,8).
В то же время автор провел эксперимент по абляции, чтобы наблюдать за наличием ограничений беглости речи, их влиянием на сгенерированные предложения и окончательные результаты.
Персональное резюме
Честно говоря, было немного неловко. Когда я листал Принятые документы EMNLP, мне вдруг в глаза бросилось слово «Состязательный». Сначала я подумал, что это новый метод состязательной подготовки, поэтому я открыл бумаги и посмотрел на нее.Во время написания этой статьи выяснилось, что что-то не так, когда я написал ее ближе к концу.Я обнаружил, что эта статья в основном не о Adversarial, а об атаке, но я не занимаюсь глубоким изучением атаки, так что я в основном потратил много времени на просмотр чего-то, не связанного с моими исследованиями. Поскольку я мало что знаю об атаках глубокого обучения, у меня нет особых идей.