Title: CLASSIFICATION-BASED ANOMALY DETECTION FOR GENERAL DATA

Abstract: Anomaly detection, finding patterns that substantially deviate from those seen previously, is one of the fundamental problems of artificial intelligence. Recently, classification-based methods were shown to achieve superior results on this task. In this work, we present a unifying view and propose an open-set method, GOAD, to relax current generalization assumptions. Furthermore, we extend the applicability of transformation-based methods to non-image data using random affine transformations. Our method is shown to obtain state-of-the-art accuracy and is applicable to broad data types. The strong performance of our method is extensively validated on multiple datasets from different domains.

1. INTRODUCTION:

Detecting anomalies in perceived data is a key ability for humans and for artificial intelligence. Humans often detect anomalies to give early indications of danger or to discover unique opportunities. Anomaly detection systems are being used by artificial intelligence to discover credit card fraud, for detecting cyber intrusion, alert predictive maintenance of industrial equipment and for discovering attractive stock market opportunities. The typical anomaly detection setting is a one class classification task, where the objective is to classify data as normal or anomalous. The importance of the task stems from being able to raise an alarm when detecting a different pattern from those seen in the past, therefore triggering further inspection. This is fundamentally different from supervised learning tasks, in which examples of all data classes are observed.

There are different possible scenarios for anomaly detection methods. In supervised anomaly detection, we are given training examples of normal and anomalous patterns. This scenario can be quite well specified, however obtaining such supervision may not be possible. For example in cyber security settings, we will not have supervised examples of new, unknown computer viruses making supervised training difficult. On the other extreme, fully unsupervised anomaly detection, obtains a stream of data containing normal and anomalous patterns and attempts to detect the anomalous data. In this work we deal with the semi-supervised scenario. In this setting, we have a training set of normal examples (which contains no anomalies). After training the anomaly detector, we detect anomalies in the test data, containing both normal and anomalous examples. This supervision is easy to obtain in many practical settings and is less difficult than the fully-unsupervised case.

Many anomaly detection methods have been proposed over the last few decades. They can be broadly classified into reconstruction and statistically based methods. Recently, deep learning methods based on classification have achieved superior results. Most semi-supervised classificationbased methods attempt to solve anomaly detection directly, despite only having normal training data. One example is: Deep-SVDD (Ruff et al., 2018) -one-class classification using a learned deep space. Another type of classification-based methods is self-supervised i.e. methods that solve one or more classification-based auxiliary tasks on the normal training data, and this is shown to be useful for solving anomaly detection, the task of interest e.g. (Golan & El-Yaniv, 2018) . Self-supervised classification-based methods have been proposed with the object of image anomaly detection, but we show that by generalizing the class of transformations they can apply to all data types.

In this paper, we introduce a novel technique, GOAD, for anomaly detection which unifies current state-of-the-art methods that use normal training data only and are based on classification. Our method first transforms the data into M subspaces, and learns a feature space such that inter-class separation is larger than intra-class separation. For the learned features, the distance from the cluster center is correlated with the likelihood of anomaly. We use this criterion to determine if a new data point is normal or anomalous. We also generalize the class of transformation functions to include affine transformation which allows our method to generalize to non-image data. This is significant as tabular data is probably the most important for applications of anomaly detection. Our method is evaluated on anomaly detection on image and tabular datasets (cyber security and medical) and is shown to significantly improve over the state-of-the-art.

1.1. PREVIOUS WORKS:

Anomaly detection methods can be generally divided into the following categories:

Reconstruction Methods: Some of the most common anomaly detection methods are reconstructionbased. The general idea behind such methods is that every normal sample should be reconstructed accurately using a limited set of basis functions, whereas anomalous data should suffer from larger reconstruction costs. The choice of features, basis and loss functions differentiates between the different methods. Some of the earliest methods use: nearest neighbors (Eskin et al., 2002) , low-rank PCA (Jolliffe, 2011; Candès et al., 2011 ) or K-means (Hartigan & Wong, 1979) as the reconstruction basis. Most recently, neural networks were used (Sakurada & Yairi, 2014; Xia et al., 2015) for learning deep basis functions for reconstruction. Another set of recent methods (Schlegl et al., 2017; Deecke et al., 2018) use GANs to learn a reconstruction basis function. GANs suffer from mode-collapse and are difficult to invert, which limits the performance of such methods.

Distributional Methods: Another set of commonly used methods are distribution-based. The main theme in such methods is to model the distribution of normal data. The expectation is that anomalous test data will have low likelihood under the probabilistic model while normal data will have higher likelihoods. Methods differ in the features used to describe the data and the probabilistic model used to estimate the normal distribution. Some early methods used Gaussian or Gaussian mixture models. Such models will only work if the data under the selected feature space satisfies the probabilistic assumptions implicied by the model. Another set of methods used non-parametric density estimate methods such as kernel density estimate (Parzen, 1962) . Recently, deep learning methods (autoencoders or variational autoencoders) were used to learn deep features which are sometimes easier to model than raw features (Yang et al., 2017) . DAGMM introduced by Zong et al. (2018) learn the probabilistic model jointly with the deep features therefore shaping the features space to better conform with the probabilistic assumption.

