Что такое активное обучение?

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

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

То же будет верным для робомобилей и других технологий, в основе которых лежит ИИ.

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

Но что такое подходящие данные? Это новые или неопределённые ситуации, а не постоянное повторение одного и того же.

Активное обучение – это метод выбора обучающих данных для машинного обучения, автоматически находящий эти разнообразные данные. Причём он собирает наборы данных за небольшую долю того времени, которое потребовалось бы на выполнение этой задачи людям.

Он работает при помощи обученной модели, которая перебирает собранные данные и отмечает те кадры, с распознаванием которых у неё возникли сложности. Затем эти кадры размечают люди. Потом они добавляются к обучающим данным. Это увеличивает точность работы модели в таких ситуациях, как распознавание объектов в сложных условиях.

Как искать иголку в стоге данных

Объём данных, необходимый для обучения робомобиля, чудовищен. Эксперты из корпорации RAND считают, что машине нужно проехать 17 млрд км, чтобы превосходить человека по точности на 20%. Для этого парк из 100 машин в реальном мире должен был бы ездить непрерывно в течение 500 лет.

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

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

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

Почему именно активное обучение

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

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


Сравнение обычной сцены на шоссе (слева вверху) с необычными сценариями: ночной велосипедист на заднем колесе, пикап с прицепом с прицепом, пешеход на джамперах.

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

Активное обучение делает возможным автоматизировать процесс выбора кадров, при этом выбирая ценные опорные точки в данных. Она начинается с обучения специальной нейросети на уже размеченных данных. После этого сеть обрабатывает неразмеченные данные, выбирая кадры, которые она не может распознать – таким образом, она ищет данные, которые будут представлять трудность для алгоритма робомобиля. Затем эти данные изучаются и размечаются людьми, и добавляются в базу обучающих данных.


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

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

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

ссылка на оригинал статьи https://habr.com/ru/post/485228/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *