Моделирование данных часто является ядром науки о данных. Но наука о данных не ограничивается только моделированием. Моделирование данных составляет всего 20% от всего конвейера обработки данных. Чтобы извлечь какую-либо «ценность» из данных, их необходимо собирать, очищать и исследовать, имея мотивацию (для решения реальной проблемы) и знания предметной области, которые служат руководящими силами для специалиста по данным.

Метафорически наука о данных похожа на волшебство (предсказывать) и дедукцию (сравнивать и интерпретировать). Как начинающий специалист по данным, вы хотели бы иметь возможность автоматически предсказывать результаты и выявлять ранее неизвестные тенденции и закономерности в ваших данных.

Вот где в игру вступает конвейер науки о данных.

Понимание того, «как работает конвейер обработки данных» - это первый шаг к решению реальной проблемы.

В этом посте мы обсудим этапы конвейера обработки данных, которые необходимо выполнить для создания продукта, готового к использованию конечными пользователями.

  1. Понимание проблемы

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

Для анализа проблемы требуется глубокое понимание предметной области или бизнеса.

Модель, которую вы собираетесь построить к концу конвейера обработки данных, будет полностью зависеть от решаемой проблемы. Для разных требований и целей вам придется корректировать свои алгоритмы. Универсальный подход не работает.

Пример сценария. Представьте, например, что вы создаете механизм рекомендаций для портала электронной коммерции. Цель - рекомендовать продукты всем новым посетителям платформы. Бизнес-цель - заставить нового посетителя проводить максимальное количество времени на платформе и разместить свой первый заказ. Но если вы создадите систему как для новых, так и для вернувшихся посетителей, это бесполезно. И если механизм рекомендаций не сможет определить закономерности в том, как новые посетители исследуют различные продукты и размещают свой первый заказ, это не принесет никакой пользы для организации. Вот почему понимание проблемы и предметной области имеет решающее значение для создания полезного продукта для науки о данных.

2. Сбор данных

Данные собираются на основе вашего понимания проблемы. Сбор данных - утомительный и трудоемкий процесс. Это требует терпения, энергии и времени.

Имея больше данных, можно построить более надежные модели.

Для построения надежных моделей крайне важно работать с точными данными. Если имеется слишком много выбросов точек данных, даже самые совершенные модели обречены на провал.

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

Требуемые навыки:

Запросы к реляционным и нереляционным базам данных: MySQL, PostgresSQL, MongoDB

Распределенное хранилище: Hadoop, Apache Spark

Получение неструктурированных данных: текста, изображений, видео, аудиофайлов, документов, Excel и т. Д.

3. Очистка данных

Эта фаза конвейера обработки данных обычно требует больше всего времени и усилий. Результаты и выходные данные модели науки о данных настолько хороши, насколько хороши данные, которые вы в нее вводите. Для очистки данных используются такие языки сценариев, как Python и R.

Собранные данные проверяются, очищаются и сохраняются в структурированной форме. Ключевая цель - удалить как можно больше шума на этом этапе; знание предметной области и понимание бизнес-проблемы помогают в выявлении и удалении выбросов.

Очищенные таким образом данные будут использоваться для исследовательского анализа данных и моделирования на следующих этапах.

Пример сценария. Все данные, которые создают шум и не связаны с бизнес-потребностями и связаны с рассматриваемой проблемой, необходимо удалить. Когда вы исследуете данные, вам необходимо определить поврежденные записи, ошибки и отсутствующие значения. Во время очистки наборы данных с ошибками или отсутствующими значениями удаляются, заменяются или заполняются [например, с NA (не применимо)].

Требуемые навыки:

Язык сценариев: Python или R

Инструменты обработки данных: Python Pandas, R

4. Исследовательский анализ данных

Теперь, когда у вас есть чистые данные, пришло время изучить их!

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

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

Пример сценария. В примере, описанном на шаге 1, исходя из вашего понимания сезонных тенденций на рынке электронной коммерции, вы можете обнаружить, что половина первых посетителей веб-сайта в летний период потратили более трех минут проверка холодильников.

Вам практически необходимо развить чувство, чтобы замечать странные или интересные закономерности / тенденции во время исследовательского анализа данных.

Инструменты визуализации помогают извлекать закономерности с помощью диаграмм и визуализаций; Методы статистического тестирования пригодятся при извлечении признаков и подтверждении результатов графиками и анализами.

На основе анализа при необходимости на этом этапе могут быть созданы новые функции.

Требуемые навыки:

Некоторые популярные библиотеки визуализации, используемые для исследовательского анализа данных, включают Matplotlib, Seaborn, Numpy, Pandas, Scipy в Python и GGplot2 в R.

5. Моделирование данных

Пришло время решить проблему с помощью алгоритмов машинного обучения и глубокого обучения. Это самая захватывающая фаза всего конвейера обработки данных.

Тестируются разные методы / алгоритмы. Выбирается метод, обеспечивающий максимальную эффективность (с точки зрения прогнозной аналитики). Модель много раз дорабатывается и переоценивается.

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

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

Для построения моделей машинного обучения можно использовать библиотеки Scikit-learn (Python) и CARET (R). Среди различных фреймворков глубокого обучения, доступных в настоящее время, Keras / TensorFlow можно использовать для построения моделей глубокого обучения. Сравните фреймворки в различных аспектах, прежде чем выбрать один.

6. Развертывание

Теперь, когда модель готова, пора сделать ее доступной для конечных пользователей.

Модель должна быть масштабируемой. Когда доступны новые данные, модель можно переоценить и обновить.

Заключительные слова

Важно, чтобы ваш конвейер обработки данных был надежным от начала до конца. Каждый шаг важен.

Если у вас есть какие-либо вопросы о действиях, описанных выше, или вам нужна помощь по соответствующей теме, оставьте строку в разделе комментариев ниже. Я отвечу на ваши вопросы как можно скорее.