{"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/tic-clip-continual-training-of-clip-models","title":"TiC-CLIP: Continual Training of CLIP Models","arxiv_id":"2310.16226","date":"2023-10-24","proceeding":null,"authors":["Saurabh Garg","Mehrdad Farajtabar","Hadi Pouransari","Raviteja Vemulapalli","Sachin Mehta","Oncel Tuzel","Vaishaal Shankar","Fartash Faghri"],"abstract":"Keeping large foundation models up to date on latest data is inherently expensive. To avoid the prohibitive costs of constantly retraining, it is imperative to continually train these models. This problem is exacerbated by the lack of any large scale continual learning benchmarks or baselines. We introduce the first set of web-scale Time-Continual (TiC) benchmarks for training vision-language models: TiC-DataComp, TiC-YFCC, and TiC-Redcaps. TiC-DataComp, our largest dataset, contains over 12.7B timestamped image-text pairs spanning 9 years (2014-2022). We first use our benchmarks to curate various dynamic evaluations to measure temporal robustness of existing models. We show OpenAI's CLIP (trained on data up to 2020) loses $\\approx 8\\%$ zero-shot accuracy on our curated retrieval task from 2021-2022 compared with more recently trained models in OpenCLIP repository. We then study how to efficiently train models on time-continuous data. We demonstrate that a simple rehearsal-based approach that continues training from the last checkpoint and replays old data reduces compute by $2.5\\times$ when compared to the standard practice of retraining from scratch. Code is available at https://github.com/apple/ml-tic-clip.","url_abs":"https://arxiv.org/abs/2310.16226v3","url_pdf":"https://arxiv.org/pdf/2310.16226v3.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":"tic-clip-continual-training-of-clip-models","repo_url":"https://github.com/apple/ml-tic-clip","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"NOASSERTION"}}],"tasks":[{"task_slug":"continual-learning","task_name":"Continual Learning"},{"task_slug":"retrieval","task_name":"Retrieval"}],"methods":[{"method_slug":"clip","method_name":"CLIP"},{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2310.16226","atlas_url":"https://app.syntology.ai/?focus=2310.16226","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2310.16226"}},"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":"deterministic:regex_extraction","url":"https://github.com/apple/ml-tic-clip","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran":5,"unverified":4},"by_repo_kind":{"official":{"samples":9,"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":9,"samples":[{"code_sha256_prefix":"9b270ee2a7164544","entry":"clean_text","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/tic-yfcc15m/create_splits.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/tic-yfcc15m/create_splits.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"9b270ee2a7164544"}},{"code_sha256_prefix":"94b702e4fbb4f2f5","entry":"exponential_backoff","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/utils.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"94b702e4fbb4f2f5"}},{"code_sha256_prefix":"03be3a3b0f51c31d","entry":"get_all_child","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/tic-datacomp/imagenet_restricted_classes.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/tic-datacomp/imagenet_restricted_classes.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"03be3a3b0f51c31d"}},{"code_sha256_prefix":"edfa8976ccfd8f08","entry":"remove_html","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/tic-yfcc15m/create_splits.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/tic-yfcc15m/create_splits.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"edfa8976ccfd8f08"}},{"code_sha256_prefix":"27f15b8004c11ebf","entry":"uids_str_to_np","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/tic-datacomp/generate_eval_uids.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/tic-datacomp/generate_eval_uids.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"27f15b8004c11ebf"}},{"code_sha256_prefix":"f11f727993c3c85b","entry":"fsspec_url_to_fs","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/utils.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"f11f727993c3c85b"}},{"code_sha256_prefix":"2d718d67fb71a2e4","entry":"get_imagenet_classes","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/tic-datacomp/imagenet_restricted_classes.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/tic-datacomp/imagenet_restricted_classes.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"2d718d67fb71a2e4"}},{"code_sha256_prefix":"41e3b978ee352799","entry":"get_intersection_imagenet","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/tic-datacomp/imagenet_restricted_classes.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/tic-datacomp/imagenet_restricted_classes.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"41e3b978ee352799"}},{"code_sha256_prefix":"4200c28391a73a56","entry":"list_timesplit_paths","repo":"apple/ml-tic-clip","repo_kind":"official","path":"dataset_creation/utils.py","file_url":"https://github.com/apple/ml-tic-clip/blob/HEAD/dataset_creation/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"4200c28391a73a56"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}