Многослойные нейронные сети прямого распространения
Покупка
Основная коллекция
Тематика:
Программирование и алгоритмизация
Издательство:
Российский университет транспорта
Год издания: 2018
Кол-во страниц: 57
Дополнительно
Вид издания:
Учебно-методическая литература
Уровень образования:
ВО - Магистратура
Артикул: 787124.01.99
В учебно-методическом пособии представлены как теоретические основы обучения нейронных сетей методом обратного распространения ошибки, так и подробная методика их создания при помощи пакета программ MatLab и нейросетевых библиотек, написанных для языков высокого уровня. Приведены многочисленные примеры кодов.
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
МИНИСТЕРСТВО ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «РОССИЙСКИЙ УНИВЕРСИТЕТ ТРАНСПОРТА (МИИТ)» ИНСТИТУТ ТРАНСПОРТНОЙ ТЕХНИКИ И СИСТЕМ УПРАВЛЕНИЯ (ИТТСУ) Кафедра «Управление и защита информации» Н.Н. ЗОЛЬНИКОВА, Т.А. ФИЛОНЕЦ МНОГОСЛОЙНЫЕ НЕЙРОННЫЕ СЕТИ ПРЯМОГО РАСПРОСТРАНЕНИЯ Учебно-методическое пособие для курсовой работы по дисциплине «Введение в нейронные сети» МОСКВА – 2018
МИНИСТЕРСТВО ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «РОССИЙСКИЙ УНИВЕРСИТЕТ ТРАНСПОРТА (МИИТ)» ИНСТИТУТ ТРАНСПОРТНОЙ ТЕХНИКИ И СИСТЕМ УПРАВЛЕНИЯ (ИТТСУ) Кафедра «Управление и защита информации» Н.Н. ЗОЛЬНИКОВА, Т.А. ФИЛОНЕЦ МНОГОСЛОЙНЫЕ НЕЙРОННЫЕ СЕТИ ПРЯМОГО РАСПРОСТРАНЕНИЯ Учебно-методическое пособие для магистров направления 27.04.04 «Управление в технических системах» МОСКВА – 2018
УДК 004 З – 81 Зольникова Н.Н., Филонец Т.А. Многослойные нейронные сети прямого распространения: Учебно-методическое пособие. – М.: РУТ (МИИТ), 2018. - 57 с. В учебно-методическом пособии представлены как теоретические основы обучения нейронных сетей методом обратного распространения ошибки, так и подробная методика их создания при помощи пакета программ MatLab и нейросетевых библиотек, написанных для языков высокого уровня. Приведены многочисленные примеры кодов. Рецензент: д.т.н., зав.кафедрой «Электропоезда и локомотивы» РУТ(МИИТ) Пудовиков О.Е. © РУТ (МИИТ), 2018
Введение В современном мире всё большую популярность завоёвывают технологии, связанные с созданием систем искусственного интеллекта. Они позволяют решать такие задачи, как создание беспилотных транспортных средств, распознавание лиц на фотографиях и видеосъёмках, распознавание речи, применяются в медицине, банковском деле и многих других областях деятельности человека. И одним из эффективных инструментов разработки таких систем являются нейронные сети. В настоящее время специалистами разработано много библиотек для работы с нейронными сетями на языках программирования высокого уровня, таких, как С++, Python и др., наиболее популярными из которых являются библиотеки FANN, Accord, CNTK. Целью курсовой работы является знакомство студентов с принципами создания многослойной нейронной сети прямого распространения на примере решения задачи распознавания изображений рукописных цифр. При написании данного учебно-методического пособия были использованы материалы on-line курса “Machine learning” , прочитанного профессором Стэнфордского университета Andrew Ng (https://class.coursera.org/ml-2016-002) Для выполнения описанной выше задачи необходимо построить нейронную сеть и обучить ее. Для того, чтобы чуть ближе познакомиться с искусственным интеллектом как с некой прикладной наукой и прикоснуться к такой распространенной задаче, как распознавание образов, требуется решить поставленную задачу несколькими способами:
1) С помощью прикладного макета Matlab; 2) С помощью программы, написанной на любом языке программирования. При этом одобряется привлекать помощь сторонних библиотек (например, FANN, Accord, CNTK и т.д.), особенно «свежих» и достаточно известных. Но ничуть не менее одобряется и поощряется написание программы без использования каких-либо специальных библиотек (а, возможно, даже написания своих собственных). 1. Основные сведения о структуре нейрона Любая нейронная сеть представляет собой набор искусственных нейронов, соединенных между собой определенным образом. Т.е. нейрон является основным «материалом», из которого строится нейронная сеть. Рассмотрим более подробно структуру отдельного нейрона. Каждый нейрон в нейронной сети обрабатывает некую информацию, которая к нему поступает. Сначала вычисляется суммарный импульс, который впоследствии преобразуется при помощи некоторой функции, называемой функцией активации. В результате обработки этой информации нейрон выдает некую новую информацию, которая является результатом работы нейрона. Схематически модель нейрона можно представить в виде следующего графа:
Рисунок 1. Модель нейрона В представленной модели нейрона можно выделить его основные элементы: Входные сигналы {x1,…,xn}, которые изображены в виде соответствующих вершин {x1, …, xn}; Сигналы или связи, которые представлены в виде ребер, соединяющих входные сигналы с «вычислительным центром» нейрона. Эти ребра имеют веса, которые обозначаются соответственно через {1, …, n}. Они называются также синаптическими весами; Пороговый элемент (bias), который на графе изображен вершиной b. Данная величина показывает увеличение или уменьшение входного сигнала, подаваемого на функцию активации. Функция активации f(z), которая на графе изображена в виде большой вершины с некой функцией внутри. Здесь происходит вычисление силы выходного сигнала нейрона – результата работы нейрона: 𝑦 = 𝑓(𝑧), где 𝑧 = 𝑏 + ∑ 𝑥𝑖𝜃𝑖 (1) Для удобства дальнейших вычислений немного преобразим данную схему нейрона, добавив еще один входной сигнал x0 и убрав пороговый элемент b. При этом: