Надежность нейронных сетей: укрепляем устойчивость ИИ к обману - Кэти Уорр - E-Book

Надежность нейронных сетей: укрепляем устойчивость ИИ к обману E-Book

Кэти Уорр

0,0

Beschreibung

Глубокие нейронные сети (DNN) становятся неотъемлемой частью IT-продуктов, провоцируя появление нового направления кибератак. Хакеры пытаются обмануть нейросети с помощью данных, которые не смогли бы обмануть человека. Кэти Уорр рассматривает мотивацию подобных атак, риски, которые влечет вредоносный ввод, а также методы повышения устойчивости ИИ к таким взломам. Если вы специалист по data science, архитектор системы безопасности и стремитесь повысить устойчивость систем с ИИ или вас просто интересует различие между искусственным и биологическим восприятием, то эта книга для вас.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern
Kindle™-E-Readern
(für ausgewählte Pakete)

Seitenzahl: 295

Veröffentlichungsjahr: 2024

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Кэти Уорр
Надежность нейронных сетей: укрепляем устойчивость ИИ к обману
2024

Переводчики С. Черников, С. Черников, С. Черников, С. Черников

Кэти Уорр

Надежность нейронных сетей: укрепляем устойчивость ИИ к обману. — СПб.: Питер, 2024.

ISBN 978-5-4461-1676-8

© ООО Издательство "Питер", 2024

Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.

Оглавление

Предисловие
Для кого предназначена книга
Структура издания
Условные обозначения
Использование примеров программного кода
Математические обозначения
Благодарности
От издательства
Часть I. Общие сведения об обмане искусственного интеллекта
Глава 1. Введение
Неглубокий обзор глубокого обучения
Очень краткая история глубокого обучения
Неожиданное открытие: оптические иллюзии искусственного интеллекта
Что такое вредоносные входные данные
Вредоносное машинное обучение в более широком смысле
Последствия воздействия вредоносных входных данных
Глава 2. Мотивация к атакам
Обход веб-фильтров
Репутация в Интернете и управление брендом
Камуфляж против видеонаблюдения
Личная конфиденциальность в Интернете
Дезориентация автономных транспортных средств
Устройства с голосовым управлением
Глава 3. Основные понятия ГНС
Машинное обучение
Концептуальные основы глубокого обучения
Модели ГНС как математические функции
Создание простого классификатора изображений
Глава 4. ГНС-обработка изображений, аудио- и видеоданных
Изображения
Аудиоданные
Видеоданные
Соображения о вредоносности
Классификация изображений с помощью сети ResNet50
Часть II. Генерация вредоносных входных данных
Глава 5. Базовые принципы вредоносных входных данных
Входное пространство
Что «думают» ГНС
Искажающая атака: максимальный эффект при минимальном изменении
Вредоносная заплатка: максимальное отвлечение внимания
Оценка выявляемости атак
Резюме
Глава 6. Методы генерации вредоносных искажений
Методы белого ящика
Методы ограниченного черного ящика
Методы черного ящика с оценкой
Резюме
Часть III. Понимание реальных угроз
Глава 7. Схемы атак против реальных систем
Схемы атак
Многократно используемые заплатки и искажения
Сводим все вместе: комбинированные методы и компромиссы
Глава 8. Атаки в физическом мире
Вредоносные объекты
Вредоносный звук
Осуществимость атак с использованием физических вредоносных образов
Часть IV. Защита
Глава 9. Оценка устойчивости модели к вредоносным входным данным
Цели, возможности, ограничения и знания злоумышленника
Оценка модели
Резюме
Глава 10. Защита от вредоносных входных данных
Улучшение модели
Вредоносное обучение
OoD-обучение
Предварительная обработка данных
Сокрытие информации о целевой системе
Создание эффективных механизмов защиты от вредоносных входных данных
Глава 11. Дальнейшие перспективы: повышение надежности ИИ
Повышение устойчивости за счет распознавания контуров
Мультисенсорные входные данные
Вложенность и иерархия объектов
В заключение
Приложение. Справочник математических обозначений
Об авторе
Об обложке

