Для чего беспилотным автомобилям все еще нужны люди?

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

Что не так с уровнями автономности

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

Исследователи утверждают, что классификация, впервые представленная SAE (Society of Automotive Engineers) в 2014 году, возникла как ответ на запрос инженеров о стандартизации процессов, происходящих в сфере беспилотного транспорта, и демонстрирует разницу между технологическими системами. Эта рамка вышла за пределы сообщества инженеров и вошла в публичные нарративы: сегодня транспорт разделяют по уровням автономности и политики, и бизнесмены. Но что с ней не так?

Источник

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

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

Что делают нейросети в беспилотных автомобилях?

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

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

Беспилотные автомобили оснащены множеством сенсоров: лидарами, радарами, камерами. Нейросети обрабатывают данные с этих сенсоров и делают предположения о том, что они видят. Так становится возможным распознавание различных объектов, которые встречаются на дороге. Это очевидные, но очень важные дорожные инфраструктуры и ситуации: знаки дорожного движения, разметка, светофоры, люди, перебегающие дорогу в неположенных местах. Если все эти участники дорожного движения нам известны, то почему бы их не показывать нейросети в симуляторе, то есть искусственно созданной среде? Кажется, что нетрудно обучить нейросеть ограниченному количеству знаков дорожного движения или видам разметки. Однако не все ситуации можно просимулировать, потому что на реальных дорогах всегда может случиться то, о чем мы даже не предполагаем. В своей лекции Роман Удовиченко, руководитель группы обработки дорожной ситуации в направлении беспилотных автомобилей Яндекса, говорит:

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

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

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

C чего начинаются нейросети?

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

Лидарные облака точек, данные Яндекса. Источник

Андрей Карпатый, директор AI и компьютерного зрения (Autopilot Vision) в Tesla, отмечает, что в датасетах важен не столько их размер, сколько покрытие возможного пространства случаев, с которыми может столкнуться машина. Между размером и разнообразием все же есть прямая зависимость: чем больше данных, тем больше возможность встретить внутри них множество различных ситуаций — будь то рядовые велосипедисты или люди, несущие байдарку. Чем больше примеров разнообразных данных, тем больше точность их детектирования. Эти данные необходимы для обучения нейросети. В свою очередь, чтобы нейросеть начала понимать, что от нее требуется, необходимо разметить тысячи и тысячи картинок. Чтобы она работала хорошо, датасет должен удовлетворять трем условиям: он должен быть большим, разнообразным и реальным (данные реальных проездов).

Пример разметки фотографии: выделение линий разметки

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

Разработчики о датасетах

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

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

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

Обучение нейросети — это постоянно повторяющийся процесс, обращение к данным, разметка и тренировка. Андрей Карпатый приводит такой пример: нейросеть Tesla путалась, когда видела велосипед, прикрепленный сзади к автомобилю. Благодаря технологиям в данных, генерируемых сотнями тысяч машин Tesla ежедневно, можно найти повторяющиеся картинки велосипедов и машин. Однако здесь важно не только находить много разных объектов, но и размечать их корректно. Карпатый также утверждал, что человеческое вмешательство здесь минимизировано. Однако разработчики с которыми я разговаривала, спорили с ним, настаивая на человеческом вмешательстве, которое все еще необходимо в двух случаях: в самом начале, когда нейросеть еще ничего не умеет, или в сложных ситуациях, с которыми не справляется машина. Автоматический поиск картинок может использоваться, но его недостаточно.

Поможем нейросетям

Вернемся к видео, где Tesla тормозит у знака Burger King. Прошло чуть больше месяца и при проезде аналогичного участка дороги Tesla ведет себя по-другому. Очевидно, тут не обошлось без ручной разметки датасетов.

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

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

--

--