Classification-Based Methods: Another paradigm for anomaly detection is separation between space regions containing normal data from all other regions. An example of such approach is One-Class SVM (Scholkopf et al., 2000) , which trains a classifier to perform this separation. Learning a good feature space for performing such separation is performed both by the classic kernel methods as well as by the recent deep learning approach (Ruff et al., 2018) . One of the main challenges in unsupervised (or semi-supervised) learning is providing an objective for learning features that are relevant to the task of interest. One method for learning good representations in a self-supervised way is by training a neural network to solve an auxiliary task for which obtaining data is free or at least very inexpensive. Auxiliary tasks for learning high-quality image features include: video frame prediction (Mathieu et al., 2016) , image colorization (Zhang et al., 2016; Larsson et al., 2016) , puzzle solving (Noroozi & Favaro, 2016) -predicting the correct order of random permuted image patches. Recently, Gidaris et al. (2018) used a set of image processing transformations (rotation by 0, 90, 180, 270 degrees around the image axis, and predicted the true image orientation has been used to learn high-quality image features. Golan & El-Yaniv (2018) , have used similar image-processing task prediction for detecting anomalies in images. This method has shown good performance on detecting images from anomalous classes. In this work, we overcome some of the limitations of previous classification-based methods and extend their applicability of self-supervised methods to general data types. We also show that our method is more robust to adversarial attacks.

2. CLASSIFICATION-BASED ANOMALY DETECTION:

Classification-based methods have dominated supervised anomaly detection. In this section we will analyse semi-supervised classification-based methods:

Let us assume all data lies in space R L (where L is the data dimension). Normal data lie in subspace X ⊂ R L . We assume that all anomalies lie outside X. To detect anomalies, we would therefore like to build a classifier C, such that C

(x) = 1 if x ∈ X and C(x) = 0 if x ∈ R L \X.

One-class classification methods attempt to learn C directly as P (x ∈ X). Classical approaches have learned a classifier either in input space or in a kernel space. Recently, Deep-SVDD (Ruff et al., 2018) learned end-to-end to i) transform the data to an isotropic feature space f (x) ii) fit the minimal hypersphere of radius R and center c 0 around the features of the normal training data. Test data is classified as anomalous if the following normality score is positive: f (x) -c 0 2 -R 2 . Learning an effective feature space is not a simple task, as the trivial solution of f (x) = 0 ∀ x results in the smallest hypersphere, various tricks are used to avoid this possibility.

Geometric-transformation classification (GEOM), proposed by Golan & El-Yaniv (2018) first transforms the normal data subspace X into M subspaces X 1 ..X M . This is done by transforming each image x ∈ X using M different geometric transformations (rotation, reflection, translation) into T (x, 1)..T (x, M ). Although these transformations are image specific, we will later extend the class of transformations to all affine transformations making this applicable to non-image data. They set an auxiliary task of learning a classifier able to predict the transformation label m given transformed data point T (x, m). As the training set consists of normal data only, each sample is x ∈ X and the transformed sample is in ∪ m X m . The method attempts to estimate the following conditional probability:

EQUATION

Where the second equality follows by design of the training set, and where every training sample is transformed exactly once by each transformation leading to equal priors.

For anomalous data x ∈ R L \X, by construction of the subspace, if the transformations T are oneto-one, it follows that the transformed sample does not fall in the appropriate subspace: T (x, m) ∈ R L \X m . GEOM uses P (m|T (x, m)) as a score for determining if x is anomalous i.e. that x ∈ R L \X. GEOM gives samples with low probabilities P (m|T (x, m)) high anomaly scores.

A significant issue with this methodology, is that the learned classifier P (m |T (x, m)) is only valid for samples x ∈ X which were found in the training set. For x ∈ R L \X we should in fact have P (T (x, m) ∈ X m ) = 0 for all m = 1..M (as the transformed x is not in any of the subsets). This makes the anomaly score P (m |T (x, m)) have very high variance for anomalies.

One way to overcome this issue is by using examples of anomalies x a and training P (m|T (x, m)) = 1 M on anomalous data. This corresponds to the supervised scenario and was recently introduced as Outlier Exposure (Hendrycks et al., 2018) . Although getting such supervision is possible for some image tasks (where large external datasets can be used) this is not possible in the general case e.g. for tabular data which exhibits much more variation between datasets.

3. DISTANCE-BASED MULTIPLE TRANSFORMATION CLASSIFICATION:

We propose a novel method to overcome the generalization issues highlighted in the previous section by using ideas from open-set classification (Bendale & Boult, 2016) . Our approach unifies one-class and transformation-based classification methods. Similarly to GEOM, we transform X to X 1 ..X M . We learn a feature extractor f (x) using a neural network, which maps the original input data into a feature representation. Similarly to deep OC methods, we model each subspace X m mapped to the feature space {f (x)|x ∈ X m } as a sphere with center c m . The probability of data point x after transformation m is parameterized by

P (T (x, m) ∈ X m ) = 1 Z e -(f (T (x,m))-c m ) 2

. The classifier predicting transformation m given a transformed point is therefore:

P (m |T (x, m)) = e -f (T (x,m))-c m 2 m e -f (T (x,m))-c m 2

(2)

The centers c m are given by the average feature over the training set for every transformation i.e.

c m = 1 N x∈X f (T (x, m)).

One option is to directly learn f by optimizing cross-entropy between P (m |T (x, m)) and the correct label on the normal training set. In practice we obtained better results by training f using the center triplet loss (He et al., 2018) , which learns supervised clusters with low intra-class variation, and high-inter-class variation by optimizing the following loss function (where s is a margin regularizing the distance between clusters):

EQUATION

