Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Нейронные сети и искусственный интеллект: Основы нейронных сетей на языке Python

Покупка
Новинка
Артикул: 845868.01.99
Доступ онлайн
152 ₽
В корзину
Учебно-методическое пособие «Нейронные сети и искусственный интеллект: основы нейронных сетей на языке Python» входит в состав УМК подготовки бакалавров по направлениям, связанным с IT, такими как: «Прикладная математика и информатика», «Информационные системы и технологии», «Информационная безопасность», «Профессиональное обучение», «Информатика и вычислительная техника», «Педагогическое образование (с двумя профилями подготовки)», «Педагогическое образование (с одним профилем подготовки)». Задачей пособия является формирование базовых знаний и навыков в области искусственных нейронных сетей, их архитектуры и применения в различных задачах машинного обучения. Методичка включает в себя как теоретический материал, так и практические задания в виде лабораторных работ. Рекомендовано также слушателям программ дополнительного профессионального образования соответствующего направления подготовки.
Терлецкий, А. С. Нейронные сети и искусственный интеллект: Основы нейронных сетей на языке Python : учебно-методическое пособие / А. С. Терлецкий, Е. С. Терлецкая. - Липецк : ЛГПУ имени П. П. Семёнова-Тян-Шанского, 2023. - 79 с. - ISBN 978-5-907792-40-1. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2178164 (дата обращения: 21.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
 
А.С. Терлецкий, Е.С. Терлецкая 
 
 
НЕЙРОННЫЕ СЕТИ 
И ИСКУСТВЕННЫЙ ИНТЕЛЛЕКТ 
 
 
 
Основы нейронных сетей на языке 
Python 
 
 
 
 
 
 
 
 
 
УЧЕБНО-МЕТОДИЧЕСКОЕ  
ПОСОБИЕ 
 
Липецк  
2023 
 


Министерство просвещения Российской Федерации 
Федеральное государственное бюджетное образовательное учреждение 
высшего образования 
«Липецкий государственный педагогический университет                 
имени П.П. Семенова-Тян-Шанского» 
А.С. Терлецкий, Е.С. Терлецкая 
НЕЙРОННЫЕ СЕТИ И ИСКУСТВЕННЫЙ 
ИНТЕЛЛЕКТ
Основы нейронных сетей на языке 
Python 
Учебно-методическое 
пособие
Липецк 
2023


УДК 004.8:004.032.6 
Рекомендовано к печати кафедрой информатики, 
информационных 
технологий 
и 
защиты 
ББК 32.813 
информации 
ФГБОУ 
ВО 
«Липецкий 
государственный 
педагогический 
университет 
Т 351  
имени П.П. Семенова-Тян-Шанского». 
Протокол № 2 от 21.09.2023 г.  
Терлецкий, А.С. Нейронные сети и искусственный интеллект: Основы
нейронных сетей на языке Python: учебно-методическое пособие / 
А.С. Терлецкий, Е.С. Терлецкая. – Липецк: ЛГПУ имени 
П.П. Семенова-Тян-Шанского, 2023. –  76 с. 
ISBN 978-5-907792-40-1 
Учебно-методическое пособие «Нейронные сети и искусственный 
интеллект: основы нейронных сетей на языке Python» входит в состав УМК 
подготовки бакалавров по направлениям, связанным с IT, такими как: 
«Прикладная математика и информатика», «Информационные системы и 
технологии», 
«Информационная 
безопасность», 
«Профессиональное 
обучение», «Информатика и вычислительная техника», «Педагогическое 
образование 
(с 
двумя 
профилями 
подготовки)», 
«Педагогическое 
образование (с одним профилем подготовки)». 
Задачей пособия является формирование базовых знаний и навыков в 
области искусственных нейронных сетей, их архитектуры и применения в 
различных задачах машинного обучения. Методичка включает в себя как 
теоретический материал, так и практические задания в виде лабораторных 
работ. Рекомендовано также слушателям программ дополнительного 
профессионального образования соответствующего направления подготовки.
УДК 004.8:004.032.6 
ББК 32.813 
Т 351 
Рецензенты: 
В.С. Зияутдинов, кандидат пед. наук, доцент кафедры естественных и технических 
наук, Липецкий казачий институт технологий и управления (филиал) ФГБОУ ВО 
«Московский государственный университет технологий и управления имени 
К.Г. Разумовского (Первый казачий университет)» 
Д.М. Скуднев, кандидат тех. наук, заведующий кафедрой «Информатика, 
информационные технологии и защита информации» Липецкого государственного 
педагогического университета имени П.П. Семенова-Тян-Шанского 
ISBN 978-5-907792-40-1 
© ФГБОУ ВО "Липецкий государственный
педагогический университет 
имени П.П. Семенова-Тян-Шанского", 2023
© Терлецкий А.С., Терлецкая Е.С., 2023 


ОГЛАВЛЕНИЕ 
ВВЕДЕНИЕ 
4 
ОСНОВЫ НЕЙРОННЫХ СЕТЕЙ  
6 
ОРГАНИЗАЦИЯ НЕЙРОНОВ В СЕТЬ 
16 
АРХИТЕКТУРА НЕЙРОННЫХ СЕТЕЙ 
20 
ПРОЦЕСС ОБУЧЕНИЯ НЕЙРОННЫХ СЕТЕЙ 
24 
ФУНКЦИЯ ПОТЕРЬ: КАК ИЗМЕРИТЬ ОШИБКУ СЕТИ? 
26 
АЛГОРИТМ 
ОБРАТНОГО 
РАСПРОСТРАНЕНИЯ 
ОШИБКИ 28 
30 
33 
35 
44 
51 
57 
67 
(BACKPROPAGATION) 
ПРОСТЫЕ ПРИМЕРЫ ПРИМЕНЕНИЯ 
ЗАКЛЮЧЕНИЕ  
Лабораторная работа №1 
МНОГОСЛОЙНЫЙ ПЕРЦЕПТРОН ДЛЯ КЛАССИФИКАЦИИ 
РУКОПИСНЫХ ЦИФР  
Лабораторная работа №2 
ПРИМЕНЕНИЕ СВЕРТОЧНЫХ НЕЙРОННЫХ СЕТЕЙ (CNN) ДЛЯ 
КЛАССИФИКАЦИИ ИЗОБРАЖЕНИЙ ИЗ НАБОРА ДАННЫХ 
CIFAR-10
Лабораторная работа №3 
ГЕНЕРАЦИЯ ТЕКСТА С ИСПОЛЬЗОВАНИЕМ LSTM 
Лабораторная работа №4 
GAN ДЛЯ ГЕНЕРАЦИИ ИЗОБРАЖЕНИЙ 
Список рекомендуемых источников 
Приложение 
69 
3 


ВВЕДЕНИЕ 
Я предполагаю, что к концу XX века использование слов и общих 
утверждений, что машины думают, не будет необоснованным предвзятым мнением. 
Алан Тьюринг 
В настоящее время профессиональное владение навыками разработки и 
применения нейронных сетей и искусственного интеллекта (ИИ) становится всё 
более востребованным и актуальным в различных отраслях науки и промышленности. Нейронные сети – это инструменты, позволяющие машинам "учиться" на 
данных и выполнять задачи, которые раньше требовали человеческого вмешательства – от распознавания изображений до анализа сложных данных. 
Искусственный интеллект – это обширное поле науки, которое занимается 
созданием машин, способных выполнять задачи, требующие человеческого интеллекта. В то время как нейронные сети представляют собой один из ключевых 
компонентов искусственного интеллекта, позволяя системам обрабатывать 
огромные объемы данных и принимать решения на их основе [1, 2, 4]. 
Искусственные нейронные сети вдохновлены структурой и функционированием человеческого мозга и благодаря современным технологиям и алгоритмам их возможности продолжают расти. Сегодня нейронные сети используются 
в медицине, финансах, автомобильной промышленности, играх и многих других 
сферах, что делает их изучение весьма привлекательным направлением для специалистов в области IT и данных. 
Настоящее методическое пособие предназначено как для начинающих исследователей и разработчиков в области искусственного интеллекта, так и для 
тех, кто хочет погрузиться глубже в тему нейронных сетей. Через данное пособие 
читатель познакомится с базовыми концепциями, алгоритмами и инструментами 
для работы с нейронными сетями, а также с практическими примерами их применения. 
Рекомендации по использованию данного пособия: 
1) начните с основ. Прежде чем переходить к более сложным темам искусственного интеллекта и глубокого обучения, убедитесь, что вы твердо
освоили базовые концепции, такие как алгоритмы обучения, структуры
данных и математические основы нейронных сетей;
2) практикуйтесь. Работа с искусственным интеллектом и нейронными сетями требует практики. Регулярно выполняйте упражнения из пособия и
сталкивайтесь с реальными задачами;
3) работайте с кодом. Изучайте примеры кода, приведенные в пособии,
чтобы понимать структуру и логику создания нейронных сетей. Это поможет вам понять, как оптимизировать свои модели.
4) используйте инструменты отладки. При работе с искусственным интеллектом важно быстро находить и исправлять ошибки. Инструменты отладки помогут вам в этом;
4 


