KR20210064767A - Spiking neuron model and method for generating spike thereof - Google Patents

Spiking neuron model and method for generating spike thereof Download PDF

Info

Publication number
KR20210064767A
KR20210064767A KR1020190153342A KR20190153342A KR20210064767A KR 20210064767 A KR20210064767 A KR 20210064767A KR 1020190153342 A KR1020190153342 A KR 1020190153342A KR 20190153342 A KR20190153342 A KR 20190153342A KR 20210064767 A KR20210064767 A KR 20210064767A
Authority
KR
South Korea
Prior art keywords
spike
tail
synapses
neuron model
synapse
Prior art date
Application number
KR1020190153342A
Other languages
Korean (ko)
Other versions
KR102431371B1 (en
Inventor
이윤명
한태영
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020190153342A priority Critical patent/KR102431371B1/en
Publication of KR20210064767A publication Critical patent/KR20210064767A/en
Application granted granted Critical
Publication of KR102431371B1 publication Critical patent/KR102431371B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Image Analysis (AREA)

Abstract

A spiking neuron model of a spiking neural network (SNN) comprises: a preprocessing amplifier outputting different currents in accordance with the level of weights set in a plurality of synapses for spikes transferred from the synapses; a differentiator differentiating a spike through the preprocessing amplifier to generate a step-function including only a tail (+); an integrator integrating a spike differentiated by the differentiator; a comparator comparing an output value of the integrator and a preset threshold (V_th) to output a fire signal if the output value of the integrator exceeds the threshold (V_th); and a spike generator generating a spike when a fire signal is outputted by the comparator to adjust the weights of the synapses. The spiking neuron model further comprises a diode unit removing a tail (-) from a spike transferred from the plurality of synapses, and transferring only the tail (+) to the preprocessing amplifier. Therefore, integration is not carried out in an opposite direction, and integrated probabilities are made equal in the entire section of the tail (+) of a corresponding spike to stably change the weight of a synapse.

Description

스파이킹 뉴런 모델 및 그의 스파이크 생성 방법{SPIKING NEURON MODEL AND METHOD FOR GENERATING SPIKE THEREOF}SPIKING NEURON MODEL AND METHOD FOR GENERATING SPIKE THEREOF

본 발명은 스파이킹 뉴런 모델(Spiking Neuron Model)에 에 관한 것으로서, 보다 상세하게는, 스파이킹 뉴런 모델(Spiking Neuron Model)을 이용한 스파이킹 뉴럴 네트워크(Spiking Neural Network)에서 시냅스(Synapse)의 웨이트를 안정적으로 조절하기 위한 스파이킹 뉴런 모델 및 그의 스파이크 생성 방법에 관한 것이다. The present invention relates to a spiking neuron model, and more particularly, the weight of a synapse in a spiking neural network using a spiking neuron model It relates to a spiking neuron model for stably regulating and a method for generating spikes thereof.

도 1a는 일반적인 스파이킹 뉴럴 네트워크를 단순화하여 도식화한 도면으로서, 도 1a를 참조하면, 스파이킹 뉴럴 네트워크(Spiking Neural Network)은 뉴런(Neuron)들(20, 30) 사이에 시냅스(10)가 존재하며, 프리-뉴런(pre-neuron)(20)에서 출력된 스파이크(spike)가 시냅스(10)를 통과해 포스트-뉴런(post-neuron)(30)으로 전달되면, 포스트-뉴런(post-neuron)(30)에서는 이에 대하여 적절한 처리 과정을 거쳐 프리-뉴런(pre-neuron)(20)에서 전달받은 스파이크와 같은 모양의 스파이크를 만들어서 시냅스(10)로 피드백(feed-back)한다. FIG. 1A is a simplified and schematic diagram of a general spiking neural network. Referring to FIG. 1A , in the spiking neural network, a synapse 10 exists between neurons 20 and 30. And, when the spike output from the pre-neuron 20 passes through the synapse 10 and is transmitted to the post-neuron 30 , the post-neuron (post-neuron) ) (30), the pre-neuron (pre-neuron) (20) through an appropriate processing process to create a spike of the same shape as the spike received from the synapse (feed-back) to the synapse (10).

이 때, 시냅스(10)의 웨이트에 따라 신호의 전달 상태가 달라지는데, 일반적으로 웨이트가 크면 클수록 프리-뉴런(pre-neuron)(20)의 신호가 포스트-뉴런(post-neuron)(30)으로 잘 전달되는 특징이 있다. 따라서, 신호의 전달 상태를 조절하기 위해서는 시냅스(10)의 웨이트(weight)를 조절해야 한다.At this time, the signal transmission state varies according to the weight of the synapse 10 . In general, as the weight increases, the signal of the pre-neuron 20 is transferred to the post-neuron 30 . It has good transmission characteristics. Therefore, in order to control the transmission state of the signal, it is necessary to adjust the weight of the synapse (10).

한편, 도 1a를 참조한 설명에서 언급한 바와 같이, 시냅스(10)에는 프리-뉴런(pre-neuron)(20)에서 출력된 스파이크(spike)가 통과하기도 하지만, 포스트-뉴런(post-neuron)(30)에서 피드백된 스파이크도 지나가게 된다. 그런데, 상기 두스파이크가 겹치는 경우, 시냅스(10) 양단의 전압이 웨이트(weight)를 조절할 수 있는 만큼 커지고, 두 스파이크의 시간차에 의해 시냅스(10)의 웨이트가 증가 또는 감소한다. 따라서 상기 두 스파이크의 시간차를 조절해서 시냅스(10)의 웨이트를 조절할 수 있다. On the other hand, as mentioned in the description with reference to Figure 1a, the synapse 10 has a pre-neuron (pre-neuron) (20), although the output spike (spike) passes, post-neuron (post-neuron) ( 30), the spikes fed back are also passed However, when the two spikes overlap, the voltage at both ends of the synapse 10 increases as much as it can control the weight, and the weight of the synapse 10 increases or decreases by the time difference between the two spikes. Therefore, the weight of the synapse 10 can be adjusted by adjusting the time difference between the two spikes.

STDP(Spiking time dependent plasticity)는 실제 동물, 사람의 뉴련과 시냅스에서 측정된 학습 방법을 의미할 수 있다. 도 1b의 A, B를 살펴보면, 두 개의 pre spike(빨간색, 파란색 표시)가 들어올 때 Vmem(초록색 표시)이 증가(leaky integration)하는 것을 확인할 수 있다. 이 때 pre spike가 작은 웨이트의 시냅스를 지나(파란색 표시) post 뉴런에 전달되면 작게 integration 될 수 있으며, 큰 웨이트의 시냅스를 지나(빨간색 표시) post 뉴런에 전달되면 크게 integration 될 수 있다. 이와 같은 방식으로 leaky integration을 하다가 Vmem의 크기가 Vth보다 커지게 되면 post 뉴런은 fire 동작을 할 수 있다. Fire 동작은 Vmem의 값을 초기화하며 spike를 발생시키는 것을 의미할 수 있다. 이와 같이 발생한 spike는 다음 뉴런의 leaky integration을 위한 feed-forward spike(또는 pre spike)로 사용됨과 동시에 이전 시냅스의 웨이트 변화 학습을 위한 feed-back spike(post spike)로 사용될 수 있다.Spiking time dependent plasticity (STDP) may refer to a learning method measured in neurons and synapses of real animals and humans. Looking at A and B of FIG. 1B , it can be seen that V mem (indicated in green) increases (leaky integration) when two pre spikes (indicated in red and blue) enter. At this time, if the pre spike passes through a synapse of small weight (shown in blue) and is delivered to a post neuron, it can be integrated small, and when it passes through a synapse of a large weight (shown in red) and is delivered to a post neuron, it can be highly integrated. During leaky integration in this way, when the size of V mem becomes larger than V th , the post neuron can fire. Fire operation initializes the value of V mem and may mean generating a spike. The spike generated in this way can be used as a feed-forward spike (or pre spike) for leaky integration of the next neuron, and at the same time can be used as a feed-back spike (post spike) for learning the weight change of the previous synapse.

pre spike와 post spike가 시냅스에서 겹치게 되면서 시냅스의 웨이트가 변할 수 있다. 도 1b의 C를 보면 pre spike와 post spike의 시간차이에 따라 시냅스의 웨이트 변화량(ΔW)이 달라짐은 확인할 수 있다. Δt는 도 1b의 C에서 도시하고 있는 바와 같이 post spike가 발생한 시간에서 pre spike가 발생한 시간을 뺀 값으로 정의될 수 있다. 즉, Δt가 양수이면 pre spike 이후 post spike가 발생한 것이며, Δt가 음수이면 post spike가 발생한 이후 pre spike가 발생한 것을 의미할 수 있다.As the pre and post spikes overlap at the synapse, the weight of the synapse may change. Referring to C of FIG. 1b , it can be seen that the amount of change in the weight of the synapse (ΔW) varies according to the time difference between the pre spike and the post spike. Δt may be defined as a value obtained by subtracting the time at which the pre spike occurs from the time at which the post spike occurs as shown in C of FIG. 1B . That is, if Δt is positive, post spike occurs after pre spike, and if Δt is negative, it may mean that pre spike occurs after post spike.

Δt가 양수이면 pre spike가 post spike의 leaky integration과 fire에 영향을 줬다고 판단하여 각 spike를 발생시킨 뉴런들을 연결하는 시냅스의 웨이트를 증가 시킬 수 있다. 이 때 Δt가 작을수록 fire에 직접적으로 영향을 줬다고 판단하여 웨이트를 많이 증가시키고 Δt가 클수록 fire에 도움을 줬지만 영향이 크지 않다고 판단하여 웨이트를 조금 증가시킬 수 있다.If Δt is positive, it is judged that the pre spike affected the leaky integration and fire of the post spike, and the weight of the synapse connecting the neurons that generated each spike can be increased. At this time, as Δt is small, it is judged that it has a direct effect on fire, and the weight is increased. As Δt is large, it is helpful to fire, but it is judged that the influence is not large, so the weight can be increased a little.

