6 research outputs found
KS(conf ): A Light-Weight Test if a ConvNet Operates Outside of Its Specifications
Computer vision systems for automatic image categorization have become
accurate and reliable enough that they can run continuously for days or even
years as components of real-world commercial applications. A major open problem
in this context, however, is quality control. Good classification performance
can only be expected if systems run under the specific conditions, in
particular data distributions, that they were trained for. Surprisingly, none
of the currently used deep network architectures has a built-in functionality
that could detect if a network operates on data from a distribution that it was
not trained for and potentially trigger a warning to the human users. In this
work, we describe KS(conf), a procedure for detecting such outside of the
specifications operation. Building on statistical insights, its main step is
the applications of a classical Kolmogorov-Smirnov test to the distribution of
predicted confidence values. We show by extensive experiments using ImageNet,
AwA2 and DAVIS data on a variety of ConvNets architectures that KS(conf)
reliably detects out-of-specs situations. It furthermore has a number of
properties that make it an excellent candidate for practical deployment: it is
easy to implement, adds almost no overhead to the system, works with all
networks, including pretrained ones, and requires no a priori knowledge about
how the data distribution could change
Outside the Box: Abstraction-Based Monitoring of Neural Networks
Neural networks have demonstrated unmatched performance in a range of
classification tasks. Despite numerous efforts of the research community,
novelty detection remains one of the significant limitations of neural
networks. The ability to identify previously unseen inputs as novel is crucial
for our understanding of the decisions made by neural networks. At runtime,
inputs not falling into any of the categories learned during training cannot be
classified correctly by the neural network. Existing approaches treat the
neural network as a black box and try to detect novel inputs based on the
confidence of the output predictions. However, neural networks are not trained
to reduce their confidence for novel inputs, which limits the effectiveness of
these approaches. We propose a framework to monitor a neural network by
observing the hidden layers. We employ a common abstraction from program
analysis - boxes - to identify novel behaviors in the monitored layers, i.e.,
inputs that cause behaviors outside the box. For each neuron, the boxes range
over the values seen in training. The framework is efficient and flexible to
achieve a desired trade-off between raising false warnings and detecting novel
inputs. We illustrate the performance and the robustness to variability in the
unknown classes on popular image-classification benchmarks.Comment: accepted at ECAI 202
Robust Learning from Untrusted Sources
Modern machine learning methods often require more data for training than a
single expert can provide. Therefore, it has become a standard procedure to
collect data from external sources, e.g. via crowdsourcing. Unfortunately, the
quality of these sources is not always guaranteed. As additional complications,
the data might be stored in a distributed way, or might even have to remain
private. In this work, we address the question of how to learn robustly in such
scenarios. Studying the problem through the lens of statistical learning
theory, we derive a procedure that allows for learning from all available
sources, yet automatically suppresses irrelevant or corrupted data. We show by
extensive experiments that our method provides significant improvements over
alternative approaches from robust statistics and distributed optimization.Comment: Accepted to International Conference on Machine Learning (ICML),
2019; Camera-ready versio
KS(conf): A light-weight test if a multiclass classifier operates outside of its specifications
We study the problem of automatically detecting if a given multi-class classifier operates outside of its specifications (out-of-specs), i.e. on input data from a different distribution than what it was trained for. This is an important problem to solve on the road towards creating reliable computer vision systems for real-world applications, because the quality of a classifier’s predictions cannot be guaranteed if it operates out-of-specs. Previously proposed methods for out-of-specs detection make decisions on the level of single inputs. This, however, is insufficient to achieve low false positive rate and high false negative rates at the same time. In this work, we describe a new procedure named KS(conf), based on statistical reasoning. Its main component is a classical Kolmogorov–Smirnov test that is applied to the set of predicted confidence values for batches of samples. Working with batches instead of single samples allows increasing the true positive rate without negatively affecting the false positive rate, thereby overcoming a crucial limitation of single sample tests. We show by extensive experiments using a variety of convolutional network architectures and datasets that KS(conf) reliably detects out-of-specs situations even under conditions where other tests fail. It furthermore has a number of properties that make it an excellent candidate for practical deployment: it is easy to implement, adds almost no overhead to the system, works with any classifier that outputs confidence scores, and requires no a priori knowledge about how the data distribution could change
Novelty Detection in Convolutional Neural Networks Using Density Forests
Uncertainty in deep learning has recently received a lot of attention in research. While stateof- the-art neural networks have managed to break many benchmarks in terms of accuracy, it has been shown that by applying minor perturbations to the input data, they are susceptible to fooling, yielding unreasonably high confidence scores while being wrong. While some research has gone into the design of new architectures that are probabilistic in nature, such as Bayesian Neural Networks, other researchers have tried to model uncertainty of standard architectures heuristically. This work presents a novel method to assess uncertainty in Convolutional Neural Networks, based on fitting a forests of randomized Decision Trees to the network activations before the final classification layer. Experimental results are provided for patch classification on the MNIST dataset and for semantic segmentation on satellite imagery used for land cover classification. The land cover dataset consists of overhead imagery of the city of Zurich in Switzerland taken in 2002, with corresponding manually annotated ground truth. The Density Forest confidence estimation method is compared to a number of baselines based on softmax activations and pre-softmax activations. All methods are evaluated with respect to novelty detection. The study shows that using pre-softmax activations of the Fully Connected layer provides a better overall confidence estimate than just using the softmax activations. For the MNIST dataset, softmax measures outperform pre-softmax based novelty detection measures, while in the Zurich dataset, pre-softmax based methods not only show better performance in detecting the left-out class, but they also manage to identify particular objects for which no class exists in the ground truth. Among the main explanations for the varying performance of pre-softmax measures, we find the curse of dimensionality when working with high-dimensional activation vectors and class separability issues due to partially trained networks. Future research should go into studying the influence of the activation vector dimensionality on novelty detection methods, applying them to more diverse datasets and evaluating different novelty detection measures in practical applications, such as Active Learning