{"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/clif-complementary-leaky-integrate-and-fire","title":"CLIF: Complementary Leaky Integrate-and-Fire Neuron for Spiking Neural Networks","arxiv_id":"2402.04663","date":"2024-02-07","proceeding":null,"authors":["Yulong Huang","Xiaopeng Lin","Hongwei Ren","Haotian Fu","Yue Zhou","Zunchang Liu","Biao Pan","Bojun Cheng"],"abstract":"Spiking neural networks (SNNs) are promising brain-inspired energy-efficient models. Compared to conventional deep Artificial Neural Networks (ANNs), SNNs exhibit superior efficiency and capability to process temporal information. However, it remains a challenge to train SNNs due to their undifferentiable spiking mechanism. The surrogate gradients method is commonly used to train SNNs, but often comes with an accuracy disadvantage over ANNs counterpart. We link the degraded accuracy to the vanishing of gradient on the temporal dimension through the analytical and experimental study of the training process of Leaky Integrate-and-Fire (LIF) Neuron-based SNNs. Moreover, we propose the Complementary Leaky Integrate-and-Fire (CLIF) Neuron. CLIF creates extra paths to facilitate the backpropagation in computing temporal gradient while keeping binary output. CLIF is hyperparameter-free and features broad applicability. Extensive experiments on a variety of datasets demonstrate CLIF's clear performance advantage over other neuron models. Furthermore, the CLIF's performance even slightly surpasses superior ANNs with identical network structure and training conditions. The code is available at https://github.com/HuuYuLong/Complementary-LIF.","url_abs":"https://arxiv.org/abs/2402.04663v5","url_pdf":"https://arxiv.org/pdf/2402.04663v5.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":"clif-complementary-leaky-integrate-and-fire","repo_url":"https://github.com/huuyulong/complementary-lif","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2402.04663","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.04663"}},"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/huuyulong/complementary-lif","reach":{"status":"ok"}}],"summary":{"ran":8,"ran_draft_wrong":2,"unverified":1},"by_repo_kind":{"official":{"samples":11,"ran":10,"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":11,"samples":[{"code_sha256_prefix":"45d41c67165439b6","entry":"addressing_cost","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"calculating_energy.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/calculating_energy.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":"45d41c67165439b6"}},{"code_sha256_prefix":"042459c1a050dc81","entry":"build_dvscifar","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/data_loaders.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/data_loaders.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":"042459c1a050dc81"}},{"code_sha256_prefix":"ed06059c613c3d2a","entry":"integrate_events_to_frames","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/cifar10_dvs.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/cifar10_dvs.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":"ed06059c613c3d2a"}},{"code_sha256_prefix":"5e75454bcab18671","entry":"memory_cost","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"calculating_energy.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/calculating_energy.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":"5e75454bcab18671"}},{"code_sha256_prefix":"97f484048ac03556","entry":"mixup_criterion","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/data_loaders.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/data_loaders.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"97f484048ac03556"}},{"code_sha256_prefix":"54d42fcd6c4d7cc0","entry":"normalize_frame","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/cifar10_dvs.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/cifar10_dvs.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":"54d42fcd6c4d7cc0"}},{"code_sha256_prefix":"50afa2863ffd9fde","entry":"plot_overlap","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/logger.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/logger.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":"50afa2863ffd9fde"}},{"code_sha256_prefix":"bf2da3425668362c","entry":"read_bits","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/cifar10_dvs.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/cifar10_dvs.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":"bf2da3425668362c"}},{"code_sha256_prefix":"fc3891d70f5eaad6","entry":"rotate_with_fill","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/image_augment.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/image_augment.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":"fc3891d70f5eaad6"}},{"code_sha256_prefix":"378b1fd97b6ff717","entry":"synaptic_op","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"calculating_energy.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/calculating_energy.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":"378b1fd97b6ff717"}},{"code_sha256_prefix":"fb42d94e23a6394c","entry":"build_ncaltech","repo":"huuyulong/complementary-lif","repo_kind":"official","path":"utils/data_loaders.py","file_url":"https://github.com/huuyulong/complementary-lif/blob/HEAD/utils/data_loaders.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":"fb42d94e23a6394c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}