Δt가 음수이면 post 뉴런의 fire 이후에 post spike가 들어왔기 때문에 이 pre spike는 fire에 도움을 준 spike가 아니라고 판단을 하여 웨이트를 감소시킬 수 있다. 이 때 Δt가 작을수록 fire에 연관성이 많이 없다고 판단을 하여 웨이트를 많이 감소시킬 수 있다.도 2는 프리-뉴런(pre-neuron)(20)에서 전달된 스파이크(이하, 프리-스파이크(pre-spike)라 칭함)가 발생한 시간을 ‘tpre’, 포스트-뉴런(post-neuron)(30)에서 전달된 스파이크(이하, 포스트-스파이크(post-spike)라 칭함)가 발생한 시간을 ‘tpost’, 그 둘 간의 시간차를 ‘Δt’라 할 때, 웨이트 변화를 예시하고 있다. 특히, 도 2는 프리-스파이크(pre-spike)의 ‘테일(tail)(+)’가 스텝 함수(step function)이고, ‘테일(tail)(-)’가 램프함수(ramp function)인 경우의 예일 수 있다. 일 실시예에 따르면 도 2의 a 그래프는 Δt가 양수이면서 작을 때일 수 있으며, b 그래프는 Δt가 양수이면서 Δt가 클 때(다만, Δt가 tail+보다 작을 때)일 수 있고, c 그래프는 Δt가 양수이고 Δt가 tail+보다 클 때일 수 있으며, d 그래프는 Δt가 음수일 때일 수 있다.pre, post spike 중 하나만 시냅스에 걸리는 경우, 시냅스에 걸리는 전압은 Vt,i, Vt,d를 넘지 못하기 때문에 웨이트가 변하지 않을 수 있다. 도 2의 a, b, c는 Δt가 양수(즉 웨이트가 증가)일 때의 예일 수 있다. 생물학적으로는 Δt의 크기가 a, b, c 순서대로 커질 수 있으므로 ΔW는 a, b, c 순서대로 작아질 수 있다.If Δt is negative, since the post spike came in after the fire of the post neuron, it is judged that this pre spike is not a spike that helped fire, and the weight can be reduced. In this case, as Δt is smaller, it is determined that there is not much correlation with fire, and thus the weight can be greatly reduced. FIG. 2 shows a spike transmitted from a pre-neuron 20 (hereinafter, a pre-spike). The time at which the spike) occurred is 't pre ', and the time at which the spike transmitted from the post-neuron 30 (hereinafter referred to as the post-spike) occurred is 't post ', when the time difference between the two is 'Δt', the weight change is exemplified. In particular, FIG. 2 shows a case in which a 'tail (+)' of a pre-spike is a step function and a 'tail (-)' is a ramp function. may be an example of According to an embodiment, the a graph of FIG. 2 may be when Δt is both positive and small, the b graph may be when Δt is positive and Δt is large (however, when Δt is smaller than tail+), and the c graph shows that Δt is It is positive and may be when Δt is greater than tail+, and the d graph may be when Δt is negative. If only one of the pre and post spikes is applied to the synapse, the voltage across the synapse cannot exceed V t,i , V t,d . Therefore, the weight may not change. A, b, and c of FIG. 2 may be examples when Δt is a positive number (ie, the weight is increased). Biologically, since the magnitude of Δt can increase in the order of a, b, and c, ΔW can decrease in the order of a, b, and c.

한편, 도 2에서 노란색으로 표시된 영역을 살펴보면 b의 노란색 영역은 a의 노란색 영역을 포함할 수 있다. 즉, b의 경우가 a의 경우보다 웨이트가 더 변할 수 있다. c의 경우는 시냅스 양단에 걸리는 전압의 최대값이 a, b 경우보다 낮을 수 있다. 여기서 시냅스의 웨이트 변화는 시냅스에 걸리는 전압의 크기가 지속시간(해칭영역)보다 도미넌트(dominant)하다고 했을 때를 다루고 있는바, c의 경우는 웨이트 변화량이 a, b의 경우보다 작을 수 있다. d의 경우는 Δt가 음수인 경우를 보여주며, d의 경우 pre spike와 post spike가 같으므로 Δt가 양수일 때와 비교했을 때 ΔW의 크기는 같고 부호만 반대일 수 있다.Meanwhile, looking at the area indicated in yellow in FIG. 2 , the yellow area of b may include the yellow area of a. That is, the weight may vary more in the case of b than in the case of a. In case c, the maximum value of the voltage across the synapse may be lower than in cases a and b. Here, the weight change of the synapse deals with the case where the magnitude of the voltage applied to the synapse is more dominant than the duration (hatching area). In case of c, the amount of change in weight may be smaller than in the case of a and b. In case of d, Δt is negative, and in case of d, the pre spike and post spike are the same, so when Δt is positive, the magnitude of ΔW may be the same and only the sign may be opposite.

한편, 도 3은 상기 두 스파이크의 시간차에 따른 시냅스(10)의 웨이트(weight) 변화량(STDP: Spiking Time Dependent Plasticity)(ΔW) 그래프를 도시하고 있다. 이 때, 실선은 이상적인(즉 생물학적인) 웨이트 변화량(ΔW)을 나타내고, 점선은 실제 웨이트 변화량(ΔW)을 나타낸다. 도 3을 참조하면, 이상적으로는 포스트-스파이크(post-spike)가 발생한 시간(tpost)에서 프리-스파이크(pre-spike)가 발생한 시간을 뺀 값(Δt)의 크기가 커질수록 웨이트(weight) 변화의 크기가 작아진다. 하지만, 도 3의 점선 부분을 보면, 실제 변화량의 경우 Δt=0기준으로 STDP 그래프가 이상적인 경우와는 다르게 나오고 있음을 알 수 있다. 즉, 도 2의 경우와 같이 프리-스파이크(pre-spike)의 ‘테일(tail)(+)’가 스텝 함수(step function)이고, ‘테일(tail)(-)’가 램프함수(ramp function)인 경우 ‘테일(tail)(+)’시간동안은 이상적인 경우와 다른 결과가 나타남을 알 수 있다. 한편 도 3에서 a, b, c, d로 표시한 영역은 도 2의 a, b, c, d 경우에 대응되는 위치일 수 있다.On the other hand, Figure 3 shows a weight (weight) variation (STDP: Spiking Time Dependent Plasticity) (ΔW) graph of the synapse 10 according to the time difference between the two spikes. In this case, the solid line represents the ideal (ie, biological) weight change amount (ΔW), and the dotted line indicates the actual weight change amount (ΔW). Referring to FIG. 3 , ideally, as the magnitude of the value (Δt) obtained by subtracting the time at which the pre-spike occurs from the time at which the post-spike occurs (t post ) increases, the weight (weight) increases. ) the magnitude of the change is small. However, looking at the dotted line in FIG. 3 , it can be seen that the STDP graph is different from the ideal case on the basis of Δt=0 in the case of the actual change amount. That is, as in the case of FIG. 2 , the 'tail(+)' of the pre-spike is a step function, and the 'tail(-)' is a ramp function. ), it can be seen that the results differ from the ideal case during the 'tail (+)' time. Meanwhile, the regions indicated by a, b, c, and d in FIG. 3 may be positions corresponding to cases a, b, c, and d in FIG. 2 .

도 4a는, 도 3에 예시된 도면에서, Δt=0 부근에서도 STDP 그래프가 잘 나오게 할 수 있도록 하기 위해 스파이크(spike)의 모양을 변형한 예를 도시한 도면이다. 즉, 도 4는 프리-스파이크(pre-spike)의 ‘테일(tail)(+)’과 ‘테일(tail)(-)’이 모두 램프함수(ramp function)인 경우의 예이다. 도 4의 a 그래프는 Δt가 양수이면서 작을 때일 수 있으며, b 그래프는 Δt가 양수이면서 Δt가 클 때(다만, Δt가 tail+보다 작을 때)일 수 있고, c 그래프는 Δt가 양수이고 Δt가 tail+보다 클 때일 수 있으며, d 그래프는 Δt가 음수일 때일 수 있다. FIG. 4A is a diagram illustrating an example in which the shape of a spike is modified in order to make the STDP graph come out well even in the vicinity of Δt=0 in the diagram illustrated in FIG. 3 . That is, FIG. 4 is an example of a case in which both 'tail (+)' and 'tail (-)' of the pre-spike are ramp functions. The graph a of FIG. 4 may be when Δt is both positive and small, the graph b may be when Δt is positive and Δt is large (however, when Δt is smaller than tail+), the graph c is when Δt is positive and Δt is tail+ It may be greater than, and the d graph may be when Δt is negative.

도 4a에 따르면 c의 경우(즉, Δt가 tail+보다 클 때)는 pre와 post spike가 일부 겹쳐지기는 하지만 시냅스에 걸리는 전압이 충분히 크지 못해 웨이트가 변하지 않을 수 있다.(즉, 노란색 영역이 존재하지 않는다.) 한편 a와 b의 경우 웨이트가 증가하는 것을 확인할 수 있으며, a의 경우가 b의 경우보다 Δt가 작으므로 ΔW는 클 수 있다. 한편, 도 4a에서 시냅스의 웨이트 변화는 시냅스에 걸리는 전압의 크기가 지속시간(노란색 영역)보다 dominant하다고 가정했다. 도 4a에서 지속시간은 b의 경우가 a의 경우보다 더 크지만 시냅스에 걸리는 전압의 크기는 a의 경우가 b의 경우보다 더 크므로 생물학적인 STDP 그래프를 따라갈 수 있음을 확인할 수 있다. 도 4a에 예시된 바와 같이 프리-스파이크(pre-spike)와 포스트 스파이크(post-spike)가 겹쳤을 때 Δt의 크기가 커질수록 시냅스(synapse) 양단에 걸리는 전압은 작아지게 된다. 따라서, Δt의 크기가 커질수록 웨이트(weight)의 변화량(ΔW)이 작아지게 된다. 즉, 도 4a에 예시된 바와 같은 스파이크를 사용하는 경우, Δt의 크기가 커질수록 웨이트(weight)의 변화량(ΔW)도 함께 커지는 문제를 해결할 수 있다. According to FIG. 4A, in case c (ie, when Δt is greater than tail+), the pre and post spikes partially overlap, but the voltage applied to the synapse is not large enough, so the weight may not change. On the other hand, in the case of a and b, it can be seen that the weight increases, and in the case of a, Δt is smaller than in the case of b, so ΔW can be large. On the other hand, it is assumed that the magnitude of the voltage applied to the synapse is dominant over the duration (yellow region) for the change in the weight of the synapse in FIG. 4A . In FIG. 4a , the duration of b is larger than that of a, but the magnitude of the voltage applied to the synapse is greater in the case of a than in the case of b, so it can be confirmed that the biological STDP graph can be followed. As illustrated in FIG. 4A , when the pre-spike and the post-spike overlap, the voltage across the synapse decreases as the magnitude of Δt increases. Accordingly, as the magnitude of Δt increases, the change amount ΔW of the weight decreases. That is, in the case of using the spike as illustrated in FIG. 4A , as the size of Δt increases, the problem that the change amount ΔW of the weight also increases can be solved.

