¬аше окно в мир —јѕ–
 
Ќовости —татьи јвторы —обыти€ ¬акансии Ёнциклопеди€ –екламодател€м
—татьи

8 ма€ 2020

ќбнаружение аномалий „ѕ” с помощью машинного обучени€ без учител€. „асть 3: методы кластеризации данных

Ћу „жан (Lou Zhang)

ѕеревод: јндрей Ћовыгин
ќригинал публикации на сайте ѕланета —јћ
¬ первой и второй част€х статьи Ђќбнаружение аномалий „ѕ” с помощью машинного обучени€ без учител€ї Ћу „жан (Lou Zhang), главный инженер-программист MachineMetrics, рассмотрел бизнес-логику и предварительную обработку данных, св€занную с обнаружением аномального поведени€ на станках. ѕредлагаем к прочтению третью часть, из которой вы узнаете о методах обработки и кластеризации данных.
ќригинал статьи читайте здесь.

¬ыделение сигнатур деталей и создание трансформаций

 ак только мы получим чистый сигнал, нам нужно разделить этот сигнал на отдельные компоненты, сигнатуру обработки детали.  ажда€ сигнатура обработки детали представл€ет одну изготавливаемую деталь и соответствующие позиции, подачи, скорости и нагрузки, которые с ней ассоциированы.
машинное обучение „ѕ”

ћы берем каждую сигнатуру и выстраиваем их р€дом друг с другом, создава€ таблицу, в которой кажда€ Ђпеременна€ї представл€ет собой уникальную создаваемую деталь и св€занные с ней данные.
машинное обучение „ѕ”

ќпределение скрытой структуры сигнатур деталей

ƒл€ нашего следующего шага мы обратимс€ к –обу ’индману и его anomalous пакету, чтобы обнаружить скрытую структуру каждой переменной. Ёто нужно сделать потому, что исходные значени€ каждой сигнатуры слишком волатильны, чтобы сравнивать их друг с другом, даже когда они сглаживаютс€ путем вз€ти€ скольз€щих средних или других преобразований. “аким образом, мы должны найти способ представлени€ этих сигнатур более стабильным образом. ’индман определил несколько ключевых метрик временных р€дов, которые отражают присущие им качества. ћы выбираем из них наиболее подход€щие дл€ нашего случа€, которые описаны ниже в нетехнических терминах. ќни используютс€ дл€ количественной оценки внутренних факторов сигнатуры каждой детали.
машинное обучение „ѕ”

  1. Ёнтропи€: измер€ет уровень белого шума в ваших р€дах.
  2. јвтокоррел€ци€ первого пор€дка. јвтокоррел€ци€ первого пор€дка Ч это показатель коррел€ции последовательных элементов во временных р€дах. — точки зрени€ непрофессионала, он измер€ет, насколько предсказуем р€д, если вы знаете предыдущий элемент р€да. Ёто актуально, потому что функции автокоррел€ции аномальных р€дов часто очень сильно отличаютс€ от функций неаномальных р€дов. ѕо сути, это еще одна мера случайности временного р€да, котора€ дл€ аномальных р€дов часто бывает чрезвычайно высокой или низкой (может быть очень низкой, если станок ведет себ€ хаотично, или очень высокой, если есть необычное повторение или предсказуемость).
  3. —двиг уровн€: максимальное изменение средних значений в р€ду при заданном окне. ’орошо подходит дл€ обнаружени€ аномалий, когда станок испытывает внезапное изменение показателей.   примеру, когда метрики внезапно перепрыгивают с одного уровн€ на другой.
  4. »зменение дисперсии: максимальное изменение дисперсии в серии. ’орошо подходит дл€ обнаружени€ аномалий, когда станок демонстрирует внезапное изменение дисперсии. Ќапример, когда море внезапно становитс€ спокойным после шторма или когда станок становитс€ необычайно тихим.
  5.  ривизна: сообщает, насколько Ђизогнутаї сигнатура детали. «начение Ч это коэффициент многочлена второго пор€дка (x2) при подгонке к р€ду. Ёто актуально, потому что циклы деталей имеют искривление из-за циклического характера механической обработки, а значение кривизны одинаково среди неаномальных кривых.
  6. ќстроконечность: дисперси€ остатков при подгонке к линейной кривой. Ќазываетс€ Ђостроконечностьї, потому что р€ды, которые имеют больше пиков, имеют более высокую дисперсию остатков.
  7. ѕлоские точки: количество плоских точек в р€ду с использованием дискретизации. ’орошо подходит дл€ определени€, когда станок глохнет или зависает.
машинное обучение „ѕ”

 ажда€ сигнатура детали теперь представлена этими семью измерени€ми. Ќа основе этих атрибутов обнаруживаютс€ аномалии, которые свод€тс€ ко всему временному р€ду. –езультирующа€ таблица выгл€дит следующим образом, кажда€ сигнатура разбита на эти характеристики.  ажда€ сигнатура детали Ч это одна строка.

машинное обучение „ѕ”

ѕроецирование скрытых элементов на 2D-плоскость с использованием PCA

 ак только мы получим эти метрики, мы применим PCA к этим семи измерени€м, чтобы свести их к двум главным компонентам. «атем мы построим две главные компоненты на двумерной диаграмме рассе€ни€.

машинное обучение „ѕ”

√л€д€ на график выше, мы можем видеть, что существует центральный кластер сигнатур деталей и некоторое количество сигнатур, разбросанных по кра€м и на некотором отдалении. “е, которые Ђдалекої, Ч это наши аномалии. “е, которые ближе, могут отражать погрешность измерени€ или €вл€ютс€ незначительными отклонени€ми от обычной обработки, включающими в себ€ такие сценарии, как небольшое отклонение нагрузки или скорости шпиндел€ из-за условий окружающей среды.

ѕочему мы не использовали преобразовани€?

—ледует отметить, что мы протестировали несколько преобразований наших данных, в том числе логарифмические преобразовани€, скольз€щие средние, скольз€щее стандартное отклонение и первую производную. ћы обнаружили, что использование непреобразованной сигнатуры €вл€етс€ наиболее эффективным способом обнаружени€ аномалий, как наиболее отделенных от других точек в пространстве 2D PCA. Ёто также имеет смысл теоретически, так как:

  1. Ћогарифмическое преобразование р€да выравнивает остроконечности в каждом р€ду, что может исключать критическую информацию;
  2. —кольз€щее среднее делает то же самое и удал€ет ключевые признаки, обнаруженные пакетом anomolous;
  3. —кольз€щее стандартное отклонение может пренебречь важными элементами при усилении атрибутов, св€занных с дисперсией, что может быть не тем, что мы хотим;
  4. ѕерва€ производна€ может акцентировать изменени€ в сигнатуре, которые относительно незначительны, и, таким образом, скрыть истинную природу сигнатур.

»спользование кластеризации дл€ вы€влени€ выбросов

ћы, конечно, можем видеть выбросы, но использование кластеризации €вл€етс€ стандартизированным способом определени€, когда что-то €вл€етс€ выбросом. ћы используем алгоритм DBSCAN, который обнаруживает кластеры, рису€ окружность вокруг каждой точки и ища другие точки в ее окрестности. ƒл€ DBSCAN требуютс€ два критических аргумента Ч Ђэпсилонї, представл€ющий собой круговую область, нарисованную вокруг каждой точки дл€ определени€ окрестностей кластера, и Ђпорог минимальных точекї, который представл€ет собой число точек, которые должны находитьс€ в этой окрестности, чтобы его можно было рассмотреть как кластер.

»ллюстраци€ DBSCAN приведена ниже. ЂЅазовыеї точки считаютс€ неаномальными, Ђграничныеї точки, которые наход€тс€ на границе круга, также €вл€ютс€ неаномальными. ќднако Ђшумовыеї точки, которые полностью наход€тс€ за пределами центральной области, €вл€ютс€ аномали€ми.

машинное обучение „ѕ”

ќпределение эпсилона

ѕроцесс настройки требовал рассмотрени€ распределени€ данных и выбора параметров, которые изолировали небольшую часть точек, но не исключали полностью аномалии. „тобы получить приблизительный пор€док величины эпсилона, мы строим распределени€ дл€ √лавной компоненты 1 и √лавной компоненты 2, использу€ этот конкретный сценарий в качестве примера большинства сценариев.
машинное обучение „ѕ”

машинное обучение „ѕ”

»з-за центрировани€ главные компоненты примерно нормально распределены со средним нулем и стандартным отклонением 1,5. ѕри нормальном распределении 68% наблюдений охватываютс€ одним стандартным отклонением, 95% Ч двум€ и 99,7% Ч трем€.
машинное обучение „ѕ”

Ёто означает, что при стандартном отклонении главной компоненты, равном 1.5, ~68% наблюдений приходитс€ на значени€ между -1.5 и 1.5, 95% на значени€ от -3 до 3, а 99,7% на значени€ от -4.5 до 4.5.

ћы знаем, что без учета аномальных станков средний показатель брака дл€ клиентов MachineMetrics, включа€ человеческую ошибку, составл€ет примерно 1/1000 деталей, что означает степень успешности в 99,9% (заказчики MachineMetrics в совокупности изготовили 327 миллионов деталей, а 224 тыс. были испорчены). ’от€ этот показатель может показатьс€ высоким, мы должны помнить, что наши клиенты Ч это в основном небольшие механические цеха, у которых может не быть большой серийности одной и той же детали.  роме того, больша€ часть наших клиентов Ч это специализированные мастерские, которые производ€т детали на заказ дл€ других компаний, что дает им меньше времени дл€ совершенствовани€ производственного процесса и, таким образом, оставл€ет больше места дл€ совершени€ ошибок.

машинное обучение „ѕ”

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

ѕри нормальном распределении 99,9% наблюдений наход€тс€ в пределах 3 стандартных отклонений, что в нашем случае составл€ет ± 4,5 единицы в значени€х главных компонент. ѕринима€ во внимание тот факт, что точность (предотвращение ложных срабатываний) более важна, чем отзыв (захват всех аномалий) при первом пилотировании этого метода, мы устанавливаем наш порог эпсилона равным 4 стандартным отклонени€м, то есть точки должны отсто€ть на 6 единиц от центрального кластера, чтобы называтьс€ выбросами/аномали€ми. ћы считаем точность более важной, потому что клиенты могут игнорировать уведомлени€, если их слишком много, и мы хотим избежать ненужной паники*.

*эта часть все еще находитс€ в стадии пилота и параметры могут быть изменены

ќпределение минимального порогового значени€

ѕорог минимальных точек устанавливает минимальное количество точек, которые должны быть сгруппированы вместе, чтобы их можно было рассматривать как независимый кластер, а не просто как точки выброса. Ёто может быть полезно в тех случа€х, когда на самом деле нет выбросов, а происходит смена инструмента или случаютс€ другие системные, но нормальные ситуации. ¬ этих случа€х станок может сбрасыватьс€ в нормальное состо€ние за короткий промежуток времени. ћы определ€ем этот порог в 10 точек.

“аким образом, мы определ€ем кластер как группу, в которой должно быть минимум дес€ть точек, а размер радиуса эпсилона равен 6 единицам. ¬се, что находитс€ на рассто€нии больше 6 единиц от основного облака и имеет менее 10 точек р€дом, €вл€етс€ аномалией. ¬ этом случае мы обнаружили две аномалии, соответствующие двум детал€м, которые имели Ђпосторонниеї признаки обработки. ћы можем определить, когда эти детали сделаны, и кодировать соответствующее врем€ как врем€ аномального поведени€ станка.

ѕроверка аномальной детали

ƒеталь 127 обнаружена как аномальна€, была создана между 3:04 и 3:07 утра. ƒавайте посмотрим, как выгл€дит сигнатура.
машинное обучение „ѕ”

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

 раткое изложение шагов

ќбобща€ все сказанное, мы приводим блок-схему дл€ облегчени€ понимани€ процесса. ¬ последней части нашей серии мы рассмотрим продуктизацию.
машинное обучение „ѕ”

јльтернативный вариант использовани€

јльтернативное использование этого метода Ч обнаружение, когда станок начинает производить новую деталь. »спользу€ те же шаги и настраива€ эпсилон, чтобы он был более подход€щим дл€ ситуации, мы можем определить, когда сигнатуры деталей выгл€д€т структурно иными и образуют другой кластер. ¬ приведенном ниже примере мы можем видеть, что в 62-й детали произошло изменение детали (эта деталь сама по себе €вл€етс€ аномальной из-за фактического процесса замены, но мы можем добавить дополнительные правила, чтобы исключить аномалии). «еленое облако Ч это один тип детали, а синее Ч другой. Ёто позвол€ет нам автоматически классифицировать детали, изготовленные клиентом.
машинное обучение „ѕ”

GIF был ускорен дл€ эффекта. ƒетали фактически создаютс€ за цикл ~83 секунды

ћы можем видеть, что характеристики сигнатур детали действительно существенно мен€ютс€ при переходе к изготовлению детали другого типа.
машинное обучение „ѕ”

»зменение вида сигнатур деталей в момент перехода к изготовлению детали другого типа

ћы сверились с реальными данными в нашей базе данных и подтвердили, что в это врем€ был совершен переход к изготовлению детали нового типа. “ак как MachineMetrics отслеживает и сохран€ет позиции инструмента, мы можем даже построить деталь, чтобы убедитьс€ в этом.
машинное обучение „ѕ”

машинное обучение „ѕ”

ѕоложени€ инструмента на ос€х X и Z


ѕодробнее о возможност€х аналитической платформы MachineMetrics и еЄ отличи€х от других систем мониторинга оборудовани€ читайте в статье: Ђѕочему стартап, разрабатывающий аналитическую платформу дл€ дискретного производства, стал новостным хедлайнеромї.


«авершение серии: „асть 4: ѕрименение на производстве


„итайте также:


¬акансии:

јктуальное обсуждение

RSS-лента комментариев

ƒавид Ћевин
ƒавид Ћевин
ќт редактора: –аботаешь в »“, остерегайс€ говорить о платформах
ѕроект ЂЌародное —јѕ–-интервьюї

—лучайна€ стать€:

isicad Top 10

—амые попул€рные материалы

   ‘орумы isicad:

isicad-2010 isicad-2008
isicad-2006 isicad-2004

ќ проекте

ѕриглашаем публиковать на сайте isicad.ru новости и пресс-релизы о новых решени€х и продуктах, о проводимых меропри€ти€х и другую информацию. јдрес дл€ корреспонденции - info@isicad.ru

ѕроект isicad нацелен на

  • укрепление контактов между разработчиками, поставщиками и потребител€ми промышленных решений в област€х PLM и ERP...
ѕодробнее

»нформаци€ дл€ рекламодателей


¬се права защищены. © 2004-2020 √руппа компаний «Ћ≈ƒј—»

ѕерепечатка материалов сайта допускаетс€ с согласи€ редакции, ссылка на isicad.ru об€зательна.
¬ы можете обратитьс€ к нам по адресу info@isicad.ru.