Кадры из компьютерной игры Grand Theft Auto V и семантическая разметка для обучения нейросети машинного зрения
Нейросети ставят новые рекорды почти на всех соревнованиях по компьютерному зрению, а также всё шире используются в других приложениях ИИ. Один из ключевых компонентов такой невероятной эффективности нейросетей — доступность больших наборов данных для их обучения и оценки. Например, для оценки современных нейросетей используется Imagenet Large Scale Visual Recognition Challenge (ILSVRC) с более чем 1 миллионом изображений. Но судя по последним результатам (ResNet показывает результат всего лишь 3,57% ошибок), скоро исследователям придётся составлять более обширные наборы данных. А потом — ещё более обширные. Между прочим, аннотирование таких фотографий — немалая работа, часть которой приходится делать вручную.
Некоторые разработчики систем компьютерного зрения предлагают альтернативный способ обучения и проверки таких систем. Вместо ручного аннотирования тренировочных фотографий они используют синтезированные кадры из реалистичных компьютерных игр.
Это вполне логичный подход. В современных играх графика достигла такого уровня реализма, что синтезированные изображения слабо отличаются от фотографий реального мира. В то же время игровой движок может сгенерировать бесконечное количество таких кадров — это сразу кардинально решает проблему сбора миллионов фотографий для тренировки и оценки нейросети.
Хотя игровой движок использует конечное число текстур, но существует большое разнообразие сочетаний углов зрения, освещения, погоды и уровня детализации, что обеспечивает достаточное разнообразие набора данных.
В этом году сразу две группы исследователей проверили на практике, можно ли использовать для обучения нейросетей машинного зрения сгенерированные кадры из компьютерных игр. Группа исследователей с факультета информатики Университета Британской Колумбии (Канада) опубликовала научную статью, для которой собрали более 60 000 кадров из компьютерной игры с дорожными видами, схожими с наборами данных CamVid и Cityscapes. Исследователям удалось доказать, что нейросеть после тренировки на синтетических изображениях демонстрирует схожий уровень ошибок, что и после тренировки на настоящих фотографиях. Более того, тренировка на синтезированных изображениях с использованием реальных фотографий демонстрирует ещё лучший результат.
Все 60 000 кадров сделаны в виртуальную солнечную погоду, в виртуальное время 11:00, с разрешением 1024?768 и максимальными настройками графики (название игры не разглашается из-за опасений, связанных с копирайтом). Беспилотный автомобиль случайно ездил по игровым улицам, соблюдая правила дорожного движения. Кадры снимались 1 раз в секунду. Каждый из них сопровождается автоматической семантической сегментацией (небо, пешеход, автомобили, деревья, фон — сегментация абсолютно точная и взята из игры), глубинным изображением (depth image, карта с разметкой объектов), а также нормалями к поверхности.
Кроме базового набора данных VG, исследователи сделали ещё один набор VG+ с большим количеством семантической информации, не ограничиваясь пятью метками — здесь сегментация не точная. Разметка осуществлялась автоматически с помощью SegNet.
Плотно размеченные кадры из набора VG+
Для сравнения эффективности обучения нейросети были подготовлены наборы данных CamVid и Cityscapes (пять меток), а также CamVid+ и Cityscapes+ с расширенными наборами меток.
Исходные фотографии CamVid с аннотациями
Два случайных изображения набора Cityscapes+ с подробными аннотациями
Для семантической классификации использовалась свёрточная нейросеть Лонга с простой архитектурой FCN8 поверх 16-слойной VGG Net Симоняна и Зиссермана.
Исследователи провели несколько экспериментов, чтобы оценить эффективность распознавания объектов нейросетью, которая обучалась на разных наборах данных. Практически во всех случаях нейросеть, обученная на синтетических данных, показывала лучший результат, чем нейросеть, обученная на настоящих фотографиях. Лучший результат она показывала даже при проверке на настоящих фотографиях.
Например, в таблице приведена оценка работы одинаковых нейросетей, обученных на трёх наборах данных (реальные фотографии, синтетические данные из игры, смешанный набор) при распознавании объектов на реальных фотографиях из наборов CamVid+ и Cityscapes+.
Как видно, лучше всего при обучении нейросети синтетические изображения из компьютерной игры дополнять настоящими фотографиями.
Научная статья опубликована 5 августа 2016 года на arXiv.org, вторая версия — 15 августа (pdf).
Кроме исследователей из Университета Британской Колумбии, практически одновременно аналогичную работу проделала другая группа учёных из Дармштадтского технического университета (Германия) и Intel Labs. Они взяли для обучения 24 966 кадров из компьютерной игры с открытым миром Grand Theft Auto V. Исследователи пришли к такому же результату: при использовании для обучении набора данных, составленного на 2/3 из синтетических изображений и на 1/3 из фотографий CamVid, точность распознавания оказывается выше, чем только при использовании фотографий CamVid.
Точность распознавания различных объектов на фотографиях из набора CamVid при обучении обычными методами и при использовании кадров из GTA V (нижняя строчка)
При этом полуавтоматическое аннотирование в специально разработанном редакторе значительно сокращает время подготовки набора данных для обучения нейросети. Например, аннотирование одной фотографии CamVid требует 60 минут, одной фотографии Cityscapes — 90 минут, а полуавтоматическое аннотирование кадра GTA V — всего 7 секунд, в среднем (видео, демонстрация работы редактора).
Работа исследователей из Дармштадтского технического университета и Intel Labs подготовлена для Европейской конференции по компьютерному зрению ECCV'16 (11-14 октября) и опубликована на сайте университета. Авторы выложили исходный код для чтения меток и полные наборы данных: как исходные фотографии, так и глубинные изображения с семантической разметкой. Исходный код редактора для аннотирования, вероятно, опубликуют в будущем.
Благодаря прогрессу в создании реалистичных компьютерных игр разработчики систем искусственного интеллекта получат в своё распоряжение отличную платформу для обучения систем машинного зрения. Эти системы будут применяться в беспилотном транспорте и роботах.
Возможно, компьютерные игры можно использовать не только для машинного зрения, но и для создания естественных моделей поведения в обществе. Только при обучения ИИ следует осторожно отнестись к выбору игры.
Комментарии (60)
roboq6
12.09.2016 14:31-3Возникла шальная мысль об создании ИИ-беспредельщика, натренированного в какой-нибудь игре типа GTA, который бы целенаправленно давил пешеходов (особенно предпочитая стариков, беременных и маленьких детей), умел уходить от преследования полиции, сбивал светофоры и т.д.
maaGames
12.09.2016 14:51+2Реально полезным был бы ИИ-антибеспредельщик, обученный уворачиваться от любителей обгонять по встречке ночью в дождь.
roboq6
12.09.2016 14:54А в самом деле, интересный вопрос. Как начнёт себе вести тот же гугломобиль если машины вокруг него вдруг начнут беспределить а-ля GTA?
maaGames
12.09.2016 14:58Остановится он, судя по всему. Была тут статья, что гугломобиль «пугался» велосипедиста, стоящего на светофоре и пошатывающегося. Думаю, в любой неожиданной ситуации он будет останавливаться и выжидать.)
roboq6
12.09.2016 15:05Думаю, в любой неожиданной ситуации он будет останавливаться и выжидать.)
Даже если другой автомобиль его таранит? Так и представляю картину: гугломобиль стоит на месте, а другой робомобиль его таранит, причём несколько раз подряд.maaGames
12.09.2016 15:16Двигаться задним ходом против движения запрещено же по ПДД? Сам я пешеход, так что имею право не знать.)
Если запрещено, то для движения задним ходом гугломобилю надо разрешить нарушать ПДД. А нарушать ПДД нельзя. Коллизия.
Опять же, позади может быть другая машина или пешеход. И гугломобиль встаёт перед дилеммой, кого бы лучше протаранить.roboq6
12.09.2016 15:18Ну а если его таранят сзади, так что возможность убежать без нарушения правил ПДД есть?
maaGames
12.09.2016 15:23Почему он стоит?
1. Красный свет. Если начать движение можно спровоцировать ещё большую аварию.
2. Едет медленнее догоняющего. Сменить полосу движения (он итак должен это сделать), либо ускориться до приемлемого уровня. Если превысить скорость, то это нарушение ПДД и может, опять же, к ещё более плохим последствиям привести.
Т.е. от автомобиля требуется активная защита без нарушения ПДД: начать заполнять салон пеной безопасности за секунду до непосредственного соударения, чтобы повысить вероятность выживания человеков внутри машины.roboq6
12.09.2016 15:351. Красный свет. Если начать движение можно спровоцировать ещё большую аварию.
Снова шальная мысль, а как будет вести себя наш гугломобиль если…
1.Светофор тупо не горит?
2.Вместо светофора работает регулировщик со свистком?maaGames
12.09.2016 15:42+11. IOT, светофоры в виде лампочки не нужны — не современно и моветон
2. тоже не нужны.
А вообще, отличный вопрос: умеют ли гугломобили и прочие распознавать жестикуляцию регулировщика или вся надежда на IOT?roboq6
12.09.2016 15:54+12. тоже не нужны.
Дык вторые используются когда по каким-то причинам не работают первые, это подстраховка. Вот что будете делать если в Вашем городе с IOT аналогими светофора тупо свет отключится? Я помнится сталкивался с ситуацией когда светофор переставал работать из-за отключения света.maaGames
12.09.2016 15:58Думаю, весь вопрос в том, есть ли обычные машины на дороге. Если только робомобили, то светофоры не нужны, все знают друг о друге и вообще никаких вопросов нет (пока работает GPS модуль и облако).
Про распознавание жестикуляции вопрос открыт, ждём экспертов.roboq6
12.09.2016 16:10Если только робомобили, то светофоры не нужны, все знают друг о друге
Только если это робомобили от одного производителя. Если же от разных, то может быть проблема. Возможно разные производители будут намеренно использовать разные стандарты дабы создать вендор-лок. Тогда получится робомобили какого производителя первыми завелись в городе, тот этот город и «завоевал».maaGames
12.09.2016 16:14Скорее производитель даст взятку «своему» сенатору, чтобы законодательно утвердили удобный конкретному производителю интерфейс взаимодействия робомобилей. 100% будет единый стандартизированный формат взаимодействия, как для самолётов и космических спутников.
roboq6
12.09.2016 16:21Скорее производитель даст взятку «своему» сенатору, чтобы законодательно утвердили удобный конкретному производителю интерфейс взаимодействия робомобилей.
Тогда образуется коалиция которая будет этому противодействовать. Либо начнётся настоящая война лоббистов, когда каждый крупный производитель будет проталкивать свой стандарт. Возможно в итоге кто-то победит, но потом будет долгий переходный период, либо же всё вообще повиснет в воздухе и будет ситуация которую я описал, «кто успел — тот и съел».
100% будет единый стандартизированный формат взаимодействия, как для самолётов и космических спутников.
Откуда такой оптимизм?maaGames
12.09.2016 16:26Никакого оптимизма, чистый прагматизм. В одиночку всю инфраструктуру не поднять (это в России по велению могут за счёт налогоплательщиков любые триллиарды вбухать в IOT для каждого светофора, а в цивилизованных странах это невозможно), поэтому производителям придётся объединяться и разрабатывать хотя бы базовый общий протокол. Возможно, «кто-то успеет» и их протокол примут за стандарт.
Kolonist
12.09.2016 23:00Про распознавание жестикуляции вопрос открыт, ждём экспертов.
Да тут и экспертов не надо, если учитывать то, как сотрудники ГИБДД жестикулируют. Очень часто возникает ощущение, что они сами совершенно не знают специальных жестов и тупо крутят палкой, в надежде, что кто-нибудь разберется, что делать. В итоге, от них на дороге становится только хуже.maaGames
13.09.2016 14:19Надо срочно выделить 100 миллионов на обучение сотрудников ГИБДД в игре ГТА.
DimmiSfai
13.09.2016 15:53А зачем тут эксперты? Есть киннект у иксбокса для распознания твоих движений, например распознает танцевальные движения в Dance central, у сони вроде тоже что-то подобно есть. Другой вопрос, правильно ли сами регулировщики эти жесты показывают.
maaGames
13.09.2016 15:57Одно дело, когда припадочный скачет строго перед камерой на примерно известном расстоянии и совершенно другое дело, когда человек может быть где-то есть, на гораздо большем расстоянии, повёрнутый совершенно разными сторонами и точность определения жестов которого значит гораздо больше, чем +100 очков за попадание в ритм.
DimmiSfai
14.09.2016 07:46При чем тут расстояние? Невозможно сделать оптику которая сможет его четко видеть? А то что он повернут разными сторонами, это и есть распознавание движений. Киннект тот же распознает именно движения а не попадание в ритм. Никто не спорит, что для установки на робомобиль технологию нужно отладить, доработать и т.д., но и спорить с тем что такая технология уже есть — странно.
maaGames
14.09.2016 14:03Вопрос не в оптике, а в направлении взгляда. Полиционера нужно будет отличить от толпы пешеходов, в том числе идущих через дорогу и имеющих махать руками так же, как это делает регулировщик. При том, что полицейского может и не быть или он может стоять на перекрёстке или вдоль дороги. Добавляем абсолютно любую освещённость, затуманенность, дождик… Живой водитель тоже толком не увидит ничего…
DistortNeo
14.09.2016 14:50Почитайте про «face hidden in coffee beans». Заметить полицейского при наличии большого количества отвлекающих факторов тяжело только для человека.
EvMard
12.09.2016 16:55Двигаться задним ходом запрещено только в туннелях, на мостах, перекрестках и пешеходных переходов. Во всех остальных местах движение задним ходом разрешено, не создавая помех другим участникам движения.
>Сам я пешеход, так что имею право не знать
Пешеходы также являются участниками движения и должны (по идее) ПДД знать. Незнание не освобождает от ответственности ))maaGames
12.09.2016 16:58+2Я имею право быть на дороге только в зоне пешеходного перехода при моём зелёном (неистово крутя головой во все стороны). В остальных случаях я должен с визгом убегать с тротуара в ближайший лес, чтобы укрыться от водителя, обучавшегося водить в ГТА.)
Pakos
13.09.2016 11:52Большинство водителей поведёт себя так же, некоторые натворят ещё больше дел в попытках увернуться.
roboq6
12.09.2016 15:27+4Вообще ИИ-беспредельщик может быть полезен как цифровое оружие массового поражение в кибервойне. Представляете какой хаос возникнет если вдруг заразить/перепрошить миллионы робомобилей в каком-нибудь мегаполисе такой программой?
andrzzc
Теперь при авариях с автопилотом можно будет утверждать «это случилось потому что он слишком много играл в GTA/Carmageddon».
4dmonster
Причём в данном случае это будет правдой. :)