{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/unsupervised-anomaly-detection-and","title":"Deep One-Class Classification via Interpolated Gaussian Descriptor","arxiv_id":"2101.10043","date":"2021-01-25","proceeding":null,"authors":["Yuanhong Chen","Yu Tian","Guansong Pang","Gustavo Carneiro"],"abstract":"One-class classification (OCC) aims to learn an effective data description to enclose all normal training samples and detect anomalies based on the deviation from the data description. Current state-of-the-art OCC models learn a compact normality description by hyper-sphere minimisation, but they often suffer from overfitting the training data, especially when the training set is small or contaminated with anomalous samples. To address this issue, we introduce the interpolated Gaussian descriptor (IGD) method, a novel OCC model that learns a one-class Gaussian anomaly classifier trained with adversarially interpolated training samples. The Gaussian anomaly classifier differentiates the training samples based on their distance to the Gaussian centre and the standard deviation of these distances, offering the model a discriminability w.r.t. the given samples during training. The adversarial interpolation is enforced to consistently learn a smooth Gaussian descriptor, even when the training data is small or contaminated with anomalous samples. This enables our model to learn the data description based on the representative normal samples rather than fringe or anomalous samples, resulting in significantly improved normality description. In extensive experiments on diverse popular benchmarks, including MNIST, Fashion MNIST, CIFAR10, MVTec AD and two medical datasets, IGD achieves better detection accuracy than current state-of-the-art models. IGD also shows better robustness in problems with small or contaminated training sets. Code is available at https://github.com/tianyu0207/IGD.","url_abs":"https://arxiv.org/abs/2101.10043v5","url_pdf":"https://arxiv.org/pdf/2101.10043v5.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"unsupervised-anomaly-detection-and","repo_url":"https://github.com/tianyu0207/IGD","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-anomaly-detection-and","repo_url":"https://github.com/m-3lab/awesome-visual-sensory-anomaly-detection","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}}],"tasks":[{"task_slug":"anomaly-detection","task_name":"Anomaly Detection"},{"task_slug":"classification-1","task_name":"Classification"},{"task_slug":"one-class-classification","task_name":"One-Class Classification"},{"task_slug":"unsupervised-anomaly-detection","task_name":"Unsupervised Anomaly Detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/anomaly-detection-on-fashion-mnist","task":"Anomaly Detection","dataset":"Fashion-MNIST","model":"IGD (pre-trained SSL)","rank_in_archive_order":4,"of":12,"metrics":{"ROC AUC":"94.41"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-fashion-mnist","task":"Anomaly Detection","dataset":"Fashion-MNIST","model":"IGD (pre-trained ImageNet)","rank_in_archive_order":5,"of":12,"metrics":{"ROC AUC":"93.57"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-fashion-mnist","task":"Anomaly Detection","dataset":"Fashion-MNIST","model":"IGD (scratch)","rank_in_archive_order":9,"of":12,"metrics":{"ROC AUC":"92.01"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-hyper-kvasir-dataset","task":"Anomaly Detection","dataset":"Hyper-Kvasir Dataset","model":"IGD","rank_in_archive_order":2,"of":6,"metrics":{"AUC":"0.939"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-lag","task":"Anomaly Detection","dataset":"LAG","model":"IGD","rank_in_archive_order":2,"of":5,"metrics":{"AUC":"0.796"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-mnist","task":"Anomaly Detection","dataset":"MNIST","model":"IGD (pre-trained ImageNet)","rank_in_archive_order":2,"of":6,"metrics":{"ROC AUC":"99.27"},"uses_additional_data":true},{"leaderboard":"/sota/anomaly-detection-on-mnist","task":"Anomaly Detection","dataset":"MNIST","model":"IGD (scratch)","rank_in_archive_order":3,"of":6,"metrics":{"ROC AUC":"98.69"},"uses_additional_data":true},{"leaderboard":"/sota/anomaly-detection-on-mvtec-ad","task":"Anomaly Detection","dataset":"MVTec AD","model":"IGD (pre-trained SSL)","rank_in_archive_order":99,"of":148,"metrics":{"Detection AUROC":"93.4","Segmentation AUROC":"93.0"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-mvtec-ad","task":"Anomaly Detection","dataset":"MVTec AD","model":"IGD","rank_in_archive_order":100,"of":148,"metrics":{"Detection AUROC":"93.4"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-mvtec-ad","task":"Anomaly Detection","dataset":"MVTec AD","model":"IGD (pre-trained ImageNet)","rank_in_archive_order":105,"of":148,"metrics":{"Detection AUROC":"92.6","Segmentation AUROC":"91"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-one-class-cifar-10","task":"Anomaly Detection","dataset":"One-class CIFAR-10","model":"IGD (pre-trained SSL)","rank_in_archive_order":17,"of":36,"metrics":{"AUROC":"91.25"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-one-class-cifar-10","task":"Anomaly Detection","dataset":"One-class CIFAR-10","model":"IGD (pre-trained ImageNet)","rank_in_archive_order":26,"of":36,"metrics":{"AUROC":"83.68"},"uses_additional_data":false},{"leaderboard":"/sota/anomaly-detection-on-one-class-cifar-10","task":"Anomaly Detection","dataset":"One-class CIFAR-10","model":"IGD (scratch)","rank_in_archive_order":28,"of":36,"metrics":{"AUROC":"74.33"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2101.10043","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2101.10043"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tianyu0207/IGD","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/m-3lab/awesome-visual-sensory-anomaly-detection","reach":{"status":"ok"}}],"summary":{"ran_fixture":1},"by_repo_kind":{"official":{"samples":1,"ran":1,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":1,"samples":[{"code_sha256_prefix":"31ec545afe73c07e","entry":"extract_patch","repo":"tianyu0207/IGD","repo_kind":"official","path":"multi_scale/inference_det.py","file_url":"https://github.com/tianyu0207/IGD/blob/HEAD/multi_scale/inference_det.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"31ec545afe73c07e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}