하지만, 이 경우, 시냅스(synapse)를 거친 이후에 바로 적분할 경우, 문제가 있을 수 있다. 즉, 램프 함수(Ramp function)을 적분하기 때문에 한 스파이크의 ‘테일(tail)(+)’내에서 뒤로 갈수록 적분의 양이 커지게 되고 이에 따라 뒤로 갈수록 파이어(fire)가 될 확률이 커지게 된다. 이는 어떤 스파이크가 시냅스(synapse)를 거쳐 포스트-뉴런(post-neuron)을 파이어(fire)했을 때 시냅스(synapse)의 웨이트(weight) 변화량이 큰 것보다 작은 것의 확률이 높아지게 된다. 또한, 이 경우, ‘테일(tail)(-)’가 적분 되면서 제대로 된 적분이 이루어지지 않게 된다. 즉, 스파이크를 적분 할 때 여러 개의 스파이크가 겹치게 되면, 적분이 반대로 될 수 있다는 문제점을 가지고 있다.However, in this case, when integrating immediately after passing through a synapse, there may be a problem. That is, since the ramp function is integrated, the amount of integration increases as it goes back within the 'tail (+)' of one spike, and accordingly, the probability of fire increases as it goes back. . This increases the probability of a small change in the weight of a synapse when a certain spike fires a post-neuron through a synapse. Also, in this case, the ‘tail (-)’ is integrated and the proper integration is not performed. That is, if several spikes overlap when integrating the spikes, there is a problem that the integration may be reversed.

한편, 도 4b는 이상적인 STDP 그래프와 도 4a에서 도시한 spike를 이용했을 때의 STDP 그래프를 비교한 것이다. 도 4b에서 a, b, c, d로 표시한 영역은 도 4a의 a, b, c, d 경우에 대응되는 위치일 수 있다.On the other hand, Figure 4b is a comparison of the ideal STDP graph and the STDP graph when using the spike shown in Figure 4a. Regions indicated by a, b, c, and d in FIG. 4B may be positions corresponding to cases a, b, c, and d in FIG. 4A.

따라서, 본 발명은 상기 문제점을 해결하기 위해, 시냅스를 통과한 스파이크(spike)를 적분할 때, 해당 스파이크의 테일(tail)(-)를 제외하고 테일(tail)(+)만 처리할 수 있도록 함으로써, 적분이 반대로 이루어지지 않도록 하는 스파이킹 뉴런 모델 및 그의 스파이크 생성 방법을 제공하고자 한다. Therefore, in order to solve the above problem, the present invention is such that, when integrating a spike that has passed through a synapse, only the tail (+) can be processed except for the tail (-) of the corresponding spike. Accordingly, an object of the present invention is to provide a spiking neuron model and a method for generating spikes thereof that prevent integration from being reversed.

또한, 본 발명은 상기 문제점을 해결하기 위해, 시냅스를 통과한 스파이크를 적분할 때, 해당 스파이크의 테일(tail)(+) 모든 구간에서 적분되는 확률이 같도록 함으로써, 시냅스의 웨이트를 안정적으로 변화시킬 수 있는 스파이킹 뉴런 모델 및 그의 스파이크 생성 방법을 제공하고자 한다. In addition, in order to solve the above problem, the present invention stably changes the weight of the synapse by making the probability of integration in all sections of the tail (+) of the spike equal when integrating the spike that has passed through the synapse. An object of the present invention is to provide a spiking neuron model and a method for generating spikes thereof.

또한, 본 발명은 시냅스의 웨이트 변화량 그래프를 이상적인 것에 가깝게 만드는 뉴런(neuron) 모델 및 그의 스파이크 생성 방법을 제공하고자 한다.In addition, an object of the present invention is to provide a neuron model and a method for generating spikes thereof that make a graph of the amount of change in weight of a synapse close to an ideal one.

상기 목적을 달성하기 위해, 본 발명에서 제공하는 스파이킹 뉴런 모델은 다수의 시냅스(synapse)들을 통해 다수의 프리-뉴런(pre-neuron)들과 다수의 포스트-뉴런(post-neuron)들이 연결되고, 상기 시냅스가 프리-뉴런(pre-neuron)에서 생성된 스파이크를 포스트-뉴런(post-neuron)으로 전달하는 스파이킹 뉴럴 네트워크(SNN)의 스파이킹 뉴런 모델(Spiking Neuron Model)에 있어서, 상기 다수의 시냅스들로부터 전달된 스파이크들 각각에 대하여 상기 시냅스들 각각에 설정된 웨이트의 크기에 따라 서로 다른 전류를 출력하는 전처리 증폭기; 상기 전처리 증폭기를 통한 스파이크를 미분하여 테일(tail)(+)만 포함하는 스텝-함수(step-function)를 생성하는 미분기; 상기 미분기에서 미분된 스파이크를 적분하는 적분기; 상기 적분기의 출력값과 미리 설정된 임계치(Vth)를 비교하여 상기 적분기의 출력값이 상기 임계치(Vth)를 초과하는 경우 파이어(Fire) 신호를 출력하는 비교기; 및 상기 비교기에서 파이어(Fire) 신호가 출력되면 스파이크를 생성하여 상기 시냅스의 웨이트를 조정하는 스파이크 생성기를 포함하는 것을 특징으로 한다. In order to achieve the above object, the spiking neuron model provided by the present invention is a plurality of pre-neurons and a plurality of post-neurons through a plurality of synapses are connected and , In the spiking neuron model of a spiking neural network (SNN) in which the synapse transmits a spike generated in a pre-neuron to a post-neuron, the plurality of a preprocessing amplifier for outputting different currents according to the magnitude of the weight set for each of the synapses for each of the spikes transmitted from the synapses; a differentiator for differentiating the spike through the pre-amplifier to generate a step-function including only a tail (+); an integrator for integrating the spike differentiated in the differentiator; When compared to the output value with a preset threshold value (V th) of said integrator to an output value of the integrator exceeds the threshold value (V th) a comparator for outputting a fire (Fire) signal; and a spike generator configured to adjust the weight of the synapse by generating a spike when a Fire signal is output from the comparator.

바람직하게는, 상기 스파이킹 뉴런 모델은 상기 다수의 시냅스들로부터 전달된 스파이크로부터 테일(tail)(-)를 제거하고, 테일(tail)(+)만을 상기 전처리 증폭기로 전달하는 다이오드부를 더 포함할 수 있다. Preferably, the spiking neuron model further comprises a diode unit that removes a tail (-) from a spike transmitted from the plurality of synapses, and transmits only a tail (+) to the pre-amplifier. can

바람직하게는, 상기 미분기는 상기 다수의 시냅스에서 전달된 스파이크의 차수에 따라 미분기의 개수를 결정할 수 있다. Preferably, the differentiator may determine the number of differentiators according to the order of the spikes transmitted from the plurality of synapses.

바람직하게는, 상기 미분기는 상기 다수의 시냅스에서 전달된 스파이크의 차수가 n차 함수인 경우, n개의 미분기를 포함할 수 있다. Preferably, the differentiator may include n differentiators when the order of the spikes transmitted from the plurality of synapses is an nth-order function.

바람직하게는, 상기 적분기는 상기 비교기의 파이어(Fire) 신호에 응답하여 적분을 중단하고, 상기 스파이크 생성기에서 스파이크를 생성하는 시간동안 상기 적분 중단을 유지할 수 있다. Preferably, the integrator may stop the integration in response to a Fire signal of the comparator, and maintain the integration stop for a time during which the spike generator generates a spike.

또한, 상기 목적을 달성하기 위해, 본 발명에서 제공하는 스파이킹 뉴런 모델의 스파이크 생성 방법은 스파이킹 뉴럴 네트워크(SNN)에서 다수의 시냅스(synapse)들을 통해 스파이크를 전달받는 스파이킹 뉴런 모델(Spiking Neuron Model)의 스파이크 생성 방법에 있어서, 상기 다수의 시냅스들로부터 전달된 스파이크를 미분하여 스텝-함수로 변경하는 미분단계; 상기 변경된 스파이크를 적분하는 적분단계; 상기 적분결과를 미리 설정된 임계치(Vth)와 비교하여 상기 적분결과가 상기 임계치(Vth)를 초과하는 경우 파이어(Fire) 신호를 출력하는 비교단계; 및 상기 파이어(Fire) 신호가 출력되면 스파이크를 생성하여 상기 시냅스의 웨이트를 조정하는 스파이크 생성 단계를 포함하는 것을 특징으로 한다. In addition, in order to achieve the above object, the method for generating a spike of a spiking neuron model provided by the present invention is a spiking neuron model that receives a spike through a plurality of synapses in a spiking neural network (SNN). Model) in the spike generation method, a differentiation step of differentiating the spikes transmitted from the plurality of synapses and changing it into a step-function; an integration step of integrating the changed spike; a comparison step of comparing the integration result with a preset threshold value (V th ) and outputting a Fire signal when the integration result exceeds the threshold value (V th ); and generating a spike when the Fire signal is output to adjust the weight of the synapse.

