ОБНАРУЖЕНИЕ АНОМАЛИЙ
БУРНАЕВ ЕВГЕНИЙ
КАНДИДАТ ФИЗИКО-МАТЕМАТИЧЕСКИХ НАУК
ДОЦЕНТ ЦЕНТРА СКОЛТЕХА ПО НАУЧНЫМ И ИНЖЕНЕРНЫМ ВЫЧИСЛИТЕЛЬНЫМ ТЕХНОЛОГИЯМ ДЛЯ ЗАДАЧ С БОЛЬШИМИ МАСИВАМИ ДАННЫХ
ПРИМЕНЕНИЕ СКВОЗНЫХ ТЕХНОЛОГИЙ ДЛЯ РЫНКА ТЕХНЕТ
И ПРОГНОЗ НЕИСПРАВНОСТЕЙ
Сегодня я расскажу вам про обнаружение аномалий и прогнозирование поломок. Что такое предсказательное техническое обслуживание? Современные инженерные системы оборудованы большим количеством датчиков. Как следствие мы можем собирать большое количество информации о работе этих систем. Естественным образом возникает желание на основе этих данных делать предсказательную аналитику для того, чтобы повысить эффективность и безопасность работы этих инженерных систем.
ПРЕДСКАЗАТЕЛЬНОЕ ТЕХНИЧЕСКОЕ ОБСЛУЖИВАНИЕ
Как же происходит обслуживание оборудования? Стандартным подходом является обслуживание по регламенту. Грубо говоря, это когда составляется план, в соответствии с которым на регулярной основе происходит обследование оборудования, и в зависимости от того, надо или не надо чинить, происходит остановка и ремонт. Хочется сделать этот процесс более адаптивным. Действительно, на основе данных, которые поступают с датчиков, и методов предиктивной аналитики можно прогнозировать, что скоро произойдет поломка того или иного узла или агрегата. По такого рода данным и соответствующим прогнозам можно принимать решение по поводу того, нужен ремонт или нет, и можно оптимизировать процесс доставки запчастей.
На практике очень важен выбор стратегии техническго обслуживание. Имеется несколько противоречащих друг другу критериев: надежность и доступность оборудования с одной стороны и стоимость ремонта с другой. Именно машинное обучение и анализ данных, поступающих с датчиков, могут позволить сбалансировать эти критерии и сделать регламент по обслуживанию более адаптивным и эффективным.
Системы интеллектуального мониторинга обслуживания состоят из трех уровней.
1
На первом происходит сбор и передача данных
Поскольку датчики для сбора данных зависят от того, какое конкретно производство рассматривается, этот уровень специфичен для индустрии.
2
На следующем уровне данные попадают в базу данных
На следующем уровне данные попадают в базу данных, где они предобрабатываются, приводятся в некий единый формат, и применяются методы обучения для того, чтобы построить модели для прогноза поломок. После этого модели для прогноза поломок внедряются в производственный процесс, и на основе этих прогнозов этот производственный процесс оптимизируется. Второй уровень, на котором эти модели строятся и данные предобрабатываются, может быть более-менее унифицирован, потому что применяются методы машинного обучения, которые не зависят от специфики той или иной индустрии.
3
На третьем уровне прогнозы модели используются для повышения эффективности производственного процесса
Этот уровень не может быть унифицирован, так как этот процесс сильно зависит от специфики индустрии.
ПРИМЕР
Рассмотрим конкретный прикладной проект. Речь пойдет о построении предсказательной модели поломок вспомогательной силовой установки, необходимой для выработки электричества и запуска основных турбин пассажирского самолета. В рамках данного проекта мы обрабатывали исторические данные с примерно 30 самолетов за несколько лет.

Эти данные представимы в виде многомерных временных рядов и потоков событий, где каждое событие - ошибка какого-то типа или поломка. Необходимо было построить модель, которая на вход принимает конкретные показатели телеметрии, а на выходе прогнозирует, правда ли, что в некоторый будущий промежуток времени будет поломка определенного типа, а также оценивает достоверность этого прогноза и выдает инженеру объяснение того, почему был сделан тот или иной прогноз. В этом проекте были очень жесткие требования на уровень ложных тревог и на точность прогноза.
Какие же трудности мы были вынуждены преодолеть на пути реализации этого приложения?
1
Это большой объем данных (от 1 терабайта данных за полет)
2
Большая размерность (данные содержат показания нескольких сотен параметров)
3
В данных есть шум и пропуски
Система, которая была реализована для прогнозирования поломок вспомогательной силовой установки, состоит из нескольких компонент. Одной из важных компонент этой системы является модель для обнаружения аномалий. Действительно, если во временных рядах телеметрии наблюдается большое количество аномалий, то, скорее всего, они свидетельствуют о какой-то деградации системы. Понятно, что деградация системы должна привести к поломке. Научившись детектировать в режиме реального времени эти нетипичные наблюдения определенного вида, мы сумели прогнозировать поломки вспомогательной силовой установки с хорошей точностью.
Результат
1
Раннее предупредление о некоторых типах поломок
2
Сокращение затрат от простоя самолета из-за непредвиденной поломки на ~34%
3
Выявление поломок с точностью ~90% (на 9 правильно предсказанных поломок приходится 1 ложная тревога)
обнаружение аномалий
Давайте теперь поговорим о том, что же такое обнаружение аномалий. Как я уже говорил, это одна из важнейших компонент любой системы предсказательного технического обслуживания. Точного определения того, что такое аномалия, не существует, Это определение очень сильно зависит от контекста, от конкретного приложения, в рамках которого необходимо искать, что такое нетипичное наблюдение. Один известный статистик дал такое определение: "Аномалия - это такое наблюдение, непохожее не основную массу наблюдений, при этом возникает подозрение, что это наблюдение было порождено каким-то другим статистическим процессом". Основные типы аномалий - "выбросы" и случай, когда данные зависят от времени и мы видим, что до определенного момента во временном ряду есть какая-то структура, которая после некоторого момента времени, называемого разладкой, существенно меняется (наблюдения после разладки - аномалии).

