О проблемах в промышленных данных

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

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

  • 100% датасетов в промышленности, с которыми я сталкивался (НЛМК, ММК, ТМК, ЧТПЗ, ПМХ, Росатом, ГПН, Сибур и др.), имели хоть какие-то типовые проблемы
  • Мало внимания (мало публикации и докладов) из-за закрытости темы промышленных данных, уникальности производств/данных/проблем
  • Уникальность некоторых проблем промышленных данных - можно и не вспомнить о проблеме при работе с данными. Иногда некоторые проблемы упускаются из виду даже специалистами производства, глубоко погруженными в технологический процесс
  • Помнить о проблемах важно на всем жизненном цикле data science проекта: при проведении EDA (exploratory data analysis, разведочный анализ данных), проектировании, прототипировании и реализации решении в промышленности
  • И последнее, о чем уже было сказано выше: Проблемы могут стать барьером при применении методов машинного обучения и построении доменных/физических моделеи (искажать результаты, сделать применение невозможным), что становится особенно актуальным с учетом роста популярности машинного обучения

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

Временной ряд – это упорядоченная во времени последовательность точек, представляющая собой характеристику процесса

Типичный временной ряд выглядит следующим образом:

О проблемах в промышленных данных

Если разбивать проблемы по причинам возникновения, то можно выделить следующие группы:

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

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

Проблемы, связанные с обработкой сигналов

О проблемах в промышленных данных

Проблемы, связанные со сбором данных

О проблемах в промышленных данных

Проблемы, связанные с изменением модели, из которой генерируются данные

О проблемах в промышленных данных

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

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

  • Короткая история/проклятье размерности

  • Несбалансированность классов

  • Недостаток значений класса

  • Отсутствие частоты дискретизации

  • Разреженность

  • Мультиколлинеарность

  • Разная амплитуда сигналов

Обзор проблем в данных

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

Пропущенные значения (потеря данных)

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

Внезапные сдвиги (скачки)

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

Изменения диапазона и дрифт

Аналогичны Внезапным сдвигам. Могут проявляться резко и медленно (дрифт данных).
Аналогичны Внезапным сдвигам. Могут проявляться резко и медленно (дрифт данных).

Отсутствие или изменение частоты дискретизации

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

Зашумленные данные и меняющийся уровень шума

Слишком высокий или изменяющийся во времени уровень шума в данных.
Слишком высокий или изменяющийся во времени уровень шума в данных.

Низкая уникальность измерений

Значения становятся неточными из-за округления, высокой апертуры либо других факторов.
Значения становятся неточными из-за округления, высокой апертуры либо других факторов.

Выбросы и невозможные значения

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

Несбалансированность классов

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

Отсутствие и недостаток значений в классе

Отсутствие или недостаток значений, например, в аномальном классе, делает невозможным использование классов методов машинного обучения с учителем (supervised) или частичного обучения с учителем (semi-supervised).

Короткая история данных

История записи данных слишком коротка для их анализа и обучения моделей. Большое число признаков при малом объеме данных может приводить к "проклятью размерности".

Единицы измерения

Единицы измерения не одинаковы для всех сигналов или источников данных, например, сантиметры и дюймы.

Синхронизация времени

Временные метки измерений, поступающих из разных источников, могут немного отличаться, например, UTC+0 и UTC+3.

Типы и формат данных

Различные типы данных, например, float и string или формат данных.

Разная амплитуда сигналов

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

Разреженность

Данные, в которых большинство значений отсутствуют или нулевые.

Мультиколлинеарность

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

Дубликаты

Наличие дублированных значений в выборке данных.

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

Я создал телеграм канал DataKatser, где появляюсь гораздо чаще и делюсь своими мыслями и интересными кейсами по data science, машинному обучению и искусственному интеллекту. Буду рад вашей подписке!

22
Начать дискуссию