{"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/advancing-the-robustness-of-large-language","title":"Advancing the Robustness of Large Language Models through Self-Denoised Smoothing","arxiv_id":"2404.12274","date":"2024-04-18","proceeding":null,"authors":["Jiabao Ji","Bairu Hou","Zhen Zhang","Guanhua Zhang","Wenqi Fan","Qing Li","Yang Zhang","Gaowen Liu","Sijia Liu","Shiyu Chang"],"abstract":"Although large language models (LLMs) have achieved significant success, their vulnerability to adversarial perturbations, including recent jailbreak attacks, has raised considerable concerns. However, the increasing size of these models and their limited access make improving their robustness a challenging task. Among various defense strategies, randomized smoothing has shown great potential for LLMs, as it does not require full access to the model's parameters or fine-tuning via adversarial training. However, randomized smoothing involves adding noise to the input before model prediction, and the final model's robustness largely depends on the model's performance on these noise corrupted data. Its effectiveness is often limited by the model's sub-optimal performance on noisy data. To address this issue, we propose to leverage the multitasking nature of LLMs to first denoise the noisy inputs and then to make predictions based on these denoised versions. We call this procedure self-denoised smoothing. Unlike previous denoised smoothing techniques in computer vision, which require training a separate model to enhance the robustness of LLMs, our method offers significantly better efficiency and flexibility. Our experimental results indicate that our method surpasses existing methods in both empirical and certified robustness in defending against adversarial attacks for both downstream tasks and human alignments (i.e., jailbreak attacks). Our code is publicly available at https://github.com/UCSB-NLP-Chang/SelfDenoise","url_abs":"https://arxiv.org/abs/2404.12274v1","url_pdf":"https://arxiv.org/pdf/2404.12274v1.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":"advancing-the-robustness-of-large-language","repo_url":"https://github.com/ucsb-nlp-chang/selfdenoise","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[],"methods":[{"method_slug":"denoised-smoothing","method_name":"Denoised Smoothing"},{"method_slug":"randomized-smoothing","method_name":"Randomized Smoothing"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2404.12274","atlas_url":"https://app.syntology.ai/?focus=2404.12274","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2404.12274"}},"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/ucsb-nlp-chang/selfdenoise","reach":{"status":"ok"}}],"summary":{"ran":4},"by_repo_kind":{"official":{"samples":4,"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":4,"samples":[{"code_sha256_prefix":"e0ff677292cbbb70","entry":"call_openai","repo":"ucsb-nlp-chang/selfdenoise","repo_kind":"official","path":"jailbreakcode/lib/language_models.py","file_url":"https://github.com/ucsb-nlp-chang/selfdenoise/blob/HEAD/jailbreakcode/lib/language_models.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":"e0ff677292cbbb70"}},{"code_sha256_prefix":"8353094b74c70a08","entry":"get_comment","repo":"ucsb-nlp-chang/selfdenoise","repo_kind":"official","path":"code/baseargs.py","file_url":"https://github.com/ucsb-nlp-chang/selfdenoise/blob/HEAD/code/baseargs.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":"8353094b74c70a08"}},{"code_sha256_prefix":"1eb92df4126524c3","entry":"get_judge_system_prompt","repo":"ucsb-nlp-chang/selfdenoise","repo_kind":"official","path":"jailbreakcode/lib/judges.py","file_url":"https://github.com/ucsb-nlp-chang/selfdenoise/blob/HEAD/jailbreakcode/lib/judges.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":"1eb92df4126524c3"}},{"code_sha256_prefix":"6e443db02d852c21","entry":"get_judge_system_prompt_for_rejection","repo":"ucsb-nlp-chang/selfdenoise","repo_kind":"official","path":"jailbreakcode/lib/judges.py","file_url":"https://github.com/ucsb-nlp-chang/selfdenoise/blob/HEAD/jailbreakcode/lib/judges.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":"6e443db02d852c21"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}