Давайте поговорим о методах обнаружения аномалий на основе одноклассовой классификации и об их приложениях. Что такое одноклассовая классификация? Мы предполагаем, что у нас есть какая-то историческая выборка данных, каждое наблюдение в которой - некоторый p-мерный вектор, где каждый вектор содержит значение p параметров, p показателей, и таких наблюдений у нас m штук. По этой выборке мы должны построить модель - функцию, которая на практике будет реализована с помощью компьютерной программы, функция на вход принимает новое наблюдение и выдает значение +-1 - правда ли, что это аномалия. Мы должны по имеющейся выборке такую функцию построить, которую потом сможем применять для вновь поступающих данных.
Как можно геометрически интуитивно описать, что такое одноклассовая классификация? Мы предполагаем, что если данные о системе, которую мы наблюдаем, нормальные, то они в некотором смысле сконцентрированы.

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

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

На основе этих прогнозов можно понять, насколько вероятно обледенение, такого рода информация очень важна для аварийных служб. Для того чтобы обеспечить высокую точность прогноза, данные, на основе которых строится модель, должны быть высококачественные. Проблема состоит в том, что из-за того, что зимой холодно, датчики ломаются, и данные, которые поступают в базу данных, могут быть некачественными. Если мы на таких данных построим модель для прогнозирования температуры над поверхностью дороги, эта модель будет неточной. Поэтому возникает задача обнаружения неработающих датчиков, которую можно сформулировать как задачу обнаружения аномалий. Потому что если во временных рядах наблюдается аномалия, то она, скорее всего, является следствием того, что соответствующий датчик сломался.
Для решения этой задачи можно применять стандартные методы одноклассовой классификации и просто классификации. Берутся многомерные временные ряды соответствующих датчиков, по ним строятся какие-то признаки, и применяются, допустим, деревья решений. В данном случае оказался важным учет так называемой привилегированной информации. Дело в том, что в исторической выборке мы можем достоверно идентифицировать, является ли данное наблюдение аномалией, если посмотрим на поведение временного ряда как до этого потенциально аномального наблюдения, так и после него. Естественно, на этапе применения модели у нас такой возможности нет.
Оказалось, что если мы разработаем метод построения модели машинного обучения, которая может делать учет будущего поведения временного ряда после аномалии на этапе обучения, то мы можем существенно повысить точность обнаружения аномалий, что мы собственно и проделали. Какие же уроки можно извлечь из этих проектов и требований заказчика? Зачастую необходимо собирать данные с оборудования, которое в некотором смысле устарело, то есть на нем нет необходимых датчиков.
  • Во-первых, требуется разработка дешевых эффективных датчиков.
  • Во-вторых, требуется беспроводная передача данных в промышленных условиях. Понятно, что в условиях производства такая передача данных затруднена из-за большого количества металла вокруг и других проблем.
Надо понимать, что, поскольку различных типов данных и практических ситуаций очень много, требуется применять целый "зоопарк" методов машинного обучения и зачастую разрабатывать новые. Этот процесс содержит много рутины и повторяющихся шагов, которые делаются из проекта в проект, поэтому здесь можно и нужно делать автоматизацию.
Не надо забывать о моделях на основе физики. Например, мы хотим построить модель прогнозирования поломок турбины. На практике примеров таких поломок у нас либо очень мало, либо совсем нет. Если мы возьмем физическую модель, просимулируем работу турбины и проэмулируем какие-нибудь поломки в ней, то на основе этой искусственной выборки данных можно построить хоть какую-то модель машинного обучения, которую потом можно дообучить по вновь поступившим данным с работающей турбины. Поэтому необходимо при построении предиктивных моделей учитывать физику процессов.
резюме
В настоящее время существует 2 крайности: есть компании, занимающиеся консалтингом и решающие конкретные задачи в небольших проектах, из такой деятельности проекта, позволяющего реализовать законченный продукт, может не получиться, а есть компании, делающие очень общие платформы индустриального Интернета вещей, предсказательно-технического обслуживания, платформы зачастую бывает сложно адаптировать под нужды конкретного заказчика. На мой взгляд, золотой середины еще нет, так что нам есть куда стремиться.