logo

SCIENCE CHINA Information Sciences, Volume 63 , Issue 2 : 122402(2020) https://doi.org/10.1007/s11432-019-1468-0

Deterministic conversion rule for CNNs toefficient spiking convolutional neural networks

More info
  • ReceivedFeb 28, 2019
  • AcceptedJul 8, 2019
  • PublishedJan 15, 2020

Abstract

This paper proposes a general conversion theory to reveal the relations between convolutional neural network (CNN) and spiking convolutional neural network (spiking CNN) from structure to information processing. Based on the conversion theory and the statistical features of the activations distribution in CNN, we establish a deterministic conversion rule to convert CNNs into spiking CNNs with definite conversion procedure and the optimal setting of all parameters. Included in conversion rule, we propose a novel “n-scaling” weight mapping method to realize high-accuracy, low-latency and power efficient object classification on hardware. For the first time, the minimum dynamic range of spiking neuron's membrane potential is studied to help to balance the trade-off between representation range and precise of the data type adopted by dedicated hardware when spiking CNNs run on it. The simulation results demonstrate that the converted spiking CNNs perform well on MNIST, SVHN and CIFAR-10 datasets. The accuracy loss over three datasets is no more than 0.4%. 39% of processing time is shortened at best, and less power consumption is benefited from lower latency achieved by our conversion rule. Furthermore, the results of noise robustness experiments indicate that spiking CNN inherits the robustness from its corresponding CNN.


Acknowledgment

This work was supported by National Natural Science Foundation of China (Grant Nos. 61704167, 61434004), Beijing Municipal Science and Technology Project (Grant No. Z181100008918009), Youth Innovation Promotion Association Program, Chinese Academy of Sciences (Grant No. 2016107), and Strategic Priority Research Program of Chinese Academy of Science (Grant No. XDB32050200).


Supplement

Appendix

Proof of the conversion theory

We aim to derive the relation between the firing rate $r_i^l(T)$ of the IF neuron in spiking CNN and the real-value activation $a_i^l$ of the corresponding neuron in CNN. Starting from the total residual shown in 5, the firing rate of neuron $i$ in layer $l$ over time $T{\rm~d}t$ can be rewritten with 5, then Eq. 4 is transferred into \begin{equation} r_i^l(T)=\frac{N_i^l(T)}{T} r_{\rm max}=\frac{\sum_{t=1}^T Z_i^l(t)-\varepsilon_i^l(T)}{\tau^l T} r_{\rm max}, \tag{18}\end{equation} where $\sum_{t=1}^T~Z_i^l(t)$ is the total weighted inputs received over time $T{\rm~d}t$. Because the accumulation of weighted input spikes in time and spatial scale is not correlative, the accumulation of input spike over $T{\rm~d}t$ can be calculate first. So $\sum_{t=1}^T~Z_i^l(t)$ is transferred into the sum up of weighted total number of spikes emitted by presynaptic neurons: \begin{equation} \sum_{t=1}^T Z_i^l(t)=\sum_{t=1}^T \sum_{j=1}^{J^{l-1}} W_{ij}^l\sum_{s\in S_j}\delta_j^{l-1}(t-s) =\sum_{j=1}^{J^{l-1}} W_{ij}^l \sum_{t=1}^T \sum_{s\in S_j}\delta_j^{l-1}(t-s) =\sum_{j=1}^{J^{l-1}}W_{ij}^l N_j^{l-1}(T). \tag{19}\end{equation} Then, according to 4, the total number of spikes $N_j^{l-1}(T)$ can be rewritten into the form containing firing rate, like \begin{equation} N_j^{l-1}(T)=T \frac{r_j^{l-1}(T)}{r_{\rm max}}. \tag{20}\end{equation} Substituting 20 into 19, $\sum_{t=1}^T~Z_i^l(t)$ are ultimately denoted as an equation containing the firing rate of the neurons in previous layer: \begin{equation} \sum_{t=1}^T Z_i^l(t)=\frac{T}{r_{\rm max}}\sum_{j=1}^{J^{l-1}}W_{ij}^l r_j^{l-1}(T). \tag{21}\end{equation} Replacing the $\sum_{t=1}^T~Z_i^l(t)$ in 18 with 21 and rearranging, the relationship about firing rate of IF neurons in two connected layers can be gotten: \begin{equation} r_i^l(T)=\frac{1}{\tau^l} \sum_{j=1}^{J^{l-1}} W_{ij}^l r_j^{l-1}(T)-\frac{\varepsilon_i^l(T)}{\tau^l T}r_{\rm max}. \tag{22}\end{equation} Eq. 22 is a recursive expression and it can be unfolded by inserting the firing rate of neurons in previous layers iteratively until the known firing rate of input spike trains $r_i^0$: \begin{equation} r_i^l(T)=\frac{1}{\tau^l} \sum_{j=1}^{J^{l-1}}W_{ij}^l \left ( \frac{1}{\tau^{l-1}} \sum_{j=1}^{J^{l-2}} W_{ij}^{l-1} \cdots\left( \frac{1}{\tau^1} \sum_{j=1}^{J^0} W_{ij}^1 r_j^0(T)-\frac{\varepsilon_i^1(T)}{\tau^1T}r_{\rm max} \right)\cdots -\frac{\varepsilon_i^{l-1}(T)}{\tau^{l-1}T}r_{\rm max} \right ) -\frac{\varepsilon_i^l(T)}{\tau^lT}r_{\rm max}. \tag{23}\end{equation} According to 22, the term within the innermost brackets of 23 is the firing rate of $i$th IF neuron in layer $l=1$, which is solved by substituting 7 into 23: \begin{equation} \frac{1}{\tau^1} \sum_{j=1}^{J^0} W_{ij}^1 r_j^0(T)-\frac{\varepsilon_i^1(T)}{\tau^1T}r_{\rm max} = r_i^1(T) = \frac{1}{\tau^1} \sum_{j=1}^{J^0} W_{ij}^1 a_j^0 r_{\rm max}-\frac{\varepsilon_i^1(T)}{\tau^1T}r_{\rm max}. \tag{24}\end{equation}

