{"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/revisiting-and-maximizing-temporal-knowledge","title":"Revisiting and Maximizing Temporal Knowledge in Semi-supervised Semantic Segmentation","arxiv_id":"2405.20610","date":"2024-05-31","proceeding":null,"authors":["WooSeok Shin","Hyun Joon Park","Jin Sob Kim","Sung Won Han"],"abstract":"In semi-supervised semantic segmentation, the Mean Teacher- and co-training-based approaches are employed to mitigate confirmation bias and coupling problems. However, despite their high performance, these approaches frequently involve complex training pipelines and a substantial computational burden, limiting the scalability and compatibility of these methods. In this paper, we propose a PrevMatch framework that effectively mitigates the aforementioned limitations by maximizing the utilization of the temporal knowledge obtained during the training process. The PrevMatch framework relies on two core strategies: (1) we reconsider the use of temporal knowledge and thus directly utilize previous models obtained during training to generate additional pseudo-label guidance, referred to as previous guidance. (2) we design a highly randomized ensemble strategy to maximize the effectiveness of the previous guidance. Experimental results on four benchmark semantic segmentation datasets confirm that the proposed method consistently outperforms existing methods across various evaluation protocols. In particular, with DeepLabV3+ and ResNet-101 network settings, PrevMatch outperforms the existing state-of-the-art method, Diverse Co-training, by +1.6 mIoU on Pascal VOC with only 92 annotated images, while achieving 2.4 times faster training. Furthermore, the results indicate that PrevMatch induces stable optimization, particularly in benefiting classes that exhibit poor performance. Code is available at https://github.com/wooseok-shin/PrevMatch","url_abs":"https://arxiv.org/abs/2405.20610v1","url_pdf":"https://arxiv.org/pdf/2405.20610v1.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":"revisiting-and-maximizing-temporal-knowledge","repo_url":"https://github.com/wooseok-shin/PrevMatch","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"pseudo-label","task_name":"Pseudo Label"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"semi-supervised-semantic-segmentation","task_name":"Semi-Supervised Semantic Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-coco-2","task":"Semi-Supervised Semantic Segmentation","dataset":"COCO 1/128 labeled","model":"PrevMatch","rank_in_archive_order":3,"of":9,"metrics":{"Validation mIoU":"45.7"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-coco-1","task":"Semi-Supervised Semantic Segmentation","dataset":"COCO 1/256 labeled","model":"PrevMatch","rank_in_archive_order":6,"of":9,"metrics":{"Validation mIoU":"40.2"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-coco-3","task":"Semi-Supervised Semantic Segmentation","dataset":"COCO 1/64 labeled","model":"PrevMatch","rank_in_archive_order":5,"of":9,"metrics":{"Validation mIoU":"48.4"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-2","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 12.5% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":3,"of":33,"metrics":{"Validation mIoU":"78.9%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-2","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 12.5% labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":9,"of":33,"metrics":{"Validation mIoU":"77.8%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-1","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 25% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":3,"of":30,"metrics":{"Validation mIoU":"80.1%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-1","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 25% labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":11,"of":30,"metrics":{"Validation mIoU":"78.8%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-8","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 50% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":8,"of":23,"metrics":{"Validation mIoU":"80.1%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-8","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 50% labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":13,"of":23,"metrics":{"Validation mIoU":"79.2%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-22","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 6.25% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":3,"of":18,"metrics":{"Validation mIoU":"77.7%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-22","task":"Semi-Supervised Semantic Segmentation","dataset":"Cityscapes 6.25% labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":11,"of":18,"metrics":{"Validation mIoU":"75.8%"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-10","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 1464 labels","model":"PrevMatch (ResNet-101)","rank_in_archive_order":8,"of":17,"metrics":{"Validation mIoU":"81.6"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-10","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 1464 labels","model":"PrevMatch (ResNet-50)","rank_in_archive_order":13,"of":17,"metrics":{"Validation mIoU":"79.3"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-28","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 183 labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":7,"of":16,"metrics":{"Validation mIoU":"78.5"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-28","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 183 labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":12,"of":16,"metrics":{"Validation mIoU":"75.4"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-9","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 25% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":6,"of":27,"metrics":{"Validation mIoU":"80.8"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-29","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 366 labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":7,"of":15,"metrics":{"Validation mIoU":"79.6"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-29","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 366 labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":12,"of":15,"metrics":{"Validation mIoU":"77.5"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-30","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 732 labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":8,"of":16,"metrics":{"Validation mIoU":"80.4"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-30","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 732 labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":12,"of":16,"metrics":{"Validation mIoU":"78.6"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-27","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 92 labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":7,"of":17,"metrics":{"Validation mIoU":"77.0"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-27","task":"Semi-Supervised Semantic Segmentation","dataset":"PASCAL VOC 2012 92 labeled","model":"PrevMatch (ResNet-50)","rank_in_archive_order":12,"of":17,"metrics":{"Validation mIoU":"73.4"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-4","task":"Semi-Supervised Semantic Segmentation","dataset":"Pascal VOC 2012 12.5% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":5,"of":38,"metrics":{"Validation mIoU":"81.9"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-semantic-segmentation-on-21","task":"Semi-Supervised Semantic Segmentation","dataset":"Pascal VOC 2012 6.25% labeled","model":"PrevMatch (ResNet-101)","rank_in_archive_order":4,"of":19,"metrics":{"Validation mIoU":"81.4"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2405.20610","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2405.20610"}},"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/wooseok-shin/PrevMatch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_draft_wrong":3,"ran":3,"unverified":5},"by_repo_kind":{"official":{"samples":11,"ran":6,"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":"392d0834780485a1","entry":"ASPPConv","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"model/semseg/deeplabv3plus.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/model/semseg/deeplabv3plus.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"392d0834780485a1"}},{"code_sha256_prefix":"6ef392f365cc5703","entry":"conv1x1","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"model/backbone/resnet.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/model/backbone/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":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6ef392f365cc5703"}},{"code_sha256_prefix":"794a2ed91a5175bd","entry":"conv3x3","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"model/backbone/resnet.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/model/backbone/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":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"794a2ed91a5175bd"}},{"code_sha256_prefix":"7a9f64d049e9d81e","entry":"get_previous_logits","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"prev_utils.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/prev_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7a9f64d049e9d81e"}},{"code_sha256_prefix":"f57298b14577ea23","entry":"remove_module_prefix","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/evaluate.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f57298b14577ea23"}},{"code_sha256_prefix":"7c60f8e4d3bbd46f","entry":"setup_distributed","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"util/dist_helper.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/util/dist_helper.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7c60f8e4d3bbd46f"}},{"code_sha256_prefix":"21e12abf73350be0","entry":"crop","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"dataset/transform.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/dataset/transform.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"21e12abf73350be0"}},{"code_sha256_prefix":"9e96d1dddb1f71af","entry":"hflip","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"dataset/transform.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/dataset/transform.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9e96d1dddb1f71af"}},{"code_sha256_prefix":"5717ec3a3f33f0a8","entry":"normalize","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"dataset/transform.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/dataset/transform.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5717ec3a3f33f0a8"}},{"code_sha256_prefix":"1c0a6c3a9a739ec2","entry":"resnet50","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"model/backbone/resnet.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/model/backbone/resnet.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1c0a6c3a9a739ec2"}},{"code_sha256_prefix":"73ea75af76a62e43","entry":"xception","repo":"wooseok-shin/PrevMatch","repo_kind":"official","path":"model/backbone/xception.py","file_url":"https://github.com/wooseok-shin/PrevMatch/blob/HEAD/model/backbone/xception.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"73ea75af76a62e43"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}