Вместо предисловия
Данный текстовый материал разработан в рамках курса "Педагогический дизайн" курса "Цифровая трансформация образования " НИУ ВШЭ.
После его изучения Вы сможете:
- Назвать признаки Data Mining проекта;
- Описать ролевой функционал не менее трёх участников Data Mining команды;
- Назвать не менее трёх Data Mining методологий;
- Назвать и отличить друг от друга шесть основных этапов Data Mining проекта в соответствии с методологией CRISP-DM.
Что такое Data Mining и зачем он нужен?
Сам термин Data Mining появился ещё в прошлом веке, однако до сих пор является buzzword и активно используется в маркетинговых целях. Если переводить этот термин дословно как "раскопка/добыча данных" можно ухватить его основную суть. Data Mining - это достаточно большой ярлык, охватывающий процессы по поиску новых знаний из большого количества структурированной или неструктурированной информации. "Добыча" данных подразумевает, что вы ищите нетривиальные и ранее неизвестные знания. Data Mining приходит к нам на помощь в случае когда инструменты ежедневной аналитики не дают нам возможности докопаться до сути и сделать так называемый drill down. Процесс раскопки данных обычно подразумевает использование методов математической статистки, интеллектуального анализа данных, методов оптимизации, моделирования, прогнозирования и т.д.
В целом определить занимаетесь ли вы Data Mining можно определить по следующим признакам:
- Вы ищите новое нетривиальное знание
- Вам необходимо работать с большим массивом структурированных или неструктурированных данных (по сравнению с привычными объёмами)
- Вы используете математические методы и/или методы интеллектуального анализа данных
Как собрать Data Mining команду?
Мы с вами определили, что такое Data Mining и как понять, что вы им занимаетесь. Как только вы осознаёте для себя, что Data Mining это что-то жизненно необходимое (то есть вы смогли доказать себе что существуют задачи, которые невозможно или неэффективно решить иначе) необходимо задуматься о составе команды, которая сможет раскопать ваши данные. Мнения разнятся, но в моём представлении основные роли Data Mining команды (кроме руководителя, конечно) следующие:
- Аналитик данных (Data Analyst)
- Инженер данных (Data Engineer)
- Исследователь данных (Data Scientist)
Теперь о каждом из них подробнее.
Аналитик данных (Data Analyst):
- Интерпретация данных, анализ результатов с использованием статистических методов
- Визуализация данных
- Коммуникация в команде
Фактически перед нами обыкновенный аналитик, однако для эффективного взаимодействия с другими участниками ему необходимо уметь пользоваться инструментами для распределённых вычислений и интеллектуального анализа данных. Сильная сторона аналитика данных - это коммуникация, аналитик данных способен обеспечить взаимодействие Data Mining команды с экспертами предметной области и заказчиками, в том числе за счёт создания инфографичных визуализаций.
Инженер данных (Data Engineer):
- Разрабатывает и поддерживает архитектуру данных проекта
- Собирает данные и выстраивает процессы по их сбору (пайплайны), в том числе автоматизирует их
- Определяет пути повышения качества данных
- Подготавливает данные для аналитиков и исследователей
Инженер данных обеспечивает функционирование инфраструктуры и наличие данных должного качества в нужном виде. Этот специалист настраивает всё так, чтобы у исследователей и аналитиков не было необходимости думать о том, как очищать данные и перекладывать в нужный формат.
Исследователь данных (Data Scientist)
- Разработка решений с использованием интеллектуального анализа данных и их внедрение в процессы организации
- Анализ данных для выявления закономерностей и тенденций
- Интерпретация данных для поиска решений и возможностей
Данный специалист зачастую должен быть хорошим математиком. Исследователь данных обеспечивает глубинный анализ данных для поиска инсайтов и неявных закономерностей.
Какие существуют Data Mining методологии?
Вот мы собрали команду, теперь необходимо понять, как мы будем действовать. Необходимо определиться с методологией ведения проекта. В рамках данного материала целесообразно описать три общепринятых методологии для Data Mining проектов:
- KDD
- SEMMA
- CRISP-DM
Обсудим каждый отдельно.
KDD (Knowledge Discovery in Databases), исходя из названия, описывает процесс получения новых знаний из баз данных. Фактически Knowledge Discovery in Databases не задает набор методов обработки или пригодные для анализа алгоритмы, он определяет последовательность действий, которую необходимо выполнить для того, чтобы из исходных данных получить знания. Данный подход универсальный и не зависит от предметной области, что является его несомненным достоинством.
SEMMA (Sample, Explore, Modify, Model и Assess) описывает последовательность шагов интеллектуального анализа данных, она шире, чем KDD, однако не затрагивает бизнес-задач.
CRISP-DM (Cross-Industry Standard Process for Data Mining) по сравнению с предыдущими охватывает не только процесс анализа данных, но и бизнес-требования, для них в данной методологии выделен отдельный шаг. Кроме того, в отличие от двух других методологий здесь предусмотрен "шаг назад", в случае если появляются новые вводные. Кроме того, данная схема циклична и позволяет постоянно совершенствовать подходы в рамках одного проекта. В рамках ведения Data Mining проекта данная методология наиболее жизнеспособна. Рассмотрим её этапы.
Основными этапами Data Mining процесса по методологии CRISP-DM являются:
Понимание бизнеса (Business Understanding) – этап, на котором определяются цели проекта и бизнес-требования. Затем эти знания конвертируются в постановку задачи интеллектуального анализа данных и предварительный план достижения целей проекта.
- Определить бизнес-цели
- Оценить ситуацию
- Определить цели анализа данных
- Составить план проекта
Понимание данных (Data Understanding) – первичный сбор данных и разведочный анализ, оценка уровня качества данных.
- Собрать исходные данные
- Описать данные
- Исследовать данные
- Проверить качество данных
Подготовка данных (Data Preparation) – проведение необходимых преобразований данных для последующего моделирования, в том числе приведение к нужным форматам.
- Отобрать данные (таблицы, записи и атрибуты)
- Очистить данные, в т.ч. выполнить их конвертацию и подготовку к моделированию
- Сделать производные данные
- Объединить данные
- Привести данные в нужный формат
Моделирование (Modeling) – на данном этапе производится построение и настройка моделей. На данном этапе может возникнуть сделать шаг назад к фазе подготовки данных, в случае если нужны дополнительные данные или иной формат.
- Выбрать методику моделирования
- Сделать тесты для модели
- Построить модель
- Оценить модель
Оценка (Evaluation) – оценка качества модели, в также проверка результатов моделирования на соответствие бизнес-требованиям.
- Оценить результаты
- Сделать обзор процесса
- Определить следующие шаги
Внедрение (Deployment) – данный шаг является финальным внутри цикла, под внедрением подразумевается использование модели на постоянной основе для решения поставленных ранее бизнес-задач.
- Запланировать развертывание
- Запланировать поддержку и мониторинг развернутого решения
- Сделать финальный отчет
- Сделать обзор проекта
Таким образом, в первой части учебного материала мы определились с тем, занимаемся мы Data Mining или нет, какую нам нужно собрать команду и по какой методологии действовать.