바람직하게는, 상기 방법은 상기 다수의 시냅스들로부터 전달된 스파이크로부터 테일(tail)(-)를 제거하는 전처리 단계를 더 포함할 수 있다. Preferably, the method may further include a pre-processing step of removing a tail (-) from the spike transmitted from the plurality of synapses.

바람직하게는, 상기 미분단계는 상기 다수의 시냅스에서 전달된 스파이크의 차수에 따라 미분 횟수를 결정할 수 있다. Preferably, the differentiation step may determine the number of differentiation according to the order of the spikes transmitted from the plurality of synapses.

바람직하게는, 상기 미분단계는 상기 다수의 시냅스에서 전달된 스파이크가 n차 함수인 경우, 상기 미분 단계를 n번 반복할 수 있다. Preferably, in the differentiation step, when the spike transmitted from the plurality of synapses is an nth-order function, the differentiation step may be repeated n times.

바람직하게는, 상기 적분단계는 상기 비교단계의 파이어(Fire) 신호에 응답하여 적분을 중단하고, 상기 스파이크 생성 단계에서 스파이크를 생성할 수 있다.Preferably, in the integrating step, the integration may be stopped in response to the Fire signal of the comparing step, and a spike may be generated in the spike generating step.

본 발명에서 제공하는 스파이킹 뉴런 모델 및 그의 스파이크 생성 방법은 시냅스를 통과한 스파이크를 적분할 때, 해당 스파이크의 테일(tail)(-)를 제외하고 테일(tail)(+)만 처리할 수 있도록 함으로써, 적분이 반대로 이루어지지 않도록 하는 장점이 있다. 또한, 본 발명은 시냅스를 통과한 스파이크를 적분할 때, 해당 스파이크의 테일(tail)(+) 모든 구간에서 적분되는 확률이 같도록 함으로써, 시냅스의 웨이트를 안정적으로 변화시킬 수 있는 장점이 있다. 이로 인해, 본 발명은 시냅스의 웨이트 변화량 그래프를 이상적인 것에 가깝게 만듦으로써, 실제 생체의 뉴런(neuron)과 유사한 뉴런(neuron) 모델을 제공하고, 이로 인해, 안정적으로 동작하는 스파이킹 뉴럴 네트워크(SNN:Spiking Neural Network)를 제공할 수 있다.The spiking neuron model and the method for generating a spike thereof provided in the present invention are such that, when integrating a spike that has passed through a synapse, only the tail (+) can be processed, excluding the tail (-) of the corresponding spike. By doing so, there is an advantage in that the integration is not reversed. In addition, the present invention has the advantage of stably changing the weight of the synapse by making the probability of integration in all the tail (+) sections of the corresponding spike the same when integrating the spike that has passed through the synapse. For this reason, the present invention provides a neuron model similar to a neuron in a real body by making the weight change graph of the synapse close to the ideal, and thereby, a spiking neural network that operates stably (SNN: Spiking Neural Network) can be provided.

도 1a는 일반적인 스파이킹 뉴럴 네트워크를 단순화하여 도식화한 도면이다.
도 1b는 본 발명의 배경기술을 설명하기 위한 도면이다.
도 2는 종래의 일 실시 예에 따른 프리-스파이크(pre-spike) 형태에 대한 프리-스파이크(pre-spike)와 포스트-스파이크(post-spike)간의 발생 시간차에 따른 스파이크 겹침 상태를 도식화하여 나타낸 도면이다.
도 3은 프리-스파이크(pre-spike)와 포스트-스파이크(post-spike)간의 발생 시간차에 따른 시냅스의 웨이트 변화량 그래프이다.
도 4a는 종래의 다른 실시 예에 따른 프리-스파이크(pre-spike) 형태에 대한 프리-스파이크(pre-spike)와 포스트-스파이크(post-spike)간의 발생 시간차에 따른 스파이크 겹침 상태를 도식화하여 나타낸 도면이다.
도 4b는 이상적인 STDP 그래프와 도 4a에서 도시한 spike를 이용했을 때의 STDP 그래프를 비교한 것이다.
도 5는 본 발명의 일 실시 예에 따른 스파이킹 뉴런 모델에 대한 개략적인 블럭도이다.
도 6a 내지 도 6d은 본 발명의 스파이킹 뉴런 모델을 다양하게 적용한 실시예를 예시한 도면들이다.
도 7은 본 발명의 일 실시 예에 따른 스파이킹 뉴런 모델의 스파이크 생성 방법에 대한 순서도이다.
도 8a는 본 발명의 일 실시 예에 따른 프리-스파이크(pre-spike) 형태에 대한 프리-스파이크(pre-spike)와 포스트-스파이크(post-spike)간의 발생 시간차에 따른 스파이크 겹침 상태를 도식화하여 나타낸 도면이다.
도 8b는 이상적인 STDP 그래프와 도 8a에서 도시한 spike를 이용했을 때의 STDP 그래프를 비교한 것이다.
1A is a simplified and schematic diagram of a general spiking neural network.
1B is a view for explaining the background of the present invention.
FIG. 2 is a schematic diagram showing a state of overlapping spikes according to a time difference between pre-spike and post-spike for a pre-spike form according to an exemplary embodiment of the related art; FIG. It is a drawing.
3 is a graph showing the amount of change in the weight of the synapse according to the generation time difference between the pre-spike and the post-spike.
4A is a schematic diagram illustrating a spike overlapping state according to a time difference between a pre-spike and a post-spike for a pre-spike form according to another exemplary embodiment; It is a drawing.
Figure 4b is a comparison of the ideal STDP graph and the STDP graph when using the spike shown in Figure 4a.
5 is a schematic block diagram of a spiking neuron model according to an embodiment of the present invention.
6A to 6D are diagrams illustrating an embodiment in which the spiking neuron model of the present invention is variously applied.
7 is a flowchart of a method for generating a spike in a spiking neuron model according to an embodiment of the present invention.
8A is a diagram illustrating the overlapping state of the spikes according to the time difference between the pre-spike and the post-spike for the pre-spike form according to an embodiment of the present invention. the drawing shown.
8B is a comparison of the ideal STDP graph and the STDP graph when the spike shown in FIG. 8A is used.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 설명하되, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 한편 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한 상세한 설명을 생략하여도 본 기술 분야의 당업자가 쉽게 이해할 수 있는 부분의 설명은 생략하였다.Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings, but it will be described in detail so that a person of ordinary skill in the art to which the present invention pertains can easily practice the present invention. However, the present invention may be embodied in various different forms and is not limited to the embodiments described herein. On the other hand, in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification. In addition, even if the detailed description is omitted, descriptions of parts that can be easily understood by those skilled in the art are omitted.

명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification and claims, when a part includes a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated.

도 5는 본 발명의 일 실시 예에 따른 스파이킹 뉴런 모델에 대한 개략적인 블록도이다. 도 5를 참조하면, 본 발명의 일 실시 예에 따른 스파이킹 뉴런 모델(300)은 전처리 증폭기(310), 미분기/반전증폭기(320), 미분기(330), 적분기(340), 비교기(350) 및 스파이크 생성기(360)를 포함한다. 5 is a schematic block diagram of a spiking neuron model according to an embodiment of the present invention. Referring to FIG. 5 , the spiking neuron model 300 according to an embodiment of the present invention includes a preprocessing amplifier 310 , a differentiator/inverting amplifier 320 , a differentiator 330 , an integrator 340 , and a comparator 350 . and a spike generator 360 .

전처리 증폭기(310)는 다수의 시냅스들(100)로부터 전달된 여러 스파이크들(spikes)의 전류를 모아서 출력한다. 즉, 전처리 증폭기(310)는 다수의 시냅스들(100)로부터 전달된 다수의 스파이크들 각각에 대하여, 시냅스들(100) 각각에 설정된 웨이트(weight)의 크기에 따라 서로 다른 전류를 다음 단계(stage)로 출력할 수 있다. 이 때, 시냅스(synapse)(100)들 각각이 하나의 저항으로 모델링되기 때문에, 전처리 증폭기(100)는 시냅스(synapse)들(100)과 하나의 증폭기(op amp)(311) 그리고 추가적인 저항(312)으로 구성될 수 있다. The preprocessing amplifier 310 collects and outputs the current of several spikes transferred from a plurality of synapses 100 . That is, the pre-processing amplifier 310 for each of the plurality of spikes transmitted from the plurality of synapses 100, the next stage (stage) different currents according to the size of the weight set in each of the synapses 100. ) can be printed. At this time, since each of the synapses 100 is modeled as a single resistor, the preprocessing amplifier 100 includes synapses 100 and one amplifier (op amp) 311 and an additional resistor ( 312) may be configured.

미분기/반전증폭기(320)는 입력되는 스파이크의 종류에 따라 선택적으로 포함된다. 예를 들어, 입력 스파이크가 2차함수인 경우, 미분기(322)가 선택되고, 그렇지 않은 경우 반전 증폭기(321)가 선택될 수 있다. The differentiator/inverting amplifier 320 is selectively included according to the type of the input spike. For example, if the input spike is a quadratic function, the differentiator 322 may be selected, otherwise the inverting amplifier 321 may be selected.

