Neuron model์˜ ์ข…๋ฅ˜

!https://github.com/jeshraghian/snntorch/blob/master/docs/_static/img/examples/tutorial2/2_1_neuronmodels.png?raw=true

  • Hodgkin-Huxley ๋‰ด๋Ÿฐ ๋ชจ๋ธ

    ์ƒ๋ฌผ๋ฌผ๋ฆฌํ•™์ ์œผ๋กœ ๊ตฌํ˜„๋œ ๋ชจ๋ธ๋กœ ์ „๊ธฐ์ƒ๋ฆฌํ•™์ (electrophysiological) ๊ฒฐ๊ณผ๋ฅผ ๋งค์šฐ ๋†’์€ ์ •ํ™•๋„๋กœ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ณต์žก์„ฑ์ด ๋†’์•„์„œ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ณ  ์žˆ์Œ

  • ์ธ๊ณต ๋‰ด๋Ÿฐ ๋ชจ๋ธ

    ์ž…๋ ฅ ๊ฐ’์€ ๊ฐ€์ค‘์น˜์™€ ๊ณฑํ•ด์ง„ ๋‹ค์Œ ํ™œ์„ฑํ™” ํ•จ์ˆ˜(Activatoin function)์— ์ „๋‹ฌ๋œ๋‹ค. ์˜ค๋Š˜๋‚  AI์—์„œ ์“ฐ์ด๊ณ  ์žˆ๋Š” ๋ถ„์•ผ๋‹ค.

  • Leaky Integrate-and-Fire (LIF) ๋‰ด๋Ÿฐ ๋ชจ๋ธ

    ์ƒ๋ฌผ๋ฌผ๋ฆฌํ•™ ๋ชจ๋ธ๊ณผ ์ธ๊ณต ๋‰ด๋Ÿฐ ๋ชจ๋ธ ๋‘ ๋ชจ๋ธ์ด ์„ž์ธ ๋ชจ๋ธ์ด๋‹ค. LIF ๋ชจ๋ธ์€ ์ž…๋ ฅ ๊ฐ’๊ณผ ๊ฐ€์ค‘์น˜์˜ ๊ณฑํ•œ ๊ฐ’์˜ ํ•ฉ์„ ๊ณ„์‚ฐํ•œ๋‹ค. ์ด๋•Œ ์ธ๊ณต ๋‰ด๋Ÿฐ ๋ชจ๋ธ๊ณผ ๋‹ฌ๋ฆฌ ์‹œ๊ฐ„์— ๋”ฐ๋ผ ์ž…๋ ฅ์„ ํ•ฉํ•˜๊ณ  ๋ˆ„์ถœ์‹œํ‚จ๋‹ค. ์ด๋•Œ ํ•ฉํ•œ ๊ฐ’์ด ์ž„๊ณ„๊ฐ’์„ ์ดˆ๊ณผํ•˜๋ฉด ์ „์•• ์ŠคํŒŒ์ดํฌ๋ฅผ ๋ฐœ์ƒํ•œ๋‹ค.

    ์ด๋•Œ ์ •๋ณด๋Š” Spike์— ์ €์žฅ๋˜์ง€ ์•Š๊ณ  Spike๊ฐ€ ๋ฐœ์ƒํ•œ ํƒ€์ด๋ฐ, ๋นˆ๋„์— ์ •๋ณด๊ฐ€ ์ €์žฅ๋œ๋‹ค.

SNNTorch LIF model ์ข…๋ฅ˜

  • Lapicqueโ€™s RC model:ย snntorch.Lapicque
  • 1st-order model:ย snntorch.Leaky
  • Synaptic Conductance-based neuron model:ย snntorch.Synaptic
  • Recurrent 1st-order model:ย snntorch.RLeaky
  • Recurrent Synaptic Conductance-based neuron model:ย snntorch.RSynaptic
  • Alpha neuron model:ย snntorch.Alpha

Leaky Integrate-and-Fire Neuron model

Spiking neuron

์šฐ๋ฆฌ์˜ ๋‡Œ๋Š” ํ•˜๋‚˜์˜ ๋‰ด๋Ÿฐ์ด ๋‹ค๋ฅธ ๋‰ด๋Ÿฐ๊ณผ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค. ์ฆ‰ ํ•˜๋‚˜์˜ ๋‰ด๋Ÿฐ์ด Spike๋ฅผ ๋ฐœ์ƒ ์‹œํ‚ค๋ฉด ์—ฐ๊ฒฐ๋œ ๋‰ด๋Ÿฐ์ด ํฅ๋ถ„ or ์–ต์ œ ๋“ฑ ์˜ํ–ฅ์„ ๋ฐ›๊ฒŒ ๋œ๋‹ค.

์ด๋•Œ ๊ฐ๊ฐ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณณ์—์„œ ์˜จ๋‹ค.

  • ๊ฐ๊ฐ ์ฃผ๋ณ€๋ถ€ (sensory periphery)
  • ๋‰ด๋Ÿฐ์„ ์ธ์œ„์ ์œผ๋กœ ์ž๊ทน - ์นจ์Šต์„ฑ ์ „๊ทน(invasive electrode), ํ˜น์€ ๋Œ€๋ถ€๋ถ„ ์ƒํ™ฉ
  • ์ „ ๋‰ด๋Ÿฐ๋“ค๋กœ ๋ถ€ํ„ฐ (pre-synaptic neurons)

    !https://github.com/jeshraghian/snntorch/blob/master/docs/_static/img/examples/tutorial2/2_2_intuition.png?raw=true

