{"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/self-training-with-progressive-augmentation","title":"Self-training with progressive augmentation for unsupervised cross-domain person re-identification","arxiv_id":"1907.13315","date":"2019-07-31","proceeding":"ICCV 2019 10","authors":["Xin-Yu Zhang","Jiewei Cao","Chunhua Shen","Mingyu You"],"abstract":"Person re-identification (Re-ID) has achieved great improvement with deep learning and a large amount of labelled training data. However, it remains a challenging task for adapting a model trained in a source domain of labelled data to a target domain of only unlabelled data available. In this work, we develop a self-training method with progressive augmentation framework (PAST) to promote the model performance progressively on the target dataset. Specially, our PAST framework consists of two stages, namely, conservative stage and promoting stage. The conservative stage captures the local structure of target-domain data points with triplet-based loss functions, leading to improved feature representations. The promoting stage continuously optimizes the network by appending a changeable classification layer to the last layer of the model, enabling the use of global information about the data distribution. Importantly, we propose a new self-training strategy that progressively augments the model capability by adopting conservative and promoting stages alternately. Furthermore, to improve the reliability of selected triplet samples, we introduce a ranking-based triplet loss in the conservative stage, which is a label-free objective function basing on the similarities between data pairs. Experiments demonstrate that the proposed method achieves state-of-the-art person Re-ID performance under the unsupervised cross-domain setting. Code is available at: https://tinyurl.com/PASTReID","url_abs":"https://arxiv.org/abs/1907.13315v1","url_pdf":"https://arxiv.org/pdf/1907.13315v1.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":"self-training-with-progressive-augmentation","repo_url":"https://github.com/zhangxinyu-xyz/PAST-ReID","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"person-re-identification","task_name":"Person Re-Identification"},{"task_slug":null,"task_name":"Triplet"},{"task_slug":"unsupervised-domain-adaptation","task_name":"Unsupervised Domain Adaptation"}],"methods":[{"method_slug":"triplet-loss","method_name":"Triplet Loss"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/unsupervised-domain-adaptation-on-duke-to","task":"Unsupervised Domain Adaptation","dataset":"Duke to Market","model":"PCB-PAST","rank_in_archive_order":15,"of":26,"metrics":{"mAP":"54.6","rank-1":"78.4"},"uses_additional_data":false},{"leaderboard":"/sota/unsupervised-domain-adaptation-on-market-to","task":"Unsupervised Domain Adaptation","dataset":"Market to Duke","model":"PCB-PAST","rank_in_archive_order":12,"of":25,"metrics":{"mAP":"54.3","rank-1":"72.4"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1907.13315","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1907.13315"}},"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/zhangxinyu-xyz/PAST-ReID","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":2,"unverified":3},"by_repo_kind":{"listed":{"samples":5,"ran":2,"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":"d9def42110729a85","entry":"conv1x1","repo":"zhangxinyu-xyz/PAST-ReID","repo_kind":"listed","path":"reid/models/resnet.py","file_url":"https://github.com/zhangxinyu-xyz/PAST-ReID/blob/HEAD/reid/models/resnet.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":"d9def42110729a85"}},{"code_sha256_prefix":"fac5364e2f53c6db","entry":"conv3x3","repo":"zhangxinyu-xyz/PAST-ReID","repo_kind":"listed","path":"reid/models/resnet.py","file_url":"https://github.com/zhangxinyu-xyz/PAST-ReID/blob/HEAD/reid/models/resnet.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":"cc9738f1a31a1b3a","entry":"construct_triplets","repo":"zhangxinyu-xyz/PAST-ReID","repo_kind":"listed","path":"reid/loss/triplet_loss.py","file_url":"https://github.com/zhangxinyu-xyz/PAST-ReID/blob/HEAD/reid/loss/triplet_loss.py","link_basis":"harvester_set","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":"cc9738f1a31a1b3a"}},{"code_sha256_prefix":"513fecc74aacde61","entry":"get_resnet","repo":"zhangxinyu-xyz/PAST-ReID","repo_kind":"listed","path":"reid/models/resnet.py","file_url":"https://github.com/zhangxinyu-xyz/PAST-ReID/blob/HEAD/reid/models/resnet.py","link_basis":"harvester_set","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":"513fecc74aacde61"}},{"code_sha256_prefix":"48cf1aad1e6a206d","entry":"oim","repo":"zhangxinyu-xyz/PAST-ReID","repo_kind":"listed","path":"reid/loss/oim.py","file_url":"https://github.com/zhangxinyu-xyz/PAST-ReID/blob/HEAD/reid/loss/oim.py","link_basis":"harvester_set","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":"48cf1aad1e6a206d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}