{"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/grasp-graph-structured-pyramidal-whole-slide","title":"GRASP: GRAph-Structured Pyramidal Whole Slide Image Representation","arxiv_id":"2402.03592","date":"2024-02-06","proceeding":null,"authors":["Ali Khajegili Mirabadi","Graham Archibald","Amirali Darbandsari","Alberto Contreras-Sanz","Ramin Ebrahim Nakhli","Maryam Asadi","Allen Zhang","C. Blake Gilks","Peter Black","Gang Wang","Hossein Farahani","Ali Bashashati"],"abstract":"Cancer subtyping is one of the most challenging tasks in digital pathology, where Multiple Instance Learning (MIL) by processing gigapixel whole slide images (WSIs) has been in the spotlight of recent research. However, MIL approaches do not take advantage of inter- and intra-magnification information contained in WSIs. In this work, we present GRASP, a novel lightweight graph-structured multi-magnification framework for processing WSIs in digital pathology. Our approach is designed to dynamically emulate the pathologist's behavior in handling WSIs and benefits from the hierarchical structure of WSIs. GRASP, which introduces a convergence-based node aggregation mechanism replacing traditional pooling mechanisms, outperforms state-of-the-art methods by a high margin in terms of balanced accuracy, while being significantly smaller than the closest-performing state-of-the-art models in terms of the number of parameters. Our results show that GRASP is dynamic in finding and consulting with different magnifications for subtyping cancers, is reliable and stable across different hyperparameters, and can generalize when using features from different backbones. The model's behavior has been evaluated by two expert pathologists confirming the interpretability of the model's dynamic. We also provide a theoretical foundation, along with empirical evidence, for our work, explaining how GRASP interacts with different magnifications and nodes in the graph to make predictions. We believe that the strong characteristics yet simple structure of GRASP will encourage the development of interpretable, structure-based designs for WSI representation in digital pathology. Data and code can be found in https://github.com/AIMLab-UBC/GRASP","url_abs":"https://arxiv.org/abs/2402.03592v2","url_pdf":"https://arxiv.org/pdf/2402.03592v2.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":"grasp-graph-structured-pyramidal-whole-slide","repo_url":"https://github.com/aimlab-ubc/grasp","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"multiple-instance-learning","task_name":"Multiple Instance Learning"},{"task_slug":"whole-slide-images","task_name":"whole slide images"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2402.03592","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.03592"}},"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/AIMLab-UBC/GRASP","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/aimlab-ubc/grasp","reach":{"status":"ok"}}],"summary":{"ran":2,"unverified":1},"by_repo_kind":{"official":{"samples":3,"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":3,"samples":[{"code_sha256_prefix":"30d3dafb97e0ab31","entry":"best_seed","repo":"AIMLab-UBC/GRASP","repo_kind":"official","path":"codes/result_reporter.py","file_url":"https://github.com/AIMLab-UBC/GRASP/blob/HEAD/codes/result_reporter.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":"30d3dafb97e0ab31"}},{"code_sha256_prefix":"3cbe2d35e215be22","entry":"dir_path","repo":"AIMLab-UBC/GRASP","repo_kind":"official","path":"graph_construction/parser.py","file_url":"https://github.com/AIMLab-UBC/GRASP/blob/HEAD/graph_construction/parser.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":"3cbe2d35e215be22"}},{"code_sha256_prefix":"b8baf73276f8d91d","entry":"file_path","repo":"AIMLab-UBC/GRASP","repo_kind":"official","path":"graph_construction/parser.py","file_url":"https://github.com/AIMLab-UBC/GRASP/blob/HEAD/graph_construction/parser.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":"b8baf73276f8d91d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}