{"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/adaptivesam-towards-efficient-tuning-of-sam","title":"AdaptiveSAM: Towards Efficient Tuning of SAM for Surgical Scene Segmentation","arxiv_id":"2308.03726","date":"2023-08-07","proceeding":null,"authors":["Jay N. Paranjape","Nithin Gopalakrishnan Nair","Shameema Sikder","S. Swaroop Vedula","Vishal M. Patel"],"abstract":"Segmentation is a fundamental problem in surgical scene analysis using artificial intelligence. However, the inherent data scarcity in this domain makes it challenging to adapt traditional segmentation techniques for this task. To tackle this issue, current research employs pretrained models and finetunes them on the given data. Even so, these require training deep networks with millions of parameters every time new data becomes available. A recently published foundation model, Segment-Anything (SAM), generalizes well to a large variety of natural images, hence tackling this challenge to a reasonable extent. However, SAM does not generalize well to the medical domain as is without utilizing a large amount of compute resources for fine-tuning and using task-specific prompts. Moreover, these prompts are in the form of bounding-boxes or foreground/background points that need to be annotated explicitly for every image, making this solution increasingly tedious with higher data size. In this work, we propose AdaptiveSAM - an adaptive modification of SAM that can adjust to new datasets quickly and efficiently, while enabling text-prompted segmentation. For finetuning AdaptiveSAM, we propose an approach called bias-tuning that requires a significantly smaller number of trainable parameters than SAM (less than 2\\%). At the same time, AdaptiveSAM requires negligible expert intervention since it uses free-form text as prompt and can segment the object of interest with just the label name as prompt. Our experiments show that AdaptiveSAM outperforms current state-of-the-art methods on various medical imaging datasets including surgery, ultrasound and X-ray. Code is available at https://github.com/JayParanjape/biastuning","url_abs":"https://arxiv.org/abs/2308.03726v1","url_pdf":"https://arxiv.org/pdf/2308.03726v1.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":"adaptivesam-towards-efficient-tuning-of-sam","repo_url":"https://github.com/jayparanjape/biastuning","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"scene-segmentation","task_name":"Scene Segmentation"},{"task_slug":"segmentation","task_name":"Segmentation"}],"methods":[{"method_slug":"sam","method_name":"SAM"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2308.03726","atlas_url":"https://app.syntology.ai/?focus=2308.03726","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.03726"}},"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/jayparanjape/biastuning","reach":{"status":"ok"}}],"summary":{"ran_fixture":1,"ran_draft_wrong":5,"ran":3,"unverified":3},"by_repo_kind":{"official":{"samples":12,"ran":9,"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":12,"samples":[{"code_sha256_prefix":"7d8eaf5537f699e4","entry":"np2th","repo":"jayparanjape/biastuning","repo_kind":"official","path":"vit_seg_modeling.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/vit_seg_modeling.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":2,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7d8eaf5537f699e4"}},{"code_sha256_prefix":"0f786c407fb1ee4c","entry":"swish","repo":"jayparanjape/biastuning","repo_kind":"official","path":"vit_seg_modeling.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/vit_seg_modeling.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":2,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0f786c407fb1ee4c"}},{"code_sha256_prefix":"d9def42110729a85","entry":"conv1x1","repo":"jayparanjape/biastuning","repo_kind":"official","path":"axialnet.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/axialnet.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d9def42110729a85"}},{"code_sha256_prefix":"b0f916df39e78ae5","entry":"conv1x1","repo":"jayparanjape/biastuning","repo_kind":"official","path":"vit_seg_modeling_resnet_skip.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/vit_seg_modeling_resnet_skip.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b0f916df39e78ae5"}},{"code_sha256_prefix":"ab5d06cfb8a6c6bf","entry":"conv1x1","repo":"jayparanjape/biastuning","repo_kind":"official","path":"baselines.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/baselines.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ab5d06cfb8a6c6bf"}},{"code_sha256_prefix":"4e5bf13dbdc4f008","entry":"conv3x3","repo":"jayparanjape/biastuning","repo_kind":"official","path":"vit_seg_modeling_resnet_skip.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/vit_seg_modeling_resnet_skip.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4e5bf13dbdc4f008"}},{"code_sha256_prefix":"2574ceb4f4225b04","entry":"dice_coef","repo":"jayparanjape/biastuning","repo_kind":"official","path":"utils.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/utils.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":"2574ceb4f4225b04"}},{"code_sha256_prefix":"2a3711c42b159634","entry":"iou_coef","repo":"jayparanjape/biastuning","repo_kind":"official","path":"utils.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/utils.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":"2a3711c42b159634"}},{"code_sha256_prefix":"545d0cdd315c8c4a","entry":"running_stats","repo":"jayparanjape/biastuning","repo_kind":"official","path":"utils.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/utils.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":"545d0cdd315c8c4a"}},{"code_sha256_prefix":"b44a1d3a0190256d","entry":"axialunet","repo":"jayparanjape/biastuning","repo_kind":"official","path":"axialnet.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/axialnet.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":"b44a1d3a0190256d"}},{"code_sha256_prefix":"69c02e4eb1c02a52","entry":"build_model","repo":"jayparanjape/biastuning","repo_kind":"official","path":"clip/model.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/clip/model.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":"69c02e4eb1c02a52"}},{"code_sha256_prefix":"e90a4014d74c1fa1","entry":"gated","repo":"jayparanjape/biastuning","repo_kind":"official","path":"axialnet.py","file_url":"https://github.com/jayparanjape/biastuning/blob/HEAD/axialnet.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":"e90a4014d74c1fa1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}