Having learned a feature space in which the different transformation subspaces are well separated, we use the probability in Eq. 2 as a normality score. However, for data far away from the normal distributions, the distances from the means will be large. A small difference in distance will make the classifier unreasonably certain of a particular transformation. To add a general prior for uncertainty far from the training set, we add a small regularizing constant to the probability of each transformation. This ensures equal probabilities for uncertain regions:

P (m |T (x, m)) = e -f (T (x,m))-c m 2 + m e -f (T (x,m))-c m 2 + M • (4)

At test time we transform each sample by the M transformations. By assuming independence between transformations, the probability that x is normal (i.e. x ∈ X) is the product of the probabilities that all transformed samples are in their respective subspace. For log-probabilities the total score is given by:

Score(x) = -log P (x ∈ X) = - m log P (T (x, m) ∈ X m ) = - m log P (m|T (x, m)) (5)

The score computes the degree of anomaly of each sample. Higher scores indicate a more anomalous sample.

Algorithm 1 GOAD: Training Algorithm Input: Normal training data x 1 , x 2 ...x N Transformations T (, 1), T (, 2)...T (, M ) Output: Feature extractor f , centers c 1 , c 2 ...c M T (x i , 1), T (x i , 2)...T (x i , M ) ← x i // Transform each sample by all transformations 1 to M Find f, c 1 , c 2 ...c M that optimize the triplet loss in Eq. 3

Algorithm 2 GOAD: Evaluation Algorithm:

Input: Test sample: x, feature extractor: f , centers:

c 1 , c 2 ...c M , transformations: T (, 1), T (, 2)...T (, M ) Output: Score(x) T (x, 1), T (x, 2)...T (x, M ) ← x // Transform test sample by all transformations 1 to M P (m|T (x, m)) ← f (T (x, m)), c 1 , c 2 ...c M // Likelihood

of predicting the correct transformation (Eq. 4) Score(x) ← P (1|T (x, 1)), P (2|T (x, 2))...P (M |T (x, M ))

// Aggregate probabilities to compute anomaly score (Eq. 5)

4. PARAMETERIZING THE SET OF TRANSFORMATIONS:

Geometric transformations have been used previously for unsupervised feature learning by Gidaris et al. (2018) as well as by GEOM (Golan & El-Yaniv, 2018) for classification-based anomaly detection. This set of transformations is hand-crafted to work well with convolutional neural networks (CNNs) which greatly benefit from preserving neighborhood between pixels. This is however not a requirement for fully-connected networks.

Anomaly detection often deals with non-image datasets e.g. tabular data. Tabular data is very commonly used on the internet e.g. for cyber security or online advertising. Such data consists of both discrete and continuous attributes with no particular neighborhoods or order. The data is onedimensional and rotations do not naturally generalize to it. To allow transformation-based methods to work on general data types, we therefore need to extend the class of transformations.

We propose to generalize the set of transformations to the class of affine transformations (where we have a total of M transformations):

T (x, m) = W m x + b m (6)

It is easy to verify that all geometric transformations in Golan & El-Yaniv (2018) (rotation by a multiple of 90 degrees, flips and translations) are a special case of this class (x in this case is the set of image pixels written as a vector). The affine class is however much more general than mere permutations, and allows for dimensionality reduction, non-distance preservation and random transformation by sampling W , b from a random distribution. 

5. EXPERIMENTS:

We perform experiments to validate the effectiveness of our distance-based approach and the performance of the general class of transformations we introduced for non-image data.

5.1. IMAGE EXPERIMENTS:

Cifar10: To evaluate the performance of our method, we perform experiments on the Cifar10 dataset. We use the same architecture and parameter choices of Golan & El-Yaniv (2018), with our distance-based approach. We use the standard protocol of training on all training images of a single digit and testing on all test images. Results are reported in terms of AUC. In our method, we used a margin of s = 0.1 (we also run GOAD with s = 1, shown in the appendix). Similarly to He et al. (2018) , to stabilize training, we added a softmax + cross entropy loss, as well as L 2 norm regularization for the extracted features f (x). We compare our method with the deep oneclass method of Ruff et al. (2018) as well as Golan & El-Yaniv (2018) without and with Dirichlet weighting. We believe the correct comparison is without Dirichlet post-processing, as we also do not use it in our method. Our distance based approach outperforms the SOTA approach by Golan & El-Yaniv (2018), both with and without Dirichlet (which seems to improve performance on a few classes). This gives evidence for the importance of considering the generalization behavior outside the normal region used in training. Note that we used the same geometric transformations as Golan & El-Yaniv (2018) . Random affine matrices did not perform competitively as they are not pixel order preserving, this information is effectively used by CNNs and removing this information hurts performance. This is a special property of CNN architectures and image/time series data. As a rule of thumb, fully-connected networks are not pixel order preserving and can fully utilize random affine matrices. FasionMNIST: In Tab. 2, we present a comparison between our method (GOAD) and the strongest baseline methods (Deep SVDD and GEOM) on the FashionMNIST dataset. We used exactly the same setting as Golan & El-Yaniv (2018) . GOAD was run with s = 1. OCSVM and GEOM with Dirichlet were copied from their paper. We run their method without Dirichlet and presented it in the table (we verified the implementation by running their code with Dirichlet and replicated the numbers in the paper). It appears that GEOM is quite dependent on Dirichlet for this dataset, whereas we do not use it at all. GOAD outperforms all the baseline methods.

