
Представляем книгу, которая посвящена практическим методам анализа больших объемов данных с использованием языка Python и фреймворка Spark, она знакомит с моделью программирования Spark и основами системы с открытым исходным кодом PySpark. Каждая глава описывает отдельный аспект анализа данных, показаны основы обработки данных в PySpark и Python на примере очистки данных, подробно освещается машинное обучение с помощью Spark. Книга поможет читателю понять, как устроен и работает весь конвейер PySpark для комплексной аналитики больших наборов данных: от создания и оценки моделей до очистки, предварительной обработки и исследования данных с особым акцентом на производственные приложения. Отдельные главы посвящены обработке изображений и библиотеке Spark NLP.
Практические примеры анализа больших наборов данных с использованием Python и Spark
В современном мире накоплен ошеломляющий объем данных, и он продолжает расти. Один из основных инструментов анализа данных — Apache Spark, фреймворк с открытым исходным кодом для распределенной обработки неструктурированных и слабоструктурированных данных. Это практическое руководство объединяет Spark, статистические методы и наборы данных из реального мира. Авторы научат вас решать задачи анализа с помощью системы с открытым исходным кодом PySpark, применяемой для распределенной обработки больших данных с использованием Python, а также других передовых методов программирования Spark.
Специалисты по обработке данных знакомят читателей с экосистемой Spark, а затем приводят примеры базовых методов анализа, включая классификацию, кластеризацию, совместную фильтрацию и обнаружение аномалий в таких областях, как геномика, безопасность и финансы. Отдельные главы посвящены обработке изображений и библиотеке Spark NLP.
Если у вас имеются базовые знания о машинном обучении и статистике, и вы программируете на Python, книга поможет вам освоить анализ больших данных.
- Ознакомьтесь с моделью программирования и экосистемой Spark
- Изучите общие подходы в науке о данных
- Изучите практические примеры анализа больших наборов данных
- Узнайте, какие инструменты машинного обучения подходят для решения конкретных задач
- Напишите код, который можно адаптировать для многих целей
Книгу “Расширенная аналитика с PySpark” можно купить со скидкой в интернет-магазине издательства “БХВ“.
Предисловие. 9
Почему мы написали эту книгу именно сейчас?. 9
Как устроена эта книга. 10
Условные обозначения, используемые в этой книге. 11
Использование примеров кода. 12
Благодарности. 12
ГЛАВА 1. Анализ больших данных. 15
Работа с большими данными. 16
Знакомство с Apache Spark и PySpark. 18
Компоненты Spark. 18
PySpark. 20
Экосистема. 21
Spark 3.0. 22
PySpark решает проблемы науки о данных. 23
Что дальше?. 24
ГЛАВА 2. Введение в анализ данных с помощью PySpark. 25
Архитектура Spark. 27
Установка PySpark. 28
Подготовка учебных данных. 30
Анализ данных с помощью API DataFrame. 36
Быстрая сводная статистика для фреймов данных. 40
Поворот и изменение формы фреймов данных. 42
Соединение фреймов данных и выбор признаков. 45
Функция оценивания и проверка модели. 46
Что дальше?. 48
ГЛАВА 3. Рекомендация музыки и набор данных Audioscrobbler. 49
Подготовка данных. 50
Наши требования к рекомендательной системе. 52
Альтернативный алгоритм наименьших квадратов. 55
Подготовка данных. 56
Создание первой модели. 59
Выборочная проверка рекомендаций. 63
Оценка качества рекомендаций. 65
Вычисление AUC.. 66
Выбор гиперпараметра. 68
Выдача рекомендаций. 70
Что дальше?. 72
ГЛАВА 4. Прогнозирование с помощью деревьев и лесов решений. 73
Деревья и леса решений. 74
Подготовка данных. 77
Наше первое дерево решений. 81
Гиперпараметры дерева решений. 88
Настройка деревьев решений. 90
Еще раз о категориальных признаках. 94
Случайные леса. 98
Получение прогнозов. 100
Что дальше?. 101
ГЛАВА 5. Обнаружение аномалий при помощи кластеризации
K-средних. 102
Кластеризация K-средних. 103
Выявление аномального сетевого трафика. 104
Набор данных Кубка KDD 1999 г. 105
Первый опыт кластеризации. 106
Выбор параметра k. 108
Визуализация с помощью SparkR.. 111
Нормализация признаков. 115
Категориальные переменные. 117
Использование меток с энтропией. 119
Кластеризация в действии. 120
Что дальше?. 122
ГЛАВА 6. Исследование Википедии с помощью LDA и Spark NLP. 123
Скрытое распределение Дирихле. 124
LDA в PySpark. 124
Получение данных. 125
Spark NLP. 126
Подготовка вашей среды.. 127
Парсинг данных. 128
Подготовка данных с использованием Spark NLP. 130
TF-IDF. 134
Вычисление TF-IDF. 135
Создание модели LDA.. 136
Что дальше? 139
ГЛАВА 7. Геопространственный и временнóй анализ данных
о поездках на такси. 140
Подготовка данных. 141
Преобразование строк даты и времени в метки времени. 143
Обработка недействительных записей. 146
Геопространственный анализ. 147
Введение в GeoJSON.. 147
GeoPandas. 149
Сессионизация в PySpark. 152
Создание сессий: вторичные сортировки в PySpark. 153
Что дальше?. 155
ГЛАВА 8. Оценка финансового риска. 157
Терминология. 158
Методы расчета VaR.. 159
Дисперсия-ковариация. 159
Ретроспективное моделирование. 159
Моделирование методом Монте-Карло. 159
Наша модель. 160
Получение данных. 161
Подготовка данных. 162
Определение весов факторов. 165
Выборка. 168
Многомерное нормальное распределение. 170
Испытание моделей. 171
Визуализация распределения доходов. 175
Что дальше?. 175
ГЛАВА 9. Анализ данных геномики и проект BDG.. 177
Разделение хранения и моделирования. 178
Установка ADAM.. 181
Введение в работу с геномными данными с использованием ADAM.. 182
Преобразование формата файла с помощью ADAM CLI 183
Получение геномных данных с помощью PySpark и ADAM.. 183
Прогнозирование сайтов связывания транскрипционных факторов на основе данных ENCODE 189
Что дальше?. 194
ГЛАВА 10. Обнаружение сходства изображений с помощью глубокого обучения и PySpark LSH 196
PyTorch. 197
Установка PyTorch. 197
Подготовка данных. 198
Изменение размера изображений с помощью PyTorch. 199
Модель глубокого обучения для векторного представления изображений. 200
Встраивание изображений. 200
Импорт встраиваний изображений в PySpark. 202
Поиск схожих изображений с использованием PySpark LSH.. 203
Поиск ближайшего соседа. 204
Что дальше?. 207
ГЛАВА 11. Управление жизненным циклом машинного обучения
с помощью MLflow.. 208
Жизненный цикл машинного обучения. 208
MLflow.. 210
Отслеживание экспериментов. 211
Использование MLflow Model 214
Создание и использование проектов MLflow.. 217
Что дальше?. 220
Об авторах. 221
Колофон. 222
Предметный указатель. 223
Акаш Тандон — cоучредитель и технический директор компании Looppanel. Ранее работал главным инженером по данным в компании Atlan, специализирующейся на обработке данных и аналитике.
Сэнди Райза — ведущий разработчик проекта Dagster, облачного оркестратора для анализа данных, и участник проекта Apache Spark.
Ури Ласерсон — учредитель и технический директор компании Patch Biosciences, специализирующей в области геномики и расшифровки ДНК. Ранее работал с большими данными в Cloudera, создателе дистрибутивов Apache Hadoop.
Шон Оуэн — главный архитектор решений, специализирующийся на машинном обучении и науке о данных в Databricks, компании по разработке корпоративного программного обеспечения, основанной создателями Apache Spark. Участник проекта Apache Spark.
Джош Уиллс — инженер-программист в компании WeaveGrid, развивающей «зеленые» технологии в сфере энергетики, и бывший руководитель отдела обработки данных в компании Slack Tecnologies, разработавшей одноименный корпоративный мессенджер .
-
Расширенная аналитика с PySpark
812 ₽
690 ₽