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

Эволюционное глубокое обучение. Генетические алгоритмы и нейронные сети

Покупка
Новинка
Артикул: 856453.01.99
Доступ онлайн
2 199 ₽
В корзину
В книге проводится анализ методов усиления мощи нейронных сетей за счет биологических алгоритмов в решении задач поиска, оптимизации и управления. Книга знакомит с эволюционными вычислениями и предоставляет ряд методов, которые вы можете применять на протяжении всего процесса глубокого обучения. Вы откроете для себя генетические алгоритмы и эволюционно-вычислительные подходы к выведению нейросетевых топологий, генеративному моделированию, обучению с подкреплением и многому другому. Издание предназначено для специалистов по анализу и обработке данных, хорошо знакомых с языком Python.
Лэнхэм, М. Эволюционное глубокое обучение. Генетические алгоритмы и нейронные сети : практическое руководство / М. Лэнхэм ; пер. с англ. А. В. Логунова. – Москва : ДМК Пресс, 2023. - 442 с. – ISBN 978-5-93700-253-2. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2205048 (дата обращения: 20.04.2025). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Майкл Лэнхэм
Эволюционное глубокое обуче-ние 


Evolutionary 
Deep Learning
GENETIC ALGORITHMS 
AND NEURAL NETWORKS
MICHEAL LANHAM


Эволюционное  
глубокое обуче-ние
ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ  
И НЕЙРОННЫЕ СЕТИ
МАЙКЛ ЛЭНХЭМ
Москва, 2023


УДК	 004.021
ББК	 32.973
Л92
Лэнхэм М.
Л92	
Эволюционное глубокое обуче-ние / пер. с англ. А. В. Логунова. – М.: ДМК 
Пресс, 2023. – 440 с.: ил. 
ISBN 978-5-93700-253-2 
В книге проводится анализ методов усиления мощи нейронных сетей за счет биологических алгоритмов в решении задач поиска, оптимизации и управления. Книга 
знакомит с эволюционными вычислениями и предоставляет ряд методов, которые 
вы можете применять на протяжении всего процесса глубокого обучения. Вы откроете для себя генетические алгоритмы и эволюционно-вычислительные подходы 
к выведению нейросетевых топологий, генеративному моделированию, обучению 
с подкреплением и многому другому.
Издание предназначено для специалистов по анализу и обработке данных, хорошо 
знакомых с языком Python.
УДК  004.021
ББК  32.973
Copyright © DMK Press 2023. Authorized translation of the English edition. 
© 2023 Manning Publications. This translation is published and sold by permission of Manning 
Publications, the owner of all rights to publish and sell the same.
Все права защищены. Любая часть этой книги не может быть воспроизведена в какой 
бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.
ISBN 978-1-6172-9952-0 (англ.)	
©  Manning Publications, 2023
ISBN 978-5-93700-253-2 (рус.)	
©  Перевод, оформление, издание, ДМК Пресс, 2023


Хотел бы посвятить эту книгу моей матери, Шэрон Лэнхэм.
Она учила меня с раннего возраста мыслить нестандартно  
и верить в себя


Оглавление
 ЧАСТЬ I  НАЧАЛО РАБОТЫ.................................................................................. 21
	 1	   Введение в эволюционное глубокое обучение.......................................... 22
	 2	   Введение в эволюционные вычисления..................................................... 42
	 3	   Введение в генетические алгоритмы с использованием  
	
	   фреймворка DEAP............................................................................................ 76
	 4	   Еще больше эволюционных вычислений с использованием  
	
	   фреймворка DEAP...........................................................................................109
ЧАСТЬ II  ОПТИМИЗАЦИЯ ГЛУБОКОГО ОБУЧЕНИЯ.............................146
	 5	   Автоматизация гиперпараметрической оптимизации.........................147
	 6	   Нейроэволюционная оптимизация............................................................189
	 7	   Эволюционные сверточные нейронные сети...........................................214
ЧАСТЬ III  ПРОДВИНУТЫЕ ПРИМЕНЕНИЯ................................................245
	 8	   Эволюционное выведение автокодировщиков.......................................246
	 9	   Генеративное глубокое обучение и эволюция.........................................283
	10	   NEAT: нейроэволюция расширяющихся топологий...............................317
	11	   Эволюционное (само)обучение с помощью метода NEAT....................346
	12	   Эволюционное машинное обучение и за его пределами......................379


