KR20220065549A - Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치 - Google Patents

Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치 Download PDF

Info

Publication number
KR20220065549A
KR20220065549A KR1020200152194A KR20200152194A KR20220065549A KR 20220065549 A KR20220065549 A KR 20220065549A KR 1020200152194 A KR1020200152194 A KR 1020200152194A KR 20200152194 A KR20200152194 A KR 20200152194A KR 20220065549 A KR20220065549 A KR 20220065549A
Authority
KR
South Korea
Prior art keywords
neuromorphic
model
snn
naa
architecture
Prior art date
Application number
KR1020200152194A
Other languages
English (en)
Other versions
KR102535007B1 (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 KR1020200152194A priority Critical patent/KR102535007B1/ko
Priority to PCT/KR2021/010092 priority patent/WO2022102912A1/ko
Publication of KR20220065549A publication Critical patent/KR20220065549A/ko
Application granted granted Critical
Publication of KR102535007B1 publication Critical patent/KR102535007B1/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
    • 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/045Combinations of networks
    • G06N3/0454
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

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

Abstract

SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법은, NAA(Neuromorphic Architecture Abstraction) HOST를 통해 IoT 응용에서 전달받은 NPZ 파일에서 SNN 모델의 정보를 추출하는 단계; SNN 모델의 입력 차원(input dimension) 수 및 출력 차원(out dimension) 수 및 사용할 수 있는 최대 뉴런의 수를 기반으로, SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계; 선택된 뉴로모픽 아키텍처가 2개 이상인 경우, 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계; 및 상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 단계;를 포함한다. 이에 따라, SNN 모델을 최적의 실행 가능한 뉴로모픽 아키텍처를 동적으로 선택할 수 있다.

Description

SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치{NEUROMORPHIC ARCHITECTURE DYNAMIC SELECTION METHOD FOR SNN MODEL PARAMETER-BASED MODELING, RECORDING MEDIUM AND DEVICE FOR PERFORMING THE METHOD}
본 발명은 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치에 관한 것으로서, 더욱 상세하게는 지능형 IoT를 위한 적절한 뉴로모픽(Neuromorphic) 플랫폼을 선택하는 기술에 관한 것이다.
사물 인터넷(IoT) 및 AI 기술의 급속한 발전으로 인공 지능(AI) 기술을 기반으로 하는 IoT 서비스가 점점 더 지능화되고 있다. 이러한 지능형 IoT 서비스를 제공하려면 IoT 하드웨어와 IoT 소프트웨어가 AI 기술을 지원해야 한다.
일반적으로, 배터리 구동 IoT 장치는 범용 컴퓨터에 비해 컴퓨팅 성능이 제한적이다. 따라서, 다양한 지능형 IoT 서비스를 구현하기 위해서는 IoT 기기에 저전력으로 AI 기술을 지원할 수 있어야 한다. 저전력 뉴로모픽 아키텍처는 리소스가 제한된 IoT 장치가 AI 기술을 기반으로 하는 지능형 IoT 서비스를 제공할 수 있도록 한다.
최근 인공 지능(AI) 기술을 기반으로 한 IoT 기기가 스스로 훈련하고 추론할 수 있는 지능형 서비스에 대한 연구가 큰 주목을 받고 있다. 그러나, 일반적인 IoT 기기에서 수집한 대량의 데이터를 학습시키기 위해서는 고성능 컴퓨팅 파워를 갖춘 하드웨어, 효율적으로 추론할 수 있는 기계 학습 플랫폼이 필요하다.
일반적인 IoT 장치는 크기가 작고 리소스가 제한된 컴퓨팅 환경이며 대부분의 경우 제한된 전력을 사용하기 때문에 고전력 소비 하드웨어가 있는 GPU와 같은 고성능 컴퓨팅 플랫폼을 IoT 장치에 통합하는 것은 적합하지 않다. 따라서, 최근 여러 연구에서 자원이 제한된 시스템에서 딥 러닝 신경망을 사용하는 방법을 연구하기 시작했다.
특히, 훈련된 패턴과 연관성에 대응하여 스스로 조직화하고 결정을 내릴 수 있는 제한된 자원으로 뇌의 뉴런이 어떻게 소통하고, 행위자 모델링을 하고, 뉴로모픽 아키텍처를 IoT 장치에 접목하는지에 대한 연구도 시작되었다. 뉴로모픽 아키텍처는 GPU 아키텍처보다 훨씬 작고 에너지 효율적이므로 리소스가 제한된 IoT 장치에 적용하면 간단한 신경망을 포함한 기계 학습 기능의 이점을 누릴 수 있기 때문이다.
뉴로모픽 아키텍처는 인공 신경망을 구현하여 인간의 훈련 능력을 모방하기 위해 신경계에 존재하는 신경 생물학적 뇌의 구조와 기능적 특성을 가진 하드웨어와 소프트웨어를 사용하는 새로운 컴퓨팅 아키텍처로 알려져 있다. 뉴로모픽 아키텍처는 Spiking Neural Networks(SNN) 알고리즘에 특화된 차세대 신경망 모델이다. 뉴로모픽 아키텍처에는 Intel에서 최근 발표한 Loihi 칩 및 FPGA 기반 뉴로모픽 아키텍처 보드, Terasic의 De1-SoC 및 Xilinx의 PYNQ-Z1 등이 포함된다.
IBM은 2008년 DARPA의 SyNAPSE 프로젝트를 기반으로 2014년에 TrueNorth라는 Neuromorphic 칩을 개발했다. 인간 뇌 뉴런의 구조와 기능을 모방한 TrueNorth는 256 개의 뉴런에 대해 4096 개의 상호 연결된 코어의 한 형태이다. 10,000 분의 1 수준의 초 저전력 성능을 보였지만 가장 단순한 형태인 linear의 IF(integration-and-fire) 모델만 지원한다.
Intel의 Loihi는 가장 최근에 출시 된 LIF(Leaky Integrate-and-Fire) 뉴런을 지원하는 하드웨어를 대표한다. Loihi는 칩당 128 개의 코어와 130,000 개의 뉴런을 갖추고 있어 총 1600 만 개의 뉴런과 1 억 3 천만 개의 시냅스를 구성할 수 있다. 기존 뉴로모픽 아키텍처는 주로 LIF가 아닌 선형 모델을 기반으로 하는 뉴런을 지원하지만 LIF 기반 Loihi는 기존 뉴로모픽 아키텍처보다 생물학적 뉴런에 훨씬 더 가까운 모델로 평가된다.
최근에 32 개의 Loihi 칩셋이 있는 Nahuku 보드가 출시되었다. Nepes는 NM500을 뉴로모픽 칩으로 판매하지만 스파이킹 신경망을 기반으로 하는 뉴로모픽 칩이 아니며 RBF(Radial Basis Function) 신경망과 K-Nearest Neighbor 모델만 지원한다. 칩당 576 개의 뉴런을 가지고 있으며 칩을 병렬로 쌓아 뉴런을 증가시키는 특징이 있다.
현재의 뉴로모픽 아키텍처의 성능이 매우 열악하지만, 조만간 우수한 성능의 새로운 뉴로모픽 아키텍처가 출시될 것으로 예상되며, 이를 통해 뉴로모픽 아키텍처를 포함하는 IoT 장치가 등장하고 궁극적으로 지능형 IoT 서비스를 제공할 수 있을 것으로 예상된다.
그러나, 각 뉴로모픽 아키텍처는 서로 다른 성능, 서로 다른 하드웨어 특성, 서로 다른 지원되는 SNN 모델, 서로 다른 메모리 크기 및 서로 다른 최대 뉴런 수를 갖기 때문에 특정 IoT 장치 또는 IoT 서비스 환경에 적합한 뉴로모픽 아키텍처를 선택할 수 없는 경우, 훈련이 정상적으로 수행되지 않고 치명적인 오류가 발생할 수 있다. 따라서, 학습 모델, 학습 대상, IoT 환경에 따라 적절한 뉴로모픽 아키텍처를 동적으로 선택할 수 있는 기술이 필요하다.
KR 10-2018-0070196 A KR 10-2020-0068051 A 10-2020-0098308 A
Steve K Esser, Rathinakumar Appuswamy, Paul Merolla, John V Arthur, and Dharmendra S Modha, Backpropagation for energy-efficient neuromorphic computing, In Advances in neural information processing systems, 1117-1125, 2015.
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 기록 매체를 제공하는 것이다.
본 발명의 또 다른 목적은 상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법을 수행하기 위한 장치를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법은, NAA(Neuromorphic Architecture Abstraction) HOST를 통해 IoT 응용에서 전달받은 NPZ 파일에서 SNN 모델의 정보를 추출하는 단계; SNN 모델의 입력 차원(input dimension) 수 및 출력 차원(out dimension) 수 및 사용할 수 있는 최대 뉴런의 수를 기반으로, SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계; 선택된 뉴로모픽 아키텍처가 2개 이상인 경우, 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계; 및 상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 단계;를 포함한다.
본 발명의 실시예에서, 상기 SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계는, NAA에서 적절한 뉴로모픽 아키텍처를 선택하기 위하여 사용 가능한 뉴로모픽 아키텍처를 대상으로 주어진 SNN 모델의 수행 적합 여부를 순차적으로 확인하는 단계;를 포함할 수 있다.
본 발명의 실시예에서, 상기 SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계는, 요청된 SNN 모델의 파라미터 규모와 수행 가능여부를 확인할 뉴로모픽 아키텍처 정보를 기반으로, SNN 모델의 수행에 적합한 뉴로모픽 아키텍처인지를 확인하는 파라미터 체크(Parameter Check) 함수를 사용할 수 있다.
본 발명의 실시예에서, 상기 SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계는, 파라미터 체크에서 적합하다고 판단된 뉴로모픽 아키텍처의 학습 및 추론 수행시간을 확인하는 실행 체크(Execution Check) 함수를 사용할 수 있다.
본 발명의 실시예에서, 상기 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계는, 수행시간을 구하기 위해 한번의 학습 및 추론을 수행하는 단계;를 포함할 수 있다.
본 발명의 실시예에서, 상기 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계는, 상기 실행 체크(Execution Check) 함수 내에서 SNN 모델의 입력 레이어의 학습 및 추론 데이터 크기만큼 배열(send_data)을 생성하는 단계; 랜덤으로 생성된 학습 및 추론 데이터를 NAA 실행 함수를 통해 NAA NA에 전송하는 단계; 및 뉴로모픽 아키텍처에서의 학습 및 추론 수행시간을 측정하는 단계;를 더 포함할 수 있다.
본 발명의 실시예에서, 상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 단계는, 뉴로모픽 아키텍처에서의 학습 및 추론 수행시간이 이전 뉴로모픽 아키텍처의 최소 수행시간보다 짧은 경우, 최적의 뉴로모픽 아키텍처를 변경하는 단계;를 더 포함할 수 있다.
본 발명의 실시예에서, 상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법은, NAA NA가 SNN 모델 학습과 추론을 수행하기 위해 필요한 파라미터를 전송하는데 사용되는 제1 통신 채널; NAA HOST가 NAA NA의 제어를 위한 제2 통신 채널; 및 SNN 모델의 학습과 추론을 결과를 NAA NA에서 NAA HOST로 전달하기 위한 제3 통신 채널;을 포함하는 3개의 통신 채널을 사용할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치는, NAA(Neuromorphic Architecture Abstraction) HOST를 통해 IoT 응용에서 전달받은 NPZ 파일에서 SNN 모델의 정보를 추출하는 정보 추출부; SNN 모델의 입력 차원(input dimension) 수 및 출력 차원(out dimension) 수 및 사용할 수 있는 최대 뉴런의 수를 기반으로, SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 아키텍처 선택부; 선택된 뉴로모픽 아키텍처가 2개 이상인 경우, 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 시간 계산부; 및 상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 최종 선택부;를 포함한다.
본 발명의 실시예에서, 상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치는, NAA NA일 수 있다.
본 발명의 실시예에서, 상기 NAA NA와 상기 NAA HOST는, NAA NA가 SNN 모델 학습과 추론을 수행하기 위해 필요한 파라미터를 전송하는데 사용되는 제1 통신 채널; NAA HOST가 NAA NA의 제어를 위한 제2 통신 채널; 및 SNN 모델의 학습과 추론을 결과를 NAA NA에서 NAA HOST로 전달하기 위한 제3 통신 채널;을 포함하는 3개의 통신 채널을 이용할 수 있다.
이와 같은 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법에 따르면, NAA는 고성능 하드웨어의 지원 없이 크기가 작고 전력소비가 적은 뉴로모픽 칩셋을 사용하여 효율적인 학습이 가능하게 한다.
또한, NAA는 IoT 서비스 환경에 적합한 뉴로모픽 아키텍처를 선택한다. 고성능 하드웨어를 연결해서 쓰지 않고도 크기가 작고 저전력인 IoT 환경을 만들 수 있어 자원 제약적인 환경에서도 학습이 가능하게 한다.
도 1은 본 발명의 이기종 뉴로모픽 아키텍처를 지원하기 위한 추상화 구조를 보여주는 도면이다.
도 2는 본 발명의 일 실시예에 따른 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치의 블록도이다.
도 3은 본 발명에 따른 뉴로모픽 아키텍처 동적 선택을 실행하는 시나리오를 보여주는 도면이다.
도 4는 본 발명에 따라 지능형 IoT 디바이스를 위해 NAA가 SNN 모델을 학습과 추론하는 과정을 보여주는 도면이다.
도 5는 본 발명의 일 실시예에 따른 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법의 알고리즘의 예시를 보여주는 도면이다.
도 6은 NAA 플랫폼에서 MNIST 데이터 세트를 사용하여 숫자 이미지를 분류한 결과를 보여주는 도면이다.
도 7은 랜덤 선택 방법과 본 발명의 NAA, SNN 파라미터 기반 선택 방법의 실행 시간을 보여주는 그래프이다.
도 8은 뉴로모픽 아키텍처 선택 방법에 따른 훈련 및 추론의 성공률을 보여주는 그래프이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 이기종 뉴로모픽 아키텍처를 지원하기 위한 추상화 구조를 보여주는 도면이다.
본 발명은 NN모델을 최적의 실행 가능한 뉴로모픽(Neuromorphic) 아키텍처를 동적으로 선택하는 NAA(Neuromorphic Architecture Abstraction) 모델을 제안한다. NAA는 뉴로모픽 아키텍처 실행환경으로 하드웨어적으로 NAA HOST(라즈베리파이, 로컬PC 등)와 FPGA 기반 뉴로모픽 아키텍처 보드(PYNQ-Z1, DE1-SoC, Loihi 등)로 구분된다.
본 발명에서 제안된 NAA 모델은 학습 속도와 학습 성공률을 높이기 위해 다양한 학습 특성에 따라 적절한 뉴로모픽 아키텍처를 동적으로 선택한다.
도 1을 참조하면, 소프트웨어 방식으로 다양한 이기종 뉴로모픽 아키텍처를 제어하기 위해 뉴로모픽 아키텍처를 추상화하는 방법을 설명한다. NAA는 서로 다른 하드웨어 기능을 동일한 인터페이스로 사용하기 위해 다양한 뉴로모픽 아키텍처에서 실행되는 애플리케이션에 대해 뉴로모픽 아키텍처의 추상화를 제공한다.
추상화된 인터페이스를 통해 NAA는 각 뉴로모픽 아키텍처의 서로 다른 기계 훈련 실행 방법을 동일한 기계 훈련 실행 방법으로 만든다. 또한, IoT 장치에 뉴로모픽 아키텍처에서 에뮬레이션하고 추상화된 소프트웨어 인터페이스를 통해 하드웨어 기능을 디버그할 수 있는 기능을 제공한다.
각 뉴로모픽 아키텍처는 서로 다른 SNN 모델을 지원하므로 NAA는 SNN 훈련 모델의 가중치 값 또는 바이어스 값과 같은 매개 변수를 기반으로 특정 SNN 모델을 지원하는 적절한 뉴로모픽 아키텍처를 선택할 수 있다. NAA는 IoT 장치의 추상화인 NAA HOST와 뉴로모픽 아키텍처의 추상화인 NAA NA로 구성되어 있다.
NAA NA에는 뉴로모픽 아키텍처에서 IoT 애플리케이션 및 SNN 모델을 학습하고 인식하는 프로세스를 디버깅 할 수 있는 에뮬레이터가 포함되어 있다. NAA HOST는 SNN 모델의 학습 및 추론을 위해 NAA HOST와 NAA NA간에 학습 데이터를 송수신하기 위한 API와 다수의 NAA NA 중 SNN 모델 실행에 적합한 NAA NA를 동적으로 선택하기 위한 API를 제공한다.
도 2는 본 발명의 일 실시예에 따른 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치의 블록도이다.
도 2를 참조하면, 본 발명에 따른 장치(20)는 정보 추출부(110), 아키텍처 선택부(130), 시간 계산부(150) 및 최종 선택부(170)를 포함한다.
본 발명의 상기 장치(20)는 도 1의 NAA NA이거나 NAA NA의 일부일 수 있다. 상기 정보 추출부(110), 상기 아키텍처 선택부(130), 상기 시간 계산부(150) 및 상기 최종 선택부(170)의 구성은 통합 모듈로 형성되거나, 하나 이상의 모듈로 이루어 질 수 있다. 그러나, 이와 반대로 각 구성은 별도의 모듈로 이루어질 수도 있다.
상기 장치(20)는 이동성을 갖거나 고정될 수 있다. 상기 장치(20)는, 서버(server) 또는 엔진(engine) 형태일 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.
상기 정보 추출부(110)는 NAA(Neuromorphic Architecture Abstraction) HOST를 통해 IoT 응용에서 전달받은 NPZ 파일에서 SNN 모델의 정보를 추출한다.
상기 아키텍처 선택부(130)는 SNN 모델의 입력 차원(input dimension) 수 및 출력 차원(out dimension) 수 및 사용할 수 있는 최대 뉴런의 수를 기반으로, SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택한다.
상기 시간 계산부(150)는 선택된 뉴로모픽 아키텍처가 2개 이상인 경우, 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하고, 상기 최종 선택부(170)는 상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택한다.
도 3은 본 발명에 따른 뉴로모픽 아키텍처 동적 선택을 실행하는 시나리오를 보여주는 도면이다.
도 3을 참조하면, 본 발명에서 제안한 NAA는 SNN 모델을 학습과 추론하기 위해 기본적으로 3개의 통신 채널을 사용한다.
첫 번째 통신 채널은 NAA NA가 SNN 모델 학습과 추론을 수행하기 위해 필요한 bias, weight와 같은 파라미터를 전송하는데 사용된다. 전송되는 데이터를 위해 Numpy에서 지원하는 npz 바이너리 포맷을 사용하고, NAA HOST에서 NAA NA로 데이터를 송신하기 위해 Secure File Transfer Protocol(SFTP)을 사용한다.
두 번째로 통신 채널은 NAA HOST가 NAA NA의 제어를 목적으로 사용한다. TCP 프로토콜을 사용하는 이 채널을 통해 NAA NA에서 동작하는 SNN모델의 loading, stop, inferencing request, training request 등의 제어가 가능하다.
마지막으로, SNN 모델의 학습과 추론 결과를 NAA NA에서 NAA HOST로 전달하기 위한 통신 채널이 있다. 이 채널은 NAA HOST가 학습 및 인식 요청을 NAA NA로 non-blocking하게 보낼 수 있게 UDP 프로토콜을 사용한다.
도 4는 본 발명에 따라 지능형 IoT 디바이스를 위해 NAA가 SNN 모델을 학습과 추론하는 과정을 보여주는 도면이다.
도 4를 참조하면, 지능형 IoT 디바이스를 위해 제안한 NAA가 SNN 모델을 학습과 추론하는 과정은 다음과 같다. 먼저, IoT 응용에서 SNN 모델 학습과 인식을 위해 필요한 NAA NA 제어 명령과 SNN 모델 파라미터 정보와 함께 학습이나 추론을 수행할 데이터를 NAA HOST로 전달한다. 아래의 표 1은 SNN 모델을 학습하고 추론하는데 필요한 매개 변수 유형과 설명을 보여준다.
[표 1]
Figure pat00001
다음으로, NAA HOST는 IoT 응용으로부터 전달 받은 시스템 초기화 제어 명령을 앞에서 설명한 Secure File Transfer Protocol(SFTP)을 이용하여 NAA NA로 전달한다. 이를 통해, NAA NA는 SNN 모델을 수신할 준비를 한다.
이후, NAA HOST는 지능형 IoT 응용에서 전달받은 SNN 모델에 필요한 각 파라미터와 해당 값을 표 1에 지정된 각 매개변수와 각 값을 npz 포맷 파일로 압축하여 NAA NA로 전달한다. NAA NA는 NAA HOST로부터 전달받은 npz 포맷 파일에 존재하는 SNN 모델 파라미터와 해당 값을 추출하고 NAA NA에서 SNN 모델 동작에 필요한 동작을 위한 하드웨어 및 소프트웨어 관련 설정을 수행한다.
NAA NA는 SNN 모델 구동을 위한 동작을 위한 설정이 완료되면 NAA HOST에게 SNN 모델이 학습이나 추론이 가능한 상태라는 것을 ACK 메시지를 전달하여 알린다.
이 과정에서 NAA HOST는 SNN 모델의 수행이 가능한 상태임을 의미하는 ACK 메시지를 NAA NA로부터 수신하기 전까지 대기한다. NAA HOST는 NAA NA가 SNN 모델이 수행 가능한 상태라고 알리는 ACK를 수신하면 지능형 IoT 응용에서 수신한 학습 및 추론 요청과 해당 데이터를 NAA NA로 전달한다.
NAA NA는 SNN 모델을 이용하여 학습 및 추론한 결과를 NAA HOST에 전달한다. 마지막으로, NAA HOST는 NAA NA로부터 받은 수행 결과가 정상적인지 확인하고 이를 지능형 IoT 응용에 전달한다.
본 발명은 NAA는 고성능 하드웨어의 지원 없이 크기가 작고 전력소비가 적은 뉴로모픽 칩셋을 사용하여 효율적인 학습이 가능하게 한다. 또한, NAA는 IoT 서비스 환경에 적합한 뉴로모픽 아키텍처를 선택한다. 고성능 하드웨어를 연결해서 쓰지 않고도 크기가 작고 저전력인 IoT 환경을 만들 수 있어 자원 제약적인 환경에서도 학습이 가능하게 한다.
도 5는 본 발명의 일 실시예에 따른 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법의 알고리즘의 예시를 보여주는 도면이다.
이하에서는, IoT 응용에서 요청한 SNN 모델에 가장 적합한 신경 모형 아키텍처를 선택하는 방법을 설명한다. 본 발명에서 제안된 NAA는 IoT 응용에 사용할 수 있는 다양한 뉴로모픽 아키텍처를 지원할 수 있다. 각 뉴로모픽 아키텍처는 서로 다른 SNN 모델과 뉴런 수를 지원한다.
학습 및 추론의 성능도 아키텍처마다 다르다. 지능형 IoT 응용의 전체 성능을 높이려면 IoT 응용을 위한 SNN 모델을 학습하고 추론할 적절한 신경형 아키텍처를 선택해야 한다. 지능형 IoT 응용을 훈련하기 위한 IoT 장치를 위한 여러 개의 뉴로모픽 아키텍처가 있다고 가정하면 뉴로모픽 아키텍처 중 하나를 무작위로 선택하면 IoT 애플리케이션에 필요한 특정 SNN 모델을 훈련하고 추론할 수 없다는 문제가 있다.
또한, 특정 SNN 모델을 수행하는 데 필요한 자원이 더 많은 뉴로모픽 아키텍처를 선택하면 전체 자원 활용 측면에서 비효율적인 사용이 발생할 수 있다. 이는 각 뉴로모픽 아키텍처에 대해 지원되는 최대 뉴런 수가 다르기 때문이다.
본 발명의 일 실시예에서 사용된 FPGA 기반 뉴로모픽 아키텍처인 PYNQ는 최대 32k 뉴런을 지원하고 DE-1 SoC는 최대 16k 뉴런을 지원한다. 따라서, SNN 모델의 매개 변수 척도 분석 결과를 바탕으로 적절한 뉴로모픽 아키텍처를 선택해야 한다.
본 발명의 NAA는 IoT 응용에서 수신한 npz 파일에서 표 1에 해당하는 SNN 모델 정보를 추출한다. 그런 다음 SNN 모델의 입력 및 출력 차원과 사용할 수 있는 최대 뉴런 수를 기반으로 SNN 모델을 수행 할 수 있는 적절한 뉴로모픽 아키텍처를 선택한다.
SNN 매개 변수에 의해 선택된 뉴로모픽 아키텍처가 두 개 이상인 경우 훈련에 필요한 시간을 고려하고 처리 시간을 최소화하기 위해 추론하여 선택한다.
도 5는 NAA에서 적절한 뉴로모픽 아키텍처를 선택하여 훈련 및 추론에 필요한 시간을 최소화하는 절차와 방법을 보여준다. 알고리즘에 사용된 기호와 그 의미는 아래의 표 2와 같다.
[표 2]
Figure pat00002
NAA에서 적절한 뉴로모픽 아키텍처를 선택하기 위해 먼저 NAA는 PARAMETERCHECK 함수를 사용하여 SNN 모델이 실행에 적합한지 여부를 순차적으로 확인한다. 이 함수는 요청된 SNN 모델의 매개 변수 크기 및 뉴로모픽 아키텍처 정보를 기반으로 주어진 SNN 모델을 기반으로 적절한 아키텍처를 찾는다.
EXECUTIONCHECK 함수는 주어진 SNN 모델의 입력 계층의 훈련 및 추론 데이터 크기만큼 배열(send_data)을 생성하고, 무작위로 생성된 데이터를 NAAexecution 함수를 통해 NAA NA로 전송하고, 훈련 및 추론 시간을 측정한다. 도 5의 10번째 라인에서 해당 뉴로모픽 아키텍처에서의 학습 및 추론 수행 시간이 반환된다.
PARAMETERCHECK 함수를 통해 검사할 뉴로모픽 아키텍처가 주어진 SNN 모델을 실행하는데 적합한지 확인한다. 뉴로모픽 아키텍처가 SNN 모델을 실행하기에 적합하다면 EXECUTIONCHECK 함수를 통해 훈련 및 추론이 실행된다. 확인된 뉴로모픽 아키텍처의 실행 시간이 기존 최소 실행 시간보다 적으면 적절한 뉴로모픽 아키텍처로 다른 뉴로모픽 아키텍처가 선택된다.
본 발명의 NAA의 성능을 검증하기 위해 제안된 NAA를 Raspberry Pi4 지능형 IoT 장치에 구현하여 성능 평가를 수행했다. 평가를 위한 하드웨어 플랫폼 환경은 표 3과 같다.
[표 3]
Figure pat00003
성능 평가에 사용되는 뉴로모픽 아키텍처는 FPGA 기반 뉴로모픽 컴퓨팅 지원 장치, DE1-SoC 및 PYNQ-Z1이다. 각 뉴로모픽 아키텍처에서 지원하는 최대 뉴런 수는 표 4와 같다.
[표 4]
Figure pat00004
본 발명에서 제안된 NAA의 성능 평가를 위해 이미지 분류가 가능한 IoT 서비스를 테스트한다. MNIST 데이터 세트는 이미지 분류를 위한 SNN 모델을 학습하고 추론하기 위한 데이터 세트로 사용되었다. 28x28 크기의 이미지 데이터 세트는 구현된 NAA에 대한 기본 MNIST 데이터를 지원하는 DE1-SoC 및 PYNQ-Z1에서 지원하는 뉴런 스케일에 맞게 14x14로 변환되었다.
도 6은 NAA 플랫폼에서 MNIST 데이터 세트를 사용하여 숫자 이미지를 분류한 결과를 보여준다. 두 방법의 성능을 비교하였는데, 하나는 신경형 아키텍처를 무작위로 선택하는 방법이고, 다른 하나는 SNN 매개 변수를 고려하여 적절한 신경형 아키텍처 방법을 선택하는 방법이다. 훈련 및 추론의 성공률과 총 실행 시간을 확인하여 비교하여 성능을 평가한다.
도 7은 랜덤 선택 방법과 본 발명의 NAA, SNN 파라미터 기반 선택 방법의 실행 시간을 보여준다. 본 발명에서 제안된 NAA는 무작위 선택 방법에 비해 필요한 훈련 및 추론 시간이 24 % 단축되었음을 보여준다.
도 8은 뉴로모픽 아키텍처 선택 방법에 따른 훈련 및 추론의 성공률을 보여준다. 뉴로모픽 아키텍처를 무작위로 선택하는 방법은 SNN 모델이 작동할 수 없는 뉴로모픽 아키텍처를 선택할 수 있기 때문에 성공률이 낮다. 반면, 본 발명에 따른 NAA는 SNN 모델의 매개 변수 척도 분석 결과를 기반으로 하기 때문에 훈련 및 추론의 성공률은 100 %임을 확인하였다.
본 발명은 지능형 IoT 장치 및 지능형 IoT 응용 프로그램을 위한 여러 뉴로모픽 아키텍처에 하드웨어 추상화를 제공하는 NAA를 제안하였다. 제안된 NAA에서 IoT 애플리케이션은 뉴로모픽 아키텍처에서 작동하는 SNN 모델을 기반으로 지능형 서비스를 훈련하고 추론할 수 있다.
NAA는 또한 주어진 SNN 모델의 매개 변수를 고려하여 적절한 뉴로모픽 아키텍처를 동적으로 선택할 수 있다. 실험 결과, 본 발명에서 제안된 NAA의 훈련 및 추론에 소요되는 시간 오버 헤드가 24 % 감소하고, 무작위 선택 방법에 비해 성공률이 20 % 증가한 것으로 나타났다.
이와 같은, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명은 NAA는 특정 IoT 장치 또는 IoT 서비스 환경에서 최적의 실행 가능한 뉴로모픽 아키텍처를 선택한다. 본 발명은 고성능 하드웨어를 연결해서 쓰지 않고도 크기가 작고 저전력인 IoT 환경을 만들 수 있어 자원 제약적인 환경에서도 학습이 가능하게 한다. 따라서, 급속한 발전을 하고 있는 사물 인터넷(IoT) 분야에 유용하게 적용할 수 있다.
20: 뉴로모픽 아키텍처 동적 선택 장치
110: 정보 추출부
130: 아키텍처 선택부
150: 시간 계산부
170: 최종 선택부

Claims (12)

  1. NAA(Neuromorphic Architecture Abstraction) HOST를 통해 IoT 응용에서 전달받은 NPZ 파일에서 SNN 모델의 정보를 추출하는 단계;
    SNN 모델의 입력 차원(input dimension) 수 및 출력 차원(out dimension) 수 및 사용할 수 있는 최대 뉴런의 수를 기반으로, SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계;
    선택된 뉴로모픽 아키텍처가 2개 이상인 경우, 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계; 및
    상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 단계;를 포함하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  2. 제1항에 있어서, 상기 SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계는,
    NAA에서 적절한 뉴로모픽 아키텍처를 선택하기 위하여 사용 가능한 뉴로모픽 아키텍처를 대상으로 주어진 SNN 모델의 수행 적합 여부를 순차적으로 확인하는 단계;를 포함하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  3. 제1항에 있어서, 상기 SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계는,
    요청된 SNN 모델의 파라미터 규모와 수행 가능여부를 확인할 뉴로모픽 아키텍처 정보를 기반으로, SNN 모델의 수행에 적합한 뉴로모픽 아키텍처인지를 확인하는 파라미터 체크(Parameter Check) 함수를 사용하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  4. 제3항에 있어서, 상기 SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 단계는,
    파라미터 체크에서 적합하다고 판단된 뉴로모픽 아키텍처의 학습 및 추론 수행시간을 확인하는 실행 체크(Execution Check) 함수를 사용하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  5. 제4항에 있어서, 상기 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계는,
    수행시간을 구하기 위해 한번의 학습 및 추론을 수행하는 단계;를 포함하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  6. 제5항에 있어서, 상기 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 단계는,
    상기 실행 체크(Execution Check) 함수 내에서 SNN 모델의 입력 레이어의 학습 및 추론 데이터 크기만큼 배열(send_data)을 생성하는 단계;
    랜덤으로 생성된 학습 및 추론 데이터를 NAA 실행 함수를 통해 NAA NA에 전송하는 단계; 및
    뉴로모픽 아키텍처에서의 학습 및 추론 수행시간을 측정하는 단계;를 더 포함하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  7. 제6항에 있어서, 상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 단계는,
    뉴로모픽 아키텍처에서의 학습 및 추론 수행시간이 이전 뉴로모픽 아키텍처의 최소 수행시간보다 짧은 경우, 최적의 뉴로모픽 아키텍처를 변경하는 단계;를 더 포함하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  8. 제1항에 있어서,
    NAA NA가 SNN 모델 학습과 추론을 수행하기 위해 필요한 파라미터를 전송하는데 사용되는 제1 통신 채널;
    NAA HOST가 NAA NA의 제어를 위한 제2 통신 채널; 및
    SNN 모델의 학습과 추론을 결과를 NAA NA에서 NAA HOST로 전달하기 위한 제3 통신 채널;을 포함하는 3개의 통신 채널을 사용하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법.
  9. 제1항에 따른, 상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 저장 매체.
  10. NAA(Neuromorphic Architecture Abstraction) HOST를 통해 IoT 응용에서 전달받은 NPZ 파일에서 SNN 모델의 정보를 추출하는 정보 추출부;
    SNN 모델의 입력 차원(input dimension) 수 및 출력 차원(out dimension) 수 및 사용할 수 있는 최대 뉴런의 수를 기반으로, SNN 모델의 수행이 가능한 적어도 하나의 뉴로모픽 아키텍처를 선택하는 아키텍처 선택부;
    선택된 뉴로모픽 아키텍처가 2개 이상인 경우, 뉴로모픽 아키텍처의 학습과 추론에 소요되는 수행시간을 계산하는 시간 계산부; 및
    상기 학습과 추론에 소요되는 수행시간이 가장 짧은 뉴로모픽 아키텍처를 최종적으로 선택하는 최종 선택부;를 포함하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치.
  11. 제10항에 있어서,
    상기 SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치는, NAA NA인, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치.
  12. 제11항에 있어서, 상기 NAA NA와 상기 NAA HOST는,
    NAA NA가 SNN 모델 학습과 추론을 수행하기 위해 필요한 파라미터를 전송하는데 사용되는 제1 통신 채널;
    NAA HOST가 NAA NA의 제어를 위한 제2 통신 채널; 및
    SNN 모델의 학습과 추론을 결과를 NAA NA에서 NAA HOST로 전달하기 위한 제3 통신 채널;을 포함하는 3개의 통신 채널을 이용하는, SNN 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 장치.
KR1020200152194A 2020-11-13 2020-11-13 Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치 KR102535007B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200152194A KR102535007B1 (ko) 2020-11-13 2020-11-13 Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치
PCT/KR2021/010092 WO2022102912A1 (ko) 2020-11-13 2021-08-03 Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200152194A KR102535007B1 (ko) 2020-11-13 2020-11-13 Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치

Publications (2)

Publication Number Publication Date
KR20220065549A true KR20220065549A (ko) 2022-05-20
KR102535007B1 KR102535007B1 (ko) 2023-05-19

Family

ID=81601434

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200152194A KR102535007B1 (ko) 2020-11-13 2020-11-13 Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치

Country Status (2)

Country Link
KR (1) KR102535007B1 (ko)
WO (1) WO2022102912A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180070196A (ko) 2016-12-16 2018-06-26 에스케이하이닉스 주식회사 뉴로모픽 장치의 정보 인식 장치 및 방법
US20190347548A1 (en) * 2018-05-10 2019-11-14 Microsoft Technology Licensing, Llc. Selecting a neural network architecture for a supervised machine learning problem
WO2019234810A1 (ja) * 2018-06-05 2019-12-12 三菱電機株式会社 学習装置、推論装置、方法、及びプログラム
KR20200068051A (ko) 2018-11-26 2020-06-15 전자부품연구원 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치
KR20200098308A (ko) 2019-02-12 2020-08-20 서울대학교산학협력단 스파이킹 뉴럴 네트워크를 이용한 추론 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190156246A1 (en) * 2017-11-21 2019-05-23 Amazon Technologies, Inc. Generating and deploying packages for machine learning at edge devices
CN111406267B (zh) * 2017-11-30 2024-06-04 谷歌有限责任公司 使用性能预测神经网络的神经架构搜索
US11630990B2 (en) * 2019-03-19 2023-04-18 Cisco Technology, Inc. Systems and methods for auto machine learning and neural architecture search

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180070196A (ko) 2016-12-16 2018-06-26 에스케이하이닉스 주식회사 뉴로모픽 장치의 정보 인식 장치 및 방법
US20190347548A1 (en) * 2018-05-10 2019-11-14 Microsoft Technology Licensing, Llc. Selecting a neural network architecture for a supervised machine learning problem
WO2019234810A1 (ja) * 2018-06-05 2019-12-12 三菱電機株式会社 学習装置、推論装置、方法、及びプログラム
KR20200068051A (ko) 2018-11-26 2020-06-15 전자부품연구원 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치
KR20200098308A (ko) 2019-02-12 2020-08-20 서울대학교산학협력단 스파이킹 뉴럴 네트워크를 이용한 추론 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Steve K Esser, Rathinakumar Appuswamy, Paul Merolla, John V Arthur, and Dharmendra S Modha, Backpropagation for energy-efficient neuromorphic computing, In Advances in neural information processing systems, 1117-1125, 2015.

Also Published As

Publication number Publication date
KR102535007B1 (ko) 2023-05-19
WO2022102912A1 (ko) 2022-05-19

Similar Documents

Publication Publication Date Title
Kang et al. Neurosurgeon: Collaborative intelligence between the cloud and mobile edge
Chen et al. DNNOff: offloading DNN-based intelligent IoT applications in mobile edge computing
US20230153620A1 (en) Dynamic processing element array expansion
US20220335304A1 (en) System and Method for Automated Design Space Determination for Deep Neural Networks
JP2018533138A (ja) 選択的バックプロパゲーション
KR20190043419A (ko) 조기 중단에 기반한 심층 신경망의 연산 제어 방법 및 시스템
CN111831358B (zh) 权重精度配置方法、装置、设备及存储介质
KR20200052417A (ko) 타겟 디바이스의 추론 모듈 선택 장치 및 방법
US12079734B1 (en) Compilation time reduction for memory and compute bound neural networks
CN115293254B (zh) 基于量子多层感知器的分类方法及相关设备
CN108345934A (zh) 一种用于神经网络处理器的激活装置及方法
US20230004816A1 (en) Method of optimizing neural network model and neural network model processing system performing the same
Sadatdiynov et al. An intelligent hybrid method: Multi-objective optimization for MEC-enabled devices of IoE
Park et al. Dynamic neuromorphic architecture selection scheme for intelligent Internet of Things services
KR101855360B1 (ko) 신경망의 학습 최적화를 위한 신경망 구성 방법 및 장치
KR102535007B1 (ko) Snn 모델 파라미터를 기반으로 모델 수행을 위한 뉴로모픽 아키텍처 동적 선택 방법, 이를 수행하기 위한 기록 매체 및 장치
KR102191346B1 (ko) 버스트 스파이크에 기반한 스파이킹 신경망 생성 방법 및 스파이킹 신경망 기반 추론 장치
Park et al. Selecting a proper neuromorphic platform for the intelligent iot
Huang et al. Real-time radar gesture classification with spiking neural network on SpiNNaker 2 prototype
Zhao et al. Gradient-based adaptive particle swarm optimizer with improved extremal optimization
Lin et al. Heuristic-learning-based network architecture for device-to-device user access control
KR102445230B1 (ko) 태스크 모델 및 자연어 처리 모델의 학습 방법, 및 이를 수행하는 학습 장치
CN114548382B (zh) 迁移训练方法、装置、设备、存储介质及程序产品
KR102477971B1 (ko) 뉴로모픽 아키텍처를 지원하기 위한 방법, 이를 수행하기 위한 기록 매체 및 호스트 장치
US11741397B2 (en) Artificial neural network emulation of hotspots

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