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

В этой статье рассматриваются следующие вопросы:
1. Что такое продукт данных
2. Проблемы преобразования данных
3. Планирование преобразования данных
4. Рекомендации по преобразованию данных.

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

1. Что такое продукт данных

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

Зачем развертывать? потому что в реальной жизни вы можете не столкнуться с файлом CSV для создания предикатов, как вы это делали при использовании ноутбука jupyter.

На самом деле, если вы не можете производить свой конвейер ML, он так же хорош, как мусор.

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

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

2. Проблемы преобразования данных

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

  • Качество данных
    Когда вы собираете данные из нескольких источников, важно выполнить правильное сопоставление и сопоставление, чтобы гарантировать, что данные не будут потеряны, дублированы, заменены или вообще не обновлены. Чтобы иметь качественные данные, вы должны иметь точность, правильность, надежность, актуальность и своевременность.
  • Отсутствие талантов
    Наличие необходимого опыта имеет решающее значение для успешного завершения проекта данных. Большинству компаний не хватает такого опыта, и они нанимают сторонних поставщиков.
    Потеря времени
    Преобразование данных — это ресурсоемкая и трудоемкая задача, которая часто занимает почти половину всего времени проекта. По статистике, специалисты по данным тратят 60% времени на очистку и организацию данных. Если все сделано неправильно, это может привести к еще большей потере времени.
  • Отсутствие надлежащих инструментов
    Без надлежащих специализированных инструментов преобразование данных не будет эффективным. По данным Forbes, 23 % организаций по-прежнему используют электронные таблицы для работы с данными, 17 % организаций используют информационные панели и только 41 % организаций используют прогнозные модели и расширенную аналитику.
  • Стоимость
    В зависимости от инфраструктуры и опыта в течение жизненного цикла преобразования данных могут возникнуть дополнительные расходы.
  • Межфункциональная координация
    Проект по преобразованию данных не может быть успешным, если все межфункциональные команды не будут работать вместе в гармонии и в рамках четко определенных ролей и границ. Иногда вы можете столкнуться с конфликтом интересов, что приводит к неудачам.

3. Планирование преобразования данных

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

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

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

Обычно бывает два случая. Либо проблема уже выявлена, либо нет. Соревнования по науке о данных, которые проводятся на различных веб-сайтах, таких как kaggle.com или drivendata.com, являются такими примерами, когда у вас есть общие наборы данных вместе с критериями оценки. Однако сценарии реальной жизни нельзя обобщать.

Выявление проблемы

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

Подумайте, как бы вы определили, определили и сформулировали проблему?
Какие данные вы будете собирать?

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

Итак, какие данные вам нужны?
Как бы вы определили критерии успеха?

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

  • Это исследовательский проект или прогнозная задача?
  • Если прогнозный, это задача классификации или регрессии, иначе кластеризация?
  • Будет ли это контролируемое, неконтролируемое или репрезентативное обучение и т. д.?
  • Какова переменная отклика модели ML? Как это интерпретировать?
  • Где можно использовать ответ модели ML?
  • Каковы ограничения, заинтересованные стороны, критерии успеха, контекст и т. д.?
  • Какова текущая инфраструктура и ландшафт данных?
  • Задайте все возможные вопросы, что бы убрать двусмысленность.

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

Понимание домена

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

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

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

Анализ данных

Обычно его называют EDA или исследовательским анализом данных. Цель этого шага — максимизировать понимание данных и лежащие в их основе структуры. Вы можете определить преобразования, которые помогут улучшить результаты модели ML.

При выполнении EDA мы обращаем внимание на некоторые вещи:

  • Выявление и работа с нулями
  • Выявление выбросов, нерелевантных и зашумленных структур
  • Определение взаимосвязей между атрибутами
  • Определение тенденций и закономерностей в данных
  • Выводы о том, являются ли отдельные факторы статистически важными
  • Ранжированный список важных факторов

Для EDA доступны различные инструменты и методы.
Чтобы узнать больше об EDA, вот хорошая отправная точка.

Сам EDA не называется представлением данных, но он ведет к хорошему преобразованию и представлению данных, в конечном итоге помогая в создании точного предиктора.

Преобразование данных

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

  • Организация данных
    Это относится к оптимизации ваших записей таким образом, чтобы их было легче обрабатывать и понимать. Это может включать применение соглашений об именах, удаление дубликатов, объединение, слияние, конкатенацию данных/источников данных и т. д.
  • Обнаружение аномалий
    Это несоответствия в данных, такие как фальшивые записи, выбросы, мусорные данные, которые не имеют смысла и которые могут повлиять на нормальное поведение источника данных. Это важная задача, и неправильное ее выполнение часто приводит к неудачам.
  • Уменьшение размерности
    Каждый набор данных имеет определенные атрибуты, также известные как размерность. Здесь вы решаете, какие атрибуты имеют первостепенное значение, а какие нет. Для этого используются различные методы, такие как:
    - Автоэнкодеры
    - PCA (анализ главных компонентов)
    - LDA (линейный дискриминантный анализ)
    - GDS (обобщенный дискриминантный анализ)
     – матричная факторизация и т. д.

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

  • Разработка функций
    Это процесс использования данных для извлечения/разработки новых функций или переменных, которые помогут в контролируемом обучении и точности модели. Эта часть должна быть выполнена во время конвейера машинного обучения.
    Ниже приведены некоторые типичные примеры:
     — Частота клиентов по датам визитов клиентов.
     – Функции запаздывания для прогнозирования временных рядов.
     – Возрастная группа по возрастам разных пассажиров.
     – Классификация объектов на основе их значения (критический/важный/нормальный и т. д.)

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

  • Специфические отраслевые методы
    В разных отраслях используются разные хорошо зарекомендовавшие себя формулы преобразований. Они играют важную роль в конвейере вашей модели машинного обучения.
    Вот некоторые из примеров:
    - Modified Dietz
    - PD, LGD в финансах
    - NBV, NPV, CEB в активах и т. д.

