Прикладное машинное обучение с помощью scikit-learn и tensorflow
Book information
Description
"Эта книга - замечательное введение в теорию и практику решения задач с помощью нейронных сетей. Она охватывает ключевые моменты, необходимые для построения эффективных приложений, а также обеспечивает достаточную основу для понимания результатов новых исследований по мере их появления. Я рекомендую эту книгу всем, кто заинтересован в освоении практического машинного обучения." - Пит Уорден, технический руководитель направления TensorFlow Благодаря серии недавних достижений глубокое обучение значительно усилило всю область машинного обучения. В наше время даже программисты, почти ничего не знающие об этой технологии, могут использовать простые и эффективные инструменты для реализации программ, которые способны обучаться на основе данных. В настоящем практическом руководстве показано, что и как следует делать. За счет применения конкретных примеров, минимума теории и двух фреймворков Python производственного уровня - Scikit-Learn и TensorFlow - автор книги Орельен Жерон поможет вам получить интуитивное представление о концепциях и инструментах, предназначенных для построения интеллектуальных систем. Вы узнаете о ряде приемов, начав с простой линейной регрессии и постепенно добравшись до глубоких нейронных сетей. Учитывая наличие в каждой главе упражнений, призванных закрепить то, чему вы научились, для начала работы нужен лишь опыт программирования. Благодарности......Page 16 Цунами машинного обучения......Page 18 Цель и подход......Page 19 Предварительные требования......Page 20 Дорожная карта......Page 21 Другие ресурсы......Page 22 Типографские соглашения, используемые в книге......Page 23 Использование примеров кода......Page 24 Ждем ваших отзывов!......Page 25 Часть I. Основы машинногообучения......Page 26 Глава 1. Введение в машинное обучение......Page 28 Что такое машинное обучение?......Page 29 Для чего используют машинное обучение?......Page 30 Типы систем машинного обучения......Page 33 Обучение с учителем и без учителя......Page 34 Пакетное и динамическое обучение......Page 41 Обучение на основе образцов или на основе моделей......Page 44 Недостаточный размер обучающих данных......Page 51 Нерепрезентативные обучающие данные......Page 53 Несущественные признаки......Page 55 Переобучение обучающих данных......Page 56 Недообучение обучающих данных......Page 58 Шаг назад......Page 59 Испытание и проверка......Page 60 Упражнения......Page 62 Работа с реальными данными......Page 64 Постановка задачи......Page 66 Выбор критерия качества работы......Page 69 Создание рабочей области......Page 72 Загрузка данных......Page 76 Беглый взгляд на структуру данных......Page 78 Создание испытательного набора......Page 82 Визуализация географических данных......Page 88 Поиск связей......Page 91 Экспериментирование с комбинациями атрибутов......Page 94 Подготовка данных для алгоритмов машинного обучения......Page 95 Очистка данных......Page 96 Обработка текстовых и категориальных атрибутов......Page 99 Специальные трансформаторы......Page 103 Масштабирование признаков......Page 104 Конвейеры трансформации......Page 105 Выбор и обучение модели......Page 107 Обучение и оценка с помощью обучающего набора......Page 108 Более подходящая оценка с использованием перекрестной проверки......Page 109 Решетчатый поиск......Page 112 Рандомизированный поиск......Page 115 Анализ лучших моделей и их ошибок......Page 116 Оценка системы с помощью испытательного набора......Page 117 Запуск, наблюдение и сопровождение системы......Page 118 Упражнения......Page 119 MNIST......Page 122 Обучение двоичного классификатора......Page 125 Измерение правильности с использованием перекрестной проверки......Page 126 Матрица неточностей......Page 128 Точность и полнота......Page 130 Соотношение точность/полнота......Page 132 Кривая ROC......Page 136 Многоклассовая классификация......Page 140 Анализ ошибок......Page 143 Многозначная классификация......Page 147 Многовыходовая классификация......Page 149 Упражнения......Page 151 Глава 4. Обучение моделей......Page 154 Линейная регрессия......Page 155 Нормальное уравнение......Page 157 Вычислительная сложность......Page 160 Градиентный спуск......Page 161 Пакетный градиентный спуск......Page 164 Стохастический градиентный спуск......Page 168 Мини-пакетный градиентный спуск......Page 171 Полиномиальная регрессия......Page 173 Кривые обучения......Page 175 Гребневая регрессия......Page 180 Лассо-регрессия......Page 183 Эластичная сеть......Page 185 Раннее прекращение......Page 186 Оценивание вероятностей......Page 188 Обучение и функция издержек......Page 190 Границы решений......Page 191 Многопеременная логистическая регрессия......Page 194 Упражнения......Page 198 Линейная классификация SVM......Page 200 Классификация с мягким зазором......Page 201 Нелинейная классификация SVM......Page 204 Полиномиальное ядро......Page 205 Добавление признаков близости......Page 207 Гауссово ядро RBF......Page 208 Вычислительная сложность......Page 210 Регрессия SVM......Page 211 Функция решения и прогнозы......Page 213 Цель обучения......Page 214 Квадратичное программирование......Page 216 Двойственная задача......Page 217 Параметрически редуцированные методы SVM......Page 218 Динамические методы SVM......Page 221 Упражнения......Page 223 Обучение и визуализация дерева принятия решений......Page 224 Вырабатывание прогнозов......Page 226 Оценивание вероятностей классов......Page 228 Алгоритм обучения CART......Page 229 Вычислительная сложность......Page 230 Гиперпараметры регуляризации......Page 231 Регрессия......Page 233 Неустойчивость......Page 236 Упражнения......Page 237 Глава 7. Ансамблевое обучение и случайные леса......Page 240 Классификаторы с голосованием......Page 241 Бэггинг и вставка......Page 244 Бэггинг и вставка в Scikit-Learn......Page 246 Оценка на неиспользуемых образцах......Page 247 Случайные леса......Page 249 Значимость признаков......Page 251 Бустинг......Page 252 AdaBoost......Page 253 Градиентный бустинг......Page 257 Стекинг......Page 262 Упражнения......Page 265 Глава 8. Понижение размерности......Page 268 “Проклятие размерности”......Page 269 Проекция......Page 271 Обучение на основе многообразий......Page 273 Предохранение дисперсии......Page 275 Главные компоненты......Page 276 Использование Scikit-Learn......Page 278 Выбор правильного количества измерений......Page 279 Алгоритм РСА для сжатия......Page 280 Инкрементный анализ главных компонентов......Page 282 Ядерный анализ главных компонентов......Page 283 Выбор ядра и подстройка гиперпараметров......Page 284 LLE......Page 287 Другие приемы понижения размерности......Page 289 Упражнения......Page 290 Часть II. Нейронные сети и глубокое обучение......Page 292 Глава 9. Подготовка к работе с TensorFlow......Page 294 Создание первого графа и его прогон в сеансе......Page 298 Управление графами......Page 300 Жизненный цикл значения узла......Page 301 Линейная регрессия с помощью TensorFlow......Page 302 Реализация градиентного спуска......Page 303 Расчет градиентов вручную......Page 304 Использование autodiff......Page 305 Передача данных алгоритму обучения......Page 307 Сохранение и восстановление моделей......Page 309 Визуализация графа и кривых обучения с использованием TensorBoard......Page 310 Пространства имен......Page 314 Модульность......Page 315 Совместное использование переменных......Page 317 Упражнения......Page 321 Глава 10. Введение в искусственные нейронные сети......Page 324 От биологических нейронов к искусственным нейронам......Page 325 Биологические нейроны......Page 326 Логические вычисления с помощью нейронов......Page 327 Персептрон......Page 329 Многослойный персептрон и обратная связь......Page 334 Обучение многослойного персептрона с помощью высокоуровневого API-интерфейса TensorFlow......Page 337 Стадия построения......Page 339 Стадия выполнения......Page 344 Использование нейронной сети......Page 345 Точная настройка гиперпараметров нейронной сети......Page 346 Количество скрытых слоев......Page 347 Количество нейронов на скрытый слой......Page 348 Функции активации......Page 349 Упражнения......Page 350 Глава 11. Обучение глубоких нейронных сетей......Page 352 Проблемы исчезновения и взрывного роста градиентов......Page 353 Инициализация Ксавье и Хе......Page 354 Ненасыщаемые функции активации......Page 357 Пакетная нормализация......Page 360 Отсечение градиентов......Page 366 Повторное использование модели TensorFlow......Page 367 Повторное использование моделей из других фреймворков......Page 371 Замораживание низкоуровневых слоев......Page 372 Кеширование замороженных слоев......Page 373 Зоопарки моделей......Page 374 Предварительное обучение без учителя......Page 375 Предварительное обучение на вспомогательной задаче......Page 376 Более быстрые оптимизаторы......Page 377 Моментная оптимизация......Page 378 Ускоренный градиент Нестерова......Page 379 AdaGrad......Page 381 Оптимизация Adam......Page 383 Планирование скорости обучения......Page 386 Раннее прекращение......Page 389 Регуляризация и £2......Page 390 Отключение......Page 391 Регуляризация на основе шах-нормы......Page 394 Дополнение данных......Page 396 Практические рекомендации......Page 398 Упражнения......Page 399 Глава 12. Использование TensorFlow для распределения вычислений между устройствами и серверами......Page 402 Множество устройств на единственной машине......Page 403 Установка......Page 404 Управление оперативной памятью графического процессора......Page 407 Размещение операций на устройствах......Page 409 Параллельное выполнение......Page 413 Зависимости управления......Page 415 Множество устройств на множестве серверов......Page 416 Открытие сеанса......Page 418 Прикрепление операций между задачами......Page 419 Фрагментация переменных среди множества серверов параметров......Page 420 Разделение состояния между сеансами с использованием контейнеров ресурсов......Page 422 Асинхронное взаимодействие с использованием очередей TensorFlow......Page 424 Загрузка данных напрямую из графа......Page 430 Распараллеливание нейронных сетей в кластере TensorFlow......Page 439 Одна нейронная сеть на устройство......Page 440 Репликация внутри графа или между графами......Page 441 Параллелизм модели......Page 444 Параллелизм данных......Page 446 Упражнения......Page 452 Глава 13. Сверточные нейронные сети......Page 454 Строение зрительной коры головного мозга......Page 455 Сверточный слой......Page 457 Фильтры......Page 459 Наложение множества карт признаков......Page 460 Реализация с помощью TensorFlow......Page 463 Требования к памяти......Page 465 Объединяющий слой......Page 467 Архитектуры сверточных нейронных сетей......Page 468 LeNet-5......Page 470 AlexNet......Page 471 GoogLeNet......Page 473 ResNet......Page 477 Упражнения......Page 483 Глава 14. Рекуррентные нейронные сети......Page 486 Рекуррентные нейроны......Page 487 Входные и выходные последовательности......Page 490 Базовые рекуррентные нейронные сети в TensorFlow......Page 492 Статическое развертывание во времени......Page 493 Обработка входных последовательностей переменной длины......Page 496 Обучение рекуррентных нейронных сетей......Page 498 Обучение классификатора последовательностей......Page 499 Обучение для прогнозирования временных рядов......Page 501 Креативная рекуррентная нейронная сеть......Page 506 Глубокие рекуррентные нейронные сети......Page 507 Распределение глубокой рекуррентной нейронной сети между множеством графических процессоров......Page 508 Применение отключения......Page 509 Трудность обучения в течение многих временных шагов......Page 511 Ячейка LSTM......Page 512 Ячейка GRU......Page 515 Векторные представления слов......Page 517 Сеть “кодировщик-декодировщик” для машинного перевода......Page 520 Упражнения......Page 524 Глава 15. Автокодировщики......Page 526 Эффективные представления данных......Page 527 Выполнение анализа главных компонентов с помощью понижающего линейного автокодировщика......Page 529 Многослойные автокодировщики......Page 530 Реализация с помощью TensorFlow......Page 531 Связывание весов......Page 533 Обучение по одному автокодировщику за раз......Page 534 Визуализация реконструкций......Page 537 Визуализация признаков......Page 538 Предварительное обучение без учителя с использованием многослойных автокодировщиков......Page 539 Шумоподавляющие автокодировщики......Page 541 Реализация с помощью TensorFlow......Page 542 Разреженные автокодировщики......Page 544 Реализация с помощью TensorFlow......Page 545 Вариационные автокодировщики......Page 546 Генерирование цифр......Page 550 Другие автокодировщики......Page 551 Упражнения......Page 553 Глава 16. Обучение с подкреплением......Page 556 Обучение для оптимизации наград......Page 557 Поиск политики......Page 559 Введение в OpenAI Gym......Page 561 Политики в форме нейронных сетей......Page 565 Оценка действий: проблема присваивания коэффициентов доверия......Page 568 Градиенты политики......Page 569 Марковские процессы принятия решений......Page 575 Обучение методом временных разностей и Q-обучение......Page 580 Политики исследования......Page 582 Приближенное Q-обучение и глубокое Q-обучение......Page 583 Обучение играть в игру Ms. Рас-Man с использованием алгоритма сети DQN 584 Упражнения......Page 595 Спасибо!......Page 596 Глава 1. Введение в машинное обучение......Page 597 Глава 4. Обучение моделей......Page 600 Глава 5. Методы опорных векторов......Page 603 Глава 6. Деревья принятия решений......Page 605 Глава 7. Ансамблевое обучение и случайные леса......Page 606 Глава 8. Понижение размерности......Page 608 Глава 9. Подготовка к работе с TensorFlow......Page 611 Глава 10. Введение в искусственные нейронные сети......Page 614 Глава 11. Обучение глубоких нейронных сетей......Page 617 Глава 12. Использование TensorFlow для распределения вычислений между устройствами и серверами......Page 619 Глава 13. Сверточные нейронные сети......Page 622 Глава 14. Рекуррентные нейронные сети......Page 625 Глава 15. Автокодировщики......Page 627 Глава 16. Обучение с подкреплением......Page 630 Постановка задачи и выяснение общей картины......Page 634 Получение данных......Page 635 Исследование данных......Page 636 Подготовка данных......Page 637 Составление окончательного списка перспективных моделей......Page 638 Точная настройка системы......Page 639 Запуск!......Page 640 Приложение В. Двойственная задача SVM......Page 641 Ручное дифференцирование......Page 644 Символическое дифференцирование......Page 645 Численное дифференцирование......Page 646 Автоматическое дифференцирование в прямом режиме......Page 648 Автоматическое дифференцирование в обратном режиме......Page 649 СетиХопфилда......Page 652 Машины Больцмана......Page 654 Ограниченные машины Больцмана......Page 656 Глубокие сети доверия......Page 657 Самоорганизующиеся карты......Page 660 Предметный указатель......Page 663
Similar books
Методология научных исследований и прикладной аналитики: Учебник. Изд. 5-е, дополн. и перераб. В 2 т. Т.2: Научные исследования: Мастерство и искусство научного мышления и научной работы / Methodology of Scientific Research and Practical Analytics: A Textbook: Fifth Edition. In two volumes. Vol.2: Scientific research: Art of scientific thinking and scientific work / Méthodologie de la recherche scientifique et de l’analytique appliquée: Manuel: Cinquième édition. En 2 tomes. T.2: Recherches scientifiques: Art de la pensée scientifique et du travail scientifique
2025 · PDF
Методы и понятия философии искусства: практикум : уровень подготовки кадров высшей квалификации: ассиснтурв-стажировка : специальности: 54.09.03 "Искусство дизайна (по видам)", 54.09.02 "Мастерство декоративно-прикладного искусства и народных промыслов (по видам)" : укрупненная группа специальностей: 54.00.00 "Изобразительное и прикладные виды искусств" : квалификация выпускника: "Преподаватель творческих дисциплин в высшей школе. Дизайнер", "Преподаватель творческих дисциплин в высшей школе. Художник декоративно-прикладного искусства" : форма обучения: очная
2022 · PDF
Разработка графического интерфейса пользователя информационной системы с использованием библиотеки QT: учебное пособие для студентов 1 курса направлений подготовки 09.04.02 "Информационные системы и технологии", 27.04.03 "Системный анализ и управление" очной формы обучения, 2 курса направления подготовки 10.05.03 "Информационная безопасность автоматизированных систем" очной формы обучения и 3 курса направления подготовки 09.03.02 "Информационные системы и технологии" очной и заочной форм обучения : учебное электронное издание
2021 · PDF
Археологические культуры Сибири в контексте кросс-культурных контактов в Евразии: к 300-летию первых научных археологических раскопок в Сибири (1722 г.) =: Archaeological Cultures of Siberia in the context of Cross-cultural contacts in Eurasia: dedicated to the 300th anniversary of the first scientific archaeological excavations in Siberia (1722) : материалы Международной археологической конференции молодых исследователей "Археологические культуры Сибири в контексте кросс-культурных контактов в Евразии: к 300-летию первых научных археологических раскопок в Сибири (1722 г.)" (Новосибирск, 21-25 ноября 2022 г.)
2022 · PDF
Трешниковские чтения - 2023. Современная географическая картина мира и технологии географического образования =: Treshnikov readings - 2023. Modern geographical global picture and technology of geographic education : материалы Всероссийской научно-практической конференции с международным участием, посвящённой памяти знаменитого российского океанолога, исследователя Арктики и Антарктики, академика Алексея Фёдоровича Трёшникова и 60-летию Ульяновского областного отделения Всероссийской общественной организации "Русское гаографическое общество" (13 апреля 2023)
2023 · PDF
Управление объектами интеллектуальной собственности. Искусство изобретать: учебник для обучающихся по направлениям подготовки 23.00.00 , направлениям подготовки 23.03.01 "Технология транспортных процессов", уровень образования-"бакалавриат", 23.03.03 "Эксплуатация транспортно-технологических машин и комплексов", уровень образования-"бакалавриат", 23.04.01 "Технология транспортных процессов", уровень образования- "магистратура", 23.04.03 "Эксплуатация транспортно-технологических машин и комплексов", уровень образования- "магистратура"
2022 · PDF
Философия. Учебно-методический комплекс дисциплины по направлениям подготовки: 51.03.03 (071800.62) «Социально-культурная деятельность», профили подготовки: «Социально-культурные технологии в индустрии досуга», «Менеджмент социально-культурной деятельности», «Менеджмент детско-юношеского досуга», «Постановка и продюсирование культурно-досуговых программ», «Социально-культурная анимация и рекреация»; 38.03.02 (080200.62) «Менеджмент», профили подготовки: «Управление человеческими ресурсами», «Управление малым бизнесом», квалификации (степень) выпускника – «бакалавр»
2014 · PDF
Проектирование устройств приема и обработки сигналов: учебно-методическое пособие по курсу "Устройства приема и обработки сигналов" для студентов всех форм обучения специальностей: 210400.62 Радиотехника. Бакалавр Б.3.10. Основы цифровой обработки сигналов; 210700.62 Системы мобильной связи. Бакалавр Б.3.19. Радиоприемные устройства систем мобильной связи; 210601.65 Радиоэлектронные системы и комплексы. Специалист С.3.18. Устройства приема и обработки сигналов; 090302.65 Защита информации в системах связи и управления. Специалист С.3.30. Устройства приема и обработки сигналов
2015 · PDF