Case 1: If $\sum_{j=1}^{J^0}~W_{ij}^1~a_j^0~\geqslant~0$, the term in the right of equation (24) can be rewritten as the form that contains ReLU function, and according to (2), it transfer into \begin{equation} r_i^1(T) = \frac{1}{\tau^1} \sum_{j=1}^{J^0} W_{ij}^1 a_j^0 r_{\rm max}-\frac{\varepsilon_i^1(T)}{\tau^1T}r_{\rm max} = \frac{r_{\rm max}}{\tau^1}\left( {\rm max}\left(0, \sum_{j=1}^{J^0} W_{ij}^1 a_j^0\right)-\frac{\varepsilon_i^1(T)}{T} \right) =\frac{r_{\rm max}}{\tau^1}\left(a_i^1 - \frac{\varepsilon_i^1(T)}{T}\right). \tag{25}\end{equation}

Case 2: If $\sum_{j=1}^{J^0}~W_{ij}^1~a_j^0~<~0$, then ${\rm~max}(0,~\sum_{j=1}^{J^0}~W_{ij}^1~a_j^0)=0$. And Eq. (24) can be written as \begin{equation} r_i^1(T) = \frac{1}{\tau^1} \sum_{j=1}^{J^0} W_{ij}^1 a_j^0 r_{\rm max}-\frac{\varepsilon_i^1(T)}{\tau^1T}r_{\rm max} = \frac{r_{\rm max}}{\tau^1} \left( \sum_{j=1}^{J^0} W_{ij}^1 a_j^0(T)-\frac{\varepsilon_{ia}^1(T)}{T} \right) - \frac{\varepsilon_{ib}^1(T)}{\tau^1 T}r_{\rm max}, \tag{26}\end{equation} where $\sum_{j=1}^{J^0}~W_{ij}^1~a_j^0(T)-\varepsilon_{ia}^1(T)/T=0$ and $\varepsilon_i^1(T)=\varepsilon_{ia}^1(T)+\varepsilon_{ib}^1(T)$. Therefore, Eq. (26) can be rewritten as the form which also contains ReLU function, and according to (2), it transfer into \begin{equation} r_i^1(T) = \frac{1}{\tau^1} \sum_{j=1}^{J^0} W_{ij}^1 a_j^0 r_{\rm max}-\frac{\varepsilon_i^1(T)}{\tau^1T}r_{\rm max} = \frac{r_{\rm max}}{\tau^1}\left( {\rm max}\left(0, \sum_{j=1}^{J^0} W_{ij}^1 a_j^0\right)-\frac{\varepsilon_{ib}^1(T)}{T} \right) =\frac{r_{\rm max}}{\tau^1}\left( a_i^1 - \frac{\varepsilon_{ib}^1(T)}{T} \right). \tag{27}\end{equation} According to (24) and (26), $\varepsilon_{ia}^1$ can be solved, and based on (4) and (19), it can be further rewritten as \begin{equation}\varepsilon_{ia}^1 = \frac{T}{r_{\rm max}}\sum_{j=1}^{J^0} W_{ij}^1 r_j^0(T) = \frac{T}{r_{\rm max}}\sum_{j=1}^{J^0} W_{ij}^1 \frac{N_j^0(T)}{T{\rm d}t}, \tag{28}\end{equation} and $\varepsilon_{ia}^1$ equals \begin{equation}\varepsilon_{ia}^1=\sum_{t=1}^T Z_i^1(t). \tag{29}\end{equation} For $\varepsilon_{ib}^1$, it acts like the total residual membrane potential. When $\sum_{j=1}^{J^0}~W_{ij}^1~a_j^0~<~0$, the result of input pixels' value $a_j^0$ convoluted by $W_{ij}^1$ after ReLU function becomes the activation $a_i^1$ of $i$th neuron in first hidden layer, which equals to zero. So, the firing rate $r_i^1$ of corresponding IF neuron in spiking CNN should be equal to zero too. In this case, according to (27), $\varepsilon_{ib}$ is the part of membrane potential used to generate spikes, thereby causing approximation error: \begin{equation}r_i^1(T)=\frac{N_i^1(T)}{Tdt}=- \frac{\varepsilon_{ib}^1(T)}{\tau^1T}r_{\rm max}, \tag{30}\end{equation} and $\varepsilon_{ib}^1$ equals \begin{equation}\varepsilon_{ib}^1(T) = -N_i^1(T)\tau^1. \tag{31}\end{equation} Comparing the results of (25) and (27), we found that they are in similar form that the activation of corresponding neuron in CNN along with an additional error. When putting the result of (25) or (27) into (23) during each iteration, the general form of the innermost term is listed in the following, which is similar with the cases we discuss above when $l=1$. So the general result for arbitrary layer $l$ is \begin{eqnarray}&&{r_i^l(T) = \frac{1}{\tau^l} \sum_{j=1}^{J^{l-1}} W_{ij}^l a_j^{l-1}(T)r_{\rm max}-\frac{\varepsilon_i^l(T)}{\tau^lT}r_{\rm max} =} \frac{r_{\rm max}}{\tau^l}\left( a_i^l - \frac{\varepsilon_i^l(T)}{T} \right), & if $\sum_{j=1}^{J^{l-1}} W_{ij}^l a_j^{l-1} \geqslant 0$, \tag{32} \\ && \frac{r_{\rm max}}{\tau^l}\left( a_i^l - \frac{\varepsilon_{ib}^l(T)}{T}\right ),& if $\sum_{j=1}^{J^{l-1}} W_{ij}^l a_j^{l-1} < 0$, \tag{33} \end{eqnarray} where $\varepsilon_{ib}^l=-N_i^l(T)\tau^l$. Solving the recursive expression by inserting (32) and (33) iteratively, we finally obtain a general description of the relationship between firing rate $r_i^l(T)$ and real-value activation $a_i^l$: \begin{equation} r_i^l(T)=\frac{ a_i^l}{\tau^l\tau^{l-1}\cdots\tau^1}r_{\rm max} - \Delta\varepsilon_i^l, \tag{34}\end{equation} where $\Delta\varepsilon_i^l$ is the approximation error.

