{"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/automating-continual-learning","title":"Automating Continual Learning","arxiv_id":"2312.00276","date":"2023-12-01","proceeding":null,"authors":["Kazuki Irie","Róbert Csordás","Jürgen Schmidhuber"],"abstract":"General-purpose learning systems should improve themselves in open-ended fashion in ever-changing environments. Conventional learning algorithms for neural networks, however, suffer from catastrophic forgetting (CF) -- previously acquired skills are forgotten when a new task is learned. Instead of hand-crafting new algorithms for avoiding CF, we propose Automated Continual Learning (ACL) to train self-referential neural networks to meta-learn their own in-context continual (meta-)learning algorithms. ACL encodes all desiderata -- good performance on both old and new tasks -- into its meta-learning objectives. Our experiments demonstrate that ACL effectively solves \"in-context catastrophic forgetting\"; our ACL-learned algorithms outperform hand-crafted ones, e.g., on the Split-MNIST benchmark in the replay-free setting, and enables continual learning of diverse tasks consisting of multiple few-shot and standard image classification datasets.","url_abs":"https://arxiv.org/abs/2312.00276v2","url_pdf":"https://arxiv.org/pdf/2312.00276v2.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":"automating-continual-learning","repo_url":"https://github.com/idsia/automated-cl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"continual-learning","task_name":"Continual Learning"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"meta-learning","task_name":"Meta-Learning"},{"task_slug":null,"task_name":"Split-MNIST"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2312.00276","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2312.00276"}},"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/idsia/automated-cl","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5,"ran_draft_wrong":1,"ran_fixture":2,"unverified":2},"by_repo_kind":{"official":{"samples":10,"ran":8,"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":"de92832114f71d8c","entry":"conv1x1","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_other/resnet_impl.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_other/resnet_impl.py","link_basis":"harvester_set","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":"de92832114f71d8c"}},{"code_sha256_prefix":"fac5364e2f53c6db","entry":"conv3x3","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_other/resnet_dropblock_impl.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_other/resnet_dropblock_impl.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fac5364e2f53c6db"}},{"code_sha256_prefix":"e5b7c79b0b62af96","entry":"conv3x3","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_other/resnet_impl.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_other/resnet_impl.py","link_basis":"harvester_set","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":"e5b7c79b0b62af96"}},{"code_sha256_prefix":"fa08c36ab5558b55","entry":"elu_p1","repo":"idsia/automated-cl","repo_kind":"official","path":"layer.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/layer.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fa08c36ab5558b55"}},{"code_sha256_prefix":"1ca44a330df08f99","entry":"eval_model_one_shot","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_few_shot.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_few_shot.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":"1ca44a330df08f99"}},{"code_sha256_prefix":"7a718af49bee3a35","entry":"eval_pretrain_model","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_few_shot.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_few_shot.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":"7a718af49bee3a35"}},{"code_sha256_prefix":"319332ad3d5e39b1","entry":"norm_layer","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_other/resnet_impl.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_other/resnet_impl.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":"319332ad3d5e39b1"}},{"code_sha256_prefix":"379d7685e2a746e5","entry":"sum_norm","repo":"idsia/automated-cl","repo_kind":"official","path":"layer.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/layer.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"379d7685e2a746e5"}},{"code_sha256_prefix":"6c71a4a7bae9d5f3","entry":"eval_model","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_few_shot.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_few_shot.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":"6c71a4a7bae9d5f3"}},{"code_sha256_prefix":"2173141fe4baf439","entry":"resnet12_dropblock","repo":"idsia/automated-cl","repo_kind":"official","path":"utils_other/resnet_dropblock_impl.py","file_url":"https://github.com/idsia/automated-cl/blob/HEAD/utils_other/resnet_dropblock_impl.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":"2173141fe4baf439"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}