Содержание
Предисловие........................................................................................................ 13
Благодарности................................................................................................... 14
Об этой книге..................................................................................................... 15
Об авторе........................................................................................................... 19
Об иллюстрации на обложке............................................................................ 20
ЧАСТЬ I	
НАЧАЛО РАБОТЫ.................................................................... 21
1	
Введение в эволюционное глубокое обучение......................... 22
1.1	
Что такое эволюционное глубокое обучение?.................................. 23
1.1.1	
Введение в эволюционные вычисления......................................... 25
1.2	
Зачем нужно эволюционное глубокое обучение и где оно 
применяется........................................................................................... 28
1.3	
Потребность в оптимизации глубокого обучения............................ 29
1.3.1	
Оптимизация нейросетевой архитектуры................................ 30
1.4	
Автоматизация оптимизации средствами автоматизированного 
машинного обучения............................................................................ 32
1.4.1	
Что такое автоматизированное машинное обучение?............. 33
1.5	
Приложения эволюционного глубокого обучения........................... 36
1.5.1	
Отбор модели: поиск весовых коэффициентов........................... 37
1.5.2	
Модельная архитектура: архитектурная оптимизация.......... 37
1.5.3	
Гиперпараметрическая настройка/оптимизация...................... 37
1.5.4	
Валидация и оптимизация функции потери............................... 39
1.5.5	
Нейроэволюция расширяющихся топологий............................... 39
1.5.6	
Цели.............................................................................................. 39
Резюме................................................................................................................ 40
2	
Введение в эволюционные вычисления....................................... 42
2.1	
Игра Конвея в жизнь в Google Colaboratory....................................... 43


Содержание
2.2	
Симуляция жизни на языке Python.................................................... 46
2.2.1	
Учебные упражнения.................................................................... 49
2.3	
Симуляция жизни как оптимизация.................................................. 50
2.3.1	
Учебные упражнения.................................................................... 53
2.4	
Добавление эволюции в симуляцию жизни...................................... 54
2.4.1	
Симуляция эволюции.................................................................... 54
2.4.2	
Учебные упражнения.................................................................... 57
2.4.3	
Немного сведений о Дарвине и эволюции..................................... 58
2.4.4	
Естественный отбор и выживание наиболее  
приспособленных.......................................................................... 59
2.5	
Генетические алгоритмы на языке Python........................................ 60
2.5.1	
Понимание генетики и мейоза.................................................... 60
2.5.2	
Программирование генетических алгоритмов........................... 63
2.5.3	
Конструирование популяции....................................................... 63
2.5.4	
Оценивание приспособленности.................................................. 64
2.5.5	
Отбор для размножения (скрещивания)..................................... 65
2.5.6	
Применение скрещивания: размножение.................................... 66
2.5.7	
Применение мутации и вариации............................................... 68
2.5.8	
Сведение всего воедино................................................................. 69
2.5.9	
Понимание гиперпараметров генетического алгоритма.......... 72
2.5.10	 Учебные упражнения.................................................................... 74
Резюме................................................................................................................ 74
3	
Введение в генетические алгоритмы  
	
с использованием фреймворка DEAP.......................................... 76
3.1	
Генетические алгоритмы во фреймворке DEAP............................... 77
3.1.1	
Максимизация числа единиц с помощью фреймворка DEAP....... 77
3.1.2	
Учебные упражнения.................................................................... 81
3.2	
Решение задачи о ферзевом гамбите................................................. 81
3.2.1	
Учебные упражнения.................................................................... 86
3.3	
Помощь коммивояжеру........................................................................ 87
3.3.1	
Сборка решателя задачи о коммивояжере.................................. 89
3.3.2	
Учебные упражнения.................................................................... 94
3.4	
Выбор генетических операторов для усовершенствования 
эволюции................................................................................................ 94
3.4.1	
Учебные упражнения...................................................................100
3.5	
Рисование с помощью EvoLisa............................................................100
3.5.1	
Учебные упражнения...................................................................107
Резюме...............................................................................................................107
4	
Еще больше эволюционных вычислений  
	
с использованием фреймворка DEAP.........................................109
4.1	
Генетическое программирование средствами фреймворка  
DEAP........................................................................................................110
4.1.1	
Решение регрессии с помощью генетического  
программирования......................................................................110
4.1.2	
Учебные упражнения...................................................................118
4.2	
Оптимизация роя частиц средствами фреймворка DEAP.............118
4.2.1	
Решение уравнений с помощью оптимизации роя частиц.........118


Содержание
4.2.2	
Учебные упражнения...................................................................124
4.3	
Коэволюционное выведение решений средствами  
фреймворка DEAP.................................................................................124
4.3.1	
Коэволюционное выведение с использованием генетического 
программирования в паре с генетическими алгоритмами.......125
4.4	
Эволюционные стратегии средствами фреймворка DEAP............131
4.4.1	
Применение эволюционных стратегий для аппроксимации 
функций.......................................................................................131
4.4.2	
Повторный обзор проекта EvoLisa............................................138
4.4.3	
Учебные упражнения...................................................................139
4.5	
Дифференциальная эволюция средствами фреймворка DEAP....139
4.5.1	
Аппроксимация комплексных и прерывных функций  
с помощью дифференциальной эволюции...................................140
4.5.2	
Учебные упражнения...................................................................144
Резюме...............................................................................................................144
ЧАСТЬ II	
ОПТИМИЗАЦИЯ ГЛУБОКОГО ОБУЧЕНИЯ.....146
5	
Автоматизация гиперпараметрической  
	
