{"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/always-be-dreaming-a-new-approach-for-data","title":"Always Be Dreaming: A New Approach for Data-Free Class-Incremental Learning","arxiv_id":"2106.09701","date":"2021-06-17","proceeding":"ICCV 2021 10","authors":["James Smith","Yen-Chang Hsu","Jonathan Balloch","Yilin Shen","Hongxia Jin","Zsolt Kira"],"abstract":"Modern computer vision applications suffer from catastrophic forgetting when incrementally learning new concepts over time. The most successful approaches to alleviate this forgetting require extensive replay of previously seen data, which is problematic when memory constraints or data legality concerns exist. In this work, we consider the high-impact problem of Data-Free Class-Incremental Learning (DFCIL), where an incremental learning agent must learn new concepts over time without storing generators or training data from past tasks. One approach for DFCIL is to replay synthetic images produced by inverting a frozen copy of the learner's classification model, but we show this approach fails for common class-incremental benchmarks when using standard distillation strategies. We diagnose the cause of this failure and propose a novel incremental distillation strategy for DFCIL, contributing a modified cross-entropy training and importance-weighted feature distillation, and show that our method results in up to a 25.1% increase in final task accuracy (absolute difference) compared to SOTA DFCIL methods for common class-incremental benchmarks. Our method even outperforms several standard replay based methods which store a coreset of images.","url_abs":"https://arxiv.org/abs/2106.09701v2","url_pdf":"https://arxiv.org/pdf/2106.09701v2.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":"always-be-dreaming-a-new-approach-for-data","repo_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"always-be-dreaming-a-new-approach-for-data","repo_url":"https://github.com/gregoirepetit/fetril","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"AGPL-3.0"}}],"tasks":[{"task_slug":"class-incremental-learning","task_name":"Class Incremental Learning"},{"task_slug":"incremental-learning","task_name":"Incremental Learning"},{"task_slug":"class-incremental-learning-1","task_name":"class-incremental learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/class-incremental-learning-on-cifar100","task":"Class Incremental Learning","dataset":"cifar100","model":"ABD","rank_in_archive_order":5,"of":7,"metrics":{"10-stage average accuracy":"54.44"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2106.09701","atlas_url":"https://app.syntology.ai/?focus=2106.09701","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2106.09701"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/GT-RIPL/AlwaysBeDreaming-DFCIL","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gregoirepetit/fetril","reach":{"status":"ok","spdx":"AGPL-3.0"}}],"summary":{"ran":3,"ran_draft_wrong":1,"ran_fixture":1,"unverified":5},"by_repo_kind":{"official":{"samples":10,"ran":5,"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":0,"samples":[{"code_sha256_prefix":"fcca5441c56a56a7","entry":"AverageMeter","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fcca5441c56a56a7"}},{"code_sha256_prefix":"68537cc8daaefb50","entry":"DeepInversionFeatureHook","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"68537cc8daaefb50"}},{"code_sha256_prefix":"e60213629cf3adeb","entry":"Gaussiansmoothing","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e60213629cf3adeb"}},{"code_sha256_prefix":"58afbcc75976684a","entry":"accumulate_acc","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"58afbcc75976684a"}},{"code_sha256_prefix":"fa83cf1f7e65eeff","entry":"loss_fn_kd","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fa83cf1f7e65eeff"}},{"code_sha256_prefix":"4ff8bba226cdf25f","entry":"AlwaysBeDreaming","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4ff8bba226cdf25f"}},{"code_sha256_prefix":"361fd62af3803ef6","entry":"DeepInversionGenBN","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"361fd62af3803ef6"}},{"code_sha256_prefix":"984d5c50b71a1e10","entry":"NormalNN","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"984d5c50b71a1e10"}},{"code_sha256_prefix":"cb85f08759159ac2","entry":"Teacher","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cb85f08759159ac2"}},{"code_sha256_prefix":"484c4459ced99c20","entry":"weight_reset","repo":"GT-RIPL/AlwaysBeDreaming-DFCIL","repo_kind":"official","path":"learners/datafree.py","file_url":"https://github.com/GT-RIPL/AlwaysBeDreaming-DFCIL/blob/HEAD/learners/datafree.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"484c4459ced99c20"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}