Classification confidence scores are designed to measure the accuracy of the model when predicting class assignment (rather than the uncertainty inherent in the data). Most generative classification models are probabilistic in nature, and therefore provide such confidence scores directly. Most discriminative models, on the other hand, do not have direct access to the probability of each prediction. Instead, related non-probabilistic scores are used as proxies, as for example the margin in SVM classifiers.
When trying to evaluate the confidence of neural network (NN) classifiers, a number of scores are commonly used. One is the strength of the most activated output unit followed by softmax normalization, or the closely related ratio between the activities of the strongest and second strongest units. Another is the (negative) entropy of the output units, which is minimal when all units are equally probable. Often, however, these scores do not provide a reliable measure of confidence.
Why is it important to reliably measure prediction confidence? In various contexts such as medical diagnosis and decision support systems, it is important to know the prediction confidence in order to decide how to act upon it. For example, if the confidence in a certain prediction is too low, the involvement of a human expert in the decision process may be called for. Another important aspect of real world applications is the ability to recognize samples that do not belong to any of the known classes, which can also be improved with a reliable confidence score. But even irrespective of the application context, reliable prediction confidence can be used to boost the classifier performance via such methods as self-training or ensemble classification. In this context a better confidence score can improve the final performance of the classifier. The derivation of a good confidence score should therefore be part of the classifier’s design, as important as any other component of classifiers’ design.
In order to derive a reliable confidence score for NN classifiers, we focus our attention on an empirical observation concerning neural networks trained for classification, which have been shown to demonstrate in parallel useful embedding properties. Specifically, a common practice these days is to treat one of the upstream layers of a pre-trained network as a representation (or embedding) layer. This layer activation is then used for representing similar objects and train simpler classifiers (such as SVM, or shallower NNs) to perform different tasks, related but not identical to the original task the network had been trained on.
. Given this semantic representation, one can compute a natural multi-class probability distribution as described in Section2.1
, by estimating local density in the embedding space. This estimated density can be used to assign a confidence score to each test point, using its likelihood to belong to the assigned class.
We note, however, that the commonly used embedding discussed above is associated with a network trained for classification only, which may impede its suitability to measure confidence reliably. In fact, when training neural networks, metric learning is often used to achieve desirable embeddings (e.g., Weston et al. (2012); Schroff et al. (2015); Hoffer & Ailon (2015); Tadmor et al. (2016)
). Since our goal is to improve the probabilistic interpretation of the embedding, which is essentially based on local point density estimation (or the distance between points), we may wish to modify the loss function and add a term which penalizes for the violation of pairwise constraints as inHadsell et al. (2006). Our experiments show that the modified network indeed produces a better confidence score, with comparable classification performance. Surprisingly, while not directly designed for this purpose, we show that networks which are trained with adversarial examples following the Adversarial Training paradigm (Szegedy et al., 2013; Goodfellow et al., 2014), also provide a suitable embedding for the new confidence score.
Our first contribution, therefore, is a new prediction confidence score which is based on local density estimation in the embedding space of the neural network. This score can be computed for every network, but in order for this score to achieve superior performance, it is necessary to slightly change the training procedure. In our second contribution we show that suitable embedding can be achieved by either augmenting the loss function of the trained network with a term which penalizes for distance-based similarity loss (as in Eq. (2) below), or by using Adversarial Training. The importance of the latter contribution is two fold: Firstly, we are the first to show that the density of image embeddings is improved with indirect Adversarial Training perturbations, in addition to the improved word embedding quality shown in Miyato et al. (2016) by direct Adversarial Training perturbations. Secondly, we show in Section 3 that Adversarial Training improves the results while imposing a much lighter burden of hyper-parameters to tune as compared to the distance-based loss.
The new confidence score is evaluated in comparison to other scores, using the following tasks: (i) Performance in the binary classification task of identifying each class prediction as correct or incorrect (see Section 2.1). (ii) Training an ensemble of NN classifiers, where each classifier’s prediction is weighted by the new confidence score (see Section 2.4). (iii) Novelty detection, where confidence is used to predict whether a test point belongs to one of the known classes from the train set (see Section 2.5).
The empirical evaluation of our method is described in Section 3, using a few datasets and different network architectures which have been used in previous work when using these specific datasets. Our method achieves significant improvement in all 3 tasks. When compared with a more recent method which had been shown to improve traditional measures of classification confidence - MC dropout (Gal & Ghahramani, 2015), our distance-based score achieves better results while also maintaining lower computational costs.
The Bayesian approach seeks to compute a posterior distribution over the parameters of the neural network which is used to estimate prediction uncertainty, as in MacKay (1992) and Neal (2012). However, Bayesian neural networks are not always practical to implement, and the computational cost involved it typically high. In accordance, in a method which is referred to below as MC-Dropout, Gal & Ghahramani (2015) proposed to use dropout during test time as a Bayesian approximation of the neural network, providing a cheap proxy to Bayesian Neural Networks. Lakshminarayanan et al. (2016) proposed to use Adversarial Training to improve the uncertainty measure of the entropy score of the neural network.
Still, the most basic and one of the most common confidence scores for neural networks can be derived from the strength of the most activated output unit, or rather its normalized version (also called softmax output or max margin). A confidence score that handles better a situation where there is no one class which is most probable, is the (negative) entropy of the normalized network’s output. Zaragoza & d’Alché Buc (1998) compared these scores, as well as some more complex ones (e.g. Tibshirani (1996)), demonstrating somewhat surprisingly the empirical superiority of the two most basic methods described in the previous paragraph.
Ensembles of models have been used to improve the overall performance of the final classifier (see reviews in Dietterich (2000) and Li et al. (2017)). There are many ways to train an ensemble, such as boosting or bagging. There are also many ways to integrate the predictions of the classifiers in the ensemble, including the average prediction or voting discussed by Bauer & Kohavi (1999). Some ensemble methods use the confidence score to either weight the predictions of the different classifiers (average weighting) or for confidence voting.
Novelty detection, where the task is to determine whether a test point belongs to a known class label or not, is another problem which becomes more relevant with the ever increasing availability of very large datasets, see reviews in Markou & Singh (2003), Pimentel et al. (2014) and the recent work in Vinokurov & Weinshall (2016). This task is also highly relevant in real world applications, where the classifier is usually exposed to many samples which do not belong to a known class. Note that novelty detection is quite different from the learning of classes with no examples, as in zero shot learning (Palatucci et al., 2009).
2 New Confidence Score
We propose next a new confidence score. We then discuss how it can be used to boost classification performance with ensemble methods, or when dealing with novelty detection.
2.1 New Confidence Score for Neural Network Classifiers
Our confidence score is based on the estimation of local density as induced by the network, when points are represented using the effective embedding created by the trained network in one of its upstream layers. Local density at a point is estimated based on the Euclidean distance in the embedded space between the point and its nearest neighbors in the training set.
Specifically, let denote the embedding of as defined by the trained neural network classifier. Let denote the set of -nearest neighbors of in the training set, based on the Euclidean distance in the embedded space, and let denote the corresponding class labels of the points in . A probability space is constructed (as is customary) by assuming that the likelihood that two points belong to the same class is proportional to the exponential of the negative Euclidean distance between them. In accordance, the local probability that a point belongs to class is proportional to the probability that it belongs to the same class as the subset of points in that belong to class .
Based on this local probability, the confidence score for the assignment of point to class is defined as follows:
is a score between 0 to 1, which is monotonically related to the local density of similarly labeled train points in the neighborhood of . Henceforth (1) is referred to as Distance score.111Related measures of density, such as a count of the "correct" neighbors or the inverse of the distance, behave similarly and perform comparably. We note here that while intuitively it might be beneficial to add a scaling factor to the distance in (1), such as the mean distance, we found it to have a deteriorating effect, in line with related work such as Salakhutdinov & Hinton (2007).
Two ways to achieve effective embedding:
As mentioned is Section 1, in order to achieve an effective embedding it helps to modify the training procedure of the neural network classifier. The simplest modification augments the network’s loss function during training with an additional term. The resulting loss function is a linear combination of two terms, one for classification denoted , and another pairwise loss for the embedding denoted . This is defined as follows:
where is defined as
A desirable embedding can also be achieved by Adversarial Training, using the fast gradient method suggested in Goodfellow et al. (2014). In this method, given an input with target , and a neural network with parameters , adversarial examples are generated using:
In each step an adversarial example is generated for each point in the batch and the current parameters of the network, and classification loss is minimized for both the regular and adversarial examples. Although originally designed to improve robustness, this method seems to improve the network’s embedding for the purpose of density estimation, possibly because along the way it increases the distance between pairs of adjacent points with different labels.
In (2) is defined by all pairs of points, denoted . For each training minibatch, this set is sampled with no replacement from the training points in the minibatch, with half as many pairs as the size of the minibatch. In our experiments, is the regular cross entropy loss. We note here that we also tried distance-based loss functions which do not limit the distance between points of the same class to be exactly 0 (such as those in Hoffer & Ailon (2015) and Tadmor et al. (2016)). However, those functions produced worse results, especially when the dataset had many classes. Finally we note that we have tried using the distance-based loss and adversarial training together while training the network, but this has also produced worse results.
2.2 Alternative confidence scores
Given a trained network, two measure are usually used to evaluate classification confidence:
- Max margin:
the maximal activation, after normalization, in the output layer of the network.
the (negative) entropy of the activations in the output layer of the network.
As noted above, the empirical study in Zaragoza & d’Alché Buc (1998) showed that these two measures are typically as good as any other existing method for the evaluation of classification confidence.
Two recent methods have been shown to improve the reliability of the confidence score based on Entropy: MC-Dropout (Gal & Ghahramani, 2015) and Adversarial Training (Lakshminarayanan et al., 2016; Goodfellow et al., 2014). In terms of computational cost, adversarial training can increase (and sometimes double) the training time, due to the computation of additional gradients and the addition of the adversarial examples to the training set. MC-Dropout, on the other hand, does not change the training time but increases the test time by orders of magnitude (typically 100-fold). Both methods are complementary to our approach, in that they focus on modifications to the actual computation of the network during either train or test time. After all is done, they both evaluate confidence using the Entropy score. As we show in our experiments, adversarial training combined with our proposed confidence score improves the final results significantly.
2.3 Our method: computational analysis
Unlike the two methods described above, MC-Dropout and Adversarial Training, our distance-based confidence score takes an existing network and computes a new confidence score from the network’s embedding and output activation. It can use any network, with or without adversarial training or MC dropout. If the loss function of the network is suitably augmented (see discussion above), empirical results in Section 3 show that our score always improves results over the Entropy score of the given network.
Train and test computational complexity:
Considering the distance-based loss, Tadmor et al. (2016) showed that computing distances during the training of neural networks have negligible effect on training time. Alternatively, when using adversarial training, additional computational cost is incurred as mentioned above, while on the other hand fewer hyper parameters are left for tuning. During test time, our method requires carrying over the embeddings of the training data and also the computation of the nearest neighbors for each sample.
Nearest neighbor classification has been studied extensively in the past 50 years, and consequently there are many methods to perform either precise or approximate -nn with reduced time and space complexity (see Gunadi (2011) for a recent empirical comparison of the main methods). In our experiments, while using either Condensed Nearest Neighbours (Hart, 1968) or Density Preserving Sampling (Budka & Gabrys, 2013), we were able to reduce the memory requirements of the train set to of its original size without affecting performance. At this point the additional storage required for the nearest neighbor step was much smaller than the size of the networks used for classification, and the increase in space complexity became insignificant.
With regards to time complexity, recent studies have shown how modern GPU’s can be used to speed up nearest neighbor computation by orders of magnitude (Garcia et al., 2008; Arefin et al., 2012). Hyvönen et al. (2015) also showed that k-nn approximation with 99% recall can be accomplished 10-100 times faster as compared to precise k-nn.
Combining such reductions in both space and time, we note that even for a very large dataset, including for example 1M images embedded in a 1K dimensional space, the computation complexity of the nearest neighbors for each test sample requires at most 5M floating-point operations. This is comparable and even much faster than a single forward run of this test sample through a modern, relatively small, ResNets (He et al., 2016) with 2-30M parameters. Thus, our method scales well even for very large datasets.
2.4 Ensembles of Classifiers
There are many ways to define ensembles of classifiers, and different ways to put them together. Here we focus on ensembles which are obtained when using different training parameters with a single training method. This specifically means that we train several neural networks using random initialization of the network parameters, along with random shuffling of the train points.
Henceforth Regular Networks will refer to networks that were trained only for classification with the regular cross-entropy loss, Distance Networks will refer to networks that were trained with the loss function defined in (2), and AT Networks will refer to networks that were trained with adversarial examples as defined in (3).
Ensemble methods differ in how they weigh the predictions of different classifiers in the ensemble. A number of options are in common use (see Li et al. (2017)
for a recent review), and in accordance are used for comparison in the experimental evaluation section: 1) softmax average, 2) simple voting, 3) weighted softmax average (where each softmax vector is multiplied by its related prediction confidence score), 4) confidence voting (where the most confident network getsvotes), and 5) dictator voting (the decision of the most confident network prevails). We evaluate methods with weights defined by either the Entropy score or the Distance score defined in (1).
2.5 Novelty Detection
Novelty detection seeks to identify points in the test set which belong to classes not present in the train set. To evaluate performance in this task we train a network with a known benchmark dataset, while augmenting the test set with test points from another dataset that includes different classes. Each confidence score is used to differentiate between known and unknown samples. This is a binary classification task, and therefore we can evaluate performance using ROC curves.
3 Experimental Evaluation
In this section we empirically evaluate the benefits of our proposed approach, comparing the performance of the new confidence score with alternative existing scores in the 3 different tasks described above.
Table 1, legend. Leftmost column: Margin and Entropy denote the commonly used confidence scores described in Section 2.2. Distance denotes our proposed method described in Section 2.1. Second line: Reg. denotes networks trained with the entropy loss, Dist. denotes networks trained with the distance loss defined in (2), AT denotes networks trained with adversarial training as defined in (3), and MCD denotes MC-Dropout when applied to networks normally trained with the entropy loss. Since the network trained for SVHN was trained without dropout,MCD was not applicable.
Table 2, legend. Notations are similar to those described in the legend of Table 1, with one distinction: Distance (1) now denotes the regular architecture where the distance score is computed independently for each network in the pair using its own embedding, while Distance (2) denotes the hybrid architecture where one network in the pair is fixed to be a Distance network, and its embedding is used to compute the distance score for the prediction of the second network in the pair.
3.1 Experimental Settings
For evaluation we used 3 data sets: CIFAR-100 (Krizhevsky & Hinton, 2009), STL-10 (Coates et al., 2010) ( version) and SVHN (Netzer et al., 2011). In all cases, as is commonly done, the data was pre-processed using global contrast normalization and ZCA whitening. No other method of data augmentation was used for CIFAR-100 and SVHN, while for SVHN we also did not use the additional 5̃00K labeled images222Note that reported results denoted as "state-of-the-art" for these datasets often involve heavy augmentation. In our study, in order to be able to do the exhaustive comparisons described below, we opted for the un-augmented scenario as more flexible and yet informative enough for the purpose of comparison between different methods. Therefore our numerical results should be compared to empirical studies which used similar un-augmented settings. We specifically selected commonly used architectures that achieve good performance, close to the results of modern ResNets, and yet flexible enough for extensive evaluations.. For STL-10, on the other hand, cropping and flipping were used for STL-10 to check the robustness of our method to heavy data augmentation.
In our experiments, all networks used ELU (Clevert et al., 2015) for non-linear activation. For CIFAR-100 and STL-10 we used the network suggested in Clevert et al. (2015) with the following architecture:
denotes a convolution layer with kernels of size
and stride 1.
denotes a max-pooling layer with window sizeand stride 2, and denotes a fully connected layer with output units. For STL-10 the last layer was replaced by FC(10). During training (only) we applied dropout (Srivastava et al., 2014) before each max pooling layer (excluding the first) and after the last convolution, with the corresponding drop probabilities of .
With the SVHN dataset we used the following architecture:
For the networks trained with distance loss, for each batch, we randomly picked pairs of points so that at least 20% of the batch included pairs of points from the same class. The margin in (2) was set to 25 in all cases, and the parameter in (2) was set to 0.2. The rest of the training parameters can be found in the supplementary material. For the distance score we observed that the number of nearest neighbors could be set to the maximum value, which is the number of samples in each class in the train data. We also observed that smaller numbers (even ) often worked as well. In general, the results reported below are not sensitive to the specific values of the hyper-parameters as listed above; we observed only minor changes when changing the values of and the margin .
MC-Dropout: as proposed in Gal & Ghahramani (2015), we used MC dropout in the following manner. We trained each network as usual, but computed the predictions while using dropout during test. This was repeated 100 times for each test example, and the average activation was delivered as output.
-axis), with standard deviation of the difference over (at least) 5 repetitions.
3.2 Error Prediction of Multi-class Labels
We first compare the performance of our confidence score in the binary task of evaluating whether the network’s predicted classification label is correct or not. While our results are independent of the actual accuracy, we note that the accuracy is comparable to those achieved with ResNets when not using augmentation for CIFAR-100 or when using only the regular training data for SVHN (see Huang et al. (2016) for example).
Performance in this binary task is evaluated using ROC curves computed separately for each confidence score. Results on all three datasets can be seen in Table 1. In all cases our proposed distance score, when computed on a suitably trained network, achieves significant improvement over the alternative scores, even when those are enhanced by using either Adversarial Training or MC-Dropout.
To further test our distance score we evaluate performance over an ensemble of two networks. Results are shown in Table 2. Here too, the distance score achieves significant improvement over all other methods. We also note that the difference between the distance score computed over Distance networks and the entropy score computed over adversarially trained networks, is now much higher as compared to this difference when using only one network. As we show in Section 3.3
, adversarial training typically leads to a decreased performance when using an ensemble of networks and relying only on the entropy score (probably due to a decrease in variance among the classifiers). This observation further supports the added value of our proposed confidence score.
As a final note, we also used a hybrid architecture using a matched pair of one classification network (of any kind) and a second Distance network. The embedding defined by the Distance network is used to compute the distance score for the predictions of the first classification network. Surprisingly, this method achieves the best results in both CIFAR-100 and SVHN while being comparable to the best result in STL-10. This method is used later in Section 3.3 to improve accuracy when running an ensemble of networks. Further investigation of this phenomenon lies beyond of the scope of the current study.
3.3 Ensemble Methods
In order to evaluate the improvement in performance when using our confidence score to direct the integration of classifiers in an ensemble, we used a few common ways to define the integration procedure, and a few ways to construct the ensemble itself. In all comparisons the number of networks in the ensemble remained fixed at . Our experiments included the following ensemble compositions: (a) regular networks, (b) distance networks, (c) AT (Adversarially Trained) networks, and (d-f) networks such that networks belong to one kind of networks (regular, distance or AT) and the remaining networks belong to another kind, spanning all 3 combinations.
As described in Section 2.4, the predictions of classifiers in an ensemble can be integrated using different criteria. In general we found that all the methods which did not use our distance score (1), including methods which used any of the other confidence score for prediction weighting, performed less well than a simple average of the softmax activation (method 1 in Section 2.4). Otherwise the best performance was obtained when using a weighted average (method 3 in Section 2.4) with weights defined by our distance score (1). With variants (d-f) we also checked two options of obtaining the distance score: (i) Each network defined its own confidence score; (ii) in light of the advantage demonstrated by hybrid networks as shown in Section 3.2 and for each pair of networks from different kinds, the distance score for both was computed while using the embedding of only one of networks in the pair. MC-Dropout was not used in this section due to its high computational cost.
While our experiments included all variants and all weighting options, only 4 cases are shown in the following description of the results in order to improve readability: 1) the combination achieving best performance; 2) the combination achieving best performance when not using adversarial training (as AT entails additional computational load at train time); 3) the ensemble variant achieving best performance without using the distance score (baseline), 4) ensemble average when using adversarial training without distance score. Additional results for most of the other conditions we tested can be found in the supplementary material. To gain a better statistical significance, each experiment was repeated at least 5 times, with no overlap between the networks.
CIFAR-100 and STL-10: Fig. 1 shows the ensemble accuracy for the methods mentioned above when using these datasets. It can be clearly seen that weighting predictions based on the distance score from (1) improves results significantly. The best results are achieved when combining Distance Networks and Adversarial Networks, with significant improvement over an ensemble of only one kind of networks (not shown in the graph). Still, we note importantly that the distance score is used to weight both kind of networks. Since Adversarial Training is not always applicable due to its computational cost at train time, we show that the combination of Distance networks and Regular networks can also lead to significant improvement in performance when using the distance score and the hybrid architecture described in Section 3.2. Finally we note that Adversarial networks alone achieve very poor results when using the original ensemble average, further demonstrating the value of the distance score in improving the performance of an ensemble of Adversarial networks alone.
SVHN: Results for this dataset are also shown in Fig.1. While not as significant as those in the other datasets (partly due to the high initial accuracy), they are still consistent with them, demonstrating again the power and robustness of the distance score.
3.4 Novelty Detection
Finally, we compare the performance of the different confidence scores in the task of novelty detection. In this task the confidence score is used to decide another binary classification problem: does the test example belong to the set of classes the networks had been trained on, or rather to some unknown class? Performance in this binary classification task is evaluated using the corresponding ROC curve of each confidence score.
We used two contrived datasets to evaluate performance in this task, following the experimental construction suggested in Lakshminarayanan et al. (2016). In the first experiment, we trained the network on the STL-10 dataset, and then tested it on both STL-10 and SVHN test sets. In the second experiment we switched between the datasets (and changed the trained network) making SVHN the known dataset and STL-10 the novel one. The task requires to discriminate between the known and the novel datasets. For comparison we computed novelty, as one often does, with a one-class SVM classifier while using the same embeddings. Novelty thus computed showed much poorer performance, possibly because this dataset involves many classes (one class SVM is typically used with a single class), and therefore these results are not included here.
Table 3, legend. Left: STL-10 (known) and SVHN (novel). Right: SVHN (known) and STL-10 (novel).
Results are shown in Table 3. Adversarial training, which was designed to handle this sort of challenge, is not surprisingly the best performer. Nevertheless, we see that our proposed confidence score improves the results even further, again demonstrating its added value.
We proposed a new confidence score for multi-class neural network classifiers. The method we proposed to compute this score is scalable, simple to implement, and can fit any kind of neural network. This method is different from other commonly used methods as it is based on measuring the point density in the effective embedding space of the network, thus providing a more coherent statistical measure for the distribution of the network’s predictions.
We also showed that suitable embeddings can be achieved by using either a distance-based loss or, somewhat unexpectedly, Adversarial Training. We demonstrated the superiority of the new score in a number of tasks. Those tasks were evaluated using a number of different datasets and with task-appropriate network architectures. In all tasks our proposed method achieved the best results when compared to traditional confidence scores.
- Arefin et al. (2012) Arefin, Ahmed Shamsul, Riveros, Carlos, Berretta, Regina, and Moscato, Pablo. Gpu-fs-k nn: A software tool for fast and scalable k nn computation using gpus. PloS one, 7(8):e44000, 2012.
- Bauer & Kohavi (1999) Bauer, Eric and Kohavi, Ron. An empirical comparison of voting classification algorithms: Bagging, boosting, and variants. Machine learning, 36(1-2):105–139, 1999.
- Budka & Gabrys (2013) Budka, Marcin and Gabrys, Bogdan. Density-preserving sampling: robust and efficient alternative to cross-validation for error estimation. IEEE transactions on neural networks and learning systems, 24(1):22–34, 2013.
- Clevert et al. (2015) Clevert, Djork-Arné, Unterthiner, Thomas, and Hochreiter, Sepp. Fast and accurate deep network learning by exponential linear units (elus). arXiv preprint arXiv:1511.07289, 2015.
- Coates et al. (2010) Coates, Adam, Lee, Honglak, and Ng, Andrew Y. An analysis of single-layer networks in unsupervised feature learning. Ann Arbor, 1001(48109):2, 2010.
- Deng et al. (2009) Deng, J., Dong, W., Socher, R., Li, L.-J., Li, K., and Fei-Fei, L. ImageNet: A Large-Scale Hierarchical Image Database. In CVPR09, 2009.
- Dietterich (2000) Dietterich, Thomas G. Ensemble methods in machine learning. In International workshop on multiple classifier systems, pp. 1–15. Springer, 2000.
Donahue et al. (2015)
Donahue, Jeffrey, Anne Hendricks, Lisa, Guadarrama, Sergio, Rohrbach, Marcus,
Venugopalan, Subhashini, Saenko, Kate, and Darrell, Trevor.
Long-term recurrent convolutional networks for visual recognition and
Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 2625–2634, 2015.
- Gal & Ghahramani (2015) Gal, Yarin and Ghahramani, Zoubin. Dropout as a bayesian approximation: Representing model uncertainty in deep learning. arXiv preprint arXiv:1506.02142, 2, 2015.
- Garcia et al. (2008) Garcia, Vincent, Debreuve, Eric, and Barlaud, Michel. Fast k nearest neighbor search using gpu. In Computer Vision and Pattern Recognition Workshops, 2008. CVPRW’08. IEEE Computer Society Conference on, pp. 1–6. IEEE, 2008.
- Goodfellow et al. (2014) Goodfellow, Ian J, Shlens, Jonathon, and Szegedy, Christian. Explaining and harnessing adversarial examples. arXiv preprint arXiv:1412.6572, 2014.
- Gunadi (2011) Gunadi, Hendra. Comparing nearest neighbor algorithms in high-dimensional space. 2011.
- Hadsell et al. (2006) Hadsell, Raia, Chopra, Sumit, and LeCun, Yann. Dimensionality reduction by learning an invariant mapping. In Computer vision and pattern recognition, 2006 IEEE computer society conference on, volume 2, pp. 1735–1742. IEEE, 2006.
- Hart (1968) Hart, Peter. The condensed nearest neighbor rule (corresp.). IEEE transactions on information theory, 14(3):515–516, 1968.
- He et al. (2016) He, Kaiming, Zhang, Xiangyu, Ren, Shaoqing, and Sun, Jian. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 770–778, 2016.
- Hoffer & Ailon (2015) Hoffer, Elad and Ailon, Nir. Deep metric learning using triplet network. In International Workshop on Similarity-Based Pattern Recognition, pp. 84–92. Springer, 2015.
- Hu et al. (2016) Hu, Hexiang, Zhou, Guang-Tong, Deng, Zhiwei, Liao, Zicheng, and Mori, Greg. Learning structured inference neural networks with label relations. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 2960–2968, 2016.
- Huang et al. (2016) Huang, Gao, Sun, Yu, Liu, Zhuang, Sedra, Daniel, and Weinberger, Kilian Q. Deep networks with stochastic depth. In European Conference on Computer Vision, pp. 646–661. Springer, 2016.
- Hyvönen et al. (2015) Hyvönen, Ville, Pitkänen, Teemu, Tasoulis, Sotiris, Jääsaari, Elias, Tuomainen, Risto, Wang, Liang, Corander, Jukka, and Roos, Teemu. Fast k-nn search. arXiv preprint arXiv:1509.06957, 2015.
- Krizhevsky & Hinton (2009) Krizhevsky, Alex and Hinton, Geoffrey. Learning multiple layers of features from tiny images. 2009.
- Lakshminarayanan et al. (2016) Lakshminarayanan, Balaji, Pritzel, Alexander, and Blundell, Charles. Simple and scalable predictive uncertainty estimation using deep ensembles. arXiv preprint arXiv:1612.01474, 2016.
- Li et al. (2017) Li, Hui, Wang, Xuesong, and Ding, Shifei. Research and development of neural network ensembles: a survey. Artificial Intelligence Review, pp. 1–25, 2017.
- MacKay (1992) MacKay, David JC. Bayesian methods for adaptive models. PhD thesis, California Institute of Technology, 1992.
- Markou & Singh (2003) Markou, Markos and Singh, Sameer. Novelty detection: a review—part 2:: neural network based approaches. 83(12):2499–2521, 2003.
- Miyato et al. (2016) Miyato, Takeru, Dai, Andrew M, and Goodfellow, Ian. Adversarial training methods for semi-supervised text classification. arXiv preprint arXiv:1605.07725, 2016.
- Neal (2012) Neal, Radford M. Bayesian learning for neural networks, volume 118. Springer Science & Business Media, 2012.
- Netzer et al. (2011) Netzer, Yuval, Wang, Tao, Coates, Adam, Bissacco, Alessandro, Wu, Bo, and Ng, Andrew Y. Reading digits in natural images with unsupervised feature learning. In NIPS workshop on deep learning and unsupervised feature learning, volume 2011, pp. 5, 2011.
- Palatucci et al. (2009) Palatucci, Mark, Pomerleau, Dean, Hinton, Geoffrey E, and Mitchell, Tom M. Zero-shot learning with semantic output codes. In Advances in neural information processing systems, pp. 1410–1418, 2009.
- Pimentel et al. (2014) Pimentel, Marco AF, Clifton, David A, Clifton, Lei, and Tarassenko, Lionel. A review of novelty detection. Signal Processing, 99:215–249, 2014.
- Salakhutdinov & Hinton (2007) Salakhutdinov, Ruslan and Hinton, Geoffrey E. Learning a nonlinear embedding by preserving class neighbourhood structure. In AISTATS, volume 11, 2007.
Schroff et al. (2015)
Schroff, Florian, Kalenichenko, Dmitry, and Philbin, James.
Facenet: A unified embedding for face recognition and clustering.In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 815–823, 2015.
- Sharif Razavian et al. (2014) Sharif Razavian, Ali, Azizpour, Hossein, Sullivan, Josephine, and Carlsson, Stefan. Cnn features off-the-shelf: an astounding baseline for recognition. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops, pp. 806–813, 2014.
- Srivastava et al. (2014) Srivastava, Nitish, Hinton, Geoffrey E, Krizhevsky, Alex, Sutskever, Ilya, and Salakhutdinov, Ruslan. Dropout: a simple way to prevent neural networks from overfitting. Journal of Machine Learning Research, 15(1):1929–1958, 2014.
- Szegedy et al. (2013) Szegedy, Christian, Zaremba, Wojciech, Sutskever, Ilya, Bruna, Joan, Erhan, Dumitru, Goodfellow, Ian, and Fergus, Rob. Intriguing properties of neural networks. arXiv preprint arXiv:1312.6199, 2013.
- Tadmor et al. (2016) Tadmor, Oren, Rosenwein, Tal, Shalev-Shwartz, Shai, Wexler, Yonatan, and Shashua, Amnon. Learning a metric embedding for face recognition using the multibatch method. In Advances In Neural Information Processing Systems, pp. 1388–1389, 2016.
- Tibshirani (1996) Tibshirani, Robert. A comparison of some error estimates for neural network models. Neural Computation, 8(1):152–163, 1996.
- Vinokurov & Weinshall (2016) Vinokurov, Nomi and Weinshall, Daphna. Novelty detection in multiclass scenarios with incomplete set of class labels. arXiv preprint arXiv:1604.06242, 2016.
- Weston et al. (2012) Weston, Jason, Ratle, Frédéric, Mobahi, Hossein, and Collobert, Ronan. Deep learning via semi-supervised embedding. In Neural Networks: Tricks of the Trade, pp. 639–655. Springer, 2012.
- Zaragoza & d’Alché Buc (1998) Zaragoza, Hugo and d’Alché Buc, Florence. Confidence measures for neural network classifiers. In Proceedings of the Seventh Int. Conf. Information Processing and Management of Uncertainty in Knowlegde Based Systems, 1998.