СПб.: Питер, 2018. — 400 с.: ил. — (Библиотека программиста). —
ISBN 978-5-4461-0770-4.
Глубокое обучение — Deep leaing — это набор алгоритмов машинного
обучения, которые моделируют высокоуровневые абстракции в данных,
используя архитектуры, состоящие из множества нелинейных
преобразований. Согласитесь, эта фраза звучит угрожающе. Но всё не
так страшно, если о глубоком обучении рассказывает Франсуа Шолле,
который создал Keras — самую мощную библиотеку для работы с
нейронными сетями. Познакомьтесь с глубоким обучением на
практических примерах из самых разнообразных областей. Книга
делится на две части: в первой даны теоретические основы, вторая
посвящена решению конкретных задач. Это позволит вам не только
разобраться
в основах DL, но и научиться использовать новые возможности на практике.
Обучение — это путешествие длиной в жизнь, особенно в области искусственного интеллекта, где неизвестностей гораздо больше, чем определенности. Основы глубокого обучения
Что такое глубокое обучение?
Искусственный интеллект, машинное и глубокое обучение
Что было до глубокого обучения: краткая история машинного обучения
Почему глубокое обучение? Почему сейчас?
Прежде чем начать: математические основы нейронных сетей
Первое знакомство с нейронной сетью
Представление данных для нейронных сетей
Шестеренки нейронных сетей: операции с тензорами
Механизм нейронных сетей: оптимизация на основе градиента
Оглядываясь на первый пример
Краткие итоги главы
Начало работы с нейронными сетями
Анатомия нейронной сети
Введение в Keras
Настройка рабочей станции для глубокого обучения
Классификация отзывов к фильмам: пример бинарной классификации
Классификация новостных лент: пример классификации в несколько классов
Предсказание цен на дома: пример регрессии
Краткие итоги главы
Основы машинного обучения
Четыре раздела машинного обучения
Оценка моделей машинного обучения
Обработка данных, конструирование признаков и обучение признаков
Переобучение и недообучение
Обобщенный процесс решения задач машинного обучения
Краткие итоги главы
Глубокое обучение на практике
Глубокое обучение в технологиях компьютерного зрения
Введение в сверточные нейронные сети
Обучение сверточной нейронной сети с нуля на небольшом наборе данных
Использование предварительно обученной сверточной нейронной сети
Визуализация знаний, заключенных в сверточной нейронной сети
Краткие итоги главы
Глубокое обучение для текста и последовательностей
Работа с текстовыми данными
Рекуррентные нейронные сети
Улучшенные методы использования рекуррентных нейронных сетей
Обработка последовательностей с помощью сверточных нейронных сетей
Краткие итоги главы
Лучшие практики глубокого обучения продвинутого уровня
За рамками модели Sequential: функциональный API фреймворка Keras
Исследование и мониторинг моделей глубокого обучения с использованием обратных вызовов Keras и TensorBoard
Извлечение максимальной пользы из моделей
Краткие итоги главы
Генеративное глубокое обучение
Генерирование текста с помощью LSTM
DeepDream
Нейронная передача стиля
Генерирование изображений с вариационными автокодировщиками
Введение в генеративно-состязательные сети
Краткие итоги главы
Заключение
Краткий обзор ключевых понятий
Ограничения глубокого обучения
Будущее глубокого обучения
Как не отстать от прогресса в быстроразвивающейся области
Заключительное слово
Приложение A. Установка Keras и его зависимостей в Ubuntu
Установка пакетов научных вычислений для Python
Настройка поддержки GPU
Установка Theano (необязательно)
Установка Keras
Приложение B. Запуск Jupyter Notebook на экземпляре EC2 GPU
Что такое Jupyter Notebook? Зачем запускать Jupyter Notebook на AWS GPU?
Когда нежелательно использовать Jupyter на AWS для глубокого обучения?
Настройка экземпляра AWS GPU
Установка Keras
Настройка перенаправления локальных портов
Доступ к Jupyter из браузера на локальном компьютере
в основах DL, но и научиться использовать новые возможности на практике.
Обучение — это путешествие длиной в жизнь, особенно в области искусственного интеллекта, где неизвестностей гораздо больше, чем определенности. Основы глубокого обучения
Что такое глубокое обучение?
Искусственный интеллект, машинное и глубокое обучение
Что было до глубокого обучения: краткая история машинного обучения
Почему глубокое обучение? Почему сейчас?
Прежде чем начать: математические основы нейронных сетей
Первое знакомство с нейронной сетью
Представление данных для нейронных сетей
Шестеренки нейронных сетей: операции с тензорами
Механизм нейронных сетей: оптимизация на основе градиента
Оглядываясь на первый пример
Краткие итоги главы
Начало работы с нейронными сетями
Анатомия нейронной сети
Введение в Keras
Настройка рабочей станции для глубокого обучения
Классификация отзывов к фильмам: пример бинарной классификации
Классификация новостных лент: пример классификации в несколько классов
Предсказание цен на дома: пример регрессии
Краткие итоги главы
Основы машинного обучения
Четыре раздела машинного обучения
Оценка моделей машинного обучения
Обработка данных, конструирование признаков и обучение признаков
Переобучение и недообучение
Обобщенный процесс решения задач машинного обучения
Краткие итоги главы
Глубокое обучение на практике
Глубокое обучение в технологиях компьютерного зрения
Введение в сверточные нейронные сети
Обучение сверточной нейронной сети с нуля на небольшом наборе данных
Использование предварительно обученной сверточной нейронной сети
Визуализация знаний, заключенных в сверточной нейронной сети
Краткие итоги главы
Глубокое обучение для текста и последовательностей
Работа с текстовыми данными
Рекуррентные нейронные сети
Улучшенные методы использования рекуррентных нейронных сетей
Обработка последовательностей с помощью сверточных нейронных сетей
Краткие итоги главы
Лучшие практики глубокого обучения продвинутого уровня
За рамками модели Sequential: функциональный API фреймворка Keras
Исследование и мониторинг моделей глубокого обучения с использованием обратных вызовов Keras и TensorBoard
Извлечение максимальной пользы из моделей
Краткие итоги главы
Генеративное глубокое обучение
Генерирование текста с помощью LSTM
DeepDream
Нейронная передача стиля
Генерирование изображений с вариационными автокодировщиками
Введение в генеративно-состязательные сети
Краткие итоги главы
Заключение
Краткий обзор ключевых понятий
Ограничения глубокого обучения
Будущее глубокого обучения
Как не отстать от прогресса в быстроразвивающейся области
Заключительное слово
Приложение A. Установка Keras и его зависимостей в Ubuntu
Установка пакетов научных вычислений для Python
Настройка поддержки GPU
Установка Theano (необязательно)
Установка Keras
Приложение B. Запуск Jupyter Notebook на экземпляре EC2 GPU
Что такое Jupyter Notebook? Зачем запускать Jupyter Notebook на AWS GPU?
Когда нежелательно использовать Jupyter на AWS для глубокого обучения?
Настройка экземпляра AWS GPU
Установка Keras
Настройка перенаправления локальных портов
Доступ к Jupyter из браузера на локальном компьютере