Предисловие

Искусственный интеллект (ИИ) получил широкое распространение в современном мире. Умные машины ежедневно выполняют анализ сложных данных: системы видеонаблюдения распознают лица, цифровые помощники — устную речь, а автономные транспортные средства и роботы справляются с задачей навигации в неупорядоченном и неограниченном физическом мире. ИИ уже не только конкурирует с человеческими возможностями в таких областях, как обработка изображений, аудиоданных и текста, но часто и превосходит человека по скорости и уровню точности.

Несмотря на все достижения в сфере ИИ, не так давно выяснилось, что глубокие нейронные сети (ГНС) — алгоритмы, входящие в состав большинства систем ИИ, — подвержены вредоносным атакам, использующим неопасные, на первый взгляд, входные данные. ГНС можно обмануть, внеся во входные данные незначительные изменения, которые будут незаметными для человека. Так, небольшие изменения изображений, которые незаметны человеку, могут заставить ГНС неправильно интерпретировать их содержимое. Ввиду того, что многие системы ИИ получают свои входные данные из внешних источников — устройств с голосовым управлением или социальных сетей, — подверженность вредоносным входным данным открывает новую, часто весьма интригующую, угрозу безопасности. В данной книге рассказывается о такой угрозе, о том, какие выводы о ГНС позволяет сделать ее наличие и как сделать ИИ более устойчивым к атакам.

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

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

Для кого предназначена книга

Целевая аудитория этой книги:

• специалисты по работе с данными, использующие ГНС. Вы узнаете, как можно создавать глубокие нейронные сети с более высокой степенью устойчивости к вредоносным входным данным;

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

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

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

Для чтения книги не обязательно иметь представление о глубоких нейронных сетях. Все, что необходимо знать, изложено во вводной главе о ГНС (см. главу 3). Если же вы специалист по данным и знакомы с методами глубокого обучения, то можете пропустить эту главу.

Материал изложен в доступной форме, понятной читателям как с математической подготовкой, так и без. Дополнительные математические выкладки приводятся на тот случай, если читателю интересно, какие формулы лежат в основе некоторых концепций глубокого обучения и вредоносных входных данных. Если вы уже подзабыли, чему вас учили на уроках математики в старших классах школы, загляните в приложение — в нем кратко объясняются используемые в книге математические обозначения.

Примеры кода приводятся как дополнительные сведения для разработчиков программного обеспечения или специалистов по данным, желающих применить теоретические знания на практике. Код написан на языке Python в виде блокнотов Jupiter. В книгу включены только те фрагменты кода, которые важны для изложения материала, полный же код можно найти в репозитории GitHub (github.com/katywarr/strengthening-dnns). Там же содержатся подробные инструкции по запуску кода.

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

Структура издания

Книга разбита на четыре части.

Часть I «Общие сведения об обмане искусственного интеллекта».

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

• Глава 1 включает общие сведения о вредоносных атаках на ИИ и о глубоком обучении в целом.

• В главе 2 рассматривается мотивация, стоящая за генерацией вредоносных изображений, аудио- и видеоданных.

• Глава 3 содержит базовые сведения о глубоких нейронных сетях. Читатели, уже знакомые с основами глубокого обучения, могут пропустить эту главу.

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

Часть II «Генерация вредоносных входных данных».

В продолжение вводных глав части I в главах 5 и 6 подробно объясняется, что представляют собой вредоносные входные данные и как они создаются.

• В главе 5 дается концептуальное разъяснение идей, лежащих в основе генерации вредоносных входных данных.

• В главе 6 разъясняются вычислительные методы, используемые для генерации вредоносных входных данных.

Часть III «Понимание реальных угроз».

На основе изложенной в части II информации о методах в части III рассматривается, каким образом злоумышленник может запустить реальную атаку и с какими препятствиями ему придется при этом столкнуться.

• В главе 7 рассматриваются реальные атаки и сложности применения в реальных системах методов, описанных в части II.