미분기(330)는 전처리 증폭기(310)를 통한 스파이크를 미분한다. 특히, 미분기(330)는 입력 스파이크의 테일(tail)(+)만 포함하는 스텝-함수(step-function)를 생성한다. 이 때, 미분기(330)는 다수의 시냅스(100)에서 전달된 스파이크의 테일(tail)(+)의 차수에 따라 미분기의 개수를 결정할 수 있다. 즉, 미분기(330)는 다수의 시냅스(100)에서 전달된 스파이크의 테일(tail)(+)의 차수가 n차 함수인 경우, n개의 미분기를 포함할 수 있다. 예를 들어, 다수의 시냅스(100)에서 전달된 스파이크의 테일(tail)(+)의 차수가 2차 함수인 경우 2개의 미분기를 포함하고, 다수의 시냅스(100)에서 전달된 스파이크의 테일(tail)(+)의 차수가 1차 함수인 경우 1개의 미분기를 포함할 수 있다. 이를 위해, 미분기(330)는 증폭기(op amp)(331), 커패시터(capacitor)(332), 및 저항(resistor)(333)을 포함할 수 있다. Differentiator 330 differentiates the spike through preprocessor amplifier 310 . In particular, the differentiator 330 generates a step-function including only the tail (+) of the input spike. At this time, the differentiator 330 may determine the number of differentiators according to the order of the tail (+) of the spike transmitted from the plurality of synapses 100 . That is, the differentiator 330 may include n differentiators when the order of the tail (+) of the spike transmitted from the plurality of synapses 100 is an nth-order function. For example, when the order of the tail (+) of the spike transmitted from a plurality of synapses 100 is a quadratic function, it includes two differentiators, and the tail of the spike transmitted from a plurality of synapses 100 ( If the order of tail)(+) is a linear function, one differentiator may be included. To this end, the differentiator 330 may include an amplifier (op amp) 331 , a capacitor 332 , and a resistor 333 .

적분기(340)는 미분기(330)에서 미분된 스파이크를 적분한다. 특히, 적분기(340)는 비교기(350)의 파이어(Fire) 신호에 응답하여 적분을 중단한다. 그리고, 스파이크 생성기(360)에서 스파이크를 생성하는 시간동안 계속 적분 중단을 유지한다. 이를 위해, 적분기(340)는 증폭기(op amp)(341), 커패시터(capacitor)(342), 및 저항(resistor)(343)를 포함할 수 있다. 또한, 적분기(340)는 상기 파이어(Fire) 신호에 의해 온/오프가 조절되는 스위치(344)를 더 포함하여, 스위치(344)가 ‘온’일 때 적분을 실시하고, ‘오프’일 때 적분을 중단하도록 제어할 수 있다.The integrator 340 integrates the spike differentiated by the differentiator 330 . In particular, the integrator 340 stops integrating in response to a Fire signal of the comparator 350 . Then, the integration stop is continuously maintained during the time the spike generator 360 generates the spike. To this end, the integrator 340 may include an amplifier (op amp) 341 , a capacitor 342 , and a resistor 343 . In addition, the integrator 340 further includes a switch 344 whose on/off is controlled by the Fire signal, and performs integration when the switch 344 is 'on', and when 'off' It can be controlled to stop the integration.

비교기(350)는 미리 설정된 임계치(Vth)를 저장하고, 적분기(340)의 출력값과 상기 임계치(Vth)를 비교한다. 그리고, 적분기(340)의 출력값이 상기 임계치(Vth)를 초과하는 경우 파이어(Fire) 신호를 출력한다. The comparator 350 stores the preset threshold (V th), and compares the output value and the threshold value (V th) of the integrator 340. In addition, when the output value of the integrator 340 exceeds the threshold V th , a Fire signal is output.

스파이크 생성기(360)는 비교기(350)에서 파이어(Fire) 신호가 출력되면 스파이크를 생성한다. 그리고, 그 스파이크를 피드백(feedback)하여 시냅스들(100)의 웨이트를 조정한다. The spike generator 360 generates a spike when a Fire signal is output from the comparator 350 . Then, the spike is fed back to adjust the weight of the synapses 100 .

한편, 상기 스파이킹 뉴런 모델은 다이오드부(200)를 더 포함할 수 있는데, 다이오드부(200)는 다수의 시냅스들(100)로부터 전달된 스파이크로부터 테일(tail)(-)를 제거하고, 테일(tail)(+)만을 전처리폭기(310)로 전달한다. 이는 적분기(340)에서 스파이크를 적분 할 때 여러개의 스파이크가 겹치게 되면, 적분이 반대로 될 수 있는 오류를 줄이기 위함이다. Meanwhile, the spiking neuron model may further include a diode unit 200 , wherein the diode unit 200 removes a tail (-) from a spike transmitted from a plurality of synapses 100 , and Only (tail) (+) is delivered to the pre-aerator 310 . This is to reduce an error in which the integration may be reversed if several spikes overlap when integrating the spikes in the integrator 340 .

도 6a 내지 도 6d은 본 발명의 스파이킹 뉴런 모델을 다양하게 적용한 실시예를 예시한 도면들이다. 6A to 6D are diagrams illustrating an embodiment in which the spiking neuron model of the present invention is variously applied.

먼저, 도 6a는 3-터미널인 시냅스(100a)를 통해 ‘테일(tail)(+)’과 ‘테일(tail)(-)’이 모두 램프함수(ramp function)인 제1 프리-스파이크(pre-spike)(P1)가 전달되는 경우의 예(이하, ‘제1 실시예’라 칭함)를 도시한 도면이다. 도 6a를 참조하면, 제1 실시예에서 상기 제1 프리-스파이크(pre-spike)(P1)는 시냅스(synapse)(100a)를 거친 후에 다이오드(diode)(200a)를 통과하는 과정에서 테일(tail)(-)가 소멸되고, 테일(tail)(+)만 뉴런(Neuron)(300a)으로 들어오게 된다. 그리고, 상기 테일(tail)(+)만 남게된 프리-스파이크(pre-spike)(P1)는 전처리 증폭기(310a) 및 반전 증폭기(320a)를 거쳐 미분기(330a)로 전달된다. 그러면, 미분기(330a)는 이를 미분해서, 램프 함수(ramp function)인 테일(tail)(+)를 스텝 함수(step function)(일명, 구형파)으로 바꾼다. 적분기(340a)에서는, 이렇게 미분기(330a)를 거쳐 나온 스텝 함수(step function)을 적분한다. 이때, 적분기(340a)는 상기 스텝 함수(step function)로 변형된 신호를 적분함으로써, 테일(tail)(+)내에서 모든 시간 동안 파이어(fire)가 될 확률이 같아지게 되는 것이다. First, FIG. 6a shows a first pre-spike in which both 'tail (+)' and 'tail (-)' are ramp functions through the 3-terminal synapse 100a. -spike) (P1) is a diagram illustrating an example (hereinafter, referred to as a 'first embodiment'). Referring to FIG. 6A , in the first embodiment, the first pre-spike P1 passes through a synapse 100a and then passes through a diode 200a. tail) (-) disappears, and only tail (+) enters the neuron 300a. In addition, the pre-spike P1 with only the tail (+) remaining is transferred to the differentiator 330a through the pre-processing amplifier 310a and the inverting amplifier 320a. Then, the differentiator 330a differentiates it, and changes tail (+), which is a ramp function, into a step function (aka, square wave). The integrator 340a integrates the step function output through the differentiator 330a in this way. At this time, the integrator 340a integrates the signal transformed by the step function, so that the probability of being fired for all times within the tail (+) becomes the same.

한편, 집적회로에서의 미분기는 증폭기(amp)의 입력단(input)쪽에 커패시터(capacitor)가 있는데 이 구조로는 시냅스(synapse)에서 스파이크를 직접 받을 수가 없다. 이는 시냅스(Synapse)의 웨이트(weight)에 따라 다른 크기의 전류(current)를 받아야 하기 때문이다. 따라서 포스트-뉴런(post neuron)의 입력단(front-end)에 추가적인 회로를 붙여서 여러 스파이크를 들어오는 시간에 상관없이 시냅스(synapse)의 웨이트(weight)에 따라 전류(current)의 크기를 다르게 받을 수 있게 해야 한다. 이러한 방법은, 적분할 때 테일(tail)(-)를 무시하기 위해 다이오드(diode)를 사용해야 하기 때문에 2-터미널 시냅스(2-terminal synapse) 장치(device)에서는 사용할 수 없고 3-터미널 시냅스(3-terminal synapse) 장치(device)에서만 사용 가능하다.On the other hand, the differentiator in the integrated circuit has a capacitor at the input side of the amplifier (amp), and with this structure, a spike at a synapse cannot be directly received. This is because a different magnitude of current must be received according to the weight of the synapse. Therefore, by attaching an additional circuit to the front-end of the post-neuron, the size of the current can be received differently depending on the weight of the synapse, regardless of the time when multiple spikes are received. Should be. This method cannot be used in a 2-terminal synapse device because a diode must be used to ignore the tail (-) when integrating, and the 3-terminal synapse (3) -terminal synapse) Available only on device.

도 6b 내지 도 6d는 ‘테일(tail)(+)’이 2차함수이고, ‘테일(tail)(-)’이 램프함수(ramp function)인 제2 프리-스파이크(pre-spike)(P2)가 전달되는 경우의 예들을 도시한 도면들로서, 상기 제2 프리-스파이크(pre-spike)(P2)가 전달되고, 시냅스의 종류 또는 주변 장치의 구성이 다른 경우의 예들을 도시한 도면들이다.6B to 6D show a second pre-spike (P2) in which 'tail (+)' is a quadratic function and 'tail (-)' is a ramp function. ) is a diagram showing examples of a case in which the second pre-spike (P2) is transmitted, and the types of synapses or configurations of peripheral devices are different.

도 6b는 3-터미널인 시냅스(100b)를 통과한 상기 제2 프리-스파이크(pre-spike)(P2)가 다이오드(200b)를 통해 전처리 증폭기(310b)로 전달되는 경우의 예(이하, ‘제2 실시예’라 칭함)를 도시하고, 도 6c는 3-터미널인 시냅스(100c)를 통과한 상기 제2 프리-스파이크(pre-spike)(P2)가 다이오드를 통하지 않고, 전처리 증폭기(310c)로 전달되는 경우의 예(이하, ‘제3 실시예’라 칭함)를 도시하고, 도 6d는 2-터미널인 시냅스(100d)를 통과한 상기 제2 프리-스파이크(pre-spike)(P2)가 별도의 장치(예컨대, 스위치 등)(400d)를 통해 전처리 증폭기(310d)로 전달되는 경우의 예(이하, ‘제4 실시예’라 칭함)를 도시하고 있다. 6b is an example of a case in which the second pre-spike (P2) passing through the 3-terminal synapse 100b is transmitted to the pre-amplifier 310b through the diode 200b (hereinafter, ' Referring to the second embodiment '), FIG. 6c shows that the second pre-spike (P2) passing through the synapse 100c, which is a three-terminal, does not pass through a diode, and the preprocessing amplifier 310c ) shows an example (hereinafter, referred to as the 'third embodiment') in the case of being transferred, and Figure 6d is the second pre-spike (pre-spike) (P2) that has passed through the 2-terminal synapse 100d. ) is transmitted to the preprocessing amplifier 310d through a separate device (eg, a switch, etc.) 400d (hereinafter, referred to as a 'fourth embodiment') is shown.

