SOTAVerified

PANDA: Adapting Pretrained Features for Anomaly Detection and Segmentation

2020-10-12CVPR 2021Code Available1· sign in to hype

Tal Reiss, Niv Cohen, Liron Bergman, Yedid Hoshen

Code Available — Be the first to reproduce this paper.

Reproduce

Code

Abstract

Anomaly detection methods require high-quality features. In recent years, the anomaly detection community has attempted to obtain better features using advances in deep self-supervised feature learning. Surprisingly, a very promising direction, using pretrained deep features, has been mostly overlooked. In this paper, we first empirically establish the perhaps expected, but unreported result, that combining pretrained features with simple anomaly detection and segmentation methods convincingly outperforms, much more complex, state-of-the-art methods. In order to obtain further performance gains in anomaly detection, we adapt pretrained features to the target distribution. Although transfer learning methods are well established in multi-class classification problems, the one-class classification (OCC) setting is not as well explored. It turns out that naive adaptation methods, which typically work well in supervised learning, often result in catastrophic collapse (feature deterioration) and reduce performance in OCC settings. A popular OCC method, DeepSVDD, advocates using specialized architectures, but this limits the adaptation performance gain. We propose two methods for combating collapse: i) a variant of early stopping that dynamically learns the stopping iteration ii) elastic regularization inspired by continual learning. Our method, PANDA, outperforms the state-of-the-art in the OCC, outlier exposure and anomaly segmentation settings by large margins.

Tasks

Benchmark Results

DatasetModelMetricClaimedVerifiedStatus
Cats and DogsPANDAROC AUC97.3Unverified
Cats and DogsSelf-Supervised DeepSVDDROC AUC50.5Unverified
Cats and DogsSelf-Supervised One-class SVM, RBF kernelROC AUC51.7Unverified
Cats and DogsPANDA-OEROC AUC94.5Unverified
DIORSelf-Supervised DeepSVDDROC AUC70Unverified
DIORPANDA-OEROC AUC95.9Unverified
DIORPANDAROC AUC94.3Unverified
DIORSelf-Supervised One-class SVM, RBF kernelROC AUC70.7Unverified
Fashion-MNISTPANDAROC AUC95.6Unverified
Fashion-MNISTSelf-Supervised DeepSVDDROC AUC84.8Unverified
Fashion-MNISTPANDA-OEROC AUC91.8Unverified
Fashion-MNISTSelf-Supervised One-class SVM, RBF kernelROC AUC92.8Unverified
Hyper-Kvasir DatasetPANDAAUC0.94Unverified
One-class CIFAR-10Self-Supervised DeepSVDDAUROC64.8Unverified
One-class CIFAR-10PANDA-OEAUROC98.9Unverified
One-class CIFAR-10PANDAAUROC96.2Unverified
One-class CIFAR-10Self-Supervised One-class SVM, RBF kernelAUROC64.7Unverified
One-class CIFAR-100Self-Supervised Multi-Head RotNetAUROC80.1Unverified
One-class CIFAR-100Self-Supervised One-class SVM, RBF kernelAUROC62.6Unverified
One-class CIFAR-100PANDA-OEAUROC97.3Unverified
One-class CIFAR-100PANDAAUROC94.1Unverified
One-class CIFAR-100Self-Supervised DeepSVDDAUROC67Unverified

Reproductions