• Глава 8 посвящена угрозам, исходящим от вредоносных объектов или вредоносных звуков, создаваемых в физическом мире.

Часть IV «Защита».

На основе материала, изложенного в части III, в данной части рассмат­риваются методы обеспечения устойчивости к вредоносным входным данным.

• Глава 9 посвящена эмпирическим и теоретическим методам оценки устойчивости нейронных сетей.

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

• Наконец, в главе 11 рассказывается, по каким направлениям может пойти развитие ГНС в ближайшие годы.

Условные обозначения

В этой книге используются следующие типографские обозначения.

Курсив

Применяется для обозначения новых понятий, терминов и важных слов.

Шрифт без засечек

Используется для обозначения адресов электронной почты и URL-адресов.

Моноширинный

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

Так обозначается совет или рекомендация.

Таким образом оформлены примечания общего характера.

Так обозначается предупреждение.

Использование примеров программного кода

Вспомогательные материалы (примеры программного кода, упражнения и т.д.) доступны для скачивания по адресу https://github.com/katywarr/strengthening-dnns.

Эта книга призвана помочь вам в работе. Примеры кода из нее вы можете использовать в своих программах и документации. Если объем кода несущественный, связываться с нами для получения разрешения не нужно. Например, для написания программы, использующей несколько фрагментов кода из этой книги, разрешения не требуется. А вот для продажи или распространения компакт-диска с примерами из книг издательства O’Reilly нужно получить разрешение. Ответы на вопросы с использованием цитат из этой книги и примеров кода разрешения не требуют. Но для включения объемных примеров кода из этой книги в документацию по вашему программному продукту разрешение понадобится.

Мы приветствуем указание ссылки на источник, но не делаем это обязательным требованием. Такая ссылка обычно включает название книги, имя автора, название издательства и ISBN. Например: «Надежность нейронных сетей. Кэти Уорр (Питер). Copyright 2019 Katy Warr, 978-5-4461-1676-8».

Если вам покажется, что использование кода примеров выходит за рамки оговоренных выше условий и разрешений, свяжитесь с нами по адресу [email protected].

Математические обозначения

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

Благодарности

Я очень благодарна команде издательства O’Reilly за то, что они предоставили мне возможность написать эту книгу и обеспечили потрясающую поддержку на протяжении всего процесса. Выражаю особую благодарность за помощь и поддержку редактору Мишелю Кронину (Michele Cronin), а также Деборе Бейкер (Deborah Baker), Ребекке Демарест (Rebecca Demarest) и Соне Сарубе (Sonia Saruba) из редакционного отдела. Также спасибо Нику Адамсу (Nick Adams) из отдела верстки за то, что оформил сложные математические формулы с помощью LaTeX.

Спасибо вам, мои научные редакторы: Нихил Будума (Nikhil Buduma), Пин-Ю Чен (Pin-Yu Chen), Доминик Монн (Dominic Monn), Ясин Наджи (Yacin Nadji)! Ваши комментарии были очень полезны. Доминик заслуживает особой благодарности за то, что проверял программный код и предлагал способы его улучшения.

Я очень признательна своим коллегам из компании Roke Manor Research за обратную связь, на основе которой был создан ряд интересных материалов по глубокому обучению, кибербезопасности и математике. Спасибо вам, Алекс Коллинз (Alex Collins), Роберт Хэнкок (Robert Hancock), Даррен Ричардсон (Darren Richardson) и Марк Уэст (Mark West)!

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

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

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

От издательства

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

Ваши замечания, предложения, вопросы отправляйте по адресу [email protected] (издательство «Питер», компьютерная редакция).

Мы будем рады узнать ваше мнение!

На веб-сайте издательства www.piter.com вы найдете подробную информацию о наших книгах.

Часть I. Общие сведения об обмане искусственного интеллекта

В этой части книги в общих чертах рассмотрено, что такое глубокие нейронные сети (ГНС, англ. DNN — deep neural network), как их могут обманывать вредоносные входные данные и почему они уязвимы к такому обману.

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

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

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

Глава 1. Введение

