З формулювання питання я припускаю, що "прикладів" аномалій (тобто міток) взагалі немає. З цим припущенням, можливим підходом було б використовувати автокодери : нейронні мережі, які отримують як вхід ваші дані та навчаються виводити ці самі дані. Ідея полягає в тому, що навчання дозволило мережі вивчити уявлення розподілу вхідних даних у вигляді прихованих змінних.
Існує тип автокодера, який називається позначаючим автоенкодером , який тренується із пошкодженими версіями вихідних даних у якості вхідних даних та з некорумпованими вихідними даними як вихідними. Це забезпечує мережу, яка може видаляти шум (тобто пошкодження даних) із входів.
Ви можете тренувати позначаючий автокодер з щоденними даними. Потім використовуйте його для нових щоденних даних; Таким чином, у вас є оригінальні щоденні дані та некорумпована версія цих самих даних. Потім можна порівняти обидва, щоб виявити значні відмінності.
Ключовим тут є те, яке визначення суттєвої різниці ви виберете. Ви можете обчислити евклідову відстань і припустити, що якщо вона перевищує певний довільний поріг, у вас є аномалія. Ще одним важливим фактором є вид корупції, який ви вводите; вони повинні бути максимально наближені до розумних відхилень.
Іншим варіантом було б використання генеративних змагальних мереж . Побічний продукт тренінгу - це дискримінаційна мережа, яка відокремлює нормальні щоденні дані від ненормальних даних.