Обзор книги «Doing Data Science»

По мнению некоторых экспертов, книга Doing Data Science (авторы: Rachel Schutt and Cathy O’Neil) является одной из базовых по data science, поэтому мы решили рассмотреть её структуру и содержание, понять о чём она и стоит ли её читать.

С самого начала авторы делятся своим опытом преподавания data science в Колумбийском Университете и рекомендуют читать книгу как есть, не перепрыгивая с главы на главу, т.к. главы взаимосвязаны между собой и идут последовательно как единое целое. Рекомендуется также иметь базовые знания по линейной алгебре, математической статистике, теории вероятностей и иметь навыки программирования (+ авторы указывают список рекомендованных книг по этим тематикам).

Первая глава начинается с разбора вопроса “Что такое наука о данных?”. Вообще говоря, они в рамках всей книги пытаются ответить на этот вопрос, предлагая разные подходы. Упоминается хайп вокруг биг даты с её нюансами. Рассматриваются современные подходы к data science. Делается попытка построить профиль дата-исследователя (data scientist) в зависимости от опыта и базовой специализации.

More generally, a data scientist is someone who knows how to extract meaning from and interpret data, which requires both tools and meth‐ ods from statistics and machine learning, as well as being human. She spends a lot of time in the process of collecting, cleaning, and munging data, because data is never clean. This process requires persistence, statistics, and software engineering skills—skills that are also neces‐ sary for understanding biases in the data, and for debugging logging output from code.

Глава вторая посвящена статистическим выводам (Statistical Inference), разведывательному анализу (Exploratory Data Analysis, EDA) и процессу исследования данных.

Наш мир мы можем представить как машину, генерирующую большие данные.

Авторы начинают главу с рассуждение о месте статистики в эпоху больших данных. Затрагиваются вопросы моделирования, подхода «N = всё». Рассматриваются статистические аспекты к построению моделей, статистические распределения и их параметры, подгонка модели (оценка параметров). Разведывательный анализ является первым шагом к построению модели и является важной частью процесса исследования данных. Основой EDA являются графики, диаграммы, сводные статистики. Описывается философия EDA и объясняется почему такие крупные компании как Google тоже этим занимаются. В дополнение к этому, авторы предлагают попрактиковаться с набором данных и сделать небольшой (EDA) анализ в программе R (приводится пример кода).

В этой же главе авторы предлагают рассмотреть сам процесс исследования данных, который включает в себя сбор данных, обработку данных, очистку данных, разведывательный анализ, алгоритмы машинного обучения и статистические модели, визуализацию, подготовку отчётов, разработку соответствующих дата-продуктов, принятие решений. Исследователь данных (data scientist) играет в этом процессе важнейшую роль и отвечает на вопросы: какие данные нам нужно собрать; какие гипотезы нужно проверить; как должны выглядеть данные; сформулировать главный исследовательский вопрос, ради которого проводится анализ данных.

В конце главы предлагается кейс-стади компании RealDirect, которая занимается работой с недвижимостью. Их главная задача – использовать все доступные данные для усовершенствования процесса купли-продажи домов. Читателю предлагается стать главным по данным в компании (Chief Data Scientist), разработать для компании стратегию работы с данными и достичь поставленной цели. Авторы предлагают механизм работы над этим + показывают кусок кода в R для работы с данными.

Третья глава посвящена алгоритмам.

An algorithm is a procedure or set of steps or rules to accomplish a task. Algorithms are one of the fundamental concepts in, or building blocks of, computer science: the basis of the design of elegant and efficient code, data preparation and processing, and software engineering.

Имеется как минимум 3 класса алгоритмов, которые нужно иметь ввиду при анализе данных:

1. Алгоритмы для обработки, подготовки данных (data munging): сюда относятся алгоритмы сортировки, Map Reduce, Pregel.
2. Оптимизационные алгоритмы для оценки параметров: вероятностный градиентный спуск, метод Ньютона, метод наименьших квадратов. Все эти алгоритмы реализованы в R.
3. Алгоритмы машинного обучения.

Алгоритмы машинного обучения широко используются для построения прогнозов, классификации, кластеризации. Исследователю данных важно научиться понимать в каком контексте применять тот или иной алгоритм.

Далее авторы разбирают 3 базовых алгоритма (с примерами): линейная регрессия, алгоритм k-ближайших соседей, алгоритм k-средних. Для закрепления материала предлагается проанализировать набор данных с использованием упомянутых алгоритмов, визуализировать данные и сделать выводы. Здесь же предлагается решение с кодом в R.

В четвёртой главе рассказывается по спам фильтры, наивный байесовский классификатор и манипулирование данными (wrangling).

Глава начинается с примера про спам (точнее про обнаружение спама). Здесь применяется алгоритм наивного байесовского классификатора (и рассуждается, почему здесь не работает линейная регрессия, метод k-ближайших соседей). Ну и, собственно, приводится описание байесовского метода с примерами и сравненмями.

Пятая глава про логистическую регрессию.

Глава начинается с экспериментов.

There is art in data science—it’s in translating human problems into the mathematical context of data science and back.