В книге рассматриваются глубокие нейронные сети — алгоритмы глубокого обучения, лежащие в основе многих аспектов искусственного интеллекта. ИИ — обширная дисциплина создания интеллектуальных машин, копирующих такие способности человеческого интеллекта, как обработка и интерпретация изображений, звука и речи, обучение и взаимодействие с непредсказуемым физическим и цифровым окружением или логическое мышление с помощью абстрактных идей и концепций. Хотя ИИ использует и другие методы, в частности методы машинного обучения (МО, англ. ML — machine learning) и традиционные алгоритмы программирования, возможность глубокого обучения имитировать способности человеческого интеллекта делает ГНС наиболее важным направлением в разработке ИИ. Глубокие нейронные сети способны имитировать, а зачастую даже превосходить человеческие возможности при выполнении многих задач, таких как обработка изображений, распознавание речи и интерпретация текста. Однако данная книга не о том, насколько точными и быстрыми могут быть глубокие нейронные сети; она о том, каким образом их могут обманывать злоумышленники и как можно усилить их защиту от такого обмана.

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

Неглубокий обзор глубокого обучения

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

ГНС являются подмножеством более широкого множества алгоритмов, называемых искусственными нейронными сетями (ИНС). В основе искусственных нейронных сетей лежат идеи, зародившиеся в 1940-е и 1950-е годы, когда ученые впервые задумались о возможности искусственной имитации человеческого интеллекта и процесса обучения с помощью алгоритмов, навеянных нейробиологическими моделями. Именно поэтому общая структура искусственных нейронных сетей часто описывается в терминах нейробио­логических конструкций, таких как нейроны, аксоны и связывающие их синапсы.

Архитектура (или структура) ИНС обычно включает в себя несколько слоев. Данные поступают в первый слой искусственных нейронов, которые заставляют соединенные с ними искусственные синапсы активировать следующий слой и т.д., пока последний слой нейронов не выдаст окончательный результат. На рис. 1.1 упрощенно показано, как могла выглядеть высокосложная искусственная нейронная сеть компьютера Deep Thought из фантастического романа Дугласа Адамса (Douglas Adams) «Автостопом по Галактике», написанного в 1979 году.1 Она принимает на вход данные и возвращает смысл жизни.

Рис. 1.1. Упрощенная схема возможной реализации ГНС компьютера Deep Thought, предназначенного для определения смысла жизни

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

Очень важно понимать следующее: как и любой другой алгоритм МО, модель ГНС просто реализует математическую функцию. Хотя описание этой модели в терминах взаимосвязанных нейронов упрощает ее концептуальное понимание, вы никогда не увидите упоминания нейронов и синапсов в программной реализации нейронной сети.

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

Очень краткая история глубокого обучения

В начале XXI века глубокое обучение и нейронные сети представляли собой достаточно узкую область исследований, интересную исключительно специалистам. Глубокие нейронные сети, как правило, носили теоретический характер и трудно поддавались реализации. Основным препятствием для практической реализации ГНС является то, что обучение модели ГНС (по сути, обучение алгоритма правильной работе) требует огромного количества обучающих данных и вычислительных ресурсов. Кроме того, обычно обучающие данные также должны быть размечены; то есть каждому обучающему примеру должен соответствовать правильный ответ. Например, в обучающем наборе изображений с каждым изображением должны быть связаны данные, описывающие, что содержит изображение и, возможно, в какой части изображения находится это содержимое.

Несколько разных способов обучить модель МО

Существует несколько способов обучить модель МО (подробное описание этих методов и примеры их применения в машинном обучении см. в главе 3).

Обучение с учителем. Это обучение модели МО с использованием полностью размеченного набора данных. Модель обучается на примерах — входных данных с соответствующими ожидаемыми ответами.

Обучение без учителя. Это использование неразмеченных наборов данных с целью обучить модель машинного обучения замечать паттерны в данных. Алгоритму не предоставляются ответы в ходе обучения, но, несмотря на это, он стремится выявить в данных паттерны.

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

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