Spike๋Š” ๋งค์šฐ ์งง์€ ์ „๊ธฐ์  ์‹ ํ˜ธ์ด๊ธฐ์— ๋ชจ๋“  ์ž…๋ ฅ Spike๊ฐ€ ๋™์‹œ์— ๋„์ฐฉํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. ๋”ฐ๋ผ์„œ neuron์€ ์ด๋Ÿฌํ•œ ์‹œ๊ฐ„ ์ฐจ๋ฅผ ๊ธฐ์–ต or ์œ ์ง€ํ•˜๋ฉฐ ๋ฐ˜์‘ํ•œ๋‹ค. ์ฆ‰ ๋‰ด๋Ÿฐ์€ ์ž…๋ ฅ๋œ Spike์— ๋Œ€ํ•ด ๋ฐ”๋กœ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๊ณ  ์ง€์—ฐ๋˜๋ฉด์„œ ๋ฐ˜์‘ํ•˜๋Š” ํŠน์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

The Passive membrane

neuron์€ ์–‡์€ ๋ง‰์œผ๋กœ ๋‘˜๋Ÿฌ์‹ธ์—ฌ ์žˆ๋‹ค. ์ด๋•Œ ์ด ๋ง‰์€ ์ ˆ์—ฐ์ฒด๋กœ ์ „๋„์„ฑ ์šฉ์•ก์„ ๋‘ ๊ฐœ๋กœ ๋ถ„๋ฆฌํ•ด์„œ ์ปคํŒจ์‹œํ„ฐ ์—ญํ• ์„ ํ•œ๋‹ค.

๋˜ํ•œ ์ด์˜จ์— ๋Œ€ํ•ด ๋ถˆํˆฌ๊ณผ์„ฑ์ด๋ผ ์ด์˜จ์ด ๋“ค์–ด์˜ค๊ฑฐ๋‚˜ ๋‚˜๊ฐ€๋Š” ๊ฑธ ๋ง‰๋Š”๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋‰ด๋Ÿฐ์— ์ „๋ฅ˜๊ฐ€ ์ฃผ์ž…๋˜๋ฉด ์ฑ„๋„์˜ ๋ณ€ํ™”๋กœ ์ธํ•ด ์ด์˜จ์˜ ์ด๋™์ด ๊ฐ€๋Šฅํ•ด ์ง„๋‹ค. ์ด๋Š” ์ €ํ•ญ ์—ญํ• ์„ ํ•œ๋‹ค.

!https://github.com/jeshraghian/snntorch/blob/master/docs/_static/img/examples/tutorial2/2_3_passivemembrane.png?raw=true


LIF neuron model ์œ ๋„

์ž„์˜์˜ ์‹œ๊ฐ„์— ๋”ฐ๋ผ $I(t)$๊ฐ€ neuron์— ์ฃผ์ž…๋œ๋‹ค๊ณ  ๊ฐ€์ • ์ด๋•Œ ํ‚ค๋ฅดํžˆํ˜ธํ”„ ์ „๋ฅ˜๋ฒ•์น™(Kirchhoffโ€™s Current Law)์— ์˜๊ฑฐํ•˜์—ฌ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

\[I(t) = I_R(t)+I_C(t)\]

์ด๋•Œ ์˜ด์˜ ๋ฒ•์น™์— ์˜๊ฑฐํ•˜์—ฌ ๋‰ด๋Ÿฐ ๋‚ด๋ถ€,์™ธ๋ถ€ ๋ง‰ ์‚ฌ์ด์˜ ์ „์œ„์ฐจ $V_m(t)$๋Š” ์ €ํ•ญ์„ ํ†ตํ•ด ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

\[V_m(t)=I_R(t)R\]

์ปคํŒจ์‹œํ„ด์Šค $C$๋Š” ์ €์žฅ๋œ ์ „ํ•˜ $Q(t)$์™€ ๋ง‰ ์ „์œ„ $V_m(t)$ ์‚ฌ์ด์˜ ๋น„๋ก€์ƒ์ˆ˜ ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ „ํ™”์˜ ๋ณ€ํ™”์œจ์€ ์ปคํŒจ์‹œํ„ฐ์˜ ์ „๋ฅ˜์ด๋‹ค.

\[I_C(t)=C\cdot \frac{dV_m(t)}{dt}\]

๋”ฐ๋ผ์„œ $I(t)$์€ ์•„๋ž˜์™€ ๊ฐ™์ด ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

\[I(t) = \frac{V_m(t)}{R} + C \cdot \frac{dV_m(t)}{dt}\]

์ด๋•Œ ํšŒ๋กœ์˜ ์‹œ๊ฐ„์ƒ์ˆ˜ $\tau = RC$๋กœ $V_m(t)$ํ•จ์ˆ˜์™€ ๊ทธ ๋„ํ•จ์ˆ˜๊ฐ€ ๊ฐ™์€ ํ˜•ํƒœ๊ฐ€ ๋ ๋ ค๋ฉด ์‹œ๊ฐ„์ƒ์ˆ˜ $\tau$๋„ ์ง€์ˆ˜์ ์œผ๋กœ ๊ฐ์†Œํ•˜๋Š” ํ˜•ํƒœ๋ฅผ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ $V_m(0) = V_0$ ์ด๊ณ  ์ถ”๊ฐ€์ ์ธ ์ž…๋ ฅ์ด ์—†๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด($I(t)=0$) ๋ฏธ๋ถ„ ๋ฐฉ์ •์‹์˜ ํ•ด๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

\[V_m(t)=V_0 \cdot e^{-\frac{t}{\tau}}\]

!https://github.com/jeshraghian/snntorch/blob/master/docs/_static/img/examples/tutorial2/2_4_RCmembrane.png?raw=true


Forward Euler


Lapicqueโ€™s LIF neuron model

  • Without Stimulus
  • Step inputs
  • Pulse inputs
  • Firing
  • Spike inputs
  • Reset Mechanisms

Updated: