0
$\begingroup$

Currently, I have been studying auto-encoders. What I have understood is that an auto-encoder is a neural network where the input layer is identical to the output layer, and it does this by minimizing the reconstruction loss. Now, I want to know why auto-encoder is mostly used for anomaly detection ?

$\endgroup$
5
  • 4
    $\begingroup$ Is it? Who and where said it is? $\endgroup$
    – Tim
    May 17, 2021 at 14:55
  • 1
    $\begingroup$ Not necessarily. Check out Deep One-Class Classification. $\endgroup$
    – mhdadk
    May 17, 2021 at 14:58
  • $\begingroup$ Thanks. Whatever literature I have gone through regarding anomaly detection, mostly autoencoder is used. That's why I was wondering what properties of auto-encoder makes it more suitable for the purpose of anomaly detection ? $\endgroup$
    – Shaptak
    May 17, 2021 at 15:01
  • $\begingroup$ The process of autoencoders naturally lends itself to outlier detection because if there is high reconstruction error then that means the model couldn't learn enough to fit that point. I.E. that point is an outlier. So, while other data points may be able to be represented by the bottleneck layer, that outlier point requires more information so it is different. But, as others mentioned, there are tons of other methods to do this and other applications of an autoencoder. $\endgroup$
    – Tylerr
    May 17, 2021 at 16:05
  • $\begingroup$ Not typical isn't the same as outlier. Domain expertise and root-causing is required here. Don't be making "black swans" for yourself. $\endgroup$ May 19 at 14:29

1 Answer 1

0
$\begingroup$

Have also been interested in this question in the past. Below are some thoughts.

Assuming that the training data contain sufficiently many non-anomaly data points means the auto-encoder will compress the inputs (the encoder network) so as to “capture” the essence of the data in the topology and weightings of the encoder network. This in theory removes some of the noise, and keeps the signal for the decoder network to reconstruct.

Advantages of autoencoders for anomaly-detection:

  1. The input and output size are equal allowing the reconstructed output to be directly compare with the input, this would be helpful for a human if the data were say images or sound as they can view or hear outputs flagged as an anomaly. Thus I would say for some data inputs such as images the model is an open model and not a closed model, that is it is easier for a human to interpret than some other methods.
  2. Because they are based on neural networks, presumably they are aligned to the advantages of neural networks. Hopefully someone can comment on this or provide a link about the benefits this may bring (for example what types of data this would be helpful for).
  3. The “code”, that is the output of the encoder and input of the decoder, if small may give an indication of the strength of the signal captured by the autoencoder, thus presumably a relatively small code would mean the autoencoder would be better at discerning anomaly data points. Thus just by looking at the code you can get an idea of how good the autoencoder might be for anomaly detection. Again, happy to have comments on the validity or otherwise of this thinking.
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.