Набор экспериментальных изображений с художественными стикерами на разных расстояниях и под разными углами: (а) 5 футов, 0 градусов; (b) 5' 15°; (с) 10' 0°; (d) 10' 30°; (e) 40' 0°. Обман работает на любом расстоянии и под любым углом: вместо знака «Стоп» система машинного обучения видит знак «Ограничение скорости 45 миль»

В то время как одни учёные совершенствуют системы машинного обучения, другие учёные совершенствуют методы обмана этих систем.

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

Для составления состязательного примера нужно максимизировать активацию, например, определённого фильтра свёрточной нейросети. Иван Евтимов из Вашингтонского университета вместе с коллегами из Калифорнийского университета в Беркли, Мичиганского университета и Университет штата Нью-Йорк в Стоуни-Брук разработали новый алгоритм атаки — надёжные физические пертурбации (Robust Physical Perturbations или RP2). Он очень эффективно сбивает зрение беспилотных автомобилей, роботов, мультикоптеров и любых других роботизированных систем, которые пытаются ориентироваться в окружающем пространстве.

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

После вычисления такой дельты была выявлена маска — такое место (или несколько мест) в изображении, которое наиболее надёжно вызывает пертурбации у системы машинного обучения (машинного зрения). Был проведён ряд экспериментов для проверки результатов. В основном, эксперименты проводились на стоп-сигнале (знак "STOP"), который исследователи несколькими безобидными манипуляциями превращали для машинного зрения в знак "SPEED LIMIT 45". Разработанную технику можно использовать на любых других знаках. Авторы затем испытали её на знаке поворота.

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

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

Результаты эксперимента показаны в таблице. Во всех случаях показана эффективность обмана классификатора машинного обучения, который распознаёт видоизмененный знак "STOP" в качестве знака "SPEED LIMIT 45". Расстояние указано в футах, угол поворота — в градусах. Во второй колонке показан второй класс, который видится системе машинного обучения в видоизменённом знаке. Например, с расстояния 5 футов (152,4 см) камуфляж типа абстрактного искусства под углом 0° выдаёт такие результаты распознавания знака "STOP": с уверенностью 64% он распознаётся как знак "SPEED LIMIT 45", а с уверенностью 11% — как знак «Конец полосы» (Lane Ends).


Легенда: SL45 = Speed Limit 45, STP = Stop, YLD = Yield, ADL = Added Lane, SA = Signal Ahead, LE = Lane Ends

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

Научная работа опубликована 27 июля 2017 года на сайте препринтов arXiv.org (arXiv:1707.08945).

