Автоматичний вибір функції для виявлення аномалії


11

Який найкращий спосіб автоматичного вибору функцій для виявлення аномалії?

Я зазвичай розглядаю функцію виявлення аномалії як алгоритм, де функції вибираються експертами людини: важливим є діапазон виводу (як у "ненормальному введенні - ненормальний вихід"), тому навіть при багатьох функціях ви можете створити набагато менший підмножина шляхом комбінування особливості.

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

  • "Автоматизований вибір функцій для виявлення аномалії" ( pdf ), який узагальнює опис векторних даних підтримки
  • "Швидка система виявлення вторгнень на основі хоста, що використовує грубу теорію наборів" (pdf недоступна?), Яка, я думаю, використовує грубу теорію набору
  • "Правила навчання виявлення аномалії ворожої мережевого трафіку" ( pdf , video ), яка використовує статистичний підхід

Тож тепер мені цікаво, чи може хтось сказати - якщо припустити виявлення аномалії та дійсно великий (сотні?) Набір функцій:

  1. Чи мають ці величезні набори функцій взагалі сенс? Чи не варто ми просто зменшити набір функцій, скажімо, на кілька десятків, і все?
  2. Якщо величезний набір функцій має сенс, який із підходів, що були вище, дав би кращі прогнози, і чому? Чи є щось, що не перелічено, що набагато краще?
  3. Чому вони повинні давати кращі результати порівняно з, скажімо, зменшенням розмірності або побудовою функцій за допомогою кластеризації / ранжирування / тощо?

Ваше посилання не викликало для мене жодного конкретного питання. Чи можете ви дати коротку характеристику проблеми? Яка мета? Це наглядова чи непідконтрольна навчальна проблема?
AdamO

Питання було від ML.SE, який зараз закритий - очевидно, адміністратори не злилися в усіх питаннях. Я редагував текст зараз, щоб прямо вказати на проблему!
andreister

Відповіді:


1

Один практичний підхід (у разі принаймні контрольованого навчання) полягає у включенні всіх можливо відповідних особливостей та використанні (узагальненої) лінійної моделі (логістична регресія, лінійна svm тощо) з регуляризацією (L1 та / або L2). Існують засоби з відкритим кодом (наприклад, Vowpal Wabbit), які можуть мати справу з трильйонами комбінацій прикладів / функцій для цих типів моделей, так що масштабованість не є проблемою (до того ж, завжди можна використовувати під вибірку). Регуляризація допомагає вирішити вибір функції.


Але як вибрати функції в непідконтрольних налаштуваннях (без необхідності використання лінійних моделей тощо, щоб придумати важливі функції)? Один із способів, що я можу придумати, - це використання PCA для збереження певної дисперсії та зменшення розміру даних. Але знову ж таки, зменшення даних у проблемі виявлення аномалії здається небезпечним, оскільки ви можете виявити відсутні фактичні люди, які хотіли передбачити. Звідси плутанина.
exAres
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.