- PVSM.RU - https://www.pvsm.ru -
Привет всем!
Продолжая проработку темы глубокого [1] обучения [2], мы как-то раз хотели поговорить с вами о том, почему нейронным сетям повсюду мерещатся овцы [3]. Эта тема рассмотрена [4] в 9-й главе книги Франсуа Шолле.
Таким образом мы вышли на замечательные исследования компании «Positive Technologies», представленные на Хабре [5], а также на отличную работу двоих сотрудников MIT, считающих, что «вредоносное машинное обучение» — не только помеха и проблема, но и замечательный диагностический инструмент.
Далее — под катом.
В течение нескольких последних лет случаи вредоносного вмешательства привлекли серьезное внимание в сообществе специалистов по глубокому обучению. В этой статье мы хотели бы в общих чертах рассмотреть данный феномен и обсудить, как он вписывается в более широкий контекст надежности машинного обучения.
Вредоносные вмешательства: интригующий феномен
Чтобы очертить пространство нашей дискуссии, приведем несколько примеров такого вредоносного вмешательства. Думаем, что большинству исследователей, занятых МО, попадались подобные картинки:
Слева изображен поросенок, верно классифицируемый современной сверточной нейронной сетью как поросенок. Стоит нам внести в картинку минимальные изменения (все пикселы находятся в диапазоне [0, 1], и каждый меняется не более чем на 0,005) – и теперь сеть с высокой достоверностью возвращает класс «авиалайнер». Такие атаки на обученные классификаторы известны как минимум с 2004 года (ссылка [6]), а первые работы, касающиеся вредоносного вмешательства в классификаторы изображений относятся к 2006 году (ссылка [7]). Затем этот феномен стал привлекать существенно больше внимания примерно с 2013 года, когда выяснилось, что нейронные сети уязвимы для атак такого рода (см. здесь [8] и здесь [9]). С тех пор многие исследователи предлагали варианты построения вредоносных примеров, а также способы повышения устойчивости классификаторов к таким патологическим возмущениям.
Однако, важно помнить, что совсем необязательно углубляться в нейронные сети, чтобы наблюдать такие вредоносные примеры.
Насколько устойчивы вредоносные примеры?
Возможно, ситуация, в которой компьютер путает поросенка с авиалайнером, поначалу может растревожить. Однако, следует отметить, что использованный при этом классификатор (сеть Inception-v3 [10]) не так хрупок, как может показаться на первый взгляд. Хотя, сеть и наверняка ошибается при попытке классифицировать искаженного поросенка, это происходит лишь в случае специально подобранных нарушений.
Сеть гораздо устойчивее к случайным возмущениям сопоставимой магнитуды. Поэтому, основной вопрос заключается в том, именно ли вредоносные возмущения вызывают хрупкость сетей. Если вредоносность как таковая критически зависит от контроля над каждым входным пикселом, то при классификации изображений в реалистичных условиях такие вредоносные образцы не кажутся серьезной проблемой.
Недавние исследования свидетельствуют об ином: можно обеспечить устойчивость возмушений к различным канальным эффектам в конкретных физических сценариях. Например, вредоносные образцы можно напечатать на обычном офисном принтере, так что изображения на них, сфотографированные камерой смартфона, все равно классифицируются неправильно [11]. Также можно изготовить стикеры, из-за которых нейронные сети неверно классифицируют различные реальные сцены (см., например, ссылка1 [12], ссылка2 [13] и ссылка3 [14]). Наконец, недавно исследователи напечатали на 3D-принтере черепашку, которую стандартная сеть Inception практически под любым углом обзора ошибочно считает винтовкой [15].
Подготовка атак, провоцирующих ошибочную классификацию
Как создать такие вредоносные возмущения? Подходов много, но оптимизация позволяет свести все эти различные методы к обобщенному представлению. Как известно, обучение классификатора зачастую формулируется как нахождение параметров модели , позволяющих минимизировать эмпирическую функцию потерь для заданного множества примеров :
Поэтому, чтобы спровоцировать ошибочную классификацию для фиксированной модели и “безвредного” ввода , естественно попытаться найти ограниченное возмущение , такое, чтобы потери на получились максимальными:
Если исходить из этой формулировки, многие методы создания вредоносного ввода можно считать различными оптимизационными алгоритмами (отдельные шаги градиента, проецируемый градиентный спуск, т.д.) для различных наборов ограничений (небольшое -нормальное возмущение, небольшие изменения пикселов, т.д.). Ряд примеров приведен в следующих статьях: ссылка1 [9], ссылка2 [16], ссылка3 [17], ссылка4 [18] и ссылка5 [19].
Как было объяснено выше, многие успешные методы генерации вредоносных образцов работают с фиксированным целевым классификатором. Поэтому важен вопрос: а не воздействуют ли данные возмущения лишь на конкретную целевую модель? Что интересно – нет. При применении многих методов возмущения результирующие вредоносные образцы переносятся от классификатора к классификатору, обученных с разным набором исходных случайных значений (random seeds) или различных архитектур моделей. Более того, можно создать вредоносные образцы, обладающие лишь ограниченным доступом к целевой модели (иногда в таком случае говорят об «атаках по принципу черного ящика»). См., например, пять следующих статей: ссылка1 [20], ссылка2 [21], ссылка3 [22], ссылка4 [18] и ссылка5 [23].
Не только картинки
Вредоносные образцы встречаются не только при классификации изображений. Похожие феномены известны при распознавании речи [24], в вопросно-ответных системах [25], при обучении с подкреплением [26] и решении других задач. Как вы уже знаете, изучение вредоносных образцов продолжается более десяти лет:
Хронологическая шкала вредоносного машинного обучения (начало). Полная шкала приведена на рис. 6 в этом исследовании [27].
Кроме того, естественной средой для изучения вредоносных аспектов машинного обучения являются приложения, связанные с обеспечением безопасности. Если злоумышленник может обмануть классификатор и выдать вредоносный ввод (скажем, спам или вирус) за безвредный, то спам-детектор или антивирусный сканер, работающий на основе машинного обучения, окажется неэффективен [28]. Следует подчеркнуть, что эти соображения – не чисто академические. Например, команда Google Safebrowsing еще в 2011 году опубликовала многолетнее исследование [29] того, как злоумышленники пытались обходить их системы обнаружения вредоносного ПО. Также см. эту статью [30] о вредоносных образцах в контексте фильтрации спама в почте GMail.
Не только безопасность
Все новейшие работы по изучению вредоносных образцов совершенно четко выдержаны в ключе обеспечения безопасности. Это обоснованная точка зрения, но мы считаем, что такие образцы должны рассматриваться и в более широком контексте.
Надежность
В первую очередь вредоносные образцы поднимают вопрос о надежности всей системы. Прежде, чем мы сможем осмысленно рассуждать о свойствах классификатора с точки зрения безопасности, мы должны убедиться, что механизм хорошо обеспечивает высокую точность классификации. В конце концов, если мы собираемся развертывать наши обученные модели в реальных сценариях, то необходимо, чтобы они демонстрировали высокую степень надежности при изменении распределения базовых данных – независимо от того, обусловлены ли эти изменения злонамеренным вмешательством или всего лишь естественными флуктуациями.
В таком контексте вредоносные образцы – это полезное диагностическое средство для оценки надежности систем машинного обучения. В частности, подход с учетом вредоносных образцов позволяет выйти за рамки стандартного протокола оценки, где обученный классификатор прогоняется по тщательно подобранному (и обычно статическому) тестовому набору.
Так можно прийти к поразительным выводам. Например, оказывается, что можно легко создавать вредоносные образцы, даже не прибегая к изощренным методам оптимизации. В недавней работе [31] мы показываем, что ультрасовременные классификаторы изображений удивительно уязвимы для небольших патологических переходов или поворотов. (См. здесь [32] и здесь [33] другие работы на эту тему.)
Поэтому, даже если не придавать значения, скажем, возмущениям из разряда ℓ∞ℓ∞, все равно зачастую возникают проблемы с надежностью из-за вращений и переходов. В более широком смысле, необходимо понимать показатели надежности наших классификаторов, прежде, чем можно будет интегрировать их в более крупные системы как подлинно надежные компоненты.
Понятие о классификаторах
Чтобы понять, как работает обученный классификатор, необходимо найти примеры его явно удачных или неудачных операций. В данном случае вредоносные образцы иллюстрируют, что обученные нейронные сети зачастую не соответствуют нашему интуитивному представлению о том, что значит «выучить» конкретную концепцию. Это особенно важно в глубоком обучении, где часто заявляют о биологически правдоподобных алгоритмах и о сетях, чья успешность не уступает человеческой (см, напр., здесь [34], здесь [35] или здесь [36]). Вредоносные образцы отчетливо заставляют в этом усомниться сразу во множестве контекстов:
Во всех трех случаях вредоносные примеры помогают испытать на прочность наши современные модели и подчеркивают, в каких ситуациях эти модели действуют совершенно не так, как поступал бы человек.
Безопасность
Наконец, вредоносные образцы действительно представляют опасность в тех сферах, где машинное обучение уже достигает определенной точности на «безвредном» материале. Всего несколько лет назад такие задачи как классификация изображений выполнялись еще очень плохо, поэтому проблема безопасности в данном случае казалась вторичной. В конце концов, степень безопасности системы с машинным обучением становится существенна лишь тогда, когда эта система начинает достаточно качественно обрабатывать «безвредный» ввод. В противном случае мы все равно не можем доверять ее прогнозам.
Теперь в различных предметных областях точность таких классификаторов существенно повысилась, и развертывание их в ситуациях, где критичны соображения безопасности – всего лишь вопрос времени. Если мы хотим ответственно к этому подойти, то важно исследовать их свойства именно в контексте безопасности. Но к вопросу безопасности нужен целостный подход. Подделать некоторые признаки (например, набор пикселов) гораздо легче, чем, например, другие сенсорные модальности, или категориальные признаки, или метаданные. В конце концов, при обеспечении безопасности лучше всего полагаться именно на такие признаки, которые сложно или даже практически невозможно изменить.
Итоги (подводить пока рано?)
Несмотря на впечатляющий прогресс в машинном обучении, который мы наблюдали в последние годы, необходимо учитывать пределы возможностей тех инструментов, что есть у нас в распоряжении. Проблемы самые разнообразные (напр., связанные с честностью, приватностью или эффектами обратной связи), причем, максимальную озабоченность вызывает надежность. Человеческое восприятие и познание устойчивы к разнообразнейшим фоновым помехам окружающей среды. Однако, вредоносные образцы демонстрируют, что нейронные сети до сих пор очень далеки от сопоставимой устойчивости.
Итак, мы уверены в важности изучения вредоносных примеров. Их применимость в машинном обучении далеко не ограничивается вопросами безопасности, а может послужить диагностическим эталоном для оценки обученных моделей. Подход с использованием вредоносных образцов выгодно отличается от стандартных оценочных процедур и статических тестов тем, что позволяет выявить потенциально неочевидные изъяны. Если мы хотим разобраться в надежности современного машинного обучения, то новейшие достижения важно исследовать и с точки зрения злоумышленника (правильно подобрав вредоносные образцы).
Пока наши классификаторы сбоят даже при минимальных изменениях между учебным и тестовым распределением, мы не сможем достичь удовлетворительной гарантированной надежности. В конце концов, мы стремимся создавать такие модели, которые не просто будут надежны, но и будут согласовываться с нашими интуитивными представлениями о том, что такое «изучить» задачу. Тогда они будут безопасны, надежны и удобны для развертывания в самых разных средах.
Автор: ph_piter
Источник [39]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/algoritmy/298693
Ссылки в тексте:
[1] глубокого: https://www.piter.com/product_by_id/93110353
[2] обучения: https://www.piter.com/collection/all/product/glubokoe-obuchenie-na-python
[3] почему нейронным сетям повсюду мерещатся овцы: http://nautil.us/blog/this-neural-net-hallucinates-sheep
[4] рассмотрена: https://habr.com/post/335026/
[5] представленные на Хабре: https://habr.com/company/pt/blog/416691/
[6] ссылка: https://dl.acm.org/citation.cfm?id=1014066
[7] ссылка: https://dl.acm.org/citation.cfm?id=1143889
[8] здесь: https://arxiv.org/abs/1708.06131
[9] здесь: https://arxiv.org/abs/1312.6199
[10] сеть Inception-v3: https://arxiv.org/abs/1512.00567
[11] все равно классифицируются неправильно: https://arxiv.org/abs/1607.02533
[12] ссылка1: https://www.cs.cmu.edu/~sbhagava/papers/face-rec-ccs16.pdf
[13] ссылка2: https://arxiv.org/abs/1712.09665
[14] ссылка3: https://arxiv.org/abs/1707.08945
[15] считает винтовкой: https://youtu.be/YXy6oX1iNoA
[16] ссылка2: https://arxiv.org/abs/1412.6572
[17] ссылка3: https://arxiv.org/abs/1608.04644
[18] ссылка4: https://arxiv.org/abs/1704.03453
[19] ссылка5: https://arxiv.org/abs/1706.06083
[20] ссылка1: https://dl.acm.org/citation.cfm?doid=1081870.1081950
[21] ссылка2: https://arxiv.org/abs/1602.02697
[22] ссылка3: https://arxiv.org/abs/1708.03999
[23] ссылка5: https://arxiv.org/abs/1610.08401
[24] распознавании речи: https://arxiv.org/abs/1801.01944
[25] вопросно-ответных системах: https://arxiv.org/abs/1707.07328
[26] обучении с подкреплением: https://arxiv.org/abs/1702.02284
[27] этом исследовании: https://arxiv.org/abs/1712.03141
[28] неэффективен: https://dl.acm.org/citation.cfm?doid=1014052.1014066
[29] многолетнее исследование: https://security.googleblog.com/2011/08/four-years-of-web-malware.html
[30] статью: https://elie.net/blog/ai/attacks-against-machine-learning-an-overview
[31] недавней работе: https://arxiv.org/abs/1712.02779
[32] здесь: https://arxiv.org/abs/1507.06535
[33] здесь: https://arxiv.org/abs/1805.12177
[34] здесь: https://www.nature.com/articles/nature14236
[35] здесь: https://blogs.microsoft.com/ai/machine-translation-news-test-set-human-parity/?ranMID=24542&ranEAID=je6NUbpObpQ&ranSiteID=je6NUbpObpQ-dkcqr0I2zf3zR5v8uY39Xg&epi=je6NUbpObpQ-dkcqr0I2zf3zR5v8uY39Xg&irgwc=1&OCID=AID681541_aff_7593_1243925&tduid=(ir__qudsssobujro3kr222tjnehk6m2xkb1k1ffjvgzq00)(7593)(1243925)(je6NUbpObpQ-dkcqr0I2zf3zR5v8uY39Xg)()&irclickid=_qudsssobujro3kr222tjnehk6m2xkb1k1ffjvgzq00
[36] здесь: https://arxiv.org/abs/1502.01852
[37] овец на дереве: http://aiweirdness.com/post/171451900302/do-neural-nets-dream-of-electric-sheep
[38] статье: https://www.theatlantic.com/technology/archive/2018/01/the-shallowness-of-google-translate/551570/
[39] Источник: https://habr.com/post/429362/?utm_source=habrahabr&utm_medium=rss&utm_campaign=429362
Нажмите здесь для печати.