{"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/detecting-harmful-memes-with-decoupled","title":"Detecting Harmful Memes with Decoupled Understanding and Guided CoT Reasoning","arxiv_id":"2506.08477","date":"2025-06-10","proceeding":null,"authors":["Fengjun Pan","Anh Tuan Luu","Xiaobao Wu"],"abstract":"Detecting harmful memes is essential for maintaining the integrity of online environments. However, current approaches often struggle with resource efficiency, flexibility, or explainability, limiting their practical deployment in content moderation systems. To address these challenges, we introduce U-CoT+, a novel framework for harmful meme detection. Instead of relying solely on prompting or fine-tuning multimodal models, we first develop a high-fidelity meme-to-text pipeline that converts visual memes into detail-preserving textual descriptions. This design decouples meme interpretation from meme classification, thus avoiding immediate reasoning over complex raw visual content and enabling resource-efficient harmful meme detection with general large language models (LLMs). Building on these textual descriptions, we further incorporate targeted, interpretable human-crafted guidelines to guide models' reasoning under zero-shot CoT prompting. As such, this framework allows for easy adaptation to different harmfulness detection criteria across platforms, regions, and over time, offering high flexibility and explainability. Extensive experiments on seven benchmark datasets validate the effectiveness of our framework, highlighting its potential for explainable and low-resource harmful meme detection using small-scale LLMs. Codes and data are available at: https://anonymous.4open.science/r/HMC-AF2B/README.md.","url_abs":"https://arxiv.org/abs/2506.08477v1","url_pdf":"https://arxiv.org/pdf/2506.08477v1.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":"detecting-harmful-memes-with-decoupled","repo_url":"https://github.com/panFJCharlotte98/HMC","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"meme-classification","task_name":"Meme Classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2506.08477","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2506.08477"}},"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":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/panFJCharlotte98/HMC","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"listed":{"samples":5,"ran":1,"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":0,"samples":[{"code_sha256_prefix":"f41cb1a19b154297","entry":"encode_image","repo":"panFJCharlotte98/HMC","repo_kind":"listed","path":"call_gpt.py","file_url":"https://github.com/panFJCharlotte98/HMC/blob/HEAD/call_gpt.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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f41cb1a19b154297"}},{"code_sha256_prefix":"c46b835f604591c0","entry":"compute_cost","repo":"panFJCharlotte98/HMC","repo_kind":"listed","path":"call_gpt.py","file_url":"https://github.com/panFJCharlotte98/HMC/blob/HEAD/call_gpt.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c46b835f604591c0"}},{"code_sha256_prefix":"85f4c38c1a581550","entry":"postprocess_output_text","repo":"panFJCharlotte98/HMC","repo_kind":"listed","path":"call_gpt.py","file_url":"https://github.com/panFJCharlotte98/HMC/blob/HEAD/call_gpt.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"85f4c38c1a581550"}},{"code_sha256_prefix":"0249386bc2bedf2d","entry":"postprocess_output_text","repo":"panFJCharlotte98/HMC","repo_kind":"listed","path":"models/gpt.py","file_url":"https://github.com/panFJCharlotte98/HMC/blob/HEAD/models/gpt.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0249386bc2bedf2d"}},{"code_sha256_prefix":"6581ae2c453a5a14","entry":"upsample","repo":"panFJCharlotte98/HMC","repo_kind":"listed","path":"seq2seq_construction/meta_seq2seq.py","file_url":"https://github.com/panFJCharlotte98/HMC/blob/HEAD/seq2seq_construction/meta_seq2seq.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6581ae2c453a5a14"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}