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


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.