Adversarial Robustness: Let us assume an attack model where the attacker knows the architecture and the normal training data and is trying to minimally modify anomalies to look normal. We examine the merits of two settings i) the adversary knows the transformations used (non-random) ii) the adversary uses another set of transformations. To measure the benefit of the randomized transformations, we train three networks A, B, C. Networks A and B use exactly the same transformations but random parameter initialization prior to training. Network C is trained using other randomly selected transformations. The adversary creates adversarial examples using PGD (Madry et al., 2017) based on network A (making anomalies appear like normal data). On Cifar10, we randomly selected 8 transformations from the full set of 72 for A and B, another randomly selected 8 transformations are used for C. We measure the increase of false classification rate on the adversarial examples using the three networks. The average increase in performance of classifying transformation correctly on anomalies (causing lower anomaly scores) on the original network A was 12.8%, the transfer performance for B causes an increase by 5.0% on network B which shared the same set of transformation, and 3% on network C that used other rotations. This shows the benefits of using random transformations. We evaluate on small-scale medical datasets Arrhythmia, Thyroid as well as large-scale cyber intrusion detection datasets KDD and KDDRev. Our configuration follows that of Zong et al. (2018) . Categorical attributes are encoded as one-hot vectors. For completeness the datasets are described in the appendix A.2. We train all compared methods on 50% of the normal data. The methods are evaluated on 50% of the normal data as well as all the anomalies.

Baseline methods: The baseline methods evaluated are: One-Class SVM (OC-SVM, Scholkopf et al. (2000) ), End-to-End Autoencoder (E2E-AE), Local Outlier Factor (LOF, Breunig et al. (2000) ). We also evaluated deep distributional method DAGMM (Zong et al., 2018) , choosing their strongest variant. To compare against ensemble methods e.g. Chen et al. (2017) , we implemented the Feature Bagging Autoencoder (FB-AE) with autoencoders as the base classifier, feature bagging as the source of randomization, and average reconstruction error as the anomaly score. OC-SVM, E2E-AE and DAGMM results are directly taken from those reported by Zong et al. (2018) . LOF and FB-AE were computed by us.

Implementation of GOAD::

We randomly sampled transformation matrices using the normal distribution for each element. Each matrix has dimensionality L × r, where L is the data dimension and r is a reduced dimension. For Arryhthmia and Thyroid we used r = 32, for KDD and KDDrev we used r = 128 and r = 64 respectively, the latter due to high memory requirements. We used 256 tasks for all datasets apart from KDD (64) due to high memory requirements. We set the bias term to 0. For C we used fully-connected hidden layers and leaky-ReLU activations (8 hidden nodes for the small datasets, 128 and 32 for KDDRev and KDD). We optimized using ADAM with a learning rate of 0.001. Similarly to He et al. (2018) , to stabilize the triplet center loss training, we added a softmax + cross entropy loss. We repeated the large-scale experiments 5 times, and the small scale GOAD experiments 500 times (due to the high variance). We report the mean and standard deviation (σ). Following the protocol in Zong et al. (2018) , the decision threshold value is chosen to result in the correct number of anomalies e.g. if the test set contains N a anomalies, the threshold is selected so that the highest N a scoring examples are classified as anomalies. True positives and negatives are evaluated in the usual way. Some experiments copied from other papers did not measure standard variation and we kept the relevant cell blank.

Results:

Arrhythmia: The Arrhythmia dataset was the smallest examined. A quantitative comparison on this dataset can be seen in Tab. 3. OC-SVM and DAGMM performed reasonably well. Our method is comparable to FB-AE. A linear classifier C performed better than deeper networks (which suffered from overfitting). Early stopping after a single epoch generated the best results.

Thyroid: Thyroid is a small dataset, with a low anomaly to normal ratio and low feature dimensionality. A quantitative comparison on this dataset can be seen in Tab. 3. Most baselines performed about equally well, probably due to the low dimensionality. On this dataset, we also found that early stopping after a single epoch gave the best results. The best results on this dataset, were obtained with a linear classifier. Our method is comparable to FB-AE and beat all other baselines by a wide margin. 

KDDCUP99::

The UCI KDD 10% dataset is the largest dataset examined. A quantitative comparison on this dataset can be seen in Tab. 3. The strongest baselines are FB-AE and DAGMM. Our method significantly outperformed all baselines. We found that large datasets have different dynamics from very small datasets. On this dataset, deep networks performed the best. We also, did not need early stopping. The results are reported after 25 epochs.

KDD-Rev::

The KDD-Rev dataset is a large dataset, but smaller than KDDCUP99 dataset. A quantitative comparison on this dataset can be seen in Tab. 3. Similarly to KDDCUP99, the best baselines are FB-AE and DAGMM, where FB-AE significantly outperforms DAGMM. Our method significantly outperformed all baselines. Due to the size of the dataset, we did not need early stopping.

The results are reported after 25 epochs.

Adversarial Robustness: Due to the large number of transformations and relatively small networks, adversarial examples are less of a problem for tabular data. PGD generally failed to obtain adversarial examples on these datasets. On KDD, transformation classification accuracy on anomalies was increased by 3.7% for the network the adversarial examples were trained on, 1.3% when transferring to the network with the same transformation and only 0.2% on the network with other randomly selected transformations. This again shows increased adversarial robustness due to random transformations.

Further Analysis:

