KR102515089B1 - 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로 - Google Patents

초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로 Download PDF

Info

Publication number
KR102515089B1
KR102515089B1 KR1020200137811A KR20200137811A KR102515089B1 KR 102515089 B1 KR102515089 B1 KR 102515089B1 KR 1020200137811 A KR1020200137811 A KR 1020200137811A KR 20200137811 A KR20200137811 A KR 20200137811A KR 102515089 B1 KR102515089 B1 KR 102515089B1
Authority
KR
South Korea
Prior art keywords
snn
neural network
spike
input
power consumption
Prior art date
Application number
KR1020200137811A
Other languages
English (en)
Other versions
KR20220053387A (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 경북대학교 산학협력단
Priority to KR1020200137811A priority Critical patent/KR102515089B1/ko
Publication of KR20220053387A publication Critical patent/KR20220053387A/ko
Application granted granted Critical
Publication of KR102515089B1 publication Critical patent/KR102515089B1/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/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은, 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 전위 메모리(potential memory)에 업데이트하는 단계; 저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교하는 단계; 상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면, 비교기의 출력을 변경하는 단계; 및 상기 비교기의 출력이 변경되는 경우, 입력되는 모든 클럭과 입력 스파이크(spike_in)를 차단하는 단계;를 포함한다. 이에 따라, 디지털로 구현된 SNN에서 전력 소비를 대폭 감소시킬 수 있다.

Description

초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 하드웨어의 동작 방법, 이를 수행하기 위한 회로{OPERATION METHOD OF SPIKING NEURAL NETWORK (SNN) HARDWARE FOR ULTRA-LOW POWER CONSUMPTION, AND CIRCUIT FOR PERFORMING THE METHOD}
본 발명은 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법, 이를 수행하기 위한 회로에 관한 것으로서, 더욱 상세하게는 뉴런의 포텐셜을 기반으로 SNN 하드웨어의 낭비되는 연산을 사전에 차단하는 기술에 관한 것이다.
The EDA tool was supported by the IC Design Education Center(IDEC), Korea.
대부분의 신경망(NN) 서비스는 클라우드 컴퓨팅의 형태로 제공된다. 사용자는 서버와 실시간으로 데이터를 교환하므로 필연적으로 안정성과 보안 문제가 발생한다. 반대로 에지 컴퓨팅은 에지 장치 자체에서 NN 작업을 수행하여 이러한 문제를 제거한다. 이러한 이유로 NN 서비스는 에지 컴퓨팅으로 이동하고 있다.
그러나, 에지 컴퓨팅의 장점에도 불구하고 에지 컴퓨팅은 대중화에 어려움을 겪고 있다. 그 이유는 NN 서비스가 매우 복잡해져 운영에 필요한 전력이 증가했기 때문이다. 이러한 문제를 해결하기 위해 SNN(spiking neural network)이 더 많은 관심을 받고 있다.
SNN은 생물학적 뉴런의 동작을 모방한 아키텍처이며, 이 아키텍처는 이벤트를 기반으로 작동하여 저전력을 소비한다. 에지 장치를 위한 SNN 아키텍처 설계는 몇 가지 고려 사항을 필요로 한다.
첫째, 디지털 SNN은 일반적으로 설계 난이도가 낮기 때문에 아날로그 SNN보다 선호된다. 둘째, LIF(leaky integrate-and-fire) 모델이 가장 일반적으로 사용되는 뉴런 모델이지만 누설 연산을 구현하려면 추가 회로가 필요하다. 따라서, 누수 없이 간단한 IF(integrated-and-fire) 뉴런 모델을 채택하면 전력 측면에서 유리하다.
셋째, 많은 SNN 훈련 방법은 다중 계층 SNN을 훈련할 때 신뢰할 수 있는 것으로 간주되지 않는다. 그러나 ReLU 기반 ANN을 ReLU 기반 SNN으로 변환하는 방법은 훈련된 고성능 SNN 파라미터를 성공적으로 획득한 것으로 보고되고 있다.
ANN(인공 신경망)의 엄청난 성공으로 인해 임베디드 신경망 하드웨어에 대한 수요가 증가하고 있다. 이러한 추세에서 연구자들은 전력 소비의 장점으로 인해 SNN(spiking neural network) 아키텍처를 적극적으로 연구했다. 그러나, 여전히 저전력 시스템에서 더 많은 뉴런을 지원하려면 더 나은 SNN아키텍처가 필요하다.
US 2020/0134416 A1 KR 10-2020-0098308 A
Peter O'Connor and Max Welling, "Deep Spiking Networks", arXiv, 2016.08323, 2016.
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법을 수행하기 위한 회로를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은, 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 전위 메모리(potential memory)에 업데이트하는 단계; 저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교하는 단계; 상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면, 비교기의 출력을 변경하는 단계; 및 상기 비교기의 출력이 변경되는 경우, 입력되는 모든 클럭과 입력 스파이크(spike_in)를 차단하는 단계;를 포함한다.
본 발명의 실시예에서, 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어는, 디지털로 구현되고, 뉴런의 막전위가 발화율에 비례하여 증가하고, 발화율이 0에 수렴하는 뉴런의 막전위가 지속적으로 감소하는 복수의 뉴런을 포함하는 스파이킹 뉴럴 네트워크(SNN) 회로일 수 있다.
본 발명의 실시예에서, 상기 뉴런의 모든 클럭과 입력 스파이크(spike_in)를 차단하는 단계는, 클럭 게이팅(clock gating)을 사용하여 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에 입력되는 클럭을 차단할 수 있다.
본 발명의 실시예에서, 상기 뉴런의 모든 클럭과 입력 스파이크(spike_in)를 차단하는 단계는, MUX 및 AND 게이트 중 적어도 하나를 사용하여 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에 입력되는 입력 스파이크(spike_in)를 차단할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로는, 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 업데이트하는 전위 메모리(potential memory); 상기 전위 메모리에 저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교하는 임계부; 상기 임계부에서 비교 결과, 상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면, 출력을 변경하는 비교기; 및 상기 비교기의 출력이 변경되는 경우, 입력되는 모든 클럭을 차단하는 제1 소자; 및 상기 비교기의 출력이 변경되는 경우, 입력 스파이크(spike_in)를 차단하는 제2 소자;를 포함한다.
본 발명의 실시예에서, 상기 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로는, 디지털로 구현되고, 뉴런의 막전위가 발화율에 비례하여 증가하고, 발화율이 0에 수렴하는 뉴런의 막전위가 지속적으로 감소하는 복수의 뉴런을 포함할 수 있다.
본 발명의 실시예에서, 상기 제1 소자는 AND 게이트를 포함하고, 상기 제2 소자는 MUX를 포함할 수 있다.
이와 같은 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법에 따르면, 뉴런의 전위를 기반으로 SNN 하드웨어의 낭비되는 연산을 사전에 차단한다. 이에 따라, 디지털로 구현된 SNN에서 전력 소비를 대폭 감소시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로의 회로도이다.
도 2의 (a)는 전위가 지속적으로 증가 할 때 뉴런의 행동을 보여주고, (b)는 전위가 지속적으로 감소 할 때 뉴런의 행동을 보여주는 도면이다.
도 3의 (a)는 종래 스파이킹 뉴런의 레이아웃, (b)는 본 발명에 따른 스파이킹 뉴런의 레이아웃, (c)는 (b)로 구성된 전체 SNN의 레이아웃을 보여주는 도면이다.
도 4는 본 발명과 종래 기술에서 시간 단계에 따른 SNN의 정확도를 보여주는 그래프이다.
도 5는 각 시간 단계에서 일반적인 SNN과 비교하여 본 발명에서 제안된 SNN이 소비하는 전력량을 보여주는 그래프이다.
도 6은 본 발명의 일 실시예에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법의 흐름도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로의 회로도이다.
본 발명에 따른 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로(10, 이하 장치)는 SNN 아키텍처에서 전력을 크게 감소시키는 뉴런 전위를 기반으로 한 새로운 예측 체계를 제안한다.
도 1을 참조하면, 본 발명에 따른 회로(10)는 전위 메모리(potential memory)(11), 임계부(13), 비교기(15), 제1 소자(17) 및 제2 소자(19)를 포함한다. 상기 회로(10)는 예를 들어, 합산기(12), 추가 MUX(16) 및 다른 소자들을 더 포함할 수 있다.
상기 회로(10)는 별도의 단말이거나 또는 단말의 일부 모듈로 구현될 수 있다. 또한, 상기 전위 메모리(potential memory)(11), 상기 임계부(13), 상기 비교기(15), 상기 제1 소자(17) 및 상기 제2 소자(19)의 구성은 통합 모듈로 형성될 수 있다.
인공지능의 엄청난 성공은 임베디드 인공지능 하드웨어의 수요를 불러왔다. 임베디드 환경에서 전력 소비는 매우 중요한 문제로, 인공지능 연산을 낮은 전력으로 수행하기 위한 다양한 방법들이 연구되었다. 그 중 현재 가장 큰 주목을 받는 방법이 Spiking Neural Network(SNN)이다.
SNN은 생물학적 뉴런의 행동을 모방하는 아키텍처로, 저전력으로 연산을 수행하는 특징이 있다. 본 발명은 디지털로 구현된 SNN에서 약간의 정확도 손실로 전력 소비를 대폭 감소시키는 설계 방법에 관한 것이다.
본 발명을 SNN에 적용하기 위해서 몇 가지 전제조건이 있다. 1. SNN이 디지털로 구현되어야 하며, 2. 뉴런의 막전위는 발화율에 비례하여 증가하여야 하며, 3. 발화율이 0에 수렴하는 뉴런의 막전위는 지속적으로 감소하여야 한다. 일반적으로 선호되는 SNN 설계 방법 중 대부분은 이러한 전제조건을 만족한다.
위와 같은 조건을 만족하는 뉴런에서 막전위가 게이팅 전위값(gating potential)이라고 불리는 특정한 임계값 아래로 감소하면 해당하는 뉴런의 모든 클럭과 입력 스파이크를 차단한다.
본 발명의 일 실시예에서 클럭의 차단은 클럭 게이팅(clock gating) 기술을 이용할 수 있다. 또한, 본 발명의 일 실시예에서, 상기 제1 소자(17) 및 상기 제2 소자(19)는 AND 게이트 및 MUX를 포함할 수 있다. 그러나, 입력 스파이크의 차단은 MUX, AND 등 어떠한 방법을 사용하여도 무관하다.
상기 전위 메모리(potential memory)(11)는 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 업데이트한다. 상기 임계부(13)는 상기 전위 메모리에 저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교한다.
상기 비교기(15)는 상기 임계부에서 비교 결과, 상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면, 출력을 1 변경한다. 예를 들어, 비교기의 출력은 1에서 0으로 또는 0에서 1로 변경될 수 있다.
상기 제1 소자(17)는 상기 비교기(15)의 출력이 변경되는 경우, 입력되는 모든 클럭을 차단하고, 상기 제2 소자(19)는 상기 비교기(15)의 출력이 변경되는 경우, 입력 스파이크(spike_in)를 차단한다. 예를 들어, 상기 제1 소자(17)는 AND 게이트를 포함하고, 상기 제2 소자(19)는 MUX를 포함할 수 있다.
일 실시예에서, 본 발명의 기준 SNN 모델은 784-128-128-10의 크기로 구성된다. 정확도와 모델 크기 사이에 균형이 있기 때문에 임베디드 환경에 적합한 경량 모델을 얻기 위해 비교적 작은 크기를 선택하였다. SNN의 훈련된 매개 변수를 얻기 위해 ANN을 SNN으로 변환하는 과정에서 정확도가 약간 저하될 수 있다. 이는 뉴런이 동시에 여러 개의 스파이크를 발사할 수 없기 때문이다.
이 문제를 해결하기 위해 배치 정규화를 사용하여 활성화 범위를 ± 1 이내로 조정하고, 가중치 양자화를 적용하기 위해 가중치 범위를 8/16에서 +7/16으로 제한했으며 가중치는 RTL로 변환하기 전에 각각 8, 7, ..., +6 및 +7에 매핑된다. 마지막으로, 모델을 더 가볍게 만들기 위해 가지 치기 기법을 사용하여 무게의 85 %를 제거하고, 가지 치기를 적용함으로써 0.75 % 정확도의 감쇠가 발생하였다.
IF 뉴런 모델에서 SNN의 전위는 일반적으로 동일한 입력에 대해 지속적으로 증가하거나 감소하는 경향이 있다. 그 이유는 IF 뉴런에는 전위를 휴지 전위로 수렴하는 누수 연산이 없고 ReLU 기반 SNN은 일정한 발사 속도를 갖는 특성이 있기 때문이다. 또한, IF 뉴런은 전위가 임계 전압(Vth)을 초과할 때만 발화한다.
여기에서 뉴런의 전위가 임계값에 비해 충분히 낮으면 이 뉴런이 스파이크를 발사할 가능성은 매우 낮다. 따라서, 본 발명은 매우 낮은 스파이크 발생 확률을 가진 뉴런에 입력되는 클럭과 입력 스파이크 트레인을 게이팅하여 전력을 절약하는 새로운 방식을 제안한다.
본 발명은 ANN에서 비롯된 MNIST 분류를 위한 ReLU 기반 SNN을 설계하였다. 변환된 SNN은 RTL로 전사되고 예측 체계를 SNN에 적용했다. 또한, 본 발명의 검증을 위해 하드웨어와 예측 체계를 물리적 레이아웃(Place & Route)으로 구현하고 예측 체계가 유용하다는 것을 증명하기 위해 설계 지표를 측정하였다.
이를 통해, 물리적 레이아웃(Place & Route)까지 설계된 MNIST 분류 네트워크를 기준으로 대략 20%의 전력을 절약할 수 있으며, 이 때 발생한 정확도 손실은 단 0.85%였음을 검증을 통해 확인하였다.
본 발명은 뉴런이 게이트된 전위를 게이팅 전위(Vg, gating potential)로 명명하고 값을 -2.5Vth로 설정하였다. 도 2의 (a)는 뉴런의 전위가 계속 증가하는 경우를 보여준다. 도 2의 (b)는 뉴런의 전위가 계속 감소하는 경우를 보여준다. 도 2의 (b)의 경우 출력 스파이크가 없으므로 시간 단계 4에서 클럭 및 입력 스파이크 트레인을 게이트 할 수 있다.
도 3의 (a)는 종래 스파이킹 뉴런의 레이아웃, (b)는 본 발명에 따른 스파이킹 뉴런의 레이아웃, (c)는 (b)로 구성된 전체 SNN의 레이아웃을 보여준다. 회로 설계는 Silvaco 45nm 라이브러리로 만들어졌으며 본 발명의 검증에서 약 5 %의 영역 오버 헤드를 포함한다.
도 4는 본 발명과 종래 기술에서 시간 단계에 따른 SNN의 정확도를 보여주는 그래프이다.
도 4에서는 숫자를 인식하는데 걸리는 단위 시간으로 시간 단계를 정의하고 클럭 주기는 10ns로 설정하였다. 일반적인 SNN은 시간 단계가 경과함에 따라 95.97 %의 정확도로 수렴하고, 본 발명에서 제안된 SNN은 95.12 %로 수렴한다. 다시 말해, 본 발명을 적용할 때, 0.85 %의 정확도 손실만 발생했는데, 이는 의도하지 않은 일부 뉴런이 차단된 결과이다.
도 5는 각 시간 단계에서 일반적인 SNN과 비교하여 본 발명에서 제안된 SNN이 소비하는 전력량을 보여준다. 도 5를 참조하면, 초기 단계에서는 약 9 %의 전력 오버 헤드가 있다. 그러나, 분류 시간이 늘어남에 따라 예측 체계는 훨씬 적은 전력을 소비한다는 것을 확인하였다.
도 5는 본 발명에서 제안된 SNN과 일반적인 SNN의 각 시간별 소비 전력 비율을 보여준다. 초기 단계에서 제안된 SNN의 전력 소비는 일반적인 SNN보다 9 % 더 많이 사용하며, 이는 게이팅에 필요한 오버 헤드 때문이다.
그러나, 전력 오버 헤드는 5 time-step 후에 거의 사라진다. 본 발명에서 제안된 SNN과 일반적인 SNN의 전력 소비는 85 time-step 후에 31.98mW와 39.85mW였다. 즉, 시간이 지남에 따라 총 전력 소비는 결국 80.25 %로 수렴된다. 시간 단계가 길수록 오버 헤드의 영향이 줄어든다.
따라서, ImageNet과 같이 오랜 시간이 필요한 복잡한 문제에 대해 본 발명이 더 효과적일 것으로 예상된다. 즉, 본 발명은 디지털로 구현된 SNN에서 약간의 정확도 손실로 전력 소비를 대폭 감소시키는 설계를 제안하였다.
본 발명은 SNN 하드웨어를 위한 초 저전력 소비를 달성하는 뉴런 전위를 기반으로 새로운 예측 체계를 제안하였다. 또한, 물리적 레이아웃에서 본 발명의 정확도와 전력 소비를 확인했으며 결과는 본 발명에 따른 경우 0.88 %의 정확도 감소만으로 전력 소비를 -19.75 % 줄이는 것을 확인하였다.
도 6은 본 발명의 일 실시예에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법의 흐름도이다.
본 실시예에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은, 도 1의 회로(10)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1의 회로(10)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
또한, 본 실시예에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측을 수행하기 위한 소프트웨어(애플리케이션)에 의해 실행될 수 있다.
본 발명에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은, SNN 아키텍처에서 전력을 크게 감소시키는 뉴런 전위를 기반으로 한 새로운 예측 체계를 제안한다.
도 6을 참조하면, 본 실시예에 따른 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은, 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 전위 메모리(potential memory)에 업데이트한다(단계 S10).
일 실시예에서, 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어는, 디지털로 구현되고, 뉴런의 막전위가 발화율에 비례하여 증가하고, 발화율이 0에 수렴하는 뉴런의 막전위가 지속적으로 감소하는 복수의 뉴런을 포함하는 스파이킹 뉴럴 네트워크(SNN) 회로일 수 있다.
저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교한다(단계 S20). 상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면(단계 S30), 비교기의 출력을 변경한다(단계 S40). 비교기의 출력은 O에서 1로 변경되거나, 1에서 0으로 변경될 수 있다.
상기 비교기의 출력이 변경되는 경우, 입력되는 모든 클럭과 입력 스파이크(spike_in)를 차단한다(단계 S50).
상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에 입력되는 클럭은 클럭 게이팅(clock gating)을 사용하여 차단할 수 있고, 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에 입력되는 입력 스파이크(spike_in)는 MUX 및 AND 게이트 중 적어도 하나를 사용하여 차단할 수 있다.
따라서, 본 발명의 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법에 따르면, 뉴런의 전위를 기반으로 SNN 하드웨어의 낭비되는 연산을 사전에 차단한다. 이에 따라, 디지털로 구현된 SNN에서 전력 소비를 대폭 감소시킬 수 있다.
이와 같은, 스파이킹 뉴럴 네트워크(SNN) 하드웨어에서 초저전력 소비를 위한 예측 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명은 뉴런의 포텐셜을 기반으로 SNN 하드웨어의 낭비되는 연산을 사전에 차단한다. 따라서, 본 발명은 인공지능 하드웨어의 수요가 증가하고 있음에 따라 시장성이 매우 높을 것으로 기대되며, 컴퓨터 비전, 음성 인식, 자연어 처리 분야에서도 유용하게 적용될 수 있다.
10: 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로
11: 전위 메모리
13: 임계부
15: 비교기
17: 제1 소자
19: 제2 소자

Claims (7)

  1. 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 전위 메모리(potential memory)에 업데이트하는 단계;
    임계부에서 저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교하는 단계;
    상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면, 비교기의 출력을 변경하는 단계; 및
    상기 비교기의 출력이 변경되는 경우, 입력되는 모든 클럭과 입력 스파이크(spike_in)를 차단하는 단계;를 포함하는, 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 하드웨어의 동작방법이고,
    상기 입력되는 모든 클럭과 입력 스파이크(spike_in)를 차단하는 단계는,
    제 1 소자에서 클럭 게이팅(clock gating)을 사용하여 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에 입력되는 클럭을 차단하고,
    제 2 소자에서 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어에 입력되는 입력 스파이크(spike_in)를 차단하고,
    상기 제 1 소자는 AND 게이트를 포함하고,
    상기 제 2 소자는 MUX를 포함하는, 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 하드웨어의 동작 방법.
  2. 제1항에 있어서, 상기 스파이킹 뉴럴 네트워크(SNN) 하드웨어는,
    디지털로 구현되고, 뉴런의 막전위가 발화율에 비례하여 증가하고, 발화율이 0에 수렴하는 뉴런의 막전위가 지속적으로 감소하는 복수의 뉴런을 포함하는 스파이킹 뉴럴 네트워크(SNN) 회로인, 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 하드웨어의 동작 방법.
  3. 삭제
  4. 삭제
  5. 매 클럭 에지마다 입력 스파이크(spike_in)에 따른 막전위 값을 업데이트하는 전위 메모리(potential memory);
    상기 전위 메모리에 저장된 막전위 값을 미리 설정된 게이팅 전위값(gating potential)과 비교하는 임계부;
    상기 임계부에서 비교 결과, 상기 막전위 값이 미리 설정된 게이팅 전위값 이하로 감소하면, 출력을 변경하는 비교기;
    상기 비교기의 출력이 변경되는 경우, 클럭 게이팅(clock gating)을 사용하여 입력되는 모든 클럭을 차단하는 제1 소자; 및
    상기 비교기의 출력이 변경되는 경우, 입력 스파이크(spike_in)를 차단하는 제2 소자;를 포함하고,
    상기 제 1 소자는 AND 게이트를 포함하고,
    상기 제 2 소자는 MUX를 포함하는, 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로.
  6. 제5항에 있어서,
    디지털로 구현되고, 뉴런의 막전위가 발화율에 비례하여 증가하고, 발화율이 0에 수렴하는 뉴런의 막전위가 지속적으로 감소하는 복수의 뉴런을 포함하는, 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(SNN) 회로.
  7. 삭제
KR1020200137811A 2020-10-22 2020-10-22 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로 KR102515089B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200137811A KR102515089B1 (ko) 2020-10-22 2020-10-22 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200137811A KR102515089B1 (ko) 2020-10-22 2020-10-22 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로

Publications (2)

Publication Number Publication Date
KR20220053387A KR20220053387A (ko) 2022-04-29
KR102515089B1 true KR102515089B1 (ko) 2023-03-27

Family

ID=81428982

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200137811A KR102515089B1 (ko) 2020-10-22 2020-10-22 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로

Country Status (1)

Country Link
KR (1) KR102515089B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102204107B1 (ko) 2020-07-16 2021-01-18 세종대학교산학협력단 뉴런의 임계값에 STDP(Spiking Timing Dependent Plasticity)를 적용한 스파이킹 뉴럴 네트워크(Spiking Neural Network)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9111222B2 (en) * 2011-11-09 2015-08-18 Qualcomm Incorporated Method and apparatus for switching the binary state of a location in memory in a probabilistic manner to store synaptic weights of a neural network
US11580355B2 (en) 2018-10-25 2023-02-14 Electronic Warfare Associates, Inc. System-on-a-chip incorporating artificial neural network and general-purpose processor circuitry
KR102191346B1 (ko) * 2019-01-30 2020-12-15 서울대학교산학협력단 버스트 스파이크에 기반한 스파이킹 신경망 생성 방법 및 스파이킹 신경망 기반 추론 장치
KR102288075B1 (ko) 2019-02-12 2021-08-11 서울대학교산학협력단 스파이킹 뉴럴 네트워크를 이용한 추론 방법 및 장치
KR102311135B1 (ko) * 2019-03-07 2021-10-14 고려대학교 산학협력단 스파이킹 뉴럴 네트워크에 대한 연산량을 감소시키는 stdp 기반의 뉴로모픽 연산처리장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102204107B1 (ko) 2020-07-16 2021-01-18 세종대학교산학협력단 뉴런의 임계값에 STDP(Spiking Timing Dependent Plasticity)를 적용한 스파이킹 뉴럴 네트워크(Spiking Neural Network)

Also Published As

Publication number Publication date
KR20220053387A (ko) 2022-04-29

Similar Documents

Publication Publication Date Title
Prashanth et al. Cumulative prospect theory meets reinforcement learning: Prediction and control
Salakhutdinov et al. Optimization with EM and expectation-conjugate-gradient
Tan et al. Adaptive power management using reinforcement learning
US20180293514A1 (en) New rule creation using mdp and inverse reinforcement learning
KR101828215B1 (ko) Long Short Term Memory 기반 순환형 상태 전이 모델의 학습 방법 및 장치
WO2005116866A1 (en) Method and system for word sequence processing
KR20190094068A (ko) 온라인 게임에서 게이머 행동 유형을 분류하는 분류기의 학습 방법 및 상기 분류기를 포함하는 장치
JPWO2020065808A1 (ja) 情報処理装置及びシステム、並びに、モデル適応方法及びプログラム
KR20190134965A (ko) 뉴럴 네트워크 학습 방법 및 그 시스템
KR102515089B1 (ko) 초저전력 소비를 위한 스파이킹 뉴럴 네트워크(snn) 하드웨어의 동작 방법, 이를 수행하기 위한 회로
CN112052670B (zh) 地址文本分词方法、装置、计算机设备和存储介质
JP7383528B2 (ja) スパイキングニューラルネットワーク装置およびスパイキングニューラルネットワーク装置の学習方法
Marček et al. The category proliferation problem in ART neural networks
Wang et al. Enabling energy-efficient and reliable neural network via neuron-level voltage scaling
Prabha et al. Hardware architecture of reinforcement learning scheme for dynamic power management in embedded systems
WO2019121142A1 (en) Approaching homeostasis in a binary neural network
Lee et al. Hybrid model for dynamic power management
JP6588933B2 (ja) 言語モデル構築装置、その方法、及びプログラム
Wang et al. Application of artificial neural network supported by bp and particle swarm optimization algorithm for evaluating the criticality class of spare parts
Ravichandran et al. Making early predictions of file accesses
Čerňanský et al. Comparison of echo state networks with simple recurrent networks and variable-length Markov models on symbolic sequences
JPWO2020065810A1 (ja) 情報処理装置及びシステム、並びに、モデル適応方法及びプログラム
JP7287499B2 (ja) ジョブ予測プログラム、システム、及び方法
Chen et al. Exploiting Symmetric Temporally Sparse BPTT for Efficient RNN Training
US20230367034A1 (en) Intelligent execution of compute intensive numerical simulation models

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant