Некоторые методы машинного обучения для оценки качества данных

«Мусор на входе, мусор на выходе», в мире данных мы часто слышим эту фразу, которая означает, что если ваши данные «плохие», вы никогда не сможете принимать «хорошие» решения (держим пари, что вы этого не ожидали: P).

Путь от «плохого» к «хорошему» - вот что такое качество данных. Плохие данные могут означать многое, например:

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

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

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

Мой опыт:

Для обеспечения качества данных я также внедрил решения на основе правил, чтобы позаботиться о:

  • Плохая схема
  • Повторяющиеся данные
  • Поздние данные
  • Аномальные данные

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

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

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

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

Давайте посмотрим, как машины помогут нам здесь в обеспечении автоматизированного качества данных или выходе за рамки очевидного?

Прежде чем обсуждать, как, давайте обсудим, почему?

Почему машинное обучение для качества данных?

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

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

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

  • Определить неправильные данные
  • Определить неполные данные
  • Определить конфиденциальные данные для соответствия (возможно, идентификация PII)
  • Дедупликация данных с использованием методов нечеткого сопоставления (иногда просто сделать уникальные данные не удается)
  • Заполните недостающие данные, оценивая исторические закономерности
  • Оповещение о потенциальном нарушении SLA с использованием исторической информации (скажем, используя историческую информацию, система обнаруживает резкое увеличение объема данных, которое может повлиять на SLA)
  • Может помочь в эффективной разработке новых бизнес-правил (определение подходящих пороговых значений)

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

Уменьшение размерности

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

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

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

Пример: UMAP, PCA.

Кластеризация

Кластеризация объединяет данные в группы (кластеры) на основании их сходства и несходства.

Пример: DBSCAN

Обнаружение аномалий

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

Пример: ARIMA

Association Rule Mining

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

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

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

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

До следующего раза,
JD

Ссылки:





Https://engineering.linkedin.com/blog/2020/data-sentinel-automating-data-validation