Bei der Formulierung der Frage gehe ich davon aus, dass es keinerlei "Beispiele" für Anomalien (dh Bezeichnungen) gibt. Mit dieser Annahme wäre ein praktikabler Ansatz die Verwendung von Autoencodern : Neuronale Netze, die als Eingabe Ihre Daten empfangen und darauf trainiert sind, dieselben Daten auszugeben. Die Idee ist, dass das Netz durch das Training Darstellungen der Eingangsdatenverteilungen in Form latenter Variablen lernen konnte.
Es gibt eine Art von Autoencoder namens Denoising Autoencoder , der mit beschädigten Versionen der Originaldaten als Eingabe und mit den unverfälschten Originaldaten als Ausgabe trainiert wird . Dies liefert ein Netzwerk, das Rauschen (dh Datenverfälschungen) von den Eingängen entfernen kann .
Sie können einen Entrauschungs-Autoencoder mit den täglichen Daten trainieren. Verwenden Sie es dann für neue Tagesdaten. Auf diese Weise haben Sie die ursprünglichen Tagesdaten und eine unbeschädigte Version derselben Daten. Sie können dann beide vergleichen, um signifikante Unterschiede zu erkennen .
Der Schlüssel hier ist, welche Definition des signifikanten Unterschieds Sie wählen. Sie können den euklidischen Abstand berechnen und davon ausgehen, dass Sie eine Anomalie haben, wenn er einen bestimmten willkürlichen Schwellenwert überschreitet. Ein weiterer wichtiger Faktor ist die Art der Korruption, die Sie einführen. Sie sollten so nahe wie möglich an vernünftigen Abnormalitäten liegen.
Eine weitere Option wäre die Verwendung generativer kontradiktorischer Netzwerke . Das Nebenprodukt des Trainings ist ein Diskriminator-Netzwerk, das normale tägliche Daten von abnormalen Daten unterscheidet.