Чтобы обучить ГНС выполнению такой сложной задачи, как визуальное распознавание, как правило, требуются десятки тысяч или даже миллионы обучающих примеров, каждый из них должен быть правильно размечен. Энтузиасты машинного обучения очень быстро поняли, что сбор большого количества размеченных данных представляет собой поистине непосильную задачу. Однако развитие Интернета на стыке веков в одночасье сделало эту задачу осуществимой. Такие интернет-гиганты, как Google и Facebook, начали использовать доступные им огромные океаны данных для обучения моделей, предназначенных для ряда бизнес-задач, таких как перевод с одного языка на другой. Одновременно с этим исследователи инициировали краудсорсинговые проекты, направленные на разметку обучающих наборов данных вручную. Новаторский пример — проект ImageNet, давший толчок развитию технологий на базе ГНС для машинного распознавания образов.

ImageNet

ImageNet (www.image-net.org) — это база данных со ссылками на изображения, созданная для стимулирования прогресса в области машинного зрения. Она содержит ссылки на более чем 14 миллионов изображений, каждое из которых отнесено к одной категории или более в зависимости от содержимого изображения. Эта база данных имеет иерархическую структуру, что позволяет варьировать уровень обобщения (например, можно использовать категорию «собака» или более конкретную категорию породы собак — «лабрадор»). При реализации проекта ImageNet использовался краудсорсинг для ручного аннотирования каждого изображения.

Начиная с 2010 года в рамках данного проекта проводится ежегодный конкурс ILSVRC (ImageNet Large Scale Visual Recognition Challenge — конкурс по широкомасштабному распознаванию образов в ImageNet), призванный стимулировать исследования в области программного обеспечения для визуального распознавания объектов.

Вместе с тем развивались и аппаратные технологии. Так, в частности, новые графические процессоры (GPU) для обработки компьютерной графики и изображений (особенно игровые) уже были способны быстро производить сложную матричную обработку — как раз то, что нужно для обучения ГНС. Примерно с 2010 года стала возможной разработка глубоких нейронных сетей. ГНС быстро достигли уровня точности и скорости, не уступающего, а иногда и превосходящего человеческие способности в таких областях ИИ, как визуальное распознавание и перевод устной речи.

Неожиданное открытие: оптические иллюзии искусственного интеллекта

Во время активного развития и повышения точности глубоких нейронных сетей в 2013 году К. Шегеди вместе с рядом других ученых опубликовал статью «Интригующие свойства нейронных сетей»2, которая была представлена публике на проходившей в следующем году Международной конференции по репрезентационному обучению (International Conference on Learning Representations, ICLR). Эта работа показала, что алгоритмы глубокого обуче­ния можно обманом заставить выдавать некорректные результаты.

В статье были рассмотрены алгоритмы глубоких нейронных сетей для классификации изображений. В качестве входных данных они принимают изображение и классифицируют его по основному содержанию. Например, изображение может быть классифицировано как «стол», если стол — основной объект в изображении. Несмотря на то что такие нейронные сети на тот момент считались передовым подходом к классификации изображений, они делали неожиданные ошибки, когда им на вход подавались изображения с множеством умышленных и незаметных для человека изменений пикселей. Хотя человек не видел в изображении никаких изменений, эти незначительные модификации заставляли нейронные сети совершать грубые ошибки классификации.

На рис. 1.2 представлены три примера неправильно классифицированных изображений, которые были рассмотрены в названной статье. В левом столбце показаны исходные изображения, которые были корректно классифицированы ГНС-алгоритмом. В центральном столбце — те вредоносные искажения, которые были созданы специально для показанных слева исходных изображений. Степень этих искажений была уменьшена путем умножения каждого пиксельного искажения на понижающий коэффициент. После добавления уменьшенных (и менее заметных) искажений к исходному изображению были получены новые изображения (см. рис. 1.2, справа). Все изображения в правом столбце были ошибочно классифицированы тем же алгоритмом как страус (Struthio camelus), несмотря на то что для человеческого глаза они выглядят так же, как оригиналы.

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

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