Модели машинного обучения

В этом подразделе будет кратко рассмотрено следующее:

  • Перекрестная проверка и оценка
    Перекрестная проверка — это метод, позволяющий узнать, одинаково ли хорошо модель машинного обучения работает с невидимыми данными, как она работает с обучающими данными. Другими словами, чтобы убедиться, что модель хорошо обобщается. Существуют различные методы, такие как:
    - Кросс-валидация k-Fold,
    Стратифицированная перекрестная проверка k-Fold,
    Кросс-валидация с исключением одного,
     – Метод удержания

    С другой стороны, оценка поможет вам количественно оценить эффективность вашей модели машинного обучения. Он предоставляет вам такие отчеты, как:
    - Матрица путаницы,
    - Отчет о классификации и т. д.
  • Развертывание
    На этом этапе ваша модель машинного обучения превратится в продукт данных. Иногда эта задача может усложняться в зависимости от различных факторов, которые выходят за рамки данной статьи. Модель машинного обучения интегрируется с существующей производственной средой и начинает помогать в принятии решений на основе данных.
  • Мониторинг производительности и анализ дрейфа
    Во время производства модели машинного обучения работают с данными реального мира, которые постоянно меняются каждый день. Это означает, что модель машинного обучения должна не отставать от постоянного потока новых, невидимых данных и быть актуальной, тем самым сохраняя способность к прогнозированию. Приходится проводить переобучение модели на вновь полученных данных, а также использовать инструменты, специализирующиеся на мониторинге производительности модели, такие как Grafana, Neptune, Evidently, Arize, Superwise. и многие другие.

4. Передовой опыт преобразования данных

Ниже приведены некоторые из лучших практик для работы с огромным проектом по преобразованию данных.

  • Поставьте перед собой четкую цель
    Определение проблемы — это важный и ответственный шаг в любом проекте. Это также поможет вам установить четкую цель, привлечь нужных заинтересованных лиц и использовать соответствующие методы сбора данных и, следовательно, выбрать правильное направление. Убедитесь, что у вас есть четко определенная цель, прежде чем приступать к действию.
  • Сначала профиль данных
    Вы должны понимать состояние своих необработанных данных с помощью профилирования данных, объем данных, с которыми вы будете работать, типы данных, заголовки столбцов, диапазоны значений, отношения атрибутов, числа строк, нежелательной частоты, дублирования и пропущенных значений и т. д.
  • Очистка данных перед преобразованием
    Здесь вы фактически начинаете первый практический шаг преобразования. Данные должны быть очищены перед использованием. Это потребует от вас знания формата назначения и внесения необходимых изменений в поступающие необработанные данные. Некоторыми примерами могут быть импутации, форматы даты, работа с ненужными данными и т. д.

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

  • Измените данные в целевом формате
    Убедитесь, что вы устраняете разрозненность, которая создает препятствия в процессе анализа. Множественным источникам данных нужно время, чтобы объединиться, чтобы получить значимую информацию. Согласованные данные означают меньше обработки, и аналитики получают больше времени для решения других вопросов.
  • Таблицы измерений и фактов
    Преобразованные данные обычно передаются либо в таблицы измерений, либо в таблицы фактов. Чтобы узнать больше, я предлагаю вам нажать Таблица фактов против таблицы измерений.
    - Таблицы измерений должны быть заполнены в первую очередь и должны содержать данные в контексте кто, что, когда, как, где и как. например Клиенты, продукты, сайты и т. д.
     – Таблицы фактов должны заполняться последними и содержать данные о транзакциях и/или в контексте "сколько".
  • Аудит отслеживания и проверка качества данных
    Аудит отслеживания помогает фиксировать записи, которые вы загружаете на каждом этапе, и время, когда это произошло. Тесты на качество гарантируют, что у вас нет дубликатов или нулевых данных, а также что структура правильная.
    Это гарантирует, что вы сможете сказать, откуда были взяты данные, когда у одного из заинтересованных лиц возникнет вопрос. Он также проверяет правильность показателей. Наличие правильных данных, подкрепленных доказательствами, повышает доверие к данным и улучшает взаимодействие с конечными пользователями.
  • Постоянное взаимодействие с конечными пользователями
    Ценность преобразованных данных определяется тем, что конечный пользователь использует их постоянно. Выполняйте регулярные тесты данных, чтобы исправить любые дефекты и обновления.

Запланируйте сеанс DDIChat в разделе Наука о данных / AI / ML / DL:



Подайте заявку на участие в программе DDIChat Expert здесь.
Работайте с DDI: https://datadriveninvestor.com/collaborate
Подпишитесь на DDIntel здесь.