{"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-supervised-few-shot-learning-on-point","title":"Self-Supervised Few-Shot Learning on Point Clouds","arxiv_id":"2009.14168","date":"2020-09-29","proceeding":"NeurIPS 2020 12","authors":["Charu Sharma","Manohar Kaul"],"abstract":"The increased availability of massive point clouds coupled with their utility in a wide variety of applications such as robotics, shape synthesis, and self-driving cars has attracted increased attention from both industry and academia. Recently, deep neural networks operating on labeled point clouds have shown promising results on supervised learning tasks like classification and segmentation. However, supervised learning leads to the cumbersome task of annotating the point clouds. To combat this problem, we propose two novel self-supervised pre-training tasks that encode a hierarchical partitioning of the point clouds using a cover-tree, where point cloud subsets lie within balls of varying radii at each level of the cover-tree. Furthermore, our self-supervised learning network is restricted to pre-train on the support set (comprising of scarce training examples) used to train the downstream network in a few-shot learning (FSL) setting. Finally, the fully-trained self-supervised network's point embeddings are input to the downstream task's network. We present a comprehensive empirical evaluation of our method on both downstream classification and segmentation tasks and show that supervised methods pre-trained with our self-supervised learning method significantly improve the accuracy of state-of-the-art methods. Additionally, our method also outperforms previous unsupervised methods in downstream classification tasks.","url_abs":"https://arxiv.org/abs/2009.14168v1","url_pdf":"https://arxiv.org/pdf/2009.14168v1.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-supervised-few-shot-learning-on-point","repo_url":"https://github.com/charusharma1991/SSL_PointClouds","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"few-shot-3d-point-cloud-classification","task_name":"Few-Shot 3D Point Cloud Classification"},{"task_slug":"few-shot-learning","task_name":"Few-Shot Learning"},{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"self-driving-cars","task_name":"Self-Driving Cars"},{"task_slug":"self-supervised-learning","task_name":"Self-Supervised Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-3","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 10-way (10-shot)","model":"SSFSL+PointNet","rank_in_archive_order":26,"of":31,"metrics":{"Overall Accuracy":"49.15","Standard Deviation":"6.1"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-3","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 10-way (10-shot)","model":"SSFSL+DGCNN","rank_in_archive_order":27,"of":31,"metrics":{"Overall Accuracy":"48.50","Standard Deviation":"5.6"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-4","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 10-way (20-shot)","model":"SSFSL+ DGCNN","rank_in_archive_order":26,"of":31,"metrics":{"Overall Accuracy":"53.00","Standard Deviation":"4.1"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-4","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 10-way (20-shot)","model":"SSFSL+PointNet","rank_in_archive_order":27,"of":31,"metrics":{"Overall Accuracy":"50.10","Standard Deviation":"5.0"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-1","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 5-way (10-shot)","model":"SSFSL+PointNet","rank_in_archive_order":26,"of":30,"metrics":{"Overall Accuracy":"63.2","Standard Deviation":"10.7"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-1","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 5-way (10-shot)","model":"SSFSL+DGCNN","rank_in_archive_order":27,"of":30,"metrics":{"Overall Accuracy":"60.0","Standard Deviation":"8.9"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-2","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 5-way (20-shot)","model":"SSFSL+PointNet","rank_in_archive_order":25,"of":30,"metrics":{"Overall Accuracy":"68.90","Standard Deviation":"9.4"},"uses_additional_data":false},{"leaderboard":"/sota/few-shot-3d-point-cloud-classification-on-2","task":"Few-Shot 3D Point Cloud Classification","dataset":"ModelNet40 5-way (20-shot)","model":"SSFSL+DGCNN","rank_in_archive_order":27,"of":30,"metrics":{"Overall Accuracy":"65.70","Standard Deviation":"8.4"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2009.14168","atlas_url":"https://app.syntology.ai/?focus=2009.14168","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2009.14168"}},"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":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/charusharma1991/SSL_PointClouds","reach":null}],"summary":{"ran":3,"ran_draft_wrong":1,"unverified":1},"by_repo_kind":{"listed":{"samples":5,"ran":4,"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":"3407b0937a7ada3e","entry":"DistanceNet","repo":"charusharma1991/SSL_PointClouds","repo_kind":"listed","path":"SSL/model_conv.py","file_url":"https://github.com/charusharma1991/SSL_PointClouds/blob/HEAD/SSL/model_conv.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":"3407b0937a7ada3e"}},{"code_sha256_prefix":"297905ce35b45dde","entry":"PointNet","repo":"charusharma1991/SSL_PointClouds","repo_kind":"listed","path":"SSL/model_conv.py","file_url":"https://github.com/charusharma1991/SSL_PointClouds/blob/HEAD/SSL/model_conv.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"297905ce35b45dde"}},{"code_sha256_prefix":"6d5cbcc773b1842e","entry":"QuadrantNet","repo":"charusharma1991/SSL_PointClouds","repo_kind":"listed","path":"SSL/model_conv.py","file_url":"https://github.com/charusharma1991/SSL_PointClouds/blob/HEAD/SSL/model_conv.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":"6d5cbcc773b1842e"}},{"code_sha256_prefix":"ad271f59a1502ce6","entry":"pool_balls","repo":"charusharma1991/SSL_PointClouds","repo_kind":"listed","path":"SSL/model_conv.py","file_url":"https://github.com/charusharma1991/SSL_PointClouds/blob/HEAD/SSL/model_conv.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ad271f59a1502ce6"}},{"code_sha256_prefix":"749afcc1c5f29748","entry":"CoverNet","repo":"charusharma1991/SSL_PointClouds","repo_kind":"listed","path":"SSL/model_conv.py","file_url":"https://github.com/charusharma1991/SSL_PointClouds/blob/HEAD/SSL/model_conv.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":"749afcc1c5f29748"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}