Комментарии (47)


  1. ZlodeiBaal
    07.08.2017 15:13
    +3

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


    1. BelerafonL
      07.08.2017 16:28
      +2

      Как уже обсуждали в статье https://geektimes.ru/post/291737/ и https://arxiv.org/pdf/1602.02697v2.pdf, скорее всего атака подействует на многие модели, обученные на данном одном датасете — включая разные архитектуры сверточных сетей и даже линейные классификаторы. Так что для проведения атаки достаточно гипотезы, на основе каких данных могла обучаться модель.


      1. ZlodeiBaal
        07.08.2017 16:32

        Не совсем согласен. 90% качества обучения достигается хорошей моделью приращения датасета. Это повышает и стабильность и точность. Такие атаки как «наклейка пластыря» достаточно хорошо обходятся правильным обучением.

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


  1. RubyFOX
    07.08.2017 15:42
    +2

    Как там у Пелевина?
    Он учил повстанцов специальным молитвам, написав которые на песке можно было сбить беспилотники неверных…


    1. fireSparrow
      07.08.2017 16:27

      Это рассказ «Зенитные кодексы Аль-Эфесби».


  1. Dmitry_5
    07.08.2017 15:46
    +2

    Тут должна быть картинка с SQL вместо номера на автомобиле


    1. Alaunquirie
      07.08.2017 17:12
      +9

      image


  1. evtomax
    07.08.2017 16:34

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


    1. RubyFOX
      07.08.2017 17:35
      +1

      А потом их выпустят в город, а тут оп-па, а знаки с граффити и наклейками оказывается…


    1. tubecleaner
      07.08.2017 18:32
      +4

      Кстати, все «важные» ( STOP, уступи дорогу, главная дорога ) знаки специально сделаны другой формы для лучшего узнавания. Их форма позволяет их считывать даже с тыльной стороны.


      1. dmitryredkin
        07.08.2017 23:25

        Поправка: не «важные», а «влияющие на поведение других участников движения».


        1. alix_ginger
          08.08.2017 10:19

          Поправка: не «влияющие на поведение других участников движения», а «знаки приоритета»


          1. dmitryredkin
            08.08.2017 11:42

            Поправка: Не все знаки приоритета, а только те, которые влияют на поведение других участников движения. :)


            1. Anton131313
              09.08.2017 08:18

              Все знаки приоритета влияют на движение других. Так что слился ты.


              1. dmitryredkin
                09.08.2017 10:57

                2.3.x, 2.6, 2.7 — обычной формы, т.к. не могут влиять на поведение других участников движения.

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


  1. Hayate
    07.08.2017 17:34
    +2

    А если знак скрутить совсем, то это будет атака на человеческий мозг. Какая разница, что сделал злоумышленник — поменял знак стоп на знак «главная дорога» или наклеил на него стикеры? И за то и за другое надо наказывать.


    1. mx2
      07.08.2017 18:46
      +2

      Погоду тоже наказывать, если знак занесет снегом, или птиц отстреливать, дабы не обгадили?


      1. Arqwer
        08.08.2017 00:32
        +1

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


        1. mx2
          08.08.2017 01:34
          -2

          Вероятность низкая, но то они и атаки, чтоб улучшать алгоритмы.


  1. McBernar
    07.08.2017 20:41

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


    1. darkfrei
      07.08.2017 21:16

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


    1. old_bear
      07.08.2017 22:12

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

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


      1. AllexIn
        07.08.2017 22:55

        Какой еще треугольник?
        Я остановлюсь — у всех робомобилей будет показано, что здесь один из робомобилей остановился. С неисправностью или по другой причине.


        1. TerraRist
          08.08.2017 00:07
          +1

          Ваш автомобиль сломался, он не может послать информацию о том, что остановился. А неожиданное исчезновение сигнала можно интерпретировать по разному.


          1. AllexIn
            08.08.2017 07:46

            Как по разному? Инопланетяне похитили?
            Да и в целом, роботу не нужно определять тип неизвестного оьбъекта. Появилось что-то на дороге — замедляемся и медленно и аккуратно объезжаем. Или вообще ждем команды от человека.


            1. sasha1024
              08.08.2017 11:11

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


              1. AllexIn
                08.08.2017 11:17

                Ну и что? Задача знака аварийной останоки — показать что ехать нужно аккуратней. В том месте, где пропал сигнал — нужно ехать аккуратней. Знак не нужен роботу.


            1. TerraRist
              08.08.2017 20:44

              Например, выехал из зоны действия сети или сломался именно модуль связи.

              Что значит «ехать аккуратнее» для самоуправляемого авто?

              Простите, забыл про определение на дороге.


      1. Igor_34_rus
        08.08.2017 10:39
        +2

        А упавшие дерево или столб тоже должны выставлять треугольник?
        Выбегающий ребёнок…
        Препятствие на дороге — остановиться / объехать.


        1. AllexIn
          08.08.2017 11:18

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


          1. Igor_34_rus
            08.08.2017 11:44

            Такую машину никто не выпустит на дорогу.

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


        1. extnike
          08.08.2017 13:44

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

          1. Уехать в кювет и с высокой вероятностью убить пятерых;
          2. Выехать на встречку в пассажирский автобус;
          3. Сбить пешехода.


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


          1. Igor_34_rus
            08.08.2017 14:03

            Вы свалили всё в кучу. До моральной проблемы дело не дошло.
            old_bear говорит, что

            поэтому быстрый и очень роботизированный

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


    1. DenisKoronchik
      08.08.2017 13:26

      Полностью с вами согласен. Если все машины self driving, то тут уже другие алгоритмы работают, и знаки не нужны. Знаки нужны лишь в том случае, если за рулем на дороге есть хотя бы один водитель человек. Но в таком случае и self driving car могут работать по двум принципам:
      1. «общаться» с машиной, на которой едет человек (чтобы где-то ее подтормозить или предупредить)
      2. пытаться распознавать знаки


    1. TerraRist
      08.08.2017 20:13
      +1

      Карту могут обновить, пока у авто нет доступа к Сети. Например, поставили Stop на дороге до дачи, где нет никакой сети. Для таких случаев нужны знаки на месте даже для self-driving-only дорог.


      1. DenisKoronchik
        09.08.2017 18:50

        А нужен ли вообще интернет, если машины смогут например между собой общаться? Там то они по алгоритму смогут «договориться», как мне кажется.


      1. mironoffe
        10.08.2017 11:09

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


      1. vlivyur
        10.08.2017 13:07
        -1

        А зачем человекочитаемые знаки устанавливать? Поставили активную метку на дорогу, где всё что нужно (максимальная скорость, пути об'езда, место действия и пр.) описано.


  1. SpiridonovAA
    08.08.2017 00:01
    +1

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


    1. Caseor
      08.08.2017 11:28

      А как быть с этим:

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

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


      1. SpiridonovAA
        08.08.2017 12:30

        я же написал «кортикоморфных нейросетях»
        разве у чайки есть кортикальные колонки?


      1. JTG
        08.08.2017 12:48

        У Питера Уоттса в «Морских звездах» было нечто похожее:

        — Надеюсь, пилот подъемника не слишком заскучал, — физиолог снова дружелюбен и болтлив.
        — А там нет пилота. Только умный гель.
        — Серьезно? Лучше бы ты мне этого не говорил, — хмурится Джарвис. — Страшноватые штуки эти гели. Ты знаешь, что один из них задушил кучу народа в Лондоне пару лет назад?
        Кита уже хочет сказать, что знает, но у пассажира опять приступ болтливости:
        — Нет, серьезно. Он там управлял системой подземки — никаких нареканий, идеальный работник, а потом однажды эта штука просто забыла запустить вентиляторы, когда было надо. Поезд заезжает на пятнадцать метров под землю, пассажиры выходят, воздуха нет, бум!
        Джоэл уже слышал эту историю. Коронная фраза как-то связана со сломанными часами, если он все помнит точно.
        — Эти штуки вроде как учатся на собственном опыте, правильно? — продолжает Джарвис. — Ну и все думали, что зельц научился запускать вентиляторы по какому-то очевидному признаку. Жару тела, движению, уровню углекислого газа, ну ты понимаешь. В результате выяснилось, что эта хрень просто смотрела за часами на стене. Прибытие поезда совпадало с предсказуемым набором паттернов на цифровом дисплее, поэтому она включала вертушки, когда видела один из них.
        — Ага. Точно, — Джоэл качает головой. — А какие-то вандалы часы разбили. Или что-то вроде того.


    1. nad_oby
      08.08.2017 13:58

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


  1. alexws54tk
    09.08.2017 13:28

    Прочитал подпись к КДПВ и завис на полчаса, сломав мозг.
    Это как надо было обучать ЛИСУ, чтобы в знаке «СТОП» видеть «Ограничение скорости 45», тем более „американские“?


    Знаки


  1. Tachyon
    10.08.2017 06:24

    С такими возможностями по сокрытию знаков с помощью небольших модификаций и развитием беспилотных авто скоро террористы будут просто цеплять наклейку на знак где нибудь на оживлённой трассе, и всё… Ни на пилотов учиться не надо, ни самолёты в здания потом «сажать», наклеил, ушел, и с пяток человек выпилил. Куда проще чем с ножиком по улице бегать всех встречных резать.


    1. HappyUser
      10.08.2017 19:58

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


  1. AlexDodonov
    10.08.2017 20:40

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