KR102584868B1 - 온칩 학습이 가능한 뉴로모픽 아키텍쳐 - Google Patents

온칩 학습이 가능한 뉴로모픽 아키텍쳐 Download PDF

Info

Publication number
KR102584868B1
KR102584868B1 KR1020210000515A KR20210000515A KR102584868B1 KR 102584868 B1 KR102584868 B1 KR 102584868B1 KR 1020210000515 A KR1020210000515 A KR 1020210000515A KR 20210000515 A KR20210000515 A KR 20210000515A KR 102584868 B1 KR102584868 B1 KR 102584868B1
Authority
KR
South Korea
Prior art keywords
neuron
layer
input
signal
reverse
Prior art date
Application number
KR1020210000515A
Other languages
English (en)
Other versions
KR20210088444A (ko
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 KR20210088444A publication Critical patent/KR20210088444A/ko
Application granted granted Critical
Publication of KR102584868B1 publication Critical patent/KR102584868B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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/0499Feedforward networks
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

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

Abstract

본 발명은 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 관한 것이다. 상기 뉴로모픽 아키텍쳐는, 시냅스 소자들이 크로스바(cross-bar) 형태로 배치된 하나 또는 둘 이상의 시냅스 어레이; 순방향 뉴런 및 역방향 뉴런을 구비하는 하나 또는 둘 이상의 뉴런층; 및 타겟 신호와 최종 뉴런층의 순방향 뉴런의 출력 신호가 입력되고, 입력된 타겟 신호와 최종 뉴런층의 출력 신호의 오차값을 검출하여 출력하는 오차 연산 회로; 를 구비한다. 상기 최종 뉴런층은 마지막 시냅스 어레이의 출력단에 연결된 뉴런층이며, 상기 최종 뉴런층을 제외한 나머지의 뉴런층은 신경망의 가중치 업데이트 동작시에 사용되는 신호들을 저장하는 메모리를 더 구비하여 시냅스 어레이들의 사이에 배치된다. 상기 시냅스 소자들은 전하 저장층을 갖는 플래시 소자로 이루어지고, 전력 소모가 작은 초소형의 소자들로 뉴런층들을 구현함으로써, 전력 소모가 작고 컴팩트한 뉴로모픽 아키텍쳐를 제공할 수 있다.

Description

온칩 학습이 가능한 뉴로모픽 아키텍쳐{On-chip training neuromorphic architecture}
본 발명은 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 관한 것으로서, 더욱 구체적으로는 초소형이면서 저전력의 회로들을 이용하여 신경망의 순전파 단계, 역전파 단계 및 가중치 업데이트 단계를 하드웨어로 구현함으로써, 전력 소모를 감소시키고 메모리의 사용을 최소화시킨 컴팩트(Compact)한 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 관한 것이다.
최근 폰 노이만 아키텍쳐 기반의 집적회로에서 전력 소모가 크게 증가하고 발열 문제가 심각해지면서 동물의 신경계를 모방하려는 시도가 많이 시도되고 있다. 특히, 동물의 신경계를 모방한 기술에서는 전력 소모를 크게 줄이면서, 인지 기능이 가능하고 학습이 가능함으로써 인식 기능과 판단 기능을 개선할 수 있게 되었다. 이에 따라 기존의 폰 노이만 방식의 집적회로의 기능을 대체하거나 크게 개선할 수 있는 기회가 생겼다. 따라서, 이에 대한 관심이 증가하고 연구의 필요성이 크게 대두되었다.
뉴런의 기본 기능은 임계치 이상의 자극을 받았을 경우 전기적 스파이크를 발생시켜 다른 세포에 정보를 전달하는 것이다. 이렇게 발생하는 전기 신호를 활동전위(活動電位: action potential)라고 한다. 뉴런은 크게 세 가지 부분으로 나눌 수 있다. 핵이 있는 세포 부분이 신경세포체이며, 다른 세포에서 신호를 받는 부분이 수상돌기(樹狀突起: dendrite), 그리고 다른 세포에 신호를 주는 부분이 축삭돌기(軸索突起: axon)이다. 돌기 사이에 신호를 전달하는 부분을 시냅스(synapse)라고 한다.
뉴런은 다른 신경세포나 자극수용세포에서 자극을 받아 다른 신경세포 또는 샘세포로 자극을 전달하는데, 이러한 자극의 상호교환은 시냅스에서 일어난다. 1개의 신경세포(뉴런)는 다수의 시냅스를 통하여 자극을 받아 흥분을 통합한 후 신경세포체에 가까운 축삭 돌기로 전기적 스파이크를 전달하여 시냅스에 도달하게 한다. 이와 같이, 뉴런의 흥분이 시냅스를 거쳐 다른 신경세포에 전해지는 것을 흥분 전달이라고 한다. 시냅스에서의 흥분전달은 신경섬유로부터 세포체 또는 수상돌기 방향으로만 전해지고, 역방향으로는 전달되지 않으므로, 전체로서 한 방향으로만 흥분을 전달하게 된다. 또한, 시냅스는 단지 흥분을 전달하는 중계 장소일 뿐만 아니라 거기에 도착하는 흥분의 시간적/공간적 변화에 따라 가중을 일으키거나, 또는 억제를 일으켜 신경계의 고차적인 통합작용을 가능하게 하고 있다.
한편, 시냅스는 흥분을 전달하는 것 이외에 다른 신경세포로부터의 흥분의 전달을 억제하는 작용을 가진 것도 있다. 이런 것을 억제성 시냅스라고 한다. 어떤 신경섬유를 따라 전달되어 온 흥분이 억제성 시냅스에 도달하면 거기에서 억제성 전달물질이 분비된다. 이 물질은 시냅스에 접하는 신경세포의 세포막에 작용하여 그 세포의 흥분(활동전위의 발생)을 억제하는 작용이 있다. 그 때문에 억제성 전달물질이 작용하고 있는 동안, 다른 시냅스에 도달한 흥분은 전달되지 않게 된다.
최근, 인공 신경망을 구현하는 연구가 다양하게 진행되고 있다. 인공 신경망에서 구현되어야 하는 인공 지능 동작에서는 weight sum과 같은 대규모 병렬 연산이 필요하게 된다. 하지만, 전술한 종래의 폰 노이만 기반의 구조에서는 메모리와 프로세서 간의 통신을 통해 직렬적으로 연산을 수행한다. 이러한 종래의 방식으로 인공 지능 동작을 수행하는 경우, 많은 전력 소모가 발생하고, 외부 메모리와 데이터를 주고 받는 과정에서 속도가 느려질 뿐만 아니라 전력 소모도 증대되는 문제점이 발생하게 된다.
특히, 인공 신경망은 Forward Propagation만 수행하여 추론이나 인지만 하는 오프-칩 학습(Off-Chip Learning)만을 수행하도록 구성되거나, Forward Propagation 및 Backward Propagation을 모두 수행하고 가중치 업데이트(Weight Update)하는 온-칩 학습(On-Chip Learning)을 수행하도록 구성될 수 있다. 미국공개특허 US 2017-0011290A1 에는 온칩 학습을 수행하는 뉴로모픽 아키텍쳐가 개시되어 있다. 하지만, 전술한 미국공개특허에 개시된 시스템은, Op-Amp, Analog-to-Digital Converters(ADCs), Digital-to-Analog Converters(DACs) 등과 같이 전력 소모가 많고 많은 면적이 요구되는 회로들을 사용하는 문제점이 있다. 이러한 회로들은 네트워크의 크기가 커질수록 시스템을 더욱 비효율적으로 만드는 주된 원인이 되는 문제점이 있다. 따라서, 이러한 문제점들을 없애면서 동시에 우수한 성능을 만들어 내는 뉴로모픽 아키텍쳐에 대한 요구가 증대되고 있는 실정이다.
미국공개특허 US 2017-0011290A1 미국공개특허 US 2017-0017879A1 한국공개특허공보 제 10-2017-0080440호 한국공개특허공보 제 10-2020-0076083호
전술한 문제점을 해결하기 위하여 본 발명의 목적은 메모리 사용을 최소화시키고 전력 소모 및 면적 소모를 감소시키는 소자들을 사용하여 구성하고, 순전파 단계, 역전파 단계, 가중치 업데이트 단계를 모두 하드웨어적으로 수행하여 온칩 학습이 가능하도록 구성된 뉴로모픽 아키텍쳐를 제공하는 것이다.
전술한 기술적 과제를 달성하기 위한 본 발명의 특징에 따른 뉴로모픽 아키텍쳐는, 사전 설정된 컨덕턴스를 갖는 시냅스 소자들이 크로스바(cross-bar) 형태로 배치된 하나 또는 둘 이상의 시냅스 어레이; 신경망의 순전파 동작을 수행하도록 구성된 순방향 뉴런 및 신경망의 역전파 동작을 수행하도록 구성된 역방향 뉴런을 구비하는 하나 또는 둘 이상의 뉴런층; 및 타겟 신호와 최종 뉴런층의 순방향 뉴런의 출력 신호가 입력되고, 입력된 타겟 신호와 최종 뉴런층의 출력 신호의 오차값을 검출하여 출력하는 오차 연산 회로; 를 구비하고,
상기 최종 뉴런층은 마지막 시냅스 어레이의 출력단에 연결된 뉴런층이며, 상기 최종 뉴런층을 제외한 나머지의 뉴런층은 신경망의 가중치 업데이트 동작시에 사용되는 신호들을 저장하는 메모리를 더 구비하여 시냅스 어레이들의 사이에 배치되고, 상기 시냅스 소자들의 컨덕턴스는 신경망의 가중치를 나타내는 것으로서, 가중치 업데이트 동작에 의하여 변경된다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 시냅스 소자들은 전하 저장층을 갖는 Gated Schottky Diode(GSD) 또는 전하 저장층을 갖는 비휘발성 메모리 소자로 이루어진 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 최종 뉴런층을 제외한 나머지 뉴런층의 순방향 뉴런은, 입력단에 연결된 시냅스 어레이의 순방향 가중치 합에 대응되는 전류가 입력되어 충전되는 커패시터; 및 상기 커패시터의 충전 전압이 문턱 전압보다 크면 턴온되어 발화 스파이크 신호를 출력하는 스위칭 소자;를 구비하여, 시냅스 어레이로부터 입력되는 순방향 가중치 합에 대응되는 전류가 사전 설정된 문턱전압보다 크면 발화 스파이크 신호를 생성하고, 상기 생성된 발화 스파이크 신호를 출력단에 연결된 시냅스 어레이와 해당 뉴런층의 메모리로 출력하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 최종 뉴런층의 순방향 뉴런은, 입력단에 연결된 시냅스 어레이의 순방향 가중치 합에 대응되는 전류가 입력되어 충전되는 커패시터; 및 상기 커패시터의 충전 전압이 문턱 전압보다 크면 턴온되어 발화 스파이크 신호를 출력하는 스위칭 소자; 를 구비하여, 시냅스 어레이로부터 입력되는 순방향 가중치 합에 대응되는 전류가 사전 설정된 문턱전압보다 크면 발화 스파이크 신호를 생성하고, 상기 생성된 발화 스파이크 신호를 출력단에 연결된 오차 연산 회로로 출력하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 뉴런층과 상기 최종 뉴런층의 역방향 뉴런은, 입력단에 연결된 시냅스 어레이 또는 오차 연산 회로로부터 입력된 전압과 사전 설정된 기준 펄스의 차이값을 출력하는 차동 증폭기; 및 상기 차동 증폭기의 출력 신호에 대한 전압 레벨을 조정하는 레벨 쉬프터;를 구비하여, 입력단에 연결된 시냅스 어레이의 역방향 가중치 합에 대응되는 전압 또는 오차 연산 회로의 오차값을 펄스 폭 변조하여 오차 신호를 생성하고, 상기 생성된 오차 신호를 출력단에 연결된 시냅스 어레이로 출력하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 최종 뉴런층을 제외한 나머지 뉴런층의 역방향 뉴런은, 입력단에 연결된 시냅스 어레이의 역방향 가중치 합에 대응되는 전류 및 상기 뉴런층의 메모리로부터 오차 생성 신호가 입력되고, 상기 오차 생성 신호를 사용하여 상기 입력된 전류에 대하여 펄스 폭 변조하여 오차 신호를 생성하고, 상기 생성된 오차 신호를 출력단에 연결된 시냅스 어레이로 출력하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 시냅스 어레이는, 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자, 전단 뉴런층의 메모리의 출력 단자 및 전단 뉴런층의 역방향 뉴런의 입력 단자 중 하나로 스위칭되도록 구성된 입력 스위칭 소자; 및 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 후단 뉴런층의 역방향 뉴런의 출력 단자 중 하나로 스위칭되도록 구성된 출력 스위칭 소자; 를 더 구비하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 뉴로모픽 아키텍쳐는 상기 입력 스위칭 소자 및 상기 출력 스위칭 소자의 동작을 제어하는 컨트롤러를 더 구비하고,
상기 컨트롤러는, 순전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 연결되도록 제어하며, 역전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 역방향 뉴런의 입력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하며, 가중치 업데이트 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 메모리의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 뉴런층의 메모리는, 해당 뉴런층의 순방향 뉴런의 출력 신호가 입력되고, 상기 입력된 순방향 뉴런의 출력 신호로부터 하나의 이미지 입력에 대한 마지막 time step의 발화 여부를 나타내는 제1 정보를 추출하여 저장하고, 상기 입력된 순방향 뉴런의 출력 신호로부터 하나의 이미지 입력에 대한 전체 time step 동안 뉴런의 발화 여부를 나타내는 제2 정보를 추출하여 저장하며, 상기 제1 정보는 가중치 업데이트 신호로 사용되며, 상기 제2 정보는 역방향 뉴런의 오차 생성 신호로 사용되는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 뉴런층과 상기 최종 뉴런층의 역방향 뉴런은, 입력 단자에 직렬 연결된 2개의 인버터 소자로 구성되어 양의 오차 신호를 출력하는 제1 경로; 및 입력 단자에 연결된 단일의 인버터 소자로 구성되어 음의 오차 신호를 출력하는 제2 경로; 를 구비하여, 제1 경로를 통해 양의 오차 신호를 전단 시냅스 어레이로 출력하고, 제2 경로를 통해 음의 오차 신호를 전단 시냅스 어레이로 출력하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 최종 뉴런층을 제외한 나머지 뉴런층의 역방향 뉴런은, 입력단에 연결된 시냅스 어레이의 역방향 가중치 합에 대응되는 전류 및 상기 뉴런층의 메모리로부터 오차 생성 신호가 입력되고, 상기 오차 생성 신호를 사용하여 상기 양의 오차 신호 및 음의 오차 신호를 전단 시냅스 어레이로 순차적으로 출력하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 시냅스 어레이는, 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 전단 뉴런층의 역방향 뉴런의 입력 단자 중 하나로 스위칭되도록 구성된 입력 스위칭 소자; 및 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 후단 뉴런층의 역방향 뉴런의 출력 단자 중 하나로 스위칭되도록 구성된 출력 스위칭 소자;를 더 구비하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서, 상기 뉴로모픽 아키텍쳐는 상기 입력 스위칭 소자 및 상기 출력 스위칭 소자의 동작을 제어하는 컨트롤러를 더 구비하고,
상기 컨트롤러는, 순전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 연결되도록 제어하며, 역전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 역방향 뉴런의 입력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하며, 가중치 업데이트 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하는 것이 바람직하다.
전술한 특징에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 있어서,상기 뉴런층의 메모리는, 해당 뉴런층의 순방향 뉴런의 출력 신호가 입력되고, 상기 입력된 순방향 뉴런의 출력 신호로부터 하나의 이미지 입력에 대한 전체 time step 동안 뉴런의 발화 여부를 나타내는 정보를 추출하여 저장하며, 상기 정보는 역방향 뉴런의 오차 생성 신호로 사용되는 것이 바람직하다.
전술한 구성을 갖는 본 발명은 전하 저장층을 갖는 GSD 또는 전하 저장층을 갖는 메모리 소자 등으로 시냅스 어레이를 구현함으로써, 전력 소모가 많은 Op-Amp, ADC, DAC 등과 같은 소자를 사용하는 기존의 뉴로모픽 아키텍쳐에 비하여 전력 소모를 감소시킬 수 있게 된다.
본 발명에 따른 뉴로모픽 아키텍쳐는 시냅스 어레이 및 뉴런층들을 이용하여, 신경망의 순전파 단계, 역전파 단계, 가중치 업데이트 단계를 모두 수행하여 온칩 학습을 할 수 있게 된다.
도 1은 신경망에 대한 다이어그램과 하드웨어 기반의 신경망에서의 신호를 설명한 도표이다.
도 2는 본 발명의 제1 실시예에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐를 도시한 구성도이다.
도 3은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 첫번째 시냅스 어레이를 예시적으로 도시한 모식도이며, 도 4는 두번째 이후의 시냅스 어레이를 예시적으로 도시한 모식도이다.
도 5는 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 순방향 뉴런(300)을 도시한 회로도이다.
도 6은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 메모리(310)를 도시한 블록도이다.
도 7은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 오차 연산 회로(40)를 예시적으로 도시한 회로도이다.
도 8은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 각 뉴런층의 역방향 뉴런(320)들을 도시한 블록도이다.
도 9는 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 역방향 뉴런(320)의 펄스폭 변조 회로를 예시적으로 도시한 회로도이다.
도 10은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 가중치 최적화를 위한 온칩 훈련 방법을 설명하기 위하여 예시적으로 도시한 다이어그램이다.
도 11은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 가중치 업데이트 단계에서 시냅스 어레이에 인가되는 신호들을 예시적으로 도시한 그림이다.
도 12는 본 발명의 제2 실시예에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐를 도시한 블록도이다.
도 13은 본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 최종 뉴런층의 역방향 뉴런을 도시한 블록도 및 회로도이다.
도 14는 본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 뉴런층의 역방향 뉴런을 도시한 블록도 및 회로도이다.
본 발명은 온-칩 학습(On-Chip Learning)이 가능한 하드웨어 기반의 신경망(Hardware-based neural networks; HNNs) 시스템에 관한 것이다. 도 1은 신경망에 대한 다이어그램과 하드웨어 기반의 신경망에서의 신호를 설명한 도표이다. 도 1을 참조하면, 하드웨어 기반의 뉴로모픽 아키텍쳐는 입력 뉴런층(input neuron layer), 적어도 하나 이상의 히든 뉴런층(hidden neuron layer) 그리고 출력 뉴런층(output neuron layer)을 구비하며, 각 뉴런층들은 가중치(weights)를 나타내는 컨덕턴스를 갖는 시냅스 어레이(synaptic arrays)들에 의해 서로 연결된다. 도 1(b)는 소프트웨어 기반의 신경망 모델과 시냅스 어레이를 이용한 하드웨어 기반의 신경망 구조에서의 입력 신호(Input), 가중치(Weight), VMM(vector-by-matrix multiplication)을 설명하는 도표이다. 하드웨어 기반의 신경망에서는, 가중치를 표현하기 위하여 단일 소자의 conductance(G)가 사용되거나 한 쌍의 소자의 conductance들의 차이값(G+-G-)을 사용할 수 있다. 가중치를 나타내기 위하여 한 쌍의 소자를 사용하는 경우, 음의 값 ~ 양의 값의 범위를 갖는 가중치를 구현할 수 있게 된다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐에 대하여 구체적으로 설명한다.
< 제1 실시예 >
도 2는 본 발명의 제1 실시예에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐를 도시한 구성도이다. 도 2를 참조하면, 본 발명의 제1 실시예에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐(1)은, 입력층(10), 하나 또는 둘 이상의 시냅스 어레이(20, 21,22), 시냅스 어레이들의 사이에 각각 배치되거나 마지막 시냅스 어레이의 출력단에 연결되는 하나 또는 둘 이상의 뉴런층(30, 31, 39) 및 오차 연산 회로(40)를 구비한다. 본 명세서에서는, 상기 하나 또는 둘 이상의 뉴런층들 중 마지막 시냅스 어레이의 출력단에 연결된 뉴런층은 '최종 뉴런층(39)'이라 한다.
전술한 구성을 갖는 본 발명에 따른 뉴로모픽 아키텍쳐는, 순전파 단계(Forward Propagation Phase), 역전파 단계(Backward Propagation Phase) 및 가중치 업데이트 단계(Weight Update Phase)를 순차적으로 실행하여 가중치를 최적화 시킬 수 있는 온칩 학습(On-Chip Learning)이 가능하게 된다. 이하, 전술한 각 구성 요소들의 구성 및 동작에 대하여 구체적으로 설명한다. 본 명세서에서는 도 2에 도시된 바와 같이 3개의 시냅스 어레이와 2개의 뉴런층으로 구성된 뉴로모픽 아키텍쳐를 예시적으로 설명하며, 이는 설명의 편의상 시냅스 어레이와 뉴런층의 개수를 구체적으로 설정한 것에 불과하므로, 시냅스 어레이와 뉴런층의 개수는 시스템의 설계에 따라 적절하게 변형될 수 있다.
도 2에 있어서, X는 입력층 또는 순방향 뉴런의 출력 신호이며, O는 시냅스 어레이의 출력 신호로서 순방향 가중치 합(Forward weighted sum value) 이며, M은 메모리에 저장된 마지막 time step의 발화 정보로서 시냅스 어레이의 가중치 업데이트 신호로 사용되며, G는 메모리에 저장된 전체 time step 동안의 발화 정보로서 역방향 뉴런의 오차 생성 신호로 사용되며, T는 정답 신호인 타겟 신호이며, BO는 오차 연산 회로의 오차값 또는 시냅스 어레이의 역방향 가중치 값(Backward weighted sum value)이며, BX는 역방향 뉴런의 출력 신호인 오차 신호이며, UX는 가중치 업데이트 단계에서 사용되기 위하여 시냅스 어레이로 제공되는 역방향 뉴런의 오차 신호이며, BX와 UX는 동일한 신호이다.
상기 입력층(10)은 학습할 입력 신호(X)와 업데이트 신호(M) 중 하나로 스위칭되도록 구성되며, 스위칭된 신호가 시냅스 어레이의 입력 단자로 제공되도록 구성된다. 상기 입력층은, 순전파 단계에서는 입력 신호(X)가 시냅스 어레이로 제공되도록 스위칭되며, 업데이트 단계에서는 업데이트 신호(M)가 시냅스 어레이로 제공되도록 스위칭된다.
도 3은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 첫번째 시냅스 어레이를 예시적으로 도시한 모식도이며, 도 4는 두번째 이후의 시냅스 어레이를 예시적으로 도시한 모식도이다. 상기 시냅스 어레이(20, 21, 22)는, 시냅스(Synapse) 기능을 수행하는 시냅스 소자들이 행과 열을 따라 배치되어 크로스 바(Cross-bar) 형태로 연결되며, 각 시냅스 소자들은 전하 저장층을 구비하는 소자들로 이루어진 것이 바람직하다. 상기 시냅스 소자로는 전하 저장층을 구비하는 Gated Schottky Diode(GSD)로 구성되거나 전하 저장층을 갖는 비휘발성 메모리 소자 또는 전하 저장층을 갖는 플래시 소자(Flash Device) 등으로 구성될 수도 있다. 상기 시냅스 소자를 프로그램 또는 이레이즈(Erase)시켜 시냅스 소자의 전하 저장층에 전하를 축적시키거나 결핍시킴으로써, 각 시냅스 소자의 컨덕턴스를 변화시키게 된다. 이에 따라, 가중치(Weight)에 대응되는 컨덕턴스들을 갖는 시냅스 소자들을 구현할 수 있게 된다. 이하, 설명의 편의상, 시냅스 어레이들의 입력 단자에 연결된 뉴런층은 전단 뉴런층이라 칭하고, 시냅스 어레이들의 출력 단자에 연결된 뉴런층은 후단 뉴런층이라고 칭한다.
도 3 및 도 4를 참조하면, 상기 시냅스 어레이들은 입력 단자에 연결된 입력 스위칭 소자(S1) 및 출력 단자에 연결된 출력 스위칭 소자(S2)를 구비한다. 상기 입력 스위칭 소자(S1)는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자, 전단 뉴런층의 메모리의 출력 단자 및 전단 뉴런층의 역방향 뉴런의 입력 단자 중 하나로 스위칭되도록 구성된다. 상기 출력 스위칭 소자(S2)는 시냅스 어레이의 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 후단 뉴런층의 역방향 뉴런의 출력 단자 중 하나로 스위칭되도록 구성된다. 다만, 도 3에 도시된 첫번째 시냅스 어레이는 역전파 단계를 수행하지 아니하므로, 입력 스위칭 소자(S1)는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 전단 뉴런층의 메모리의 출력 단자 중 하나로 스위칭되도록 구성된다.
본 발명에 따른 뉴로모픽 아키텍쳐는 상기 입력 스위칭 소자 및 출력 스위칭 소자의 동작을 제어하기 위한 컨트롤러를 더 구비할 수 있다. 상기 컨트롤러는 마이크로컨트롤러 또는 MCU 등과 같은 마이크로프로세서 등을 사용하여 구현될 수 있다.
상기 컨트롤러는, 순전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 연결되도록 제어함으로써, 시냅스 어레이는 전단 뉴런층의 순방향 뉴런으로부터 발화 스파이크 신호(X)가 입력되고, 후단 뉴런층의 순방향 뉴런으로 순방향 가중치 합을 출력한다.
또한, 상기 컨트롤러는, 역전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 역방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어함으로써, 시냅스 어레이는 후단 뉴런층의 역방향 뉴런으로부터 오차 신호(BX)가 입력되고, 전단 뉴런층의 역방향 뉴런으로 역방향 가중치 합(BO)을 출력한다.
또한, 상기 컨트롤러는, 가중치 업데이트 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 메모리의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어함으로써, 상기 시냅스 어레이는 전단 뉴런층의 메모리로부터 업데이트 신호(M)가 입력되고 후단 뉴런층의 역방향 뉴런으로부터 오차 신호(UX)가 입력되어 시냅스 소자에 대한 가중치를 업데이트하게 된다.
한편, 하나의 시냅스 어레이는 양의 컨덕턴스(G+)를 갖는 시냅스 소자들로 구성된 제1 시냅스 어레이와 음의 컨덕턴스(G-)를 갖는 시냅스 소자들로 구성된 제2 시냅스 어레이로 이루어지는 것이 바람직하다. 도 3과 도4의 (b)와 (c)는 각각 양의 컨덕턴스를 갖는 제1 시냅스 어레이와 음의 컨덕턴스를 갖는 제2 시냅스 어레이를 도시한 것이다.
상기 뉴런층(30, 31, 39)은 상기 시냅스 어레이들의 사이에 각각 배치되거나 마지막 시냅스 어레이의 출력단에 연결되어, 시냅스 어레이들에 대하여 순전파 동작, 역전파 동작 및 가중치 업데이트 동작을 수행하도록 구성된 것으로서, 순방향 뉴런(300), 메모리(310) 및 역방향 뉴런(320)을 구비한다. 다만, 상기 뉴런층들 중 최종 뉴런층(39)은 순방향 뉴런 및 역방향 뉴런을 구비하여 마지막 시냅스 어레이의 출력단에 연결된 것을 특징으로 하며, 최종 뉴런층에 대한 구체적인 설명은 후술하도록 한다. 이하, 설명의 편의상, 뉴런층들의 입력 단자에 연결되는 시냅스 어레이는 전단 시냅스 어레이라고 칭하고, 뉴런층의 출력 단자에 연결되는 시냅스 어레이는 후단 시냅스 어레이라고 칭한다.
도 5는 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 순방향 뉴런(300)을 도시한 회로도이다. 도 5(a)를 참조하면, 상기 순방향 뉴런(300)은 순전파 단계에서 전단 시냅스 어레이로부터 출력된 순방향 가중치 합(Weighted sum value; O)이 입력되며, 입력된 순방향 가중치 합에 따른 출력 신호(X)를 생성하여 후단 시냅스 회로 및 메모리로 출력한다. 상기 순방향 뉴런은, 입력된 순방향 가중치 합이 사전 설정된 기준값보다 크면 발화되어(Fire) 발화 스파이크 신호(post synaptic spike)를 생성하여 출력 신호(X)로서 후단 시냅스 어레이 및 메모리로 출력한다.
도 5(b)를 참조하면, 상기 순방향 뉴런(300)은 전류 미러 회로(302) 및 발화 회로(304)로 이루어지며, 전단 시냅스 어레이로부터 출력된 순방향 가중치 합에 대응되는 전류가 전류 미러 회로(302)를 통해 발화 회로(304)로 입력되고, 발화 회로(304)는 입력 전압이 사전 설정된 문턱값보다 크면 발화 스파이크 신호를 생성하여 출력 신호로서 출력한다.
상기 발화 회로(304)는 서로 병렬 연결된 멤브레인 커패시터(Cmem)와 누설 소자(M6), 사전 설정된 문턱 전압을 갖는 스위칭 소자(M1) 및 스위칭 소자의 소스 노드(Node 1)에 연결된 인버터(Inverter 1)를 구비하며, 인버터의 출력 신호는 출력 노드 및 누설 소자(M6)로 제공된다. 상기 커패시터는 입력 전류가 충전되며, 상기 스위칭 소자는 커패시터의 충전 전압이 문턱 전압보다 크면 턴온되도록 구성된다. 전술한 구성을 갖는 발화 회로는, 멤브레인 커패시터(Cmem)에 전단 시냅스 어레이로부터 입력된 가중치 합에 대응되는 전류가 충전되고, 이에 따른 멤브레인 전압(Vmem)이 M1의 문턱 전압을 넘어서게 되면, Inverter1로 0의 신호가 인가되고, 출력 노드가 1의 신호를 출력하게 되는데, 이는 발화 스파이크 신호가 된다. 출력 노드의 1의 신호는 누설 소자(M6_의 게이트로 인가되어 M6를 턴온시켜 멤브레인 전압(Vmem)을 초기화시키게 된다. 상기 누설 소자(M6)는 저항, FET 또는 문턱 전압 조정이 가능한 비휘발성 메모리 소자로 구성될 수 있으며, 멤브레인 노드에서 leak path를 생성하게 된다.
도 6은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 메모리(310)를 도시한 블록도이다. 도 6을 참조하면, 상기 메모리(310)는 해당 뉴런층의 순방향 뉴런으로부터 출력 신호(X)들이 입력되면, 상기 입력된 순방향 뉴런의 출력 신호로부터 제1 및 제2 정보들을 추출하여 저장한다. 상기 제1 정보는 하나의 이미지 입력(Image Input)에 대한 전체 time step 중 마지막 time step에서의 발화 여부를 나타내는 정보로서, 순전파 단계의 활성화 값이며 가중치 업데이트 신호(M)로 사용된다. 상기 제2 정보는 하나의 이미지 입력에 대한 전체 time step동안의 발화 여부를 나타내는 정보로서, 활성화 함수의 미분값이며 역방향 뉴런의 오차 생성 신호(G)로 사용된다.
한편, 순전파 단계의 활성화 값으로 사용되는 상기 가중치 업데이트 신호(M)는 메모리 사용량을 증가시켜 저장할 발화 스파이크 신호의 개수를 증가시킬 수 있다. 이와 같이 메모리 사용량이 증가되더라도 상기 가중치 업데이트 신호(M)로서 사용되는 발화 스파이크 신호의 개수를 증가시킴으로써, 더욱 정밀한 가중치 업데이트를 가능하게 한다.
도 8은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 각 뉴런층의 역방향 뉴런(320)들을 도시한 블록도이다. 도 8(a)는 최종 뉴런층의 역방향 뉴런이며, 도 8(b)는 중간 뉴런층의 역방향 뉴런이며, 도 8(c)는 첫번째 뉴런층의 역방향 뉴런이다.
도 8(a)를 참조하면, 최종 뉴런층의 역방향 뉴런은 오차 연산 회로로부터 제공된 오차값(BO)이 입력되며, 이에 따라 역전파 단계 및 가중치 업데이트 단계에서 각각 오차 신호(BX,UX)가 출력되어 전단 시냅스 어레이의 출력 단자로 제공된다. 도 8(b)를 참조하면, 중간 뉴런층의 역방향 뉴런은 역전파 단계에서 후단 시냅스 어레이로부터 입력된 역방향 가중치 합(Backward weighted sum value;BO)와 상기 메모리에 저장된 오차 생성 신호(G)가 입력되며, 역전파 단계 및 가중치 업데이트 단계에서 각각 오차 신호(BX,UX)가 출력되어 전단 시냅스 어레이의 출력 단자로 제공된다. 도 8(c)를 참조하면, 첫번째 뉴런층의 역방향 뉴런은 역전파 단계에서 후단 시냅스 어레이로부터 입력된 역방향 가중치 합(Backward weighted sum value;BO)와 상기 메모리에 저장된 오차 생성 신호 신호(G)가 입력되며, 이에 따라 가중치 업데이트 단계에서 오차 신호(UX)가 출력되어 전단 시냅스 어레이의 출력 단자로 제공된다.
본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에서의 역방향 뉴런은 펄스폭 변조(Pulse Width Modulation; PWM) 회로로 구성되어, 입력 신호인 오차값을 펄스폭 변조하여 오차 신호를 생성하여 출력한다. 도 9는 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 역방향 뉴런(320)의 펄스폭 변조 회로를 예시적으로 나타낸 회로도이다.
도 9(a)를 참조하면, 펄스폭 변조(PWM) 회로는 입력 전압을 일정 전압을 갖는 펄스의 폭으로 변환시켜 출력하는 회로로서, 기준펄스 생성부(Sawtooth wave generator;900), 차동 증폭부(Differential Amplifier;910) 및 레벨 쉬프터(Level Shifter;920)로 이루어진다. 본 실시예에 따른 역방향 뉴런은 펄스폭 변조 회로로 이루어져, 기준 전압 펄스인 톱니파를 형성하고, 톱니파와 X 노드에 인가되는 전압의 크기를 비교하고, 톱니파가 X의 전압보다 크면 0을 생성하고 그렇지 않은 경우 1을 생성하고, 이에 따라 출력 전압의 펄스 폭을 조절한다. 상기 PWM 회로의 비교기(Comparator)는 CMOS와 이중 게이트 MOSFET의 결합 또는 Positive Feedback(PF) 소자로 이루어져, 입력 전압과 기준 신호를 비교하게 된다.
도 9(b)는 도 9(a)의 펄스폭 변조 회로로 구성된 역방향 뉴런의 입력 전압(V)를 설명하기 위하여 도시한 회로도이다. 도 9(b)에 도시된 바와 같이, 역방향 뉴런으로 인가되는 입력 전압(V)은 후단 시냅스 어레이의 역방향 가중치 합에 대응되는 전류가 멤브레인 커패시터에 충전되어 출력되는 멤브레인 전압이며, 전류 미러의 출력단으로 오차 생성 신호(Gn)가 인가되도록 구성된다.
상기 최종 뉴런층(39)은 마지막에 배치된 시냅스 어레이의 출력단에 연결된 뉴런층으로서, 마지막 시냅스 어레이에 대한 순전파 동작 및 역전파 동작을 수행하도록 구성되며, 순방향 뉴런(390) 및 역방향 뉴런(392)을 구비한다. 상기 최종 뉴런층(39)의 순방향 뉴런(390)은 순전파 단계에서 마지막 시냅스 어레이로부터 출력되는 순방향 가중치 합 값(Forward Weighted sum value; O3)이 입력되며, 입력된 순방향 가중치 합이 사전 설정된 문턱값보다 크면 발화되어(Fire), 발화 스파이크 신호(post synaptic spike; X3)를 생성하여 오차 연산 회로(40)로 출력한다. 역전파 단계에 있어서, 상기 최종 뉴런층(39)의 역방향 뉴런(392)은 오차 연산 회로로부터 제공된 오차값(BO)을 이용하여 오차 신호(BX3)를 생성하여 마지막 시냅스 어레이의 출력 단자로 제공한다. 최종 뉴런층의 순방향 뉴런 및 역방향 뉴런의 구성은 중간 뉴런층의 순방향 뉴런 및 역방향 뉴런과 동일하며, 다만 입력 신호가 일부 상이하다.
상기 오차 연산 회로(40)는 정답 신호인 타겟 신호(T)와 상기 최종 뉴런층의 순방향 뉴런의 출력 신호가 입력되고, 입력된 타겟 신호와 최종 뉴런층의 출력 신호의 오차값(BO)을 검출하여 최종 뉴런층(39)의 역방향 뉴런(392)으로 제공한다. 오차 연산 회로로는 비교기, 연산 증폭기, 차동 증폭기 등을 사용할 수 있으며, FET와 커패시터의 조합을 통해 구성될 수도 있다. 도 7은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 오차 연산 회로(40)를 예시적으로 도시한 회로도이다. 도 7을 참조하면, 오차 연산 회로는 직렬 연결된 2개의 FET 소자로 이루어질 수 있다.
이하, 전술한 구성을 갖는 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐의 동작을 설명한다. 본 발명에 따른 뉴로모픽 아키텍쳐는 온칩 러닝을 위하여, 순전파 단계(Forward Propagation Phase). 역전파 단계(Backward Propagation Phase) 및 가중치 업데이트 단계(Weight Update Phase)를 순차적으로 수행하거나 컨트롤러의 제어를 통해 선택적으로 수행될 수 있다.
먼저, 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐의 순전파 단계의 동작에 대하여 구체적으로 설명한다.
순전파 단계에서, 입력층에서 전압 스파이크 신호(H1, H2, H3)가 생성되어 입력 신호로서 첫번째 시냅스 어레이로 인가된다. 각 시냅스 어레이는 입력층 또는 전단 뉴런층의 순방향 뉴런으로부터 제공되는 입력 신호에 따라 순방향 가중치 합에 대응되는 전류가 출력되어 후단 뉴런층의 순방향 뉴런으로 제공된다. 이때, 시냅스 어레이의 출력 신호는 입력 신호가 인가되는 방향에 직교한(orthogonal) 방향으로 제공된다.
각 뉴런층의 순방향 뉴런으로 전단 시냅스 어레이로부터 순방향 가중치 합에 대응되는 전류가 입력되며, 입력된 전류는 전류 미러 회로를 통해 발화 회로로 제공된다. 순방향 가중치 합에 대응되는 전류는 발화 회로의 멤브레인 커패시터에 충전된다. 발화 회로의 멤브레인 커패시터의 충전에 의한 멤브레인 전압이 사전 설정된 문턱 전압을 넘으면, 발화 스파이크 신호를 생성하여 출력하고, 누설 소자를 이용하여 멤브레인 노드의 멤브레인 전압을 초기화시킨다. 상기 순방향 뉴런에서 생성된 발화 스파이크 신호는 후단 시냅스 어레이의 입력 단자로 인가된다. 순차적으로 연결된 시냅스 어레이와 뉴런층들에 의해 전술한 순전파 단계를 반복하게 되어, 상기 발화 스파이크 신호들이 최종 뉴런층의 순방향 뉴런까지 전달된다.
한편, 각 뉴런층의 순방향 뉴런은 출력 신호들을 후단 시냅스 어레이로 인가함과 동시에, 역전파 단계 및 가중치 업데이트 단계를 위하여 해당 뉴런층의 메모리(310)로도 출력한다. 상기 메모리는 순방향 뉴런으로부터 발화 스파이크 신호를 포함하는 출력 신호(X)들이 제공되면, 하나의 이미지 입력(Image Input)의 마지막 time step의 발화 정보 및 전체 time step의 발화 정보를 추출하여 각각 가중치 업데이트 신호(M) 및 오차 생성 신호(G)로서 저장한다.
최종 뉴런층의 순방향 뉴런은 마지막 시냅스 어레이로부터 출력되는 순방향 가중치 합에 대응되는 전류가 입력되고, 이에 따른 출력 신호를 오차 연산 회로(40)로 출력한다.
오차 연산 회로는 최종 뉴런층의 순방향 뉴런으로부터 제공된 출력 신호와 정답 신호인 타겟 신호(T)를 비교하여 오차값을 구하여 최종 뉴런층의 역방향 뉴런으로 출력한다. 따라서, 타겟 신호를 구성하는 타겟 스파이크(Target Spike)의 개수와 최종 뉴런층의 출력 신호에 포함된 발화 스파이크의 개수의 차이에 대응되는 전압값이 오차값으로서 상기 최종 뉴런층의 역방향 뉴런으로 제공된다.
이하, 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐의 역전파 단계의 동작에 대하여 구체적으로 설명한다.
역전파 단계에서는, 각 시냅스 어레이의 입력 단자는 전단 뉴런층의 역방향 뉴런의 입력 단자로 스위칭되고, 각 시냅스 어레이의 출력 단자는 후단 뉴런층의 역방향 뉴런의 출력 단자로 스위칭된다. 따라서, 각 뉴런층의 역방향 뉴런의 출력 신호는 전단 시냅스 어레이의 출력 단자로 제공되고, 해당 시냅스 어레이의 역방향 가중치 합이 시냅스 어레이의 입력 단자를 통해 전단 뉴런층의 역방향 뉴런으로 출력됨에 따라 시스템의 역방향 전파가 일어나게 된다.
오차 연산 회로의 출력값은 전압 진폭으로 표시되는 오차값이며, 역전파 단계에서 상기 오차값은 역방향 뉴런에 의해 펄스폭이 변조되어 펄스지속시간(즉, 펄스폭)으로 표현된 오차 신호로 변환된다. 오차 값은 양수 또는 음수일 수 있지만, 펄스폭은 항상 양수이므로 역전파 단계에서는 양의 오차를 나타내는 위상과 음의 오차를 나타내는 위상으로 나눌 수 있다. 오차값이 양수이면 오차값은 양의 기울기를 갖는 톱니파와 비교되며 펄스폭은 오차값에 비례한다. 오차값이 음수이면, 오차값은 음의 기울기를 갖는 톱니파와 비교되며 펄스폭은 오차값에 비례하게 된다.
역전파 단계에서는, 최종 뉴런층의 역방향 뉴런은 오차 연산 회로로부터 오차값이 입력되면, PWM 변조하여 PWM 오차 신호를 생성하여 마지막 시냅스 어레이의 출력 단자로 제공한다. 그리고, 뉴런층의 역방향 뉴런으로부터 출력된 PWM 변조된 오차 신호는 전단 시냅스 어레이의 출력 단자로 제공된다. 역전파 단계에서, 시냅스 어레이는 출력 단자로 역방향 뉴런의 오차 신호가 입력되면, 시냅스 어레이의 출력 단자의 직교 방향으로 전파되어 역방향 가중치 합에 대응되는 전류가 시냅스 어레이의 입력 단자로 출력된다. 이와 같이, 역전파 단계에서는, 시냅스 어레이가 순전파 단계와는 반대 방향으로 신호가 입력 및 출력된다.
순차적으로 연결된 시냅스 어레이와 뉴런층들에 의해 전술한 역전파 단계를 반복하게 되어, 각 뉴런층의 역방향 뉴런들은 후단 시냅스 어레이로부터 제공된 역방향 가중치 합 값을 PWM 변조하여 PWM 오차 신호를 생성한다.
역방향 뉴런의 오차 신호는 전단 시냅스 어레이의 출력 단자로 전파되며, 시냅스 어레이의 역방향 가중치 합에 대응되는 전류가 전단 뉴런층으로 제공된다. 하지만, 해당 뉴런층의 활성화 함수의 미분값이 0인 경우, 해당 뉴런층의 역방향 뉴런의 멤브레인 커패시터가 턴오프되어 역방향 가중치 합을 획득하지 못하게 된다. 여기서, 상기 활성화 함수의 미분값은 순전파 단계에서 해당 뉴런층의 메모리에 저장된 오차 생성 신호(G)를 사용한다. 따라서, 각 뉴런층의 오차 생성 신호가 1인 경우에만, 시냅스 어레이의 역방향 가중치 합이 구해지고, 이에 따라 해당 뉴런층의 역방향 뉴런에 의한 PWM 오차 신호가 생성되어 역방향 전파를 진행하게 된다.
또한, 양의 오차 신호 및 음의 오차 신호가 시냅스 어레이로 전파되는 경우, 뉴런층의 커패시로의 충전 방향(charging direction)이 서로 반대 방향이 된다.
도 10은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 가중치 최적화를 위한 온칩 훈련 방법을 설명하기 위하여 예시적으로 도시한 다이어그램이다. 도 10를 참조하면, 순전파 단계에서 뉴런층의 발화 스파이크 신호(H1, H2)가 발생되면, 이에 따라 활성화값(χ1=S1(T), χ2=S2(T))과 활성화함수의 미분값(g1, g2)가 결정된다. 이상적인 역전파 알고리즘에서 가중치 업데이트양(Δw)은 활성화값(χ), 오차값(δ) 및 신경망 학습률(η)로 계산되며, Δw = ηχδ가 된다. 활성화값은 순전파 단계에서 얻을 수 있으며 메모리에 저장된다.
종래의 기술에 있어서, 활성화값은 발화 스파이크의 총 개수가 되므로, 활성화값을 정확하게 저장하려면 많은 메모리 사용량이 필요하며, 이로 인하여 많은 전력 소비와 큰 설치 공간이 요구된다. 따라서, 본 발명에 따른 뉴로모픽 아키텍쳐는 메모리 사용량을 최소화시키기 위하여, 활성화값으로서 순전파 단계의 마지막 time step에서 생성된 발화 스파이크 신호만을 저장하여 사용하는 것을 특징으로 한다. 도 12를 참조하면, H1은 t=T에 발화 스파이크 신호가 존재하므로 활성화값은 1이 되며, H2은 t=T에 발화 스파이크 신호가 존재하지 아니하므로 활성화값은 0가 된다.
한편, 뉴런 활성화 함수의 미분값(g1, g2)는 순전파 단계 동안 발화 스파이크 신호가 생성되었는지 여부에 따라 결정되는 신호로서, 발화 스파이크 신호가 한번이라도 생성되면 1이 된다. 오차값(δ)은 타겟 신호(T)와 최종 뉴런층의 출력 신호(Out)의 차이값으로 이루어진다.
이하, 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐의 가중치 업데이트 단계의 동작에 대하여 구체적으로 설명한다.
가중치 업데이트 단계에서는 메모리에 저장된 가중치 업데이트 신호(M)와 역전파 단계에서 구한 오차 신호를 이용하여, 시냅스 어레이의 각 시냅스 소자를 프로그램하거나 이레이즈하여 시냅스 소자의 컨덕턴스를 변화시킴으로써, 가중치를 업데이트시킨다.
시냅스 소자에 대한 가중치 업데이트를 위하여, 시냅스 어레이의 제어 단자로 프로그램 펄스 또는 이레이즈 펄스가 인가되고, 시냅스 어레이의 입력 단자에는 가중치 업데이트 신호(M)가 인가되고, 각 시냅스 어레이의 출력 단자에는 역방향 뉴런에 의해 생성된 오차 신호(UX)가 인가됨으로써, 해당 시냅스 소자의 컨덕턴스를 변화시키게 된다. 도 11은 본 발명의 제1 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 가중치 업데이트 단계에서 시냅스 어레이에 인가되는 신호들을 예시적으로 도시한 그림이다. 도 11을 참조하면, 시냅스 어레이의 입력 단자로 가중치 업데이트 신호(M)가 인가되고, 역방향 뉴런에 의해 생성된 PWM 오차 신호가 인가되고, 제어 단자로 프로그램 또는 이레이즈 전압 펄스가 인가되게 된다.
< 제2 실시예 >
이하, 첨부된 도면을 참조하여 본 발명의 제2 실시예에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐의 구성 및 동작에 대하여 구체적으로 설명한다.
도 12는 본 발명의 제2 실시예에 따른 온칩 학습이 가능한 뉴로모픽 아키텍쳐를 도시한 블록도이다.
도 12를 참조하면, 본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐는 제1 실시예에 따른 뉴로모픽 아키텍쳐와 기본 구성은 유사하며, 다만 각 뉴런층의 역방향 뉴런의 오차 신호 및 가중치 업데이트 단계의 동작이 상이하다. 따라서, 제1 실시예와의 차이점에 대하여만 설명한다.
본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐는 제1 실시예와 마찬가지로, 입력층, 하나 또는 둘 이상의 시냅스 어레이, 시냅스 어레이들의 사이에 각각 배치되거나 마지막 시냅스 어레이의 출력단에 연결된 하나 또는 둘 이상의 뉴런층 및 오차 연산 회로를 구비한다. 상기 뉴런층들 중 마지막 시냅스 어레이의 출력단에 연결된 뉴런층은 '최종 뉴런층'이다.
제2 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 최종 뉴런층을 제외한 나머지의 뉴런층은 순방향 뉴런, 메모리 및 역방향 뉴런을 구비하며, 순방향 뉴런은 제1 실시예의 그것과 동일하다. 상기 메모리는 순방향 뉴런의 출력 신호가 입력되고, 순방향 뉴런의 출력 신호로부터 전체 time step에서의 발화 여부를 나타내는 정보를 추출하여 저장하며, 이 정보는 역전파 단계에서 오차 생성 신호(G)로 사용한다.
도 13은 본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 최종 뉴런층의 역방향 뉴런을 도시한 블록도 및 회로도이다. 도 13을 참조하면, 제2 실시예에 따른 상기 최종 뉴런층의 역방향 뉴런은 입력 단자에 직렬 연결된 2개의 인버터로 이루어져 BX+ 및 UX+ 신호를 출력하는 제1 경로와 입력 단자에 연결된 단일의 인버터로 이루어져 BX- 및 UX- 신호를 출력하는 제2 경로를 구비한다.
전술한 구성을 갖는 상기 역방향 뉴런은 제1 경로 및 제2 경로를 통해 양의 역전파 단계 및 음의 역전파 단계를 순차적으로 수행하게 된다. 양의 역전파 단계에서는, 역방향 뉴런은 제1 경로를 통해 오차값(BO)에 대한 양의 오차 신호(BX+)를 생성하여 출력한다. 연속하여 수행되는 음의 역전파 단계에서는 역방향 뉴런은 제2 경로를 통해 오차값(BO)에 대한 음의 오차 신호(BX-)를 생성하여 출력한다.
양의 역전파 단계에서, 양의 오차 신호(BX+)가 G+ 시냅스 어레이 및 G- 시냅스 어레이로 모두 인가되고, 이에 따라 G+ 시냅스 어레이는 전단 뉴런층의 역방향 뉴런의 멤브레인 커패시터가 charge되는 방향으로 출력 전압을 인가하고, G- 시냅스 어레이는 전단 뉴런층의 역방향 뉴런의 멤브레인 커패시터가 discharge되는 방향으로 출력 전압을 인가한다.
음의 역전파 단계에서는, 음의 오차 신호(BX-)가 G+ 시냅스 어레이 및 G- 시냅스 어레이로 모두 인가되고, 이에 따라 G+ 시냅스 어레이는 전단 뉴런층의 역방향 뉴런의 멤브레인 커패시터가 discharge되는 방향으로 출력 전압을 인가하고, G- 시냅스 어레이는 전단 뉴런층의 역방향 뉴런의 멤브레인 커패시터가 charge되는 방향으로 출력 전압을 인가한다. 이러한 연결을 통해, BX+와 BX-가 모두 양의 펄스이지만 각각 양의 오차 신호와 음의 오차 신호를 나타낼 수 있게 된다.
도 14는 본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 뉴런층의 역방향 뉴런을 도시한 블록도 및 회로도이다. 도 14를 참조하면, 뉴런층의 역방향 뉴런은 전술한 최종 뉴런층의 역방향 뉴런과 동일한 회로로 구성되며, 다만 후단 시냅스 어레이의 역방향 가중치 합에 대응되는 전류가 입력 신호로 인가되며, 입력된 전류에 대한 전류 미러 회로가 더 추가된다.
따라서, 뉴런층의 역방향 뉴런은 전류 미러 회로의 출력단으로 오차 생성 신호(G)가 인가되며, 역방향 가중치 합에 대응되는 전류에 따라 양의 역전파 단계 및 음의 역전파 단계를 순차적으로 수행하여, 양의 오차 신호와 음의 오차 신호를 순차적으로 출력한다.
본 발명의 제2 실시예에 따른 뉴로모픽 아키텍쳐에 있어서, 가중치 업데이트 단계에서, 시냅스 어레이의 입력 단자는 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되어 순방향 가중치 합에 의한 발화 스파이크 신호가 입력되며, 시냅스 어레이의 출력 단자는 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되어 후단 뉴런층의 오차 신호가 입력되어, 시냅스 소자가 프로그램 또는 이레이즈됨으로써, 시냅스 소자의 컨덕턴스를 변경시키게 된다.
이상에서 본 발명에 대하여 그 바람직한 실시예를 중심으로 설명하였으나, 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 그리고, 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
1, 2 : 뉴로모픽 아키텍쳐
10 : 입력층
20, 21, 22 : 시냅스 어레이
30 : 뉴런층
300 : 순방향 뉴런
310 : 메모리
320 : 역방향 뉴런
39 : 최종 뉴런층
40 : 오차 연산 회로

Claims (14)

  1. 사전 설정된 컨덕턴스를 갖는 시냅스 소자들이 크로스바(cross-bar) 형태로 배치된 하나 또는 둘 이상의 시냅스 어레이;
    첫번째 시냅스 어레이로 입력 신호를 제공하는 입력층;
    신경망의 순전파 동작을 수행하도록 구성된 순방향 뉴런 및 신경망의 역전파 동작을 수행하도록 구성된 역방향 뉴런을 구비하여, 시냅스 어레이들의 사이에 배치되거나 마지막 시냅스 어레이의 출력단에 연결된 하나 또는 둘 이상의 뉴런층; 및
    타겟 신호와 최종 뉴런층의 순방향 뉴런의 출력 신호가 입력되고, 입력된 타겟 신호와 최종 뉴런층의 출력 신호의 오차값을 검출하여 출력하는 오차 연산 회로; 를 구비하고,
    상기 최종 뉴런층은 마지막 시냅스 어레이의 출력단에 연결된 뉴런층이며,
    상기 최종 뉴런층을 제외한 나머지의 뉴런층은 신경망의 가중치 업데이트 동작시에 사용되는 신호들을 저장하는 메모리를 더 구비하여 시냅스 어레이들의 사이에 배치되고,
    상기 뉴런층의 순방향 뉴런은,
    입력단에 연결된 시냅스 어레이의 순방향 가중치 합에 대응되는 전류가 입력되어 충전되는 커패시터; 및
    상기 커패시터의 충전 전압이 문턱 전압보다 크면 턴온되어 발화 스파이크 신호를 출력하는 스위칭 소자;
    를 구비하여, 시냅스 어레이로부터 입력되는 순방향 가중치 합에 대응되는 전류가 사전 설정된 문턱전압보다 크면 발화 스파이크 신호를 생성하고, 상기 생성된 발화 스파이크 신호를 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  2. 제1항에 있어서, 상기 시냅스 소자들은
    전하 저장층을 갖는 Gated Schottky Diode(GSD) 또는 전하 저장층을 갖는 비휘발성 메모리 소자로 이루어진 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  3. 제1항에 있어서, 상기 최종 뉴런층을 제외한 나머지 뉴런층의 순방향 뉴런은,
    상기 생성된 발화 스파이크 신호를 출력단에 연결된 시냅스 어레이와 해당 뉴런층의 메모리로 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  4. 제1항에 있어서, 상기 최종 뉴런층의 순방향 뉴런은,
    상기 생성된 발화 스파이크 신호를 출력단에 연결된 오차 연산 회로로 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  5. 제1항에 있어서, 상기 뉴런층의 역방향 뉴런은,
    입력단에 연결된 시냅스 어레이 또는 오차 연산 회로로부터 입력된 전압과 사전 설정된 기준 펄스의 차이값을 출력하는 차동 증폭기; 및
    상기 차동 증폭기의 출력 신호에 대한 전압 레벨을 조정하는 레벨 쉬프터;
    를 구비하여, 입력단에 연결된 시냅스 어레이의 역방향 가중치 합에 대응되는 전압 또는 오차 연산 회로의 오차값을 펄스 폭 변조하여 오차 신호를 생성하고, 상기 생성된 오차 신호를 출력단에 연결된 시냅스 어레이로 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  6. 제5항에 있어서, 최종 뉴런층을 제외한 나머지 뉴런층의 역방향 뉴런은,
    입력단에 연결된 시냅스 어레이의 역방향 가중치 합에 대응되는 전류 및 해당 뉴런층의 메모리로부터 오차 생성 신호가 입력되고,
    상기 오차 생성 신호를 사용하여 상기 입력된 전류에 대하여 펄스 폭 변조하여 오차 신호를 생성하고, 상기 생성된 오차 신호를 출력단에 연결된 시냅스 어레이로 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  7. 제1항에 있어서, 상기 시냅스 어레이는,
    입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자, 전단 뉴런층의 메모리의 출력 단자 및 전단 뉴런층의 역방향 뉴런의 입력 단자 중 하나로 스위칭되도록 구성된 입력 스위칭 소자; 및
    출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 후단 뉴런층의 역방향 뉴런의 출력 단자 중 하나로 스위칭되도록 구성된 출력 스위칭 소자;
    를 더 구비하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  8. 제7항에 있어서, 상기 뉴로모픽 아키텍쳐는 상기 입력 스위칭 소자 및 상기 출력 스위칭 소자의 동작을 제어하는 컨트롤러를 더 구비하고,
    상기 컨트롤러는,
    순전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 연결되도록 제어하며,
    역전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 역방향 뉴런의 입력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하며,
    가중치 업데이트 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 메모리의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  9. 제1항에 있어서, 상기 뉴런층의 메모리는,
    해당 뉴런층의 순방향 뉴런의 출력 신호가 입력되고,
    상기 입력된 순방향 뉴런의 출력 신호로부터 하나의 이미지 입력에 대한 마지막 time step의 발화 여부를 나타내는 제1 정보를 추출하여 저장하고,
    상기 입력된 순방향 뉴런의 출력 신호로부터 하나의 이미지 입력에 대한 전체 time step 동안 뉴런의 발화 여부를 나타내는 제2 정보를 추출하여 저장하며,
    상기 제1 정보는 가중치 업데이트 신호로 사용되며,
    상기 제2 정보는 역방향 뉴런의 오차 생성 신호로 사용되는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  10. 제1항에 있어서, 상기 뉴런층의 역방향 뉴런은,
    입력 단자에 직렬 연결된 2개의 인버터 소자로 구성되어 양의 오차 신호를 출력하는 제1 경로; 및
    입력 단자에 연결된 단일의 인버터 소자로 구성되어 음의 오차 신호를 출력하는 제2 경로;
    를 구비하여, 제1 경로를 통해 양의 오차 신호를 전단 시냅스 어레이로 출력하고, 제2 경로를 통해 음의 오차 신호를 전단 시냅스 어레이로 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  11. 제10항에 있어서, 최종 뉴런층을 제외한 나머지 뉴런층의 역방향 뉴런은,
    입력단에 연결된 시냅스 어레이의 역방향 가중치 합에 대응되는 전류 및 해당 뉴런층의 메모리로부터 오차 생성 신호가 입력되고,
    상기 오차 생성 신호를 사용하여 상기 양의 오차 신호 및 음의 오차 신호를 전단 시냅스 어레이로 순차적으로 출력하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  12. 제1항에 있어서, 상기 시냅스 어레이는,
    입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 전단 뉴런층의 역방향 뉴런의 입력 단자 중 하나로 스위칭되도록 구성된 입력 스위칭 소자; 및
    출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 후단 뉴런층의 역방향 뉴런의 출력 단자 중 하나로 스위칭되도록 구성된 출력 스위칭 소자;
    를 더 구비하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  13. 제12항에 있어서, 상기 뉴로모픽 아키텍쳐는 상기 입력 스위칭 소자 및 상기 출력 스위칭 소자의 동작을 제어하는 컨트롤러를 더 구비하고,
    상기 컨트롤러는,
    순전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 순방향 뉴런의 입력 단자와 연결되도록 제어하며,
    역전파 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 역방향 뉴런의 입력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하며,
    가중치 업데이트 단계에서는 시냅스 어레이의 입력 단자가 전단 뉴런층의 순방향 뉴런의 출력 단자와 연결되고 시냅스 어레이의 출력 단자가 후단 뉴런층의 역방향 뉴런의 출력 단자와 연결되도록 제어하는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
  14. 제1항에 있어서, 상기 뉴런층의 메모리는,
    해당 뉴런층의 순방향 뉴런의 출력 신호가 입력되고,
    상기 입력된 순방향 뉴런의 출력 신호로부터 하나의 이미지 입력에 대한 전체 time step 동안 뉴런의 발화 여부를 나타내는 정보를 추출하여 저장하며,
    상기 정보는 역방향 뉴런의 오차 생성 신호로 사용되는 것을 특징으로 하는 온칩 학습이 가능한 뉴로모픽 아키텍쳐.
KR1020210000515A 2020-01-06 2021-01-04 온칩 학습이 가능한 뉴로모픽 아키텍쳐 KR102584868B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202062957482P 2020-01-06 2020-01-06
US62/957,482 2020-01-06

Publications (2)

Publication Number Publication Date
KR20210088444A KR20210088444A (ko) 2021-07-14
KR102584868B1 true KR102584868B1 (ko) 2023-10-04

Family

ID=76862949

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210000515A KR102584868B1 (ko) 2020-01-06 2021-01-04 온칩 학습이 가능한 뉴로모픽 아키텍쳐

Country Status (2)

Country Link
US (1) US12099919B2 (ko)
KR (1) KR102584868B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11604976B2 (en) * 2020-04-29 2023-03-14 International Business Machines Corporation Crossbar arrays for computations in memory-augmented neural networks
KR102514649B1 (ko) * 2021-11-18 2023-03-29 서울대학교산학협력단 시냅스 특성 변화를 보상하는 뉴런 회로 및 뉴로모픽 장치

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10885429B2 (en) 2015-07-06 2021-01-05 University Of Dayton On-chip training of memristor crossbar neuromorphic processing systems
US10332004B2 (en) 2015-07-13 2019-06-25 Denso Corporation Memristive neuromorphic circuit and method for training the memristive neuromorphic circuit
KR102519809B1 (ko) 2015-12-30 2023-04-11 에스케이하이닉스 주식회사 뉴로모픽 소자의 시냅스들의 가중치를 업데이트하는 방법들
US11501131B2 (en) * 2016-09-09 2022-11-15 SK Hynix Inc. Neural network hardware accelerator architectures and operating method thereof
US10922608B2 (en) * 2017-03-08 2021-02-16 Arm Ltd Spiking neural network
KR102567449B1 (ko) * 2018-01-11 2023-08-18 한국전자통신연구원 뉴로모픽 연산 장치 및 그것의 동작 방법
KR102112393B1 (ko) * 2018-02-28 2020-05-18 부산대학교 산학협력단 3차원 적층 시냅스 어레이 기반의 뉴로모픽 시스템과 그 동작 방법 및 제조 방법
KR102218740B1 (ko) * 2018-05-23 2021-02-23 포항공과대학교 산학협력단 트랜스포즈가 가능한 가중치 셀 및 이의 어레이
KR102084053B1 (ko) * 2018-05-30 2020-03-03 포항공과대학교 산학협력단 멀티 레벨의 컨덕턴스를 가지는 뉴로모픽 시냅스 장치 및 이의 동작 방법
KR102574887B1 (ko) * 2018-06-19 2023-09-07 한국전자통신연구원 스파이크 뉴럴 네트워크를 사용하는 생성적 적대 신경망을 구현하기 위한 전자 회로
KR102675781B1 (ko) * 2018-06-27 2024-06-18 삼성전자주식회사 뉴로모픽 프로세서 및 그것의 동작 방법
KR102692218B1 (ko) 2018-12-19 2024-08-05 에스케이하이닉스 주식회사 오류 역전파를 이용하여 지도 학습을 수행하는 뉴로모픽 시스템

Also Published As

Publication number Publication date
KR20210088444A (ko) 2021-07-14
US12099919B2 (en) 2024-09-24
US20210232900A1 (en) 2021-07-29

Similar Documents

Publication Publication Date Title
US9779355B1 (en) Back propagation gates and storage capacitor for neural networks
KR102584868B1 (ko) 온칩 학습이 가능한 뉴로모픽 아키텍쳐
EP2718933B1 (en) Synapse for function cell of spike timing dependent plasticity (stdp), function cell of stdp, and neuromorphic circuit using function cell of stdp
US5087826A (en) Multi-layer neural network employing multiplexed output neurons
KR101578333B1 (ko) 적응적 거동의 신경 시스템
CN110428050B (zh) 一种基于忆阻器实现多样化stdp学习规则的突触仿生电路
KR102434119B1 (ko) 시냅스 스트링 어레이를 이용한 신경망
JP6989552B2 (ja) ニューラルネットワーク装置
CN210488595U (zh) 基于忆阻器实现多样化stdp学习规则的突触仿生电路
CN116472534A (zh) 分布式多组件突触计算结构
KR20210151737A (ko) 신경망을 위한 시냅스 스트링 및 시냅스 스트링 어레이
US5155377A (en) Charge domain differential conductance synapse cell for neural networks
JP4997495B2 (ja) 神経等価回路、シナプス等価回路及び神経細胞体等価回路
US11580370B2 (en) Artificial neuromorphic circuit and operation method
US11443177B2 (en) Artificial neuromorphic circuit and operation method
US11551070B2 (en) Artificial neuromorphic circuit and operation method
US5136177A (en) Multi-quadrant charge domain synapse cell
Enríquez-Gaytán et al. Experimental spiking neural network: Solving the xor paradigm with metaheuristics
CN111630529B (zh) 类神经电路以及运作方法
KR102511526B1 (ko) 하드웨어 기반 인공 신경망 제공 장치
CN210924660U (zh) 类神经电路
CN113408719B (zh) 一种基于非熔融态相变器件的多级联想记忆电路
CN210924659U (zh) 类神经电路
KR20240061917A (ko) 박막 트랜지스터 기반 snn의 회로적 구조
CN210924658U (zh) 类神经电路

Legal Events

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