KR20140129067A - 스파이킹 뉴럴 연산을 위한 방법들 및 장치 - Google Patents

스파이킹 뉴럴 연산을 위한 방법들 및 장치 Download PDF

Info

Publication number
KR20140129067A
KR20140129067A KR20147024203A KR20147024203A KR20140129067A KR 20140129067 A KR20140129067 A KR 20140129067A KR 20147024203 A KR20147024203 A KR 20147024203A KR 20147024203 A KR20147024203 A KR 20147024203A KR 20140129067 A KR20140129067 A KR 20140129067A
Authority
KR
South Korea
Prior art keywords
input
neuron model
time
neuron
output
Prior art date
Application number
KR20147024203A
Other languages
English (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 퀄컴 인코포레이티드
Publication of KR20140129067A publication Critical patent/KR20140129067A/ko

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/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

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

Abstract

본 개시물의 어떤 양태들은 일반적인 선형 시스템들의 스파이킹 뉴럴 연산을 위한 방법들 및 장치를 제공한다. 일 예의 양태는 스파이크들 사이의 상대적 타이밍에서 정보를 코딩하는 뉴런 모델이다. 그러나, 시냅스 가중치는 필요하지 않다. 다시 말해서, 연결은 존재하거나 (중요한 시냅스) 또는 존재하지 않을 (중요하지 않거나 비-존재 시냅스) 수도 있다. 본 개시물의 어떤 양태들은 2 진 값의 입력들 및 출력들을 이용하고, 포스트-시냅스 필터링을 요구하지 않는다. 그러나, 어떤 양태들은 연결 지연들 (예를 들어, 수상돌기 지연들) 의 모델링을 포함할 수도 있다. 단일 뉴런 모델은 임의의 일반적인 선형 변환 x = AX + BU 를 임의의 임의적인 정밀도까지 연산하기 위해 이용될 수도 있다. 이 뉴런 모델은 타겟 출력 지연 (또는 출력 값) 을 달성하기 위하여 입력 지연들 (예를 들어, 스케일링 값들에 대응함) 을 학습하는 것과 같이, 또한 학습할 수 있을 수도 있다. 학습은 인과관계적 입력들의 논리적 관계를 결정하기 위하여 또한 이용될 수도 있다.

Description

스파이킹 뉴럴 연산을 위한 방법들 및 장치{METHODS AND APPARATUS FOR SPIKING NEURAL COMPUTATION}
관련 출원들에 대한 상호-참조
본 출원은, "METHODS AND APPARATUS FOR SPIKING NEURAL COMPUTATION" 이라는 명칭으로 2012 년 2 월 8 일자로 출원된 미국 특허 출원 번호 제 13/369,080 호 (대리인 일람 번호 113075U2) 와, "METHODS AND APPARATUS FOR SPIKING NEURAL COMPUTATION" 이라는 명칭으로 2012 년 2 월 8 일자로 출원된 미국 특허 출원 번호 제 13/369,095 호 (대리인 일람 번호 113075U3) 와 관련되고, 이들은 둘 모두 참조를 위해 본원에 편입된다.
기술분야
본 개시물의 어떤 양태들은 일반적으로 뉴럴 네트워크 (neural network) 들에 관한 것이고, 더욱 상세하게는, 하나 이상의 뉴런 (neuron) 들로 구성된 스파이킹 뉴럴 네트워크 (spiking neural network) 를 동작시키는 것에 관한 것이며, 여기서, 단일 뉴런은 임의의 일반적인 변환을 임의의 임의적 정밀도까지 연산할 수 있다.
인공 뉴럴 네트워크는 인공 뉴런들 (즉, 뉴런 모델들) 의 상호연결된 그룹으로 구성된 수학적 또는 연산적 모델이다. 인공 뉴럴 네트워크들은 인간 뇌에서 발견되는 것들과 같은 생물학적 뉴럴 네트워크들의 구조 및/또는 기능으로부터 (또는 이에 적어도 느슨하게 기초하여) 유도될 수도 있다. 인공 뉴럴 네트워크들은 관찰들로부터 기능을 추론할 수 있으므로, 이러한 네트워크들은 태스크 (task) 또는 데이터의 복잡성이 이 기능을 사람 손으로 설계하는 것을 비실용적으로 하는 응용들에서 특히 유용하다.
일 타입의 인공 뉴럴 네트워크는 스파이킹 뉴럴 네트워크이고, 이 스파이킹 뉴럴 네트워크는 뉴런 및 시냅스 상태뿐만 아니라 그 동작 모델에 시간의 개념을 편입하여, 이에 따라, 이 타입의 뉴럴 시뮬레이션에서 사실성의 레벨을 증가시킨다. 스파이킹 뉴럴 네트워크들은 멤브레인 전위가 임계치에 도달할 때에만 뉴런들이 발화한다는 개념에 기초하고 있다. 뉴런이 발화할 때, 뉴런은 다른 뉴런들로 이동하는 스파이크를 발생시키고, 이 다른 뉴런들은 궁극적으로 이 수신된 스파이크에 기초하여 그 멤브레인 전위들을 상승시키거나 하강시킨다.
전통적으로, 정보는 뉴런의 발화의 레이트에서, 전적인 것이 아닐 경우에, 주로 코딩되는 것으로 생각되었다. 정보가 뉴런 발화 레이트에서 코딩될 경우, 뉴런들을 오자 규칙 (Oja rule) 과 같은 레이트-기반 학습 규칙들을 갖는 발화 레이트 변환들로서 단지 모델링하는 것에 비해, 멤브레인 동역학을 갖는 뉴런들, 시간적 정밀도를 갖는 스파이킹 이벤트들, 및 스파이크-타이밍 종속적 가소성 (spike-timing dependent plasticity; STDP) 을 모델링하기 위해서는 상당한 연산 오버헤드 (computational overhead) 가 있을 수도 있다.
본 개시물의 어떤 양태들은 일반적으로 스파이킹 뉴럴 연산에 관한 것으로, 특히, 스파이킹 뉴럴 네트워크에서 하나 이상의 뉴런들을 이용하는 것에 관한 것이며, 여기서, 단일 뉴런은 임의의 임의적인 정밀도로의 임의의 일반적인 변환을 연산할 수 있고, 그리고 여기서, 정보는 스파이크들의 상대적 타이밍에서 코딩된다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 구현하기 위한 방법을 제공한다. 상기 방법은 일반적으로, 제 1 뉴런 모델에서 적어도 하나의 입력을 수신하는 단계; 입력에 기초하여, 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하는 단계; 및 상대적 시간에 기초하여 제 1 뉴런 모델로부터 출력 스파이크를 방출하는 단계를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 구현하기 위한 장치를 제공한다. 상기 장치는 일반적으로 프로세싱 유닛을 포함하고, 상기 프로세싱 유닛은, 제 1 뉴런 모델에서 적어도 하나의 입력을 수신하고; 입력에 기초하여, 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하고; 그리고 상대적 시간에 기초하여 제 1 뉴런 모델로부터 출력 스파이크를 방출하도록 구성된다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 구현하기 위한 장치를 제공한다. 상기 장치는 일반적으로, 제 1 뉴런 모델에서 적어도 하나의 입력을 수신하기 위한 수단; 입력에 기초하여, 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하기 위한 수단; 및 상대적 시간에 기초하여 제 1 뉴런 모델로부터 출력 스파이크를 방출하기 위한 수단을 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 구현하기 위한 컴퓨터 프로그램 제품을 제공한다. 상기 컴퓨터 프로그램 제품은 일반적으로, 명령들을 갖는 컴퓨터 판독가능 매체를 포함하고, 상기 명령들은, 제 1 뉴런 모델에서 적어도 하나의 입력을 수신하고; 입력에 기초하여, 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하고; 그리고 상대적 시간에 기초하여 제 1 뉴런 모델로부터 출력 스파이크를 방출하도록 실행가능하다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하는 방법을 제공한다. 상기 방법은 일반적으로, 뉴런 모델로의 입력과 연관된 현재의 지연에 따라 뉴런 모델에서의 입력 스파이크를 지연시키는 단계로서, 입력 스파이크는 뉴런 모델에 대한 기준 시간에 관련된 입력 스파이크 시간에서 발생하는, 상기 입력 스파이크를 지연시키는 단계; 지연된 입력 스파이크에 적어도 부분적으로 기초하여 뉴런 모델로부터 출력 스파이크를 방출하는 단계; 뉴런 모델로부터의 출력 스파이크의 방출과 뉴런 모델에 대한 기준 시간 사이의 실제적인 시간 차이를 결정하는 단계; 및 타겟 시간 차이와 실제적인 시간 차이 사이의 차이, 현재의 지연, 및 입력 스파이크에 대한 입력 스파이크 시간에 기초하여 입력과 연관된 현재의 지연을 조절하는 단계를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하기 위한 장치를 제공한다. 상기 장치는 일반적으로 프로세싱 유닛을 포함하고, 상기 프로세싱 유닛은, 뉴런 모델로의 입력과 연관된 현재의 지연에 따라 뉴런 모델에서의 입력 스파이크를 지연시키는 것으로서, 입력 스파이크는 뉴런 모델에 대한 기준 시간에 관련된 입력 스파이크 시간에서 발생하는, 상기 입력 스파이크를 지연시키고; 지연된 입력에 적어도 부분적으로 기초하여 뉴런 모델로부터 출력 스파이크를 방출하고; 뉴런 모델로부터의 출력 스파이크의 방출과 뉴런 모델에 대한 기준 시간 사이의 실제적인 시간 차이를 결정하고; 그리고 타겟 시간 차이와 실제적인 시간 차이 사이의 차이, 현재의 지연, 및 입력 스파이크에 대한 입력 스파이크 시간에 기초하여 입력과 연관된 현재의 지연을 조절하도록 구성된다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하기 위한 장치를 제공한다. 상기 장치는 일반적으로, 뉴런 모델로의 입력과 연관된 현재의 지연에 따라 뉴런 모델에서의 입력 스파이크를 지연시키기 위한 수단으로서, 입력 스파이크는 뉴런 모델에 대한 기준 시간에 관련된 입력 스파이크 시간에서 발생하는, 상기 입력 스파이크를 지연시키기 위한 수단; 지연된 입력에 적어도 부분적으로 기초하여 뉴런 모델로부터 출력 스파이크를 방출하기 위한 수단; 뉴런 모델로부터의 출력 스파이크의 방출과 뉴런 모델에 대한 기준 시간 사이의 실제적인 시간 차이를 결정하기 위한 수단; 및 타겟 시간 차이와 실제적인 시간 차이 사이의 차이, 현재의 지연, 및 입력 스파이크에 대한 입력 스파이크 시간에 기초하여 입력과 연관된 현재의 지연을 조절하기 위한 수단을 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하기 위한 컴퓨터 프로그램 제품을 제공한다. 상기 컴퓨터 프로그램 제품은 일반적으로 명령들을 갖는 컴퓨터 판독가능 매체를 포함하고, 상기 명령들은, 뉴런 모델로의 입력과 연관된 현재의 지연에 따라 뉴런 모델에서의 입력 스파이크를 지연시키는 것으로서, 입력 스파이크는 뉴런 모델에 대한 기준 시간에 관련된 입력 스파이크 시간에서 발생하는, 상기 입력 스파이크를 지연시키고; 지연된 입력에 적어도 부분적으로 기초하여 뉴런 모델로부터 출력 스파이크를 방출하고; 뉴런 모델로부터의 출력 스파이크의 방출과 뉴런 모델에 대한 기준 시간 사이의 실제적인 시간 차이를 결정하고; 그리고 타겟 시간 차이와 실제적인 시간 차이 사이의 차이, 현재의 지연, 및 입력 스파이크에 대한 입력 스파이크 시간에 기초하여 입력과 연관된 현재의 지연을 조절하도록 실행가능하다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하는 방법을 제공한다. 상기 방법은 일반적으로, 하나 이상의 학습 뉴런 모델들의 각각에서, 논리적 입력들의 세트를 제공하는 단계로서, 참 (true) 인 인과관계적 논리 관계가 논리적 입력들의 상기 세트에 부과되는, 상기 논리적 입력들의 세트를 제공하는 단계; 논리적 입력들의 각각의 세트에서의 입력 스파이크들 사이의 변동되는 타이밍을 수신하는 단계; 및 상기 하나 이상의 학습 뉴런 모델들의 각각에 대하여, 상기 학습 뉴런 모델이 상기 참인 인과관계적 논리 관계에 대응하는 하나 이상의 논리적 조건들에 따라 타겟 출력 지연을 충족시키는 출력 스파이크를 방출하도록, 상기 수신된 입력 스파이크들을 이용하여 상기 논리적 입력들의 각각과 연관된 지연들을 조절하는 단계를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하기 위한 장치를 제공한다. 상기 장치는 일반적으로 프로세싱 유닛을 포함하고, 상기 프로세싱 유닛은, 하나 이상의 학습 뉴런 모델들의 각각에서, 논리적 입력들의 세트를 제공하는 것으로서, 참인 인과관계적 논리 관계가 논리적 입력들의 상기 세트에 부과되는, 상기 논리적 입력들의 세트를 제공하고; 논리적 입력들의 각각의 세트에서의 입력 스파이크들 사이의 변동되는 타이밍을 수신하고; 그리고 상기 하나 이상의 학습 뉴런 모델들의 각각에 대하여, 상기 학습 뉴런 모델이 상기 참인 인과관계적 논리 관계에 대응하는 하나 이상의 논리적 조건들에 따라 타겟 출력 지연을 충족시키는 출력 스파이크를 방출하도록, 상기 수신된 입력 스파이크들을 이용하여 상기 논리적 입력들의 각각과 연관된 지연들을 조절하도록 구성된다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하기 위한 장치를 제공한다. 상기 장치는 일반적으로, 하나 이상의 학습 뉴런 모델들의 각각에서, 논리적 입력들의 세트를 제공하기 위한 수단으로서, 참인 인과관계적 논리 관계가 논리적 입력들의 상기 세트에 부과되는, 상기 논리적 입력들의 세트를 제공하기 위한 수단; 논리적 입력들의 각각의 세트에서의 입력 스파이크들 사이의 변동되는 타이밍을 수신하기 위한 수단; 및 상기 하나 이상의 학습 뉴런 모델들의 각각에 대하여, 상기 학습 뉴런 모델이 상기 참인 인과관계적 논리 관계에 대응하는 하나 이상의 논리적 조건들에 따라 타겟 출력 지연을 충족시키는 출력 스파이크를 방출하도록, 상기 수신된 입력 스파이크들을 이용하여 상기 논리적 입력들의 각각과 연관된 지연들을 조절하기 위한 수단을 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 이용하여 학습하기 위한 컴퓨터 프로그램 제품을 제공한다. 상기 컴퓨터 프로그램 제품은 일반적으로 명령들을 갖는 컴퓨터 판독가능 매체를 포함하고, 상기 명령들은, 하나 이상의 학습 뉴런 모델들의 각각에서, 논리적 입력들의 세트를 제공하는 것으로서, 참인 인과관계적 논리 관계가 논리적 입력들의 상기 세트에 부과되는, 상기 논리적 입력들의 세트를 제공하고; 논리적 입력들의 각각의 세트에서의 입력 스파이크들 사이의 변동되는 타이밍을 수신하고; 그리고 상기 하나 이상의 학습 뉴런 모델들의 각각에 대하여, 상기 학습 뉴런 모델이 상기 참인 인과관계적 논리 관계에 대응하는 하나 이상의 논리적 조건들에 따라 타겟 출력 지연을 충족시키는 출력 스파이크를 방출하도록, 상기 수신된 입력 스파이크들을 이용하여 상기 논리적 입력들의 각각과 연관된 지연들을 조절하도록 실행가능하다.
본 개시물의 어떤 양태들은 일반적인 선형 시스템들의 뉴럴 연산을 위한 시스템을 제공한다. 상기 시스템은 일반적으로, 멤브레인 전위를 갖는 안티-누설-통합-및-발화 뉴런으로서, 멤브레인 전위는 입력의 부재 시에 지수함수로 증가하고, 멤브레인 전위는 입력 시에 스텝 (step) 으로 증가하고, 멤브레인 전위는 기준 시간에서 재설정 전위로 재설정되고, 그리고, 멤브레인이 임계치를 초과할 경우에 뉴런이 스파이킹하는, 상기 안티-누설-통합-및-발화 뉴런; 및 지연들을 가지지만 가중치들을 가지지 않으며 포스트-시냅스 (post-synaptic) 필터링을 가지지 않는 안티-누설-통합-및-발화 뉴런에 입력을 연결하는 하나 이상의 시냅스들을 포함한다. 어떤 양태들에 대하여, 안티-누설-통합-및-발화 뉴런은 임계치를 초과하는 멤브레인 전위 시에 스파이킹하고, 기준 시간은 스파이크에서의 또는 스파이크 후의 시간이고, 재설정 시에, 지연들을 받는 시냅스 입력들이 소거된다.
본 개시물의 어떤 양태들은 일반적인 뉴런 모델링 방법을 제공한다. 상기 방법은 일반적으로, 뉴런에 대한 지연된 입력 이벤트 시에, 입력을 뉴런의 상태에 적용하고 뉴런의 예측된 미래의 스파이크 시간을 연산하는 단계; 예측된 미래의 스파이크 시간에서 뉴런에 대한 스파이킹 이벤트를 재스케줄링 (re-schedule) 하는 단계; 뉴런에 대한 스파이크 이벤트 시에, 멤브레인 전위를 재설정하는 단계 및 뉴런의 다음 예측된 미래의 스파이크 시간을 연산하는 단계로서, 멤브레인 전위의 재설정은 뉴런이 시간 기간 내에 스파이킹할 것임을 보장하는 값에 대한 것인, 상기 다음 예측된 미래의 스파이크 시간을 연산하는 단계를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴런을 이용하여 선형 시스템을 연산하는 방법을 제공한다. 상기 방법은 일반적으로, 입력 값의 로그의 네거티브에 기초하여 입력 기준 시간에 관련된 입력 시간 스파이크 시간을 결정하는 단계; 선형 계수에 로그 함수로 관련된 시간 지연만큼 입력을 지연시키는 단계; 및 안티-누설-통합 및 발화 뉴런 모델에 기초하여 출력 기준 시간에 관련된 출력 스파이크 시간을 연산하는 단계를 포함한다. 어떤 양태들에 대하여, 로그는 멤브레인 전위의 함수로서의 멤브레인 전위의 변화의 계수의 지수 값과 동일한 밑을 가진다. 어떤 양태들에 따르면, 포스트-시냅스 뉴런으로의 뉴런 출력은 절대값에 의한 네거티브 값과, 포지티브 계수에 대한 억제 및 네거티브 계수에 대한 흥분을 나타내고, 여기서, 포스트-시냅스 뉴런으로의 뉴런 출력은 절대값에 의한 포지티브 값과, 네거티브 계수에 대한 억제 및 포지티브 계수에 대한 흥분을 나타낸다. 어떤 양태들에 대하여, 네거티브 또는 포지티브일 수도 있는 입력 값은 2 개의 뉴런들을 이용하여 표현되고, 하나는 포지티브 도메인을 정류된 값으로서 나타내고, 다른 하나는 네거티브 도메인을 값의 정류된 네거티브로서 나타낸다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크에서 타이밍 정보를 변환하는 방법을 제공한다. 상기 방법은 일반적으로, 하나 이상의 뉴런들의 2 개 이상의 그룹들로의 입력으로서 전파하는 기준 프레임 파를 적용하는 단계로서, 기준 프레임 파는 2 개 이상의 그룹들의 각각으로의 적용 전에 상이한 양만큼 지연되는 발진하는 흥분성 및/또는 억제성 전위인, 상기 전파하는 기준 프레임 파를 적용하는 단계; 및 그 뉴런 (또는 스파이크가 입력되는 뉴런) 에 적용되는 바와 같은 전파하는 기준 프레임 파에 관련된 뉴런의 스파이크의 시간에서 정보를 인코딩 및/또는 디코딩하는 단계를 포함한다.
본 개시물의 어떤 양태들은 뉴런을 이용하여 자기-참조적 (self-referential) 상대적 시간 및 비-자기-참조적 (non-self-referential) 상대적 시간을 변환하기 위한 장치를 제공한다. 상기 장치는 일반적으로 입력 시에 설정되고 입력 이후에 지수함수로 감쇠하는 입력 상태; 입력 상태가 재설정되기 전에 후속 입력에서 입력 상태를 저장하는 입력 래치 (latch); 및 기준 입력 시에 입력 래치 값만큼 증분되고 그 후에, 임계치를 초과할 때까지 지수함수로 증가하는 멤브레인 상태로서, 상기 멤브레인 상태는 기준 입력까지 재설정 후에 증가하지 않는, 상기 멤브레인 상태를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크에서의 지연들을 학습하는 방법을 제공한다. 상기 방법은 일반적으로, 현재의 입력 지연에 의해 입력을 지연시키는 단계로서, 입력은 제 1 기준에 관련된 시간에서 발생하는 스파이크의 형태인, 상기 입력을 지연시키는 단계; 현재의 발화 지연을 제 2 기준에 관련된 출력 스파이크 시간으로서 결정하는 단계; 타겟 발화 지연과 현재의 발화 지연 사이의 차이를 연산하는 단계; 및 타겟 발화 지연과 현재의 발화 지연 사이의 차이, 현재의 입력 지연, 및 입력 스파이크 상대적 시간 및 학습 레이트에 종속되는 양에 의해 입력 지연을 조절하는 단계를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 동작시키기 위한 방법을 제공한다. 상기 방법은 일반적으로, 뉴런 모델에서 입력 스파이크의 입력 스파이크 시간을 결정하는 단계로서, 입력 스파이크 시간은 제 1 기준 시간에 관련되는, 상기 입력 스파이크 시간을 결정하는 단계; 복수의 입력 스파이크들의 존재 시에 제 2 기준 시간에 관련된 출력 스파이크에 대한 제 1 출력 스파이크 시간을 결정하는 단계로서, 출력 스파이크 시간은 제 1 기준 시간에 관련된 입력 스파이크 시간에 기초하는, 상기 제 1 출력 스파이크 시간을 결정하는 단계; 및 뉴런 모델의 탈분극-스파이크 (depolarization-to-spike) 지연에 기초하여 복수의 입력 스파이크들의 부재 시에 제 2 기준 시간에 관련된 출력 스파이크에 대한 제 2 출력 스파이크 시간을 결정하는 단계를 포함한다.
본 개시물의 어떤 양태들은 스파이킹 뉴럴 네트워크를 동작시키기 위한 방법을 제공한다. 상기 방법은 일반적으로, 제 1 기준 시간에서 값을 샘플링하는 단계; 샘플링된 값을 지연으로서 인코딩하는 단계; 및 제 2 기준 시간에 관련된 시간 지연에서 입력 스파이크를 발생시킴으로써 값을 뉴런 모델에 입력하는 단계를 포함한다.
본 개시물의 상기 기술된 특징들이 상세하게 이해될 수 있도록, 위에서 간단하게 요약된 더욱 특정한 설명은 양태들을 참조하여 행해질 수도 있고, 양태들의 일부는 첨부된 도면들에서 예시된다. 그러나, 첨부된 도면들은 본 개시물의 어떤 전형적인 양태들만을 예시하고, 상기 설명은 다른 동일하게 효과적인 양태들을 받아들일 수도 있기 때문에, 첨부된 도면들은 그러므로 그 범위의 제한으로 간주되지 않아야 한다는 것에 주목해야 한다.
도 1 은 본 개시물의 어떤 양태들에 따라 뉴런들의 일 예의 네트워크를 예시한다.
도 2 는 본 개시물의 어떤 양태들에 따라, 실수값의 도메인 (real-valued domain) 으로부터 스파이크-타이밍 도메인 (spike-timing domain) 으로의 변환을 예시한다.
도 3 은 본 개시물의 어떤 양태들에 따라, 상대적 시간들과 시프트된 시간 프레임들 사이의 관계들을 예시하는 타이밍도이다.
도 4 는 본 개시물의 어떤 양태들에 따라, 수상돌기 지연 (dendritic delay) 들을 예시하는 뉴런 모델의 블록도이다.
도 5 는 본 개시물의 어떤 양태들에 따라, 지수함수로 증가하는 멤버레인 전위 및 뉴런의 발화를 예시한다.
도 6 은 본 개시물의 어떤 양태들에 따른, 단일 안티-누설-통합-및-발화 (anti-leaky-integrate-and-fire; ALIF) 뉴런 모델에 대한 아키텍처의 블록도이다.
도 7 은 본 개시물의 어떤 양태들에 따라, 비-자기-참조적 포스트-시냅스 뉴런 (non-self-referential post-synaptic neuron; NSR-POST) 기준 시간과 자기-참조적 (self-referential; SR) 기준 시간 사이의 차이를 예시하는 연관된 프리-시냅스 (pre-synaptic) 및 포스트-시냅스 (post-synaptic) 뉴런들 및 타이밍도이다.
도 8 은 본 개시물의 어떤 양태들에 따라, 뉴런 상에 흥분성 및 억제성 입력들을 초래하는 포지티브 (positive) 및 네거티브 (negative) 스케일링 값들 및 포지티브 및 네거티브 값들의 모든 가능한 조합들을 예시한다.
도 9 는 본 개시물의 어떤 양태들에 따라, 포지티브로 그리고 억제성 입력으로서 연결된 뉴런 코딩
Figure pct00001
을 갖는 네거티브 값을 나타내는 것을 예시한다.
도 10 은 본 개시물의 어떤 양태들에 따라, 뉴런 모델을 이용하여 스칼라 (scalar) 값을 스케일링하기 위한 일 예의 동작들의 흐름도이다.
도 11a 는 본 개시물의 어떤 양태들에 따라, 0.1 ms 의 시간적 분해능 (temporal resolution) 을 이용하는 단일 뉴런 모델의 단일 수상돌기 입력 상에서 스칼라 입력을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 11b 는 본 개시물의 어떤 양태들에 따라, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 단일 수상돌기 입력 상에서 스칼라 입력을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 12a 는 본 개시물의 어떤 양태들에 따라, 0.1 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 12b 는 본 개시물의 어떤 양태들에 따라, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 13a 는 본 개시물의 어떤 양태들에 따라, 포지티브 및 네거티브 둘 모두의 스케일링 값들을 이용하여, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 13b 는 본 개시물의 어떤 양태들에 따라, 포지티브 및 네거티브 둘 모두의 스케일링 값들을 이용하지만, 도 13a 와의 비교를 위하여 억제로의 반전을 잘못 생략하여, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 14 는 본 개시물의 어떤 양태들에 따라, 포지티브 및 네거티브 둘 모두의 스케일링 값들과, 뉴런 모델의 멤브레인 전위에 추가된 잡음 항을 이용하여, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들, 시간 경과에 따른 출력 값들, 및 선형성을 예시한다.
도 15 는 본 개시물의 어떤 양태들에 따라, 2 개의 뉴런들에 동일한 기준을 제공하는 것을 예시한다.
도 16 은 본 개시물의 어떤 양태들에 따라, 2 개의 뉴런들에 대한 기준을 이용하는 피드-포워드 (feed-forward) 의 경우를 예시한다.
도 17 은 본 개시물의 어떤 양태들에 따라, 2 개의 뉴런들에 대한 기준을 이용하는 피드백의 경우를 예시한다.
도 18 은 본 개시물의 어떤 양태들에 따라, 일련의 뉴런들에 대한 전파하는 기준파를 예시한다.
도 19 는 본 개시물의 어떤 양태들에 따라, 도 18 의 전파하는 기준파를 갖는 일련의 뉴런들에 대한 일 예의 타이밍도를 예시한다.
도 20 은 본 개시물의 어떤 양태들에 따라, 일 예의 g- 뉴런을 이용하는 것을 예시한다.
도 21 은 본 개시물의 어떤 양태들에 따라, 뉴런 모델로의 1, 2, 4, 8, 16, 및 32 개의 입력들에 대한 선형성 그래프들을 예시한다.
도 22 는 본 개시물의 어떤 양태들에 따라, 상대적 시간에 기초하여 뉴런 모델로부터 출력 스파이크를 방출하기 위한 일 예의 동작들의 흐름도이다.
도 22a 는 도 22 에 도시된 동작들을 수행할 수 있는 일 예의 수단을 예시한다.
도 23 은 본 개시물의 어떤 양태들에 따라, 포스트-시냅스 뉴런의 발화에 영향을 줄 가능성이 있을 수도 있는 입력 스파이크와, 영향을 주지 않을 또 다른 입력 스파이크를 예시한다.
도 24 는 본 개시물의 어떤 양태들에 따라, 5 개의 대표적인 프리-시냅스 뉴런들 및 포스트-시냅스 뉴런을 예시한다.
도 25a 및 도 25b 는 본 개시물의 어떤 양태들에 따라, 잡음성 2 진 입력 벡터에 대한 계수들을 학습하는 일 예의 결과들을 예시한다.
도 26 은 본 개시물의 어떤 양태들에 따라, 입력들의 각각에 대한 지연들 및 가중치들의 그래프들에서 잡음성 2 진 입력 벡터에 대한 계수들을 학습하는 일 예의 결과들을 예시한다.
도 27 은 본 개시물의 어떤 양태들에 따라, 잡음성 실수값의 입력 벡터에 대한 계수들을 학습하는 일 예의 결과들을 예시한다.
도 28a 는 본 개시물의 어떤 양태들에 따라, 논리적 OR 관계에 대한 최초 반복 후의 지연들의 그래프이다.
도 28b 는 본 개시물의 어떤 양태들에 따라, 논리적 AND 관계에 대한 최초 반복 후의 지연들의 그래프이다.
도 29a 는 본 개시물의 어떤 양태들에 따라, 논리적 OR 관계에 대한 다수의 반복들 후의 지연들의 그래프이다.
도 29b 는 본 개시물의 어떤 양태들에 따라, 논리적 AND 관계에 대한 다수의 반복들 후의 지연들의 그래프이다.
도 30 은 본 개시물의 어떤 양태들에 따라, 논리적 관계들을 학습하기 위한 (반복들의 수의 함수로서의) 수렴들을 예시한다.
도 31 은 본 개시물의 어떤 양태들에 따라, 스파이킹 뉴럴 네트워크에서의 학습을 위한 부정 (negation) 및 앙상블 유도 (ensemble deduction) 둘 모두를 구현하는 것을 예시한다.
도 32 는 본 개시물의 어떤 양태들에 따라, 스파이킹 뉴럴 네트워크에서의 학습을 위한 일 예의 동작들의 흐름도이다.
도 32a 는 도 32 에 도시된 동작들을 수행할 수 있는 일 예의 수단을 예시한다.
도 33 은 본 개시물의 어떤 양태들에 따라, 스파이킹 뉴럴 네트워크에서의 인과관계적 학습을 위한 일 예의 동작들의 흐름도이다.
도 33a 는 도 33 에 도시된 동작들을 수행할 수 있는 일 예의 수단을 예시한다.
개시물의 다양한 양태들은 첨부한 도면들을 참조하여 이후에 더욱 완전하게 설명된다. 그러나, 본 개시물은 다수의 상이한 형태들로 구체화될 수도 있고, 본 개시물의 전반에 걸쳐 제시된 임의의 특정 구조 또는 기능에 제한되는 것으로 해석되지 않아야 한다. 오히려, 이 양태들은, 본 개시물이 철저하고 완전하도록 그리고 개시물의 범위를 당해 분야의 당업자들에게 완전히 전달하도록 제공된다. 본원에서의 교시 내용들에 기초하여, 당해 분야의 당업자는, 독립적으로 구현되든지 또는 개시물의 임의의 다른 양태와 조합되든지, 개시물의 범위가 본원에서 개시된 개시물의 임의의 양태를 커버하도록 의도된 것이라는 것을 인식해야 한다. 예를 들어, 본원에서 기재된 임의의 수의 양태들을 이용하여 장치가 구현될 수도 있거나 방법이 실시될 수도 있다. 추가적으로, 개시물의 범위는 다른 구조, 기능성, 또는 본원에서 기재된 개시물의 다양한 양태들에 추가적으로 또는 이 다양한 양태들 이외의 구조 및 기능성을 이용하여 실시되는 이러한 장치 또는 방법을 커버하도록 의도된다. 본원에서 개시된 개시물의 임의의 양태는 청구항의 하나 이상의 엘리먼트들에 의해 구체화될 수도 있다는 것을 이해해야 한다.
단어 "예시적" 은 "예, 사례, 또는 예시로서 작용함" 을 의미하기 위하여 본원에서 이용된다. "예시적" 으로서 본원에서 설명된 임의의 양태는 다른 양태들에 비해 바람직한 또는 유익한 것으로서 반드시 해석되어야 하는 것은 아니다.
특정한 양태들이 본원에서 설명되어 있지만, 이 양태들의 다수의 변형들 및 치환들은 개시물의 범위 내에 속한다. 바람직한 양태들의 일부의 이익들 및 장점들이 언급되어 있지만, 개시물의 범위는 특정한 이익들,이용들 또는 목적들에 제한되도록 의도되지 않는다. 오히려, 개시물의 양태들은 상이한 기술들, 시스템 구성들, 네트워크들 및 프로토콜들에 광범위하게 적용가능하도록 의도된 것이며, 그 일부는 바람직한 양태들의 도면들에서 그리고 다음의 설명에서 예로서 예시된다. 상세한 설명 및 도면들은 제한하는 것이 아니라 개시물을 예시하는 것에 불과하고, 개시물의 범위는 첨부된 청구항들 및 그 등가물들에 의해 정의된다.
일 예의 뉴럴 시스템
도 1 은 본 개시물의 어떤 양태들에 따라 뉴런들의 다수의 레벨들을 갖는 일 예의 뉴럴 시스템 (100) 을 예시한다. 뉴럴 시스템 (100) 은 시냅스 연결들의 네트워크 (104) 를 통해 뉴런들의 또 다른 레벨 (106) 에 연결된 뉴런들의 레벨 (102) 을 포함할 수도 있다. 간략함을 위하여, 2 개의 레벨들의 뉴런들만이 도 1 에 예시되어 있지만, 더 적거나 더 많은 레벨들의 뉴런들이 전형적인 뉴럴 시스템에 존재할 수도 있다.
도 1 에 예시된 바와 같이, 레벨 (102) 에서의 각각의 뉴런은 이전 레벨 (도 1 에 도시되지 않음) 의 복수의 뉴런들에 의해 발생될 수도 있는 입력 신호 (108) 를 수신할 수도 있다. 신호 (108) 는 레벨 (102) 뉴런으로의 입력 (예를 들어, 입력 전류) 을 나타낼 수도 있다. 이러한 입력들은 멤브레인 전위를 충전하기 위하여 뉴런 멤브레인 상에 축적될 수도 있다. 멤브레인 전위가 그 임계값에 도달할 때, 뉴런은 발화할 수도 있고, 뉴런들의 다음 레벨 (예를 들어, 레벨 (106)) 로 전달될 출력 스파이크를 발생시킬 수도 있다.
뉴런들의 하나의 레벨로부터 또 다른 레벨로의 스파이크들의 전달은 도 1 에 예시된 바와 같이, 시냅스 연결들 (또는 간단하게 "시냅스 (synapse) 들") (104) 의 네트워크를 통해 달성될 수도 있다. 시냅스들 (104) 은 레벨 (102) 뉴런들 (시냅스들 (104) 에 관한 프리-시냅스 뉴런들) 로부터 출력 신호들 (즉, 스파이크들) 을 수신할 수도 있다. 어떤 양태들에 대하여, 이 신호들은 조절가능한 시냅스 가중치들
Figure pct00002
(여기서, P 는 레벨들 (102 및 106) 의 뉴런들 사이의 시냅스 연결들의 총 수임) 에 따라 스케일링될 수도 있다. 다른 양태들에 대하여, 시냅스들 (104) 은 임의의 시냅스 가중치들을 적용하지 않을 수도 있다. 또한, (스케일링된) 신호들은 레벨 (106) 에서의 각각의 뉴런 (시냅스들 (104) 에 관한 포스트-시냅스 뉴런들) 의 입력 신호로서 조합될 수도 있다. 레벨 (106) 에서의 매 뉴런은 대응하는 조합된 입력 신호에 기초하여 출력 스파이크들 (110) 을 발생시킬 수도 있다. 다음으로, 출력 스파이크들 (110) 은 시냅스 연결들의 또 다른 네트워크 (도 1 에 도시되지 않음) 를 이용하여 뉴런들의 또 다른 레벨로 전달될 수도 있다.
뉴럴 시스템 (100) 은 소프트웨어로 또는 하드웨어로 (예를 들어, 전기 회로에 의해) 에뮬레이팅될 수도 있고, 이미지 및 패턴 인식, 머신 학습, 모터 제어 등과 같은 넓은 범위의 응용들에서 사용될 수도 있다. 뉴럴 시스템 (100) 에서의 각각의 뉴런 (또는 뉴런 모델) 은 뉴런 회로로서 구현될 수도 있다. 출력 스파이크를 개시시키는 임계값까지 충전되는 뉴런 멤브레인은 예를 들어, 그를 통해 흐르는 전류를 통합하는 커패시터로서 구현될 수도 있다.
일 예의 스파이킹 뉴럴 연산
뉴럴 네크워크들을 설계하기 위한 다양한 방법들이 제안되었다. 예를 들어, 뉴럴 시뮬레이션들을 제작하거나 합성하는 방법은 뉴럴 엔지니어링 프레임워크 (Neural Engineering Framework; NEF) 를 이용하여 Eliasmith 및 Anderson 에 의해 최근에 제안되었다. 예를 들어, Chris Eliasmith & Charles H. Anderson, Neural Engineering: Computation, Representation, and Dynamics in Neurobiological Systems, MIT Press (2003), http://compneuro.uwaterloo.ca 및 Chris Eliasmith, A Unified Approach to Building and Controlling Spiking Attractor Networks, Neural Computation 17, 1276-1314 (2005) 를 참조한다. 이 방법은 (i 에 의해 인덱싱되는) 뉴런들의 세트의 활성도 (activity) 들
Figure pct00003
에서의 인코딩된 값을 나타내는 것에 의존한다. 값은 활성도들의 선형 함수에 의해 추정될 수도 있다,
Figure pct00004
값을 나타내기 위하여, 뉴런 개체군 (neuron population) 의 활성도들은, 그 활성도들로부터 값을 추정할 수 있는 세트
Figure pct00005
가 존재하도록 충분히 다양해야 한다. 예를 들어, 모든 뉴런들이 동일한 동역학들을 가질 경우, 활성도들은 값의 정확한 또는 정밀한 표현을 얻기 위해서는 불충분하게 다양할 수도 있다.
뉴런 발화 레이트는 뉴런 활성도 척도로서 이용될 수도 있다. 그러나, 활성도를 필터링된 스파이크 트레인 (spike train) 으로서 표현함으로써 시간적 코드가 통합될 수도 있다는 것이 제안되었고:
Figure pct00006
여기서,
Figure pct00007
는 2 진 값이다 (1 은 스파이크를 나타내고 0 은 스파이크 없음을 나타냄). 그러나, 중요한 정보의 보존을 위하여, 이것은 시냅스 당 포스트-시냅스 필터
Figure pct00008
를 가지는 것에 의존하고, 그
Figure pct00009
는 중요한 시간 상수를 가진다. Eliasmith 및 Anderson 은 실제로 포스트-시냅스 필터의 동역학들이 뉴런의 응답의 동역학들을 지배한다고 가정하였고, 시간 상수
Figure pct00010
를 갖는 필터를 다음과 같이 모델링하였다.
Figure pct00011
사실상, 이것은 부울리언 시간 급수 (Boolean time series)
Figure pct00012
를 발화 레이트와 유사한 실수값의 시간 급수 (real-valued time series)
Figure pct00013
로 변환한다. 불행하게도, 이것은 정보 손실로 귀착된다 (또는 또 다른 관점으로부터, 표현된 값들의 분해능이 제한됨). 이것은 뉴런 개체군 사이즈를 증가시킴으로써 보상될 수도 있다. 최종적으로, 방법은 (그것이 식별정보 이외의 것이라고 가정하여) 희망하는 함수를 달성하기 위하여 입력들을 선형적으로 변환하기 위한 시냅스 가중치들을 이용한다.
NEF 에 대한 완전한 뉴럴 설명은, (1) 각각의 입력 뉴런 i 내지 각각의 뉴런 j 에 대한 위에서 설명된 형태의 포스트-시냅스 필터들
Figure pct00014
, (2) 입력들을 디코딩하기 위한 각각의 입력 뉴런 i 내지 각각의 뉴런 j 에 대한 시냅스 가중치들
Figure pct00015
, (3) 입력들을 재인코딩 (re-encode) 하기 위한 시냅스 가중치들, 및 (4) 소마 동역학 (soma dynamics) 을 포함한다.
그러나, 이 방법에 있어서는 다수의 문제점들이 있다. 첫째, 방법이 단지 발화 레이트들을 이용하여 적용될 수 있기 때문에, 그것은 스파이킹 뉴런에서 불충분한 솔루션이다. 다시 말해서, 레이트-기반 뉴럴 네트워크가 이용될 수 있을 경우에 스파이킹 뉴럴 네트워크를 이용하기 위한 자극은 무엇인가? 방법은 단지 부울리언 시퀀스들을 실수값의 시퀀스들로 변환시키는 것이다. 둘째, 방법은 연산적으로 복잡한데, 시냅스 당 포스트-시냅스 필터들을 요구하고 변환들 및 가중치들을 인코딩하고 디코딩한다. 셋째, 값-공간을 나타내기 위하여 인코딩/디코딩에 대한 충분한 기초가 있어야 하기 때문에, 뉴런들의 다양한 개체군이 시스템을 나타내기 위해 이용되어야 한다. 이것은 시스템이 상이한 튜닝 곡선 (tuning curve) 들 (입력의 함수로서의 발화 레이트들) 을 갖는 뉴런들을 요구한다는 것을 의미한다. 넷째, 학습이 미해결 문제 (open problem) 이다.
유사하게, 다른 종래의 방법들은 뉴런의 발화 레이트에서 또는 뉴런들의 개체군의 발화 활성도에서 정보를 나타내었다. 이 개체군 코딩 타입의 방식은 종종 (푸아송 발화 뉴런 (Poisson firing neuron) 들과 같은) 뉴런들의 확률론적 발화 모델들과 함께 이용된다. 이 타입들의 방식들은, 정보를 나타내는 개체군 코딩된 평균 발화 레이트를 결정하기 위하여 스파이킹 거동 (spiking behavior) 의 관찰들의 윈도우 (window) 들을 요구한다. 확률론적 방법들은 또한, 외부 잡음을 도입하기 전에도 본질적으로 잡음성이고, 불리한 입장에 있다. 코드로서의 발화 레이트의 이러한 이용, 정밀한 가중치들의 이용, 및 복소수 연산 방식들로 인해, 이 방식들 중 어느 것도 문제들을 해결하지 못한다.
따라서, 필요한 것은 보편적으로 적용되는 고효율의 생물학적으로 일관성 있는 스파이킹 뉴럴 네트워크를 구현하기 위한 기술들 및 장치이다. 결과적으로, 3 개의 핵심 문제 영역들이 상기 서술에서 제시된다: 효율성, 생물학적 일관성, 및 보편성 또는 일반성.
본원에서 이용된 바와 같이, 용어 "효율성" 은 일반적으로, 기본적인 스칼라 함수들을 연산하기 위하여 다수의 뉴런들 또는 뉴런 개체군들을 요구하지 않으며, 발화 레이트 값들을 얻기 위하여 출력들을 관찰하고, 출력을 변환하고 평균화하기 위하여 상당한 시간을 요구하지 않는 뉴런 연산 시스템을 지칭한다. 뉴런은 또한, 연산적으로 비-복소수이어야 하고, 비-확률론적이어야 하고, 필터들의 연산 또는 정밀한 부동 소수점 연산들을 요구하지 않아야 한다.
본원에서 이용된 바와 같이, 용어 "생물학적으로 일관성 있는" 은 일반적으로, 뉴런 동역학들 및 연결 프로세싱이 생물학적으로 동기부여되어야 하고 (현실적), 엔지니어링 또는 연산 편리성에 의해 단지 특정되지 않아야 한다는 것을 의미한다. 또한, 정보는 그 평균 발화 레이트가 아니라 뉴런들의 스파이킹에서 이상적으로 코딩되어야 한다. 뉴런 파라미터들 및, 시냅스 강도 분포와 같은 파라미터 범위들은 마찬가지로 생물학적으로 일관성이 있어야 한다.
본원에서 이용된 바와 같이, 용어 "보편적" 은 일반적으로, 일반적인 연산 또는 제어 시스템과 동등한 뉴럴 연산 시스템을 지칭한다. 이러한 시스템들은 선형 시스템 또는 선형 서브시스템들의 조합으로서 모델링될 수도 있다. 임의의 선형 시스템은 수학식들에 의해 설명될 수도 있다.
Figure pct00016
선형 시스템의 이 공식은, 벡터들
Figure pct00017
가 입력들, 내부 상태 변수들, 또는 출력들 (
Figure pct00018
을 표현함으로써 제 1 타입의 별도의 입력들 및 상태들의 전형적인 공식들) 을 포함할 수도 있다는 점에서 일반적이다. (행렬
Figure pct00019
엔트리들의 일부는 시스템에 따라서는 제로 (zero) 일 수도 있어서 "입력들" 은 수학식 자체에 의해서가 아니라 외부 이벤트에 의해 업데이트될 수도 있지만) 임의의 선형 제어 시스템은 이 측면들에서 표현될 수도 있다. 기본적으로, 하나는 이와 같이 엘리먼트
Figure pct00020
와 관련되고, 이것은 벡터
Figure pct00021
의 각각의 엘리먼트의 동역학들을 나타낸다. 본 개시물의 양태들은 선형 시스템에 제한되지 않지만, 이것은 어떤 양태들을 설명하기 위한 매우 일반적인 프레임워크인데, 왜냐하면 선형성이 희망하는 비-선형 기능들에 의해 대체될 수 있거나, 선형 시스템 모델들로 비선형 기능들을 모델링하기 위하여 선형성이 이용될 수 있기 때문이다.
본 개시물의 양태들은 뉴럴 네트워크들을 스파이킹하기 위한 방법을 포함한다. 그러나, 가중치들은 불필요하다. 다시 말해서, 연결은 존재할 수도 있거나 (중요한 시냅스) 또는 존재하지 않을 수도 있다 (중요하지 않은 또는 존재하지 않는 시냅스). 본 개시물의 어떤 양태들은 2 진 값의 입력들을 및 출력들을 이용하고, 포스트-시냅스 필터링을 요구하지 않는다. 그러나, 본 개시물의 어떤 양태들은 연결 지연들의 모델링을 포함할 수도 있다.
본 개시물의 어떤 양태들에 따르면, 본원에서 설명된 방법들을 이용하여, 임의의 선형 시스템은 시냅스 가중치들 또는 포스트-시냅스 필터들에 대한 필요성 없이 스파이킹 뉴런들을 이용하여 효율적으로 연산될 수도 있고, 정보는 각각의 개별적인 스파이크에서 코딩된다. 정보는 각각의 스파이크의 상대적인 타이밍에서 코딩될 수도 있으므로, 레이트로 정보를 결정하기 위하여 활성도를 축척할 필요가 없다. 뉴런 스파이크 응답 시간은 이산 또는 연속 시간에서 이벤트-기반 방식으로 직접 (결정론적) 연산될 수도 있고, 이에 따라, 연산 및 메모리 액세스에 대해 더 절감할 수도 있다. 단일 뉴런은 임의적 정밀도의 선형 변환을 나타낼 수 있으므로, 본 개시물의 어떤 양태들은 변수들의 임의의 세트에 대한 최소의 수의 뉴런들을 이용할 수도 있다. 또한, 어떤 양태들은 충실도 (fidelity) 를 유지하기 위하여 상이한 튜닝 곡선들을 갖는 뉴런들을 요구하지 않는다. 본 개시물의 어떤 양태들은 또한 확률론적 발화 또는 개체군 코딩을 요구하지 않는다. 어떤 양태들은 일시적으로 코딩된 패턴들을 분류하는 뉴런들과 또한 인터페이스될 수도 있다. 다시 말해서, 본 개시물의 어떤 양태들은 입력의 변환들을 연산하기 위하여 이용될 수도 있고, 다음으로, 상기 입력의 변환들은 입력의 양태들을 분류하거나 인식하기 위하여 이용될 수도 있다. 반대로, 시간적 패턴들에 대한 뉴런들의 응답들은 어떤 양태들에 따라 동작하는 뉴런들의 세트에 공급될 수도 있다.
본 개시물의 어떤 양태들은 생물학적으로 일관성 있는 거동을 나타낸다. 예를 들어, 어떤 양태들은 시냅스 가중치들을 이용하지 않는다. 뉴런들 사이에 연결이 있거나, 또는 연결이 없다. 생물학에서는, 수상돌기 소극 (dendritic spine) 들이 (위치에 따라) 명목상 강도의 시냅스들로 성장하거나 또는 사라지는 경향이 있다. 또 다른 예로서, 어떤 양태들은 시간에 있어서 코딩된 정보를 자기-참조적 형태로부터 비-자기-참조적 형태로 변환하기 위하여 전파 기준 프레임 파 (reference frame wave) 를 이용한다. 생물학에서는, 상이한 피질 영역들 사이의 오프셋들을 포함하는, 흥분과 억제 사이의 국부 발진들이 관찰되었다. 또 다른 예로서, 어떤 양태들은 추가의 입력 없이도 뉴런의 멤브레인 전위가 증가하는 상기 탈분극 임계치 (depolarization threshold) 에 있거나 이 탈분극 임계치에 근접한 뉴런 모델을 이용한다. 생물학적 뉴럴 회로들은, 마찬가지로, 이 탈분극 임계치에서 또는 이 탈분극 임계치의 근처에서 동작할 수도 있다.
본 개시물의 어떤 양태들은 확률론적 또는 결정론적 발화 모델들과 함께 또한 이용될 수도 있다. 그리고, 잡음은 이 모델 타입들 중 어느 하나에 추가 (용인) 될 수도 있다. 이러한 모델들은 기초적인 결정론적 모드 (잡음 부재) 에서 동작될 수도 있으므로, 이 모델들은 신속하고 신뢰성 있는 연산들을 수행할 수도 있고 잡음의 추가를 적절하게 취급할 수도 있다.
본 개시물의 어떤 양태들은 연산의 코스트 (cost) 가 시간적 분해능에 독립적일 수도 있는 이벤트-기반 또는 스케줄링된 뉴런 방법을 포함하므로, 본 개시물의 어떤 양태들은 전력 소비를 또한 감소시킬 수도 있다. 이것은 또한, 생물학적 뇌들이 효율적인 전력 소비를 위하여 희박한 코딩 (sparse coding) 을 어떻게/왜 이용하는지를 설명할 수도 있다.
본 개시물의 어떤 양태들의 또 다른 장점은, 이 양태들이 비동기 또는 동기 모드들 또는 형태들에서 동작할 수도 있다는 것이다. 비동기 형태에서는, 샘플링 레이트가 입력의 중요도에 비례적일 수도 있다. 입력이 무시가능하거나 낮을 때, 샘플링 레이트는 낮을 수도 있고, 이에 따라, 전력 및 자원들을 절감할 수도 있다. 입력이 중요하거나 클 때, 샘플링 레이트는 증가할 수도 있고, 이에 따라, 정밀도 및 응답 시간 둘 모두를 증가시킬 수도 있다.
이러한 그리고 추가적인 장점들은 뒤따르는 설명에서 명백해질 것이다. 본 개시물의 양태들에 대한 장점들의 다수는 다른 기존의 방법들 및 뉴런 모델들에 대해 특정한 단점의 결여의 측면에서 표현될 수도 있다는 것에 주목해야 한다.
상대적 시간에서의 코딩 정보
정보는 뉴런의 스파이크들 사이의 상대적 시간에서 또는 하나의 뉴런 및 또 다른 뉴런의 스파이크들 사이 (또는 훨씬 더 일반적으로, 추후에 명백해지는 바와 같이, 하나의 뉴런의 스파이크와 일부 기준 시간 사이) 의 상대적 시간에서 인코딩될 수도 있다고 가정한다. 어떤 양태들에서, 정보는 스파이크들 사이의 상대적인 타이밍에서 2 개의 기본적인 형태들로 표현될 수도 있다: (1) 동일한 뉴런의 연속적인 스파이크들 사이의 상대적 시간; 및 (2) 하나의 뉴런의 스파이크와 또 다른 뉴런 (또는 기준) 의 스파이크 사이의 상대적 시간.
엄밀하게 말하면, 첫 번째 경우에 있어서, 상대적 시간은 연속적인 스파이크들 사이에 있을 필요가 없고, 두 번째 경우에 있어서, 상대적 시간은 프리-시냅스 뉴런 및 포스트-시냅스 뉴런 사이에 있을 필요가 없다. 이에 관계없이, 이 상대적 시간은
Figure pct00022
라고 하여, 그것은 다음과 같이 값
Figure pct00023
와 관련된다,
Figure pct00024
사실상, 상대적 시간은 값의 밑 (base) 이 q 인 로그 (logarithm) 이다. 상기 변환은 상대적 시간 (스파이크 타이밍) 을 실수값의 (변수) 도메인으로/실수값의 (변수) 도메인으로부터 변환한다. 따라서, 값의 임의의 스케일링은 상대적 시간에서의 시간 차이에 불과하고,
Figure pct00025
여기서,
Figure pct00026
이다. 따라서, 스파이크들 사이의 지연으로 나타낸 값은 지연을 단지 추가함으로써 임의적인 양에 의해 스케일링될 수도 있다.
도 2 는 본 개시물의 어떤 양태들에 따라, 실수값의 도메인 (200) 으로부터 스파이크-타이밍 도메인 (210) 으로의 변환을 예시한다. 실수값의 도메인 (200) 에서는, 뉴런 k (204) 의 출력 값
Figure pct00027
를 얻기 위하여, 뉴런 j (202) 의 출력 값
Figure pct00028
Figure pct00029
에 의해 스케일링된다. 스파이크-타이밍 도메인 (210) 에서는, 뉴런 k (204) 의 상대적 시간
Figure pct00030
을 결정하기 위하여 지연
Figure pct00031
가 뉴런 j (202) 의 상대적 시간
Figure pct00032
에 추가된다.
인과관계적 시스템에서는, 시간 지연들이 포지티브인 것에 주목해야 한다. 그러나, 값을 1 보다 작은 배수만큼 스케일링하는 것은, 스파이크들 사이의 지연을 임의적으로 큰 공칭 양에 의해 단축함으로써, 그리고, 그 다음으로, 전체적인 스케일링
Figure pct00033
, 또는
Figure pct00034
를 달성하기에 충분한 양을 다시 추가함으로써 달성될 수도 있다.
이것이 뉴런들로 어떻게 행해질 수도 있는지에 대해 아래에서 더욱 상세하게 설명될 것이다. 우선, 1 이상의 임의의 스케일링이 달성될 수도 있을 경우, 임의의 임의적인 스케일링은 이 개념을 이용하여 달성될 수도 있다고 가정될 수도 있다. 실제적인 네트워크에서, 상대적 시간 지연들은 어떤 최대치 (입력의 부재 시에 명목 뉴런 발화 레이트에 의해, 또는 하나의 뉴런으로부터 또 다른 뉴런으로의 연결에 의해 초래될 수 있는 최대 지연에 의해 주어짐) 로 제한될 수도 있다. 이것은 달성될 수도 있는 스케일링을 제한하지 않을 수도 있는데, 왜냐하면, 기초적인 값들을 스케일링함으로써 기초적인 값 범위가 커버될 수도 있기 때문이다.
상대적인 타이밍의 형태들 사이를 변환하는 것은: (1) 동일한 뉴런 i 의 연속적인 스파이크들 사이의 상대적 시간
Figure pct00035
를 뉴런 j 및 뉴런 k (또는 기준 k) 의 스파이크들 사이의 상대적 시간
Figure pct00036
로 변환하는 것; 및 (2) 뉴런 j 및 뉴런 k (또는 기준 k) 의 스파이크들 사이의 상대적 시간
Figure pct00037
를 동일한 뉴런 i 의 연속적인 스파이크들 사이의 상대적 시간
Figure pct00038
로 변환하는 것을 포함할 수도 있다.
자기-참조적 상대적 시간
Figure pct00039
및 비-자기-참조적 상대적 시간
Figure pct00040
사이의 차이는 스파이크 트레인 (spike train) 들을 고려함으로써 알게 될 수도 있다. 뉴런 j 의 스파이킹 출력은
Figure pct00041
에 의해 설명된다고 하고,
Figure pct00042
여기서, s 는 스파이크의 인덱스 (제 1, 제 2, 제 3 등등) 이다. 따라서,
Figure pct00043
는 2 진 시퀀스에 불과하다. 뉴런 j 의 연속적인 스파이크들 사이의 상대적 시간은 다음과 같다.
Figure pct00044
그러나, 뉴런 j 의 스파이크들 s 와 뉴런 k (또는 기준 k) 의 r 사이의 상대적 시간은 다음과 같다.
Figure pct00045
이제, 뉴런 j 로부터의 출력
Figure pct00046
이 뉴런 k 로의 입력으로서 제시된다고 가정한다. 스파이크 s 이전의 모든 입력 스파이크들의 프로세싱에 후속하는 시간 t 일 경우, 스파이크 s 만이 관여될 수도 있으므로, 다음과 같다.
Figure pct00047
이제, 시간은 임의적인 기준 시간
Figure pct00048
로 또한 시프트될 수도 있고, 여기서,
Figure pct00049
이다. 이제, 시프트된 시간에서, 다음과 같다.
Figure pct00050
이제, 동일한 시간 시프트 (time shift) 를 스파이크에 적용하면,
Figure pct00051
이고, 생략표현
Figure pct00052
을 이용하면, 다음을 얻는다.
Figure pct00053
도 3 은 위에서 설명된 바와 같이, 상대적 시간들 및 시프트된 시간 프레임들 사이의 관계들을 예시하는 타이밍도 (300) 이다. 타이밍도 (300) 및 상기 수학식들로부터, 하나의 뉴런으로부터 다른 뉴런으로의 임의의 스파이크 트레인 입력은 기준 시간에 관한 다음 스파이크의 타이밍의 측면에서 고려될 수도 있고 연결에서의 지연을 설명한다는 것을 알게 될 수도 있다. 상대적 시간 및 시간 기준 시프팅 (time reference shifting) 의 이 개념들은 아래의 본 개시물의 어떤 양태들의 설명에서 중심이 될 것이다.
일반적인 스파이킹 뉴럴 시스템들
뉴런들의 다수의 생물학적으로 일관성 있는 모델들이 제한되었다. 특히, 생물학적으로 일관성 있고 유연성 있는 하나의 스파이킹 뉴런 모델은 다음의 미분방정식들의 쌍에 의해 설명되는 이즈히케비치 단순 모델 (Izhikevich simple model) 이고,
Figure pct00054
스파이킹 조건은 다음과 같고,
Figure pct00055
여기서,
Figure pct00056
는 뉴런 파라미터들 (컨덕턴스 (conductance) 등으로부터 유도됨) 이고,
Figure pct00057
,
Figure pct00058
, 및
Figure pct00059
는 멤브레인 전압 임계치들이고,
Figure pct00060
는 시간 t 에서의 순입력 (net input) 이고, 여기서, 불응 시간 기간 (refractory time period) 이외에서는, 일반적으로
Figure pct00061
이고 일반적으로
Figure pct00062
이다. 스파이킹 조건이 충족되지 않을 경우, 출력은
Figure pct00063
이다. 그러나, 전압 수학식은 2 개의 도메인들에서 동작한다: (1)
Figure pct00064
, 여기서, 뉴런은 누설-통합-및-발화 (leaky-integrate-and-fire; LIF) 뉴런처럼 동작하고; (2)
Figure pct00065
, 여기서, 뉴런은 안티-누설-통합-및-발화 (ALIF) 뉴런처럼 동작한다.
Figure pct00066
일 때, 차이
Figure pct00067
의 크기가 더 클수록, 차이
Figure pct00068
의 크기가 더 작아서, 2 개가 서로 균형을 이루는 것으로 고려될 수도 있다는 것에 주목해야 한다. 또한, 일반성의 손실 없이,
Figure pct00069
을 설정할 수도 있고 파라미터들을
Figure pct00070
,
Figure pct00071
, 및
Figure pct00072
에 따라 스케일링할 수도 있어서, 이를 간략화할 수도 있고
Figure pct00073
에 대하여 다음과 같이 기재할 수도 있고,
Figure pct00074
여기서,
Figure pct00075
이다. 여기에서, 전압 도메인은 일반성의 손실 없이 양
Figure pct00076
만큼 시프트되었다. 이와 대조적으로,
Figure pct00077
일 때, 항 (
Figure pct00078
) 는 (
Figure pct00079
) 보다 큰 기울기로 증가하고, 이에 따라, 이를 간략화하도록 동기부여될 수도 있고
Figure pct00080
에 대하여, 다음과 같이 기재할 수도 있고,
Figure pct00081
여기서,
Figure pct00082
이다. 그 핵심은
Figure pct00083
의 부호가 반전되어 전압이 증가하고 점점 더 신속하게 증가한다는 것이다.
일반적으로, 임의의 배경 입력 활성도, 입력 잡음 레벨, 또는 이전 스파이크들이 주어질 경우, 임의의 소정의 스파이크는 균형을
Figure pct00084
로부터
Figure pct00085
로 기울일 수도 있다. 상기 일반화는, 뉴런 레벨이 이 균형의 마진 내에서 유지될 수도 있어서, (스파이킹 후의, 또는 스파이크를 뒤따르는 불응 기간 후의) 초기에 일반화할 수도 있고
Figure pct00086
을 설정할 수도 있다는 것을 반영한다. 그러나, 이 일반화들로 인해, 2 개의 상이한 도메인들에서 전압들을 융화시키는 것은 이들 사이를 변환하기 위한 보상 연산을 수반할 가능성이 가장 높을 수도 있다 (즉,
Figure pct00087
Figure pct00088
도메인에서 임계치
Figure pct00089
에 도달할 때,
Figure pct00090
Figure pct00091
도메인에서
Figure pct00092
로 변환되고, 그 역도 성립한다). 이것은 행하기에 복잡하지 않지만, 이후에 명백해지는 바와 같이, 도메인들 사이에서 이동할 필요가 없을 수도 있으므로, 본 개시물의 양태들에 대해서는 불필요하다.
Figure pct00093
Figure pct00094
Figure pct00095
의 특정한 파라미터 세팅 (setting) 들에 대해, 상태 변수
Figure pct00096
는 이 동역학들에 대해 무시가능한 기여분을 가질 수도 있으므로, 다음과 같이 일반적으로 간략화할 수도 있다는 점이 또한 관찰될 수도 있다.
Figure pct00097
사실상, 이즈히케비치 단순 모델이 동작의 도메인에 따라 누설 또는 안티-누설-통합-및-발화 (ALIF) 뉴런으로 단순화 (즉, 모델링) 될 수도 있다는 것을 알 수 있다. 또한, 포스트-시냅스 필터링 및 가중치들이 전혀 가정되지 않을 경우,
Figure pct00098
이도록, 입력 스파이크들은 (수상돌기 (dendritic) 또는 축색돌기 (axonal) 지연과 같은) 일부의 연결 지연들을 받는 뉴런 k 로의 입력들로서 이용될 수도 있다.
도 4 는 본 개시물의 어떤 양태들에 따라, 연결 지연들을 수상돌기 지연 라인들로서 도시하는 뉴런 모델 (410) 의 블록도 (400) 이다. 입력들
Figure pct00099
에 대한 수상돌기 입력 라인들은 각각의 입력
Figure pct00100
에 대한 연결 지연들을 나타내는 수상돌기 지연 엘리먼트들 (412) 에 결합된다. 다음으로,
Figure pct00101
를 얻기 위하여, 지연된 입력들은 합산기 (414) 에 의해 (선형으로) 합산된다.
이제, 윗첨자 + 는
Figure pct00102
도메인을 나타내고 윗첨자 - 는
Figure pct00103
도메인을 나타낸다고 가정한다. 뉴런 k 에 대한 안티-누설 도메인에 대하여, 다음과 같고,
Figure pct00104
여기서,
Figure pct00105
는 포스트-시냅스 뉴런 k 에 대한 시냅스
Figure pct00106
에 대응하는 프리-시냅스 뉴런의 인덱스이다. 이러한 뉴런은 통상적으로, 전위가 제로 위로 (즉, 약간의 양 또는 임계치만큼 제로 위로) 올라갈 때, 기준 시간
Figure pct00107
에서 시작하여 지수함수로 증가하는 멤브레인 전위를 가질 것이다.
예를 들어, 도 5 는 이러한 지수함수로 증가하는 멤브레인 전위 및 시간에 대한 뉴런의 발화를 예시한다. 도 5 에서, y-축 (504) 은 뉴런의 멤브레인 전위를 나타내고, x-축 (502) 은 시간을 나타낸다. 도시된 바와 같이, 기준 시간
Figure pct00108
에서, 뉴런의 멤브레인 전위는 어떤 양만큼 제로보다 위일 때, 전위는 지수함수로 증가한다. 이 지점 후에, 전위를 다시 제로 이하로 되게 하기에 충분한 억제성 입력들이 없으면, 뉴런은 통상적으로 발화할 것이다. 통상적으로, 흥분성 입력들은 단지 뉴런으로 하여금 곧 발화하게 할 것이다. 예를 들어, 도 5 에 도시된 바와 같이, 시간
Figure pct00109
에서의 뉴런 j 로부터의 입력은 뉴런으로 하여금 곧 발화하게 한다. 이것은 일반적인 공식이다. 예를 들어, 기준 시간을 뉴런이 발화하는 시간으로 설정할 수 있다. 다음으로, 발화 시에, 뉴런은 제로 바로 위의 작은 값으로 재설정된 전압을 단지 가진다.
프리-시냅스 뉴런들의 인덱스들을 이용하여 다음과 같이 등가적으로 기록할 수도 있다.
Figure pct00110
라플라스 변환 (Laplace transform) 을 취하면, 다음을 얻을 수도 있고,
Figure pct00111
여기서, 일반화에 따르면,
Figure pct00112
이다. 우선, 실제로 뉴런 k 의 최종 스파이크인 기준 시간이 이용될 수도 있으므로,
Figure pct00113
이다. 시프팅된 시간
Figure pct00114
에서 역 라플라스 변환을 취하는 것은 다음을 산출한다.
Figure pct00115
Figure pct00116
를 구하면, 다음과 같다.
Figure pct00117
조작은 다음을 산출한다.
Figure pct00118
Figure pct00119
을 정의하면, 다음과 같고,
Figure pct00120
여기서,
Figure pct00121
이고
Figure pct00122
이다.
시간적 분해능
Figure pct00123
를 갖는 이산 시간 형태에서는, 다음과 같다.
Figure pct00124
Figure pct00125
를 정의하면, 다음과 같다.
Figure pct00126
시프팅된 시간
Figure pct00127
에서의 비-재귀적 형태에서는, 다음과 같다.
Figure pct00128
스파이크는 자기-참조적 시간
Figure pct00129
에서 발생하는 것으로 가정하고, 고려된 모든 입력들 (즉, 일반성의 손실을 갖지 않음) 은 그 스파이킹 시간 전에 발생하는 것으로 가정하면, 다음과 같고,
Figure pct00130
여기서,
Figure pct00131
이고,
Figure pct00132
이다.
위에서 설명된 바와 같이, 희망하는 선형 시스템은 다음과 같이 표현될 수도 있고:
Figure pct00133
값으로부터 시간으로의 변환은
Figure pct00134
또는
Figure pct00135
로서 표현될 수도 있다. 따라서, 단일 뉴런 k 는 변환에 의해 희망하는 선형 결과를 연산하기 위해 사용될 수도 있다.
Figure pct00136
Figure pct00137
에 의해 명목상으로 모델링되는
Figure pct00138
를 최소화하기 위하여, 통상적으로
Figure pct00139
또는 뉴런들의 스파이크 임계치
Figure pct00140
일 것을 요구한다.
Figure pct00141
를 최소화하는 것은 엄밀하게는 필요하지 않지만, 그것은 정밀한 맵핑을 위한 동기부여를 촉진시킨다.
희망하는 동작을 구현하기 위하여, 지연들을 다음과 같이 간단하게 설정할 수도 있다.
Figure pct00142
일반성의 손실 없이,
Figure pct00143
로 설정할 수도 있어서,
Figure pct00144
이고, 따라서, 충분히 큰 스파이킹 임계치를 선택함으로써
Figure pct00145
항의 요구된 사이즈를 최소로 제어할 수도 있다.
또한, 이 단일 뉴런 k 는, 무한 시간 분해능 (
Figure pct00146
) 이 주어지고, 이 경우에
Figure pct00147
일 경우, 무한 분해능으로 실수값의 동작들을 프로세싱할 수도 있다는 것에 주목해야 한다. 그러나, 실제로, 이것은 필요하지 않을 수도 있다. 이것은, 연속 시간에서 동작하는 것이 연속 업데이트들을 요구하지는 않기 때문에 반드시 바람직하지 않은 것은 아니라는 것에 주목해야 한다. 아마도 이벤트들 (입력들 또는 스파이크들, 그리고 이 이벤트들은 위에서 제공된 언네스팅된 (un-nested) 표현들이 주어질 경우에 연산될 수도 있음) 에 대한 수학식들을 업데이트하기만 할 수도 있다. 그럼에도 불구하고, 시간 스텝들
Figure pct00148
에서 동작하는 이산 시간 시스템에 대하여, 다음과 같다.
Figure pct00149
그리고, 값들과 상대적 시간들 사이의 변환에 대한 로그의 밑으로서, q 는 시간적 분해능이 로그 스케일의 값 분해능에 어떻게 영향을 줄 것인지에 영향을 준다. 결국, 이것은
Figure pct00150
로 되는 파라미터
Figure pct00151
에 종속된다.
최종적으로, 이것은 뉴런의 동작
Figure pct00152
으로서 표기될 수도 있다. 스파이크-타이밍 도메인에서는, 다음과 같다.
Figure pct00153
그러나, 값-도메인에서는, 다음과 같다.
Figure pct00154
이 동작은 실제로 연산되지 않을 수도 있지만, 오히려, 등가의 연산이 다음과 같은 미분 방정식에 의해 지배되는 스파이킹 뉴런에 의해 수행되고,
Figure pct00155
여기서, 다음과 같고,
Figure pct00156
스파이킹 조건은 다음과 같다.
Figure pct00157
입력이 없을 경우, 뉴런은 다음에서 발화할 것이다.
Figure pct00158
따라서, (가장 빠른 스파이킹 시간에 영향을 주기 위한 입력에 대한) 최대 비-자기-참조적 (non-self-referential) 입력 시간은 (최소 지연들을 가정하면)
Figure pct00159
이다. 유사하게, 지연들에 대하여:
Figure pct00160
이다. 따라서, 다음과 같다.
Figure pct00161
반대로, 분해능
Figure pct00162
을 갖는 이산 시간 시스템에서의 최소 비-제로 (non-zero) 시간 지연은
Figure pct00163
이다. 따라서, 비-제로 효과에 대하여, 다음과 같다.
Figure pct00164
유사하게, (비-제로/순간적이지 않을 경우의) 뉴런의 출력은 범위에 있어서
Figure pct00165
로 제한된다. 따라서, 코딩된 값은 그 범위에서 다음과 같다.
Figure pct00166
Figure pct00167
의 값은 입력 지연 0 을 산출하고
Figure pct00168
의 값은
Figure pct00169
의 입력 지연을 산출한다는 것에 주목할 수도 있다. 따라서, 범위 [0,1] 에서의 입력들로 일반적으로 동작시킬 수도 있다. 그러나, 출력들은
Figure pct00170
에 의해 오프셋될 수도 있고, 가중치 범위로 인해 최대로 (N 입력들에 대해)
Figure pct00171
일 수도 있다. 따라서, 출력들의 의미는 다음과 같이 임의적으로 다시 정의될 수도 있다:
Figure pct00172
하나의 뉴런의 입력을 또 다른 뉴런의 입력으로 공급하는 측면에서 이것이 의미하는 것은 아래의 설명에서 서술될 것이다.
요약하면, 충분한 시간적 분해능이 주어질 경우에 단일 뉴런으로 임의적 정밀도의 값을 연산하기에 충분히 강력한 선형 표현의 보편적 연산에 대한 뉴런의 프레임워크가 지금까지 제공되었다. 뉴런은 스파이킹 후에 또는 불응 기간 후에 제로를 초과하는 공칭 세팅으로 재설정된 전압을 가지는 안티-누설-통합-및-발화 (ALIF) 뉴런이다. 뉴런의 시냅스들은 가중치들 및 포스트-시냅스 필터들을 전혀 가지지 않는다. 그러나, 연결들은 지연들을 가진다. 도 6 은 본 개시물의 어떤 양태들에 따른, 단일 안티-누설-통합-및-발화 (ALIF)
Figure pct00173
뉴런 k 에 대한 아키텍처의 블록도 (600) 이다.
뉴런의 시뮬레이션 또는 구현은 연속 시간 또는 이산 시간에서 행해질 수도 있다. 이산 시간 동작은 상기 이산 시간 수학식 (들) 의 반복에 의해 스텝-바이-스텝 (step-by-step) 으로 진행할 수도 있다. 그러나, 연속 시간 (및 이산 시간) 구현은 입력 이벤트가 시간 t 에서 발생할 시에 다음과 같이 이벤트-기반 방식으로 또한 실행될 수도 있다:
1. 다음과 같은 연속 시간 또는 이산 시간 수학식들을 이용하여, 이전 이벤트 시간
Figure pct00174
에서의 상태에 기초하여 뉴런 상태 변수
Figure pct00175
를 업데이트한다.
Figure pct00176
2. 다음과 같이 입력을 추가한다.
Figure pct00177
3. 스파이크에 대해 검사하고,
Figure pct00178
일 경우,
Figure pct00179
이고,
Figure pct00180
으로 재설정한다.
4. 시간
Figure pct00181
에서 뉴런 k 로부터의 시냅스를 갖는 각각의 뉴런
Figure pct00182
에 대해 이벤트들을 스케줄링한다.
5. 다음과 같은 연속 시간 또는 이산 시간 수학식들 중의 어느 하나를 이용하여 추가의 입력 없이 뉴런이 언제 발화할 것인지를 검사한다.
Figure pct00183
6. 현재 스케줄링된 발화-부재-추가-입력 (firing-absent-further-input) 이벤트를 시간
Figure pct00184
에 재스케줄링한다. 뉴런이 추가의 입력 없이 발화하지 않을 경우, 시간
Figure pct00185
은 무한대 또는 일부의 충분히 큰 수 또는 그 지표에 (대안적으로, 그것이 결코 실행되지 않도록 과거의 시간에) 효과적으로 설정될 수도 있다는 것에 주목해야 한다.
7. 발화-부재-추가-입력 이벤트 시에,
Figure pct00186
로 설정하고
Figure pct00187
로 재설정한다.
이산 시간에서 동작할 경우, 이벤트들의 스케줄링된 시간들은 반올림되거나, 또는 이와 다르게 예를 들어, 다음과 같이 시간 분해능
Figure pct00188
의 가장 근접한 배수로 변환될 수도 있다는 것에 주목해야 한다.
Figure pct00189
위에서 설명된 바와 같이, 입력에서의 정보는 도 7 에 예시된 바와 같이, 포스트-시냅스 뉴런 (예를 들어, 뉴런 k) 또는 포스트-시냅스 뉴런에 관한 비-자기-참조적 형태 혹은 (NSR-POST) 의 이전 출력 스파이크 시간 (704) 및 입력 스파이크 시간 (702) 사이의 스파이크들의 시간 차이
Figure pct00190
에서 코딩된다. 대조적으로, 출력에서의 정보는 포스트-시냅스 뉴런 또는 자기-참조적 (SR) 형태의 연속적인 스파이크들 사이의 시간 차이
Figure pct00191
에서 코딩된다.
위에서 설명된 방법은 일반화될 수도 있고, 입력 또는 출력 형태들에 대하여 (포스트-시냅스 뉴런에 관한 NSR 또는 일부의 제 3 뉴런이든지 간에) SR 또는 NSR 을 이용할 수도 있다. 이 일반화는 아래에서 더욱 상세하게 설명된다.
외부 입력 또는 출력에 대한 정보의 변환
입력은 스파이크 트레인
Figure pct00192
로서 시냅스에 제공될 수도 있다. 그러나, 센서 입력 시퀀스는 종종 실수값의 형태
Figure pct00193
이다. 이러한 시퀀스는 몇몇 방법들로 SR 또는 NSR 스파이크 트레인으로 변환될 수도 있다. 첫째, 기본적인 형태들이 고려된다.
시퀀스
Figure pct00194
는 다음의 알고리즘에 따라 SR 임시 코딩된 스파이크 시퀀스
Figure pct00195
로 변환될 수도 있다:
1.
Figure pct00196
는 스파이킹된 최종 시간 뉴런 i 라고 한다 (임의적으로 0 으로 초기화됨)(즉,
Figure pct00197
Figure pct00198
의 이전 값으로 설정함).
2.
Figure pct00199
를 연산하고, 여기서,
Figure pct00200
Figure pct00201
후의 짧은 시간 기간 T (또는 대안적으로
Figure pct00202
이전의 짧은 시간 기간 T) 동안의 (평균값과 같은)
Figure pct00203
의 함수이다.
3. 다음 스파이크의 시간을
Figure pct00204
라고 한다.
역변환을 수행하기 위하여, 시간 t 에서 스파이크가 발생할 때까지
Figure pct00205
Figure pct00206
로 설정될 수도 있다. 다음으로,
Figure pct00207
로 설정하고, 여기서,
Figure pct00208
이다.
시퀀스
Figure pct00209
는 다음의 알고리즘에 따라 NSR 임시 코딩된 스파이크 시퀀스
Figure pct00210
로 변환될 수도 있다:
1.
Figure pct00211
를 스파이킹된 최종 시간 뉴런 k 라고 한다 (임의적으로 0 으로 초기화됨)(즉,
Figure pct00212
Figure pct00213
의 이전 값으로 설정함).
2.
Figure pct00214
를 연산하고, 여기서,
Figure pct00215
Figure pct00216
후의 짧은 시간 기간 T (또는 대안적으로,
Figure pct00217
이전의 짧은 시간 기간 T) 동안의 (평균값과 같은)
Figure pct00218
의 함수이다.
3. 다음 스파이크의 시간을
Figure pct00219
라고 한다.
역변환을 수행하기 위하여,
Figure pct00220
는 시간 t 에서 스파이크가 발생할 때까지
Figure pct00221
로 설정될 수도 있다. 다음으로,
Figure pct00222
로 설정하고, 여기서,
Figure pct00223
이다.
이 시점에서는, 단일 뉴런이 임의의 수의 입력들로부터 단일 출력으로의 선형 변환을 구현하기 위하여 이용될 수도 있다는 것이 이제는 분명할 수도 있다. 그러나, 다수의 뉴런들을 이용함으로써, N 개의 입력들로부터 M 개의 출력들로의 다음과 같은 임의의 변환은,
Figure pct00224
행렬 W 의 행 (row) 들이 주어질 경우에 연산되는 지연들을 갖는 M 개의 뉴런들에 의해 연산될 수도 있다. 또한, 그러한 출력들의 일부는 입력들로서 피드백될 수도 있다 (즉, 중첩될 수 있음).
위에서는, 각각의 입력 프레임에 대해 발생할 가장 빠른 스파이크만이 고려되었다. 이것은 뉴런 모델에서의 미묘함이다. 사실상, ALIF 뉴런은 발화 시의 추가적인 동작으로 위에서 설명된 바와 같이 모델링되었다 (즉, 스파이크에 대해 검사할 때,
Figure pct00225
일 경우,
Figure pct00226
이고,
Figure pct00227
로 재설정하고,
Figure pct00228
에 대하여 모든 입력들
Figure pct00229
을 소거함). 이것이 의미하는 것은, 발화 시에, 뉴런은 소마 (soma) 에 아직 전파되지 않은 임의의 입력들에 대해 잊는다는 것이다. 따라서, 뉴런은 단지 불필요한 입력들로 인해 다시 발화하지 않을 것이다.
그러나, 이것은 엄밀히 필요하지 않다. 대안적으로, 뉴런은 다시 발화하고 우발적인 에러를 단지 받아들이게 되어 있을 수도 있다. 이것을 처리하는 또 다른 방법은, 시스템을 오직 특정 출력들만이 의미를 갖도록 취해지는 프레임-유사 모드 (frame-like mode) 로 만들도록 진동을 설정하는 것이다. 또 다른 방법은, 일부의 시간 동안에 발화를 방지하고 다음 연산을 위해 시스템을 소거하기 위하여 억제를 이용하는 것이다. 따라서, 이것을 해결하기 위한 다수의 방법들이 있다. 본 개시물의 나머지는 상기 모델을 이용하여 계속될 것이다.
상이한 밑 (예를 들어, 상이한 q) 은 희망하는 경우에 모든 뉴런에 대해 이용될 수도 있다는 것에 또한 주목할 수도 있다. 단일 입력에 대하여,
Figure pct00230
이라고 가정하면, 다음과 같다.
Figure pct00231
상이한 파라미터 q 가 입력
Figure pct00232
및 출력
Figure pct00233
에 대해 이용될 경우, 다음과 같다.
Figure pct00234
값 도메인에서, 이것은 스케일링의 또 다른 수단을 제공할 뿐만 아니라, 어느 하나가 상이한 범위들에서 상이한 뉴런들을 동작시키게 하고 이들과 인터페이스하게 한다.
어떤 양태들에 대하여, 상기 변환들에 대한 대안은, 실수값의 입력을 SR 스파이크들 또는 NSR 스파이크들로 변환하기 위하여 프록시 뉴런 (proxy neuron) 을 이용하는 것이다 (이 목적을 위하여, 임의의 타입의 뉴런이 이용될 수도 있음).
다음으로, 네거티브 가중치들 (계수들) 이 고려된다. 값 도메인에서는 네거티브 가중치들에 대응하는 비-복소수 값의 지연들이 전혀 없다. 네거티브 가중치를 적용하기 위하여, 입력은 흥분성 대신에 억제성으로 전환될 수도 있다.
즉, 단지 부호를 반전할 수도 있다. 다음을 상기하고,
Figure pct00235
여기서,
Figure pct00236
이다. 따라서,
Figure pct00237
의 네거티브 값에 대하여, 다음과 같이,
Figure pct00238
를 결정하기 위하여
Figure pct00239
의 절대값을 이용하지만,
Figure pct00240
그 다음에는, 아래와 같이 달성하기 위하여 입력을 네거티브 값으로 설정한다.
Figure pct00241
도 8 은 본 개시물의 어떤 양태들에 따라, 뉴런 (810) 상에 흥분성 및 억제성 입력들 (806, 808) 을 초래하는 포지티브 및 네거티브 스케일링 값들 (804) 및 포지티브 및 네거티브 값들 (802) 의 모든 가능한 조합들을 예시한다.
그러나, 상이한 문제는 동일한 변수의 네거티브 및 포지티브 값들의 둘 모두를 나타내고 있다. 이를 해소하기 위한 하나의 방법은 네거티브 가중치 대신에 입력의 네거티브를 이용하는 것이다. 따라서, 그 문제는 포지티브 입력뿐만 아니라 네거티브 입력을 생성하는 문제가 된다.
Figure pct00242
그러나, 각각은 포지티브 크기들 (즉, 네거티브 입력은 2 배의 네거티브 또는 포지티브 값을 나타낼 수 없고, 포지티브 입력은 네거티브 값을 나타낼 수 없음) 또는 제로를 취하기만 할 수도 있다. 제로는 무한대 (또는 매우 큰) 상대적인 입력 타이밍으로 변환하는 것에 주목해야 한다.
이제, 포지티브 가중치를 갖는 네거티브 입력을 처리하기 위하여 상기 가중치 부정에 대해 등가의 것이 행해질 수도 있다. 네거티브 값은 도 9 의 상부 도면 (902) 에서 예시된 바와 같이, 포지티브로 그리고 억제성 입력 (808) 으로서 연결된 뉴런 코딩
Figure pct00243
으로 표현될 수도 있다. 값 및 가중치 둘 모두가 네거티브일 경우, 이들은 상쇄되고, 달리 어떤 것도 행할 필요가 없다. 상부 도면 (902) 은 입력 뉴런 (906) 에 대한 포지티브 및 네거티브 값들을 나타내는 것을 예시하지만, 도 9 의 하부 도면 (904) 은 입력 및 출력 뉴런 (908) 의 둘 모두에 대한 포지티브 및 네거티브 값들을 나타내는 것을 예시한다.
핵심은 도메인들 (+ve) 및 (-ve) 을 (둘 모두가 포함될 경우에는) 출력에 대한 별도의 표현들로 분리시키고, 그 다음에, 입력 시에 (흥분 및 억제를 이용하여) 이들을 재조합하는 것이다. 입력이 특정한 도메인 (예를 들어, 포지티브) 에서 제약될 경우, 이 분리는 행해질 필요가 없다.
예 A: 스칼라의 스케일링
본 개시물의 어떤 양태들은 스케일링의 예에 의해 입증될 수도 있다. 이 예에서, 스파이킹 뉴런은
Figure pct00244
를 수행할 수도 있다. 다시 말해서, 희망하는 출력은 입력의 스케일링된 버전이다. 이 예는 출력 뉴런의 스파이크들을 기준 시간으로서 이용하는 비동기 프레임 모드에서 전체 스파이킹 네트워크 (모든 입력 및 출력이 스파이크들의 형태에 있음) 를 이용한다. 시간 분해능은 무한하거나 (연속적) 또는 이산적 (고정된 또는 가변적 스텝들이든) 일 수도 있다는 것을 상기하자.
도 10 은 본 개시물의 어떤 양태들에 따라, 뉴런 모델을 이용하여 스칼라 (scalar) 값을 스케일링하기 위한 일 예의 동작들 (1000) 의 흐름도이다. 동작들 (1000) 은 1002 및 1004 에서 초기화와 함께 시작할 수도 있다. 1002 에서, 희망하는 선형 연산에 대한 계수들
Figure pct00245
에 대응하는 시냅스 지연들
Figure pct00246
이 연산될 수도 있다. 1004 에서, 지연들은 시간적 분해능
Figure pct00247
으로 양자화될 수도 있다. 그 후, 동작들 (1000) 은 루프에 진입한다. 1006 에서, 입력 값들
Figure pct00248
은 출력 뉴런 k 의 스파이킹 시에 샘플링된다. 1008 에서, 값들
Figure pct00249
은 뉴런 k 의 최종 스파이크에 관련된 스파이크 시간들
Figure pct00250
로 변환된다. 1010 에서, 입력 스파이크 시간들은 시간적 분해능
Figure pct00251
으로 양자화된다. 1012 에서, 입력 스파이크들은 시간 오프셋들
Figure pct00252
에서 뉴런 k 의 소마에 제시된다. 1014 에서, 뉴런 k 의 출력 스파이크 시간
Figure pct00253
은 분해능
Figure pct00254
으로 결정된다.
동작들 (1000) 에서의 루프의 각각의 반복은 뉴런 k 의 하나의 출력 스파이크에 대응한다. 따라서, 프레임 지속기간이 뉴런 k 의 스파이크간 (inter-spike) 간격에 종속적이기 때문에, 타이밍이 비동기이다. 이 종류의 비동기 프레임 (기준) 을 이용할 때, 입력의 샘플링 레이트는 가변적이다. 구체적으로, 입력 지연들이 작도록 총 입력이 큰 (값-도메인) 경우, 뉴런 k 는 더 빨리 발화하고, 이에 따라, 짧은 시간 내에 입력을 다시 샘플링한다. 총 입력이 작은 (값-도메인) 경우에는 그 반대의 상황이 발생한다. 따라서, 입력의 샘플링 레이트는 출력 값의 크기에 비례적이다. 이것은, 중요한 입력 값들이 더 자주 샘플링되는 반면, 중요하지 않은 입력들은 낮은 또는 최소의 레이트에서 샘플링되는 경향이 있어서, 연산력 및 자원들을 절감한다는 점에서 장점을 가진다.
이것이 어떻게 작동하는지를 알아 보기 위하여, 희망하는 스칼라 선형 결과는 단 한번의 스파이킹 뉴런 k 로 얻어질 수도 있다. 위에서 설명된 바와 같이, 초기화를 위하여,
Figure pct00255
를 연산할 수도 있다. 이 예에 대하여, 시간 분해능의 효과들을 입증하기 위하여 (연속 시간 대신에) 이산 시간 시스템이 이용된다. 이 예에 대하여,
Figure pct00256
= 0.1 ms 라고 가정하고
Figure pct00257
= 0.1 이라고 하면,
Figure pct00258
= 1 이면서 임의적으로 작은
Figure pct00259
= 0.01 이다. 이것은
Figure pct00260
= 100 과, 약 21 Hz 의 최소 뉴런 발화 레이트 또는 48 ms 의 주기 (임의의 입력 부재) 를 산출한다. 파라미터
Figure pct00261
이다. 동작가능한 계수 범위는 0.0001 내지 0.01 이다. 임의적인 계수
Figure pct00262
는 이 예에 대해 선택되고 (예를 들어, 계수 최대치의 1/2), 다음과 같은 형태의 시간 오프셋 정현파가 제시된다.
Figure pct00263
Figure pct00264
= 1/2 이 선택될 경우, 출력은 0.02 (
Figure pct00265
로 인한) 0.01 내지 최대 0.02 의 스케일로 되어 있을 것이다.
도 11a 는 본 개시물의 어떤 양태들에 따라, 0.1 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 단일 수상돌기 입력 상에서 스칼라 입력을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1102), 시간 경과에 따른 출력 값들의 그래프 (1104), 및 선형성 그래프 (1106) 를 예시한다. 도 11b 는 본 개시물의 어떤 양태들에 따라, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 단일 수상돌기 입력 상에서 스칼라 입력을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1112), 시간 경과에 따른 출력 값들의 그래프 (1114), 및 선형성 (1116) 을 예시한다. 예시된 바와 같이, 뉴런 모델은 시간적 코딩 도메인에서 매우 선형이다. 물론, 정밀도는 시간 분해능에 종속된다. 따라서, 10x 만큼 시간 분해능이 열화될 때, 시간적 분해능으로 인한 에러들이 출력에서 뚜렷해진다.
예 B: 선형 변환
이 예에서는, 동일한 예 A 가 이용되지만, 더 많은 입력들이 추가된다. 바람직한 뉴럴 모델은 다음과 같다.
Figure pct00266
계수들은 상기 예에서와 같이 정확히 설정된다. 10 개의 입력들이 이용되고, 임의적인 계수들은 최대 계수 값의 분수들 [0.5 0.65 0.55 0.5 0.39 0.59 0.4 0.81 0.87 0.35] 이라고 하는 범위에 걸쳐 선택된다. 각각의 입력을 상이한 양만큼 오프셋하는 것을 제외하고는, 이전의 예 (오프셋 정현파) 와 동일한 입력 포맷을 이용할 수도 있다. 삼각법으로부터, 주파수들이 동일할 경우에 결과
Figure pct00267
가 스케일링된 정현파라는 것을 알고 있으므로, 더욱 흥미롭게 하기 위하여, 이 예는 각각의 입력에 대해 상이한 주파수를 이용한다. 이것을 연산하기 위하여 단일 뉴런이 이용되고, 상기 예에서와 같이, 시냅스 지연들이 계수들에 따라 배정되어, [6.9 4.3 6 7 9.5 5.3 9.2 2.1 1.4 10.5] ms 의 지연들을 산출한다.
도 12a 는 본 개시물의 어떤 양태들에 따라, 0.1 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1202), 시간 경과에 따른 출력 값들의 그래프 (1204), 및 선형성 그래프 (1206) 를 예시한다. 도 12b 는 본 개시물의 어떤 양태들에 따라, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1212), 시간 경과에 따른 출력 값들의 그래프 (1214), 및 선형성 그래프 (1216) 를 예시한다.
Figure pct00268
= 1 ms 일 때, 스냅스 지연들은 또한 분해능을 상실하고 [7 4 6 7 10 5 9 2 1 11] 이 되는 것에 주목해야 한다. 시간 분해능에 대한 감도는 어느 하나가 입력들을 추가함에 따라 감소한다. 이것은 도 12b 의 선형성 그래프 (1216) 에서의 결과들의 수직 빈 (vertical bin) 들의 수에서 알게 될 수도 있다. 사실상, 출력 타이밍의 범위는 더 많은 입력들과 함께 더 커진다.
Figure pct00269
= 0.1 ms 의 경우에 대한 시간에 있어서의 평균 출력 에러는 0.01 ms 미만이었고,
Figure pct00270
= 1 ms 에 대해서는 0.1 ms 미만이었다. 기본적으로, 이것은 뉴런이 약 10 개의 스파이크들 내의 1 개에서 1 회 분해능의 에러를 가진다는 것을 의미한다.
예 C: 포지티브 및 네거티브 계수들
이 예에서는, 상기한 바와 동일한 예가 이용되지만, 네거티브 계수들이 포함된다. 10 개의 입력들이 이용되고, 임의적인 계수들은 분수들 [0.5 0.65 0.55 0.5 -0.39 -0.59 -0.4 0.81 0.88 0.35] 라고 하는 범위에 걸쳐 선택된다. 이것들의 절대값들은 지연들을 연산하기 위하여 이용된다. 그러나, 네거티브 값의 입력들에 대하여, 시냅스는 억제성으로 전환된다.
도 13a 는 본 개시물의 어떤 양태들에 따라, 포지티브 및 네거티브 둘 모두의 스케일링 값들을 이용하여, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1302), 시간 경과에 따른 출력 값들의 그래프 (1304), 및 선형성 그래프 (1306) 를 예시한다. 도 13b 는 포지티브 및 네거티브 둘 모두의 스케일링 값들을 이용하지만, 억제로의 반전을 잘못 생략하여, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1312), 시간 경과에 따른 출력 값들의 그래프 (1314), 및 선형성 그래프 (1316) 를 예시한다.
예 D: 잡음성 ALIF
잡음 항을 다양한 적당한 방법들 중의 임의의 것으로 추가함으로써 잡음이 ALIF 모델에 추가될 수도 있다. 하나의 간단한 방법은 잡음 항을 미분 방정식 계수
Figure pct00271
에 추가하는 것이다:
Figure pct00272
이것은, 멤브레인 전위가 더 커짐에 따라, 잡음 항에 대한 동일한 값이 멤브레인 전위에 있어서 점점 더 큰 변화를 발생하기 때문에 잡음의 공격적인 형태이다. 그러나, 이것은 이 뉴런이 발화에 더 근접할 때에 필요치 않은 입력이 뉴런을 타격할 경우에 일어날 것이므로, 이것은 틀림없이 생물학적으로 일관성이 있다.
도 14 에 예시된 바와 같은 이 예에서, 상기 예 C 는,
Figure pct00273
= 1 ms 라고 가정할 때,
Figure pct00274
의 값의 제로 평균 및 표준 편차 10% 를 갖는 가우스 분포 (Gaussian distribution) 를 가지는 상기 잡음 항이 추가된 것을 제외하고는, (포지티브 및 네거티브 계수들로) 반복된다. 잡음 항은 백색인 것으로 가정된다 (즉, 부가 백색 가우스 잡음 (additive white Gaussian noise; AWGN)).
도 14 는 본 개시물의 어떤 양태들에 따라, 포지티브 및 네거티브 둘 모두의 스케일링 값들과, 뉴런 모델의 멤브레인 전위에 추가된 잡음 항을 이용하여, 1.0 ms 의 시간적 분해능을 이용하는 단일 뉴런 모델의 10 개의 수상돌기 입력들에 대해 스칼라 입력들을 스케일링할 때, 시간 경과에 따른 일 예의 입력 값들의 그래프 (1402), 시간 경과에 따른 출력 값들의 그래프 (1404), 및 선형성 그래프 (1406) 를 예시한다. 선형성 그래프 (1406) 에서의 임의의 소정의 시점에 대한 선형성으로의 상당한 잡음 교란에도 불구하고, 평균적으로, 그래프 (1404) 에서 예시된 바와 같이, 뉴런은 선형적 변환을 매우 양호하게 따를 수 있다는 것을 알 수 있다.
상대적 시간 기준들의 변환
이 섹션은 2 개의 상대적 시간 형태들, 즉, 자기-참조적 (SR) 및 비-자기-참조적 (NSR) 사이의 변환을 다룬다. 자기-참조적 (SR) 시간을 비-자기-참조적 포스트-시냅스 뉴런 시간 (NSR-POST) 으로 변환하는 것은, (예를 들어, 도 7 에 대하여) 상기 설명된 뉴런 모델이 NSR-POST 입력 타이밍을 받아들이고 SR 타이밍을 출력하기 때문에 특히 관심이 있다. 그 뉴런의 입력을 또 다른 것에 공급하는 것은 변환을 수반할 가능성이 가장 높을 수도 있다. NSR 서브-형태들의 구분은, 프리-시냅스 스파이크 시간이 포스트-시냅스 뉴런 스파이크 시간 (NSR-POST) 과 관련되는지 또는 제 3 뉴런의 스파이크 시간 (NSR-THIRD) 과 관련되는지 여부 사이의 하나이다.
핵심적인 통찰은, 위에서 정의된 ALIF 뉴런 모델이 스파이킹의 시간에서 멤브레인 전위를
Figure pct00275
로 재설정하는 것을 포함한다는 것이다. 그러나, 이것은 스파이킹 시에
Figure pct00276
를 재설정하는 것으로 용이하게 다시 정의되는 것과 같을 수도 있고, 여기서,
Figure pct00277
이다. 사실상, 이것은 전위가 입력에 의해 제로를 초과하여 증가될 때까지 서브-임계치 조건에서의 간단한 뉴런을 모델링한다. 일반성의 손실 없이, 입력 크기를
Figure pct00278
로 설정할 수도 있다. 이제, 모든 SR 출력 타이밍은 먼저 발생하는 입력과 관련된 NSR 타이밍으로 변환될 것이다.
그러나, 먼저 발생하는 입력이 입력 r 로서 지정될 경우, 동일한 입력 r 을 2 개의 뉴런들 (하나의 프리-시냅스 및 하나의 포스트-시냅스) 에 제공하는 것은
Figure pct00279
Figure pct00280
변환하는 것이므로, 시간적 변환들은 뉴런들에 걸쳐 제어될 수도 있다.
일 예로서, 도 15 는 동일한 입력 r (1502) 을 프리-시냅스 뉴런 (1504) 및 포스트-시냅스 뉴런 (1506) 에 제공하는 것을 예시한다.
그러나, 어느 쪽의 입력이 먼저 발생하든지 자동으로 기준을 제공하므로, 실제적인 기준은 심지어 존재할 필요조차 없다. 유일한 전제조건은 정보가 입력들 사이의 상대적 시간 차이에서 코딩된다는 것이다. 이것은 상호종속성 (interdependence) 을 생성하기 위하여 입력들 사이의 측방 억제 (lateral inhibition) 를 이용하는 것을 포함하는 다양한 방법들로 달성될 수도 있다. 대안적으로, 기준으로 하여금 발화하게 하기에 충분한 것을 기준에 대한 입력들로서 모든 입력들을 연결함으로써 기준이 구동될 수도 있다. 따라서, 기준은 제 1 입력 발화의 함수로서 발화할 것이다. 이것은 문제점을 마찬가지로 해결하고, 출력의 상대적 판독을 위한 표시로서 단일 엘리먼트 (기준) 을 또한 제공한다. 도 16 은 단일 입력에 대한 피드-포워드의 경우를 예시한다.
어떤 양태들에 대하여, 도 17 에 도시된 바와 같이 상기한 바를 달성하기 위하여 피드백이 또한 이용될 수도 있다. 바로 아래의 뉴런이 기준으로서 이용되므로 이것은 덜 일반적인 경우이지만, 그것은
Figure pct00281
를 연산하기 위한 입력으로서
Figure pct00282
에 정확하게 대응하므로, 도시하는 것은 자연적인 경우이다.
상기 수정 (즉, 뉴런의 전위를
Figure pct00283
이외의 값으로 재설정하는 것) 은 또 다른 목적을 위하여 이용될 수도 있다. 스파이킹 (또는 다른 기준 시간) 시에,
Figure pct00284
을 재설정하는 대신에,
Figure pct00285
으로 한다고 가정한다.
Figure pct00286
일 경우, 이것은 다음 발화를 진행할 것이다 (즉,
Figure pct00287
를 감소시킴). 대안적으로,
Figure pct00288
일 경우, 이것은 다음 발화를 지연시킬 것이다 (즉,
Figure pct00289
를 증가시킴). 이것은 뉴런의 구성이 연산된 소정의
Figure pct00290
로서 유지된다는 것 (즉,
Figure pct00291
의 값이
Figure pct00292
와 동일시하기 위하여 변화되지 않는다는 것) 을 가정하고 있다. 예를 들어, 기준 시간과 가상적인 시간 사이에 입력이 전혀 없었을 것을 가정하면, 뉴런 전위가 (
Figure pct00293
대신에)
Figure pct00294
로 재설정되었을 경우에 뉴런 전위가
Figure pct00295
에 도달하였을 것이고,
Figure pct00296
에서의 변화는 다음과 같이 주어진다.
Figure pct00297
그 반대 (증가) 는
Figure pct00298
을 설정함으로써 달성될 수도 있다. 값
Figure pct00299
의 정의를 상기하면, 값에 대한 상기한 바의 효과는 다음과 같으며,
Figure pct00300
또는
Figure pct00301
이다. 따라서, 재설정 전압
Figure pct00302
를 다음과 같이 간단히 조절함으로써 값 도메인에서의 인자
Figure pct00303
에 의해
Figure pct00304
뉴런의 출력을 임의적으로 변경할 수도 있다.
Figure pct00305
Figure pct00306
뉴런은 입력 및 출력에 대한 상이한 시간 범위들에서 또한 동작할 수도 있다. 출력 타이밍은
Figure pct00307
의 범위에서 일반적으로 변동될 수도 있고, 여기서, (재설정 전위가
Figure pct00308
라고 가정하면)
Figure pct00309
이다. 이 상한 (upper limit) 은 뉴런이 입력 없이 발화할 시간이다. 그러나, 최소 관찰된 시간은 입력 타이밍 및 입력 지연들의 조합으로 인해 통상적으로
Figure pct00310
로 되지 않을 것이다. 이것은 상한에 대하여 출력 시간 범위를 사실상 압축할 것이므로, 입력에 대한 이 범위를 추후의 뉴런으로 다시 확장하는 것은 바람직할 수도 있다. 이것은 내포된 양만큼 이전 기준으로부터 지연되는 새로운 기준을 이용함으로써 용이하게 행해질 수도 있다.
최소 지연이
Figure pct00311
인 것으로 가정하면, 다음과 같이 된다.
Figure pct00312
따라서,
Figure pct00313
이후의 스파이크 타이밍 (대안적으로 더 빠를 수도 있음) 을 가지는 기준으로 변화시킴으로써, 시간 범위를 오프셋 (offset) 함으로써 값을
Figure pct00314
에 의해 스케일링할 수도 있다. 예를 들어, 최소 지연
Figure pct00315
이 20 ms 일 경우, 20 ms 이후에 있는 기준을 이용함으로써 20 ms 를 감산할 수도 있다. 이것은 더 큰 범위에 이르는 값 도메인 양을 스케일링할 것이다. 수학식들의 이산 시간 형태들이 위에서 이용되지만, 유사한 동작들이 위에서 입증된 바와 같이 연속 형태로 행해질 수도 있다.
어떤 양태들에 대하여, 전파하는 기준파를 이용하여 멀티-뉴런 시스템 (예를 들어, 도 1 의 뉴럴 시스템 (100)) 을 타이밍을 정할 수도 있다. 전파하는 기준파는 뉴런들에 대한 기준 재설정 시간으로서 작용하고, 상이한 시간들에서 상이한 뉴런들을 재설정한다. 따라서, 적절하게 지연된 기준 변화를 제공함으로써, 프리-시냅스 뉴런들의 출력들은 포스트-시냅스 뉴런들에 대한 입력들로 적절하게 변환될 수도 있다.
도 18 은 본 개시물의 어떤 양태들에 따라, 일련의 뉴런들에 대한 전파하는 기준파를 예시한다. 도 18 에서, 계층 n-1 뉴런들 (1802) 은 입력 r (1502) 을 기준으로서 수신한다. 입력 r (1502) 은 제 1 지연 (z1; 1804) 만큼 지연되고, 지연된 r (지연') 은 계층 n 뉴런들 (1806) 에 대한 기준으로서 작용한다. 지연된 r 은 제 2 지연 (z2; 1808) 만큼 더 지연되고, 결과적인 지연된 r (지연'') 은 계층 n+1 뉴런들 (1810) 에 대한 기준으로서 작용한다. 제 1 지연 (1804) 은 제 2 지연 (1808) 과 동일하거나 상이할 수도 있다.
어떤 양태들에 대하여, 이 전파하는 기준 프레임 파는 입력 (기록) 및 출력 (판독) 에 대한 기준으로서 또한 이용될 수도 있다. 기준은 계층들을 가로질러 전파하는 배경 잡음 또는 발진 레벨로서 또한 공급될 수도 있다. 기준 프레임 파는 (즉, 이전의 계층 (들) 또는 후속 계층 (들) 의 이전의 프레임 또는 그 조합에 의해) 위에서 언급된 바와 같이 또한 자체-발생될 수도 있다.
프레임 파의 또 다른 선택적인 장점은, (제거되지 않으면) 포스트-시냅스 뉴런의 필요치 않은 발화를 야기할 수도 있는 늦은 입력들을 처리하기 위한 대안적인 방법을 제공한다는 점이며: 출력은 흥분 및 억제의 파들에서 기준을 이용하는 시스템을 통해 클록킹되어 (clocked), 미리 규정된 시간 내의 기준을 뒤따르는 출력들만이 영향을 받는다.
도 19 는 본 개시물의 어떤 양태들에 따라, 도 18 의 전파하는 기준파를 갖는 일련의 뉴런들에 대한 일 예의 타이밍도 (1900) 를 예시한다. 계층 n-1 뉴런들 (1802) 은 뉴런들 i 로서 고려될 수도 있고, 계층 n 뉴런들 (1806) 은 뉴런들 j 로서 고려될 수도 있고, 계층 n+1 뉴런들 (1810) 은 뉴런들 k 로서 고려될 수도 있다.
어떤 양태들에 대하여, 대안은 도 20 에 묘사된 바와 같은
Figure pct00316
뉴런 (2002) 으로 생각되는 것을 이용하는 것일 수도 있다. 이 타입의 뉴런의 목적은 도 20 에 도시된 바와 같이, SR 을 NSR 로 변환하거나,
Figure pct00317
Figure pct00318
로 변환하는 것이다. 이것을 달성하기 위한 하나의 방법은, SR 입력 타이밍이 래치 (latch) 되며 뉴런의 탈분극 (depolarization) 을 구동하기 위해 이용되는
Figure pct00319
뉴런에 대한 특수한 동적 동작에 의한 것이다. (다른 입력들과는 상이하게 다루어지는) 기준 이력에 대해 탈분극을 조절함으로써, 출력 타이밍은 NSR 형태로 결정될 수도 있다. 이것은 아래에서 더욱 상세하게 설명된다.
뉴런
Figure pct00320
의 동역학들이 다음 수학식에 의해 정의된다고 하고,
Figure pct00321
여기서,
Figure pct00322
는 입력 상태이고,
Figure pct00323
는 입력 래치이고,
Figure pct00324
는 뉴런 멤브레인 전위 또는 뉴런의 상태이다.
라플라스 변환을 취하는 것은 다음을 산출한다.
Figure pct00325
Figure pct00326
Figure pct00327
이라고 한다.
Figure pct00328
이라고 가정하면, 다음과 같다.
Figure pct00329
Figure pct00330
을 가정하여 역 라플라스 변환을 연산하면, 다음과 같다.
Figure pct00331
Figure pct00332
Figure pct00333
을 가정하면, 다음과 같다.
Figure pct00334
Figure pct00335
으로의 초기화를 더 가정하면, 다음과 같다.
Figure pct00336
Figure pct00337
를 가정하여 역 라플라스 변환을 취하면, 다음과 같다.
Figure pct00338
조건 임계치
Figure pct00339
시에, 스파이킹 시의 동작을
Figure pct00340
(그렇지 않을 경우에는
Figure pct00341
) 로서 정의하면, 다음과 같다.
Figure pct00342
따라서, SR
Figure pct00343
로부터 NSR
Figure pct00344
로의 변환이 다음과 같이 모델링될 수도 있다는 것을 알 수 있다.
Figure pct00345
선형성에 대하여,
Figure pct00346
이다. 동등함을 위하여,
Figure pct00347
이다. 그러나, 대조적으로, 다음과 같이 되도록 한다.
Figure pct00348
동일한 사항이 이산 시간 분해능
Figure pct00349
에서 유사하게 행해질 수도 있다:
Figure pct00350
지연 분해능
Figure pct00351
에 대해서는, 다음과 같다.
Figure pct00352
상기한 것과 동일시하면, 다음과 같다.
Figure pct00353
그러므로, 다음과 같다.
Figure pct00354
대체로 합성하면,
Figure pct00355
(예를 들어,
Figure pct00356
= 1),
Figure pct00357
(예를 들어,
Figure pct00358
), 및
Figure pct00359
를 선택할 수도 있다.
Figure pct00360
뉴런 형태 (명목상으로 SR 입력을 NSR 출력으로 변환함) 는 이에 따라
Figure pct00361
뉴런 형태들 (명목상으로 NSR-POST 입력을 SR 출력으로 변환함) 과 조합하여 (인터페이스되어) 이용될 수도 있다. 사실상, 이 뉴런들을 반대 타입으로 연결할 수도 있다. 이 뉴런들이 어떤 뉴런도 동일한 타입의 뉴런에 연결되지 않도록 연결될 경우, SR 과 NSR 상대적 타이밍 사이의 변환의 다른 형태들에 대한 필요성이 전혀 없다.
입력들의 수와의 ALIF 선형성의 특징화
이 섹션은 입력들의 변동되는 수와의 상기 설명된 뉴런 모델의 선형성의 특징화 (characterization) 를 다룬다. 이 특징화를 위하여, 랜덤 입력들 및 랜덤 계수들이 이용된다. 이산 시스템은 이 특징화를 위하여 임의적으로 선택되고, 간략화를 위하여,
Figure pct00362
= 1 ms 의 시간 분해능이 이용된다. 선형성 그래프들 (2101, 2102, 2104, 2108, 2116, 및 2132) 는 각각 1, 2, 4, 8, 16, 및 32 개의 입력들에 대해 도 21 에 도시되어 있다. 입력들의 수가 증가함에 따라, 범위가 증가하므로, 유효 분해능이 증가한다. 그러나, 정밀도는 감소할 수도 있다. 이것은 균일한 분포의 결과에 불과하다. 효과는 출력 (그리고 입력들 및 계수들) 의 값의 범위에 따라 변동될 수도 있다는 것에 주목해야 한다. 상기 예들에서 도시되었던 바와 같이, 정밀도는 더 양호한 시간 분해능으로 철저하게 또한 개선된다.
왜 ALIF 인가?
어떤 한도까지, 간단한 모델을 포함하는 LIF 및 다른 뉴런 모델들은 선형적으로 예측가능한 발화를 가진다. 그 차이는 어느 하나가 선형 예측기를 이용하여 예측할 수 있는 충실도 또는 정확도에 있다.
ALIF 뉴런을 이용하는 것이 제안되는지를 이해하기 위하여,
Figure pct00363
뉴런 형태는 시간적 도메인에서 검사되고:
Figure pct00364
여기서, 다음과 같다.
Figure pct00365
어느 하나가
Figure pct00366
을 선택할 경우, 모델은 ALIF 이다. 그러나, 어느 하나가
Figure pct00367
을 선택할 경우, 모델은 LIF 이다. 실제로,
Figure pct00368
일 경우, q < 1 (즉, 분수) 이고, 1/q > 1 이다. 분수 밑을 갖는 로그는 1 보다 더 큰 임의의 인수에 대해 네거티브일 것이다. 추가의 입력 없이 발화하기 위한 시간은 다음과 같다.
Figure pct00369
따라서, 포지티브 (인과관계적) 인 시간 동안에는,
Figure pct00370
이고, 이것은 뉴런이 이미 스파이킹되었음 (임계치를 초과하였음) 을 의미하므로 모순적이다. 이것은 LIF 가 다소 예측가능하지 않다는 것을 의미한다. 그것은 어느 하나가 ALIF 로 행해지는 바와 같이, LIF 를 이용하여 이상적인 선형 예측가능성에 대한 뉴런 모델을 용이하게 설계할 수 없다는 것을 의미할 뿐이다.
도 22 는 본 개시물의 어떤 양태들에 따라, 상대적 시간에 기초하여 뉴런 모델로부터 출력 스파이크를 방출하기 위한 일 예의 동작들 (2200) 의 흐름도이다. 동작들 (2200) 은 하드웨어로 (예를 들어, 하나 이상의 프로세싱 유닛들에 의해), 소프트웨어로, 또는 펌웨어로 수행될 수도 있다.
동작들은 2204 에서, 제 1 뉴런 모델에서 적어도 하나의 입력을 수신함으로써 시작할 수도 있다. 입력은 2 진 값의 입력 스파이크 또는 스파이크 트레인과 같은, 스파이크-시간 도메인에서의 입력을 포함할 수도 있다. 어떤 양태들에 대하여, 입력은 실수값의 도메인에서의 입력을 포함할 수도 있다.
제 1 뉴런 모델은 예를 들어, ALIF 뉴런 모델일 수도 있다. 어떤 양태들에 대하여, 제 1 뉴런 모델은 지수함수로 증가하는 멤브레인 전위를 가질 수도 있고, 억제성 입력의 부재 시에 계속 탈분극할 수도 있다. 흥분성 입력은 제 1 뉴런 모델로 하여금 제 1 뉴런 모델이 흥분성 입력 없이 발화할 때보다 더 빨리 발화하게 할 수도 있다.
2206 에서, 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간은 수신된 입력에 기초하여 결정될 수도 있다. 입력이 (입력 스파이크와는 대조적으로) 입력 값을 포함할 때, 2206 에서 상대적 시간을 결정하는 것은 입력 값을 상대적 시간으로서 인코딩하는 것을 포함할 수도 있다. 이 인코딩은 상대적 시간을 입력 값의 로그의 네거티브로서 계산하는 것을 포함할 수도 있고, 여기서, 로그는 제 1 뉴런 모델에 대한 멤브레인 전위의 함수로서의 멤브레인 전위의 변화의 계수의 지수 값과 동일한 밑을 가진다.
2210 에서, 출력 스파이크는 상대적 시간에 기초하여 제 1 뉴런 모델로부터 방출될 수도 있다. 어떤 양태들에 대하여, 출력 스파이크를 방출한 후, 제 1 뉴런 모델의 멤브레인 전위는 2212 에서 제로를 초과하는 공칭 세팅으로 재설정될 수도 있다.
어떤 양태들에 따르면, 기준 시간은 제 1 뉴런 모델의 제 2 출력 스파이크 시간을 포함할 수도 있고, 제 2 출력 스파이크 시간은 제 1 출력 스파이크 시간 전에 발생할 수도 있다. 다른 양태들에 대하여, 기준 시간은 제 2 뉴런 모델의 제 2 출력 스파이크 시간을 포함할 수도 있고, 여기서, 제 1 뉴런 모델의 출력은 제 2 뉴런 모델의 입력에 결합되고, 여기서, 제 2 출력 스파이크 시간은 제 1 출력 스파이크 시간 전에 발생한다. 제 1 뉴런 모델은 제 1 뉴런 모델에 대한 제 1 멤브레인 전위의 변화의 제 1 계수를 가질 수도 있고, 제 2 뉴런 모델은 변화의 제 1 계수와는 상이한, 제 2 뉴런 모델에 대한 제 2 멤브레인 전위의 변화의 제 2 계수를 가질 수도 있다. 어떤 양태들에 대하여, 제 2 뉴런 모델은 제 1 뉴런 모델에 대한 기준 시간으로부터 지연되는 또 다른 기준 시간을 이용할 수도 있다.
어떤 양태들에 대하여, 동작들 (2200) 은, 2204 에서 적어도 하나의 입력을 수신하기 전에 발생할 수도 있지만 이와 같이 발생할 필요가 없는, 2202 에서 제 1 뉴런 모델에 의해 모델링된 함수 (예를 들어, 스케일링 함수 또는 다른 선형 변환) 에 기초하여 적어도 하나의 입력에서의 지연을 결정하는 것을 포함할 수도 있다. 상대적 시간은 2208 에서의 지연에 기초하여 조절될 수도 있어서, 출력 스파이크는 조절된 상대적 시간에 기초하여 방출된다. 예를 들어, 함수는 스칼라 (scalar) 에 의한 승산 (multiplication) 을 포함할 수도 있고, 여기서, 2202 에서 지연을 결정하는 것은 지연을 결정하기 위하여 스칼라의 절대값을 연산하는 것을 포함하고, 여기서, 제 1 뉴런 모델로의 입력과 연관된 시냅스는 스칼라가 네거티브일 경우에 억제성 시냅스로서 이용되고, 여기서, 제 1 뉴런 모델로의 입력과 연관된 시냅스는 스칼라가 포지티브일 경우에 흥분성 시냅스로서 이용된다. 어떤 양태들에 대하여, 함수는 아래에서 더욱 상세하게 설명되는 바와 같이, 항상성 프로세스 (homeostatic process) 또는 타겟 출력 지연에 기초한 학습 함수 (learning function) 일 수도 있다. 어떤 양태들에 따르면, 2202 에서 지연을 결정하는 것은 지연을 희망하는 시간적 분해능으로 양자화하는 것을 포함할 수도 있고, 여기서, 2208 에서 상대적 시간을 조절하는 것은 양자화된 지연에 기초하여 상대적 시간을 조절하는 것을 포함한다. 함수의 정밀도는 시간적 분해능에 종속될 수도 있다.
어떤 양태들에 따르면, 2204 에서 입력을 수신하는 것은 희망하는 시간적 분해능에 기초한 샘플링 레이트로 입력을 샘플링하는 것을 포함할 수도 있다. 이러한 양태들에서, 2206 에서 상대적 시간을 결정하는 것은 상대적 시간을 시간적 분해능으로 양자화하는 것을 포함할 수도 있다.
어떤 양태들에 대하여, 동작들 (2200) 은 2214 에서 제 1 뉴런 모델에 대한 출력값을 결정하는 것을 더 포함할 수도 있다. 출력값은 방출된 출력 스파이크의 시간과 기준 시간 사이의 시간 차이에 기초하여 결정될 수도 있고, 여기서, 출력값은 제 1 뉴런 모델에 대한 멤브레인 전위의 변화의 계수의 지수 값의 역 (inverse) 이고, 지수는 역을 취하기 전에 시간 차이의 거듭제곱으로 상승된다. 2216 에서, 출력값은 디스플레이, 또는 출력값을 표시하기 위한 임의의 다른 적당한 수단으로 출력될 수도 있다.
학습
스파이킹 네트워크들에서의 학습은 장기 강화 (long-term potentiation; LTP) 및 장기 저하 (long-term depression; LTD) 의 둘 모두를 포함하는 쌍별 (pair-wise) 스파이크-타이밍-종속적 가소성 (STDP) 규칙을 이용하여 통상적으로 모델링된다. LTP 는 통상적으로, 프리-시냅스 뉴런 이후에 포스트-시냅스 뉴런이 발화할 때에 시냅스 가중치들을 증가시킨다. LTD 는 통상적으로, 반대의 순서가 나타날 때에 시냅스 가중치들을 감소시킨다. 통상적으로, 지수 모델은 둘 모두에 대해 이용된다.
구체적으로, 기본적인 STDP 규칙으로, 가중치는, 프리-시냅스 스파이크 시간
Figure pct00371
이후에 포스트-시냅스 스파이크 시간
Figure pct00372
이 발생할 경우에 증가되고, 순서가 반전될 경우에 감소된다. 변화들은 다음의 수학식에 의해 결정되는 바와 같이 상이한 크기들을 가질 수도 있고:
Figure pct00373
여기서,
Figure pct00374
이고,
Figure pct00375
값들은 LTP 및 LTD 에 대한 학습 레이트를 결정하고,
Figure pct00376
들은 LTP 및 LTD 의 지수 감쇠들 (또한 상이할 수도 있음) 에 대한 시간 상수들이다.
그러나, 본원에서 설명된 일반적인 스파이킹 뉴럴 연산에서는, 가중치들이 불필요하다. 그럼에도 불구하고, 연결들은 뮤트 (muted; 연결해제/디스에이블) 및 언뮤트 (unmuted; 재연결/인에이블) 될 수도 있다. 이것이 본 개시물의 양태들과 얼마나 적합한지를 이해하기 위하여, 기준의 프레임을 고려할 수도 있다. 어떤 양태들에 대하여, 정보는 스파이크와 또 다른 스파이크 (또는 기준 시간) 사이의 상대적 시간에서 일시적으로 코딩된다. 입력이 뉴런이 발화하기 전에 도달할 경우 (시냅스 지연을 포함함), 입력은 발화 시간에 영향을 줄 수도 있다. 그러나, 입력이 뉴런이 발화한 후에 도달할 경우, 입력은 (최대로) 다음 발화에 영향을 줄 수 있을 뿐일 수도 있다.
예를 들어, 도 23 에 예시된 바와 같이, 포스트-시냅스 뉴런 k 에 대한 하나의 입력 스파이크 (2302 에서의 뉴런 j 의 출력 스파이크 플러스 (plus) 연결 지연) 는 2304 에서 뉴런 k 가 발화하기 전에 도달하고, 2304 에서의 발화에 영향을 가지기에 시기 적절하다. 포스트-시냅스 뉴런 k 에 대한 또 다른 입력 스파이크 (2306 에서의 뉴런 j 의 출력 스파이크 플러스 연결 지연) 는 2304 에서 뉴런 k 가 발화한 후에 도달하고, 프레임이 이 발화에 임의의 영향을 가지기에 너무 늦다.
본 개시물의 양태들에 따르면, 값 도메인에서는,
Figure pct00377
이어서, (일반적으로 q > 1 이므로) 작은 값이 긴 시간
Figure pct00378
에 대응한다. 따라서, 입력이 충분히 작은 값을 가질 경우, 그것은 출력 (결과) 과 관련하여 중요하지 않을 수도 있어서, 출력 스파이크 타이밍에 임의의 영향을 가지기에 너무 늦게 도달할 수도 있다. 위에서, 이 늦은 도달이 다음 발화 시간에 영향을 주는 것을 방지하는 다양한 방법들이 설명되어 있다. 그러나, STDP-유사 규칙을 사실상 중요하지 않은 일시적 뮤트 입력들에 적용함으로써, 이것을 학습하는 자동적인 방법이 또한 있다. 추후에 그 입력이 중요해질 경우, 시냅스는 언뮤트될 수도 있다.
본 개시물의 어떤 양태들에 대하여, 시냅스 지연은 값 도메인에서의 가중치를 나타낸다. 지연을 학습하는 것은 선형 변환을 학습하는 것에 대응한다. 그러므로, 학습 규칙은 값 도메인에서 값 가중치들 (계수들) 을 학습하기 위해 채용될 수도 있고, 이 가중치들은 (스파이크-타이밍 도메인에서) 지연들로 변환될 수도 있다.
대안적으로, 시간 도메인으로 변환함으로써, 그리고 시간 도메인에서 지연 적응 규칙들을 실행함으로써, 적응이 지연들에 직접 적용될 수도 있다.
이것이 어떻게 달성될 수도 있는지를 알아보기 위하여, 입력들의 소정의 세트에 대해 출력 지연
Figure pct00379
를 가지는 뉴런 k 를 고려한다. 그러나, 타겟 출력 지연이
Figure pct00380
라고 한다. 타겟 출력 지연을 얻기 위하여, 타겟 입력 지연들
Figure pct00381
은 다음 수학식에 따라 희망된다:
Figure pct00382
그래디언트 (gradient) 를 취하면, 다음과 같이 된다
Figure pct00383
반전하면 다음과 같이 된다.
Figure pct00384
이것은 지연들에 대한 학습 규칙을 제공하고,
Figure pct00385
이것은 (
Figure pct00386
이라고 가정하면) 다음과 같이 간략화될 수도 있다.
Figure pct00387
상기 그래디언트의 분모에 대한 특정 입력 i 기여분이 작다고 가정하면, 다음과 같이 훨씬 더 합성 및 간략화할 수도 있고,
Figure pct00388
이것은 입력 시간 및 현재의 지연뿐만 아니라, 타겟 발화 시간 및 실제 발화 시간 사이의 차이에 종속된다. 파라미터
Figure pct00389
는 적응 레이트를 제어한다.
어느 버전이 이용되든지, 포스트-시냅스 뉴런 발화 시간 이후에 있는 소마에서의 도달 시간을 가지는 그러한 입력들에 대해 지연들이 조절되지 않는 것이 추천된다. 오히려, 이러한 입력들은 지연 조절을 갖지 않거나, 상기 설명된 바와 같은 STDP-유사 방식에 따라 조절 (즉, 매우 작은 양만큼 감소됨) 될 수도 있다.
다음으로, 타겟을 고려한다. 타겟은 뉴런으로부터 희망되는 것에만 종속된다. 타겟은 심지어 임의적으로 설정될 수도 있고, 그 다음으로, 뉴런은 입력들에 대한 계수들을 학습하게 될 수도 있다. 대안적으로, 범위의 경계들에서 비-선형성을 이용하기 위한 목적으로 타겟을 선택할 수도 있다. 학습은 인계관계적 입력들의 논리적 관계를 결정하거나 임의의 임의적인 선형 수학식을 연산하기 위해 이용될 수도 있다.
최종적으로, 타겟이 뉴런의 발화 레이트, 활성도, 또는 자원 (에너지) 이용을 조정하는 항상성 프로세스로서 해석될 수도 있다는 것을 주목하게 될 수도 있다. 이 관점으로부터, 지연 학습 규칙들은 "항상성 학습" 이라고 칭해질 수도 있다.
예 E: 잡음성 2 진 입력들에 대한 계수들의 학습
이 예에서, 지연 학습 규칙은 잡음성 2 진 입력 벡터에 대한 계수들을 학습하기 위해 이용된다. 15 개의 입력들 (프리-시냅스 뉴런들) 과, (총 15 개의 입력들에 대해) 각각으로부터 포스트-시냅스 뉴런까지의 하나의 시냅스/연결이 있다고 가정한다. 포스트-시냅스 뉴런을 동일한 2 진 입력 조합 (무작위로 선택됨) 에 반복적으로 노출시킴으로써, 지연 학습 규칙은 포스트-시냅스 뉴런이 희망하는 타겟 시간에서의 발화로 귀착되는 지연들을 학습하게 한다. 빠른 입력 (즉, 짧은 상대적 입력 시간) 은 부울리언 1 을 나타내기 위해 이용될 수도 있고, 늦은 입력 (즉, 긴 상대적 입력 시간) 은 부울리언 0 을 나타내기 위해 이용될 수도 있다. 도 24 는 본 개시물의 어떤 양태들에 따라, 15 개의 프리-시냅스 뉴런들 (A - E; 2402) 및 포스트-시냅스 뉴런 (F; 2404) 의 5 개의 대표들을 예시한다.
모든 백색 가우스 잡음 (AWGN) 은 2.5 ms 의 표준 편차로 시간적 도메인에서 입력에 추가된다. 이것은 전체 시간적 범위의 큰 부분이므로 잡음의 상당한 양이다. 그러나, 본 개시물의 양태들은 여전히 성공적으로 학습할 수 있다.
도 25a 및 도 25b 는 본 개시물의 어떤 양태들에 따라, 타겟 출력 지연을 달성하기 위하여 입력 지연들을 학습하는 일 예의 결과들을 예시한다. 입증의 목적들을 위하여, 2 개의 상이한 경우들이 도시되어 있다. 도 25a 에서는, 지연들이 크게 초기화되고, 타겟은 로우 (low) 로 설정된다. 도 25b 에서는, 지연들이 작게 초기화되고, 타겟은 하이 (high) 로 설정된다. 어느 경우에나, 학습은 성공적이고 신속하다.
도 26 은 본 개시물의 어떤 양태들에 따라, 입력들 (x-축) 의 각각에 대한 지연들 (ms) 의 그래프 (2600) 및 계수들 (값-도메인 실수값의) 의 그래프 (2610) 에서 잡음성 2 진 입력 벡터에 대한 계수들을 학습하는 일 예의 결과들을 예시한다. 지연들은 입력 대응관계를 학습하도록 적응하였다는 것에 주목해야 한다.
예 F: 잡음성 실수값의 입력들에 대한 계수들의 학습
이 예에서, 지연 학습 규칙은 잡음성 실수값의 입력 벡터에 대한 계수들을 학습하기 위해 이용된다. 이 예는, 입력 벡터에서의 값들이 부울리언 대신에 실수값의인 것을 제외하고는 상기 예와 동일하다.
도 27 은 본 개시물의 어떤 양태들에 따라, 잡음성 실수값의 입력 벡터에 대한 계수들을 학습하는 일 예의 결과들을 예시한다. 도 27 의 그래프들 (2700, 2710, 및 2720) 에서의 결과들은 지연 학습 규칙이 잡음성 실수값의 입력들에 대해 동일하게 잘 작동한다는 것을 보여준다.
예 G: 부울리언 입력들에 대한 잡음성 인과관계적 논리 관계들의 학습
이 예에서, 지연 학습 규칙은 변동되는 부울리언 입력 벡터의 인과관계적 논리 관계를 학습하기 위해 적용된다. 여기서, 입력 벡터는 시간에 걸쳐 변화하지만, 입력에서의 일관성 있는 논리 관계는, 지연 학습 규칙이 논리 관계가 무엇인지를 학습할 수 있는지를 알아보기 위하여 부과된다. 제 1 의 경우에 있어서, 3 개의 입력들의 세트는 OR 관계를 나타내기 위하여 선택된다 (1 로 설정됨). 제 2 의 경우에 있어서, 모든 입력들은 AND 관계를 나타내기 위하여 선택된다 (1 로 설정됨). 잡음은 이전의 예들에 관해 추가된다. 이 예에 대하여, 세팅들은 이전의 예들과 동일하다.
도 28a 는 OR 관계에 대한 최초 반복 후의 지연들의 그래프 (2800) 인 반면, 도 28b 는 AND 관계에 대한 최초 반복 후의 지연들의 그래프 (2810) 이다. 지연들의 일부는 이 단일 반복 후에 이미 1 ms 의 초기 값으로부터 약간 증가된다는 것에 주목하게 될 수도 있다. 또한, 입력에서의 관계는 알려질 수도 있다는 것에 주목하게 될 수도 있다. 도 28a 에서는, 프리-시냅스 뉴런들 중의 하나만 빨리 발화하므로, 입력들의 3 개만 소마에 빨리 (~ 10 ms) 도달한다. 나머지는 더 이후에 (~ 25 ms) 있다. 도 28b 에서는, 모든 프리-시냅스 뉴런들이 빨리 발화한다. 그러나, 뉴런은 타겟 시간에 아직 발화하지 않고; 오히려, 상당히 빨리 발화한다.
도 29a 는 도 28a 에 대응하는 OR 관계에 대한 다수의 반복들 후의 지연들의 그래프 (2900) 인 반면, 도 29b 는 도 28b 에 대응하는 AND 관계에 대한 다수의 반복들 후의 지연들의 그래프 (2910) 이다. 이제, 포스트-시냅스 뉴런이 논리적 표현 (입력에 따른 OR 또는 AND) 을 코딩하는 지연들을 학습하였다는 것을 알 수 있다. 또한, 출력 시간은 타겟 상에 있다 (도면들에 도시되지 않음). 도 29a 에서, 하나의 프리-시냅스 빠른 발화는 포스트-시냅스 뉴런으로 하여금 타겟 상에서 발화하도록 하기에 충분 (즉, 논리적 OR) 하다 (그 총 지연이 30 ms (타겟) 를 초과할 경우에 알 수 있는 바와 같이, 다른 입력들은 이들이 너무 늦어서 효과를 가질 수 없게 하는 지연들을 가짐). 도 29b 에서, 모든 입력들은 포스트-시냅스 뉴런이 정시에 발화하도록 일반적으로 요구되므로, 논리적 관계 AND 가 학습되었다. 이것은 더 큰 지연들을 포함할 가능성이 가장 높다.
도 30 은 논리적 관계들을 학습하기 위한 (반복들의 수의 함수로서의) 수렴들을 예시한다. 그래프 (3000) 는 논리적 OR 관계에 대한 수렴을 예시하는 반면, 그래프 (3010) 는 논리적 AND 관계에 대한 수렴을 예시한다.
일반적 논리적 또는 인과관계적 학습
xi 는 (각각) 거짓 (false) 또는 참 (true) 의 어느 하나인 논리 변수 i 를 나타내는 부울리언 값 (0 또는 1) 이라고 한다. 참인 논리적 관계
Figure pct00390
는 다음과 같은 참인 인과관계 함수에 의해 정의된다고 한다.
Figure pct00391
예를 들어,
Figure pct00392
이고
Figure pct00393
이기만 할 경우, 다음과 같다.
Figure pct00394
선형 전달 함수는 다음과 같이 정의된다고 하고:
Figure pct00395
여기서, k 윗첨자는 세트의 사례를 표시하고,
Figure pct00396
는 부정 치환 벡터 (negation permutation vector) 이다. 이 함수는 (반드시 지연은 아니지만) 지연을 나타내는 값을 산출한다. 부정 엔트리는 부정 -1 또는 비-부정 +1 의 어느 하나로서 코딩된다. 사실상, 이것은 다음과 같은 벡터에 따라 부울리언 값의 입력들을 그 부정된 값들로 변환한다.
Figure pct00397
또한, 상기 함수는 참인 논리적 내포 (예를 들어, A, B, not C, 및 not D) 를 가지는
Figure pct00398
에 의해 표현된 논리 변수 조합들에 대해 θ 와 동일하여, 모든 k 에 대하여, 다음의 표현이 충족되도록, 계수들
Figure pct00399
이 정의된다고 한다.
Figure pct00400
이것은 상기 설명된 바와 같은 항상성 학습에 대한 타겟을 설정하는 것과 동등하다. 사실상, 상기 타겟 θ 는 출력 지연 타겟으로 변환될 수 있다.
상기 수학식들을 치환하는 것은 다음과 같다.
Figure pct00401
또는
Figure pct00402
또는
Figure pct00403
따라서, 충분한 수학식들로, 다수의 미지수들 xi 가 주어질 경우에, 세트
Figure pct00404
에서의 논리적 조건은 예를 들어, 모든 앙상블 뉴런 출력들을 입력들로서 수신하고 (일치하는 입력 타이밍의) 임계치에서 발화하는 또 다른 뉴런을 이용하여 인식될 수도 있다.
예를 들어, 상기 예에 대한 일부 사례들을 고려한다. 부정이 없으면, 제 1 뉴런 (k = 1 로 표기됨) 은 참인 인과관계를 충족시키기 위하여 계수들을 학습할 수 있다. 그러나, 그것은 일부 다른 조건들을 또한 충족시킬 것이다.
Figure pct00405
이것은, 모든 i 에 대해
Figure pct00406
일 경우, 상기 예에서의 각각의 변수에 대해
Figure pct00407
이기 때문이다. 따라서, 참인 인과관계는 분명하게 검출되지 않을 수도 있다. 그러나, 또 다른 뉴런 (k = 2 로 표기됨) 이 추가될 경우, 다음과 같다.
Figure pct00408
여기서, 조합하여, 4 개의 중첩되는 논리적 조건들 (최초의 4 개) 만이 있으므로, 조합하여, 2 개의 뉴런들이 모호성을 감소시키기 위해 이용될 수도 있다는 것을 알게 될 수도 있다. 더 많은 뉴런들이 있으면, 모호성은 전적으로 제거될 수도 있다. 그러나, 이 특정한 논리적 조건에 대해 모호성을 가지지 않는 부정 벡터를 또한 구할 수도 있다:
Figure pct00409
이 경우, 참인 인과관계에 대응하는 논리적 조건들이 충족되기만 하면, 이 뉴런이 희망하는 지연에서 발화할 것이므로, 다수의 뉴런들에 대한 필요성이 전혀 없다.
그러나, 일반적으로, 유발될 수도 있는 임의의 특정한 논리적 조건에 대한 솔루션을 가지도록 동기부여될 수도 있다. 이것을 위하여, 상이한 부정 벡터들을 갖는 뉴런들의 앙상블이 사용될 수도 있다. 다음으로, 이 뉴런들 중의 충분한 양이 언제 동시에 발화하는지를 검출하는 시간적 일치 인식 뉴런에 그 출력을 공급할 수도 있어서, 이것에 의해, 참인 인과관계에 대응하는 논리적 조건을 분명하게 인식할 수도 있다. 충분한 뉴런들을 가지는 것은, 뉴런들의 개체군이 참 및 거짓의 논리적 조건들을 구별할 때 (즉, 미리 결정된 시간 정밀도까지의 일치 발화에 의해 측정된 뉴런들이 모두 함께 인과관계-효과 관계, 효과의 결여, 또는 둘 모두를 희망하는 정도 또는 정확성까지 올바르게 예측할 수 있을 때) 의 상태 또는 조건을 통상적으로 지칭한다.
도 31 은 본 개시물의 어떤 양태들에 따라, 부정 및 앙상블 유도의 둘 모두가 어떻게 구현될 수도 있는지를 예시한다. 뉴런 C (3102) 은 하나의 입력의 예이다. 뉴런 C 는 뉴런 C 의 부정을 나타내는 뉴런 (Not C; 3104) 을 억제한다. 뉴런 C 가 늦게 발화할 경우, 뉴런 (Not C) 은 먼저 발화할 것이라는 것에 주목해야 한다. 짧은 지연은 큰 값 (논리적 "참) 을 의미하고 긴 지연은 작은 값 (논리적 "거짓")을 의미한다는 것을 상기한다. 각각은 상이한 부정 벡터들을 갖는 상이한 뉴런으로의 입력이다 (즉, 뉴런 E1 (3106) 은 비-부정된 (non-negated) C 를 이용하고, 뉴런 E2 (3108) 는 부정된 C 를 이용함). 제 3 뉴런 E3 (도시되지 않음) 은 이용된다면, E3 에 대한 부정 벡터에 따라, 비-부정된 C 또는 부정된 C 의 어느 하나를 이용할 수도 있다. 또한, 학습 뉴런들 (3106, 3108) 의 각각은, 각각의 학습 뉴런에 대한 부정 벡터에 따라, 부정되거나 또는 비-부정되든지 간에 (예를 들어, 뉴런 A, 뉴런 (Not A), 뉴런 B, 뉴런 (Not B), 뉴런 D, 또는 뉴런 (Not D)) 다른 입력을 가질 수도 있다. 각각의 입력과 연관된 지연들은 위에서 설명된 바와 같이, 타겟 출력 지연을 충족시키기 위하여 학습 뉴런들에서 적응된다. 이 학습 뉴런들 (3106, 3108) 의 출력들은, (뉴런들 E1 및 E2 가 논리적 조건 정합에 대해 동의할 경우에) 그 출력들에서 시간적 일치를 인식할 수 있는 뉴런 R (3110) 로 입력들로서 공급된다.
헤브 학습 (Hebbian learning)
헤브 학습은 입력들 및 출력들이 함께 발화하는 학습의 형태이다. 헤브 학습 규칙의 간단한 형태는 STDP 규칙이고,
Figure pct00410
여기서,
Figure pct00411
이고, 여기서 r 은 시간 기준을 제공하는 기준이다.
시간적 도메인으로 변환하는 곱셈 변화
Figure pct00412
를 가정하면, 다음과 같다.
Figure pct00413
또는
Figure pct00414
따라서, 다음과 같다.
Figure pct00415
따라서, 헤브 학습은 시간적 도메인에서 이용될 수도 있어서, 임의의 가중치들 없이 입력/출력 스파이크 타이밍
Figure pct00416
에 따라 지연들을 조절할 수도 있다.
Figure pct00417
의 값이 더 클수록, 로그 파라미터 (log parameter) 의 값이 1 에 더 근접하고, 이에 따라, 지연에 있어서의 변화가 더 작아진다는 것에 주목해야 한다. 장기 강화 (LTP) 에 따른 가중치에 있어서의 증가는 포지티브
Figure pct00418
에 대한 포지티브 A 값을 가지고, 이에 따라, 로그 파라미터는 1 보다 더 클 것이므로, 지연에 있어서의 네거티브 변화 (증가) 를 산출할 것이다. 장기 저항 (LTD) 에 다른 가중치에 있어서의 감소는 네거티브
Figure pct00419
에 대한 네거티브 A 값을 가지고, 이에 따라, 로그 파라미터는 1 보다 더 작을 것이므로, 지연에 있어서의 포지티브 변화 (증가) 를 산출할 것이다. 더 긴 지연은 덜 중요한 입력을 의미한다. 더 짧은 지연은 더 중요한 입력을 의미한다.
도 32 는 본 개시물의 어떤 양태들에 따라, 출력 스파이크를 방출하기 위한 스파이킹 뉴럴 네트워크에서의 학습을 위한 일 예의 동작들 (3200) 의 흐름도이다. 동작들 (3200) 은 하드웨어로 (예를 들어, 하나 이상의 프로세싱 유닛들에 의해), 소프트웨어로, 또는 펌웨어로 수행될 수도 있다.
동작들 (3200) 은 3202 에서, 뉴런 모델로의 입력 (예를 들어, 수상돌기) 과 연관된 현재의 지연을 초기화함으로써 시작할 수도 있다. 현재의 지연은 어떤 양태들에 대하여 0 으로 초기화될 수도 있다.
3204 에서, 뉴런 모델에서의 입력 스파이크는 현재의 지연에 따라 지연될 수도 있다. 입력 스파이크는 뉴런 모델에 대한 기준 시간과 관련된 입력 스파이크 시간에서 발생할 수도 있다. 3206 에서, 출력 스파이크는 지연된 입력 스파이크에 적어도 부분적으로 기초하여 뉴런 모델로부터 방출될 수도 있다. 3208 에서는, 출력 스파이크의 출력 스파이크 시간과 뉴런 모델에 대한 기준 시간 사이의 실제적인 시간 차이가 결정될 수도 있다.
3210 에서, 입력과 연관된 현재의 지연은 현재의 지연, 입력 스파이크에 대한 입력 스파이크, 및 타겟 시간 차이 및 실제적인 시간 차이 사이의 차이에 기초하여 조절될 수도 있다. 타겟 시간 차이 및 실제적인 시간 차이 사이의 차이가 임계치보다 더 크거나, 반복들의 수가 상한에 도달하지 않았을 경우, 3204 - 3210 에서의 동작들은 (현재의 지연으로서의) 조절된 지연으로 반복될 수도 있다. 적어도, 타겟 시간 차이와 실제적인 시간 차이 사이의 차이가 임계치 이하일 때까지, 또는 반복들의 최대 횟수가 수행 (즉, 반복들의 수가 상한에 도달함) 되었을 때까지, 3204 - 3210 에서의 동작들은 다수의 횟수로 반복될 수도 있다. 어떤 양태들에 따르면, 타겟 시간 차이는 위에서 설명된 바와 같이, 뉴런 모델을 포함하는 항상성 프로세스에 대한 설정치일 수도 있다.
3212 에서, 스칼라 값은 조절된 지연에 기초하여 결정될 수도 있다. 다시 말해서, 스칼라 값은 뉴런 모델에 의해 학습되었다. 스칼라 값은 뉴런 모델에 대한 멤브레인 전위의 변화의 계수의 지수 값의 역으로서 결정될 수도 있고, 지수는 역을 취하기 전에 조절된 지연의 거듭제곱으로 상승된다. 어떤 양태들에 대하여, 스칼라 값은 선형 변환의 계수일 수도 있다. 어떤 양태들에 대하여, 스칼라 값은 디스플레이, 또는 스칼라 값을 표시하기 위한 임의의 다른 적당한 수단으로 출력될 수도 있다.
도 33 은 본 개시물의 어떤 양태들에 따라, 스파이킹 뉴럴 네트워크에서의 인과관계적 학습을 위한 일 예의 동작들 (3300) 의 흐름도이다. 동작들 (3300) 은 하드웨어로 (예를 들어, 하나 이상의 프로세싱 유닛들에 의해), 소프트웨어로, 또는 펌웨어로 수행될 수도 있다.
동작들 (3300) 은 3302 에서, 하나 이상의 학습 뉴런 모델들의 각각에서 논리적 입력들을 제공함으로써 시작할 수도 있고, 여기서, 참인 인과관계적 논리 관계는 논리적 입력들의 세트에 부과된다. 3304 에서, 입력 스파이크들 사이의 변동되는 타이밍은 논리적 입력들의 각각의 세트에서 수신될 수도 있다. 하나 이상의 학습 뉴런 모델들의 각각에 대하여, 논리적 입력들의 각각과 연관된 지연들은 수신된 입력 스파이크들을 이용하여 3306 에서 조절될 수도 있어서, 학습 뉴런 모델은 참인 인과관계적 논리 관계에 대응하는 하나 이상의 논리적 조건들에 따라 타겟 출력 지연을 충족시키는 출력 스파이크를 방출한다.
하나 이상의 학습 뉴런 모델들의 각각에 대하여, 논리적 입력들의 각각과 연관된 지연들은 어떤 양태들에 대하여, 3306 에서 지연들을 조절하기 전에 초기화될 수도 있다.
어떤 양태들에 따르면, 3302 에서 논리적 입력들의 세트를 제공하는 것은 복수의 논리적 입력들을 포함하는 그룹으로부터 논리적 입력들의 각각의 세트를 선택하는 것을 포함할 수도 있다. 어떤 양태들에 대하여, 그룹은 복수의 논리적 입력들의 부정들을 또한 포함할 수도 있고, 여기서, 논리적 입력들의 각각의 세트를 선택하는 것은 복수의 논리적 입력들 및 부정들을 포함하는 그룹으로부터 논리적 입력들의 각각의 세트를 선택하는 것을 포함한다.
동작들 (3300) 은 복수의 논리적 입력들의 각각을 입력 뉴런 모델로서 모델링하는 것과, 복수의 논리적 입력들의 각각에 대하여, 하나 이상의 부정 벡터들 중의 적어도 하나가 논리적 입력에 대한 부정 표시를 가질 경우에 논리적 입력의 부정을 나타내는 부정 뉴런 모델을 제공하는 것을 더 포함할 수도 있고, 여기서, 논리적 입력들의 각각의 세트는 부정 벡터들 중의 하나에 따라 선택된다. 이 경우, 각각의 학습 뉴런 모델은 부정 벡터들 중의 하나에 대응할 수도 있고, 복수의 논리적 입력들의 각각에 대하여, 입력 뉴런 모델의 출력 또는 그 대응하는 부정 뉴런 모델의 출력은 부정 벡터에 따라 학습 뉴런 모델의 입력에 결합될 수도 있다. 어떤 양태들에 대하여, 입력 뉴런 모델들의 각각은 대응하는 부정 뉴런 모델을 억제할 수도 있다. 어떤 양태들에 대하여, 부정 표시는 a -1 을 포함할 수도 있다.
동작들 (3300) 은, 하나 이상의 학습 뉴런 모델들이 학습 뉴런 모델들로부터의 출력 스파이크들의 타이밍에 기초하여 참인 인과관계적 논리 관계에 대응하는 하나 이상의 논리적 조건들을 학습한 것으로 결정하는 것을 더 포함할 수도 있다. 어떤 양태들에 대하여, 이 결정하는 것은 학습 뉴런 모델들 사이에서 발화의 일치 또는 패턴을 결정하는 것을 포함할 수도 있다.
어떤 양태들에 따르면, 시간적 일치 인식 뉴런 모델은 학습 뉴런 모델들의 각각으로부터의 출력에 결합될 수도 있다. 시간적 일치 인식 뉴런 모델은 학습 뉴런 모델들의 임계 개수가 거의 동시에 발화할 경우에 발화하도록 구성될 수도 있다. 동작들 (3300) 은, 하나 이상의 학습 뉴런 모델들이 시간적 일치 인식 뉴런 모델이 발화할 경우에 참인 인과관계적 논리 관계에 대응하는 논리적 조건들 중의 적어도 하나를 학습한 것으로 결정하는 것을 더 포함할 수도 있다.
어떤 양태들에 따르면, 3304 에서 논리적 입력들의 각각의 세트에서 입력 스파이크들 사이의 변동되는 타이밍을 수신하는 것은 논리적 입력들의 세트에서 변동되는 부울리언 벡터를 수신하는 것을 포함할 수도 있다. 어떤 양태들에 대하여, 상대적으로 짧은 지연은 변동되는 부울리언 벡터에서 논리적 참을 나타내고, 상대적으로 긴 지연은 논리적 거짓을 나타낸다.
어떤 양태들에 대하여, 조절된 지연들, 하나 이상의 논리적 조건들, 및/또는 참인 인과관계적 논리 관계는 디스플레이, 또는 이것들을 표시하기 위한 임의의 다른 적당한 수단으로 출력될 수도 있다. 어떤 양태들에 대하여, 학습 뉴런 모델들은 ALIF 뉴런 모델들을 포함할 수도 있다.
결론
스파이크들의 상대적 시간에서 정보를 코딩함으로써, 스파이킹 뉴런들을 이용하는 것에 연산적인 장점이 실제로 있을 수도 있다. 따라서, 스파이킹 뉴럴 네트워크들에서의 시간적 코딩을 임의적인 정밀도까지 효율적으로 시뮬레이팅할 수 있는 뉴런 모델 (시뮬레이터 설계의 타입) 이 본원에서 설명되어 있다.
위에서 설명된 바와 같이, 임의의 선형 시스템은 상대적인 시간적 코드들로의 로그 변환을 이용하는 본원에서 개시된 스파이킹 뉴런 모델을 이용하여 연산될 수도 있다. 임의의 개별적인 스파이크의 정보 내용은 시간 분해능에 의해서만 제한되므로, 단일 뉴런 모델은 임의적인 정밀도의 선형 변환을 연산할 수도 있어서, 하나의 스파이크에서 결과를 산출할 수도 있다. 어떤 양태들은 시냅스 가중치들 또는 포스트-시냅스 필터들을 전혀 갖지 않는 예시적인 뉴런 모델로서 안티-누설-통합-및-발화 (ALIF) 뉴런을 이용한다. 연산은 자기-참조적 (SR) 스파이크 타이밍과 비-자기-참조적 (NSR) 스파이크 타이밍 사이의 시간적 지연들 및 변환을 이용하여 로그-값 (log-value) 도메인에서 발생할 수도 있다. 제 2 뉴런 모델을 이용하거나 생물학적 발진과 같은 기준 시간 프레임 파를 전파하는 방법을 이용하는 변환을 포함하는, 이것을 달성하는 다수의 수단은 위에서 설명되어 있다. 가중치 승산은 수행될 필요가 없고 포스트-시냅스 필터들이 연산될 필요가 없으므로, 연속 또는 이산 시간에서 뉴런 출력을 연산하는 매우 효율적인 방법이 가능하다.
또한, 스파이킹 뉴럴 네트워크는 2 개의 타입들의 이벤트들을 포함하는 이벤트-기반 스케줄을 이용하여 소프트웨어 또는 하드웨어로 시뮬레이팅될 수도 있다: (1) 지연된 시냅스 입력 이벤트들 및 (2) 예측된 미래의 스파이크 시간 이벤트들. 프리-시냅스 뉴런이 발화할 때, 이벤트는 뉴런들 사이의 축색돌기 또는 수상돌기 지연에 따라 미래의 어떤 시간에서 각각의 포스트-시냅스 뉴런에 대해 스케줄링될 수도 있다. 입력 이벤트가 발생할 때, 뉴런의 상태는 시간 스텝들에서가 아니라 이전의 업데이트 이후에 바로 업데이트될 수도 있다. 입력은 추가될 수도 있고, 미래의 발화 시간은 직접 연산될 수도 있다. 이것은, 뉴런이 현재의 상태가 주어지면 발화하지 않을 경우에 무한할 수도 있다. 이와 관계없이, 미래의 발화 시간 이벤트는 재스케줄링될 수도 있다. 이러한 방법으로, 타이밍 (심지어 연속 시간) 에서의 임의적인 높은 정밀도는 임의의 추가적인 코스트 없이 시뮬레이팅될 수도 있고, 이것에 의하여, 전력 소비를 감소시킬 수도 있다.
위에서 설명된 방법들의 다양한 동작들은 대응하는 기능들을 수행할 수 있는 임의의 적당한 수단에 의해 수행될 수도 있다. 수단은 회로, 응용 특정 집적 회로 (application specific integrated circuit; ASIC), 또는 프로세서를 포함하지만 이것으로 제한되지 않는, 다양한 하드웨어 및/또는 소프트웨어 컴포넌트 (들) 및/또는 모듈 (들) 을 포함할 수도 있다. 일반적으로, 도면들에서 예시된 동작들이 있을 경우, 그러한 동작들은 유사한 번호를 갖는 대응하는 상응부의 수단-플러스-기능 컴포넌트들을 가질 수도 있다. 예를 들어, 도 22 에 예시된 동작들 (2200) 은 도 22a 에 예시된 수단 (2200A) 에 대응한다.
예를 들어, 표시하기 위한 수단은 디스플레이 (예를 들어, 모니터, 평판 스크린, 터치 스크린 등), 프린터, 또는 값을 표시하기 위한 임의의 다른 적당한 수단을 포함할 수도 있다. 프로세싱하기 위한 수단, 수신하기 위한 수단, 방출하기 위한 수단, 추가하기 위한 수단, 출력하기 위한 수단, 재설정하기 위한 수단, 지연시키기 위한 수단, 조절하기 위한 수단, 반복하기 위한 수단, 초기화하기 위한 수단, 모델링하기 위한 수단, 제공하기 위한 수단, 또는 결정하기 위한 수단은 하나 이상의 프로세서들을 포함할 수도 있는 프로세싱 시스템을 포함할 수도 있다.
본원에서 이용된 바와 같이, 용어 "결정" 은 광범위한 작업들을 망라한다. 예를 들어, "결정" 은 계산, 연산, 프로세싱, 유도, 조사, 룩업 (예를 들어, 테이블, 데이터베이스 또는 또 다른 데이터 구조에서 룩업 (look up) 하는 것), 확인 등을 포함할 수도 있다. 또한, "결정" 은 수신 (예를 들어, 정보 수신), 액세스 (예를 들어, 메모리에서 데이터를 액세스하는 것) 등을 포함할 수도 있다. 또한, "결정" 은 분석, 선택, 선정, 수립 등을 포함할 수도 있다.
본원에서 이용된 바와 같이, 항목들의 리스트 "중의 적어도 하나" 를 지칭하는 어구는 단일 부재들을 포함하는 그러한 항목들의 임의의 조합을 지칭한다. 일 예로서, "a, b, 또는 c 중의 적어도 하나" 는 a, b, c, a-b, a-c, b-c, 및 a-b-c 를 커버하도록 의도된다.
본 개시물과 관련하여 설명된 다양한 예시적인 논리적 블록들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 프로세서 (digital signal processor; DSP), 응용 특정 집적 회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 신호 (field programmable gate array signal; FPGA) 또는 다른 프로그래밍가능 로직 디바이스 (programmable logic device; PLD), 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들 또는 본원에서 설명된 기능들을 수행하도록 설계된 그 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로, 프로세서는 임의의 상업적으로 입수가능한 프로세서, 제어기, 마이크로제어기, 또는 상태 머신 (state machine) 일 수도 있다. 프로세서는 연산 디바이스의 조합, 예를 들어, DSP 및 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 함께 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성의 조합으로서 또한 구현될 수도 있다.
본 개시물과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 직접적으로 구체화될 수도 있다. 소프트웨어 모듈은 당해 분야에서 알려져 있는 저장 매체의 임의의 형태로 상주할 수도 있다. 이용될 수도 있는 저장 매체들의 일부의 예들은 랜덤 액세스 메모리 (RAM), 판독 전용 메모리 (ROM), 플래쉬 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 분리형 디스크, CD-ROM 등등을 포함한다. 소프트웨어 모듈은 단일 명령 또는 다수의 명령들을 포함할 수도 있고, 상이한 프로그램들 사이의 몇몇 상이한 코드 세그먼트들 상에서 그리고 다수의 저장 매체들에 걸쳐 분산될 수도 있다. 저장 매체는, 프로세서가 저장 매체로부터 정보를 판독할 수 있고 정보를 저장 매체에 기록할 수 있도록 프로세서에 결합될 수도 있다. 대안에서는, 저장 매체가 프로세서에 일체화될 수도 있다.
본원에서 개시된 방법들은 설명된 방법을 달성하기 위한 하나 이상의 단계들 또는 작업들을 포함한다. 방법의 단계들 및/또는 작업들은 청구항들의 범위로부터 이탈하지 않으면서 서로 교환될 수도 있다. 다시 말해서, 단계들 또는 작업들의 특정 순서가 특정되지 않으면, 특정 단계들 및/또는 작업들의 순서 및/또는 이용은 청구항들의 범위로부터 이탈하지 않으면서 수정될 수도 있다.
설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 구현될 수도 있다. 하드웨어로 구현될 경우, 일 예의 하드웨어 구성은 디바이스 내의 프로세싱 시스템을 포함할 수도 있다. 프로세싱 시스템은 버스 아키텍처로 구현될 수도 있다. 버스는 프로세싱 시스템의 특정 응용 및 전체적인 설계 제약들에 따라 임의의 수의 상호연결 버스들 및 브리지들을 포함할 수도 있다. 버스는 프로세서, 머신-판독가능 (machine-readable) 매체들, 및 버스 인터페이스를 포함하는 다양한 회로들을 함께 링크할 수도 있다. 버스 인터페이스는 무엇보다도, 네트워크 어댑터를 버스를 통해 프로세싱 시스템에 연결하기 위해 이용될 수도 있다. 네트워크 어댑터는 신호 프로세싱 기능들을 구현하기 위해 이용될 수도 있다. 어떤 양태들에 대하여, 사용자 인터페이스 (예를 들어, 키패드, 디스플레이, 마우스, 조이스틱 등) 는 버스에 또한 연결될 수도 있다. 버스는 타이밍 소스들, 주변기기들, 전압 레귤레이터들, 전력 관리 회로들 등과 같은 다양한 다른 회로들을 또한 링크할 수도 있고, 이들은 당해 분야에서 잘 알려져 있으므로, 더 이상 설명되지 않을 것이다.
프로세서는 머신-판독가능 매체들 상에 저장된 소프트웨어의 실행을 포함하는, 버스 및 범용 프로세싱을 관리하는 것을 담당할 수도 있다. 프로세서는 하나 이상의 범용 및/또는 특수-목적 프로세서들로 구현될 수도 있다. 예들은 마이크로프로세서들, 마이크로제어기들, DSP 프로세서들, 및 소프트웨어를 실행할 수 있는 다른 회로부를 포함한다. 소프트웨어는 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어, 또는 이와 다르게 지칭되든지 간에, 명령들, 데이터, 또는 그 임의의 조합을 의미하는 것으로 광범위하게 해석될 것이다. 머신-판독가능 매체들은 예로서, RAM (랜덤 액세스 메모리), 플래쉬 메모리, ROM (판독 전용 메모리), PROM (Programmable Read-Only Memory; 프로그래밍가능 판독-전용 메모리), EPROM (Erasable Programmable Read-Only Memory; 소거가능 프로그래밍가능 판독-전용 메모리), EEPROM (Electrically Erasable Programmable Read-Only Memory; 전기적 소거가능 프로그램가능 판독-전용 메모리), 레지스터들, 자기 디스크들, 광학 디스크들, 하드 드라이브들, 또는 임의의 다른 적당한 저장 매체, 또는 그 임의의 조합을 포함할 수도 있다. 머신-판독가능 매체들은 컴퓨터 프로그램 제품에서 구체화될 수도 있다. 컴퓨터 프로그램 제품은 포장재 (packaging material) 들을 포함할 수도 있다.
하드웨어 구현에서는, 머신-판독가능 매체들이 프로세서로부터 분리된 프로세싱 시스템의 일부일 수도 있다. 그러나, 당해 분야의 당업자들이 용이하게 인식하는 바와 같이, 머신-판독가능 매체들 또는 그 임의의 부분은 프로세싱 시스템의 외부에 있을 수도 있다. 예로서, 머신-판독가능 매체는 송신 라인, 데이터에 의해 변조된 반송파, 및/또는 디바이스로부터 분리된 컴퓨터 제품을 포함할 수도 있고, 이들 모두는 버스 인터페이스를 통해 프로세서에 의해 액세스될 수도 있다. 대안적으로 또는 추가적으로, 머신-판독가능 매체들 또는 그 임의의 부분은, 캐쉬 및/또는 일반적인 레지스터 파일들을 갖는 것일 수도 있는 경우와 같이, 프로세서 내로 통합될 수도 있다.
프로세싱 시스템은, 외부 버스 아키텍처를 통해 다른 지원 회로부와 모두 함께 링크된, 프로세서 기능성을 제공하는 하나 이상의 마이크로프로세서들과, 머신-판독가능 매체들의 적어도 부분을 제공하는 외부 메모리를 갖는 범용 프로세싱 시스템으로서 구성될 수도 있다. 대안적으로, 프로세싱 시스템은, 프로세서, 버스 인터페이스, 사용자 인터페이스, 지원 회로부, 및 단일 칩 내로 집적된 머신-판독가능 매체들의 적어도 부분을 갖는 ASIC (응용 특정 집적 회로) 으로, 또는 하나 이상의 FPGA 들 (필드 프로그래밍가능 게이트 어레이들), PLD 들 (프로그래밍가능 로직 디바이스들), 제어기들, 상태 머신들, 게이팅된 로직, 이산 하드웨어 컴포넌트들, 또는 임의의 다른 적당한 회로부, 또는 본 개시물의 전반에 걸쳐 설명된 다양한 기능성을 수행할 수 있는 회로들의 임의의 조합으로 구현될 수도 있다. 당해 분야의 당업자들은 특정한 응용 및 전체적인 시스템에 부과된 전체적인 설계 제약들에 따라 프로세싱 시스템에 대한 설명된 기능성을 어떻게 최적으로 구현할 것인지를 인식할 것이다.
머신-판독가능 매체들은 다수의 소프트웨어 모듈들을 포함할 수도 있다. 소프트웨어 모듈들은 명령들을 포함하고, 상기 명령들은 프로세서에 의해 실행될 경우, 프로세싱 시스템으로 하여금 다양한 기능들을 수행하게 한다. 소프트웨어 모듈들은 송신 모듈 및 수신 모듈을 포함할 수도 있다. 각각의 소프트웨어 모듈은 단일 저장 디바이스 내에 상주할 수도 있거나, 다수의 저장 디바이스들에 걸쳐 분산될 수도 있다. 예로서, 소프트웨어 모듈은 트리거링 이벤트가 발생할 때에 하드 드라이브로부터 RAM 으로 로딩될 수도 있다. 소프트웨어 모듈의 실행 동안, 프로세서는 액세스 속도를 증가시키기 위하여 명령들의 일부를 캐쉬로 로딩할 수도 있다. 다음으로, 하나 이상의 캐쉬 라인들은 프로세서에 의한 실행을 위하여 일반적인 레지스터 파일로 로딩될 수도 있다. 아래의 소프트웨어 모듈의 기능성을 참조할 경우, 이러한 기능성은 소프트웨어 모듈로부터의 명령들을 실행할 때에 프로세서에 의해 구현되는 것을 이해할 것이다.
소프트웨어로 구현될 경우, 기능들은 컴퓨터 판독가능 매체 상의 하나 이상의 명령들 또는 코드로서 저장되거나 이를 통해 송신될 수도 있다. 컴퓨터 판독가능 매체들은, 하나의 장소로부터 또 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 컴퓨터 저장 매체들 및 통신 매체들의 둘 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 제한이 아닌 예로서, 이러한 컴퓨터 판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장, 자기 디스크 저장 또는 다른 자기 저장 디바이스들, 또는 명령들 또는 데이터 구조들의 형태로 희망하는 프로그램 코드를 운반 또는 저장하기 위해 이용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 연결은 컴퓨터 판독가능 매체라고 적절하게 칭해진다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스트 페어 (twisted pair), 디지털 가입자 회로 (digital subscriber line; DSL), 또는 적외선 (IR), 라디오, 및 마이크로파와 같은 무선 기술들을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신될 경우, 동축 케이블, 광섬유 케이블, 트위스트 페어, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술들은 매체의 정의 내에 포함된다. 본원에서 이용된 바와 같은 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (compact disc; CD), 레이저 디스크 (laser disc), 광학 디스크 (optical disc), 디지털 다기능 디스크 (digital versatile disc; DVD), 플로피 디스크 (floppy disk) 및 블루레이 디스크 (Blu-ray® disc) 를 포함하고, 여기서, 디스크 (disk) 들은 통상 데이터를 자기적으로 재생하는 반면, 디스크 (disc) 들은 데이터를 레이저들로 광학적으로 재생한다. 따라서, 일부 양태들에서, 컴퓨터 판독가능 매체들은 비-일시적인 (non-transitory) 컴퓨터 판독가능 매체들 (예를 들어, 유형의 매체들) 을 포함할 수도 있다. 추가적으로, 다른 양태들에 대하여, 컴퓨터 판독가능 매체들은 일시적인 (transitory) 컴퓨터 판독가능 매체들 (예를 들어, 신호) 을 포함할 수도 있다. 상기한 것의 조합들은 컴퓨터 판독가능 매체들의 범위 내에 또한 포함되어야 한다.
따라서, 어떤 양태들은 본원에서 제시된 동작들을 수행하기 위한 컴퓨터 프로그램 제품을 포함할 수도 있다. 예를 들어, 이러한 컴퓨터 프로그램 제품은 명령들을 저장한 (및/또는 인코딩한) 컴퓨터 판독가능 매체를 포함할 수도 있고, 명령들은 본원에서 설명된 동작들을 수행하기 위하여 하나 이상의 프로세서들에 의해 실행가능할 수도 있다. 어떤 양태들에 대하여, 컴퓨터 프로그램 제품은 포장재를 포함할 수도 있다.
또한, 본원에서 설명된 방법들 및 기술들을 수행하기 위한 모듈들 및/또는 다른 적절한 수단은 다운로딩될 수 있고 및/또는 이와 다르게, 적용가능한 경우에는 디바이스에 의해 얻어질 수 있다는 것을 인식해야 한다. 예를 들어, 이러한 디바이스는 본원에서 설명된 방법들을 수행하기 위한 수단의 전송을 용이하게 하기 위하여 서버에 결합될 수 있다. 대안적으로, 본원에서 설명된 다양한 방법들은 저장 수단 (예를 들어, RAM, ROM, 컴퓨터 디스크 (CD) 또는 플로피 디스크와 같은 물리적 저장 매체 등) 을 통해 제공될 수 있어서, 디바이스는 저장 수단을 디바이스에 결합하거나 제공할 시에 다양한 방법들을 얻을 수 있다. 또한, 본원에서 설명된 방법들 및 기술들을 디바이스에 제공하기 위한 임의의 다른 적당한 기술이 사용될 수 있다.
청구항들은 위에서 예시된 정확한 구성 및 컴포넌트들에 제한되지 않는다는 것을 이해해야 한다. 다양한 수정들, 변화들 및 변동들은 청구항들의 범위로부터 이탈하지 않으면서 위에서 설명된 방법들 및 장치의 배치, 동작 및 세부사항들에서 행해질 수도 있다.

Claims (80)

  1. 스파이킹 뉴럴 네트워크 (spiking neural network) 를 구현하기 위한 방법으로서,
    제 1 뉴런 모델에서 적어도 하나의 입력을 수신하는 단계;
    상기 입력에 기초하여, 상기 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하는 단계; 및
    상기 상대적 시간에 기초하여 상기 제 1 뉴런 모델로부터 출력 스파이크를 방출하는 단계를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 입력은 2 진 값의 입력 스파이크를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  3. 제 1 항에 있어서,
    상기 입력은 입력 값을 포함하고, 상기 상대적 시간을 결정하는 단계는 상기 입력 값을 상기 상대적 시간으로서 인코딩하는 단계를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  4. 제 3 항에 있어서,
    상기 인코딩하는 단계는 상기 입력 값의 로그의 네거티브 (negative) 로서 상기 상대적 시간을 계산하는 단계를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  5. 제 4 항에 있어서,
    상기 로그는 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 함수로서 상기 멤브레인 전위의 변화의 계수의 지수 값과 동일한 밑 (base) 을 가지는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 제 1 뉴런 모델에 의해 모델링되는 함수에 기초하여 상기 적어도 하나의 입력에서의 지연을 결정하는 단계; 및
    상기 방출하는 단계가 조절된 상대적 시간에 기초하여 상기 출력 스파이크를 방출하는 단계를 포함하도록, 상기 지연에 기초하여 상기 상대적 시간을 조절하는 단계를 더 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  7. 제 6 항에 있어서,
    상기 함수는 선형 변환을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  8. 제 6 항에 있어서,
    상기 함수는 스칼라 (scalar) 에 의한 승산을 포함하고, 상기 지연을 결정하는 단계는 상기 지연을 결정하기 위하여 상기 스칼라의 절대값을 연산하는 단계를 포함하고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 시냅스는 상기 스칼라가 네거티브일 경우에 억제성 시냅스로서 이용되고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 상기 시냅스는 상기 스칼라가 포지티브 (positive) 일 경우에 흥분성 시냅스로서 이용되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  9. 제 6 항에 있어서,
    상기 지연을 결정하는 단계는 상기 지연을, 희망하는 시간적 분해능으로 양자화하는 단계를 포함하고, 상기 상대적 시간을 조절하는 단계는 양자화된 상기 지연에 기초하여 상기 상대적 시간을 조절하는 단계를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  10. 제 9 항에 있어서,
    상기 함수의 정밀도는 상기 시간적 분해능에 종속되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  11. 제 6 항에 있어서,
    방출된 상기 출력 스파이크의 시간과 상기 기준 시간 사이의 시간 차이에 기초하여 상기 제 1 뉴런 모델에 대한 출력 값을 결정하는 단계로서, 상기 출력 값은 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 변화의 계수의 지수 값의 역이고, 상기 지수는 상기 역을 취하기 전에 상기 시간 차이의 거듭제곱으로 상승되는, 상기 출력 값을 결정하는 단계; 및
    상기 출력 값을 디스플레이로 출력하는 단계를 더 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  12. 제 1 항에 있어서,
    상기 기준 시간은 상기 제 1 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  13. 제 1 항에 있어서,
    상기 기준 시간은 제 2 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 1 뉴런 모델의 출력은 상기 제 2 뉴런 모델의 입력에 결합되고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  14. 제 13 항에 있어서,
    상기 제 1 뉴런 모델은 상기 제 1 뉴런 모델에 대한 제 1 멤브레인 전위의 변화의 제 1 계수를 가지고, 상기 제 2 뉴런 모델은 변화의 상기 제 1 계수와는 상이한, 상기 제 2 뉴런 모델에 대한 제 2 멤브레인 전위의 변화의 제 2 계수를 가지는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  15. 제 13 항에 있어서,
    상기 제 2 뉴런 모델은 상기 제 1 뉴런 모델에 대한 상기 기준 시간으로부터 지연되는 또 다른 기준 시간을 이용하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  16. 제 1 항에 있어서,
    상기 제 1 뉴런 모델은 안티-누설-통합-및-발화 (anti-leaky-integrate-and-fire; ALIF) 뉴런 모델을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  17. 제 1 항에 있어서,
    상기 제 1 뉴런 모델은 지수함수로 증가하는 멤브레인 전위를 가지며 억제성 입력의 부재 시에 계속 탈분극 (depolarize) 하고, 흥분성 입력은 상기 제 1 뉴런 모델로 하여금 상기 제 1 뉴런 모델이 상기 흥분성 입력 없이 발화할 때보다 더 빨리 발화하게 하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  18. 제 1 항에 있어서,
    상기 출력 스파이크를 방출한 후, 상기 제 1 뉴런 모델의 멤브레인 전위를 제로를 초과하는 공칭 세팅 (setting) 으로 재설정하는 단계를 더 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  19. 제 1 항에 있어서,
    상기 입력을 수신하는 단계는 희망하는 시간적 분해능에 기초한 샘플링 레이트로 상기 입력을 샘플링하는 단계를 포함하고, 상기 상대적 시간을 결정하는 단계는 상기 상대적 시간을 상기 시간적 분해능으로 양자화하는 단계를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  20. 스파이킹 뉴럴 네트워크를 구현하기 위한 장치로서,
    상기 장치는 프로세싱 유닛을 포함하고,
    상기 프로세싱 유닛은,
    제 1 뉴런 모델에서 적어도 하나의 입력을 수신하고;
    상기 입력에 기초하여, 상기 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하고;
    상기 상대적 시간에 기초하여 상기 제 1 뉴런 모델로부터 출력 스파이크를 방출하도록
    구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  21. 제 20 항에 있어서,
    상기 입력은 2 진 값의 입력 스파이크를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  22. 제 20 항에 있어서,
    상기 입력은 입력 값을 포함하고, 상기 프로세싱 유닛은 상기 입력 값을 상기 상대적 시간으로서 인코딩함으로써 상기 상대적 시간을 결정하도록 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  23. 제 22 항에 있어서,
    상기 인코딩하는 것은 상기 입력 값의 로그의 네거티브로서 상기 상대적 시간을 계산하는 것을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  24. 제 23 항에 있어서,
    상기 로그는 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 함수로서 상기 멤브레인 전위의 변화의 계수의 지수 값과 동일한 밑을 가지는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  25. 제 20 항에 있어서,
    상기 프로세싱 유닛은,
    상기 제 1 뉴런 모델에 의해 모델링되는 함수에 기초하여 상기 적어도 하나의 입력에서의 지연을 결정하고;
    상기 출력 스파이크가 조절된 상대적 시간에 기초하여 방출되게 하기 위하여, 상기 지연에 기초하여 상기 상대적 시간을 조절하도록
    더 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  26. 제 25 항에 있어서,
    상기 함수는 선형 변환을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  27. 제 25 항에 있어서,
    상기 함수는 스칼라에 의한 승산을 포함하고, 상기 프로세싱 유닛은 상기 지연을 결정하기 위하여 상기 스칼라의 절대값을 연산함으로써 상기 지연을 결정하도록 구성되고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 시냅스는 상기 스칼라가 네거티브일 경우에 억제성 시냅스로서 이용되고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 상기 시냅스는 상기 스칼라가 포지티브일 경우에 흥분성 시냅스로서 이용되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  28. 제 25 항에 있어서,
    상기 프로세싱 유닛은 상기 지연을, 희망하는 시간적 분해능으로 양자화함으로써 상기 지연을 결정하도록 구성되고, 상기 프로세싱 유닛은 양자화된 상기 지연에 기초하여 상기 상대적 시간을 조절함으로써 상기 상대적 시간을 조절하도록 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  29. 제 28 항에 있어서,
    상기 함수의 정밀도는 상기 시간적 분해능에 종속되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  30. 제 25 항에 있어서,
    상기 프로세싱 유닛은,
    상기 방출된 출력 스파이크의 시간과 상기 기준 시간 사이의 시간 차이에 기초하여 상기 제 1 뉴런 모델에 대한 출력 값을 결정하고;
    상기 출력 값을 디스플레이로 출력하도록
    더 구성되고,
    상기 출력 값은 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 변화의 계수의 지수 값의 역이고, 상기 지수는 상기 역을 취하기 전에 상기 시간 차이의 거듭제곱으로 상승되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  31. 제 20 항에 있어서,
    상기 기준 시간은 상기 제 1 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  32. 제 20 항에 있어서,
    상기 기준 시간은 제 2 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 1 뉴런 모델의 출력은 상기 제 2 뉴런 모델의 입력에 결합되고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  33. 제 32 항에 있어서,
    상기 제 1 뉴런 모델은 상기 제 1 뉴런 모델에 대한 제 1 멤브레인 전위의 변화의 제 1 계수를 가지고, 상기 제 2 뉴런 모델은 변화의 상기 제 1 계수와는 상이한, 상기 제 2 뉴런 모델에 대한 제 2 멤브레인 전위의 변화의 제 2 계수를 가지는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  34. 제 32 항에 있어서,
    상기 제 2 뉴런 모델은 상기 제 1 뉴런 모델에 대한 상기 기준 시간으로부터 지연되는 또 다른 기준 시간을 이용하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  35. 제 20 항에 있어서,
    상기 제 1 뉴런 모델은 안티-누설-통합-및-발화 (ALIF) 뉴런 모델을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  36. 제 20 항에 있어서,
    상기 제 1 뉴런 모델은 지수함수로 증가하는 멤브레인 전위를 가지며 억제성 입력의 부재 시에 계속 탈분극하고, 흥분성 입력은 상기 제 1 뉴런 모델로 하여금 상기 제 1 뉴런 모델이 상기 흥분성 입력 없이 발화할 때보다 더 빨리 발화하게 하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  37. 제 20 항에 있어서,
    상기 프로세싱 유닛은,
    상기 출력 스파이크가 방출된 후, 상기 제 1 뉴런 모델의 멤브레인 전위를 제로를 초과하는 공칭 세팅으로 재설정하도록 더 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  38. 제 20 항에 있어서,
    상기 프로세싱 유닛은 희망하는 시간적 분해능에 기초한 샘플링 레이트로 상기 입력을 샘플링함으로써 상기 입력을 수신하도록 구성되고, 상기 프로세싱 유닛은 상기 상대적 시간을 상기 시간적 분해능으로 양자화함으로써 상기 상대적 시간을 결정하도록 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  39. 스파이킹 뉴럴 네트워크를 구현하기 위한 장치로서,
    제 1 뉴런 모델에서 적어도 하나의 입력을 수신하기 위한 수단;
    상기 입력에 기초하여, 상기 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하기 위한 수단; 및
    상기 상대적 시간에 기초하여 상기 제 1 뉴런 모델로부터 출력 스파이크를 방출하기 위한 수단을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  40. 제 39 항에 있어서,
    상기 입력은 2 진 값의 입력 스파이크를 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  41. 제 39 항에 있어서,
    상기 입력은 입력 값을 포함하고, 상기 상대적 시간을 결정하기 위한 수단은 상기 입력 값을 상기 상대적 시간으로서 인코딩하도록 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  42. 제 41 항에 있어서,
    상기 입력 값을 인코딩하는 것은 상기 입력 값의 로그의 네거티브로서 상기 상대적 시간을 계산하는 것을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  43. 제 42 항에 있어서,
    상기 로그는 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 함수로서 상기 멤브레인 전위의 변화의 계수의 지수 값과 동일한 밑을 가지는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  44. 제 39 항에 있어서,
    상기 제 1 뉴런 모델에 의해 모델링되는 함수에 기초하여 상기 적어도 하나의 입력에서의 지연을 결정하기 위한 수단; 및
    상기 방출하기 위한 수단이 조절된 상대적 시간에 기초하여 상기 출력 스파이크를 방출하도록 구성되게 하기 위하여, 상기 지연에 기초하여 상기 상대적 시간을 조절하기 위한 수단을 더 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  45. 제 44 항에 있어서,
    상기 함수는 선형 변환을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  46. 제 44 항에 있어서,
    상기 함수는 스칼라에 의한 승산을 포함하고, 상기 지연을 결정하기 위한 수단은 상기 지연을 결정하기 위하여 상기 스칼라의 절대값을 연산하도록 구성되고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 시냅스는 상기 스칼라가 네거티브일 경우에 억제성 시냅스로서 이용되고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 상기 시냅스는 상기 스칼라가 포지티브일 경우에 흥분성 시냅스로서 이용되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  47. 제 44 항에 있어서,
    상기 지연을 결정하기 위한 수단은 상기 지연을, 희망하는 시간적 분해능으로 양자화하도록 구성되고, 상기 상대적 시간을 조절하기 위한 상기 수단은 양자화된 상기 지연에 기초하여 상기 상대적 시간을 조절하도록 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  48. 제 47 항에 있어서,
    상기 함수의 정밀도는 상기 시간적 분해능에 종속되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  49. 제 44 항에 있어서,
    방출된 상기 출력 스파이크의 시간과 상기 기준 시간 사이의 시간 차이에 기초하여 상기 제 1 뉴런 모델에 대한 출력 값을 결정하기 위한 수단으로서, 상기 출력 값은 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 변화의 계수의 지수 값의 역이고, 상기 지수는 상기 역을 취하기 전에 상기 시간 차이의 거듭제곱으로 상승되는, 상기 출력 값을 결정하기 위한 수단; 및
    상기 출력 값을 표시하기 위한 수단으로 상기 출력 값을 출력하기 위한 수단을 더 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  50. 제 39 항에 있어서,
    상기 기준 시간은 상기 제 1 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  51. 제 39 항에 있어서,
    상기 기준 시간은 제 2 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 1 뉴런 모델의 출력은 상기 제 2 뉴런 모델의 입력에 결합되고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  52. 제 51 항에 있어서,
    상기 제 1 뉴런 모델은 상기 제 1 뉴런 모델에 대한 제 1 멤브레인 전위의 변화의 제 1 계수를 가지고, 상기 제 2 뉴런 모델은 변화의 상기 제 1 계수와는 상이한, 상기 제 2 뉴런 모델에 대한 제 2 멤브레인 전위의 변화의 제 2 계수를 가지는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  53. 제 51 항에 있어서,
    상기 제 2 뉴런 모델은 상기 제 1 뉴런 모델에 대한 상기 기준 시간으로부터 지연되는 또 다른 기준 시간을 이용하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  54. 제 39 항에 있어서,
    상기 제 1 뉴런 모델은 안티-누설-통합-및-발화 (ALIF) 뉴런 모델을 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  55. 제 39 항에 있어서,
    상기 제 1 뉴런 모델은 지수함수로 증가하는 멤브레인 전위를 가지며 억제성 입력의 부재 시에 계속 탈분극하고, 흥분성 입력은 상기 제 1 뉴런 모델로 하여금 상기 제 1 뉴런 모델이 상기 흥분성 입력 없이 발화할 때보다 더 빨리 발화하게 하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  56. 제 39 항에 있어서,
    상기 출력 스파이크가 방출된 후, 상기 제 1 뉴런 모델의 멤브레인 전위를 제로를 초과하는 공칭 세팅으로 재설정하기 위한 수단을 더 포함하는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  57. 제 39 항에 있어서,
    상기 입력을 수신하기 위한 수단은 희망하는 시간적 분해능에 기초한 샘플링 레이트로 상기 입력을 샘플링하도록 구성되고, 상기 상대적 시간을 결정하기 위한 수단은 상기 상대적 시간을 상기 시간적 분해능으로 양자화하도록 구성되는, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  58. 스파이킹 뉴럴 네트워크를 구현하기 위한 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 프로그램 제품은 명령들을 포함하는 컴퓨터 판독가능 매체를 포함하고,
    상기 명령들은,
    제 1 뉴런 모델에서 적어도 하나의 입력을 수신하고;
    상기 입력에 기초하여, 상기 제 1 뉴런 모델의 제 1 출력 스파이크 시간과 기준 시간 사이의 상대적 시간을 결정하고;
    상기 상대적 시간에 기초하여 상기 제 1 뉴런 모델로부터 출력 스파이크를 방출하도록
    실행가능한, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  59. 제 58 항에 있어서,
    상기 입력은 2 진 값의 입력 스파이크를 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  60. 제 58 항에 있어서,
    상기 입력은 입력 값을 포함하고, 상기 상대적 시간을 결정하는 것은 상기 입력 값을 상기 상대적 시간으로서 인코딩하는 것을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  61. 제 60 항에 있어서,
    상기 인코딩하는 것은 상기 입력 값의 로그의 네거티브로서 상기 상대적 시간을 계산하는 것을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  62. 제 61 항에 있어서,
    상기 로그는 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 함수로서 상기 멤브레인 전위의 변화의 계수의 지수 값과 동일한 밑을 가지는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  63. 제 58 항에 있어서,
    상기 제 1 뉴런 모델에 의해 모델링되는 함수에 기초하여 상기 적어도 하나의 입력에서의 지연을 결정하고;
    상기 방출하는 것이 상기 출력 스파이크를 조절된 상대적 시간에 기초하여 방출하는 것을 포함하도록 하기 위하여, 상기 지연에 기초하여 상기 상대적 시간을 조절하도록
    실행가능한 명령들을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  64. 제 63 항에 있어서,
    상기 함수는 선형 변환을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  65. 제 63 항에 있어서,
    상기 함수는 스칼라에 의한 승산을 포함하고, 상기 지연을 결정하는 것은 상기 지연을 결정하기 위하여 상기 스칼라의 절대값을 연산하는 것을 포함하고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 시냅스는 상기 스칼라가 네거티브일 경우에 억제성 시냅스로서 이용되고, 상기 제 1 뉴런 모델로의 상기 입력과 연관된 상기 시냅스는 상기 스칼라가 포지티브일 경우에 흥분성 시냅스로서 이용되는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  66. 제 63 항에 있어서,
    상기 지연을 결정하는 것은 상기 지연을, 희망하는 시간적 분해능으로 양자화하는 것을 포함하고, 상기 상대적 시간을 조절하는 것은 양자화된 상기 지연에 기초하여 상기 상대적 시간을 조절하는 것을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  67. 제 66 항에 있어서,
    상기 함수의 정밀도는 상기 시간적 분해능에 종속되는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  68. 제 63 항에 있어서,
    방출된 상기 출력 스파이크의 시간과 상기 기준 시간 사이의 시간 차이에 기초하여 상기 제 1 뉴런 모델에 대한 출력 값을 결정하고;
    상기 출력 값을 디스플레이로 출력하도록
    실행가능한 명령들을 더 포함하고,
    상기 출력 값은 상기 제 1 뉴런 모델에 대한 멤브레인 전위의 변화의 계수의 지수 값의 역이고, 상기 지수는 상기 역을 취하기 전에 상기 시간 차이의 거듭제곱으로 상승되는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  69. 제 58 항에 있어서,
    상기 기준 시간은 상기 제 1 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  70. 제 58 항에 있어서,
    상기 기준 시간은 제 2 뉴런 모델의 제 2 출력 스파이크 시간을 포함하고, 상기 제 1 뉴런 모델의 출력은 상기 제 2 뉴런 모델의 입력에 결합되고, 상기 제 2 출력 스파이크 시간은 상기 제 1 출력 스파이크 시간 전에 발생하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  71. 제 70 항에 있어서,
    상기 제 1 뉴런 모델은 상기 제 1 뉴런 모델에 대한 제 1 멤브레인 전위의 변화의 제 1 계수를 가지고, 상기 제 2 뉴런 모델은 변화의 상기 제 1 계수와는 상이한, 상기 제 2 뉴런 모델에 대한 제 2 멤브레인 전위의 변화의 제 2 계수를 가지는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  72. 제 70 항에 있어서,
    상기 제 2 뉴런 모델은 상기 제 1 뉴런 모델에 대한 상기 기준 시간으로부터 지연되는 또 다른 기준 시간을 이용하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  73. 제 58 항에 있어서,
    상기 제 1 뉴런 모델은 안티-누설-통합-및-발화 (ALIF) 뉴런 모델을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  74. 제 58 항에 있어서,
    상기 제 1 뉴런 모델은 지수함수로 증가하는 멤브레인 전위를 가지며 억제성 입력의 부재 시에 계속 탈분극하고, 흥분성 입력은 상기 제 1 뉴런 모델로 하여금 상기 제 1 뉴런 모델이 상기 흥분성 입력 없이 발화할 때보다 더 빨리 발화하게 하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  75. 제 58 항에 있어서,
    상기 출력 스파이크를 방출한 후, 상기 제 1 뉴런 모델의 멤브레인 전위를 제로를 초과하는 공칭 세팅으로 재설정하도록
    실행가능한 명령들을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  76. 제 58 항에 있어서,
    상기 입력을 수신하는 것은 희망하는 시간적 분해능에 기초한 샘플링 레이트로 상기 입력을 샘플링하는 것을 포함하고, 상기 상대적 시간을 결정하는 것은 상기 상대적 시간을 상기 시간적 분해능으로 양자화하는 것을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  77. 제 6 항에 있어서,
    상기 함수는 항상성 프로세스 또는 타겟 출력 지연에 기초한 학습 함수인, 스파이킹 뉴럴 네트워크를 구현하기 위한 방법.
  78. 제 25 항에 있어서,
    상기 함수는 항상성 프로세스 또는 타겟 출력 지연에 기초한 학습 함수인, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  79. 제 44 항에 있어서,
    상기 함수는 항상성 프로세스 또는 타겟 출력 지연에 기초한 학습 함수인, 스파이킹 뉴럴 네트워크를 구현하기 위한 장치.
  80. 제 63 항에 있어서,
    상기 함수는 항상성 프로세스 또는 타겟 출력 지연에 기초한 학습 함수인, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
KR20147024203A 2012-02-08 2013-02-07 스파이킹 뉴럴 연산을 위한 방법들 및 장치 KR20140129067A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/368,994 2012-02-08
US13/368,994 US9111225B2 (en) 2012-02-08 2012-02-08 Methods and apparatus for spiking neural computation
PCT/US2013/025210 WO2013119861A1 (en) 2012-02-08 2013-02-07 Methods and apparatus for spiking neural computation

Publications (1)

Publication Number Publication Date
KR20140129067A true KR20140129067A (ko) 2014-11-06

Family

ID=47754984

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20147024203A KR20140129067A (ko) 2012-02-08 2013-02-07 스파이킹 뉴럴 연산을 위한 방법들 및 장치

Country Status (7)

Country Link
US (1) US9111225B2 (ko)
EP (1) EP2812853A1 (ko)
JP (1) JP6272784B2 (ko)
KR (1) KR20140129067A (ko)
CN (1) CN104094295B (ko)
BR (1) BR112014019743A8 (ko)
WO (1) WO2013119861A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220071091A (ko) * 2020-11-23 2022-05-31 충북대학교 산학협력단 스파이킹 뉴럴 네트워크를 최적화하는 방법 및 장치
US11580393B2 (en) 2019-12-27 2023-02-14 Samsung Electronics Co., Ltd. Method and apparatus with neural network data input and output control

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9367797B2 (en) 2012-02-08 2016-06-14 Jason Frank Hunzinger Methods and apparatus for spiking neural computation
US9208431B2 (en) 2012-05-10 2015-12-08 Qualcomm Incorporated Method and apparatus for strategic synaptic failure and learning in spiking neural networks
US9015096B2 (en) * 2012-05-30 2015-04-21 Qualcomm Incorporated Continuous time spiking neural network event-based simulation that schedules co-pending events using an indexable list of nodes
US9369340B2 (en) * 2013-06-30 2016-06-14 Jive Software, Inc. User-centered engagement analysis
US9275329B2 (en) * 2013-08-12 2016-03-01 Qualcomm Incorporated Behavioral homeostasis in artificial nervous systems using dynamical spiking neuron models
US10339447B2 (en) 2014-01-23 2019-07-02 Qualcomm Incorporated Configuring sparse neuronal networks
US9269045B2 (en) 2014-02-14 2016-02-23 Qualcomm Incorporated Auditory source separation in a spiking neural network
US9536189B2 (en) 2014-02-20 2017-01-03 Qualcomm Incorporated Phase-coding for coordinate transformation
US20150242745A1 (en) * 2014-02-21 2015-08-27 Qualcomm Incorporated Event-based inference and learning for stochastic spiking bayesian networks
US9672464B2 (en) * 2014-02-28 2017-06-06 Qualcomm Incorporated Method and apparatus for efficient implementation of common neuron models
US20150269485A1 (en) * 2014-03-24 2015-09-24 Qualcomm Incorporated Cold neuron spike timing back-propagation
US10783900B2 (en) * 2014-10-03 2020-09-22 Google Llc Convolutional, long short-term memory, fully connected deep neural networks
US11126913B2 (en) * 2015-07-23 2021-09-21 Applied Brain Research Inc Methods and systems for implementing deep spiking neural networks
US10671912B2 (en) * 2016-09-13 2020-06-02 Sap Se Spatio-temporal spiking neural networks in neuromorphic hardware systems
US11037054B2 (en) 2016-12-20 2021-06-15 Intel Corporation Trace-based neuromorphic architecture for advanced learning
CN106875004B (zh) * 2017-01-20 2019-09-10 北京灵汐科技有限公司 复合模式神经元信息处理方法和系统
US10107959B2 (en) 2017-02-02 2018-10-23 International Business Machines Corporation Waveguide architecture for photonic neural component
US10031287B1 (en) 2017-02-02 2018-07-24 International Business Machines Corporation Waveguide architecture for photonic neural component with multiplexed optical signals on inter-node waveguides
KR102091498B1 (ko) * 2018-06-11 2020-03-24 고려대학교 산학협력단 비지도 학습장치 및 그 학습방법
US11200484B2 (en) 2018-09-06 2021-12-14 International Business Machines Corporation Probability propagation over factor graphs
KR101951914B1 (ko) * 2018-10-08 2019-02-26 넷마블 주식회사 데이터 변화의 검출 및 표시를 위한 장치 및 방법
JP7108570B2 (ja) 2019-04-01 2022-07-28 出光興産株式会社 流動接触分解ガソリンの製造方法
KR102339485B1 (ko) * 2020-06-30 2021-12-15 강원대학교산학협력단 인공신경망을 이용한 아크신호 검출방법
CN114254106A (zh) * 2020-09-25 2022-03-29 北京灵汐科技有限公司 文本分类方法、装置、设备及存储介质
CN114997391B (zh) * 2022-08-02 2022-11-29 深圳时识科技有限公司 电子神经系统中的泄露方法、芯片及电子设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355434A (en) * 1991-08-19 1994-10-11 Toyoda Koki Kabushiki Kaisha Method and apparatus for performing learning in a neural network
JPH07262157A (ja) * 1994-03-17 1995-10-13 Kumamoto Techno Porisu Zaidan ニューラルネットワークおよびそのための回路
CA2293477A1 (en) * 1997-06-11 1998-12-17 The University Of Southern California Dynamic synapse for signal processing in neural networks
US6581046B1 (en) 1997-10-10 2003-06-17 Yeda Research And Development Co. Ltd. Neuronal phase-locked loops
JP4392089B2 (ja) 1999-05-27 2009-12-24 株式会社デンソー ニューロン、当該ニューロンを用いて構成された階層型ニューラルネットワーク及び当該ニューロン内部での乗算処理に用いられる乗算回路
US6618712B1 (en) 1999-05-28 2003-09-09 Sandia Corporation Particle analysis using laser ablation mass spectroscopy
US7430546B1 (en) 2003-06-07 2008-09-30 Roland Erwin Suri Applications of an algorithm that mimics cortical processing
EP1696999A4 (en) 2003-07-21 2008-05-28 Ai Semi Ltd THERAPEUTIC SYSTEM FOR ADAPTIVE RESYNCHRONIZATION
EP1515270A1 (en) * 2003-09-09 2005-03-16 Semeion An artificial neural network
US7958071B2 (en) 2007-04-19 2011-06-07 Hewlett-Packard Development Company, L.P. Computational nodes and computational-node networks that include dynamical-nanodevice connections
US20110035215A1 (en) 2007-08-28 2011-02-10 Haim Sompolinsky Method, device and system for speech recognition
US8250011B2 (en) 2008-09-21 2012-08-21 Van Der Made Peter A J Autonomous learning dynamic artificial neural computing device and brain inspired system
US20100312736A1 (en) 2009-06-05 2010-12-09 The Regents Of The University Of California Critical Branching Neural Computation Apparatus and Methods
US8315305B2 (en) * 2010-03-26 2012-11-20 Brain Corporation Systems and methods for invariant pulse latency coding
US20130204814A1 (en) 2012-02-08 2013-08-08 Qualcomm Incorporated Methods and apparatus for spiking neural computation
US9367797B2 (en) 2012-02-08 2016-06-14 Jason Frank Hunzinger Methods and apparatus for spiking neural computation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11580393B2 (en) 2019-12-27 2023-02-14 Samsung Electronics Co., Ltd. Method and apparatus with neural network data input and output control
US11790232B2 (en) 2019-12-27 2023-10-17 Samsung Electronics Co., Ltd. Method and apparatus with neural network data input and output control
KR20220071091A (ko) * 2020-11-23 2022-05-31 충북대학교 산학협력단 스파이킹 뉴럴 네트워크를 최적화하는 방법 및 장치

Also Published As

Publication number Publication date
US20130204819A1 (en) 2013-08-08
EP2812853A1 (en) 2014-12-17
BR112014019743A8 (pt) 2017-07-11
BR112014019743A2 (ko) 2017-06-20
US9111225B2 (en) 2015-08-18
CN104094295B (zh) 2017-05-31
WO2013119861A1 (en) 2013-08-15
CN104094295A (zh) 2014-10-08
JP6272784B2 (ja) 2018-01-31
JP2015510193A (ja) 2015-04-02

Similar Documents

Publication Publication Date Title
KR101700140B1 (ko) 스파이킹 뉴럴 연산을 위한 방법들 및 장치
KR20140129067A (ko) 스파이킹 뉴럴 연산을 위한 방법들 및 장치
KR20140128384A (ko) 스파이킹 뉴럴 연산을 위한 방법들 및 장치
JP2015510193A5 (ko)
US10339447B2 (en) Configuring sparse neuronal networks
TWI584207B (zh) 用於分段線性神經元建模的方法、裝置與電腦程式產品
US9111224B2 (en) Method and apparatus for neural learning of natural multi-spike trains in spiking neural networks
KR20170041724A (ko) 비동기 펄스 변조를 이용한 인공 뉴런들 및 스파이킹 뉴런들
US20150046382A1 (en) Computed synapses for neuromorphic systems
US9652711B2 (en) Analog signal reconstruction and recognition via sub-threshold modulation
TW201602807A (zh) Cold神經元尖峰時序反向傳播
US20150212861A1 (en) Value synchronization across neural processors
TW201401188A (zh) 用於學習尖波神經網路的動態事件神經元和突觸模型
CN113454648A (zh) 循环神经网络中的勒让德存储器单元
Engelken et al. Input correlations impede suppression of chaos and learning in balanced firing-rate networks
US9460384B2 (en) Effecting modulation by global scalar values in a spiking neural network
US9342782B2 (en) Stochastic delay plasticity
US20150213356A1 (en) Method for converting values into spikes

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application