Contaminated Data: This paper deals with the semi-supervised scenario i.e. when the training dataset contains only normal data. In some scenarios, such data might not be available but instead we might have a training dataset that contains a small percentage of anomalies. To evaluate the robustness of our method to this unsupervised scenario, we analysed the KDDCUP99 dataset, when X% of the training data is anomalous. To prepare the data, we used the same normal training data as before and added further anomalous examples. The test data consists of the same proportions as before. The results are shown in Fig. 1 . Our method significantly outperforms DAGMM for all impurity values, and degrades more graceful than the baseline. This attests to the effectiveness of our approach. Results for the other datasets are presented in Fig. 3 , showing similar robustness to contamination.

Number of Tasks: One of the advantages of GOAD, is the ability to generate any number of tasks. We present the anomaly detection performance on the KDD-Rev dataset with different numbers of tasks in Fig. 1 . We note that a small number of tasks (less than 16) leads to poor results. From 16 tasks, the accuracy remains stable. We found that on the smaller datasets (Thyroid, Arrhythmia) using a larger number of transformations continued to reduce F 1 score variance between differently initialized runs (Fig. 2 ).

Openset vs. Softmax: The openset-based classification presented by GOAD resulted in performance improvement over the closed-set softmax approach on Cifar10 and FasionMNIST. In our experiments, it has also improved performance in KDDRev. Arrhythmia and Thyroid were comparable. As a negative result, performance of softmax was better on KDD (F 1 = 0.99).

Choosing the margin parameter s: GOAD is not particularly sensitive to the choice of margin parameter s, although choosing s that is too small might cause some instability. We used a fixed value of s = 1 in our experiments, and recommend this value as a starting point.

Other transformations: GOAD can also work with other types of transformations such as rotations or permutations for tabular data. In our experiments, we observed that these transformation types perform comparably but a little worse than affine transformations.

Unsupervised training: Although most of our results are semi-supervised i.e. assume that no anomalies exist in the training set, we presented results showing that our method is more robust than strong baselines to a small percentage of anomalies in the training set. We further presented results in other datasets showing that our method degrades gracefully with a small amount of contamination. Our method might therefore be considered in the unsupervised settings.

Deep vs. shallow classifiers: Our experiments show that for large datasets deep networks are beneficial (particularly for the full KDDCUP99), but are not needed for smaller datasets (indicating that deep learning has not benefited the smaller datasets). For performance critical operations, our approach may be used in a linear setting. This may also aid future theoretical analysis of our method.

7. CONCLUSION:

In this paper, we presented a method for detecting anomalies for general data. This was achieved by training a classifier on a set of random auxiliary tasks. Our method does not require knowledge of the data domain, and we are able to generate an arbitrary number of random tasks. Our method significantly improve over the state-of-the-art. (Rayana, 2016) , the smallest classes: 3, 4, 5, 7, 8, 9, 14, 15 are taken to be anomalous and the rest normal. Also following ODDS, the categorical attributes are dropped, the final attributes total 274.

Thyroid: A medical dataset from the UCI repository (Asuncion & Newman, 2007) , containing attributes related to whether a patient is hyperthyroid. Following ODDS (Rayana, 2016) , from the 3 classes of the dataset, we designate hyperfunction as the anomalous class and the rest as normal. Also following ODDS only the 6 continuous attributes are used.

KDD::

The KDD Intrusion Detection dataset was created by an extensive simulation of a US Air Force LAN network. The dataset consists of the normal and 4 simulated attack types: denial of service, unauthorized access from a remote machine, unauthorized access from local superuser and probing. The dataset consists of around 5 million TCP connection records. Following the evaluation protocol in Zong et al. (2018) , we use the UCI KDD 10% dataset, which is a subsampled version of the original dataset. The dataset contains 41 different attributes. 34 are continuous and 7 are categorical. Following Zong et al. (2018) , we encode the categorical attributes using 1-hot encoding.

Following Zong et al. (2018) , we evaluate two different settings for the KDD dataset: KDDCUP99: In this configuration we use the entire UCI 10% dataset. As the non-attack class consists of only 20% of the dataset, it is treated as the anomaly in this case, while attacks are treated as normal.

KDDCUP99-Rev: To better correspond to the actual use-case, in which the non-attack scenario is normal and attacks are anomalous, Zong et al. (2018) also evaluate on the reverse configuration, in which the attack data is sub-sampled to consist of 25% of the number of non-attack samples. The attack data is in this case designated as anomalous (the reverse of the KDDCUP99 dataset).

In all the above datasets, the methods are trained on 50% of the normal data. The methods are evaluated on 50% of the normal data as well as all the anomalies.

A.3 NUMBER OF TASKS:

We provide plots of the number of auxiliary tasks vs. the anomaly detection accuracy (measured by F 1 ) for all datasets. The results are presented in Fig. 2 . Performance increases rapidly up to a certain number of tasks (around 16). Afterwards more tasks reduce the variance of F 1 scores between runs. 

A.4 CONTAMINATION EXPERIMENTS:

We conduct contamination experiments for 3 datasets. Thyroid was omitted due to not having a sufficient number of anomalies. The protocol is different than that of KDDRev as we do not have unused anomalies for contamination. Instead, we split the anomalies into train and test. Train anomalies are used for contamination, test anomalies are used for evaluation. As DAGMM did not present results for the other datasets, we only present GOAD. GOAD was reasonably robust to contamination on KDD, KDDRev and Arrhythmia. The results are presented in Fig. 3 

:



Figures and Tables:

