{"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/semantic-aware-knowledge-preservation-for","title":"Semantic-Aware Knowledge Preservation for Zero-Shot Sketch-Based Image Retrieval","arxiv_id":"1904.03208","date":"2019-04-05","proceeding":"ICCV 2019 10","authors":["Qing Liu","Lingxi Xie","Huiyu Wang","Alan Yuille"],"abstract":"Sketch-based image retrieval (SBIR) is widely recognized as an important vision problem which implies a wide range of real-world applications. Recently, research interests arise in solving this problem under the more realistic and challenging setting of zero-shot learning. In this paper, we investigate this problem from the viewpoint of domain adaptation which we show is critical in improving feature embedding in the zero-shot scenario. Based on a framework which starts with a pre-trained model on ImageNet and fine-tunes it on the training set of SBIR benchmark, we advocate the importance of preserving previously acquired knowledge, e.g., the rich discriminative features learned from ImageNet, to improve the model's transfer ability. For this purpose, we design an approach named Semantic-Aware Knowledge prEservation (SAKE), which fine-tunes the pre-trained model in an economical way and leverages semantic information, e.g., inter-class relationship, to achieve the goal of knowledge preservation. Zero-shot experiments on two extended SBIR datasets, TU-Berlin and Sketchy, verify the superior performance of our approach. Extensive diagnostic experiments validate that knowledge preserved benefits SBIR in zero-shot settings, as a large fraction of the performance gain is from the more properly structured feature embedding for photo images. Code is available at: https://github.com/qliu24/SAKE.","url_abs":"https://arxiv.org/abs/1904.03208v3","url_pdf":"https://arxiv.org/pdf/1904.03208v3.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":"semantic-aware-knowledge-preservation-for","repo_url":"https://github.com/qliu24/SAKE","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"diagnostic","task_name":"Diagnostic"},{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"image-retrieval","task_name":"Image Retrieval"},{"task_slug":"retrieval","task_name":"Retrieval"},{"task_slug":"sketch-based-image-retrieval","task_name":"Sketch-Based Image Retrieval"},{"task_slug":"zero-shot-learning","task_name":"Zero-Shot Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1904.03208","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1904.03208"}},"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/qliu24/SAKE","reach":null}],"summary":{"ran_fixture":1,"unverified":4},"by_repo_kind":{"official":{"samples":5,"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":5,"samples":[{"code_sha256_prefix":"7e5963158ac078f2","entry":"eval_AP_inner","repo":"qliu24/SAKE","repo_kind":"official","path":"src/test_cse_resnet_tuberlin_zeroshot.py","file_url":"https://github.com/qliu24/SAKE/blob/HEAD/src/test_cse_resnet_tuberlin_zeroshot.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7e5963158ac078f2"}},{"code_sha256_prefix":"5dfb68ecbcb4180d","entry":"accuracy","repo":"qliu24/SAKE","repo_kind":"official","path":"src/train_cse_resnet_tuberlin_ext.py","file_url":"https://github.com/qliu24/SAKE/blob/HEAD/src/train_cse_resnet_tuberlin_ext.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5dfb68ecbcb4180d"}},{"code_sha256_prefix":"fd37118c88a91608","entry":"get_features","repo":"qliu24/SAKE","repo_kind":"official","path":"src/test_cse_resnet_tuberlin_zeroshot.py","file_url":"https://github.com/qliu24/SAKE/blob/HEAD/src/test_cse_resnet_tuberlin_zeroshot.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fd37118c88a91608"}},{"code_sha256_prefix":"03c532b6993d3ccd","entry":"prepare_pbir_features","repo":"qliu24/SAKE","repo_kind":"official","path":"src/test_cse_resnet_tuberlin_zeroshot.py","file_url":"https://github.com/qliu24/SAKE/blob/HEAD/src/test_cse_resnet_tuberlin_zeroshot.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"03c532b6993d3ccd"}},{"code_sha256_prefix":"e5681ed8bf0ac89c","entry":"validate","repo":"qliu24/SAKE","repo_kind":"official","path":"src/train_cse_resnet_tuberlin_ext.py","file_url":"https://github.com/qliu24/SAKE/blob/HEAD/src/train_cse_resnet_tuberlin_ext.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e5681ed8bf0ac89c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}