Рис. 1.2. Незначительные искажения ведут к неправильной классификации изображений. Слева представлены исходные изображения, справа — изображения с искажениями, которые были неверно классифицированы как страус (изображения взяты из статьи Шегеди и др. от 2014 года) См. иллюстрацию в цвете: https://storage.piter.com/upload/new_folder/978544611676/01_02.jpg

После выхода первой статьи Шегеди и др. было установлено, что такая уязвимость к обману есть и при обработке речи и текста, а значит, данное явление не ограничивается только областью ГНС для обработки изображений, а охватывает более широкий спектр ГНС-технологий. Учитывая постоянный рост роли глубоких нейронных сетей в нашей жизни, это были очень важные новости.

Что такое вредоносные входные данные

В сфере обработки изображений концепция вредоносных входных данных подразумевает создание оптических иллюзий, которым подвержен только искусственный интеллект. Так, вредоносное изображение может быть сгенерировано путем добавления в изображение кошки множества, казалось бы, неважных пикселей, которые заставят ИИ относить данное изображение к категории «собака», но не внесут в него каких-либо заметных изменений признаков, которые, по мнению человека, являются характерными для собаки. Вредоносные входные данные также могут представлять собой определенные метки на дорожном знаке, которые будут восприниматься человеком как граффити, но в то же время заставят автономное транспортное средство интерпретировать знак неправильно. Можно привести примеры и из сферы обработки аудиоданных. Например, включение в речь слабо слышимых вредоносных команд, ведущих к существенным ошибкам в интерпретации речи системой автоматического распознавания речи. Все эти сценарии обусловлены самими моделями ГНС.

Термин «вредоносный образ» (adversarial example) впервые использован Шегеди и его коллегами для описания примеров, подобных тем, что представлены на рис. 1.2. Иногда он подразумевает входные данные, созданные с целью заставить модель возвращать неверный результат, вне зависимости от того, удается ли таким данным действительно обмануть нейросеть или нет. Однако обычно этот термин подразумевает только те входные данные, которые сумели обмануть нейросеть. В этой книге термины «вредоносные входные данные» и «вредоносный образ» используются как синонимы, подразумевая входные данные, которые успешно обманывают нейросеть, заставляя ее выдавать предсказания, которые являются неверными с точки зрения человека. Соответственно, под невредоносными входными данными тут подразумеваются данные, которым не удается обмануть нейросеть, даже если они были созданы с вредоносной целью.

Вредоносное ПО как вредоносные входные данные

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

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

В этой книге мы сосредоточимся на моделях ГНС, предназначенных для обработки цифровых представлений визуальной и звуковой информации, с обработкой которой так легко справляется наш биологический мозг. Изображения и аудиоданные представляют собой непрерывные данные, включая пиксели и звуковые частоты с непрерывным распределением значений. В отличие от них такие виды сложных данных, как текст, представляют собой дискретные данные и не состоят из количественно измеримых величин. В дискретной предметной области сложнее создать вредоносный образ, который мог бы оставаться незамеченным, поскольку в такой области трудно количественно измерить «небольшое» изменение. Так, например, небольшое изменение в слове может быть малозаметным, когда оно выглядит как опечатка, либо явным, когда оно придает слову совершенно другой смысл.

В случае систем искусственного интеллекта для обработки изображений и аудиоданных «неправильный» результат не всегда отличается от того, что воспринимает человек — иногда вредоносному образу удается также обмануть и биологический (человеческий) интеллект. Возникает вопрос: должен ли ИИ интерпретировать мир точно так же, как это делаем мы? Как правило, нам не нужно, чтобы ИИ имитировал человеческое мышление до такой степени, чтобы при этом дублировались и ошибки человеческого восприятия. Большинство вредоносных образов, рассматриваемых в этой книге, не может обмануть человеческий мозг — биологическую нейронную сеть. Эти примеры демонстрируют модели угроз и подчеркивают различие между искусственным и человеческим интеллектом.

