{"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/geo-sign-hyperbolic-contrastive-1","title":"Geo-Sign: Hyperbolic Contrastive Regularisation for Geometrically Aware Sign Language Translation","arxiv_id":"2506.00129","date":"2025-05-30","proceeding":null,"authors":["Edward Fish","Richard Bowden"],"abstract":"Recent progress in Sign Language Translation (SLT) has focussed primarily on improving the representational capacity of large language models to incorporate Sign Language features. This work explores an alternative direction: enhancing the geometric properties of skeletal representations themselves. We propose Geo-Sign, a method that leverages the properties of hyperbolic geometry to model the hierarchical structure inherent in sign language kinematics. By projecting skeletal features derived from Spatio-Temporal Graph Convolutional Networks (ST-GCNs) into the Poincar\\'e ball model, we aim to create more discriminative embeddings, particularly for fine-grained motions like finger articulations. We introduce a hyperbolic projection layer, a weighted Fr\\'echet mean aggregation scheme, and a geometric contrastive loss operating directly in hyperbolic space. These components are integrated into an end-to-end translation framework as a regularisation function, to enhance the representations within the language model. This work demonstrates the potential of hyperbolic geometry to improve skeletal representations for Sign Language Translation, improving on SOTA RGB methods while preserving privacy and improving computational efficiency. Code available here: https://github.com/ed-fish/geo-sign.","url_abs":"https://arxiv.org/abs/2506.00129v1","url_pdf":"https://arxiv.org/pdf/2506.00129v1.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":"geo-sign-hyperbolic-contrastive-1","repo_url":"https://github.com/ed-fish/Geo-Sign","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"computational-efficiency","task_name":"Computational Efficiency"},{"task_slug":"sign-language-translation","task_name":"Sign Language Translation"},{"task_slug":"translation","task_name":"Translation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2506.00129","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2506.00129"}},"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/ed-fish/geo-sign","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ed-fish/Geo-Sign","reach":null}],"summary":{"ran":3,"ran_fixture":3,"unverified":1},"by_repo_kind":{"official":{"samples":7,"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":7,"samples":[{"code_sha256_prefix":"4dfdbb5ceec12753","entry":"GCN_unit","repo":"ed-fish/Geo-Sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/Geo-Sign/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4dfdbb5ceec12753"}},{"code_sha256_prefix":"4d81a4149f6d9164","entry":"STGCNChain","repo":"ed-fish/Geo-Sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/Geo-Sign/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4d81a4149f6d9164"}},{"code_sha256_prefix":"be4c832f80fa479f","entry":"STGCN_block","repo":"ed-fish/Geo-Sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/Geo-Sign/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"be4c832f80fa479f"}},{"code_sha256_prefix":"3f7062bb9233a958","entry":"_no_grad_trunc_normal_","repo":"ed-fish/Geo-Sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/Geo-Sign/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3f7062bb9233a958"}},{"code_sha256_prefix":"2b9fb746095d0f70","entry":"get_stgcn_chain","repo":"ed-fish/Geo-Sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/Geo-Sign/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2b9fb746095d0f70"}},{"code_sha256_prefix":"fd05acd780fc4073","entry":"trunc_normal_","repo":"ed-fish/geo-sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/geo-sign/blob/HEAD/models.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":"fd05acd780fc4073"}},{"code_sha256_prefix":"dad2ba16da6f50f1","entry":"Uni_Sign","repo":"ed-fish/Geo-Sign","repo_kind":"official","path":"models.py","file_url":"https://github.com/ed-fish/Geo-Sign/blob/HEAD/models.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":"dad2ba16da6f50f1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}