data_mining:anomaly_detection

This is an old revision of the document!


Anomaly Detection

Wenn $p(x) < \epsilon$, dann liegt Anomalie vor.

$p(x) = p(x_1;\mu_1;\sigma^2_1)p(x_2;\mu_2;\sigma^2_2)\dots p(x_n;\mu_n;\sigma^2_n) = \prod_{j=i}^n p(x_j;\mu_j;\sigma^2_j)$

Unabhängigkeitsannahme

$\mu_j = 1/m \sum_{i=1}^m x_j^{(i)}$

Vektorisierbar als $\mu = 1/m \sum_{i=1}^m x^{(i)}$

$\sigma^2_j = 1/m \sum^m_{i=1} (x_j^{(i)}-\mu_j)^2$

Einige gelabelte Daten vorhanden.

y=0: normal (10000) y=1: anormal (20)

Split:

  • Training set: 6000 (y=0)
  • CV: 2000 good (y=0); 10 anom (y=1)
  • Test: 2000 good (y=0); 10 anom (y=1)
  1. Model $p(x)$ auf Trainingsset fitten
  2. Auf CV/Testset $x, y$ vorhersagen
  3. Metriken:
    • TP, FP, FN, TN
    • Precision/Recall
    • $F_1$-score
  4. $\epsilon$ auf CV-Set wählen

Anomaly detection:

  • Kleine Zahl positiver Beispiele
  • Viele verschiedene Typen von Anomalien, für Algorithmen schwer vorhersehbar, wie die Anomalien aussehen (zukünftige Anomalien können in der Zukunft völlig anders aussehen).

Histogramm der Daten plotten, wenn es wie eine Normalverteilung aussieht, kann Feature verwendet werden. Logarithmische Transformation möglich $log(x+c)$ oder $x^{(1/2)}$

Häufigstes Problem: $p(x)$ ist ähnlich für normale und anormale Beispiele

Anomaly betrachten und Features entwickeln, bei denen die Anomaly außerhalb liegt.

Nicht $p(x_n)$ modellieren, sonden ein Model $p(x)$ als Ganzes

Parameter: $\mu, \Sigma \in R^{n \dot n}$

  • data_mining/anomaly_detection.1409403218.txt.gz
  • Last modified: 2014/08/30 14:53
  • by phreazer