Одним из ярких моментов программы Нанодегрид для инженеров-самоуправляемых автомобилей Udacity является проект Поведенческое клонирование.

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

Есть много способов решить эту проблему. Вот шесть подходов, которые использовали разные студенты Udacity.

Дневник автостроителя - 5

Эндрю Уилки

В сообщении Эндрю подчеркиваются различия между фреймворком нейронной сети Keras и фреймворком TensorFlow. В частности, Эндрю упоминает, насколько ему нравится Керас:

Нас познакомили с Керасом, и я чуть не заплакал от радости. Это «официальная библиотека высокого уровня для TensorFlow, которая снимает большую часть боли при создании нейронных сетей. Я быстро добавил Keras (и Pandas) в свой Deep Learning Pipeline ».

Симулятор самоуправления автомобилем - Поведенческое клонирование (P3)

Жан-Марк Божур

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

Синтетическая« ошибка перекрестного следа генерируется при использовании изображений левой и правой камеры. На рисунке ниже s - угол поворота, а C и L - положение центральной и левой камеры соответственно. Когда используется изображение левой камеры, это означает, что центр автомобиля находится в позиции L. Чтобы восстановить свое положение, у автомобиля должен быть угол поворота s ’ больше, чем s:

загар (s ’) = загар (s) + (LC) / ч»

Поведенческое клонирование - передача обучения с извлечением признаков

Алена Костюкавец

Алена использовала трансферное обучение, чтобы построить свою сквозную модель вождения на плечах известной нейронной сети VGG. Ее подход отлично сработал. Трансферное обучение - действительно продвинутая методика, и приятно видеть, как Алена преуспела в ней:

Я выбрал VGG16 в качестве базовой модели для извлечения функций. Он обладает хорошими характеристиками и в то же время довольно прост. Более того, это перекликается с популярными моделями NVidia и comma.ai. В то же время использование VGG16 означает, что вам придется работать с цветными изображениями, а минимальный размер изображения - 48x48.

Введение в симулятор самоуправления Udacity

Наоки Сибуя

В проекте Behavioral Cloning Project используется Симулятор самоуправляемого автомобиля Udacity с открытым исходным кодом. В этом посте Наоки представляет симулятор и погружается в исходный код. Следуйте инструкциям Наоки и постройте для нас новый трек!

«Если вы хотите изменить сцены в симуляторе, вам нужно будет глубоко погрузиться в проекты Unity и перестроить проект, чтобы создать новый исполняемый файл».

MainSqueeze: 52-параметрическая модель, которая используется в симуляторе Udacity

Мез Гебре

В этом посте Мез объясняет реализацию SqueezeNet для проекта поведенческого клонирования. Это самая маленькая сеть, которую я когда-либо видел для этого проекта. Всего 52 параметра!

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

1: количество ядер 1x1 для использования в слое сжатия в пожарном модуле.

2: количество ядер 1x1 для использования на уровне расширения в пожарном модуле.

3: количество ядер 3x3 для использования в слое расширения в пожарном модуле »

Поведенческое клонирование в GTA V 2

Ренато Гасото

Ренато перенес свою сеть поведенческого клонирования в Grand Theft Auto V. Как это круто?!