9 підходів для виявлення аномалій

В попередній статті ми говорили про прогнозування часових лав. Логічним продовженням буде стаття про виявлення аномалій.

Застосування

Виявлення аномалій використовується у таких областях як:

1) Передбачення поломок обладнання

Так, у 2010 році Іранські центрифуги були атаковані вірусом Stuxnet, який поставив неоптимальний режим роботи обладнання та вивів з ладу частину обладнання за рахунок прискореного зносу.

Якби на устаткуванні використовувалися алгоритми пошуку аномалій, ситуації виходу з експлуатації можна було уникнути.

9 підходів для виявлення аномалій

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

2) Пророцтво шахрайських дій

Якщо з карти, якою ви користуєтеся у Подільську, знімають гроші в Албанії, можливо, транзакції слід додатково перевірити.

3) Виявлення аномальних споживчих патернів

Якщо частина клієнтів демонструє аномальну поведінку, можливо, є проблема, яку ви не знаєте.

4) Виявлення аномального попиту та навантаження

Якщо продажі в магазині FMCG знизилися нижче за межі довірчого інтервалу прогнозу, варто знайти причину того, що відбувається.

Підходи до виявлення аномалій

1) Метод опорних векторів з одним класом One-Class SVM

Підходить, коли у навчальному наборі дані підпорядковуються нормальному розподілу, а тестовому містять аномалії.

Однокласовий метод опорних векторів будує нелінійну поверхню навколо початку координат. Можна встановити межу відсікання, які дані вважати аномальними.

Виходячи з досвіду нашої команди DATA4, One-Class SVM найчастіше використовуваний алгоритм вирішення завдання пошуку аномалій.

9 підходів для виявлення аномалій

2) Метод ізолюючого лісу – isolate forest

При «випадковому» способі побудови дерев викиди потраплятимуть у листя на ранніх етапах (невеликий глибині дерева), тобто. викиди простіше "ізолювати". Виділення аномальних значень відбувається перших ітераціях роботи алгоритму.

9 підходів для виявлення аномалій

3) Elliptic envelope та статистичні методи

Використовується, коли дані нормально розподілені. Чим ближче вимір до хвоста суміші розподілів, тим аномальніше значення.

До цього класу можна віднести інші статистичні методи.

9 підходів для виявлення аномалій

9 підходів для виявлення аномалій
Зображення із сайту dyakonov.org

4) Метричні методи

До методів належать такі алгоритми, як найближчих сусідів, найближчого сусіда, ABOD (angle-based outlier detection) або LOF (local outlier factor).

Підходять, якщо відстань між значеннями в ознаках рівнозначні чи нормовані (щоб виміряти удава в папугах).

Алгоритм k найближчих сусідів передбачає, що нормальні значення розташовані у певній області багатовимірного простору, а відстань до аномалій буде більшою, ніж до роздільної гіперплощини.

9 підходів для виявлення аномалій

5) Кластерні методи

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

Головне, використовувати алгоритм, що правильно кластеризує дані, що залежить від конкретного завдання.

9 підходів для виявлення аномалій

6) Метод основних компонент

Підходить, де виділяються напрямки найбільшої зміни дисперсії.

7) Алгоритми з урахуванням прогнозування часових рядів

Ідея у тому, що й значення вибивається з довірчого інтервалу передбачення, значення вважається аномальним. Для передбачення часового ряду використовуються такі алгоритми як потрійне згладжування, S(ARIMA), бустинг і т.д.

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

9 підходів для виявлення аномалій

8) Навчання з учителем (регресія, класифікація)

Якщо дані дозволяють, використовуємо алгоритми, починаючи від лінійної регресії і закінчуючи рекурентними мережами. Заміряємо різницю між передбаченням та фактичним значенням, і зробимо висновок, наскільки дані вибиваються з норми. Важливо, щоб алгоритм мав достатню узагальнюючу здатність, і навчальна вибірка не містила аномальних значень.

9) Модельні тести

Підійдемо до завдання пошуку аномалій як задачі пошуку рекомендацій. Розкладемо нашу матрицю ознак за допомогою SVD або факторизаційних машин, і значення в новій матриці, що істотно відрізняються від вихідних, приймемо аномальними.

9 підходів для виявлення аномалій

Зображення із сайту dyakonov.org

Висновок

У цій статті ми розглянули основні підходи виявлення аномалій.

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

Якщо ви знаєте інші методи, напишіть про них у коментарі до статті.

Джерело: habr.com

Додати коментар або відгук