Введение в нейронные сети.

Антонио Джулли, Суджит Пал «Библиотека Keras — инструмент глубокого обучения» ДМК Пресс, 2018 год, 294 стр., ISBN: 978-5-97060-573-8; (58,4 мб. pdf)

В книге излагаются основные сведения о нейронных сетях, искусственным интеллекте и технологии глубокого обучения. Представлено более 20 работоспособных нейронных сетей, написанных на языке Python с использованием модульной библиотеки Keras, работающей поверх библиотек TensorFlow от Google или Theano от компании Lisa Lab. Рассмотрен полный функционал API библиотеки Keras и возможности его расширения, а также алгоритмы обучения с учителем (простая линейная регрессия, классический многослойный перцептрон, глубокие сверточные сети), а также алгоритмы обучения без учителя — автокодировщики и порождающие сети

. Дано введение в технологию глубокого обучения с подкреплением и ее применение к построению игр со встроенным искусственным интеллектом. В приложении представлен обзор обсуждаемых в книге тем и информация о нововведениях в версии Keras 2.0. Издание адресовано программистам (необходимо знание языка Python) и специалистам по анализу и обработке данных.

Оглавление книги

Содержание.

Глава 1. Основы нейронных сетей 22
Перцептрон 24
Первый пример кода с использованием КегаБ 24
Многослойный перцептрон — первый пример нейросети 25
Проблемы обучения перцептрона и их решение 26
Сигмоида 27
Блок линейной ректификации 28
Функции активации » 28
Реальный пример — распознавание рукописных цифр 29
Унитарное кодирование 30
Определение простой нейронной сети в КегаБ 30
Прогон простой сети КегаБ и создание эталона для сравнения 34
Улучшение простой сети в Кега5 посредством добавления скрытых слоев.35
Дальнейшее улучшение простой сети Кегаэ с помощью прореживания 38
Тестирование различных оптимизаторов в Кегаэ 41
Увеличение числа периодов 46
Управление скоростью обучения оптимизатора 46
Увеличение числа нейронов в скрытых слоях 47
Увеличение размера пакета 48
Подведение итогов экспериментов по распознаванию рукописных цифр 49
Применение регуляризации для предотвращения переобучения 50
Настройка гиперпараметров 52
Предсказание выхода 52
Практическое изложение алгоритма обратного распространения 52
В направлении глубокого обучения 54
Резюме 55

Глава 2.Установка Keras и описание API 56
Установка Keras 56
Шаг 1 — установка зависимостей 56
Шаг 2 — установка Theano 57
Шаг 3 — установка TensorFLow 57
Шаг 4 — установка Keras 58
Шаг 5 — проверка работоспособности Theano,TensorFLow и Keras 58
Настройка Keras 59
Установка Keras в контейнер Docker 60
Установка Keras в Google Cloud ML 62
Установка Keras в Amazon AWS 64
Установка Keras в Microsoft Azure 65
Keras API 67
Введение в архитектуру Keras 68
Обзор готовых слоев нейронных сетей 69
Обзор готовых функций активации 72
Обзор функций потерь 72
Обзор показателей качества 73
Обзор оптимизаторов 73
Некоторые полезные операции 73
Резюме 77

Глава 3. Глубокое обучение с применением сверточных сетей 79
Глубокая сверточная нейронная сеть 80
Локальные рецептивные поля 80
Разделяемые веса и смещения 81
Пулинговые слои 82
Промежуточные итоги 83
Пример ГСНС — LeNet 83
Код LeNet в Keras 83
О силе глубокого обучения 89
Распознавание изображений из набора CIFAR-10 с помощью
глубокого обучения 90
Повышение качества распознавания набора CIFAR-10 путем
углубления сети 95
Повышение качества распознавания набора Cl FAR-10 путем
пополнения данных 97
Предсказание на основе результатов обучения на наборе CIFAR-10 100
Очень глубокие сверточные сети для распознавания больших
изображений 101
Распознавание кошек с помощью сети VGG-16 102
Использование встроенного в Keras модуля VGG-16 103
Использование готовых моделей глубокого обучения для выделения
признаков 104
Очень глубокая сеть inception-v3, применяемая для переноса обучения.105
Резюме 108

Глава 4. Порождающие состязательные сети и WaveNet 109
Что такое ПСС? 109
Некоторые приложения ПСС 111
Глубокие сверточные порождающие состязательные сети 114
Применение Keras adversarial для создания ПСС,
подделывающей MNIST 118
Применение Keras adversarial для создания ПСС,
подделывающей CIFAR 124
WaveNet — порождающая модель для обучения генерации звука 132
Резюме 141

Глава 5. Погружения слов 143
Распределенные представления 144
word2vec 145
Модель skip-грамм 146
Модель CBOW 150
Извлечение погружений word2vec из модели 151
Сторонние реализации word2vec 154
Введение в GloVe 158
Использование предобученных погружений 159
Обучение погружений с нуля 161
Настройка погружений на основе предобученной модели word2vec 165
Настройка погружений на основе предобученной модели GloVe 169
Поиск погружений 170
Резюме 174

Глава 6. Рекуррентная нейронная сеть — РНС 176
Простые ячейки РНС 177
Простая РНС с применением Keras — порождение текста 179
Топологии РНС 184
Проблема исчезающего и взрывного градиента 186
Долгая краткосрочная память — LSTM 188
Пример LSTM — анализ эмоциональной окраски 191
Вентильный рекуррентный блок — GRU 197
Пример GRU — частеречная разметка 198
Двунаправленные РНС 205
РНС с запоминанием состояния 206
Пример LSTM с запоминанием состояния — предсказание потребления электричества 206
Другие варианты РНС 212
Резюме 213

Глава 7. Дополнительные модели машинного обучения 214
Функциональный API Keras 215
Регрессионные сети 218
Пример регрессии — предсказание содержания бензола в воздухе 218
Обучение без учителя — автокодировщики 223
Пример автокодировщика — векторы предложений 225
Композиция глубоких сетей 234
Пример — сеть с памятью для ответов на вопросы 235
Расширение Keras 242
Пример — использование слоя Lambda 242
Пример — построение пользовательского слоя нормировки 243
Порождающие модели 247
Пример — глубокие сновидения 248
Пример — перенос стиля 255
Резюме 260

Глава 8. Искусственный интеллект играет в игры 262
Обучение с подкреплением 263
Максимизация будущих вознаграждений 264
Q-обучение 265
Глубокая Q-сеть как Q-функция 267
Баланс между исследованием и использованием 268
Воспроизведение опыта 269
Пример — глубокая Q-сеть для поимки мяча 269
Что дальше? 282
Резюме 283
Заключение 285
Keras 2.0 — что нового 286
Установка Keras 2.0 287
Изменения API 287

СкачатьPDF

Похожая литература