이 때, 상기 제2 프리-스파이크(pre-spike)(P2)는, Δt=0 부근에서도 STDP 그래프가 잘 나오게 할 수 있는 또 다른 스파이크의 모양이다. 즉, 상기 제2 프리-스파이크(pre-spike)(P2)는 상기 제1 프리-스파이크(pre-spike)(P1)와 마찬가지로 스파이크가 겹쳤을 때 Δt의 크기가 커질수록 시냅스(synapse) 양단에 걸리는 전압은 작아지고, 이에 따라 웨이트(weight)의 변화량이 작아진다. 상기 제1 프리-스파이크(pre-spike)(P1)와 다른 점은 스파이크의 테일(tail)(+)가 램프-함수(ramp function)가 아닌 2차 함수로 이루어져 있다는 것이다. At this time, the second pre-spike P2 is another spike shape that can make the STDP graph come out well even in the vicinity of Δt=0. That is, the second pre-spike (P2), like the first pre-spike (P1), when the spikes overlap, as the size of Δt increases, at both ends of the synapse The applied voltage becomes smaller, and accordingly, the amount of change in the weight becomes smaller. The difference from the first pre-spike P1 is that the tail (+) of the spike is not a ramp function but a quadratic function.

따라서, 상기 제2 프리-스파이크(pre-spike)(P2)를 이용하면 시냅스 이후에 다이오드(diode)를 이용하지 않아도 된다. 특히, 도 6b 및 도 6c의 예에서와 같이, 3-터미널 시냅스(3-terminal synapse)에서는 다이오드(diode)가 꼭 필요하지는 않다. 예를 들어, 도 6b의 예에서는 다이오드(200b)를 포함하고, 시냅스(100b)를 통과한 제2 프리-스파이크(pre-spike)(P2)가 다이오드(200b)를 거쳐 전처리 증폭기(310b)로 전달되는 경우를 예시하고 있지만, 도 6c에서와 같이 시냅스(100c)를 통과한 제2 프리-스파이크(pre-spike)(P2)가 다이오드를 거치지 않고 바로 전처리 증폭기(310c)로 전달되어도 무관하다. 대신 전처리 증폭기(310b 또는 310c)를 거친 이후에 미분을 한 번이 아닌 두 번을 한다. 즉, 도 6b에 예시된 제2 실시예에서는, 다이오드(200b)를 거치면서, 상기 제2 프리-스파이크(pre-spike)(P2)의 ‘테일(tail)(-)’이 소멸되므로, 2개의 미분기(320b 및 330b)를 거치면서, 테일(tail)(+)만을 포함하는 스텝 함수(step function)가 출력되고, 도 6c에 예시된 제3 실시예에서는, 상기 제2 프리-스파이크(pre-spike)(P2)가 제1 미분기(320c)를 거치면서, 2차 함수인 ‘테일(tail)(+)’이 램프 함수가 되고, 램프함수인 ‘테일(tail)(-)’이 스텝 함수가 된다. 또한, 제2 미분기(330c)를 거치면서는 상기 램프함수인 ‘테일(tail)(+)’이 스텝 함수가 되고, 스텝 함수인 ‘테일(tail)(-)’이 ‘0’이 된다. 결과적으로, 상기 제2 프리-스파이크(pre-spike)(P2)가 제1 및 제2 미분기(320c 및 330c)를 거치면서 ‘테일(tail)(+)’만 포함하는 스텝 함수로 변형된다. Therefore, if the second pre-spike (P2) is used, there is no need to use a diode after synapse. In particular, as in the example of FIGS. 6B and 6C , a diode is not necessarily required in a 3-terminal synapse. For example, in the example of Figure 6b, including a diode 200b, the second pre-spike (P2) that has passed through the synapse 100b is passed through the diode 200b to the preprocessing amplifier 310b. Although the case of transmission is illustrated, the second pre-spike (P2) that has passed through the synapse 100c as in FIG. 6c does not pass through the diode and is directly transmitted to the preprocessing amplifier 310c. Instead, the differentiation is performed twice instead of once after passing through the preprocessing amplifier 310b or 310c. That is, in the second embodiment illustrated in FIG. 6B , the 'tail (-)' of the second pre-spike P2 disappears while passing through the diode 200b, so 2 While passing through the differentiators 320b and 330b, a step function including only a tail (+) is output, and in the third embodiment illustrated in FIG. 6C , the second pre-spike (pre) is output. -spike)(P2) goes through the first differentiator 320c, the quadratic function 'tail(+)' becomes a ramp function, and the ramp function 'tail(-)' becomes a step become a function In addition, while passing through the second differentiator 330c, the ramp function 'tail(+)' becomes a step function, and the step function 'tail(-)' becomes '0'. As a result, the second pre-spike P2 is transformed into a step function including only a 'tail (+)' while passing through the first and second differentiators 320c and 330c.

이와 같이 미분기를 두 번 거친 이후에 적분을 하면, 도 6b 및 도 6c의 적분기(340b 및 340c)에서는 테일(tail)(+)만 적절하게 적분이 된다. If integration is performed after the differentiator is performed twice as described above, only the tail (+) is properly integrated in the integrators 340b and 340c of FIGS. 6B and 6C.

이 때, 다이오드(Diode)를 사용하면 테일(tail)(-)를 쉽게 없앨 수는 있지만 테일(tail)(+)내에서 적분되는 크기를 같게 하기 위해서는 다이오드(diode)가 있을 때에도 미분기가 2개 필요하다. At this time, if a diode is used, the tail (-) can be easily eliminated, but in order to equalize the size integrated within the tail (+), even when there is a diode, there are two differentiators. need.

2-터미널 시냅스(2-terminal synapse)(100d)를 포함하는, 도 6d의 경우에도, 미분기를 2번 거치면서, 제2 프리-스파이크(pre-spike)(P2)가 제1 및 제2 미분기(320d 및 330d)를 거치면서 ‘테일(tail)(+)’만 포함하는 스텝 함수로 변형된다.Even in the case of Figure 6d, including the 2-terminal synapse (100d), the second pre-spike (P2) is the first and the second differentiator while passing through the differentiator twice. While passing through (320d and 330d), it is transformed into a step function including only a 'tail (+)'.

도 7은 본 발명의 일 실시 예에 따른 스파이킹 뉴런 모델의 스파이크 생성 방법에 대한 순서도이다. 도 5 및 도 7을 참조하면, 본 발명의 일 실시 예에 따른 스파이킹 뉴런 모델의 스파이크 생성 방법은 스파이킹 뉴럴 네트워크(SNN)에서 다수의 시냅스(synapse)들을 통해 스파이크를 전달받는 스파이킹 뉴런 모델(Spiking Neuron Model)의 스파이크 생성 방법에 있어서, 단계 S110에서, 다이오드(200)가 상기 다수의 시냅스들로부터 전달된 스파이크로부터 테일(tail)(-)를 제거한다. 단계 S120에서는, 단계 S110을 거친 입력 스파이크를 구형파로 변경한다. 즉, 단계 S120에서는, 미분기(330)가 테일(tail)(-)가 제거된 스파이크를 미분하여 스텝-함수(일명, 구형타)로 변경한다. 이 때, 단계 S120은, 상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)의 차수에 따라 미분 횟수를 결정하는 것이 바람직하다. 즉, 단계 S120에서는, 상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)가 n차 함수인 경우, 상기 미분 단계를 n번 반복할 수 있다. 예를 들어, 상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)가 2차 함수인 경우, 상기 미분 단계를 2번 반복한다. 7 is a flowchart of a method for generating a spike in a spiking neuron model according to an embodiment of the present invention. 5 and 7 , in the method for generating a spike of a spiking neuron model according to an embodiment of the present invention, a spiking neuron model that receives a spike through a plurality of synapses in a spiking neural network (SNN) In the spike generation method of (Spiking Neuron Model), in step S110, the diode 200 removes a tail (-) from the spike transmitted from the plurality of synapses. In step S120, the input spike passed through step S110 is changed to a square wave. That is, in step S120, the differentiator 330 differentiates the spike from which the tail (-) has been removed and changes it to a step-function (aka, spherical stroke). At this time, in step S120, it is preferable to determine the number of differentiations according to the order of the tail (+) of the spike transmitted from the plurality of synapses. That is, in step S120, when the tail (+) of the spike transmitted from the plurality of synapses is an nth-order function, the differentiation step may be repeated n times. For example, when the tail (+) of the spike transmitted from the plurality of synapses is a quadratic function, the differentiation step is repeated twice.

단계 S130에서는, 적분기(340)가 상기 변경된 스파이크를 적분하고, 단계 S140에서는, 비교기(350)가 상기 적분결과를 미리 설정된 임계치(Vth)와 비교한다. 상기 단계 S140에서, 상기 적분결과가 상기 임계치(Vth)를 초과하는 것으로 판단된 경우, 단계 S150에서, 비교기(350)는 파이어(Fire) 신호를 출력하고, 단계 S160에서, 스파이크 생성기(360)는 스파이크를 생성하여 상기 시냅스의 웨이트를 조정한다. In step S130 , the integrator 340 integrates the changed spike, and in step S140 , the comparator 350 compares the integration result with a preset threshold V th . When it is determined in step S140 that the integration result exceeds the threshold V th , in step S150 , the comparator 350 outputs a Fire signal, and in step S160 , the spike generator 360 . adjusts the weight of the synapse by generating a spike.

