Синтетические данные: первые дни, Часть II |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2020-05-06 18:24 Мы продолжаем с прошлого раза, когда мы начали обсуждение происхождения и первых применений синтетических данных: использование простых искусственных чертежей для конкретных задач и использование синтетически сгенерированных наборов данных для сравнения различных алгоритмов компьютерного зрения. Сегодня мы узнаем, как люди делали самоуправляемые автомобили в 1980-х годах, и увидим, что, как только компьютерное зрение начало решать реальные проблемы с машинным обучением, оно не могло избежать синтетических данных. Ранние самоуправляемые автомобили: от Футурамы до ЭлвинаСамоходные автомобили горячие. К настоящему времени на рынке уже есть самоходные грузовики и автобусы, сертифицированные для закрытых объектов, таких как производственные объекты или аэропорты, и многие различные компании работают над тем, чтобы поставить самоходные легковые автомобили на дорогах наших городов. Этот вид прогресса всегда занимает больше времени, чем ожидалось, но сейчас я считаю, что мы действительно находимся на пороге прорыва (или, может быть, прорыв уже произошел и скоро появится на рынке). В этом посте, однако, я хочу вернуться к истории этой темы. Идея самостоятельного вождения автомобиля очень стара. Волшебный ковер-самолет появляется в книге тысячи ночей и одной ночи и приписывается ко двору царя Соломона. Леонардо да Винчи оставил эскиз заводной тележки, которая должна была пройти по заранее запрограммированному маршруту. И так далее, и тому подобное: я буду ссылаться на превосходную статью Марка Вебера и украду оттуда только две фотографии. Еще в 1939 году у General Motors был огромный павильон на Всемирной выставке в Нью-Йорке; в метко названной поездке Futurama (вдохновлялся ли Мэтт Гроунинг от General Motors?), они показали свое видение городов будущего. Эти города включали в себя умные дороги, которые будут информировать умные транспортные средства, и они будут ездить автономно без наблюдения со стороны людей. Вот как General Motors представлял себе будущее еще в 1939 году: Реальность все еще не совсем догнала это видение, и путь к самоуправляемым транспортным средствам был очень медленным. В 1970-х годах были проведены успешные эксперименты с самоуправляемыми автомобилями. в частности, в 1977 году в лаборатории машиностроения Цукубы в Японии был разработан компьютер, который автоматически управлял автомобилем на основе визуально различимых маркеров, которые должны были быть установлены на улицах города. В 1980-х годах проект, финансируемый DARPA, произвел автомобиль, который действительно мог путешествовать по реальным дорогам с использованием компьютерного зрения. Это был знаменитый проект ALV (автономный наземный транспорт), и его система видения была способна находить дороги на изображениях с камер, решать обратную геометрическую задачу и отправлять трехмерные точки центра дороги в навигационную систему. Вот как это работало: Система зрения, названная VITS (for Vision Task Sequencer) и обобщенная в статье Turk et al. (цифры выше и ниже взяты оттуда), не использовал машинное обучение в текущем значении этого слова. Как и другие системы компьютерного зрения тех дней, как мы обсуждали в предыдущем посте, он опирался на специально разработанные алгоритмы сегментации, выделения границ дороги и обратной геометрии. Трубопровод выглядел так:: Насколько хорошо все это работало? В документе сообщается, что ALV “может перемещаться на расстояние 4,2 км со скоростью до 10 км/ч, обрабатывать колебания дорожного покрытия и перемещаться по резкой, почти шпильной кривой”. Затем в навигационную систему было добавлено обход препятствий, и Alvin (это было прозвище фактического самоуправляемого автомобиля, произведенного проектом ALV) мог избегать препятствий на дороге и развивать скорость до 20 км/ч на чистой дороге. Довольно впечатляюще для 1980-х годов, но, конечно же, реальные проблемы (такие как прыжки пассажиров перед самоуправляемыми автомобилями) даже не стали рассматриваться. Ввод NN в ALVINN: самоходная нейронная сеть в 1989 годуЭлвин не учился, не нуждался ни в каких данных, а следовательно, и в синтетических данных. Почему мы вообще говорим об этих ранних днях самостоятельного вождения? Потому что эта позиция "никакого обучения" очень скоро изменилась. В 1989 году Дин А. померло опубликовал статью о NIPS (это была вторая NIPS, очень отличающаяся от той, в которую она превратилась сейчас) под названием ALVINN: автономный наземный транспорт в нейронной сети . Это была, насколько я знаю, одна из первых попыток создать системы компьютерного зрения для самостоятельного вождения автомобилей на основе машинного обучения. И у него тоже были нейронные сети! Основная архитектура ALVINN была следующей: Это означает, что нейронная сеть имела два вида входных данных: 30 × 32 видео, дополненных данными дальномера 8 × 32. Нейронная архитектура представляла собой классическую двухслойную сеть прямой связи: входные пиксели проходят через скрытый слой, а затем к выходным блокам, которые пытаются сказать, какова кривизна поворота впереди, чтобы транспортное средство могло остаться на дороге. Существует также специальный блок обратной связи интенсивности дороги, который просто говорит, Была ли дорога светлее или темнее, чем фон на предыдущем входном изображении. Следующим шагом было обучение АЛВИННА. Для обучения сети требовался обучающий набор. Вот что декан померло должен сказать о сборе данных для обучения:
Это именно те проблемы с маркировкой и репрезентативностью набора данных, которые мы обсуждали для современного машинного обучения, только Pomerleau говорит об этих проблемах в 1989 году, в контексте видео размером 30 × 32 пикселя! И каково же его решение? Давайте читать дальше:
Бинго! Как только исследователям понадобилось решить проблему реального компьютерного зрения с помощью нейронной сети, появились синтетические данные. Это был один из самых ранних примеров автоматически генерируемых синтетических наборов данных, используемых для обучения реальной системы компьютерного зрения. На самом деле, низкое разрешение датчиков в те дни облегчало использование синтетических данных. Вот два изображения, используемые ALVINN, реальный слева и симулированный справа: Не так уж много требуется для достижения фотореализма, когда камера работает так, верно? Результаты оказались положительными. На синтетических тестовых наборах ALVINN мог правильно (в пределах двух единиц) предсказать кривизну поворота примерно в 90% случаев, наравне с лучшими алгоритмами ручной работы того времени. В реальных испытаниях ALVINN мог вести автомобиль по 400-метровому пути со скоростью полметра в секунду. Интересно, что ограничивающим фактором здесь была скорость обработки данных для компьютерных систем. Pomerleau сообщает, что алгоритмы ручной работы ALV могли достигать скорости 1 метр в секунду, но только на гораздо более быстром варп-компьютере, в то время как ALVINN работал на бортовом компьютере Sun, и он ожидает “драматических ускорений” после переключения на варп. Я должен снова процитировать здесь выводы Поморло — извинения за так много цитат, но эта работа действительно сияет как очень ранний снимок всего, что так здорово о синтетических данных:
Pomerleau говорит, что это больше как похвала для машинного обучения над разработкой алгоритмов ручной работы, и этот вывод также является правильным. Но это заняло бы гораздо больше получаса, если бы группе Поморло пришлось вручную маркировать каждое изображение с настоящей камеры. И конечно же, чтобы тренироваться для разных условий вождения им нужно было бы собрать целый новый набор данных в поле, с реальным автомобилем, а не просто настроить параметры генератора синтетических данных. Эта цитата является таким же доказательством преимуществ синтетических данных, как и для машинного обучения в целом. А как же сейчас?Но что, если все это было просто вспышкой в истории развития самоуправляемых автомобилей? Синтетические данные все еще используются для этой цели? Конечно, и гораздо более интенсивно, чем в 1980-х годах. Мы вернемся к этому более подробно в этом блоге позже, а сейчас отмечу лишь, что помимо подготовки модели компьютерного зрения для автономных транспортных средств, синтетических данных предоставляем интерактивные искусственных условиях, когда движущей силой могут быть подготовлены путем обучения с подкреплением (вспомним один из наших предыдущих постов), тонкая настройка компьютерного зрения моделей и обучение агента себя, в конец-в-конец мода. Сами наборы данных также прошли долгий путь с момента 30 × 32 видео ALVINN. Опять же, мы вернемся к этому позже гораздо более подробно, а сейчас я просто дам вам попробовать. Вот пример изображения из Synscapes, недавно опубликованного набора данных с акцентом на фотореализм: Я не думаю, что я был бы много пользы в качестве дискриминатора для изображений, подобных этому. Проблема переноса домена, увы, по-прежнему остается актуальной... но это тема для другого дня. ВыводВ этом посте я сосредоточился на одном конкретном применении синтетических данных в компьютерном зрении: обучении самоуправляемых автомобилей. Это была действительно одна из первых областей, где целостные подходы к обучению моделей компьютерного зрения на основе данных доказали свои преимущества перед алгоритмами ручной работы. И как мы видели сегодня, синтетические данные сыграли важную роль в этом развитии и по сей день остаются решающими для автономных моделей транспортных средств. В следующий раз мы перейдем к другим роботам. Сергей Николенко Источник: synthesis.ai Комментарии: |
|