ПРИМЕНЕНИЕ НЕЙРОННЫХ СЕТЕЙ ДЛЯ АВТОМАТИЧЕСКОЙ ПОСАДКИ БЕСПИЛОТНОГО ЛЕТАТЕЛЬНОГО АППАРАТА - Студенческий научный форум

X Международная студенческая научная конференция Студенческий научный форум - 2018

ПРИМЕНЕНИЕ НЕЙРОННЫХ СЕТЕЙ ДЛЯ АВТОМАТИЧЕСКОЙ ПОСАДКИ БЕСПИЛОТНОГО ЛЕТАТЕЛЬНОГО АППАРАТА

Белов Н.В. 1, Буянов Б.Я. 1
1МТУСИ
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
В работе проводится исследование и реализация поэтапного решения задачи автоматической посадки БПЛА. Описана реализация нейронной сети, которая заключается в формировании обучающего набора и сети типа однослойный персептрон. Так же, выполняется проверка работоспособности построенной нейронной сети для данной задачи.

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

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

Целью данной статьи является написание нейронной сети прямого распространения (однослойный персептрон) для решения задачи автоматической посадки беспилотного летательного аппарата. Полученные результаты будут свидетельствовать о возможности эффективного применения нейронных сетей для решения задач такого рода.

Для обучения нейронной сети был сгенерирован набор изображений, размер которых составил: 20 пикселей по ширине и 20 пикселей по высоте, то есть получаем матрицу, каждый элемент которой является одним из оттенков серого, кодируемый числами от 0 (черный цвет) до 255 (белый цвет). Пример изображения и его матричный вид представлены на рисунке 2.

Рис. 1.1 Пример сгенерированного изображения местности для успешной посадки

Предположим, что для успешной посадки летательного аппарата необходима строго прямая посадочная полоса длиной от 7 пикселей. Любые другие прямые или кривые линии считаются неудачным местом для совершения посадки. Кроме того, так как местность содержит множество других объектов, помимо самих посадочных полос, например, деревья или автомобили, был нанесен шум – точечные пиксели в произвольных местах.

Таким образом, был сгенерирован обучающий набор, состоящий из 200 удачных мест и 225 неудачных мест для посадки. 100 сгенерированных изображений для примера приведены на рисунке 2.

Рис. 1.2 Пример сгенерированного набора изображений

Каждый набор включает в себя 400 признаков (произведение ширины и высоты), а также значение выходного параметра, которое соответствует возможности посадки на местности. Данные значения шифруем, как «1» - посадка возможна и «2» - посадка невозможна.

На следующем шаге мы разбиваем наши данные в соотношении 80 на 20, где 80% - тренировочное множество, на котором обучаем нейронную сеть, а 20% - тестовое множество, на котором тестируем нейронную сеть и проверяем её эффективность, путем определения точности. Получаем 340 элементов для тренировочного набора и 85 элементов для тестового.

Далее необходимо выбрать архитектуру нейронной сети. Данный процесс осуществляется эмпирическим путем. Положим, что число нейронов в скрытом слое равно восьмой части признаков, то есть 50. В рассматриваемой задачи используем 1 скрытый слой, а нейронная сеть – прямого распространения (персептрон) с обучением по алгоритму обратного распространения ошибки.

Перед началом обучения нейронной сети необходимо сгенерировать случайным образом значения её весов. Данная операция выполняется случайным образов в диапазоне [−𝜀; 𝜀] во избежание проблемы симметричных весов. Таким образом, веса для параметров будут случайно инициализированы значениям –𝜀 ≤Θ𝑖𝑗(𝑙)≤ ε.

, где и число нейронов во входном и в выходном слоях относительно рассматриваемого тетта. То есть, в решаемой задаче для первого слоя , , для второго – , . Для определения непосредственно весов, используется следующая формула:

, где – функция генерации случайных чисел в диапазоне от 0 до 1.

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

Нормализация считается по следующей формуле: , где среднее арифметическое данного признака, а среднеквадратическое отклонение.

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

Обучим нейронную сеть, изменяя значение лямбда () – параметр регуляризации. При этом оставим фиксированное значение числа итераций, равное 10. Для лямбда зададим массив из значений: . Результаты работы алгоритма продемонстрированы на рисунках 3.3 и 3.4. С целью большей наглядности рисунки 1.3 (а) и 1.4 (а) приближены по шкале .

Рис. 1.3 Зависимость точности от параметра лямбда нейронной сети при фиксированном числе итераций без нормализации параметров

Наилучший результат для ненормализованных данных: точность тестовой выборки – 67%, точность тренировочной выборки – 69%, параметр .

Рис. 1.4 Зависимость точности от параметра лямбда нейронной сети при фиксированном числе итераций с нормализацией параметров

Наилучший результат для нормализованных данных: точность тестовой выборки – 82%, точность тренировочной выборки – 98%, параметр .

Обучим нейронную сеть, изменяя значения числа итераций (эпох). При этом оставим фиксированное значение параметра регуляризации лямбда: для ненормализованных данных и для нормализованных данных. Изменять число итераций будем в пределах от 0 до 140 с шагом 5. Результаты работы алгоритма продемонстрированы на рисунках 1.5 и 1.6.

Рис. 1.5 Зависимость точности от числа эпох (итераций) нейронной сети при фиксированном для ненормализованных данных

Наилучший результат для ненормализованных данных: точность тестовой выборки – 65%, число итераций равно 140; точность тренировочной выборки – 85%, число итераций равно 115; параметр .

Рис. 1.6 Зависимость точности от числа эпох (итераций) нейронной сети при фиксированном для нормализованных данных

Наилучший результат для нормализованных данных: точность тестовой выборки – 82%, число итераций должно составлять боле 30; точность тренировочной выборки – 99%, число итераций должно составлять более 15; параметр .

Выводы: Проанализировав полученные данные после обучения нейронной сети, можно сделать вывод о том, что нормализация признаков обеспечивает наивысшую точность по отношению к ненормализованным признакам. Лучший результат обучения был достигнут со следующими параметрами нейронной сети: параметр число итераций – более 30; 1 скрытый слой; 50 нейронов в скрытом слое; входные признаки нормализованы.

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

Литература

  1. Н.Ю. Объедков, Е.Н. Турута, Л.И. Воронова. Применение алгоритма логистической регрессии для классификации состояния структуры сенсорной сети – Студенческий научный форум, 2017 (https://scienceforum.ru/2017/2320/29613/)

  2. Л.И. Воронова, В.И. Воронов. Machine Learning: Регрессионные методы интеллектуального анализа данных: учебное пособие – МТУСИ, 2017 – 81 с.

  3. Воронов В.И., Воронова Л.И. О повышении результативности магистерских программ в условиях инновационной экономики/ Инновационные подходы в науке и образовании: теория, методология, практика. - Изд-во: "Наука и Просвещение, 2017, с.35-44

  4. Andrew Ng Machine Learning - https://www.coursera.org/learn/machinelearning

  5. Буянов Б.Я., Верба В.А. Когнитивные модели в образовании // Приоритетные направления развития науки и образования: монография / Под общ. ред. Г. Ю. Гуляева — Пенза: МЦНС «Наука и Просвещение». — 2017. — C. 157-164.

Просмотров работы: 371