한편, 상기 단계 S150에서 파이어(Fire) 신호를 출력하면, 적분기(340)는 상기 파이어(Fire) 신호에 응답하여 적분을 중단하고, 상기 단계 S160에서 생성하는 시간동안 상기 적분 중단을 유지하는 것이 바람직하다. On the other hand, if a Fire signal is output in step S150, the integrator 340 stops integration in response to the Fire signal, and it is preferable to maintain the integration stop during the time generated in step S160. Do.

도 8a는 본 발명의 일 실시 예에 따른 프리-스파이크(pre-spike) 형태에 대한 프리-스파이크(pre-spike)와 포스트-스파이크(post-spike)간의 발생 시간차에 따른 스파이크 겹침 상태를 도식화하여 나타낸 도면이다. 즉, 도 8a는 프리-스파이크(pre-spike)의 ‘테일(tail)(+)’은 2차 함수이고, ‘테일(tail)(-)’은 램프함수(ramp function)인 경우의 예이다. 일 실시예에 따르면 도 8a의 a 그래프는 Δt가 양수이면서 작을 때일 수 있으며, b 그래프는 Δt가 양수이면서 Δt가 클 때(다만, Δt가 tail+보다 작을 때)일 수 있고, c 그래프는 Δt가 양수이고 Δt가 tail+보다 클 때일 수 있으며, d 그래프는 Δt가 음수일 때일 수 있다. 도 8a에 따르면 c의 경우(즉, Δt가 tail+보다 클 때)는 pre spike와 post spike가 일부 겹쳐지기는 하지만 시냅스에 걸리는 전압이 충분히 크지 못해 웨이트가 변하지 않을 수 있다.(즉, 노란색 영역이 존재하지 않는다.) 한편 a와 b의 경우 웨이트가 증가하는 것을 확인할 수 있으며, a의 경우가 b의 경우보다 Δt가 작으므로 ΔW는 클 수 있다. 한편, 도 8a에서 시냅스의 웨이트 변화는 시냅스에 걸리는 전압의 크기가 지속시간(노란색 영역)보다 dominant하다고 가정했다. 도 8a에서 지속시간은 b의 경우가 a의 경우보다 더 크지만 시냅스에 걸리는 전압의 크기는 a의 경우가 b의 경우보다 더 크므로 생물학적인 STDP 그래프를 따라갈 수 있음을 확인할 수 있다.8A is a diagram illustrating the overlapping state of the spikes according to the time difference between the pre-spike and the post-spike for the pre-spike form according to an embodiment of the present invention. the drawing shown. That is, FIG. 8A is an example of a case in which 'tail (+)' of a pre-spike is a quadratic function and 'tail (-)' is a ramp function. . According to an embodiment, graph a of FIG. 8A may be when Δt is positive and small, graph b may be when Δt is positive and Δt is large (however, when Δt is smaller than tail+), and graph c shows that Δt is It may be positive and Δt may be greater than tail+, and the d graph may be when Δt is negative. According to FIG. 8a, in case c (that is, when Δt is greater than tail+), the pre spike and the post spike partially overlap, but the voltage applied to the synapse is not large enough, so the weight may not change. On the other hand, in the case of a and b, it can be seen that the weight increases, and since Δt is smaller in case of a than in case of b, ΔW may be large. On the other hand, it is assumed that the magnitude of the voltage applied to the synapse is dominant over the duration (yellow region) for the change in the weight of the synapse in FIG. 8A . In FIG. 8a, the duration of b is larger than that of a, but the magnitude of the voltage applied to the synapse is greater in case a than in case b, so it can be confirmed that the biological STDP graph can be followed.

도 8a을 참조하면, 프리-스파이크(pre-spike)와 포스트 스파이크(post-spike)가 겹쳤을 때 Δt의 크기가 커질수록 시냅스(synapse) 양단에 걸리는 전압은 작아지게 된다. 따라서, Δt의 크기가 커질수록 웨이트(weight)의 변화량(ΔW)이 작아지게 된다. 즉, 도 8에 예시된 바와 같은 스파이크를 사용하는 경우, Δt의 크기가 커질수록 웨이트(weight)의 변화량(ΔW)도 함께 커지는 문제를 해결할 수 있다. 또한, 이 경우 도 6a 내지 도 6d를 참조한 설명에서 언급한 바와 같이, 적분기에서, 스텝 함수(step function)로 변형된 신호를 적분함으로써, 테일(tail)(+)내에서 모든 시간 동안 파이어(fire)가 될 확률이 같아진다. 따라서, 본 발명을 이용할 경우 시냅스의 웨이트를 안정적으로 변화시킬 수 있는 장점이 있다. 즉, 도 8a에서 도시하고 있는 스파이크를 따를 경우 시냅스에 추가적인 다이오드를 만들 필요 없이 CMOS 뉴런모델의 미분기반으로 스파이크를 처리(leaky integration & fire)할 수 있다.Referring to FIG. 8A , when the pre-spike and the post-spike overlap, the voltage across the synapse decreases as the magnitude of Δt increases. Accordingly, as the magnitude of Δt increases, the change amount ΔW of the weight decreases. That is, when the spike as illustrated in FIG. 8 is used, it is possible to solve the problem that as the size of Δt increases, the change amount ΔW of the weight also increases. In addition, in this case, as mentioned in the description with reference to FIGS. 6A to 6D , by integrating the transformed signal with a step function in the integrator, fire is fired for all times within the tail (+). ) is equally probable. Therefore, when the present invention is used, there is an advantage that the weight of the synapse can be changed stably. That is, when following the spike shown in FIG. 8A, the spike can be processed (leaky integration & fire) based on the differentiation of the CMOS neuron model without the need to make an additional diode at the synapse.

도 8b는 이상적인 STDP 그래프와 도 8a에서 도시한 spike를 이용했을 때의 STDP 그래프를 비교한 것이다. 도 8b에서 a, b, c, d로 표시한 영역은 도 8a의 a, b, c, d 경우에 대응되는 위치일 수 있다. 한편, 도 8b의 그래프에서 tail+는 2차 함수이므로 도 8b에서 a 위치와 b 위치에 따른 기울기는 도 4b에서 a 위치와 b 위치에 따른 기울기보다 클 수 있다. 8B is a comparison of the ideal STDP graph and the STDP graph when the spike shown in FIG. 8A is used. Regions indicated by a, b, c, and d in FIG. 8B may be positions corresponding to cases a, b, c, and d in FIG. 8A. Meanwhile, since tail+ is a quadratic function in the graph of FIG. 8B , the slope according to the position a and the position b in FIG. 8B may be greater than the slope according to the position a and the position b in FIG.

상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. In the exemplary system described above, the methods are described on the basis of a flowchart as a series of steps or blocks, but the present invention is not limited to the order of steps, and some steps may occur in a different order or concurrently with other steps as described above. can

또한, 당업자라면 순서도에 나타낸 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.In addition, those skilled in the art will understand that the steps shown in the flowchart are not exhaustive and that other steps may be included or that one or more steps in the flowchart may be deleted without affecting the scope of the present invention.

Claims (10)