Хотя любой алгоритм машинного обучения в какой-то мере уязвим к вредоносным входным данным, глубокие нейронные сети обладают повышенной степенью уязвимости, поскольку они лучше справляются с задачами, в которых трудно четко определить, по каким признакам данных следует производить обучение. То есть мы слабо представляем, какие аспекты данных важны для алгоритма ГНС, или не понимаем этого вообще. Если мы не понимаем, на основе каких аспектов данных алгоритм принимает решения, то можем ли мы надеяться на проведение хороших тестов для проверки устойчивости алгоритмов? Вредоносные входные данные используют то обстоятельство, что модели глубокого обучения, как правило, имеют дело с миллионами возможных вариантов входных данных, основываясь лишь на небольшом количестве изученных примеров3. Обученные модели должны одновременно обладать и достаточной гибкостью, чтобы справляться с вариабельностью данных, и способностью обобщать новые данные. Как следствие, поведение глубокой нейронной сети остается непроверенным для большинства возможных входных данных и часто может быть неожиданным.

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

Вредоносное искажение

Образы, представленные на рис. 1.2, являются примером так называемой искажающей атаки — генерации вредоносных изображений путем создания точно рассчитанных модификаций исходного изображения, меняющих каждый пиксель на очень маленькую величину. Еще один способ такой атаки — внести более существенные изменения в несколько тщательно отобранных пикселей. Количество изменяемых пикселей и величина изменений, вносимых в каждый пиксель, могут варьироваться, однако общий эффект от изменений всегда остается незначительным, чтобы эти изменения не были заметны человеку. Искажение может казаться случайным, не являясь таковым; изменение каждого пикселя досконально подбирается таким образом, чтобы был получен желаемый результат. Далее в этой книге будет показано, как рассчитываются такие искажения для получения вредоносных входных данных.

Вредоносные искажения могут создаваться не только для изображений. Аналогичные методы применяются, например, и для аудиоданных (рис. 1.3). При этом используется тот же принцип — в аудиоданные вносятся небольшие изменения с целью внести ошибку в вычисления ГНС. Однако в то время, как во вредоносных изображениях используется пространственное измерение для внесения искажений в пиксели, во вредоносных аудиоданных производится искажение частот, распределенных по времени.

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

Рис. 1.3. Вредоносные искажения, вносимые в изображение с целью обмануть классификатор изображений и в аудиоданные с целью обмануть систему преобразования речи в текст

Неестественные вредоносные входные данные

В 2015 году Нгуен (Nguyen) совместно с другими исследователями опубликовал статью под названием «Глубокие нейронные сети можно легко обмануть: высоковероятные предсказания для нераспознаваемых изображений»5. Исследование показало, что, когда неважен реализм изображения, могут генерироваться вредоносные данные, не похожие совершенно ни на что, которые с высокой степенью вероятности будут классифицироваться глубокими нейронными сетями. На рис. 1.4 показаны некоторые примеры, приведенные в этой статье.

Рис. 1.4. Сгенерированные компьютером вредоносные образы, не распознаваемые человеком, и категории, к которым они были отнесены современными ГНС (изображение из статьи Нгуена и др. от 2015 года) См. иллюстрацию в цвете: https://storage.piter.com/upload/new_folder/978544611676/01_04.jpg

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

Вредоносная заплатка

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

Вредоносные заплатки представляют собой тщательно подобранные «наклейки», которые накладываются на данные. Эти заплатки отвлекают внимание глубокой нейронной сети от релевантных аспектов входных данных, заставляя ее выдать неверный результат. На рис. 1.5 представлен пример вредоносной заплатки, сгенерированной исследователями компании Google. Эта «наклейка» математически оптимизирована так, чтобы с точки зрения ГНС представлять собой более заметный признак, по сравнению с объектом, существующим в реальном мире, что с высокой степенью вероятности обеспечит ошибку классификации.

Рис. 1.5. Сгенерированная компьютером вредоносная заплатка, которая с высокой степенью вероятности ведет к ошибочному отнесению банана к категории «тостер» (из статьи Брауна и др. от 2017 года6). См. иллюстрацию в цвете: https://storage.piter.com/upload/new_folder/978544611676/01_05.jpg

Хотя такое вредоносное изменение очевидно для человека, он может не придать этому значения, особенно если оно не очень бросается в глаза и не влияет на общую интерпретацию изображения. Так, например, заплатка может быть помещена у края изображения и маскироваться под логотип. В данном случае вряд ли можно отнести изображение к категории «тостер» вместо категории «банан» еще и в силу того, что заплатка была специально сделана заметной для ГНС, но не для человека.

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

Рис. 1.6. Вредоносные заплатки, помещаемые на изображение с целью обмануть классификатор изображений и в аудиоданные с целью обмануть систему для преобразования речи в текст

Интересным свойством вредоносных заплаток является то, что их легче использовать повторно по сравнению с вредоносными искажениями. Так, в частности, сгенерированная компьютером вредоносная «наклейка» может быть эффективна в отношении большого количества изображений, что позволит злоумышленнику делиться ею в Интернете или копировать и накладывать ее во множестве разных областей.

Вредоносные образы в физическом мире

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

Во многих случаях злоумышленник может получить доступ только к физическому миру7, чтобы повлиять на данные, поступающие на воспринимающее устройство (такое как микрофон или камера), которое генерирует цифровые данные. При этом злоумышленник может использовать сгенерированные цифровые вредоносные заплатки в виде двумерных или даже трехмерных объектов в пределах сцены. Шариф и др. успешно продемонстрировали этот принцип в статье «Аксессуары для преступления: реальные скрытые атаки на современные системы распознавания лиц»8, используя вредоносные очки, позволяющие надевшему их человеку вызвать сбой в работе программного обеспечения для распознавания лиц. Пример таких очков показан на рис. 1.7.

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

Рис. 1.7. Вредоносные очки, созданные с целью обмануть системы распознавания лиц (изображение из статьи Шарифа и др. от 2016 года)

На рис. 1.8 приведены примеры искажающей атаки с использованием обычного дорожного знака остановки. Данная атака заставляет ГНС неправильно интерпретировать знак, следовательно, потенциально может обмануть авто­номное транспортное средство.

Рис. 1.8. Физическое искажение знака остановки может обмануть автономное транспортное средство, использующее видеоданные (изображение из статьи Эйкхолта и др. от 2018 года)

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

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

Вредоносное машинное обучение в более широком смысле

В данной книге рассматриваются вредоносные образы для нейронных сетей, обрабатывающих изображения и аудиоданные. Однако эти примеры являются составной частью более широкой группы атак, называемой вредоносным машинным обучением(вредоносным МО). Этот термин включает в себя все виды потенциальных атак на алгоритмы машинного обучения (ГНС и более классические алгоритмы машинного обучения) и все типы данных11.

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

Помимо атак уклонения, в сфере вредоносного МО могут также встречаться следующие виды атак.

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

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

Последствия воздействия вредоносных входных данных

Модели ГНС широко используются в современном мире для решения задач в нашей повседневной жизни. Кроме того, системы ИИ, которые содержат эти модели, часто обрабатывают данные, не имея контроля над ними (например, получая входные данные из цифровых онлайн-источников или из физического мира). Вот несколько примеров таких систем:

• системы распознавания лиц для контроля доступа или видеонаблюдения;

• веб-фильтры для выявления загруженных на сервер изображений, носящих непристойный или оскорбительный характер;

• автономные транспортные средства, действующие в неограниченной физической среде;

• выявление обмана телефонных систем с голосовым управлением;

• виртуальные ассистенты с голосовым управлением.

Если ГНС можно так легко обмануть с помощью вредоносных образов, не представляет ли это киберугрозу для решений на базе ИИ, которые получают данные из ненадежных источников? Насколько большую угрозу представляют вредоносные входные данные для безопасности и целостности систем, используемых в повседневной жизни? И наконец, к каким стратегиям снижения риска могут прибегнуть разработчики таких систем, чтобы предотвратить использование злоумышленниками этого направления атаки?