Логистическая регрессия описывается на примере компании M6D. Описывается математическая основа, рассматриваются параметры (их оценка). Здесь же описываются дополнительные параметры, используемые для оценки качества модели: lyft, accuracy, precision, recall, F-score.

Глава 6 про временные отметки (timestamps) и финансовое моделирование. Рассматривается пример компании GetGlue, описывается понятие timestamped data и их связь с Big Data. Отдельно описываются аспекты финансового моделирования: подготовка данных, преобразование, использование алгоритмов. Приводится пример на основе индекса S&P.

Глава 7
посвящена извлечению смысла из данных.

Ответ на вопрос «Как компании извлекают полезные знания из данных, которые у них имеются?» рассматривается на основе двух подходов: опытом делится специалист из Kaggle и специалист из Google.

Being a data scientist is when you learn more and more about more and more, until you know nothing about everything.
— Will Cukierski

Дополнительно упоминается метод дерева решений, энтропия, случайный лес, удержание пользователей.

Глава 8 посвящена рекомендательным системам. Описывается принцип построения рекомендательных систем с примерами. Применяется алгоритм ближайшего соседа, сингулярное разложение, анализ главных компонентов, метод попеременных наименьших квадратов (Alternating Least Squares). В дополнение даётся упражнение на построение собственной рекомендательной системы (с примером кода на Питоне).

Глава 9 рассказывает про визуализацию данных и обнарушение мошенничества. Эксперты рассказывают про проекты визуализации в своих компаниях.

Глава 10 про социальные сети и дата-журнализм. Анализ социальных сетей связано с двумя направлениями: теория графов и социометрика. Описываеся терминология из социальных сетей, метрики. Упоминается работа Джона Келли из Morningside Analytics.

Глава 11 посвящена причинности.

Корреляция не означает причинность. Необходимо учитывать скрытые (вмешивающиеся, третьи) переменные. Описывается парадокс Симпсона, причинно-следственная модель Рубина, визуальная причинность, эффект причинности.

Глава 12 называется “Эпидемиология”. Обработка медицинских данных, прогноз эпидемий.

Глава 13 рассказывает про уроки, извлечённые из соревнований по данным: утечка данных и оценка моделей. Опытом делится победительница многих соревнований по анализу данных. По её словам, данные и понимание предметной области – это единственные самые важные навыки, которые нужны исследователю данных. Их нужно развивать в себе.

Глава 14 посвящена инженерии данных: MapReduce, Pregel, Hadoop.

Дата-инженеры занимаются сбором данных, организацией инфраструктуры для хранения и обработки данных и т.п. MapReduce зародился в Google, авторы кратко описывают эту концепцию.

Today, Big Data means working with data that doesn’t fit in one com‐ puter. Even so, the size of Big Data changes rapidly. Computers have experienced exponential growth for the past 40 years. We have at least 10 years of exponential growth left (and people said the same thing 10 years ago).

В сравнение с MapReduce предлагают графовый вычислительный алгоритм Pregel (тоже родом из Google). Сейчас есть опенсорсная версия этого алгоритма под названием Giraph (Жираф). Ну и даётся введение в Hadoop.

Глава 15. «Студенты говорят».

Студенты рассказывают о своём опыте изучения основ data science и реализации начальных проектов.

Глава 16. «Дата-исследователи нового поколения, высокомерие и этика».

Две основных цели этой книги – донести до читателя, что значит быть исследователем данным и научить делать то, что делают data scientists. Пришла пора ещё раз обсудить вопрос «Что такое data science?». Вот список того, чем занимается data scientist (по мнению и опыту одного из авторов):

• Exploratory data analysis
• Visualization (for exploratory data analysis and reporting)
• Dashboards and metrics
• Find business insights
• Data-driven decision making
• Data engineering/Big Data (Mapreduce, Hadoop, Hive, and Pig)
• Get the data themselves
• Build data pipelines (logs→mapreduce→dataset→join with other data→mapreduce→scrape some data→join)
• Build products instead of describing existing product usage
• Hack
• Patent writing
• Detective work
• Predict future behavior or performance
• Write up findings in reports, presentations, and journals
• Programming (proficiency in R, Python, C, Java, etc.)
• Conditional probability
• Optimization
• Algorithms, statistical models, and machine learning
• Tell and interpret stories
• Ask good questions
• Investigation
• Research
• Make inferences from data
• Build data products
• Find ways to do data processing, munging, and analysis at scale
• Sanity checking
• Data intuition
• Interact with domain experts (or be a domain expert)
• Design and analyze experiments
• Find correlation in data, and try to establish causality

Data science is a set of best practices used in tech companies, working within a broad space of problems that could be solved with data, possibly even at times deserving the name science.

Авторы обсуждают будущее поколение исследователей данных, какие навыки будут востребованы и какие функции они будут выполнять. В заключении даётся несколько советов.

Data Scientist # 1

Машинное обучение, большие данные, наука о данных, анализ данных, цифровой маркетинг, искусственный интеллект, нейронные сети, глубокое обучение, data science, data scientist, machine learning, artificial intelligence, big data, deep learning

Данные — новый актив!

Эффективно управлять можно только тем, что можно измерить.
Copyright © 2016-2021 Data Scientist. Все права защищены.