다수의 시냅스(synapse)들을 통해 다수의 프리-뉴런(pre-neuron)들과 다수의 포스트-뉴런(post-neuron)들이 연결되고, 상기 시냅스가 프리-뉴런(pre-neuron)에서 생성된 스파이크(spile)를 포스트-뉴런(post-neuron)으로 전달하는 스파이킹 뉴럴 네트워크(SNN)의 스파이킹 뉴런 모델(Spiking Neuron Model)에 있어서,
상기 다수의 시냅스들로부터 전달된 스파이크들 각각에 대하여 상기 시냅스들 각각에 설정된 웨이트의 크기에 따라 서로 다른 전류를 출력하는 전처리 증폭기;
상기 전처리 증폭기를 통한 스파이크를 미분하여 테일(tail)(+)만 포함하는 스텝-함수(step-function)를 생성하는 미분기;
상기 미분기에서 미분된 스파이크를 적분하는 적분기;
상기 적분기의 출력값과 미리 설정된 임계치(Vth)를 비교하여 상기 적분기의 출력값이 상기 임계치(Vth)를 초과하는 경우 파이어(Fire) 신호를 출력하는 비교기; 및
상기 비교기에서 파이어(Fire) 신호가 출력되면 스파이크를 생성하여 상기 시냅스의 웨이트를 조정하는 스파이크 생성기를 포함하는 것을 특징으로 하는 스파이킹 뉴런 모델.
A plurality of pre-neurons and a plurality of post-neurons are connected through a plurality of synapses, and the synapse is a spike (pre-neuron) generated in In the spiking neuron model of the spiking neural network (SNN) that delivers the spike) to the post-neuron,
a preprocessing amplifier for outputting different currents according to the magnitude of the weight set for each of the synapses with respect to each of the spikes transmitted from the plurality of synapses;
a differentiator for differentiating the spike through the pre-amplifier to generate a step-function including only a tail (+);
an integrator for integrating the spike differentiated in the differentiator;
When compared to the output value with a preset threshold value (V th) of said integrator to an output value of the integrator exceeds the threshold value (V th) a comparator for outputting a fire (Fire) signal; and
The spiking neuron model, characterized in that it comprises a spike generator that adjusts the weight of the synapse by generating a spike when a Fire signal is output from the comparator.
제1항에 있어서,
상기 다수의 시냅스들로부터 전달된 스파이크로부터 테일(tail)(-)를 제거하고, 테일(tail)(+)만을 상기 전처리 증폭기로 전달하는 다이오드부를 더 포함하는 것을 특징으로 하는 스파이킹 뉴런 모델.
According to claim 1,
The spiking neuron model, characterized in that it further comprises a diode unit that removes a tail (-) from the spike transmitted from the plurality of synapses, and transmits only the tail (+) to the pre-amplifier.
제1항에 있어서, 상기 미분기는
상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)의 차수에 따라 미분기의 개수를 결정하는 것을 특징으로 하는 스파이킹 뉴런 모델.
The method of claim 1, wherein the differentiator
A spiking neuron model, characterized in that the number of differentiators is determined according to the order of the tail (+) of the spike transmitted from the plurality of synapses.
제3항에 있어서, 상기 미분기는
상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)의 차수가 n차 함수인 경우,
n개의 미분기를 포함하는 것을 특징으로 하는 스파이킹 뉴런 모델.
The method of claim 3, wherein the differentiator
When the order of the tail (+) of the spike transmitted from the plurality of synapses is an n-order function,
A spiking neuron model comprising n differentiators.
제1항 내지 제3항 중 어느 한 항에 있어서, 상기 적분기는
상기 비교기의 파이어(Fire) 신호에 응답하여 적분을 중단하고,
상기 스파이크 생성기에서 스파이크를 생성하는 시간동안 상기 적분 중단을 유지하는 것을 특징으로 하는 스파이킹 뉴런 모델.
The method according to any one of claims 1 to 3, wherein the integrator is
In response to the Fire signal of the comparator, the integration is stopped,
The spiking neuron model according to claim 1, wherein the integration interruption is maintained for a period of time during which the spike is generated in the spike generator.
스파이킹 뉴럴 네트워크(SNN)에서 다수의 시냅스(synapse)들을 통해 스파이크(spike)를 전달받는 스파이킹 뉴런 모델(Spiking Neuron Model)의 스파이크 생성 방법에 있어서,
상기 다수의 시냅스들로부터 전달된 스파이크를 미분하여 스텝-함수로 변경하는 미분단계;
상기 변경된 스파이크를 적분하는 적분단계;
상기 적분결과를 미리 설정된 임계치(Vth)와 비교하여 상기 적분결과가 상기 임계치(Vth)를 초과하는 경우 파이어(Fire) 신호를 출력하는 비교단계; 및
상기 파이어(Fire) 신호가 출력되면 스파이크를 생성하여 상기 시냅스의 웨이트를 조정하는 스파이크 생성 단계를 포함하는 것을 특징으로 하는 스파이킹 뉴런 모델(Spiking Neuron Model)의 스파이크 생성 방법.
In the spike generation method of a spiking neuron model receiving a spike through a plurality of synapses in a spiking neural network (SNN),
Differentiation step of differentiating the spike transmitted from the plurality of synapses and changing it into a step-function;
an integration step of integrating the changed spike;
a comparison step of comparing the integration result with a preset threshold value (V th ) and outputting a Fire signal when the integration result exceeds the threshold value (V th ); and
and a spike generating step of generating a spike when the Fire signal is output and adjusting the weight of the synapse.
제6항에 있어서,
상기 다수의 시냅스들로부터 전달된 스파이크로부터 테일(tail)(-)를 제거하는 전처리 단계를 더 포함하는 것을 특징으로 하는 스파이킹 뉴런 모델의 스파이크 생성 방법.
7. The method of claim 6,
The method for generating spikes in a spiking neuron model, characterized in that it further comprises a pre-processing step of removing a tail (-) from the spikes transmitted from the plurality of synapses.
제6항에 있어서, 상기 미분단계는
상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)의 차수에 따라 미분 횟수를 결정하는 것을 특징으로 하는 스파이킹 뉴런 모델의 스파이크 생성 방법.
7. The method of claim 6, wherein the differentiating step
A method of generating a spike in a spiking neuron model, characterized in that the number of differentiations is determined according to the order of the tail (+) of the spike transmitted from the plurality of synapses.
제8항에 있어서, 상기 미분단계는
상기 다수의 시냅스에서 전달된 스파이크의 테일(tail)(+)가 n차 함수인 경우,
상기 미분 단계를 n번 반복하는 것을 특징으로 하는 스파이킹 뉴런 모델의 스파이크 생성 방법.
The method of claim 8, wherein the differentiating step
When the tail (+) of the spike transmitted from the plurality of synapses is an nth-order function,
A method for generating spikes in a spiking neuron model, characterized in that repeating the differentiation step n times.
제6항 내지 제8항 중 어느 한 항에 있어서, 상기 적분단계는
상기 비교단계의 파이어(Fire) 신호에 응답하여 적분을 중단하고,
상기 스파이크 생성 단계에서 스파이크를 생성하는 시간동안 상기 적분 중단을 유지하는 것을 특징으로 하는 스파이킹 뉴런 모델의 스파이크 생성 방법.
The method according to any one of claims 6 to 8, wherein the integrating step is
In response to the Fire signal of the comparison step, the integration is stopped,
The method for generating a spike in a spiking neuron model, characterized in that in the step of generating a spike, the integration stop is maintained for a time for generating a spike.
KR1020190153342A 2019-11-26 2019-11-26 Spiking neuron model and method for generating spike thereof KR102431371B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190153342A KR102431371B1 (en) 2019-11-26 2019-11-26 Spiking neuron model and method for generating spike thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190153342A KR102431371B1 (en) 2019-11-26 2019-11-26 Spiking neuron model and method for generating spike thereof

Publications (2)

Publication Number Publication Date
KR20210064767A true KR20210064767A (en) 2021-06-03
KR102431371B1 KR102431371B1 (en) 2022-08-10

Family

ID=76396946

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190153342A KR102431371B1 (en) 2019-11-26 2019-11-26 Spiking neuron model and method for generating spike thereof

Country Status (1)

Country Link
KR (1) KR102431371B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023090597A1 (en) * 2021-11-18 2023-05-25 서울대학교산학협력단 Neuromorphic device for processing spike signals in parallel
WO2023211029A1 (en) * 2022-04-27 2023-11-02 서울대학교산학협력단 Neuronal circuit

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150038334A (en) * 2012-07-27 2015-04-08 퀄컴 테크놀로지스, 인크. Apparatus and methods for efficient updates in spiking neuron networks
US9082079B1 (en) * 2012-10-22 2015-07-14 Brain Corporation Proportional-integral-derivative controller effecting expansion kernels comprising a plurality of spiking neurons associated with a plurality of receptive fields
KR20150087266A (en) * 2012-11-20 2015-07-29 퀄컴 인코포레이티드 Piecewise linear neuron modeling
KR20160136364A (en) * 2014-03-24 2016-11-29 퀄컴 인코포레이티드 Cold neuron spike timing back propagation
KR20170080440A (en) * 2015-12-30 2017-07-10 에스케이하이닉스 주식회사 Methods of Updating Weight of Synapses of Neuromorphic Devices
KR20180050830A (en) * 2016-11-07 2018-05-16 에스케이하이닉스 주식회사 Neuromorphic Device Having an Error Corrector
KR20190051766A (en) * 2017-11-06 2019-05-15 삼성전자주식회사 Neuron Circuit, system and method for synapse weight learning

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150038334A (en) * 2012-07-27 2015-04-08 퀄컴 테크놀로지스, 인크. Apparatus and methods for efficient updates in spiking neuron networks
US9082079B1 (en) * 2012-10-22 2015-07-14 Brain Corporation Proportional-integral-derivative controller effecting expansion kernels comprising a plurality of spiking neurons associated with a plurality of receptive fields
KR20150087266A (en) * 2012-11-20 2015-07-29 퀄컴 인코포레이티드 Piecewise linear neuron modeling
KR20160136364A (en) * 2014-03-24 2016-11-29 퀄컴 인코포레이티드 Cold neuron spike timing back propagation
KR20170080440A (en) * 2015-12-30 2017-07-10 에스케이하이닉스 주식회사 Methods of Updating Weight of Synapses of Neuromorphic Devices
KR20180050830A (en) * 2016-11-07 2018-05-16 에스케이하이닉스 주식회사 Neuromorphic Device Having an Error Corrector
KR20190051766A (en) * 2017-11-06 2019-05-15 삼성전자주식회사 Neuron Circuit, system and method for synapse weight learning

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023090597A1 (en) * 2021-11-18 2023-05-25 서울대학교산학협력단 Neuromorphic device for processing spike signals in parallel
WO2023211029A1 (en) * 2022-04-27 2023-11-02 서울대학교산학협력단 Neuronal circuit

Also Published As

Publication number Publication date
KR102431371B1 (en) 2022-08-10

Similar Documents

Publication Publication Date Title
KR102431371B1 (en) Spiking neuron model and method for generating spike thereof
KR102230784B1 (en) Synapse circuit for spike-timing dependent plasticity(stdp) operation and neuromorphic system
Zhang et al. Supervised learning in spiking neural networks with noise-threshold
Taherkhani et al. DL-ReSuMe: A delay learning-based remote supervised method for spiking neurons
US20130151449A1 (en) Apparatus and methods for implementing learning for analog and spiking signals in artificial neural networks
US10671911B2 (en) Current mirror scheme for an integrating neuron circuit
US20040056174A1 (en) Fast phase diversity wavefront correction using a neural network
KR102288075B1 (en) Inference method and device using spiking neural network
US20090182697A1 (en) Computer-Implemented Model of the Central Nervous System
Mesnard et al. Towards deep learning with spiking neurons in energy based models with contrastive hebbian plasticity
Dupeyroux et al. A toolbox for neuromorphic perception in robotics
Feng et al. Impact of temporal variation and the balance between excitation and inhibition on the output of the perfect integrate-and-fire model
WO2007022204A9 (en) Computer-implemented model of the central nervous system
Zhang Multilayer artificial neural network design and architecture optimization for the pattern recognition and prediction of eeg signals based on henon map chaotic system
McDonald et al. Modelling retinal ganglion cells using self-organising fuzzy neural networks
Stewart et al. Spiking neurons and central executive control: The origin of the 50-millisecond cognitive cycle
Kappel et al. A synapse-centric account of the free energy principle
Rosen et al. Machine operant conditioning
US6560583B1 (en) Method and apparatus for constructing a self-adapting smart transmission device to control information transmission between elements of a network
Osawa et al. Associative Memory with Class I and II Izhikevich Model.
Raudys Survival of intelligent agents in changing environments
Alicea Allostasis Machines as Continuous Cognitive Modeling
Zhang et al. A modified supervised learning rule for training a photonic spiking neural network to recognize digital patterns
Clark et al. Temporary Memory Neuron for the Leaky Integrate and Fire Neuron Model
US11468307B2 (en) Artificial neuromorphic circuit and operation method

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right