Case 1: When $\sum_{j=1}^{J^{l-1}}~W_{ij}^l~a_j^{l-1}~\geqslant~0$ for all layers $l=\{1,2,\ldots,L\}$, approximation error equals to \begin{equation} \Delta\varepsilon_i^l = \frac{r_{\rm max}}{T}\bigg( \frac{\varepsilon_i^l(T)}{\tau^l} + \frac{1}{\tau^l \tau^{l-1}}\sum_{j=1}^{J^{l-1}} W_{ij}^l \varepsilon_j^{l-1}(T)+\cdots+\frac{1}{\tau^l \tau^{l-1}..\tau^1}\sum_{j=1}^{J^{l-1}}W_{ij}^l\cdots\sum_{j=1}^{J^1}W_{ij}^2 \varepsilon_j^1(T)\bigg). \tag{35}\end{equation}

Case 2: When $\sum_{j=1}^{J^{l-1}}~W_{ij}^l~a_j^{l-1}~<~0$ for some layers $l$, approximation error equals to \begin{equation} \Delta\varepsilon_i^l = \frac{r_{\rm max}}{T}\bigg( \frac{\varepsilon_i^l(T)}{\tau^l} + \frac{1}{\tau^l \tau^{l-1}}\sum_{j=1}^{J^{l-1}} W_{ij}^l \varepsilon_{jb}^{l-1}(T)+\cdots+\frac{1}{\tau^l \tau^{l-1}..\tau^1}\sum_{j=1}^{J^{l-1}}W_{ij}^l\cdots\sum_{j=1}^{J^1}W_{ij}^2 \varepsilon_{jb}^1(T)\bigg). \tag{36}\end{equation} Though there are some $\varepsilon_{jb}^l(T)$ existed in (36), the result of two above cases are in same form. So, we adopt the result shown in (35) as the approximation error $\Delta\varepsilon_i^l$ with the total residual membrane potential $\varepsilon_i^l(T)$ of each IF neuron within $T{\rm~d}t$ equaling: \begin{eqnarray}&&{\varepsilon_i^l(T)=} \sum_{s\in S_i}(V_i^l(s)-\tau^l)+\sum_{u\in U_i}(V_i^l(u)-V_{\rm min}^l)+V_i^l(T), \tag{37} \\ &&-N_i^l(T)\tau^l. \tag{38} \end{eqnarray} And the final relation between the firing rate $r_i^l(T)$ of the IF neuron in spiking CNN and the real-value activation $a_i^l$ of the corresponding neuron in CNN is described as (8) and (9).