оптимизации............................................................................................147
5.1	
Выбор опций и гиперпараметрическая настройка ........................148
5.1.1	
Стратегии гиперпараметрической настройки.........................148
5.1.2	
Выбор модельных опций..............................................................154
5.2	
Автоматизация ГПО посредством случайного поиска...................157
5.2.1	
Применение случайного поиска к ГПО........................................157
5.3	
Поиск в параметрической решетке и ГПО........................................164
5.3.1	
Использование поиска в параметрической решетке 
в автоматической ГПО..............................................................165
5.4	
Эволюционные вычисления для ГПО................................................171
5.4.1	
Оптимизация роя частиц для ГПО............................................171
5.4.2	
Добавление эволюционных вычислений и фреймворка DEAP 
в автоматическую ГПО..............................................................171
5.5	
Генетические алгоритмы и эволюционные стратегии для ГПО...177
5.5.1	
Применение эволюционных стратегий к ГПО............................177
5.5.2	
Редукция размерностей с помощью анализа главных  
компонент..................................................................................180
5.6	
Дифференциальная эволюция для ГПО............................................183
5.6.1	
Дифференциальный поиск для эволюционной ГПО.....................183
Резюме...............................................................................................................188
6	
Нейроэволюционная оптимизация............................................189
6.1	
Многослойный персептрон средствами NumPy..............................190
6.1.1	
Учебные упражнения...................................................................195
6.2	
Генетические алгоритмы в качестве оптимизаторов моделей  
глубокого обучения..............................................................................196
6.2.1	
Учебные упражнения...................................................................200
6.3	
Другие эволюционные методы нейрооптимизации......................201
6.3.1	
Учебные упражнения...................................................................202


Содержание
6.4	
Применение нейроэволюционной оптимизации  
к фреймворку Keras..............................................................................203
6.4.1	
Учебные упражнения...................................................................208
6.5	
Понимание ограничений эволюционной оптимизации...............208
6.5.1	
Учебные упражнения...................................................................211
Резюме...............................................................................................................212
7	
Эволюционные сверточные нейронные сети.......................214
7.1	
Краткий обзор сверточных нейронных сетей во фреймворке  
Keras........................................................................................................215
7.1.1	
Понимание проблем слоев сверточной нейронной сети............221
7.1.2	
Учебные упражнения...................................................................224
7.2	
Кодирование нейросетевой архитектуры в генах...........................225
7.2.1	
Учебные упражнения...................................................................230
7.3	
Создание операции спаривания/скрещивания...............................231
7.4	
Разработка конкретно-прикладного оператора мутации.............234
7.5	
Эволюционное выведение архитектуры сверточной  
нейронной сети.....................................................................................237
7.5.1	
Учебные упражнения...................................................................242
Резюме...............................................................................................................243
ЧАСТЬ III	 ПРОДВИНУТЫЕ ПРИМЕНЕНИЯ...............................245
8	
Эволюционное выведение автокодировщиков....................246
8.1	
Сверточный автокодировщик............................................................247
8.1.1	
Введение в автокодировщики.....................................................247
8.1.2	
Сборка сверточного автокодировщика......................................249
8.1.3	
Учебные упражнения...................................................................253
8.1.4	
Усиление способности сверточного автокодировщика 
к обобщению................................................................................254
8.1.5	
Улучшение автокодировщика.....................................................255
8.2	
Эволюционная оптимизация автокодировщика.............................257
8.2.1	
Формирование последовательности генов  
автокодировщика.......................................................................258
8.2.2	
Учебные упражнения...................................................................263
8.3	
Спаривание и мутирование последовательности генов 
автокодировщика.................................................................................264
8.4	
Эволюционное выведение автокодировщика.................................267
8.4.1	
Учебные упражнения...................................................................270
8.5	
Сборка вариационных автокодировщиков......................................270
8.5.1	
Вариационные автокодировщики: краткий обзор....................271
8.5.2	
Реализация вариационного автокодировщика...........................272
8.5.3	
Учебные упражнения...................................................................280
Резюме...............................................................................................................281
9	
Генеративное глубокое обучение и эволюция......................283
9.1	
Генеративные состязательные сети...................................................284


Похожие

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