Apart from reduced variance across different dataset types where no apriori knowledge on the correct transformation classes exists, random transformations are important for avoiding adversarial examples. Assume an adversary wishes to change the label of a particular sample from anomalous to normal or vice versa. This is the same as requiring that P (m |T (x, m)) has low or high probability for m = m. If T is chosen deterministically, the adversary may create adversarial examples against the known class of transformations (even if the exact network parameters are unknown). Conversely, if T is unknown, the adversary must create adversarial examples that generalize across different transformations, which reduces the effectiveness of the attack.To summarize, generalizing the set of transformations to the affine class allows us to: generalize to non-image data, use an unlimited number of transformations and choose transformations randomly which reduces variance and defends against adversarial examples.

Figure 1: Left: Classification error for our method and DAGMM as a function of percentage of the anomalous examples in the training set (on the KDDCUP99 dataset). Our method consistently outperforms the baseline. Right: Classification error as a function of the number of transformations (on the KDDRev dataset). The error and instability decrease as a function of the number of transformations. For both, lower is better.

Figure 2: Plots of the number of auxiliary tasks vs. the anomaly detection accuracy (measured by F 1 ) a) Arrhythmia b) Thyroid c) KDDRev d) KDDCup99 Accuracy often increases with the number of tasks, although the rate diminishes with the number of tasks.

Figure 3: Plots of the degree of contamination vs. the anomaly detection accuracy (measured by F 1 ) (left) KDDRev (center) KDDCup99 (right) Arrhythmia. GOAD is generally robust to the degree of contamination.

Anomaly Detection Accuracy on Cifar10 (ROC-AUC %)

Table content: <table><tr><td>Class</td><td/><td>Method</td><td/><td/></tr><tr><td/><td colspan="3">Deep-SVDD GEOM (no Dirichlet) GEOM (w. Dirichlet)</td><td>Ours</td></tr><tr><td>0</td><td>61.7 ± 1.3</td><td>76.0 ± 0.8</td><td>74.7 ± 0.4</td><td>77.2 ± 0.6</td></tr><tr><td>1</td><td>65.9 ± 0.7</td><td>83.0 ± 1.6</td><td>95.7 ± 0.0</td><td>96.7 ± 0.2</td></tr><tr><td>2</td><td>50.8 ± 0.3</td><td>79.5 ± 0.7</td><td>78.1 ± 0.4</td><td>83.3 ± 1.4</td></tr><tr><td>3</td><td>59.1 ± 0.4</td><td>71.4 ± 0.9</td><td>72.4 ± 0.5</td><td>77.7 ± 0.7</td></tr><tr><td>4</td><td>60.9 ± 0.3</td><td>83.5 ± 1.0</td><td>87.8 ± 0.2</td><td>87.8 ± 0.7</td></tr><tr><td>5</td><td>65.7 ± 0.8</td><td>84.0 ± 0.3</td><td>87.8 ± 0.1</td><td>87.8 ± 0.6</td></tr><tr><td>6</td><td>67.7 ± 0.8</td><td>78.4 ± 0.7</td><td>83.4 ± 0.5</td><td>90.0 ± 0.6</td></tr><tr><td>7</td><td>67.3 ± 0.3</td><td>89.3 ± 0.5</td><td>95.5 ± 0.1</td><td>96.1 ± 0.3</td></tr><tr><td>8</td><td>75.9 ± 0.4</td><td>88.6 ± 0.6</td><td>93.3 ± 0.0</td><td>93.8 ± 0.9</td></tr><tr><td>9</td><td>73.1 ± 0.4</td><td>82.4 ± 0.7</td><td>91.3 ± 0.1</td><td>92.0 ± 0.6</td></tr><tr><td>Average</td><td>64.8</td><td>81.6</td><td>86.0</td><td>88.2</td></tr></table>

Anomaly Detection Accuracy on FashionMNIST (ROC-AUC %)

Table content: <table><tr><td>Class</td><td/><td>Method</td><td/><td/></tr><tr><td/><td colspan="3">Deep-SVDD GEOM (no Dirichlet) GEOM (w. Dirichlet)</td><td>Ours</td></tr><tr><td>0</td><td>98.2</td><td>77.8 ± 5.9</td><td>99.4 ± 0.0</td><td>94.1 ± 0.9</td></tr><tr><td>1</td><td>90.3</td><td>79.1 ± 16.3</td><td>97.6 ± 0.1</td><td>98.5 ± 0.3</td></tr><tr><td>2</td><td>90.7</td><td>80.8 ± 6.9</td><td>91.1 ± 0.2</td><td>90.8 ± 0.4</td></tr><tr><td>3</td><td>94.2</td><td>79.2 ± 9.1</td><td>89.9 ± 0.4</td><td>91.6 ± 0.9</td></tr><tr><td>4</td><td>89.4</td><td>77.8 ± 3.3</td><td>92.1 ± 0.0</td><td>91.4 ± 0.3</td></tr><tr><td>5</td><td>91.8</td><td>58.0 ± 29.4</td><td>93.4 ± 0.9</td><td>94.8 ± 0.5</td></tr><tr><td>6</td><td>83.4</td><td>73.6 ± 8.7</td><td>83.3 ± 0.1</td><td>83.4 ± 0.4</td></tr><tr><td>7</td><td>98.8</td><td>87.4 ± 11.4</td><td>98.9 ± 0.1</td><td>97.9 ± 0.4</td></tr><tr><td>8</td><td>91.9</td><td>84.6 ± 5.6</td><td>90.8 ± 0.1</td><td>98.9 ± 0.1</td></tr><tr><td>9</td><td>99.0</td><td>99.5 ± 0.0</td><td>99.2 ± 0.0</td><td>99.2 ± 0.3</td></tr><tr><td>Average</td><td>92.8</td><td>79.8</td><td>93.5</td><td>94.1</td></tr></table>