5) общайтесь с коллегами. Обмен опытом с другими специалистами в области искусственного интеллекта может предоставить вам новые идеи и решения для ваших задач; 
6) пишите код с нуля. Научитесь создавать свои нейронные сети, не полагаясь на готовые решения. Это позволит вам лучше понять принципы работы 
ИИ; 
7) не бойтесь ошибок. Ошибки в области ИИ – это возможность учиться. 
Анализируйте свои промахи и извлекайте из них уроки; 
8) следуйте структуре пособия. Рекомендуется придерживаться последовательности материалов, представленных в пособии. Также уделяйте внимание практическим примерам и упражнениям, которые помогут вам закрепить знания; 
9) ориентируйтесь на официальные источники. Для глубокого понимания 
ИИ и нейронных сетей обратитесь к академическим ресурсам и официальной документации по используемым инструментам и фреймворкам. 
Можно ориентироваться на следующие источники: 
• https://keras.io 
• https://scikit-learn.org/stable/ 
• https://pytorch.org 
• https://www.tensorflow.org/ 
 
В заключение отметим, что овладение навыками работы с искусственным 
интеллектом и нейронными сетями позволяет разработчикам создавать продвинутые, адаптивные и интуитивные приложения. Это дает возможность обеспечивать глубокий анализ данных, автоматизировать рутинные задачи и предоставлять пользователю уникальный опыт взаимодействия с системой. Помимо этого, 
знание методов искусственного интеллекта способствует использованию современных фреймворков и библиотек для создания масштабируемых и высокопроизводительных решений. 
 
 
 
 
5 


