1050

Как обмануть беспилотные автомобили (и не только их)

Сейчас активно обсуждают беспилотные автомобили — насколько они лучше или хуже обычных, как они изменят будущее и, конечно, насколько они безопасны. Некоторые подходят к этому со стороны проблемы вагонетки: мол, кто знает, как поведёт себя машина в критической ситуации, когда жертв не избежать? Но есть ещё один интересный аспект, который касается безопасности беспилотников: что, если машину можно сознательно обмануть? Чем это будет грозить на дороге? Сейчас объясню подробнее.


Сообщество автомобильных инженеров (SAE) выделяет 6 уровней автоматизации автомобилей:

0-й уровень: отсутствие автоматизации

1-й уровень: необходимо участие водителя

2-й уровень: частичная автоматизация вождения

3-уровень: автомобиль справляется с задачей самостоятельно, но может запросить участия водителя

4-уровень: высокая степень автоматизации

5 уровень: полная автоматизация


Таким образом, сказанное дальше будет касаться не всех беспилотных автомобилей, а только тех, что попадают в пятую категорию. Так вот, полностью автономные машины ориентируются в пространстве за счёт камер и нейронных сетей. Если объяснять на профанном уровне, выглядит это примерно так: камера снимает картинки, а сети их классифицируют: это вот дорожный знак, это — грузовик, это — внезапно! — олень и так далее. Четыре года назад спецы из Гугла, Фейсбука и Нью-Йоркского университета показали, что нейросети можно намеренно обмануть. Можно таким образом обработать картинки, что мы не заметим никаких перемен, а ИИ будет неверно их классифицировать. Такие изображения-обманки называются "adversarial examples" (это можно перевести как «состязательные примеры», но устоявшегося русского термина, вероятно, нет). Лучше всего объяснить на примере:

Нам кажется, что здесь и слева, и справа изображена панда, но сеть GoogLeNet принимает правую картинку за гиббона и совершенно в этом уверена.


Adversarial examples оказались весьма неприятной проблемой. Во-первых, выяснилось, что они не теряют своих обманных свойств и в физическом мире. Если такую картинку распечатать на обычном принтере, потом сфотографировать смартфоном и скормить нейронной сети, она по-прежнему будет работать. Это на практике продемонстрировали ребята из Google Brain и OpenAI — они заставляли ИИ принимать библиотеку за тюрьму, а стиральную машинку за половик. Вот видео для наглядности:

Другой интересный эксперимент провели учёные из Университета Карнеги — Меллон. Они аналогичным образом обманули систему распознавания лиц и выдали себя за известных людей. Для этого исследователи придумали цветовые паттерны, которые заставили бы нейронные сети принять их за конкретных знаменитостей, напечатали эти паттерны на глянцевой бумаге и наклеили на обычные очки. В двух случаях из трёх их ждал 100-процентный успех. Таким образом они показали, что обмануть нейросети можно 1. в реальном мире 2. не вызывая особых подозрений — ведь люди часто носят очки и цветные экземпляры среди них — не редкость. Вот видео с конференции, где исследователи сами рассказывают о своей работе — оно понятнее, чем научная работа на ту же тему.

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


В-третьих, можно создать adversarial examples, которые смогут одурачить не одну, а сразу несколько сетей, даже если те устроены по-разному. То есть такие «оптические иллюзии» до некоторой степени универсальны, хотя обмануть чем-то одним все сети на свете нельзя (или мы пока об этом не знаем). В общем, страшная вещь — можно дурить в реальном мире сразу несколько алгоритмов, и при этом необязательно всё-всё про них знать.


При чём здесь автономные автомобили? Ну, как видим, это работает не только с ними, но и их тоже касается. Как говорит специалист по технологиям машинного обучения Григорий Сапунов вот в этой статье: «Тема с автомобилями представляет особый интерес в силу того, что автомобиль — это объект повышенной опасности и если в нём появится чёрный ящик, который можно таким образом обмануть, то это риски. И риски намеренного обмана злоумышленником, и риски того, что автомобиль сам по себе может неправильно среагировать на какую-то ситуацию, и мы заранее не знаем какую (и к тому же мы до конца не понимаем, на что именно он вообще реагирует). То есть потенциально под угрозой человеческие жизни и здоровье, это нехорошо. Получается, что производитель не может дать никаких гарантий».

