{"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/unsupervised-learning-of-visual-features-by","title":"Unsupervised Learning of Visual Features by Contrasting Cluster Assignments","arxiv_id":"2006.09882","date":"2020-06-17","proceeding":"NeurIPS 2020 12","authors":["Mathilde Caron","Ishan Misra","Julien Mairal","Priya Goyal","Piotr Bojanowski","Armand Joulin"],"abstract":"Unsupervised image representations have significantly reduced the gap with supervised pretraining, notably with the recent achievements of contrastive learning methods. These contrastive methods typically work online and rely on a large number of explicit pairwise feature comparisons, which is computationally challenging. In this paper, we propose an online algorithm, SwAV, that takes advantage of contrastive methods without requiring to compute pairwise comparisons. Specifically, our method simultaneously clusters the data while enforcing consistency between cluster assignments produced for different augmentations (or views) of the same image, instead of comparing features directly as in contrastive learning. Simply put, we use a swapped prediction mechanism where we predict the cluster assignment of a view from the representation of another view. Our method can be trained with large and small batches and can scale to unlimited amounts of data. Compared to previous contrastive methods, our method is more memory efficient since it does not require a large memory bank or a special momentum network. In addition, we also propose a new data augmentation strategy, multi-crop, that uses a mix of views with different resolutions in place of two full-resolution views, without increasing the memory or compute requirements much. We validate our findings by achieving 75.3% top-1 accuracy on ImageNet with ResNet-50, as well as surpassing supervised pretraining on all the considered transfer tasks.","url_abs":"https://arxiv.org/abs/2006.09882v5","url_pdf":"https://arxiv.org/pdf/2006.09882v5.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":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/facebookresearch/swav","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/SaeedShurrab/SimSiam-pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/TRAILab/ST-SLidR","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/Westlake-AI/openmixup","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/ananyahjha93/swav","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/ayulockin/SwAV-TF","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/buyeah1109/finc","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/facebookresearch/clip-rocket","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/facebookresearch/vissl","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/hsfzxjy/swavx","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/lightly-ai/lightly","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/sayakpaul/PAWS-TF","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/vinhdv1628/image_classification_task","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/vturrisi/solo-learn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/Mixture-of-Rookie/PASSL","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"paddle","reach":{"status":"unanswered"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/PaddlePaddle/PASSL","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"paddle","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/alibaba/EasyCV","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null},{"paper_slug":"unsupervised-learning-of-visual-features-by","repo_url":"https://github.com/open-mmlab/mmdetection","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"contrastive-learning","task_name":"Contrastive Learning"},{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"self-supervised-image-classification","task_name":"Self-Supervised Image Classification"},{"task_slug":"semi-supervised-image-classification","task_name":"Semi-Supervised Image Classification"}],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"bottleneck-residual-block","method_name":"Bottleneck Residual Block"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"detr","method_name":"Detr"},{"method_slug":"feedforward-network","method_name":"Feedforward Network"},{"method_slug":"lars","method_name":"LARS"},{"method_slug":"mask-r-cnn","method_name":"Mask R-CNN"},{"method_slug":"rpn","method_name":"RPN"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-block","method_name":"Residual Block"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"swav","method_name":"SwAV"}],"datasets_introduced":[],"methods_introduced":[{"slug":"swav","name":"SwAV","full_name":"Swapping Assignments between Views"}],"results":[{"leaderboard":"/sota/image-classification-on-omnibenchmark","task":"Image Classification","dataset":"OmniBenchmark","model":"SwAV","rank_in_archive_order":9,"of":22,"metrics":{"Average Top-1 Accuracy":"38.3"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-places205","task":"Image Classification","dataset":"Places205","model":"SwAV","rank_in_archive_order":10,"of":15,"metrics":{"Top 1 Accuracy":"56.7%"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-places205","task":"Image Classification","dataset":"Places205","model":"ResNet-50 (Supervised)","rank_in_archive_order":14,"of":15,"metrics":{"Top 1 Accuracy":"53.2%"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-inaturalist-2018","task":"Image Classification","dataset":"iNaturalist 2018","model":"ResNet-50","rank_in_archive_order":59,"of":60,"metrics":{"Top-1 Accuracy":"48.6"},"uses_additional_data":false},{"leaderboard":"/sota/self-supervised-image-classification-on","task":"Self-Supervised Image Classification","dataset":"ImageNet","model":"SwAV (ResNet-50 x5)","rank_in_archive_order":45,"of":144,"metrics":{"Number of Params":"586M","Top 1 Accuracy":"78.5%"},"uses_additional_data":false},{"leaderboard":"/sota/self-supervised-image-classification-on","task":"Self-Supervised Image Classification","dataset":"ImageNet","model":"SwAV (ResNet-50 x2)","rank_in_archive_order":54,"of":144,"metrics":{"Number of Params":"94M","Top 1 Accuracy":"77.3%"},"uses_additional_data":false},{"leaderboard":"/sota/self-supervised-image-classification-on","task":"Self-Supervised Image Classification","dataset":"ImageNet","model":"SwAV (ResNet-50)","rank_in_archive_order":74,"of":144,"metrics":{"Number of Params":"24M","Top 1 Accuracy":"75.3%"},"uses_additional_data":false},{"leaderboard":"/sota/self-supervised-image-classification-on","task":"Self-Supervised Image Classification","dataset":"ImageNet","model":"DeepCluster-v2 (ResNet-50)","rank_in_archive_order":77,"of":144,"metrics":{"Number of Params":"24M","Top 1 Accuracy":"75.2%"},"uses_additional_data":false},{"leaderboard":"/sota/self-supervised-image-classification-on-1","task":"Self-Supervised Image Classification","dataset":"ImageNet (finetuned)","model":"SwAV (ResNeXt-101-32x16d)","rank_in_archive_order":54,"of":65,"metrics":{"Number of Params":"193M","Top 1 Accuracy":"82.0%"},"uses_additional_data":true},{"leaderboard":"/sota/self-supervised-image-classification-on-1","task":"Self-Supervised Image Classification","dataset":"ImageNet (finetuned)","model":"SwAV (Resnet-50)","rank_in_archive_order":61,"of":65,"metrics":{"Number of Params":"182M","Top 1 Accuracy":"77.8%"},"uses_additional_data":true},{"leaderboard":"/sota/semi-supervised-image-classification-on-1","task":"Semi-Supervised Image Classification","dataset":"ImageNet - 1% labeled data","model":"SwAV (ResNet-50)","rank_in_archive_order":48,"of":65,"metrics":{"Top 1 Accuracy":"53.9%","Top 5 Accuracy":"78.5"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2006.09882","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2006.09882"}},"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":"deterministic:regex_extraction","url":"https://github.com/facebookresearch/swav","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/NVIDIA/apex","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Westlake-AI/openmixup","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/facebookresearch/vissl","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/PaddlePaddle/PASSL","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/lightly-ai/lightly","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vinhdv1628/image_classification_task","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/facebookresearch/clip-rocket","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/SaeedShurrab/SimSiam-pytorch","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vturrisi/solo-learn","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/open-mmlab/mmdetection","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Mixture-of-Rookie/PASSL","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/buyeah1109/finc","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/sayakpaul/PAWS-TF","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ananyahjha93/swav","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/alibaba/EasyCV","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/TRAILab/ST-SLidR","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hsfzxjy/swavx","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ayulockin/SwAV-TF","reach":null}],"summary":{"ran":4,"ran_draft_wrong":3,"ran_fixture":4,"ran_violates":1,"ran_honours":1,"unverified":4},"by_repo_kind":{"listed":{"samples":17,"ran":13,"repositories":4}},"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":6,"samples":[{"code_sha256_prefix":"65ea068099ec8a00","entry":"CL2LLoss","repo":"facebookresearch/clip-rocket","repo_kind":"listed","path":"losses.py","file_url":"https://github.com/facebookresearch/clip-rocket/blob/HEAD/losses.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":"65ea068099ec8a00"}},{"code_sha256_prefix":"d66b0649e0c37be9","entry":"ImageFeatureExtractor","repo":"buyeah1109/finc","repo_kind":"listed","path":"src/features/SwAVFeatureExtractor.py","file_url":"https://github.com/buyeah1109/finc/blob/HEAD/src/features/SwAVFeatureExtractor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d66b0649e0c37be9"}},{"code_sha256_prefix":"ef7fd0fad6c1ce99","entry":"SwAVFeatureExtractor","repo":"buyeah1109/finc","repo_kind":"listed","path":"src/features/SwAVFeatureExtractor.py","file_url":"https://github.com/buyeah1109/finc/blob/HEAD/src/features/SwAVFeatureExtractor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ef7fd0fad6c1ce99"}},{"code_sha256_prefix":"ba4892e53d17ff07","entry":"TransformedIndexDataset","repo":"buyeah1109/finc","repo_kind":"listed","path":"src/features/SwAVFeatureExtractor.py","file_url":"https://github.com/buyeah1109/finc/blob/HEAD/src/features/SwAVFeatureExtractor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ba4892e53d17ff07"}},{"code_sha256_prefix":"99efca6b93eccdc4","entry":"all_gather_batch","repo":"facebookresearch/clip-rocket","repo_kind":"listed","path":"losses.py","file_url":"https://github.com/facebookresearch/clip-rocket/blob/HEAD/losses.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"99efca6b93eccdc4"}},{"code_sha256_prefix":"9409540d35684afe","entry":"color_jitter","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9409540d35684afe"}},{"code_sha256_prefix":"c0f578da1f63b8dc","entry":"gaussian_blur","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c0f578da1f63b8dc"}},{"code_sha256_prefix":"d10fcd33136b539d","entry":"get_multires_dataset","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d10fcd33136b539d"}},{"code_sha256_prefix":"f63e696498472c1e","entry":"random_apply","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f63e696498472c1e"}},{"code_sha256_prefix":"9804c7348e6e7ece","entry":"random_resize_crop","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9804c7348e6e7ece"}},{"code_sha256_prefix":"aa8570de6f4e85b0","entry":"scale_image","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"aa8570de6f4e85b0"}},{"code_sha256_prefix":"58db645a1b52ab84","entry":"sinkhorn","repo":"lightly-ai/lightly","repo_kind":"listed","path":"lightly/loss/swav_loss.py","file_url":"https://github.com/lightly-ai/lightly/blob/HEAD/lightly/loss/swav_loss.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"58db645a1b52ab84"}},{"code_sha256_prefix":"f87ad47efb0bcc47","entry":"tie_together","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f87ad47efb0bcc47"}},{"code_sha256_prefix":"9b6d7a79e463251f","entry":"SwALIPLoss","repo":"facebookresearch/clip-rocket","repo_kind":"listed","path":"losses.py","file_url":"https://github.com/facebookresearch/clip-rocket/blob/HEAD/losses.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":"9b6d7a79e463251f"}},{"code_sha256_prefix":"03392c922af8bf4c","entry":"SwaVLoss","repo":"lightly-ai/lightly","repo_kind":"listed","path":"lightly/loss/swav_loss.py","file_url":"https://github.com/lightly-ai/lightly/blob/HEAD/lightly/loss/swav_loss.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":"03392c922af8bf4c"}},{"code_sha256_prefix":"1f7646e4cd1d0e9e","entry":"color_drop","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.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":"1f7646e4cd1d0e9e"}},{"code_sha256_prefix":"451594dfca49b64d","entry":"custom_augment","repo":"ayulockin/SwAV-TF","repo_kind":"listed","path":"utils/multicrop_dataset.py","file_url":"https://github.com/ayulockin/SwAV-TF/blob/HEAD/utils/multicrop_dataset.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":"451594dfca49b64d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}