Anomaly Detection Accuracy (%)

Table content: <table><tr><td>Method</td><td/><td/><td/><td colspan="2">Dataset</td><td/><td/><td/></tr><tr><td/><td colspan="2">Arrhythmia</td><td>Thyroid</td><td/><td>KDD</td><td/><td colspan="2">KDDRev</td></tr><tr><td/><td>F 1 Score</td><td>σ</td><td>F 1 Score</td><td>σ</td><td>F 1 Score</td><td>σ</td><td>F 1 Score</td><td>σ</td></tr><tr><td>OC-SVM</td><td>45.8</td><td/><td>38.9</td><td/><td>79.5</td><td/><td>83.2</td><td/></tr><tr><td>E2E-AE</td><td>45.9</td><td/><td>11.8</td><td/><td>0.3</td><td/><td>74.5</td><td/></tr><tr><td>LOF</td><td>50.0</td><td>0.0</td><td>52.7</td><td>0.0</td><td>83.8</td><td>5.2</td><td>81.6</td><td>3.6</td></tr><tr><td>DAGMM</td><td>49.8</td><td/><td>47.8</td><td/><td>93.7</td><td/><td>93.8</td><td/></tr><tr><td>FB-AE</td><td>51.5</td><td>1.6</td><td>75.0</td><td>0.8</td><td>92.7</td><td>0.3</td><td>95.9</td><td>0.4</td></tr><tr><td>GOAD(Ours)</td><td>52.0</td><td>2.3</td><td>74.5</td><td>1.1</td><td>98.4</td><td>0.2</td><td>98.9</td><td>0.3</td></tr><tr><td colspan="3">5.2 TABULAR DATA EXPERIMENTS</td><td/><td/><td/><td/><td/><td/></tr><tr><td>Datasets:</td><td/><td/><td/><td/><td/><td/><td/><td/></tr></table>

Anomaly Detection Accuracy on Cifar10 (%)

Table content: <table><tr><td>Class</td><td/><td>Method</td><td/></tr><tr><td colspan="4">GEOM (w. Dirichlet) GOAD(s = 0.1) GOAD(1.0)</td></tr><tr><td>0</td><td>74.7 ± 0.4</td><td>77.2 ± 0.6</td><td>77.9 ± 0.7</td></tr><tr><td>1</td><td>95.7 ± 0.0</td><td>96.7 ± 0.2</td><td>96.4 ± 0.9</td></tr><tr><td>2</td><td>78.1 ± 0.4</td><td>83.3 ± 1.4</td><td>81.8 ± 0.8</td></tr><tr><td>3</td><td>72.4 ± 0.5</td><td>77.7 ± 0.7</td><td>77.0 ± 0.7</td></tr><tr><td>4</td><td>87.8 ± 0.2</td><td>87.8 ± 0.7</td><td>87.7 ± 0.5</td></tr><tr><td>5</td><td>87.8 ± 0.1</td><td>87.8 ± 0.6</td><td>87.8 ± 0.7</td></tr><tr><td>6</td><td>83.4 ± 0.5</td><td>90.0 ± 0.6</td><td>90.9 ± 0.5</td></tr><tr><td>7</td><td>95.5 ± 0.1</td><td>96.1 ± 0.3</td><td>96.1 ± 0.2</td></tr><tr><td>8</td><td>93.3 ± 0.0</td><td>93.8 ± 0.9</td><td>93.3 ± 0.1</td></tr><tr><td>9</td><td>91.3 ± 0.1</td><td>92.0 ± 0.6</td><td>92.4 ± 0.3</td></tr><tr><td>Average</td><td>86.0</td><td>88.2</td><td>88.1</td></tr><tr><td>A.2 TABULAR DATASETS</td><td/><td/><td/></tr><tr><td colspan="4">Following the evaluation protocol of Zong et al. (2018), 4 datasets are used in this comparison:</td></tr></table>