Специалисты пока не пришли к единому мнению о том, насколько adversarial examples опасны для беспилотных машин. Например, учёные из Иллинойсского университета в Урбане-Шампейне считают, что бояться нечего, потому что камеры движущегося автомобиля видят предметы с разных углов и в разных масштабах. Они провели такой эксперимент: сделали картинки-обманки, внешне похожие на обычные сигналы «стоп», наклеили их на дорожные знаки и несколько раз проехали мимо на автомобиле. Тачка была не простая, а с видеокамерой — изображение сразу поступало нейронным сетям. В большинстве случаев сети верно опознавали знак, ошиблись они всего-то в паре кадров. Учёные объяснили это тем, что машина большую часть времени находилась слишком далеко от дорожного знака, и камера попросту не могла разглядеть изменения картинки, которые обманули бы компьютер. Они пришли к выводу, что в реальном мире, где предмет можно разглядеть с разных углов и на разных дистанциях, о хитрых картинках можно вообще не беспокоиться.


Но с ними согласны не все. Например, ребята из уже упоминавшейся OpenAI (кстати, один из основателей компании — Илон Маск) привели контраргументы всего через 5 дней после публикации того исследования. Они не стали заморачиваться и писать научную работу, а просто опубликовали пост в блоге. Суть такова: спецы OpenAI создали изображение, которое нейронные сети классифицируют неправильно, с какого бы угла они на них не смотрели. Это распечатанная на принтере фотка милого котёнка среди зелени — как её не увеличивай, как не поворачивай, а ИИ всё равно принимает её за настольный компьютер или монитор. Таким образом, получается, что смена ракурса не защищает машины от обмана и опасность остаётся. Этот пост опубликовали совсем недавно, 17 июля, так что нам только предстоит узнать, что на это ответят другие специалисты.

Видео команды OpenAI, где они демонстрируют картинку-обманку с разных ракурсов

В заключение, пожалуй, стоит ещё раз напомнить о том, что проблема касается не только беспилотных автомобилей. Как говорит Григорий Сапунов: «Во многих местах, где нейросети используются для анализа изображений (определение товаров, системы безопасности, и т. д.) часто используются какие-то готовые нейросети, возможно дообученные на данных пользователя. Возможно, выяснится, что многие сервисы подвержены одной и той же проблеме и неверно классифицируют одни и те же картинки просто потому, что построены на одной и той же нейросети. Это может оказаться довольно массовой проблемой, где-то критичной, где-то нет».


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


P.S. Баянометр ругался на картинку, но она хорошо иллюстрирует тему поста.

Наука | Научпоп

9.3K пост82.8K подписчиков

Правила сообщества

Основные условия публикации

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

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

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

- Видеоматериалы должны иметь описание.

- Названия должны отражать суть исследования.

- Если пост содержит материал, оригинал которого написан или снят на иностранном языке, русская версия должна содержать все основные положения.


- Посты-ответы также должны самостоятельно (без привязки к оригинальному посту) удовлетворять всем вышеперечисленным условиям.

Не принимаются к публикации

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

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

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


Наказывается баном

- Оскорбления, выраженные лично пользователю или категории пользователей.

- Попытки использовать сообщество для рекламы.

- Фальсификация фактов.

- Многократные попытки публикации материалов, не удовлетворяющих правилам.

- Троллинг, флейм.

- Нарушение правил сайта в целом.


Окончательное решение по соответствию поста или комментария правилам принимается модерацией сообщества. Просьбы о разбане и жалобы на модерацию принимает администратор сообщества. Жалобы на администратора принимает @SupportComunity и общество Пикабу.