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 минуты
24 июля 2024