Peer review (iclr2020):
UPDATE: I acknowledge that I‘ve read the author responses as well as the other reviews. I appreciate the clarifications, additional experiments, and overall improvements made to the paper. I updated my score to 6 Weak Accept. #################### This paper proposes a deep method for anomaly detection (AD) that unifies recent deep one-class classification [6] and transformation-based classification [3, 4] approaches. The proposed method transforms the data to subspaces via random affine transformations and identifies with each such transformation a cluster centered around some centroid (set as the mean of the respectively transformed samples). The training objective of the method is defined by the triplet loss [5] which learns to separate the subspaces via maximizing the inter-class as well as minimizing the intra-class variation. The anomaly score for a sample is finally given by the sum of log-probabilities, where each transformation-/cluster-probability is derived from the distance to the cluster center. Using random affine transformations, the proposed method is applicable to general data types in contrast to previous works that only consider geometric transformations (rotation, translation, etc.) on image data [3, 4]. The paper conclusively presents experiments on CIFAR-10 and four tabular datasets (Arrhythmia, Thyroid, KDD, KDD-Rev) that indicate a superior detection performance of the proposed method over baselines and deep competitors. I think this paper is not yet ready for acceptance due to the following main reason: (i) The experimental evaluation needs clarification and should be extended to judge the significance of the empirical results. (i) I think the comparison with state-of-the-art deep competitors [6, 4] should consider at least another image dataset besides CIFAR-10, e.g. Fashion-MNIST or the recently published MVTec [1] for AD. On CIFAR-10, do you also consider geometric transformations however using your triplet loss or are the reported results from random affine transformations? I think reporting both would be insightful to see the difference between image-specific and random affine transformations. On the tabular datasets, how do deep networks perform in contrast to the final linear classifier reported on most datasets? Especially when only using a final linear classifier, the proposed method is very similar to ensemble learning on random subspace projections. Figure 1 (right) shows an error curve that is also typical for ensemble learning (decrease in mean error and reduction in overall variance). I think this should be discussed and ensemble baselines [2] should be considered for a fair comparison. Table 2 also seems incomplete with the variances missing for some methods? Further clarifications are needed. How many transformations do you consider on the specific datasets? How is hyperparameter chosen? Finally, I think the claim that the approach is robust against training data contamination is too early from only comparing against the DAGMM method on KDDCUP (Is Figure 1 (left) wrong labeled? As presented DAGMM shows a lower classification error). Overall, I think the paper proposes an interesting unification and generalization of existing state-of-the-art approaches [6, 4], but I think the experimental evaluation needs to be more extensive and clarified to judge the potential significance of the results. The presentation of the paper also needs some polishing as there are many typos and grammatical errors in the current manuscript (see comments below). #################### *Additional Feedback* *Positive Highlights* 1. Well motivated anomaly detection approach that unifies existing state-of-the-art deep one-class classification [6] and transformation-based classification [3, 4] approaches that indicates improved detection performance and is applicable to general types of data. 2. The work is well placed in the literature. All relevant and recent related work is included in my view. *Ideas for Improvement* 3. Extend and clarify the experimental evaluation as discussed in (i) to infer statistical significance of the results. 4. I think many details from the experimental section could be moved to the Appendix leaving space for the additional experiments. 5. Maybe add some additional tabular datasets as presented in [2, 7]. 6. Maybe clarify “Classification-based AD” vs. “Self-Supervised AD” a bit more since unfamiliar readers might be confused with supervised classification. 7. Improve the presentation of the paper (fix typos and grammatical errors, improve legibility of plots) 8. Some practical guidance on how to choose hyperparameter would be good. This may just be a default parameter recommendation and showing that the method is robust to changes in s with a small sensitivity analysis. *Minor comments* 9. The set difference is denoted with a backslash not a forward slash, e.g. . 10. citet vs citep typos in the text (e.g. Section 1.1, first paragraph “ ... Sakurada & Yairi (2014); ...”) 11. Section 1.1: “ADGMM introduced by Zong et al. (2018) ...” » “DAGMM introduced by Zong et al. (2018) ...”. 12. Eq. (1): in the first denominator as well. 13. Section 2, 4th paragraph: . 14. , , and are used somewhat inconsistently in the text. 15. Section 3: “Note, that it is defined everywhere.”? 16. Section 4: *If is chosen deterministicaly ...* >> *If is chosen deterministically ...* 17. Section 5, first sentence: “... to validate the effectiveness our distance-based approach ...” » “... to validate the effectiveness of our distance-based approach ...”. 18. Section 5.1: “We use the same same architecture and parameter choices of Golan & El-Yaniv (2018) ...” » “We use the same architecture and parameter choices as Golan & El-Yaniv (2018) ...” 19. Section 5.2: “Following the evaluation protocol of Zong et al. Zong et al. (2018) ...” » “Following the evaluation protocol of Zong et al. (2018) ...”. 20. Section 5.2: “Thyroid is a small dataset, with a low anomally to normal ratio ...” » “Thyroid is a small dataset, with a low anomaly to normal ratio ...”. 21. Section 5.2, KDDCUP99 paragraph: “Tab. ??” reference error. 22. Section 5.2, KDD-Rev paragraph: “Tab. ??” reference error. #################### *References* [1] P. Bergmann, M. Fauser, D. Sattlegger, and C. Steger. Mvtec ad–a comprehensive real-world dataset for unsupervised anomaly detection. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 9592–9600, 2019. [2] J. Chen, S. Sathe, C. Aggarwal, and D. Turaga. Outlier detection with autoencoder ensembles. In SDM, pages 90–98, 2017. [3] S. Gidaris, P. Singh, and N. Komodakis. Unsupervised representation learning by predicting image rotations. In ICLR, 2018. [4] I. Golan and R. El-Yaniv. Deep anomaly detection using geometric transformations. In NIPS, 2018. [5] X. He, Y. Zhou, Z. Zhou, S. Bai, and X. Bai. Triplet-center loss for multi-view 3d object retrieval. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1945–1954, 2018. [6] L. Ruff, R. A. Vandermeulen, N. Görnitz, L. Deecke, S. A. Siddiqui, A. Binder, E. Müller, and M. Kloft. Deep one-class classification. In International Conference on Machine Learning, pages 4393–4402, 2018. [7] L. Ruff, R. A. Vandermeulen, N. Görnitz, A. Binder, E. Müller, K.-R. Müller, and M. Kloft. Deep semi-supervised anomaly detection. arXiv preprint arXiv:1906.02694, 2019.