ОСНОВЫ НЕЙРОННЫХ СЕТЕЙ 
 
Нейронные сети – это концепт, зародившийся на стыке биологии и математики и призванный воссоздать основные принципы работы человеческого 
мозга в формате математических моделей. Сама идея моделирования мозга датируется ещё докомпьютерной эпохой, когда учёные пытались понять, как наш 
мозг производит различные вычисления и обрабатывает информацию. 
Название "нейронные сети" происходит от того, что мозг человека состоит 
из множества нейронов – базовых функциональных единиц нервной системы, 
которые соединяются в сложные сети и образуют нервную ткань.  
Биологический нейрон – это клетка, способная принимать сигналы от других нейронов, обрабатывать их и передавать далее. Эта передача информации 
происходит благодаря синапсам – специфическим структурам, позволяющим 
нейронам обмениваться электрохимическими сигналами. 
Когда речь идёт о математической модели, нейронные сети представляют 
собой систему, где отдельные "нейроны" или узлы соединены в определённой 
структуре и обмениваются данными. В таком контексте "нейрон" – это некая 
функция, которая принимает на вход вектор данных, производит вычисления и 
выдаёт результат на выходе. 
Стоит подчеркнуть, что, несмотря на некоторые аналогии, искусственные 
нейронные сети далеки от полной имитации биологических процессов. Например, моделирование аксонов, дендритов и их множественных свойств (рис. 1) в 
искусственных системах является чрезвычайно упрощенным. Тем не менее, 
идея, что сложные вычислительные задачи могут быть решены коллективным 
взаимодействием простых вычислительных узлов, остаётся основной в концепции нейронных сетей. 
 
