Глубокое обучение с R и Keras. 2 изд

Оглавление⌄
Оглавление....8 Предисловие....17 Благодарности....19 Об этой книге....20 Об иллюстрации на обложке....24 Об авторах....25 Глава 1. Что такое глубокое обучение?....26 1.1 Искусственный интеллект, машинное и глубокое обучение....27 1.1.1 Искусственный интеллект....27 1.1.2 Машинное обучение....28 1.1.3 Извлечение правил и представлений из данных....30 1.1.4 «Глубина» глубокого обучения....33 1.1.5 Принцип действия глубокого обучения в трех рисунках....35 1.1.6 Каких успехов достигло глубокое обучение....37 1.1.7 Не верьте рекламной шумихе....38 1.1.8 Перспективы развития ИИ....39 1.2 Краткая история машинного обучения....40 1.2.1 Вероятностное моделирование....41 1.2.2 Первые нейронные сети....41 1.2.3 Ядерные методы....42 1.2.4 Деревья решений, случайные леса и градиентный бустинг....44 1.2.5 Назад к нейронным сетям....45 1.2.6 Отличительные черты глубокого обучения....46 1.2.7 Современный ландшафт машинного обучения....47 1.3 Почему глубокое обучение? Почему сейчас?....49 1.3.1 Оборудование....50 1.3.2 Данные....51 1.3.3 Алгоритмы....52 1.3.4 Новая волна инвестиций....53 1.3.5 Демократизация глубокого обучения....54 1.3.6 Ждать ли продолжения этой тенденции?....54 Глава 2. Математические основы нейронных сетей....57 2.1 Первое знакомство с нейронной сетью....58 2.2 Представление данных для нейронных сетей....62 2.2.1 Скаляры (тензоры нулевого ранга)....63 2.2.2 Векторы (тензоры первого ранга)....63 2.2.3 Матрицы (тензоры второго ранга)....64 2.2.4 Тензоры третьего и более высокого рангов....64 2.2.5 Ключевые атрибуты....64 2.2.6 Манипулирование тензорами в R....66 2.2.7 Пакеты данных....66 2.2.8 Практические примеры тензоров с данными....67 2.2.9 Векторные данные....67 2.2.10 Временные ряды, или последовательности данных....68 2.2.11 Изображения....69 2.2.12 Видеоданные....69 2.3 Шестеренки нейронных сетей: операции с тензорами....70 2.3.1 Поэлементные операции....71 2.3.2 Операции с тензорами разной размерности....72 2.3.3 Скалярное произведение тензоров....74 2.3.4 Изменение формы тензора....76 2.3.5 Геометрическая интерпретация операций с тензорами....77 2.3.6 Геометрическая интерпретация глубокого обучения....81 2.4 Механизм нейронных сетей: оптимизация на основе градиента....82 2.4.1 Что такое производная?....84 2.4.2 Производная операций с тензорами: градиент....85 2.4.3 Стохастический градиентный спуск....87 2.4.4 Объединение производных: алгоритм обратного распространения ошибки....90 2.5 Возвращаясь к нашему первому примеру....97 2.5.1 Повторная реализация нашего первого примера с нуля в TensorFlow....99 2.5.2 Выполнение одного шага обучения....101 2.5.3 Полный цикл обучения....103 2.5.4 Оценка модели....104 Краткие итоги главы....105 Глава 3. Введение в Keras и TensorFlow....106 3.1 Что такое TensorFlow?....107 3.2 Что такое Keras?....108 3.3 Keras и TensorFlow: краткая история....109 3.4 Интерфейсы Python и R: краткая история....110 3.5 Настройка среды разработки для глубокого обучения....111 3.5.1 Установка Keras и TensorFlow....112 3.6 Первые шаги с TensorFlow....113 3.6.1 Тензоры TensorFlow....114 3.7 Атрибуты тензоров....115 3.7.1 Форма тензора и ее изменение....116 3.7.2 Срезы тензоров....118 3.7.3 Операции с тензорами разной размерности....119 3.7.4 Модуль tf....119 3.7.5 Неизменность тензоров и переменные....121 3.7.6 Математические операции в TensorFlow....122 3.7.7 Взгляд на API GradientTape с другой стороны....123 3.7.8 Полный пример: линейный классификатор в чистом TensorFlow....124 3.8 Анатомия нейронной сети и основы API Keras....129 3.8.1 Слои: строительные блоки глубокого обучения....130 3.8.2 От слоев к моделям....134 3.8.3 Этап «компиляции»: настройка процесса обучения....136 3.8.4 Выбор функции потерь....139 3.8.5 Использование метода fit()....140 3.8.6 Отслеживание потерь и показателей на контрольных данных....141 3.8.7 Использование модели после обучения....142 Краткие итоги главы....143 Глава 4. Примеры работы с нейросетью: классификация и регрессия....145 4.1 Классификация отзывов к фильмам: пример бинарной классификации....147 4.1.1 Набор данных IMDB....147 4.1.2 Подготовка данных....149 4.1.3 Создание модели....150 4.1.4 Проверка вашего выбора....153 4.1.5 Использование обученной сети для прогнозирования на новых данных....156 4.1.6 Продолжаем эксперименты....157 4.1.7 Промежуточные итоги....157 4.2 Классификация новостных лент: пример многоклассовой классификации....158 4.2.1 Набор данных Reuters....158 4.2.2 Подготовка данных....160 4.2.3 Построение модели....160 4.2.4 Проверка модели....161 4.2.5 Предсказания на новых данных....163 4.2.6 Другой способ обработки меток и потерь....164 4.2.7 Важность использования достаточно больших промежуточных слоев....164 4.2.8 Дальнейшие эксперименты....165 4.2.9 Промежуточные итоги....165 4.3 Предсказание цен на дома: пример регрессии....166 4.3.1 Набор данных с ценами на жилье в Бостоне....166 4.3.2 Подготовка данных....167 4.3.3 Построение модели....167 4.3.4 Оценка качества модели методом K-кратной перекрестной проверки....168 4.3.5 Выдача прогнозов на новых данных....173 4.3.6 Промежуточные выводы....173 Краткие итоги главы....173 Глава 5. Основы машинного обучения....175 5.1 Обобщение – цель машинного обучения....175 5.1.1 Недообучение и переобучение....176 5.1.2 Базовые принципы обобщения в глубоком обучении....182 5.2 Оценка моделей машинного обучения....189 5.2.1 Наборы данных для обучения, проверки и контроля....189 5.2.2 Использование критериев, основанных на здравом смысле....193 5.2.3 Что следует помнить об оценке модели....194 5.3 Улучшение качества обучения модели....195 5.3.1 Настройка ключевых параметров градиентного спуска....195 5.3.2 Использование лучшей априорно обоснованной архитектуры....198 5.3.3 Увеличение емкости модели....199 5.4 Как улучшить обобщение....201 5.4.1 Подготовка набора данных....201 5.4.2 Конструирование признаков....202 5.4.3 Использование ранней остановки....204 5.4.4 Регуляризация модели....204 Краткие итоги главы....215 Глава 6. Обобщенный рабочий процесс машинного обучения....217 6.1 Постановка задачи....219 6.1.1 Уточнение задачи....219 6.1.2 Получение исходных данных....221 6.1.3 Добейтесь понимания данных....225 6.1.4 Выберите меру успеха....226 6.2 Разработка модели....227 6.2.1 Подготовка данных....227 6.2.2 Выбор протокола оценки....229 6.2.3 Как превзойти простой базовый уровень....230 6.2.4 Масштабирование: разработка модели, способной к переобучению....231 6.2.5 Регуляризация и настройка модели....232 6.3 Развертывание модели....233 6.3.1 Представление модели заказчику....233 6.3.2 Передача модели заказчику....234 6.3.3 Мониторинг модели в рабочей среде....238 6.3.4 Поддержка и обновление модели....238 Краткие итоги главы....239 Глава 7. Работа с Keras: углубленные навыки....241 7.1 Широкий спектр рабочих процессов Keras....242 7.2 Различные способы построения моделей Keras....242 7.2.1 Sequential API....243 7.2.2 Functional API....246 7.2.3 Создание подкласса класса Model....253 7.2.4 Смешивание и сочетание разных компонентов....257 7.2.5 Используйте правильные инструменты....258 7.3 Использование встроенных циклов обучения и оценки....258 7.3.1 Разработка собственных метрик....259 7.3.2 Использование обратных вызовов....262 7.3.3 Разработка собственных обратных вызовов....264 7.3.4 Мониторинг и визуализация с помощью TensorBoard....266 7.4 Разработка собственных циклов обучения и оценки....268 7.4.1 Обучение или логический вывод....269 7.4.2 Использование метрик на низком уровне....270 7.4.3 Полный цикл обучения и оценки....271 7.4.4 Увеличьте быстродействие с помощью tf_function()....274 7.4.5 Использование fit() с пользовательским циклом обучения....275 Краткие итоги главы....278 Глава 8. Глубокое обучение в компьютерном зрении....279 8.1 Введение в сверточные нейронные сети....280 8.1.1 Операция свертки....283 8.1.2 Выбор максимального значения из соседних (max-pooling)....288 8.2 Обучение сверточной нейронной сети с нуля на небольшом наборе данных....291 8.2.1 Целесообразность глубокого обучения для решения задач с небольшими наборами данных....292 8.2.2 Загрузка данных....292 8.2.3 Построение сети....295 8.2.4 Предварительная обработка данных....297 8.2.5 Расширение данных....303 8.3 Использование предварительно обученной сверточной нейронной сети....307 8.3.1 Выделение признаков....308 8.3.2 Дообучение ранее обученной модели....318 Краткие итоги главы....322 Глава 9. Глубокое обучение для компьютерного зрения....323 9.1 Три основные задачи компьютерного зрения....324 9.2 Пример сегментации изображения....325 9.3 Современные стандартные архитектуры сверточных сетей....335 9.3.1 Модульность, иерархия и повторное использование....336 9.3.2 Остаточные связи....339 9.3.3 Пакетная нормализация....343 9.3.4 Разделяемые по глубине свертки....346 9.3.5 Применим знания на практике: мини-модель, подобная Xception....349 9.4 Интерпретация знаний сверточной нейросети....352 9.4.1 Визуализация промежуточных активаций....353 9.4.2 Визуализация сетевых фильтров....359 9.4.3 Визуализация тепловых карт активации класса....365 Краткие итоги главы....371 Глава 10. Глубокое обучение и временные ряды....372 10.1 Различные виды задач временных рядов....372 10.2 Пример прогнозирования температуры....374 10.2.1 Подготовка данных....378 10.2.2 Простое решение задачи без привлечения машинного обучения....382 10.2.3 Решение с использованием базовой модели машинного обучения....384 10.2.4 Эксперимент с одномерной сверточной сетью....386 10.2.5 Первый вариант простой рекуррентной модели....389 10.3 Рекуррентные нейронные сети....390 10.3.1 Рекуррентный слой в Keras....393 10.4 Продвинутое применение рекуррентных нейронных сетей....398 10.4.1 Использование рекуррентного прореживания для борьбы с переобучением....399 10.4.2 Наложение рекуррентных слоев....402 10.4.3 Использование двунаправленных рекуррентных сетей....404 10.4.4 Что дальше....407 Краткие итоги главы....409 Глава 11. Глубокое обучение в обработке текстов....410 11.1 Обработка естественного языка: обзор отрасли....410 11.2 Подготовка текстовых данных....413 11.2.1 Стандартизация текста....414 11.2.2 Разделение текста (токенизация)....415 11.2.3 Индексация словаря....416 11.2.4 Использование слоя layer_text_vectorization....418 11.3 Два подхода к представлению групп слов: наборы и последовательности....422 11.3.1 Подготовка данных обзоров фильмов IMDB....423 11.3.2 Обработка слов без учета порядка....426 11.3.3 Обработка последовательности слов....434 11.4 Архитектура Transformer....448 11.4.1 Механизм самовнимания....448 11.4.2 Многоголовое внимание....454 11.4.3 Кодировщик в архитектуре Transformer....455 11.4.4 Когда следует использовать модели последовательности, а не модели мешка слов....465 11.5 Помимо классификации текста: обучение преобразованию последовательностей....466 11.5.1 Пример машинного перевода....468 11.5.3 Рекуррентная модель преобразования последовательностей....471 11.5.4 Преобразование последовательностей с Transformer....478 Краткие итоги главы....484 Глава 12. Генеративные модели глубокого обучения....486 12.1 Генерирование текста с помощью Keras....488 12.1.1 Краткая история генеративных сетей....488 12.1.2 Как генерируют последовательности данных?....490 12.1.3 Важность стратегии выбора....490 12.1.4 Реализация генерации текста с помощью Keras....493 12.1.5 Обратный вызов генерации текста с выборкой при разной температуре....497 12.1.6 Подведение итогов....504 12.2 DeepDream....504 12.2.1 Реализация DeepDream в Keras....505 12.2.2 Подведение итогов....513 12.3 Нейронный перенос стиля....514 12.3.1 Функция потерь содержания....515 12.3.2 Функция потерь стиля....515 12.3.3 Реализация переноса стиля в Keras....516 12.3.4 Подведение итогов....524 12.4 Генерация изображений с помощью вариационных автокодировщиков....524 12.4.1 Выбор шаблонов из скрытых пространств изображений....525 12.4.2 Концептуальные векторы для редактирования изображений....526 12.4.3 Вариационные автокодировщики....527 12.4.4 Реализация VAE с помощью Keras....530 12.4.5 Подведение итогов....536 12.5 Введение в генеративно-состязательные сети....536 12.5.1 Реализация генеративно-состязательной сети....538 12.5.2 Полезные технические приемы....539 12.5.3 Получение набора данных CelebA....540 12.5.4 Дискриминатор....542 12.5.5 Генератор....543 12.5.6 Состязательная сеть....544 12.5.7 Подведение итогов....547 Краткие итоги главы....548 Глава 13. Глубокое обучение в реальной жизни....549 13.1 Получение максимальной отдачи от ваших моделей....550 13.1.1 Оптимизация гиперпараметров....550 13.1.2 Ансамблирование моделей....559 13.2 Масштабируемое обучение моделей....561 13.2.1 Ускорение обучения на GPU со смешанной точностью....562 13.2.2 Обучение модели на нескольких GPU....565 13.2.3 Обучение модели на TPU....570 Краткие итоги главы....572 Глава 14. Заключение....573 14.1 Краткий обзор ключевых понятий....574 14.1.1 Различные подходы к ИИ....574 14.1.2 Что выделяет глубокое обучение среди других подходов к машинному обучению....575 14.1.3 Как правильно воспринимать глубокое обучение....575 14.1.4 Ключевые технологии глубокого обучения....577 14.1.5 Обобщенный рабочий процесс машинного обучения....578 14.1.6 Основные архитектуры сетей....579 14.1.7 Пространство возможностей....584 14.2 Ограничения глубокого обучения....586 14.2.1 Риск очеловечивания моделей глубокого обучения....587 14.2.2 Принципиальное различие между автоматом и интеллектом....589 14.2.3 Различие между локальным и экстремальным обобщением....591 14.2.4 Предназначение интеллекта....594 14.2.5 Восхождение по уровням обобщения....595 14.3 Курс на большую универсальность в ИИ....596 14.3.1 О важности постановки правильной цели: правило короткого пути....596 14.3.2 Новая цель....599 14.4 Реализация интеллекта: недостающие ингредиенты....601 14.4.1 Построение и использование абстрактных аналогий....601 14.4.2 Два полюса абстракции....603 14.4.3 Сочетание двух полюсов абстракции....606 14.4.4 Недостающая половина картинки....606 14.5 Будущее глубокого обучения....608 14.5.1 Модели как программы....608 14.5.2 Машинное обучение и синтез программ....610 14.5.3 Сочетание глубокого обучения и синтеза программ....610 14.5.4 Непрерывное обучение и повторное использование модульных подпрограмм....613 14.5.5 Долгосрочная перспектива....614 14.6 Как не отстать от прогресса в быстро развивающейся отрасли....616 14.6.1 Решения реальных задач на сайте Kaggle....616 14.6.2 Знакомство с последними разработками на сайте arXiv....616 14.6.3 Исследование экосистемы Keras....617 14.7 Заключительное слово....618 Приложение. Введение в Python для пользователей R....619 Предметный указатель....643
Описание
Ниже — практический обзор по теме «keras».
Перед вами второе, расширенное в 1.5 раза издание бестселлера от автора библиотеки Keras.
API языка R для Keras и TensorFlow делает глубокое обучение доступным для всех пользователей R, даже если у них нет опыта работы с машинным обучением или нейронными сетями.Интуитивно понятные объяснения, четкие иллюстрации и наглядные примеры помогут вам освоить основные навыки глубокого обучения с помощью R, такие как компьютерное зрение, обработка естественного языка, работа с текстом, и даже изучить передовую архитектуру Transformer.Для читателей со средними навыками программирования на R. Умение работать с моделями глубокого обучения стало важным навыком современных ученых, исследователей и программистов. Опыт работы с Keras, TensorFlow или моделями глубокого обучения не требуется.
На этом основные моменты по теме закрыты.
Поделиться
Частые вопросы
Можно ли скачать «Глубокое обучение с R и Keras. 2 изд» бесплатно?
Да, «Глубокое обучение с R и Keras. 2 изд» доступна для бесплатного скачивания на нашем сайте в формате PDF. Ссылка на файл находится на этой странице.
В каком формате и какого размера файл?
Книга предоставляется в формате PDF, размер файла 10,0 МБ.
Кто автор и когда вышла книга?
автор — Шолле Франсуа, издательство ДМК Пресс, год выпуска 2023, 648 страниц.
О чём книга «Глубокое обучение с R и Keras. 2 изд»?
Перед вами второе, расширенное в 1.5 раза издание бестселлера от автора библиотеки Keras.Умение работать с моделями глубокого обучения стало важным навыком современных ученых, исследователей и программистов.