Pseudocode of conversion rule

h

Conversion rules. $L$ is the number of layers. ${\rm~conv}(W,a)$ is a function which represents that activation map $a$ is convoluted by weight matrix $W$. ${\rm~avg\_pool}(a)$ is a function which represents that activation map $a$ is pooling with the average value. ${\rm~layer}(l).{\rm~type}$ indicates the type of layer $l$. KwDataWeight matrix $W_{ij}^l$ from a well-trained CNN with biases fixed to 0. Normalized training set as input $a^0$. KwResultObtain parameters $f^l$, scaled weights $W_{ij}^{l'}$ and $V_{\rm~min}$. $f^0=1$; $l=1~{\rm~to}~L$


References

[1] Krizhevsky A, Sutskever I, Hinton G E. Imagenet classification with deep convolutional neural networks. In: Proceedings of Advances in Neural Information Processing Systems, 2012. 1097--1105. Google Scholar

[2] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition. 2014,. arXiv Google Scholar

[3] Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015. 1--9. Google Scholar

[4] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016. 770--778. Google Scholar

[5] Shi C, Yang J, Han Y. A 1000 fps Vision Chip Based on a Dynamically Reconfigurable Hybrid Architecture Comprising a PE Array Processor and Self-Organizing Map Neural Network. IEEE J Solid-State Circ, 2014, 49: 2067-2082 CrossRef ADS Google Scholar

[6] Yang J, Yang Y, Chen Z. A Heterogeneous Parallel Processor for High-Speed Vision Chip. IEEE Trans Circ Syst Video Technol, 2018, 28: 746-758 CrossRef Google Scholar

[7] Du Z, Fasthuber R, Chen T. ShiDianNao. SIGARCH Comput Archit News, 2016, 43: 92-104 CrossRef Google Scholar

[8] Chen Y H, Krishna T, Emer J S. Eyeriss: An Energy-Efficient Reconfigurable Accelerator for Deep Convolutional Neural Networks. IEEE J Solid-State Circ, 2017, 52: 127-138 CrossRef ADS Google Scholar

[9] Wang J, Yang Y, Liu L. High-speed target tracking system based on multi-interconnection heterogeneous processor and multi-descriptor algorithm. Sci China Inf Sci, 2019, 62: 69401 CrossRef Google Scholar

[10] Andri R, Cavigelli L, Rossi D. YodaNN: An Architecture for Ultralow Power Binary-Weight CNN Acceleration. IEEE Trans Comput-Aided Des Integr Circ Syst, 2018, 37: 48-60 CrossRef Google Scholar

[11] Genc H, Zu Y, Chin T W. Flying IoT: Toward Low-Power Vision in the Sky. IEEE Micro, 2017, 37: 40-51 CrossRef Google Scholar

[12] Shin D, Lee J, Lee J, et al. 14.2 DNPU: an 8.1 TOPS/W reconfigurable CNN-RNN processor for general-purpose deep neural networks. In: Proceedings of 2017 IEEE International Solid-State Circuits Conference (ISSCC). New York: IEEE, 2017. 240--241. Google Scholar

[13] Ando K, Ueyoshi K, Orimo K. BRein Memory: A Single-Chip Binary/Ternary Reconfigurable in-Memory Deep Neural Network Accelerator Achieving 1.4 TOPS at 0.6 W. IEEE J Solid-State Circ, 2018, 53: 983-994 CrossRef ADS Google Scholar

[14] Merolla P A, Arthur J V, Alvarez-Icaza R. A million spiking-neuron integrated circuit with a scalable communication network and interface. Science, 2014, 345: 668-673 CrossRef PubMed ADS Google Scholar

[15] Esser Steven K, Merolla P A, Arthur J V, et al. Convolutional networks for fast, energy-efficient neuromorphic computing. Proc Nat Acad Sci, 2016, 113: 11441--11446 doi:10. 1073/pnas.1604850113/-/DCSupplemental. Google Scholar

[16] Benjamin B V, Gao P, McQuinn E. Neurogrid: A Mixed-Analog-Digital Multichip System for Large-Scale Neural Simulations. Proc IEEE, 2014, 102: 699-716 CrossRef Google Scholar

[17] Shen J, Ma D, Gu Z. Darwin: a neuromorphic hardware co-processor based on Spiking Neural Networks. Sci China Inf Sci, 2016, 59: 1-5 CrossRef Google Scholar

[18] Wu N. Neuromorphic vision chips. Sci China Inf Sci, 2018, 61: 060421 CrossRef Google Scholar

[19] Farabet C, Paz R, P ez-Carrasco J, et al. Comparison between frame-constrained fix-pixel-value and frame-free spiking-dynamic-pixel convNets for visual processing. Front Neurosci, 2012, 6: 32. Google Scholar

[20] O'Connor P, Neil D, Liu S C, et al. Real-time classification and sensor fusion with a spiking deep belief network. Front Neurosci, 2013, 7: 178. Google Scholar

[21] Brader J M, Senn W, Fusi S. Learning real-world stimuli in a neural network with spike-driven synaptic dynamics.. Neural Computation, 2007, 19: 2881-2912 CrossRef PubMed Google Scholar

[22] Beyeler M, Dutt N D, Krichmar J L. Categorization and decision-making in a neurobiologically plausible spiking network using a STDP-like learning rule.. Neural Networks, 2013, 48: 109-124 CrossRef PubMed Google Scholar

[23] Querlioz D, Bichler O, Dollfus P. Immunity to Device Variations in a Spiking Neural Network With Memristive Nanodevices. IEEE Trans Nanotechnol, 2013, 12: 288-295 CrossRef ADS Google Scholar

[24] Diehl P U, Cook M. Unsupervised learning of digit recognition using spike-timing-dependent plasticity. Front Comput Neurosci, 2015, 9: 99. Google Scholar

[25] Zhao B, Ding R, Chen S. Feedforward Categorization on AER Motion Events Using Cortex-Like Features in a Spiking Neural Network.. IEEE Trans Neural Netw Learning Syst, 2015, 26: 1963-1978 CrossRef PubMed Google Scholar

[26] Morrison A, Aertsen A, Diesmann M. Spike-timing-dependent plasticity in balanced random networks.. Neural Computation, 2007, 19: 1437-1467 CrossRef PubMed Google Scholar

[27] Zheng N, Mazumder P. Online Supervised Learning for Hardware-Based Multilayer Spiking Neural Networks Through the Modulation of Weight-Dependent Spike-Timing-Dependent Plasticity.. IEEE Trans Neural Netw Learning Syst, 2018, 29: 4287-4302 CrossRef PubMed Google Scholar

[28] Cao Y, Chen Y, Khosla D. Spiking Deep Convolutional Neural Networks for Energy-Efficient Object Recognition. Int J Comput Vis, 2015, 113: 54-66 CrossRef Google Scholar

[29] Diehl P U, Neil D, Binas J, et al. Fast-classifying, high-accuracy spiking deep networks through weight and threshold balancing. In: Proceedings of 2015 International Joint Conference on Neural Networks (IJCNN). New York: IEEE, 2015. 1--8. Google Scholar

[30] Hunsberger E, Eliasmith C. Training spiking deep networks for neuromorphic hardware. 2016,. arXiv Google Scholar

[31] Rueckauer B, Lungu I A, Hu Y. Conversion of Continuous-Valued Deep Networks to Efficient Event-Driven Networks for Image Classification. Front Neurosci, 2017, 11: 682 CrossRef Google Scholar

[32] Culurciello E, Etienne-Cummings R, Boahen K A. A biomorphic digital image sensor. IEEE J Solid-State Circ, 2003, 38: 281-294 CrossRef ADS Google Scholar

[33] Xu Y, Tang H, Xing J, et al. Spike trains encoding and threshold rescaling method for deep spiking neural networks. In: Proceedings of 2017 IEEE Symposium Series on Computational Intelligence (SSCI). New York: IEEE, 2017. 1--6. Google Scholar

[34] Akopyan F, Sawada J, Cassidy A. TrueNorth: Design and Tool Flow of a 65 mW 1 Million Neuron Programmable Neurosynaptic Chip. IEEE Trans Comput-Aided Des Integr Circ Syst, 2015, 34: 1537-1557 CrossRef Google Scholar

[35] Arthur J V, Merolla P A, Akopyan F, et al. Building block of a programmable neuromorphic substrate: A digital neurosynaptic core. In: Proceedings of the 2012 International Joint Conference on Neural Networks (IJCNN). New York: IEEE, 2012. 1--8. Google Scholar

[36] Goodfellow I J, Bulatov Y, Ibarz J, et al. Multi-digit number recognition from street view imagery using deep convolutional neural networks. 2013,. arXiv Google Scholar

[37] Vedaldi A, Lenc K. Matconvnet: convolutional neural networks for matlab. In: Proceedings of the 23rd ACM International Conference on Multimedia. New YorK: ACM, 2015: 689--692. Google Scholar

[38] Zhang T, Zeng Y, Zhao D, et al. Brain-inspired balanced tuning for spiking neural networks. In: Proceedings of the 27th International Joint Conference on Artificial Intelligence, 2018. 1653--1659. Google Scholar

[39] Kulkarni S R, Rajendran B. Spiking neural networks for handwritten digit recognition-Supervised learning and network optimization.. Neural Networks, 2018, 103: 118-127 CrossRef PubMed Google Scholar

[40] Tavanaei A, Maida A S. Bio-inspired spiking convolutional neural network using layer-wise sparse coding and stdp learning. 2016,. arXiv Google Scholar

  • Table 1   Comparison between CNN and spiking CNN
    CNN Spiking CNN
    5*makecellNetworkarchitectureNumber of convolution layers$n$ $n$
    Number of pooling layers$n$ $n$
    Additional layers$\times$ Spike counter
    InputAn image Series of binary map
    OutputReal-value Num of spikes
    5*makecellNeuronmodel Weights$W_{ij}$ $W&apos;_{ij}$
    Firing threshold ($\tau$)$\times$ $\circ$
    $V_{\rm~min}$$\times$ $\circ$
    Bias$\circ$ $\times$
    Notion of time$\times$ $\circ$
    4*makecellProcessingflow Information domainReal-value Spike (rate coding)
    3*makecell Operation Convolution
    2*MAC
    2*ACC
    Average pooling
    Activation ReLU Firing operation
  • Table 2   Architecture of CNNs for MNIST, SVHN and CIFAR-10 dataset
    MNIST SVHN CIFAR-10
    Input $28\times28$ gray image Input $32\times32$ RGB image Input $24\times24$ RGB image
    conv5-12, ReLU conv5-32, ReLU conv5-64, ReLU
    avg-pool/2 avg-pool/2 avg-pool/2
    conv5-64, ReLU conv5-96, ReLU conv5-64, ReLU
    avg-pool/2 avg-pool/2 avg-pool/2
    3*FC-10 conv3-64, ReLU conv3-64, ReLU
    avg-pool/3 conv1-64, ReLU
    FC-10
  • Table 3   Classification accuracy of different types of SNNs on three datasets$^{\rm~a)}$
    Dataset Network-type Method Accuracy
    MNIST[38] SNN Balanced learning + STDP 98.64%
    MNIST[39] SNN NormAD 98.17%
    MNIST[31] Converted spiking CNN Modified IF neuron 99.44% ($\approx$0%)
    MNIST[29] Converted spiking CNN Weight Normalization 99.11% (0.04%)
    MNIST Converted spiking CNN (this paper) Conversion rule 99.09% (0.02%)
    SVHN[33] Converted spiking CNN Threshold rescaling 93.66% (2.27%)
    SVHN[30] Spiking CNN Synaptic filter 93.92% (0.43%)
    SVHN Converted spiking CNN (this paper) Conversion rule 96.33% (0.27%)
    CIFAR-10[28] Spiking CNN None 77.43% (1.66%)
    CIFAR-10[30] Spiking CNN Synaptic filter 83.54% (2.43%)
    CIFAR-10 Converted spiking CNN (this paper) Conversion rule 80.41% (0.40%)

    a

  • Table 4   Stable accuracy and approximation error $\Delta~\varepsilon$ of spiking CNNs with different $n$-values on MNIST, SVHN, and CIFAR-10 dataset, respectively
    2*$n$ MNISTSVHNCIFAR-10
    Accuracy (%)$\Delta~\varepsilon$ Accuracy (%) $\Delta~\varepsilon$ Accuracy (%) $\Delta~\varepsilon$
    0.1 98.75 0.582 95.13 0.100 76.10 0.278
    0.2 99.06 0.138 96.04 0.035 79.42 0.079
    0.3 99.12 0.066 96.10 0.021 79.82 0.040
    0.4 99.12 0.042 96.19 0.015 80.08 0.026
    0.5 99.13 0.031 96.30 0.012 80.14 0.019
    0.6 99.10 0.024 96.33 0.010 80.38 0.014
    0.7 99.13 0.020 96.30 0.009 80.46 0.012
    0.8 99.10 0.017 96.35 0.007 80.53 0.010
    0.9 99.15 0.015 96.43 0.007 80.55 0.008
    1.0 99.13 0.013 96.31 0.006 80.29 0.007
  • Table 5   Accuracy loss on three datasets when images are distorted by different degrees of AWGN and SP noise
    Additive white Gaussian noise (SNR)Salt-and-pepper noise (density)
    $\Delta~$Acc30 25 20 15 10 5 3% 6% 9% 12% 15%
    MNIST (%) 0.03 0.07 0.04 0.02 0.10 0.31 0.10 0.31 0.44 0.68 1.14
    SVHN (%) 0.37 0.35 0.39 0.37 0.49 0.80 0.41 0.47 0.63 0.76 0.89
    CIFAR-10 (%) 0.61 0.39 $-$0.52 $-$1.63 $-$1.46 $-$0.79 0.18 0.37 0.35 0.36 0.19

Copyright 2020  CHINA SCIENCE PUBLISHING & MEDIA LTD.  中国科技出版传媒股份有限公司  版权所有

京ICP备14028887号-23       京公网安备11010102003388号