Рисунок 1 – Строение биологического нейрона 
Таким образом, нейронные сети, будучи вдохновлены биологической 
структурой мозга, представляют собой попытку математически моделировать 
его работу. Этот подход позволяет создавать системы, способные обучаться, 
адаптироваться и обрабатывать информацию, имитируя, хотя и очень условно, 
работу человеческого мозга. 
6 


В центре принципа работы нейронных сетей лежит понимание того, как 
отдельные элементы, или искусственные нейроны, соединены и взаимодействуют друг с другом. Если биологический нейрон может быть активирован стимулом и передавать сигнал через синапсы к другим нейронам, то искусственный 
нейрон принимает входные данные, производит их обработку по определённой 
функции и передаёт результат следующему уровню или слою сети. 
Но что же заставляет искусственные нейронные сети "обучаться"? Как и в 
биологических системах, где усиление или ослабление синаптической связи 
(сила связи между двумя нейронами) определяется опытом, в искусственных системах важную роль играют веса связей. Эти веса меняются в процессе обучения 
сети на основе данных, что позволяет модели адаптироваться и улучшать свою 
производительность. 
Принцип обратного распространения ошибки стоит в основе многих алгоритмов обучения нейронных сетей. Идея заключается в том, чтобы сначала производить расчёты в прямом направлении от входного слоя к выходному, определяя ошибку на выходе, а затем распространять эту ошибку обратно, корректируя 
веса связей между нейронами, чтобы минимизировать ошибку в следующих расчётах. 
Подобное взаимодействие и постоянная адаптация делают нейронные сети 
выдающимися инструментами для различных задач, таких как распознавание образов, прогнозирование, рекомендательные системы и многие другие. Нейронные сети способны обнаруживать сложные зависимости в данных, которые могут остаться незамеченными для других методов анализа. 
Современные достижения в области нейронных сетей во многом обусловлены ростом вычислительных возможностей, а также доступом к огромным объёмам данных. Современные архитектуры, такие как глубокие нейронные сети 
(Deep Neural Networks), позволяют обрабатывать информацию на многих уровнях сложности, начиная от первичных признаков и заканчивая сложными абстракциями. 
Разговор о нейронных сетях неразрывно связан с пониманием структуры 
искусственного нейрона – базовой единицы, из которой состоит сеть. Погрузимся в анализ этой структуры. 
Искусственный нейрон представляет собой математическую модель, вдохновленную биологическим нейроном. В своем простейшем виде он состоит из 
ряда входов, каждый из которых ассоциируется с определенным весом. Веса 
представляют собой коэффициенты, которые определяют степень влияния каждого входного значения на выходное значение нейрона. Эти веса адаптируются 
и корректируются в процессе обучения сети. 
В мире машинного обучения и, в частности, нейронных сетей, существует 
множество понятий и терминов, которые образуют основу этой дисциплины. 
Рассматривая концепцию модели, можно представить её как математическое 
отображение от входных данных к выходным. Это может быть как простая линейная зависимость, так и сложная структура, как глубокая нейронная сеть. 
Чтобы "настроить" эту модель, необходимо использовать специальный набор 
данных, называемый обучающим датасетом. С его помощью корректируются 
7 


Доступ онлайн
152 ₽
В корзину