<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Neurosci.</journal-id>
<journal-title>Frontiers in Neuroscience</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Neurosci.</abbrev-journal-title>
<issn pub-type="epub">1662-453X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fnins.2024.1346805</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Rethinking skip connections in Spiking Neural Networks with Time-To-First-Spike coding</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name><surname>Kim</surname> <given-names>Youngeun</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x0002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1395288/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Kahana</surname> <given-names>Adar</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/2592720/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Yin</surname> <given-names>Ruokai</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/2370080/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Li</surname> <given-names>Yuhang</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/2173370/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Stinis</surname> <given-names>Panos</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Karniadakis</surname> <given-names>George Em</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/266694/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Panda</surname> <given-names>Priyadarshini</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/474514/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Department of Electrical Engineering, Yale University</institution>, <addr-line>New Haven, CT</addr-line>, <country>United States</country></aff>
<aff id="aff2"><sup>2</sup><institution>Division of Applied Mathematics, Brown University</institution>, <addr-line>Providence, RI</addr-line>, <country>United States</country></aff>
<aff id="aff3"><sup>3</sup><institution>Advanced Computing, Mathematics and Data Division, Pacific Northwest National Laboratory</institution>, <addr-line>Richland, WA</addr-line>, <country>United States</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Mohammed Fouda, University of California, Irvine, United States</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Shuangming Yang, Tianjin University, China</p>
<p>Anguo Zhang, University of Macau, China</p></fn>
<corresp id="c001">&#x0002A;Correspondence: Youngeun Kim <email>youngeun.kim&#x00040;yale.edu</email></corresp>
</author-notes>
<pub-date pub-type="epub">
<day>14</day>
<month>02</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2024</year>
</pub-date>
<volume>18</volume>
<elocation-id>1346805</elocation-id>
<history>
<date date-type="received">
<day>29</day>
<month>11</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>30</day>
<month>01</month>
<year>2024</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2024 Kim, Kahana, Yin, Li, Stinis, Karniadakis and Panda.</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Kim, Kahana, Yin, Li, Stinis, Karniadakis and Panda</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>Time-To-First-Spike (TTFS) coding in Spiking Neural Networks (SNNs) offers significant advantages in terms of energy efficiency, closely mimicking the behavior of biological neurons. In this work, we delve into the role of skip connections, a widely used concept in Artificial Neural Networks (ANNs), within the domain of SNNs with TTFS coding. Our focus is on two distinct types of skip connection architectures: (1) addition-based skip connections, and (2) concatenation-based skip connections. We find that addition-based skip connections introduce an additional delay in terms of spike timing. On the other hand, concatenation-based skip connections circumvent this delay but produce time gaps between after-convolution and skip connection paths, thereby restricting the effective mixing of information from these two paths. To mitigate these issues, we propose a novel approach involving a learnable delay for skip connections in the concatenation-based skip connection architecture. This approach successfully bridges the time gap between the convolutional and skip branches, facilitating improved information mixing. We conduct experiments on public datasets including MNIST and Fashion-MNIST, illustrating the advantage of the skip connection in TTFS coding architectures. Additionally, we demonstrate the applicability of TTFS coding on beyond image recognition tasks and extend it to scientific machine-learning tasks, broadening the potential uses of SNNs.</p></abstract>
<kwd-group>
<kwd>Spiking Neural Network</kwd>
<kwd>temporal coding</kwd>
<kwd>image recognition</kwd>
<kwd>event-based processing</kwd>
<kwd>energy-efficient deep learning</kwd>
</kwd-group>
<counts>
<fig-count count="9"/>
<table-count count="8"/>
<equation-count count="17"/>
<ref-count count="64"/>
<page-count count="14"/>
<word-count count="9396"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Neuromorphic Engineering</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<title>1 Introduction</title>
<p>The communication between spiking neurons in the brain, characterized by its binary, event-driven, and sparse nature, offers significant potential for creating flexible and energy-efficient artificial intelligence (AI) systems (Roy et al., <xref ref-type="bibr" rid="B42">2019</xref>; Christensen et al., <xref ref-type="bibr" rid="B5">2022</xref>). Spiking Neural Networks (SNNs), unlike traditional Artificial Neural Networks (ANNs), leverage binary spikes, thereby offering a unique dimension of time in their operation. Recent studies have shown promising results with SNNs, making them suitable for competitive and energy-efficient applications in neuromorphic hardware (Cao et al., <xref ref-type="bibr" rid="B4">2015</xref>; Diehl and Cook, <xref ref-type="bibr" rid="B7">2015</xref>; Roy et al., <xref ref-type="bibr" rid="B42">2019</xref>; Comsa et al., <xref ref-type="bibr" rid="B6">2020</xref>; Panda et al., <xref ref-type="bibr" rid="B38">2020</xref>).</p>
<p>A primary application of SNNs lies in image recognition (Roy et al., <xref ref-type="bibr" rid="B42">2019</xref>; Christensen et al., <xref ref-type="bibr" rid="B5">2022</xref>). In order to transform a static image into binary spike trains, a range of coding schemes have been introduced (Park et al., <xref ref-type="bibr" rid="B39">2019</xref>; Comsa et al., <xref ref-type="bibr" rid="B6">2020</xref>; Guo et al., <xref ref-type="bibr" rid="B13">2021</xref>). Rate coding conveys information through the firing rate of spikes (Wu et al., <xref ref-type="bibr" rid="B54">2019</xref>; Fang et al., <xref ref-type="bibr" rid="B9">2020</xref>; Lee et al., <xref ref-type="bibr" rid="B28">2020</xref>; Zhang and Li, <xref ref-type="bibr" rid="B63">2020</xref>; Zheng et al., <xref ref-type="bibr" rid="B64">2020</xref>). Phase coding, meanwhile, embeds temporal information in spike patterns utilizing a global oscillator (Montemurro et al., <xref ref-type="bibr" rid="B34">2008</xref>). In contrast, burst coding transmits spike bursts within brief time periods, which boosts the reliability of synaptic communication between neurons (Park et al., <xref ref-type="bibr" rid="B39">2019</xref>). While these coding schemes have proven successful in training SNNs, they generate a large number of spikes, which presents challenges when applied to ultra-low power devices.</p>
<p>To leverage temporal spike information in ultra-low power environments, researchers have increasingly focused on Time-To-First-Spike (TTFS) coding (Rueckauer and Liu, <xref ref-type="bibr" rid="B43">2018</xref>; Zhang et al., <xref ref-type="bibr" rid="B61">2019</xref>). The core concept involves representing information through spike timing, with each neuron generating a single spike during the forward process. A line of work focuses on training temporal-coded SNNs with backpropagation (Bohte et al., <xref ref-type="bibr" rid="B3">2000</xref>; Xu et al., <xref ref-type="bibr" rid="B56">2013</xref>; Mostafa, <xref ref-type="bibr" rid="B35">2017</xref>; Shrestha and Song, <xref ref-type="bibr" rid="B48">2017</xref>; Comsa et al., <xref ref-type="bibr" rid="B6">2020</xref>; Zhang et al., <xref ref-type="bibr" rid="B62">2021</xref>), which highlights biological plausibility and efficiency of temporal coding. Much of the previous work has centered on developing improved synaptic models capable of effectively processing temporal information. For instance, Mostafa (<xref ref-type="bibr" rid="B35">2017</xref>) employed non-leaky integrate-and-fire neurons to compute locally exact gradients for backpropagation, while Comsa et al. (<xref ref-type="bibr" rid="B6">2020</xref>) introduced the alpha-synaptic function to enhance SNNs&#x00027; accuracy. Recently, Zhang et al. (<xref ref-type="bibr" rid="B62">2021</xref>) proposed a ReLU-like spike dynamics that effectively mitigates the dead neuron issue caused by the leaky nature of spike functions.</p>
<p>While advances in synaptic modeling have illuminated the understanding of neuronal dynamics, the exploration of network architecture in temporal SNNs has been relatively limited. In this paper, we explore architectural improvements of TTFS coding, focusing on the role of skip connections in neural networks. Skip connections are a widely employed technique in ANNs, facilitating training and enhancing performance by allowing information to bypass certain layers. We examine two types of skip connection architectures: (1) addition-based skip connections, as proposed in ResNet (He et al., <xref ref-type="bibr" rid="B16">2016</xref>), and (2) concatenation-based skip connections utilized in the ShuffleNetV2 architecture (Ma et al., <xref ref-type="bibr" rid="B33">2018</xref>). We find that, when implemented in temporal SNN architectures, addition-based skip connections can introduce extra delays in the time dimension. Conversely, concatenation-based skip connections substantially reduce inference latency, but yield limited performance improvements due to discrepancies between the distributions from the convolution and skip branches. To augment the performance of concatenation-based skip connections, we propose a learnable delay for skip connections, which diminishes the distribution gap between the skip and convolutional branches, allowing for more effective information mixing between the two distributions.</p>
<p>In addition to our exploration of a new architecture for TTFS SNNs, we also investigate applications outside of image recognition, specifically in the realm of scientific machine-learning tasks. We venture into the domain of time-reversal wave localization problems, a significant challenge in physics and engineering. This problem aims to trace back a wave&#x00027;s source given the wave shape at a later time (Bardos and Fink, <xref ref-type="bibr" rid="B1">2002</xref>; Givoli and Turkel, <xref ref-type="bibr" rid="B11">2012</xref>; Kahana et al., <xref ref-type="bibr" rid="B22">2022</xref>). Through these experiments, we aim to demonstrate the versatility and potential of SNNs in various complex tasks, significantly expanding their applicability beyond traditional domains.</p>
<p>In summary, our contributions in this paper are three-fold. (1) First, we explore the network architecture of temporal SNNs, with a particular emphasis on skip connections, examining both addition-based residual connections and concatenation-based skip connections in the context of temporal SNNs. (2) Second, we propose a learnable delay for skip connections to improve the performance of concatenation-based skip connections by reducing the distribution gap between skip and convolutional branches, enabling more effective information mixing. (3) Lastly, we extend the application of Time-To-First-Spike (TTFS) coding beyond image recognition to the time-reversal problem for source localization using wave signal. These contributions not only advance our understanding of network architecture in temporal SNNs but also broaden the potential applications of TTFS coding in various domains.</p></sec>
<sec id="s2">
<title>2 Related work</title>
<sec>
<title>2.1 Spiking Neural Networks</title>
<p>SNNs, unlike traditional ANNs, operate using temporal spikes, thereby offering a unique dimension of time in their operation (Roy et al., <xref ref-type="bibr" rid="B42">2019</xref>; Christensen et al., <xref ref-type="bibr" rid="B5">2022</xref>). Among their components, the Leaky-Integrate-and-Fire (LIF) neuron is key as it functions as a non-linear activation unit. The LIF neurons stand out due to the &#x0201C;memory&#x0201D; held within their membrane potential, where spikes are incrementally gathered. Once this potential exceeds a certain threshold, the neurons fire output spikes and the potential resets.</p>
<p>Training algorithms have been a primary focus of SNN research. Several methods proposed to address this involve transforming pre-trained ANNs into SNNs using weight or threshold balancing strategies (Diehl et al., <xref ref-type="bibr" rid="B8">2015</xref>; Rueckauer et al., <xref ref-type="bibr" rid="B44">2017</xref>; Sengupta et al., <xref ref-type="bibr" rid="B46">2019</xref>; Han et al., <xref ref-type="bibr" rid="B14">2020</xref>; Li et al., <xref ref-type="bibr" rid="B30">2021a</xref>). While these techniques are generally effective, they require a multitude of timesteps to emulate float activations using binary spikes. A set of recent studies have suggested the use of surrogate functions to circumvent this non-differentiable backpropagation issue (Lee et al., <xref ref-type="bibr" rid="B29">2016</xref>, <xref ref-type="bibr" rid="B28">2020</xref>; Shrestha and Orchard, <xref ref-type="bibr" rid="B47">2018</xref>; Wu et al., <xref ref-type="bibr" rid="B53">2018</xref>, <xref ref-type="bibr" rid="B52">2020</xref>, <xref ref-type="bibr" rid="B51">2021</xref>; Neftci et al., <xref ref-type="bibr" rid="B36">2019</xref>; Li et al., <xref ref-type="bibr" rid="B31">2021b</xref>; Kim et al., <xref ref-type="bibr" rid="B25">2022a</xref>). These methods, accounting for temporal dynamics during weight training, exhibit high performance and short latency.</p>
<p>Recent literature goes beyond enhancing the performance of SNN models, focusing on improving their generalization capability and robustness. The utilization of the information bottleneck theory is a common thread in these efforts. Yang and Chen (<xref ref-type="bibr" rid="B57">2023a</xref>) introduce a novel and flexible learning framework called high-order spike-based information bottleneck (HOSIB), making use of the surrogate gradient technique. Yang and Chen (<xref ref-type="bibr" rid="B58">2023b</xref>) put forward a spike-based non-linear IB (SNIB) framework with varying orders, resulting in improved performance and robustness. Additionally, Yang et al. (<xref ref-type="bibr" rid="B59">2023</xref>) delves into the design space of the information bottleneck framework, utilizing the membrane potential state for the representation of hidden information.</p>
<p>Another significant aspect of SNN research pertains to the coding scheme. Several schemes have been proposed for image classification with SNNs. Burst coding, for example, communicates a burst of spikes within a short duration, enhancing synaptic communication reliability (Park et al., <xref ref-type="bibr" rid="B39">2019</xref>). Phase coding encodes temporal information into spike patterns based on a global oscillator (Montemurro et al., <xref ref-type="bibr" rid="B34">2008</xref>). Furthermore, rate coding has been applied to large-scale settings and is currently used by state-of-the-art methods (Diehl and Cook, <xref ref-type="bibr" rid="B7">2015</xref>; Lee et al., <xref ref-type="bibr" rid="B29">2016</xref>, <xref ref-type="bibr" rid="B28">2020</xref>). This scheme generates a spike train over <italic>T</italic> timesteps, where the total spike count reflects the magnitude of the input values. However, this generation of numerous spikes can pose issues for ultra-low power devices. To address this, Time-To-First-Spike (TTFS) coding has gained interest (Mostafa, <xref ref-type="bibr" rid="B35">2017</xref>; Zhang et al., <xref ref-type="bibr" rid="B61">2019</xref>; Comsa et al., <xref ref-type="bibr" rid="B6">2020</xref>), as it generates a single spike per neuron, with spike latency inversely related to information importance. Despite progress in synaptic modeling, the architectural exploration of temporal SNNs remains limited. In this paper, we delve into the architectural enhancement of TTFS coding, specifically emphasizing the significance of skip connections in neural networks.</p>
</sec>
<sec>
<title>2.2 Skip connection architecture</title>
<p>The concept of skip connections or shortcut connections has been a cornerstone in the development of deep learning architectures, contributing significantly to the performance enhancement of various models. Furthermore, introduced by Srivastava et al. (<xref ref-type="bibr" rid="B49">2015</xref>), Highway Networks utilize gated skip connections, where the data flow is regulated by learned gating functions. This allows the network to learn to control the information flow dynamically. Also, Huang et al. (<xref ref-type="bibr" rid="B19">2017</xref>) proposed DenseNet, where each layer receives direct inputs from all preceding layers and passes down its own feature maps to all subsequent layers. This dense connectivity promotes feature reuse and substantially reduces the number of parameters. In the ShuffleNetV2 architectures (Ma et al., <xref ref-type="bibr" rid="B33">2018</xref>), channel shuffle operations and pointwise group convolutions are combined with skip connections to create highly efficient network architectures suitable for mobile devices. The aforementioned architectures have shown the importance of skip connections in enhancing the performance of neural networks. However, most of these architectures have been designed for traditional ANNs, and their application and efficacy in the context of SNNs remain to be thoroughly investigated.</p>
<p>In the SNN domain, a line of work has introduced the residual connection architecture (Fang et al., <xref ref-type="bibr" rid="B10">2021</xref>; Hu et al., <xref ref-type="bibr" rid="B18">2021</xref>), demonstrating state-of-the-art performance. Zhang et al. (<xref ref-type="bibr" rid="B60">2023</xref>) propose a Highway Connection module designed for use with residual membrane potential neurons, enhancing the responsiveness of neurons in deep layers to input spikes. Benmeziane et al. (<xref ref-type="bibr" rid="B2">2023</xref>) investigates the correlation between the number of skip connections and accuracy in SNN architectures, proposing an algorithm for selecting the optimal number of skip connections. Additionally, Ikegawa et al. (<xref ref-type="bibr" rid="B21">2022</xref>) analyzes the impact of batch normalization and residual connection, achieving very deep SNNs (more than 100 layers) with pre-activation residual blocks. While the residual architecture has been explored with rate-coded SNNs, the impact of the residual architecture with temporal considerations has not been thoroughly investigated.</p></sec>
</sec>
<sec sec-type="methods" id="s3">
<title>3 Methodology</title>
<sec>
<title>3.1 Temporal neuron</title>
<p>Our neuron model is based on the non-leaky integrate-and-fire neurons proposed in Mostafa (<xref ref-type="bibr" rid="B35">2017</xref>). The neuron employs exponentially decaying synaptic current kernels denoted as &#x003F5;. The influence of a spike occurring at time <italic>t</italic><sub><italic>k</italic></sub> on the membrane potential can be expressed as</p>
<disp-formula id="E1"><label>(1)</label><mml:math id="M1"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mfrac><mml:mrow><mml:mi>d</mml:mi><mml:msup><mml:mrow><mml:mi>V</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:mfrac><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mi>&#x003F5;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Here, <italic>V</italic><sup><italic>j</italic></sup>(<italic>t</italic>) represents the membrane potential of neuron <italic>j</italic> at time <italic>t</italic>, and <italic>w</italic><sub><italic>ji</italic></sub> is the weight connection between neuron <italic>j</italic> and neuron <italic>i</italic> in the preceding layer. The synaptic current kernels, denoted by &#x003F5;, are defined as</p>
<disp-formula id="E2"><label>(2)</label><mml:math id="M2"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x003F5;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>U</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>x</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>U</italic>(<italic>x</italic>) is the step function. <italic>U</italic>(<italic>x</italic>) &#x0003D; 1 when <italic>x</italic>&#x02265;0 and <italic>U</italic>(<italic>x</italic>) &#x0003D; 0 otherwise, which ensures that the synaptic kernel accounts for the time subsequent to the input spike. By considering both <xref ref-type="disp-formula" rid="E1">Equations (1</xref>, <xref ref-type="disp-formula" rid="E2">2)</xref>, we can derive the equation of the membrane potential. We assume one neuron generates at most one spike, so the membrane potential <italic>V</italic>(<italic>t</italic>) increases until there is an output spike. Then, we can write the membrane potential with <italic>N</italic> input spikes</p>
<disp-formula id="E3"><label>(3)</label><mml:math id="M3"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>V</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munderover accentunder="false" accent="false"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover></mml:mstyle><mml:mi>U</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Here, <italic>t</italic><sub><italic>k</italic></sub> is the spike timing of <italic>k</italic>-th spike and <italic>w</italic><sub><italic>k</italic></sub> is the corresponding weight.</p>
<p>The neuron generates an output spike whenever the membrane potential has a higher value than 1, thus, <italic>V</italic>(<italic>t</italic><sub><italic>out</italic></sub>)&#x02265;1, where <italic>t</italic><sub><italic>out</italic></sub> means the output spike timing. For all spike <italic>t</italic><sub><italic>k</italic></sub>&#x0003C;<italic>t</italic><sub><italic>out</italic></sub>, we refer to the set of input spike index as a casual set <italic>C</italic>, following the definition from the previous work (Mostafa, <xref ref-type="bibr" rid="B35">2017</xref>).</p>
<disp-formula id="E4"><label>(4)</label><mml:math id="M4"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mi>C</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Then, we reorganize <xref ref-type="disp-formula" rid="E4">Equation (4)</xref> for the spike timing.</p>
<disp-formula id="E5"><label>(5)</label><mml:math id="M5"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mstyle displaystyle="false"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mi>C</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle displaystyle="false"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mi>C</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:mfrac><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>For simplicity, we transform <italic>exp</italic>(<italic>t</italic><sub><italic>i</italic></sub>) &#x02192; <italic>z</italic><sub><italic>i</italic></sub>, i.e., <italic>z</italic>-transformation (Weisstein, <xref ref-type="bibr" rid="B50">2002</xref>). Then, <xref ref-type="disp-formula" rid="E5">Equation (5)</xref> can be rewritten as:</p>
<disp-formula id="E6"><label>(6)</label><mml:math id="M6"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>z</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mstyle displaystyle="false"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mi>C</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>z</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mstyle displaystyle="false"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mi>C</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:mfrac><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>With TTFS coding, the networks determine the class of an image based on the neuron in the final layer that fires the earliest spike. For example, consider a scenario involving a 10-class classification problem. If the neuron corresponding to the &#x0201C;dog&#x0201D; category emits the earliest spike in the final layer, the network immediately classifies the given image as a &#x0201C;dog&#x0201D;. This allows neural networks to have faster predictions, as the classification is determined as soon as the first spike is generated, without the need to wait for spikes from other neurons.</p>
</sec>
<sec>
<title>3.2 Observation: two types of skip connections</title>
<sec>
<title>3.2.1 Temporal delay in a layer</title>
<p>Our objective is to accelerate the first spike timing in the final layer, without compromising on the accuracy of the model. In this context, one might wonder: <italic>what factors contribute to the delay in temporal coding?</italic> The delay is induced by spiking neurons where each neuron requires time to charge the membrane potential to generate the output spike, as demonstrated in <xref ref-type="fig" rid="F1">Figure 1A</xref>. <xref ref-type="fig" rid="F1">Figure 1B</xref> presents a histogram of spike timings, illustrating that the distribution shifts toward a later time as the layer goes deeper. We aim to reduce this inherent temporal delay by bypassing the convolutional layers.</p>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>Illustration of a spike timing delay through layers. <bold>(A)</bold> Change of membrane potential when there are input spikes at times 1, 2, and 3. <bold>(B)</bold> We visualize the histogram of spike timing after Conv3, Conv4, and Conv5 layers.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0001.tif"/>
</fig></sec>
<sec>
<title>3.2.2 Architectures</title>
<p>We focus on the skip connection design in the temporal coding. We examine two types of skip connection architectures: (1) addition-based skip connections, as seen in ResNet (He et al., <xref ref-type="bibr" rid="B16">2016</xref>), and (2) concatenation-based skip connections utilized in the ShuffleNetV2 architecture (Ma et al., <xref ref-type="bibr" rid="B33">2018</xref>). Addition-based skip connection architecture adds a skip connection to the main convolutional branch. Let <italic>X</italic><sub><italic>l</italic></sub> represent the input to <italic>l</italic>-th block, and <italic>F</italic>(<italic>X</italic><sub><italic>l</italic></sub>) represent the non-linear transformation operations (i.e., convolution, batch normalization, and non-linearity) within a residual block. The operation of a residual block can be written as follows:</p>
<disp-formula id="E7"><label>(7)</label><mml:math id="M7"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>F</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>The overall operation of addition-based skip connection is illustrated in <xref ref-type="fig" rid="F2">Figure 2A</xref>. The major problem with this scheme is that adding two branches (i.e., the skip connection and the convolutional branch) induces a significant delay in spike timing. For example, adding a spike from a skip connection at time <italic>t</italic><sub><italic>A</italic></sub> and a spike after convolutional operation at time <italic>t</italic><sub><italic>B</italic></sub> results in the output at time <italic>t</italic><sub><italic>A</italic></sub>&#x0002B;<italic>t</italic><sub><italic>B</italic></sub>. Therefore, the addition-based skip connection is not appropriate for TTFS coding.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>Illustration of a spike timing delay of two skip connection architectures. We visualize the histogram of spike timing for &#x02460; skip branch, &#x02461; convolutional branch, and &#x02462; after combining the two branches. <bold>(A)</bold> Addition-based skip connection. <bold>(B)</bold> Concatenation-based skip connection.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0002.tif"/>
</fig>
<p>On the other hand, a concatenation-based skip connection utilizes the channel split operation, where an input tensor is split into two parts along the channel dimension. One part is transformed through a series of operations while the other part passes a skip connection. These two parts are then concatenated and shuffled to ensure equal information sharing among channels. Mathematically, for the input activation <italic>X</italic><sub><italic>l</italic></sub> in <italic>l</italic>-th block, the operation of a concatenation-based skip connection can be represented as follows:</p>
<disp-formula id="E8"><label>(8)</label><mml:math id="M8"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>;</mml:mo><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E9"><label>(9)</label><mml:math id="M9"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mtext class="textup" mathvariant="normal">Shuffle</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>F</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>||</mml:mo><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>F</italic>(<italic>X</italic><sub><italic>l</italic></sub>) represents the non-linear transformation operation, and <italic>X</italic><sub><italic>l</italic>, 1</sub>, <italic>X</italic><sub><italic>l</italic>, 2</sub> stand for two input tensors divided through channel dimension, respectively. The overall illustration of the concatenation-based skip connection is shown in <xref ref-type="fig" rid="F2">Figure 2B</xref>.</p>
<p>Different from the addition-based skip connection, the concatenation-based skip connection allows spikes to pass directly through, thereby expediting the timing of spikes. However, this method does come with a notable disadvantage: a timing discrepancy between the spikes in the convolutional branch and those in the skip connection branch. Specifically, we observe the distributions from the convolutional and skip connection branches have less overlap. This lack of overlap can make it difficult to integrate information effectively between the two distributions in the later layers. This is because of the inherent property of temporal neurons in TTFS coding. After a neuron spikes, there is no further activity, which implies a TTFS neuron will not consider any later input after it has output a spike. Consequently, these neurons tend to prioritize the earlier input, usually coming from the skip connection. This skewed consideration can potentially lead to a drop in accuracy, as vital information from later inputs could be overlooked. This observation underscores the importance of appropriately managing the timing of inputs in temporal SNNs to ensure effective information integration and high network performance.</p>
<p>To summarize, addition-based skip connections introduce additional timing delays in temporal SNNs. On the other hand, concatenation-based skip connections, despite speeding up the latency during inference, may overlook crucial information from the convolutional branch.</p>
</sec>
</sec>
<sec>
<title>3.3 Adding learnable delay with a skip connection</title>
<p>Hence, a question naturally arises: <italic>how can we improve the accuracy while reducing latency in TTFS?</italic> We focus on the problem of concatenation-based skip connections, i.e., timing discrepancy between the convolutional branch and the skip branch. To address this problem, we introduce a delay to the skip connection, which is designed to minimize the timing disparity between the two branches. <xref ref-type="fig" rid="F3">Figure 3</xref> provides an illustration of the delay implementation within the skip connection, where a delay is added across each channel. This introduces a slight adjustment to the original concatenation-based skip connection architecture. Initially, we partition the feature map across the channel dimension as follows:</p>
<disp-formula id="E10"><label>(10)</label><mml:math id="M10"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>;</mml:mo><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Subsequently, we apply a convolution layer <italic>F</italic>(&#x000B7;) to <italic>X</italic><sub><italic>l</italic>, 1</sub> and a delay block <italic>D</italic>(&#x000B7;) to <italic>X</italic><sub><italic>l</italic>, 2</sub>. Then we concatenate the outputs from those branches:</p>
<disp-formula id="E11"><label>(11)</label><mml:math id="M11"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mtext class="textup" mathvariant="normal">Shuffle</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>F</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>||</mml:mo><mml:mi>D</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where the delay block can be written as follows:</p>
<disp-formula id="E12"><label>(12)</label><mml:math id="M12"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>D</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>X</mml:mi><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>X</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Here, <inline-formula><mml:math id="M13"><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mi>D</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> represents the parameters within the delay block in <italic>l</italic>-th layer, where <italic>D</italic> is the channel dimension. This delay block applies distinct delays across each channel. We train the parameter &#x003B8;<sub><italic>l</italic></sub> alongside the other weight parameters within the neural network. To further align the distributions from the convolutional layer and the skip connection, we introduce an additional loss constraint during optimization:</p>
<disp-formula id="E13"><label>(13)</label><mml:math id="M14"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>v</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>l</mml:mi><mml:mi>a</mml:mi><mml:mi>p</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mo>||</mml:mo><mml:mi>M</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>F</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mi>M</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>D</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mo>,</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msubsup><mml:mrow><mml:mo>||</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>This loss function encourages the two distributions to converge, enhancing the efficacy of the information mixing between the convolutional and skip branches.</p>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p>Illustration of the concatenation-based skip connection architecture with a delay block.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0003.tif"/>
</fig>
</sec>
<sec>
<title>3.4 Overall optimization</title>
<p>For the given image <italic>X</italic>, we convert the float input to the spike timing. Similar to rate coding (Wu et al., <xref ref-type="bibr" rid="B53">2018</xref>, <xref ref-type="bibr" rid="B54">2019</xref>; Kim et al., <xref ref-type="bibr" rid="B26">2022b</xref>), we add one convolutional layer at the first layer, i.e., <italic>Conv-BN-ReLU</italic>. Then we directly utilize the output of the ReLU layer to the spike timing (<italic>t</italic> &#x0003D; <italic>ReLU</italic>(<italic>BN</italic>(<italic>Conv</italic>(<italic>X</italic>)))) as the output of the ReLU layer is always higher than zero. We pass through the multiple temporal neuron layers as described in Section 3.1. In the output layer, the class probability is computed from the spike timing. The objective is to train the network such that the neuron associated with the correct class is the first to fire among all neurons. This can be done by applying the cross-entropy loss to the output spike timing <italic>O</italic>&#x02208;&#x0211D;<sup><italic>C</italic></sup> of the last layer:</p>
<disp-formula id="E14"><label>(14)</label><mml:math id="M15"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mi>l</mml:mi><mml:mi>n</mml:mi><mml:mfrac><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>O</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle displaystyle="false"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>O</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Here, <italic>y</italic><sub><italic>c</italic></sub> is a one-hot encoding of a class index, and <italic>O</italic><sub><italic>c</italic></sub> denotes the <italic>c</italic>-th index of output neurons. Multiplying &#x02212;1 with the output neuron is for assigning higher probability weighting for the early spike.</p>
<p>With a cross-entropy loss for classification, following the prior research (Mostafa, <xref ref-type="bibr" rid="B35">2017</xref>), we introduce an additional term to the cost function that penalizes the input weight vectors of neurons whose sum is below 1 (denominator of <xref ref-type="disp-formula" rid="E6">Equation 6</xref>).</p>
<disp-formula id="E15"><label>(15)</label><mml:math id="M16"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>w</mml:mi><mml:mi>e</mml:mi><mml:mi>i</mml:mi><mml:mi>g</mml:mi><mml:mi>h</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Here, <italic>i</italic> is the neuron index of layer <italic>l</italic>, and <italic>j</italic> is the input neuron index from the previous layer to neuron <italic>i</italic>. Overall, the total loss function is defined as follows.</p>
<disp-formula id="E16"><label>(16)</label><mml:math id="M17"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BB;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>w</mml:mi><mml:mi>e</mml:mi><mml:mi>i</mml:mi><mml:mi>g</mml:mi><mml:mi>h</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BB;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mstyle mathvariant='script'><mml:mi>L</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>v</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>l</mml:mi><mml:mi>a</mml:mi><mml:mi>p</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003BB;<sub>1</sub> and &#x003BB;<sub>2</sub> are the hyperparameters for a trade-off between the losses.</p></sec></sec>
<sec id="s4">
<title>4 Experiments</title>
<sec>
<title>4.1 Implementation details</title>
<p>We evaluate our method on MNIST (LeCun, <xref ref-type="bibr" rid="B27">1998</xref>) and Fashion-MNIST (Xiao et al., <xref ref-type="bibr" rid="B55">2017</xref>). We train the model with 128 batch samples using Adam optimizer with weight decay 1e-3. The initial learning rate is set to 6e-4 and decayed with cosine learning rate scheduling (Loshchilov and Hutter, <xref ref-type="bibr" rid="B32">2016</xref>). We set the total number of epochs to 100. We set &#x003BB;<sub>1</sub> and &#x003BB;<sub>2</sub> to 1 and 1e-6, respectively. We use PyTorch for implementation.</p>
</sec>
<sec>
<title>4.2 Experiments on image recognition</title>
<p>Here, we compare the accuracy and latency across standard convolutional networks, addition-based skip connection architecture, and concatenation-based skip connection architecture. More concretely, we construct baseline CNN architecture as follows: <italic>Conv(3,32)-Maxpool(2)-Conv(32,32, stride 2)-Conv(32,32)-Conv(32,64, stride 2)-Conv(64,64)-FC(10)</italic>. For addition-based skip connection architecture, we add a residual connection for <italic>Conv(32,32, stride 2)-Conv(32,32)</italic> block and <italic>Conv(32,64, stride 2)-Conv(64,64)</italic>. In the skip connection, we apply a pooling layer to align the resolution between the skip connection and the convolutional branch. For a concatenation-based skip connection architecture, we also use a similar baseline CNN architecture. <xref ref-type="fig" rid="F4">Figure 4</xref> shows the details of the architectures.</p>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p>Illustration of the architectures of Baseline CNN, Addition-based skip connection, and Concatenation-based skip connection. <bold>(A)</bold> Baseline CNN. <bold>(B)</bold> Addition-based skip connection architecture. <bold>(C)</bold> Concatenation-based skip connection architecture.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0004.tif"/>
</fig>
<p>To compare these architectures, we introduce latency as an additional metric, along with accuracy. In this context, latency is defined as the average time taken for the first spike to occur in the final layer. This is a particularly relevant measure for TTFS coding, as operations can be terminated as soon as the first spike occurs in the last layer. As such, we present both latency and accuracy in our results, offering a comprehensive understanding of the trade-off between speed and precision in these varying architectural designs.</p>
<p>In <xref ref-type="table" rid="T1">Tables 1</xref>, <xref ref-type="table" rid="T2">2</xref>, we present the accuracy and latency results for the MNIST and Fashion-MNIST datasets, respectively. Several key observations can be made from these results: (1) The addition of skip connections significantly improves model accuracy compared to the baseline model. Specifically, the skip connection model improves performance by approximately 4% for both the MNIST and Fashion-MNIST datasets. (2) While the addition-based skip connection enhances accuracy, it also results in increased latency. This additional latency stems from the additive operation between the skip and convolutional branches, as discussed in Section 3.2.2. (3) The concatenation-based skip connection model, without a delay block, achieves a reduction in latency. However, its performance is comparatively lower than that of the addition-based skip connection architecture. (4) Incorporating a delay block into the concatenation-based skip connection model leads to improved performance. Notably, the addition of the delay block does not significantly increase latency for either dataset. In summary, among the tested architectures, the concatenation-based skip connection model with a delay block provides the optimal balance of high performance and low latency.</p>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>Classification accuracy (%) and latency of skip connection architectures on the MNIST dataset.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Accuracy (%)</bold></th>
<th valign="top" align="center"><bold>Latency</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Baseline (Convolution layers without skip connection)</td>
<td valign="top" align="center">97.9</td>
<td valign="top" align="center">3.53</td>
</tr> <tr>
<td valign="top" align="left">Addition-based skip connection</td>
<td valign="top" align="center">98.4</td>
<td valign="top" align="center">4.57</td>
</tr> <tr>
<td valign="top" align="left">Concatenation-based skip connection</td>
<td valign="top" align="center">98.4</td>
<td valign="top" align="center">2.16</td>
</tr>
<tr>
<td valign="top" align="left">Concatenation-based skip connection &#x0002B; Delay Block</td>
<td valign="top" align="center">98.5</td>
<td valign="top" align="center">1.88</td>
</tr></tbody>
</table>
</table-wrap>
<table-wrap position="float" id="T2">
<label>Table 2</label>
<caption><p>Classification accuracy (%) and latency of skip connection architectures on the Fashion-MNIST dataset.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Accuracy (%)</bold></th>
<th valign="top" align="center"><bold>Latency</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Baseline (Convolution layers without skip connection)</td>
<td valign="top" align="center">90.7</td>
<td valign="top" align="center">3.71</td>
</tr> <tr>
<td valign="top" align="left">Addition-based skip connection</td>
<td valign="top" align="center">91.1</td>
<td valign="top" align="center">4.89</td>
</tr> <tr>
<td valign="top" align="left">Concatenation-based skip connection</td>
<td valign="top" align="center">90.6</td>
<td valign="top" align="center">2.28</td>
</tr>
<tr>
<td valign="top" align="left">Concatenation-based skip connection &#x0002B; Delay Block</td>
<td valign="top" align="center">91.4</td>
<td valign="top" align="center">2.29</td>
</tr></tbody>
</table>
</table-wrap>
</sec>
<sec>
<title>4.3 Comparison with previous methods</title>
<p>To establish the effectiveness of our proposed architecture, we draw comparisons between our model, Concat-based Skip Connection with Delay, and previous models. We focus on models that have been applied to the MNIST and Fashion-MNIST datasets. <xref ref-type="table" rid="T3">Table 3</xref> shows results for the MNIST dataset. Our model achieves an accuracy of 98.5%, which is competitive with prior work. For the Fashion-MNIST dataset, <xref ref-type="table" rid="T4">Table 4</xref> illustrates the superior performance of our model, which achieves an accuracy of 91.4%. The model by Zhang et al. (<xref ref-type="bibr" rid="B62">2021</xref>) is the next best performer with an accuracy of 90.1%. In both cases, our Concat-based Skip Connection with Delay architecture outperforms previous models, indicating its effectiveness in enhancing the performance of Spiking Neural Networks. This is particularly noteworthy for tasks that involve Time-To-First-Spike (TTFS) coding. The success of the Concat-based Skip Connection with Delay model may be attributed to its ability to address the timing discrepancy between convolutional and skip branches, thus maintaining high performance while achieving low latency.</p>
<table-wrap position="float" id="T3">
<label>Table 3</label>
<caption><p>Accuracy (%) comparison among the previous work on the MNIST dataset.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="left"><bold>Coding</bold></th>
<th valign="top" align="left"><bold>Accuracy (%)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Mostafa (<xref ref-type="bibr" rid="B35">2017</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">97.5</td>
</tr> <tr>
<td valign="top" align="left">Comsa et al. (<xref ref-type="bibr" rid="B6">2020</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">97.9</td>
</tr> <tr>
<td valign="top" align="left">Kheradpisheh and Masquelier (<xref ref-type="bibr" rid="B23">2020</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">97.4</td>
</tr> <tr>
<td valign="top" align="left">Kheradpisheh et al. (<xref ref-type="bibr" rid="B24">2022</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">97.0</td>
</tr> <tr>
<td valign="top" align="left">Sakemi et al. (<xref ref-type="bibr" rid="B45">2021</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">98.0</td>
</tr>
<tr>
<td valign="top" align="left">Ours (Concat-based Skip &#x0002B; Delay)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">98.5</td>
</tr></tbody>
</table>
</table-wrap>
<table-wrap position="float" id="T4">
<label>Table 4</label>
<caption><p>Accuracy (%) comparison among the previous work on the Fashion-MNIST dataset.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="left"><bold>Coding</bold></th>
<th valign="top" align="left"><bold>Accuracy (%)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Hao et al. (<xref ref-type="bibr" rid="B15">2020</xref>)</td>
<td valign="top" align="left">Rate</td>
<td valign="top" align="left">85.3</td>
</tr> <tr>
<td valign="top" align="left">Zhang and Li (<xref ref-type="bibr" rid="B63">2020</xref>)</td>
<td valign="top" align="left">Rate</td>
<td valign="top" align="left">89.5</td>
</tr> <tr>
<td valign="top" align="left">Ranjan et al. (<xref ref-type="bibr" rid="B41">2020</xref>)</td>
<td valign="top" align="left">Rate</td>
<td valign="top" align="left">89.0</td>
</tr> <tr>
<td valign="top" align="left">Kheradpisheh and Masquelier (<xref ref-type="bibr" rid="B23">2020</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">88.0</td>
</tr> <tr>
<td valign="top" align="left">Kheradpisheh et al. (<xref ref-type="bibr" rid="B24">2022</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">87.3</td>
</tr> <tr>
<td valign="top" align="left">Zhang et al. (<xref ref-type="bibr" rid="B62">2021</xref>)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">90.1</td>
</tr>
<tr>
<td valign="top" align="left">Ours (Concat-based Skip &#x0002B; Delay)</td>
<td valign="top" align="left">Temporal</td>
<td valign="top" align="left">91.4</td>
</tr></tbody>
</table>
</table-wrap>
</sec>
<sec>
<title>4.4 Experimental analysis</title>
<sec>
<title>4.4.1 Energy efficiency: spike rate comparison</title>
<p>As highlighted in an earlier section, the ability to terminate operation within the networks as soon as the first spike at the last layer occurs is an inherent advantage of TTFS coding. To fully leverage this characteristic, we assess the number of spikes present in each layer when we implement an early exit strategy. In <xref ref-type="fig" rid="F5">Figure 5</xref>, we visualize the spike rate of the baseline, addition-based skip connection architecture, and concatenation-based skip connection architecture. Here, we use the concatenation-based skip connection results with the added delay. In this context, the spike rate refers to the proportion of firing neurons in a given layer. This metric is instrumental in understanding the speed and efficiency of each model, and consequently, its suitability for real-time or latency-sensitive applications.</p>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p>Spike rate in different architectures. We use the Fashion-MNIST dataset and measure the spike rate in Conv2-Conv5 layers.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0005.tif"/>
</fig>
<p>The experimental results showcased in <xref ref-type="fig" rid="F5">Figure 5</xref> provide a clear comparison between the baseline model, the addition-based skip connection model, and the concatenation-based skip connection model in terms of spike rate at different layers of the network. In the baseline model, the spike rates for conv2, conv3, conv4, and conv5 layers are 74.49, 53.45, 64.37, and 26.99% respectively. For the addition-based skip connection model, the spike rates significantly increase, recorded at 85.5, 83.12, 90.61, and 86.02% for conv2, conv3, conv4, and conv5 layers, respectively. These high spike rates demonstrate the model&#x00027;s heightened activity during the computation process. On the other hand, the concatenation-based skip connection model exhibits considerably lower spike rates. Specifically, the rates for conv2, conv3, conv4, and conv5 layers are 61.59, 49.43, 30.67, and 7.59%, respectively. This indicates that fewer neurons are active during computation, thereby leading to lower latency and potentially faster computation times.</p>
<p>In summary, while the addition-based skip connection model tends to enhance activity across the network, the concatenation-based model successfully reduces the spike rate, potentially improving the efficiency of the network, particularly in latency-sensitive scenarios. These results further establish the importance of an appropriate skip connection strategy in designing efficient SNNs.</p></sec>
<sec>
<title>4.4.2 Comparison with ANN</title>
<p>SNNs are renowned for their energy efficiency in comparison to traditional ANNs. To demonstrate this, we undertake a comparison of the approximate energy consumption between SNNs and ANNs, assuming that both are built using the same architecture. Due to their event-driven nature and binary 1, 0 spike processing, SNNs are characterized by a reduced complexity of computations. More specifically, a multiply-accumulate (MAC) operation reduces in an SNN to a simple floating-point (FP) addition, thus necessitating only an accumulation (AC) operation. In contrast, traditional ANNs still require full MAC operations. In line with previous studies such as Lee et al. (<xref ref-type="bibr" rid="B29">2016</xref>) and Park et al. (<xref ref-type="bibr" rid="B40">2020</xref>), we estimate the energy consumption for SNNs by quantifying the total MAC operations involved. Using the standard 45 nm CMOS technology as a reference point (Horowitz, <xref ref-type="bibr" rid="B17">2014</xref>), we assign the energy for MAC and AC operations as <italic>E</italic><sub><italic>MAC</italic></sub> &#x0003D; 4.6<italic>pJ</italic> and <italic>E</italic><sub><italic>AC</italic></sub> &#x0003D; 0.9<italic>pJ</italic>, respectively. This shows that MAC operations consume approximately 5.11 times more energy than AC operations. Since neurons in SNNs only consume energy whenever a neuron spikes, we multiply the spiking rate <italic>R</italic><sub><italic>s</italic></sub>(<italic>l</italic>) at layer <italic>l</italic> with FLOPs to obtain the SNN FLOPs count. The total inference energy of ANNs (<italic>E</italic><sub><italic>ANN</italic></sub>) and SNNs (<italic>E</italic><sub><italic>SNN</italic></sub>) are calculated by: <inline-formula><mml:math id="M18"><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>A</mml:mi><mml:mi>N</mml:mi><mml:mi>N</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:munder><mml:mi>F</mml:mi><mml:mi>L</mml:mi><mml:mi>O</mml:mi><mml:mi>P</mml:mi><mml:mi>s</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x000D7;</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>M</mml:mi><mml:mi>A</mml:mi><mml:mi>C</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula><mml:math id="M19"><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>S</mml:mi><mml:mi>N</mml:mi><mml:mi>N</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:munder><mml:mi>F</mml:mi><mml:mi>L</mml:mi><mml:mi>O</mml:mi><mml:mi>P</mml:mi><mml:mi>s</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x000D7;</mml:mo><mml:msub><mml:mrow><mml:mi>R</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x000D7;</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>A</mml:mi><mml:mi>C</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, respectively. <italic>FLOPs</italic>(<italic>l</italic>) represents the number of FLOPs in layer <italic>l</italic>.</p>
<p>The energy consumption comparison between our method and a conventional ANN is presented in <xref ref-type="table" rid="T5">Table 5</xref>. Notably, while maintaining competitive performance, our method&#x02014;which combines concatenation-based skip connections with a delay block&#x02014;significantly reduces the relative energy cost. In contrast to the ANN&#x00027;s relative energy cost of 1, our method operates at just 13% of the ANN&#x00027;s energy expenditure, thus demonstrating the superior energy efficiency of our approach.</p>
<table-wrap position="float" id="T5">
<label>Table 5</label>
<caption><p>Energy-efficiency comparison between ANN and SNN (with concatenation-based skip &#x0002B; delay) at inference.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Relative energy cost</bold></th>
<th valign="top" align="center"><bold>Accuracy (%)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">ANN</td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">92.27</td>
</tr>
<tr>
<td valign="top" align="left">Concat-based Skip &#x0002B; Delay</td>
<td valign="top" align="center">0.13</td>
<td valign="top" align="center">91.41</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>We use the Fashion-MNIST dataset for the experiments.</p>
</table-wrap-foot>
</table-wrap>
</sec>
<sec>
<title>4.4.3 Delay design</title>
<p>There are several design variants for delay blocks. Here, we propose three types for comparison: (1) Layer-wise delay applies the same delay across all neurons in one layer. (2) Channel-wise delay adds a timing delay for each channel, which is used in our method. (3) Pixel-wise delay adds a timing delay for each spatial location. For intermediate layers where the feature tensor size is <italic>C</italic>&#x000D7;<italic>H</italic>&#x000D7;<italic>W</italic>, we apply delay for each <italic>H</italic>&#x000D7;<italic>W</italic> location. <xref ref-type="table" rid="T6">Table 6</xref> presents the comparative performance of these three delay block design variants, specifically evaluating their impact on accuracy and latency using the Fashion-MNIST dataset. The results suggest that the application of delay varies significantly in effect depending on its implementation level. Specifically, channel-wise delay, as employed in our method, demonstrated the highest accuracy and the lowest latency, indicating its effectiveness for the integration into concatenation-based skip connections. This demonstrates the potential benefits of applying unique delays to each channel, providing an effective balance between performance and computational efficiency.</p>
<table-wrap position="float" id="T6">
<label>Table 6</label>
<caption><p>Accuracy (%) comparison among the different delay block designs.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Accuracy (%)</bold></th>
<th valign="top" align="center"><bold>Latency</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Layer-wise delay</td>
<td valign="top" align="center">90.71</td>
<td valign="top" align="center">3.5</td>
</tr> <tr>
<td valign="top" align="left">Channel-wise delay</td>
<td valign="top" align="center">91.41</td>
<td valign="top" align="center">2.29</td>
</tr>
<tr>
<td valign="top" align="left">Pixel-wise delay</td>
<td valign="top" align="center">91.11</td>
<td valign="top" align="center">2.39</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>We use the Fashion-MNIST dataset for the experiments.</p>
</table-wrap-foot>
</table-wrap>
</sec>
<sec>
<title>4.4.4 Analysis on delay value</title>
<p>In this section, we investigate the impact of different initial values within the delay block. For this purpose, we set the initial delay values (&#x003B8;<sub><italic>l</italic></sub> in <xref ref-type="disp-formula" rid="E12">Equation 12</xref>) to [0, 0.25, 0.5, 0.75, 1.0] and train the model accordingly. As depicted in <xref ref-type="fig" rid="F6">Figure 6</xref> (left), we present the performance corresponding to each initialization time. It is observed that when initialized with a small delay, the resulting latency remains small. Conversely, when the delay value is initialized to be higher, the resultant latency increases, but this also leads to an enhancement in accuracy. <xref ref-type="fig" rid="F6">Figure 6</xref> (right) visualizes how these delay values fluctuate across epochs. We note that regardless of the initial value, all cases tend to gravitate toward a middle value over time. This results in high initial values decreasing over time, while lower initial values witness an increase.</p>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p><bold>Left:</bold> Accuracy and latency trade-off with respect to the time initialization in delay block. <bold>Right:</bold> Change of delay as training goes on. We train and test the model on Fashion-MNIST.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0006.tif"/>
</fig>
</sec>
<sec>
<title>4.4.5 Advantage of skip connection: improving model stability</title>
<p>Our analysis further explores the benefits of incorporating skip connections within the temporal SNN architecture. Prior research in the field of ANNs suggests that the inclusion of skip connections enhances training stability and accelerates convergence speed (He et al., <xref ref-type="bibr" rid="B16">2016</xref>). We scrutinize this premise in our current context by tracking and visualizing the evolution of training loss and accuracy over successive epochs, as depicted in <xref ref-type="fig" rid="F7">Figure 7</xref>. Our findings corroborate the aforementioned assertions, demonstrating that our optimized SNN architectures foster swift convergence while maintaining high test accuracy. This reinforces the value of skip connections as a significant contribution to the performance and efficiency of temporal SNNs. We also perform a robustness analysis on the temporal skip connection by adding Gaussian noise to the input image. <xref ref-type="fig" rid="F8">Figure 8</xref> illustrates the accuracy change with respect to different noise levels. As the noise increases, the performance gap between the two models goes larger. Specifically, the two models exhibit an accuracy gap of &#x02264; 1% without noise, which increases to approximately &#x0007E;12% in the case of &#x003C3; &#x0003D; 0.2. This observation aligns with prior literature in ANN (Huang et al., <xref ref-type="bibr" rid="B20">2023</xref>), where they demonstrate that the residual connection enhances the robustness of the model. Overall, our results suggest that adding a skip connection in temporal SNN significantly improves the robustness of the model.</p>
<fig id="F7" position="float">
<label>Figure 7</label>
<caption><p>Comparison of the <bold>(A)</bold> training loss and <bold>(B)</bold> training accuracy across different architectures on Fashion-MNIST.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0007.tif"/>
</fig>
<fig id="F8" position="float">
<label>Figure 8</label>
<caption><p>Robustness analysis of baseline CNN and our Concatenation-based skip &#x0002B; Delay architecture. We add Gaussian noise to the input image. The experiments are conducted on the Fashion-MNIST dataset.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0008.tif"/>
</fig>
</sec>
</sec>
<sec>
<title>4.5 Experiments on wave equation</title>
<p>In broadening the scope of our investigation, we extend the application of TTFS coding to tasks within the domain of scientific machine learning (SciML). An important topic in this field is how to approximate accurately solutions of partial differential equations. In particular, we are interested in solving the inverse (time-reversal) problem of locating sources in an underwater acoustic domain from measurements at a later time. There has been a lot of research in this domain, with or without machine learning, as shown in this survey (Grumiaux et al., <xref ref-type="bibr" rid="B12">2022</xref>). The recent developments of Transformer-based architectures have recently been used for this task as well (Ovadia et al., <xref ref-type="bibr" rid="B37">2023</xref>). Another proposed method refers to using the Time-Reversal method incorporated with Machine learning based inference system (Bardos and Fink, <xref ref-type="bibr" rid="B1">2002</xref>; Givoli and Turkel, <xref ref-type="bibr" rid="B11">2012</xref>; Kahana et al., <xref ref-type="bibr" rid="B22">2022</xref>). Most methods still rely on ANNs that can be expensive to train.</p>
<p>The challenge herein is formulating this problem as a classification problem which aligns with the current implementation of the TTFS. The mathematical formulation of the wave problem we will investigate in this work is given by:</p>
<disp-formula id="E17"><label>(17)</label><mml:math id="M20"><mml:mrow><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:mi>&#x000FC;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>=</mml:mo><mml:msup><mml:mi>c</mml:mi><mml:mn>2</mml:mn></mml:msup><mml:mi>&#x00394;</mml:mi><mml:mi>u</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x02208;</mml:mo><mml:mi>&#x003A9;</mml:mi><mml:mo>=</mml:mo><mml:mo stretchy='false'>[</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo stretchy='false'>]</mml:mo><mml:mo>&#x000D7;</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo stretchy='false'>[</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo stretchy='false'>]</mml:mo><mml:mo>,</mml:mo><mml:mtext>&#x02003;</mml:mtext><mml:mi>t</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy='false'>]</mml:mo><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi>u</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo stretchy='false'>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>u</mml:mi><mml:mn>0</mml:mn></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x02208;</mml:mo><mml:mi>&#x003A9;</mml:mi><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mover><mml:mi>u</mml:mi><mml:mo>&#x0002E;</mml:mo></mml:mover><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x02261;</mml:mo><mml:mn>0</mml:mn><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x02208;</mml:mo><mml:mi>&#x003A9;</mml:mi><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi>u</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x02208;</mml:mo><mml:mo>&#x02202;</mml:mo><mml:mi>&#x003A9;</mml:mi><mml:mo>,</mml:mo><mml:mtext>&#x02003;</mml:mtext><mml:mi>t</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mo stretchy='false'>[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy='false'>]</mml:mo><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:math></disp-formula>
<p>where <italic>u</italic>(<italic>x, y, t</italic>) is the acoustic wave pressure, and <italic>c</italic> is the wave propagation velocity (assumed constant in this work and equal to <inline-formula><mml:math id="M21"><mml:mn>1484</mml:mn><mml:mfrac><mml:mrow><mml:mi>m</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:mfrac></mml:math></inline-formula>). A single dot over <italic>u</italic> denotes a first derivative with respect to time. A double dot denotes a second derivative. The function <italic>u</italic><sub>0</sub> is the initial condition for the wave propagation, determined by the source. This initial condition is taken as a small Gaussian eruption (<inline-formula><mml:math id="M22"><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mtext>&#x000A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mi>x</mml:mi><mml:mo>-</mml:mo><mml:mover accent="false" class="mml-overline"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo accent="true">&#x000AF;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>05</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mtext>&#x000A0;</mml:mtext></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:msup></mml:math></inline-formula>, <inline-formula><mml:math id="M23"><mml:mover accent="false" class="mml-overline"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo accent="true">&#x000AF;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:math></inline-formula>) that mimics a localized source (point source that has been smoothed to avoid numerical artifacts). The goal is, from measurements of the wave pressure at some time <italic>t</italic>, to recover the location of the small initial eruption. This location is defined as a grid point. To turn it into a classification problem, we split the grid into zones, and infer the zone where the source is located. The more zones we use, the more precise localization we can achieve. However, more zones create a harder classification task, with growing computational demands.</p>
<sec>
<title>4.5.1 Dataset configuration</title>
<p>We generate a synthetic dataset based on the wave equation for a domain of <italic>N</italic><sub><italic>x</italic></sub>&#x000D7;<italic>N</italic><sub><italic>y</italic></sub> locations. We use a finite-difference central differences numerical scheme, preserving up to second order accuracy. We choose the ratio between the spatial discretization and the temporal discretization to satisfy the Courant&#x02013;Freidrichs&#x02013;Lewy condition (so that the scheme is stable). To create the synthetic dataset, for each sample, we choose a location for the source, use the solver to march in time and compute the wave pressure across the domain at the 100-th time step. Then we create a label based on the location of the source, so the pairs consisting of an image of the pressure at the 100-th time step and its corresponding label (source) form the dataset.</p>
<p>In detail, we posit the existence of a wave source at all locations within the domain, excluding a 10 pixels border around the outer boundary, thus resulting in (<italic>N</italic><sub><italic>x</italic></sub>&#x02212;10) &#x000D7; (<italic>N</italic><sub><italic>y</italic></sub>&#x02212;10) data samples. As mentioned above, for each wave source location, we compute the wave pressure at the 100-th time step. To create the labels, we segment the domain into <italic>M</italic>&#x000D7;<italic>M</italic> zones and assign each source location a label from 0&#x02212;(<italic>M</italic><sup>2</sup>&#x02212;1), as shown in <xref ref-type="fig" rid="F9">Figure 9</xref> for a 3 &#x000D7; 3 zone-based labeling. The labeling process is the basic quantization of the domain into smaller segments, and the assigning label for each source according to the region it belongs to. For the 3 &#x000D7; 3 labeling, we have nine zones, meaning a total of nine classes. To get a more precise localization one can use 6 &#x000D7; 6 zones (as shown later), thus having 36 classes for the classification mechanism. Finally, we partition these data samples randomly into training and testing sets at an 80:20 ratio, respectively.</p>
<fig id="F9" position="float">
<label>Figure 9</label>
<caption><p>The figure on the <bold>left</bold> illustrates an example of zone-based labeling for the source localization problem for the wave equation. The image is divided into 3 &#x000D7; 3 zones, with each zone assigned a distinct label. On the <bold>right</bold>, nine different wave images corresponding to each of the nine labels are displayed. Each image represents the wave shape at the 100-th time step, originating from a wave source located at the center of the respective zone.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnins-18-1346805-g0009.tif"/>
</fig>
<p>In <xref ref-type="table" rid="T7">Table 7</xref>, we report the accuracy and latency of the wave equation problem. We use the architecture shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. Note that 6 &#x000D7; 6 zone-based labeling is a more difficult task than 3 &#x000D7; 3 zone-based labeling as the model requires classifying a larger number of zones. We make the following observations: (1) The general performance trend aligns with what we observed for image recognition tasks. Concatenation-based skip connection architectures, especially when paired with a delay block, show superior performance in terms of balancing high accuracy with lower latency. This supports the effectiveness of our proposed architecture for not only static image datasets but also for SciML tasks such as solving time-reversal problems for wave equations. (2) The table also reveals that as we change the labeling strategy from 3 &#x000D7; 3 zones to 6 &#x000D7; 6 zones, we see an increase in latency across all models. This is intuitively right as a higher number of zones (classes) involves more computations and hence results in a longer latency. In addition to the increased latency, a larger zone number also results in slightly reduced accuracy for all methods. This could be due to the increased complexity of the task with more zones, potentially requiring a more sophisticated model or additional training to achieve similar levels of accuracy as those observed for the smaller number of zones. In <xref ref-type="table" rid="T8">Table 8</xref>, we compare the energy efficiency of SNN with ANN. Similar to image classification, our SNN consumes only 14% of ANN energy, while sacrificing &#x02264; 1% accuracy.</p>
<table-wrap position="float" id="T7">
<label>Table 7</label>
<caption><p>Classification accuracy (%) and latency on time-reversal source localization problem for the wave equation.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Labeling strategy</bold></th>
<th valign="top" align="center"><bold>Accuracy (%)</bold></th>
<th valign="top" align="center"><bold>Latency</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Baseline (Convolution layers without skip connection)</td>
<td valign="top" align="center">3 &#x000D7; 3</td>
<td valign="top" align="center">99.48</td>
<td valign="top" align="center">4.13</td>
</tr> <tr>
<td valign="top" align="left">Addition-based skip connection</td>
<td valign="top" align="center">3 &#x000D7; 3</td>
<td valign="top" align="center">99.50</td>
<td valign="top" align="center">4.94</td>
</tr> <tr>
<td valign="top" align="left">Concatenation-based skip connection</td>
<td valign="top" align="center">3 &#x000D7; 3</td>
<td valign="top" align="center">96.36</td>
<td valign="top" align="center">1.06</td>
</tr> <tr>
<td valign="top" align="left">Concatenation-based skip connection &#x0002B; Delay Block</td>
<td valign="top" align="center">3 &#x000D7; 3</td>
<td valign="top" align="center">99.74</td>
<td valign="top" align="center">2.83</td>
</tr> <tr>
<td valign="top" align="left">Baseline (Convolution layers without skip connection)</td>
<td valign="top" align="center">6 &#x000D7; 6</td>
<td valign="top" align="center">97.93</td>
<td valign="top" align="center">4.57</td>
</tr> <tr>
<td valign="top" align="left">Addition-based skip connection</td>
<td valign="top" align="center">6 &#x000D7; 6</td>
<td valign="top" align="center">97.94</td>
<td valign="top" align="center">4.87</td>
</tr> <tr>
<td valign="top" align="left">Concatenation-based skip connection</td>
<td valign="top" align="center">6 &#x000D7; 6</td>
<td valign="top" align="center">97.68</td>
<td valign="top" align="center">2.42</td>
</tr>
<tr>
<td valign="top" align="left">Concatenation-based skip connection &#x0002B; Delay Block</td>
<td valign="top" align="center">6 &#x000D7; 6</td>
<td valign="top" align="center">98.19</td>
<td valign="top" align="center">3.45</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>Labeling strategy means we use <italic>M</italic>&#x000D7;<italic>M</italic> zones for assigning a label to each source location. <xref ref-type="fig" rid="F9">Figure 9</xref> shows an example of 3 &#x000D7; 3 zone-based labeling.</p>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T8">
<label>Table 8</label>
<caption><p>Energy-efficiency comparison between ANN and SNN (with concatenation-based skip &#x0002B; delay) at inference on the wave equation problem.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Relative energy cost</bold></th>
<th valign="top" align="center"><bold>Accuracy (%)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">ANN</td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">98.92</td>
</tr>
<tr>
<td valign="top" align="left">Concat-based skip &#x0002B; Delay</td>
<td valign="top" align="center">0.14</td>
<td valign="top" align="center">98.19</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>We use the 6 &#x000D7; 6 zone-based labeling for the experiments.</p>
</table-wrap-foot>
</table-wrap>
</sec></sec></sec>
<sec sec-type="conclusions" id="s5">
<title>5 Conclusion</title>
<p>In conclusion, this study has made significant strides in the exploration of TTFS coding and the optimization of skip connection architectures for improving the efficiency and accuracy of SNNs. We discovered that while addition-based skip connections introduce temporal delays, concatenation-based skip connections tend to miss crucial information from the non-linear operation branch. To address these challenges, we proposed a novel approach that introduces a learnable delay for skip connections, bridging the gap between the spike timing discrepancies of the convolution and skip branches. We demonstrated that this method not only accelerates the first spike&#x00027;s timing but also maintains accuracy, offering an effective solution for faster prediction in TTFS coding. We also extended our exploration to SciML tasks, unveiling the potential of TTFS coding beyond image recognition applications. Our findings suggest that there is room for further research in optimizing the network architecture of temporal SNNs, and we hope that our work will inspire new approaches and applications in this exciting field. In the future, we aim to further improve the effectiveness of our proposed method and explore its applicability to even larger and more complex tasks. We believe that the continuing evolution of SNN architectures will significantly contribute to the advancement of low-power, efficient, and highly accurate artificial intelligence systems.</p></sec>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author.</p></sec>
<sec sec-type="author-contributions" id="s7">
<title>Author contributions</title>
<p>YK: Conceptualization, Investigation, Methodology, Software, Visualization, Writing - original draft, Writing - review &#x00026; editing. AK: Data curation, Methodology, Project administration, Supervision, Validation, Writing - review &#x00026; editing. RY: Conceptualization, Investigation, Methodology, Software, Writing - review &#x00026; editing. YL: Investigation, Software, Writing - review &#x00026; editing. PS: Formal analysis, Funding acquisition, Project administration, Supervision, Validation, Writing - review &#x00026; editing. GK: Funding acquisition, Project administration, Resources, Supervision, Validation, Visualization, Writing - review &#x00026; editing. PP: Conceptualization, Funding acquisition, Investigation, Project administration, Resources, Supervision, Validation, Writing - original draft, Writing - review &#x00026; editing.</p></sec>
</body>
<back>
<sec sec-type="funding-information" id="s8">
<title>Funding</title>
<p>The author(s) declare financial support was received for the research, authorship, and/or publication of this article. This work was supported in part by CoCoSys, a JUMP2.0 center sponsored by DARPA and SRC, the National Science Foundation (CAREER Award, Grant &#x00023;2312366, Grant &#x00023;2318152), TII (Abu Dhabi), and the U.S. Department of Energy, Advanced Scientific Computing Research program, under the Scalable, Efficient and Accelerated Causal Reasoning Operators, Graphs and Spikes for Earth and Embedded Systems (SEA-CROGS) project (Project No. 80278). Pacific Northwest National Laboratory (PNNL) is a multi-program national laboratory operated for the U.S. Department of Energy (DOE) by Battelle Memorial Institute under Contract No. DE-AC05-76RL01830.</p>
</sec>
<sec sec-type="COI-statement" id="conf1">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
<p>The author(s) declared that they were an editorial board member of Frontiers, at the time of submission. This had no impact on the peer review process and the final decision.</p>
</sec>
<sec sec-type="disclaimer" id="s9">
<title>Publisher&#x00027;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bardos</surname> <given-names>C.</given-names></name> <name><surname>Fink</surname> <given-names>M.</given-names></name></person-group> (<year>2002</year>). <article-title>Mathematical foundations of the time reversal mirror</article-title>. <source>Asympt. Anal.</source> <volume>29</volume>, <fpage>157</fpage>&#x02013;<lpage>182</lpage>.</citation>
</ref>
<ref id="B2">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Benmeziane</surname> <given-names>H.</given-names></name> <name><surname>Ounnoughene</surname> <given-names>A. Z.</given-names></name> <name><surname>Hamzaoui</surname> <given-names>I.</given-names></name> <name><surname>Bouhadjar</surname> <given-names>Y.</given-names></name></person-group> (<year>2023</year>). <article-title>Skip connections in spiking neural networks: an analysis of their effect on network training</article-title>. <source>arXiv preprint arXiv:2303.13563</source>.</citation>
</ref>
<ref id="B3">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bohte</surname> <given-names>S. M.</given-names></name> <name><surname>Kok</surname> <given-names>J. N.</given-names></name> <name><surname>La Poutr&#x000E9;</surname> <given-names>J. A.</given-names></name></person-group> (<year>2000</year>). <article-title>&#x0201C;Spikeprop: backpropagation for networks of spiking neurons,&#x0201D;</article-title> in <source>The European Symposium on Artificial Neural Networks</source>, Vol. 48 (Bruges), <fpage>419</fpage>&#x02013;<lpage>424</lpage>.</citation>
</ref>
<ref id="B4">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cao</surname> <given-names>Y.</given-names></name> <name><surname>Chen</surname> <given-names>Y.</given-names></name> <name><surname>Khosla</surname> <given-names>D.</given-names></name></person-group> (<year>2015</year>). <article-title>Spiking deep convolutional neural networks for energy-efficient object recognition</article-title>. <source>Int. J. Comput. Vis.</source> <volume>113</volume>, <fpage>54</fpage>&#x02013;<lpage>66</lpage>. <pub-id pub-id-type="doi">10.1007/s11263-014-0788-3</pub-id><pub-id pub-id-type="pmid">29328958</pub-id></citation></ref>
<ref id="B5">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Christensen</surname> <given-names>D. V.</given-names></name> <name><surname>Dittmann</surname> <given-names>R.</given-names></name> <name><surname>Linares-Barranco</surname> <given-names>B.</given-names></name> <name><surname>Sebastian</surname> <given-names>A.</given-names></name> <name><surname>Le Gallo</surname> <given-names>M.</given-names></name> <name><surname>Redaelli</surname> <given-names>A.</given-names></name> <etal/></person-group>. (<year>2022</year>). <article-title>2022 roadmap on neuromorphic computing and engineering</article-title>. <source>Neuromorph. Comput. Eng</source>. 2, 022501. <pub-id pub-id-type="doi">10.1088/2634-4386/ac4a83</pub-id></citation>
</ref>
<ref id="B6">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Comsa</surname> <given-names>I. M.</given-names></name> <name><surname>Fischbacher</surname> <given-names>T.</given-names></name> <name><surname>Potempa</surname> <given-names>K.</given-names></name> <name><surname>Gesmundo</surname> <given-names>A.</given-names></name> <name><surname>Versari</surname> <given-names>L.</given-names></name> <name><surname>Alakuijala</surname> <given-names>J.</given-names></name></person-group> (<year>2020</year>). <article-title>&#x0201C;Temporal coding in spiking neural networks with alpha synaptic function,&#x0201D;</article-title> in <source>ICASSP 2020-2020 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>8529</fpage>&#x02013;<lpage>8533</lpage>.<pub-id pub-id-type="pmid">33900924</pub-id></citation></ref>
<ref id="B7">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Diehl</surname> <given-names>P. U.</given-names></name> <name><surname>Cook</surname> <given-names>M.</given-names></name></person-group> (<year>2015</year>). <article-title>Unsupervised learning of digit recognition using spike-timing-dependent plasticity</article-title>. <source>Front. Comput. Neurosci.</source> <volume>9</volume>, <fpage>99</fpage>. <pub-id pub-id-type="doi">10.3389/fncom.2015.00099</pub-id><pub-id pub-id-type="pmid">26941637</pub-id></citation></ref>
<ref id="B8">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Diehl</surname> <given-names>P. U.</given-names></name> <name><surname>Neil</surname> <given-names>D.</given-names></name> <name><surname>Binas</surname> <given-names>J.</given-names></name> <name><surname>Cook</surname> <given-names>M.</given-names></name> <name><surname>Liu</surname> <given-names>S.-C.</given-names></name> <name><surname>Pfeiffer</surname> <given-names>M.</given-names></name></person-group> (<year>2015</year>). <article-title>&#x0201C;Fast-classifying, high-accuracy spiking deep networks through weight and threshold balancing,&#x0201D;</article-title> in <source>2015 International Joint Conference on Neural Networks (IJCNN)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>1</fpage>&#x02013;<lpage>8</lpage>.</citation>
</ref>
<ref id="B9">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Fang</surname> <given-names>W.</given-names></name> <name><surname>Yu</surname> <given-names>Z.</given-names></name> <name><surname>Chen</surname> <given-names>Y.</given-names></name> <name><surname>Masquelier</surname> <given-names>T.</given-names></name> <name><surname>Huang</surname> <given-names>T.</given-names></name> <name><surname>Tian</surname> <given-names>Y.</given-names></name></person-group> (<year>2020</year>). <article-title>Incorporating learnable membrane time constant to enhance learning of spiking neural networks</article-title>. <source>arXiv preprint arXiv:2007.05785</source>.</citation>
</ref>
<ref id="B10">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Fang</surname> <given-names>W.</given-names></name> <name><surname>Yu</surname> <given-names>Z.</given-names></name> <name><surname>Chen</surname> <given-names>Y.</given-names></name> <name><surname>Huang</surname> <given-names>T.</given-names></name> <name><surname>Masquelier</surname> <given-names>T.</given-names></name> <name><surname>Tian</surname> <given-names>Y.</given-names></name></person-group> (<year>2021</year>). <article-title>Deep residual learning in spiking neural networks</article-title>. <source>arXiv preprint arXiv:2102.04159</source>.</citation>
</ref>
<ref id="B11">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Givoli</surname> <given-names>D.</given-names></name> <name><surname>Turkel</surname> <given-names>E.</given-names></name></person-group> (<year>2012</year>). <article-title>Time reversal with partial information for wave refocusing and scatterer identification</article-title>. <source>Comput. Methods Appl. Mech. Eng.</source> <volume>213</volume>, <fpage>223</fpage>&#x02013;<lpage>242</lpage>. <pub-id pub-id-type="doi">10.1016/j.cma.2011.12.005</pub-id></citation>
</ref>
<ref id="B12">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Grumiaux</surname> <given-names>P.-A.</given-names></name> <name><surname>Kiti&#x00107;</surname> <given-names>S.</given-names></name> <name><surname>Girin</surname> <given-names>L.</given-names></name> <name><surname>Gu&#x000E9;rin</surname> <given-names>A.</given-names></name></person-group> (<year>2022</year>). <article-title>A survey of sound source localization with deep learning methods</article-title>. <source>J. Acoust. Soc. Am.</source> <volume>152</volume>, <fpage>107</fpage>&#x02013;<lpage>151</lpage>. <pub-id pub-id-type="doi">10.1121/10.0011809</pub-id><pub-id pub-id-type="pmid">35931500</pub-id></citation></ref>
<ref id="B13">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Guo</surname> <given-names>W.</given-names></name> <name><surname>Fouda</surname> <given-names>M. E.</given-names></name> <name><surname>Eltawil</surname> <given-names>A. M.</given-names></name> <name><surname>Salama</surname> <given-names>K. N.</given-names></name></person-group> (<year>2021</year>). <article-title>Neural coding in spiking neural networks: a comparative study for robust neuromorphic systems</article-title>. <source>Front. Neurosci.</source> <volume>15</volume>, <fpage>638474</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2021.638474</pub-id><pub-id pub-id-type="pmid">33746705</pub-id></citation></ref>
<ref id="B14">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Han</surname> <given-names>B.</given-names></name> <name><surname>Srinivasan</surname> <given-names>G.</given-names></name> <name><surname>Roy</surname> <given-names>K.</given-names></name></person-group> (<year>2020</year>). <article-title>&#x0201C;RMP-SNN: residual membrane potential neuron for enabling deeper high-accuracy and low-latency spiking neural network,&#x0201D;</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</source>, <fpage>13558</fpage>&#x02013;<lpage>13567</lpage>.</citation>
</ref>
<ref id="B15">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hao</surname> <given-names>Y.</given-names></name> <name><surname>Huang</surname> <given-names>X.</given-names></name> <name><surname>Dong</surname> <given-names>M.</given-names></name> <name><surname>Xu</surname> <given-names>B.</given-names></name></person-group> (<year>2020</year>). <article-title>A biologically plausible supervised learning method for spiking neural networks using the symmetric STDP rule</article-title>. <source>Neural Netw.</source> <volume>121</volume>, <fpage>387</fpage>&#x02013;<lpage>395</lpage>. <pub-id pub-id-type="doi">10.1016/j.neunet.2019.09.007</pub-id><pub-id pub-id-type="pmid">31593843</pub-id></citation></ref>
<ref id="B16">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Ren</surname> <given-names>S.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2016</year>). <article-title>&#x0201C;Deep residual learning for image recognition,&#x0201D;</article-title> in <source>CVPR</source>, <fpage>770</fpage>&#x02013;<lpage>778</lpage>.</citation>
</ref>
<ref id="B17">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Horowitz</surname> <given-names>M.</given-names></name></person-group> (<year>2014</year>). <article-title>&#x0201C;1.1 computing&#x00027;s energy problem (and what we can do about it),&#x0201D;</article-title> in <source>2014 IEEE International Solid-State Circuits Conference Digest of Technical Papers (ISSCC)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>10</fpage>&#x02013;<lpage>14</lpage>.</citation>
</ref>
<ref id="B18">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hu</surname> <given-names>Y.</given-names></name> <name><surname>Tang</surname> <given-names>H.</given-names></name> <name><surname>Pan</surname> <given-names>G.</given-names></name></person-group> (<year>2021</year>). <article-title>Spiking deep residual networks</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst</source>. <volume>34</volume>, <fpage>5200</fpage>&#x02013;<lpage>5205</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2021.3119238</pub-id><pub-id pub-id-type="pmid">34723807</pub-id></citation></ref>
<ref id="B19">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>G.</given-names></name> <name><surname>Liu</surname> <given-names>Z.</given-names></name> <name><surname>Van Der Maaten</surname> <given-names>L.</given-names></name> <name><surname>Weinberger</surname> <given-names>K. Q.</given-names></name></person-group> (<year>2017</year>). <article-title>&#x0201C;Densely connected convolutional networks,&#x0201D;</article-title> in <source>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition</source>, <fpage>4700</fpage>&#x02013;<lpage>4708</lpage>.</citation>
</ref>
<ref id="B20">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>S.</given-names></name> <name><surname>Lu</surname> <given-names>Z.</given-names></name> <name><surname>Deb</surname> <given-names>K.</given-names></name> <name><surname>Boddeti</surname> <given-names>V. N.</given-names></name></person-group> (<year>2023</year>). <article-title>&#x0201C;Revisiting residual networks for adversarial robustness,&#x0201D;</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</source>, <fpage>8202</fpage>&#x02013;<lpage>8211</lpage>.</citation>
</ref>
<ref id="B21">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ikegawa</surname> <given-names>S.-I.</given-names></name> <name><surname>Saiin</surname> <given-names>R.</given-names></name> <name><surname>Sawada</surname> <given-names>Y.</given-names></name> <name><surname>Natori</surname> <given-names>N.</given-names></name></person-group> (<year>2022</year>). <article-title>Rethinking the role of normalization and residual blocks for spiking neural networks</article-title>. <source>Sensors</source> <volume>22</volume>, <fpage>2876</fpage>. <pub-id pub-id-type="doi">10.3390/s22082876</pub-id><pub-id pub-id-type="pmid">35458860</pub-id></citation></ref>
<ref id="B22">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kahana</surname> <given-names>A.</given-names></name> <name><surname>Turkel</surname> <given-names>E.</given-names></name> <name><surname>Dekel</surname> <given-names>S.</given-names></name> <name><surname>Givoli</surname> <given-names>D.</given-names></name></person-group> (<year>2022</year>). <article-title>A physically-informed deep-learning model using time-reversal for locating a source from sparse and highly noisy sensors data</article-title>. <source>J. Comput. Phys.</source> <volume>470</volume>, <fpage>111592</fpage>. <pub-id pub-id-type="doi">10.1016/j.jcp.2022.111592</pub-id></citation>
</ref>
<ref id="B23">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kheradpisheh</surname> <given-names>S. R.</given-names></name> <name><surname>Masquelier</surname> <given-names>T.</given-names></name></person-group> (<year>2020</year>). <article-title>Temporal backpropagation for spiking neural networks with one spike per neuron</article-title>. <source>Int. J. Neural Syst.</source> <volume>30</volume>, <fpage>2050027</fpage>. <pub-id pub-id-type="doi">10.1142/S0129065720500276</pub-id><pub-id pub-id-type="pmid">32466691</pub-id></citation></ref>
<ref id="B24">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kheradpisheh</surname> <given-names>S. R.</given-names></name> <name><surname>Mirsadeghi</surname> <given-names>M.</given-names></name> <name><surname>Masquelier</surname> <given-names>T.</given-names></name></person-group> (<year>2022</year>). <article-title>BS4NN: binarized spiking neural networks with temporal coding and learning</article-title>. <source>Neural Process. Lett.</source> <volume>54</volume>, <fpage>1255</fpage>&#x02013;<lpage>1273</lpage>. <pub-id pub-id-type="doi">10.1007/s11063-021-10680-x</pub-id></citation>
</ref>
<ref id="B25">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kim</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>Y.</given-names></name> <name><surname>Park</surname> <given-names>H.</given-names></name> <name><surname>Venkatesha</surname> <given-names>Y.</given-names></name> <name><surname>Panda</surname> <given-names>P.</given-names></name></person-group> (<year>2022a</year>). <article-title>&#x0201C;Neural architecture search for spiking neural networks,&#x0201D;</article-title> in <source>Computer Vision&#x02013;ECCV 2022: 17th European Conference</source> (<publisher-loc>Tel Aviv</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>36</fpage>&#x02013;<lpage>56</lpage>.</citation>
</ref>
<ref id="B26">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kim</surname> <given-names>Y.</given-names></name> <name><surname>Park</surname> <given-names>H.</given-names></name> <name><surname>Moitra</surname> <given-names>A.</given-names></name> <name><surname>Bhattacharjee</surname> <given-names>A.</given-names></name> <name><surname>Venkatesha</surname> <given-names>Y.</given-names></name> <name><surname>Panda</surname> <given-names>P.</given-names></name></person-group> (<year>2022b</year>). <article-title>&#x0201C;Rate coding or direct coding: which one is better for accurate, robust, and energy-efficient spiking neural networks?&#x0201D;</article-title> in <source>ICASSP 2022-2022 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>71</fpage>&#x02013;<lpage>75</lpage>.</citation>
</ref>
<ref id="B27">
<citation citation-type="web"><person-group person-group-type="author"><name><surname>LeCun</surname> <given-names>Y.</given-names></name></person-group> (<year>1998</year>). <source>The Mnist Database of Handwritten Digits</source>. Available online at: <ext-link ext-link-type="uri" xlink:href="http://yann.lecun.com/exdb/mnist/">http://yann.lecun.com/exdb/mnist/</ext-link></citation>
</ref>
<ref id="B28">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lee</surname> <given-names>C.</given-names></name> <name><surname>Sarwar</surname> <given-names>S. S.</given-names></name> <name><surname>Panda</surname> <given-names>P.</given-names></name> <name><surname>Srinivasan</surname> <given-names>G.</given-names></name> <name><surname>Roy</surname> <given-names>K.</given-names></name></person-group> (<year>2020</year>). <article-title>Enabling spike-based backpropagation for training deep neural network architectures</article-title>. <source>Front. Neurosci.</source> <volume>14</volume>, <fpage>119</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2020.00119</pub-id><pub-id pub-id-type="pmid">32180697</pub-id></citation></ref>
<ref id="B29">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lee</surname> <given-names>J. H.</given-names></name> <name><surname>Delbruck</surname> <given-names>T.</given-names></name> <name><surname>Pfeiffer</surname> <given-names>M.</given-names></name></person-group> (<year>2016</year>). <article-title>Training deep spiking neural networks using backpropagation</article-title>. <source>Front. Neurosci.</source> <volume>10</volume>, <fpage>508</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2016.00508</pub-id><pub-id pub-id-type="pmid">27877107</pub-id></citation></ref>
<ref id="B30">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname> <given-names>Y.</given-names></name> <name><surname>Deng</surname> <given-names>S.</given-names></name> <name><surname>Dong</surname> <given-names>X.</given-names></name> <name><surname>Gong</surname> <given-names>R.</given-names></name> <name><surname>Gu</surname> <given-names>S.</given-names></name></person-group> (<year>2021a</year>). <article-title>A free lunch from ANN: towards efficient, accurate spiking neural networks calibration</article-title>. <source>arXiv preprint arXiv:2106.06984</source>.</citation>
</ref>
<ref id="B31">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname> <given-names>Y.</given-names></name> <name><surname>Guo</surname> <given-names>Y.</given-names></name> <name><surname>Zhang</surname> <given-names>S.</given-names></name> <name><surname>Deng</surname> <given-names>S.</given-names></name> <name><surname>Hai</surname> <given-names>Y.</given-names></name> <name><surname>Gu</surname> <given-names>S.</given-names></name></person-group> (<year>2021b</year>). <article-title>&#x0201C;Differentiable spike: rethinking gradient-descent for training spiking neural networks,&#x0201D;</article-title> in <source>Advances in Neural Information Processing Systems 34</source>, <fpage>23426</fpage>&#x02013;<lpage>23439</lpage>.</citation>
</ref>
<ref id="B32">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Loshchilov</surname> <given-names>I.</given-names></name> <name><surname>Hutter</surname> <given-names>F.</given-names></name></person-group> (<year>2016</year>). <article-title>SGDR: stochastic gradient descent with warm restarts</article-title>. <source>arXiv preprint arXiv:1608.03983</source>.</citation>
</ref>
<ref id="B33">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ma</surname> <given-names>N.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Zheng</surname> <given-names>H.-T.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2018</year>). <article-title>&#x0201C;ShuffleNet V2: practical guidelines for efficient CNN architecture design,&#x0201D;</article-title> in <source>Proceedings of the European conference on computer vision (ECCV)</source>, <fpage>116</fpage>&#x02013;<lpage>131</lpage>.</citation>
</ref>
<ref id="B34">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Montemurro</surname> <given-names>M. A.</given-names></name> <name><surname>Rasch</surname> <given-names>M. J.</given-names></name> <name><surname>Murayama</surname> <given-names>Y.</given-names></name> <name><surname>Logothetis</surname> <given-names>N. K.</given-names></name> <name><surname>Panzeri</surname> <given-names>S.</given-names></name></person-group> (<year>2008</year>). <article-title>Phase-of-firing coding of natural visual stimuli in primary visual cortex</article-title>. <source>Curr. Biol.</source> <volume>18</volume>, <fpage>375</fpage>&#x02013;<lpage>380</lpage>. <pub-id pub-id-type="doi">10.1016/j.cub.2008.02.023</pub-id><pub-id pub-id-type="pmid">18328702</pub-id></citation></ref>
<ref id="B35">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mostafa</surname> <given-names>H.</given-names></name></person-group> (<year>2017</year>). <article-title>Supervised learning based on temporal coding in spiking neural networks</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst.</source> <volume>29</volume>, <fpage>3227</fpage>&#x02013;<lpage>3235</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2017.2726060</pub-id><pub-id pub-id-type="pmid">28783639</pub-id></citation></ref>
<ref id="B36">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Neftci</surname> <given-names>E. O.</given-names></name> <name><surname>Mostafa</surname> <given-names>H.</given-names></name> <name><surname>Zenke</surname> <given-names>F.</given-names></name></person-group> (<year>2019</year>). <article-title>Surrogate gradient learning in spiking neural networks</article-title>. <source>IEEE Signal Process. Mag.</source> <volume>36</volume>, <fpage>61</fpage>&#x02013;<lpage>63</lpage>. <pub-id pub-id-type="doi">10.1109/MSP.2019.2931595</pub-id></citation>
</ref>
<ref id="B37">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ovadia</surname> <given-names>O.</given-names></name> <name><surname>Kahana</surname> <given-names>A.</given-names></name> <name><surname>Stinis</surname> <given-names>P.</given-names></name> <name><surname>Turkel</surname> <given-names>E.</given-names></name> <name><surname>Karniadakis</surname> <given-names>G. E.</given-names></name></person-group> (<year>2023</year>). <article-title>ViTO: vision transformer-operator</article-title>. <source>arXiv preprint arXiv:2303.08891</source>.</citation>
</ref>
<ref id="B38">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Panda</surname> <given-names>P.</given-names></name> <name><surname>Aketi</surname> <given-names>S. A.</given-names></name> <name><surname>Roy</surname> <given-names>K.</given-names></name></person-group> (<year>2020</year>). <article-title>Toward scalable, efficient, and accurate deep spiking neural networks with backward residual connections, stochastic softmax, and hybridization</article-title>. <source>Front. Neurosci.</source> <volume>14</volume>, <fpage>653</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2020.00653</pub-id><pub-id pub-id-type="pmid">32694977</pub-id></citation></ref>
<ref id="B39">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Park</surname> <given-names>S.</given-names></name> <name><surname>Kim</surname> <given-names>S.</given-names></name> <name><surname>Choe</surname> <given-names>H.</given-names></name> <name><surname>Yoon</surname> <given-names>S.</given-names></name></person-group> (<year>2019</year>). <article-title>&#x0201C;Fast and efficient information transmission with burst spikes in deep spiking neural networks,&#x0201D;</article-title> in <source>2019 56th ACM/IEEE Design Automation Conference (DAC)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>1</fpage>&#x02013;<lpage>6</lpage>.</citation>
</ref>
<ref id="B40">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Park</surname> <given-names>S.</given-names></name> <name><surname>Kim</surname> <given-names>S.</given-names></name> <name><surname>Na</surname> <given-names>B.</given-names></name> <name><surname>Yoon</surname> <given-names>S.</given-names></name></person-group> (<year>2020</year>). <article-title>T2FSNN: deep spiking neural networks with time-to-first-spike coding</article-title>. <source>arXiv preprint arXiv:2003.11741</source>.<pub-id pub-id-type="pmid">38129555</pub-id></citation></ref>
<ref id="B41">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ranjan</surname> <given-names>J. A. K.</given-names></name> <name><surname>Sigamani</surname> <given-names>T.</given-names></name> <name><surname>Barnabas</surname> <given-names>J.</given-names></name></person-group> (<year>2020</year>). <article-title>A novel and efficient classifier using spiking neural network</article-title>. <source>J. Supercomput.</source> <volume>76</volume>, <fpage>6545</fpage>&#x02013;<lpage>6560</lpage>. <pub-id pub-id-type="doi">10.1007/s11227-019-02881-y</pub-id></citation>
</ref>
<ref id="B42">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Roy</surname> <given-names>K.</given-names></name> <name><surname>Jaiswal</surname> <given-names>A.</given-names></name> <name><surname>Panda</surname> <given-names>P.</given-names></name></person-group> (<year>2019</year>). <article-title>Towards spike-based machine intelligence with neuromorphic computing</article-title>. <source>Nature</source> <volume>575</volume>, <fpage>607</fpage>&#x02013;<lpage>617</lpage>. <pub-id pub-id-type="doi">10.1038/s41586-019-1677-2</pub-id><pub-id pub-id-type="pmid">31776490</pub-id></citation></ref>
<ref id="B43">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Rueckauer</surname> <given-names>B.</given-names></name> <name><surname>Liu</surname> <given-names>S.-C.</given-names></name></person-group> (<year>2018</year>). <article-title>&#x0201C;Conversion of analog to spiking neural networks using sparse temporal coding,&#x0201D;</article-title> in <source>2018 IEEE International Symposium on Circuits and Systems (ISCAS)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>1</fpage>&#x02013;<lpage>5</lpage>.</citation>
</ref>
<ref id="B44">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rueckauer</surname> <given-names>B.</given-names></name> <name><surname>Lungu</surname> <given-names>I.-A.</given-names></name> <name><surname>Hu</surname> <given-names>Y.</given-names></name> <name><surname>Pfeiffer</surname> <given-names>M.</given-names></name> <name><surname>Liu</surname> <given-names>S.-C.</given-names></name></person-group> (<year>2017</year>). <article-title>Conversion of continuous-valued deep networks to efficient event-driven networks for image classification</article-title>. <source>Front. Neurosci.</source> <volume>11</volume>, <fpage>682</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2017.00682</pub-id><pub-id pub-id-type="pmid">29375284</pub-id></citation></ref>
<ref id="B45">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sakemi</surname> <given-names>Y.</given-names></name> <name><surname>Morino</surname> <given-names>K.</given-names></name> <name><surname>Morie</surname> <given-names>T.</given-names></name> <name><surname>Aihara</surname> <given-names>K.</given-names></name></person-group> (<year>2021</year>). <article-title>A supervised learning algorithm for multilayer spiking neural networks based on temporal coding toward energy-efficient vlsi processor design</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst</source>. <volume>34</volume>, <fpage>394</fpage>&#x02013;<lpage>408</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2021.3095068</pub-id><pub-id pub-id-type="pmid">34280109</pub-id></citation></ref>
<ref id="B46">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sengupta</surname> <given-names>A.</given-names></name> <name><surname>Ye</surname> <given-names>Y.</given-names></name> <name><surname>Wang</surname> <given-names>R.</given-names></name> <name><surname>Liu</surname> <given-names>C.</given-names></name> <name><surname>Roy</surname> <given-names>K.</given-names></name></person-group> (<year>2019</year>). <article-title>Going deeper in spiking neural networks: VGG and residual architectures</article-title>. <source>Front. Neurosci.</source> <volume>13</volume>, <fpage>95</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2019.00095</pub-id><pub-id pub-id-type="pmid">30899212</pub-id></citation></ref>
<ref id="B47">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shrestha</surname> <given-names>S. B.</given-names></name> <name><surname>Orchard</surname> <given-names>G.</given-names></name></person-group> (<year>2018</year>). <article-title>Slayer: spike layer error reassignment in time</article-title>. <source>arXiv preprint arXiv:1810.08646</source>.</citation>
</ref>
<ref id="B48">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shrestha</surname> <given-names>S. B.</given-names></name> <name><surname>Song</surname> <given-names>Q.</given-names></name></person-group> (<year>2017</year>). <article-title>Robustness to training disturbances in spikeprop learning</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst.</source> <volume>29</volume>, <fpage>3126</fpage>&#x02013;<lpage>3139</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2017.2713125</pub-id><pub-id pub-id-type="pmid">28692992</pub-id></citation></ref>
<ref id="B49">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Srivastava</surname> <given-names>R. K.</given-names></name> <name><surname>Greff</surname> <given-names>K.</given-names></name> <name><surname>Schmidhuber</surname> <given-names>J.</given-names></name></person-group> (<year>2015</year>). <article-title>&#x0201C;Training very deep networks,&#x0201D;</article-title> in <source>Advances in Neural Information Processing Systems</source>, 28.</citation>
</ref>
<ref id="B50">
<citation citation-type="web"><person-group person-group-type="author"><name><surname>Weisstein</surname> <given-names>E. W.</given-names></name></person-group> (<year>2002</year>). <source>Z-transform</source>. Available online at: <ext-link ext-link-type="uri" xlink:href="https://mathworld.wolfram.com/">https://mathworld.wolfram.com/</ext-link></citation>
</ref>
<ref id="B51">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wu</surname> <given-names>H.</given-names></name> <name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Weng</surname> <given-names>W.</given-names></name> <name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Xiong</surname> <given-names>Z.</given-names></name> <name><surname>Zha</surname> <given-names>Z.-J.</given-names></name> <etal/></person-group>. (<year>2021</year>). <article-title>Training spiking neural networks with accumulated spiking flow</article-title>. <source>ijo</source> 1. <pub-id pub-id-type="doi">10.1609/aaai.v35i12.17236</pub-id></citation>
</ref>
<ref id="B52">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wu</surname> <given-names>J.</given-names></name> <name><surname>Xu</surname> <given-names>C.</given-names></name> <name><surname>Zhou</surname> <given-names>D.</given-names></name> <name><surname>Li</surname> <given-names>H.</given-names></name> <name><surname>Tan</surname> <given-names>K. C.</given-names></name></person-group> (<year>2020</year>). <article-title>Progressive tandem learning for pattern recognition with deep spiking neural networks</article-title>. <source>arXiv preprint arXiv:2007.01204</source>.<pub-id pub-id-type="pmid">34546918</pub-id></citation></ref>
<ref id="B53">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wu</surname> <given-names>Y.</given-names></name> <name><surname>Deng</surname> <given-names>L.</given-names></name> <name><surname>Li</surname> <given-names>G.</given-names></name> <name><surname>Zhu</surname> <given-names>J.</given-names></name> <name><surname>Shi</surname> <given-names>L.</given-names></name></person-group> (<year>2018</year>). <article-title>Spatio-temporal backpropagation for training high-performance spiking neural networks</article-title>. <source>Front. Neurosci.</source> <volume>12</volume>, <fpage>331</fpage>. <pub-id pub-id-type="doi">10.3389/fnins.2018.00331</pub-id><pub-id pub-id-type="pmid">29875621</pub-id></citation></ref>
<ref id="B54">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wu</surname> <given-names>Y.</given-names></name> <name><surname>Deng</surname> <given-names>L.</given-names></name> <name><surname>Li</surname> <given-names>G.</given-names></name> <name><surname>Zhu</surname> <given-names>J.</given-names></name> <name><surname>Xie</surname> <given-names>Y.</given-names></name> <name><surname>Shi</surname> <given-names>L.</given-names></name></person-group> (<year>2019</year>). <article-title>&#x0201C;Direct training for spiking neural networks: faster, larger, better,&#x0201D;</article-title> in <source>Proceedings of the AAAI Conference on Artificial Intelligence</source>, Vol. <volume>33</volume>, <fpage>1311</fpage>&#x02013;<lpage>1318</lpage>.</citation>
</ref>
<ref id="B55">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xiao</surname> <given-names>H.</given-names></name> <name><surname>Rasul</surname> <given-names>K.</given-names></name> <name><surname>Vollgraf</surname> <given-names>R.</given-names></name></person-group> (<year>2017</year>). <article-title>Fashion-mNIST: a novel image dataset for benchmarking machine learning algorithms</article-title>. <source>arXiv preprint arXiv:1708.07747</source>.</citation>
</ref>
<ref id="B56">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>Y.</given-names></name> <name><surname>Zeng</surname> <given-names>X.</given-names></name> <name><surname>Han</surname> <given-names>L.</given-names></name> <name><surname>Yang</surname> <given-names>J.</given-names></name></person-group> (<year>2013</year>). <article-title>A supervised multi-spike learning algorithm based on gradient descent for spiking neural networks</article-title>. <source>Neural Netw.</source> <volume>43</volume>, <fpage>99</fpage>&#x02013;<lpage>113</lpage>. <pub-id pub-id-type="doi">10.1016/j.neunet.2013.02.003</pub-id><pub-id pub-id-type="pmid">23500504</pub-id></citation></ref>
<ref id="B57">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>S.</given-names></name> <name><surname>Chen</surname> <given-names>B.</given-names></name></person-group> (<year>2023a</year>). <article-title>Effective surrogate gradient learning with high-order information bottleneck for spike-based machine intelligence</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst</source>. <pub-id pub-id-type="doi">10.1109/TNNLS.2023.3329525</pub-id><pub-id pub-id-type="pmid">37991917</pub-id></citation></ref>
<ref id="B58">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>S.</given-names></name> <name><surname>Chen</surname> <given-names>B.</given-names></name></person-group> (<year>2023b</year>). <article-title>SNIB: improving spike-based machine learning using nonlinear information bottleneck</article-title>. <source>IEEE Trans. Syst. Man Cybernet. Syst.</source> 1&#x02013;12. <pub-id pub-id-type="doi">10.1109/TSMC.2023.3300318</pub-id></citation>
</ref>
<ref id="B59">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>S.</given-names></name> <name><surname>Wang</surname> <given-names>H.</given-names></name> <name><surname>Chen</surname> <given-names>B.</given-names></name></person-group> (<year>2023</year>). <article-title>Sibols: robust and energy-efficient learning for spike-based machine intelligence in information bottleneck framework</article-title>. <source>IEEE Trans. Cogn. Dev. Syst</source>. <pub-id pub-id-type="doi">10.1109/TCDS.2023.3329532</pub-id></citation>
</ref>
<ref id="B60">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>A.</given-names></name> <name><surname>Wu</surname> <given-names>J.</given-names></name> <name><surname>Li</surname> <given-names>X.</given-names></name> <name><surname>Li</surname> <given-names>H. C.</given-names></name> <name><surname>Gao</surname> <given-names>Y.</given-names></name> <name><surname>Pun</surname> <given-names>S. H.</given-names></name></person-group> (<year>2023</year>). <article-title>Highway connection for low-latency and high-accuracy spiking neural networks</article-title>. <source>IEEE Trans. Circ. Syst. II Exp. Briefs</source>. <pub-id pub-id-type="doi">10.1109/TCSII.2023.3294418</pub-id></citation>
</ref>
<ref id="B61">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>L.</given-names></name> <name><surname>Zhou</surname> <given-names>S.</given-names></name> <name><surname>Zhi</surname> <given-names>T.</given-names></name> <name><surname>Du</surname> <given-names>Z.</given-names></name> <name><surname>Chen</surname> <given-names>Y.</given-names></name></person-group> (<year>2019</year>). <article-title>&#x0201C;TDSNN: from deep neural networks to deep spike neural networks with temporal-coding,&#x0201D;</article-title> in <source>Proceedings of the AAAI Conference on Artificial Intelligence</source>, Vol. <volume>33</volume>, <fpage>1319</fpage>&#x02013;<lpage>1326</lpage>.</citation>
</ref>
<ref id="B62">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>M.</given-names></name> <name><surname>Wang</surname> <given-names>J.</given-names></name> <name><surname>Wu</surname> <given-names>J.</given-names></name> <name><surname>Belatreche</surname> <given-names>A.</given-names></name> <name><surname>Amornpaisannon</surname> <given-names>B.</given-names></name> <name><surname>Zhang</surname> <given-names>Z.</given-names></name> <etal/></person-group>. (<year>2021</year>). <article-title>Rectified linear postsynaptic potential function for backpropagation in deep spiking neural networks</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst.</source> <volume>33</volume>, <fpage>1947</fpage>&#x02013;<lpage>1958</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2021.3110991</pub-id><pub-id pub-id-type="pmid">34534091</pub-id></citation></ref>
<ref id="B63">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>W.</given-names></name> <name><surname>Li</surname> <given-names>P.</given-names></name></person-group> (<year>2020</year>). <article-title>Temporal spike sequence learning via backpropagation for deep spiking neural networks</article-title>. <source>arXiv preprint arXiv:2002.10085</source>.</citation>
</ref>
<ref id="B64">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zheng</surname> <given-names>H.</given-names></name> <name><surname>Wu</surname> <given-names>Y.</given-names></name> <name><surname>Deng</surname> <given-names>L.</given-names></name> <name><surname>Hu</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>G.</given-names></name></person-group> (<year>2020</year>). <article-title>Going deeper with directly-trained larger spiking neural networks</article-title>. <source>arXiv preprint arXiv:2011.05280</source>.</citation>
</ref>
</ref-list>
</back>
</article>
