Найти тему
17 подписчиков

Атаки на текстовые классифкации (Часть 1)


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

1. Perturb Word With Synonym (Атака заменяет слова в тексте на их синонимы):

Описание: Эта атака заменяет слова в тексте на их синонимы, чтобы изменить смысл текста и ввести модель в заблуждение.
Пример: Исходный текст: "Кошка сидит на коврике." Атакующий текст: "Питомец сидит на циновке."

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

Последствия: Злоумышленник может изменить результаты анализа тональности, классификации или другого NLP-задания, что может привести к неправильным решениям или выводам.

Рекомендации: Использование моделей, способных к более глубокому пониманию контекста и семантики, таких как BERT или RoBERTa. Применение методов, учитывающих контекстные векторы (contextual embeddings) для улучшения семантического понимания. Регулярное тестирование моделей на наборах данных с синонимами и антонимами.

2. Deep Word Bug (Атака изменяет текст, добавляя или удаляя буквы):

Описание: Эта атака изменяет текст, добавляя или удаляя буквы, чтобы создать ошибки ввода, которые затрудняют распознавание модели.

Пример: Исходный текст: "Быстрая коричневая лиса перепрыгивает через ленивую собаку." Атакующий текст: "Быистраяа кораричневаяя лиисаа пеерпприигиивааетт чеерезз лееннивуюю сообакуу."

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

Последствия: Модель может неправильно интерпретировать текст, что может привести к ошибочным выводам или решениям, особенно в контексте автоматизированного анализа данных.

Рекомендации: Использование моделей, способных к коррекции опечаток и ошибок ввода, таких как T5 или BART. Применение методов, основанных на языковых моделях, для исправления грамматических и орфографических ошибок. Обучение моделей на большом количестве данных с различными вариациями текста.

3. Text Fooler (Атака выбирает слова, которые наиболее важны для предсказания модели):

Описание: Эта атака выбирает слова, которые наиболее важны для предсказания модели, и заменяет их на семантически похожие, но изменяющие смысл.

Пример: Исходный текст: "Мне нравится этот фильм." Атакующий текст: "Мне не нравится этот фильм."

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

Последствия: Злоумышленник может изменить результаты анализа тональности или классификации, что может привести к неправильным рекомендациям или решениям.

Рекомендации: Использование моделей, способных к более глубокому пониманию контекста и семантики, таких как XLNet или ALBERT. Применение методов, основанных на внимании (attention mechanisms), для улучшения понимания важных слов в предложении. Регулярное тестирование моделей на наборах данных с измененными ключевыми словами.

#MLSecOps
2 минуты