KR102453336B1 - 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치 - Google Patents

스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치 Download PDF

Info

Publication number
KR102453336B1
KR102453336B1 KR1020190144181A KR20190144181A KR102453336B1 KR 102453336 B1 KR102453336 B1 KR 102453336B1 KR 1020190144181 A KR1020190144181 A KR 1020190144181A KR 20190144181 A KR20190144181 A KR 20190144181A KR 102453336 B1 KR102453336 B1 KR 102453336B1
Authority
KR
South Korea
Prior art keywords
hyperparameter
objective function
hyper
optimal
optimizer
Prior art date
Application number
KR1020190144181A
Other languages
English (en)
Other versions
KR20210057430A (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 KR1020190144181A priority Critical patent/KR102453336B1/ko
Priority to US16/684,087 priority patent/US11922302B2/en
Publication of KR20210057430A publication Critical patent/KR20210057430A/ko
Application granted granted Critical
Publication of KR102453336B1 publication Critical patent/KR102453336B1/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/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • 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/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/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
    • 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/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Neurology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 스파이킹 뉴럴 네트워크 연산 처리 장치의 하이퍼 파라미터 최적화를 위한 최적화기로서, 훈련 데이터를 입력받아 통계적 분석을 담당하는 통계 분석부와, 상기 통계 분석부의 통계적 분석값을 이용하여 하이퍼 파라미터별 목적 함수를 생성하는 목적 함수 생성부와, 상기 하이퍼 파라미터별 목적 함수에 의하여 소정의 규칙에 따라 최적의 하이퍼 파라미터를 선택하는 최적 하이퍼 파라미터 선택부를 포함하는 하이퍼 파라미터 최적화기를 제공한다.

Description

스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치{Hyper-parameter optimization method for skiing neural network and the processing apparatus thereof}
본 발명은 하이퍼 파라미터 최적화 방법 및 장치에 관한 것으로서, 구체적으로는 스파이킹 뉴럴 네트워크에서 성능 변화를 가져오는 다양한 하이퍼 파라미터들을 최적화할 수 있는 최적화 방법 및 장치와, 연산 처리 장치에 관한 것이다.
하이퍼 파라미터 최적화 방법은 주로 오픈 소스 프레임워크 기반으로 설계되어 머신러닝, 딥러닝 분야에서 활발하게 연구되고 있으며, 주로 시스템의 복잡도 때문에 블랙박스를 가정하여 Grid search, Random Search, Bayesian optimization 등의 하이퍼 파라미터 최적화 알고리즘 또는 방법을 사용하고 있는데, 이들 알고리즘은 시간 소모, 복잡도의 문제가 있다.
한편, 스파이킹 뉴럴 네트워크를 위한 저전력/저면적의 가속 연산 처리 장치에 대한 연구가 활발하게 일어나고 있지만, 연구 결과들에서 보고된 연산 처리 장치의 성능이 설정된 하이퍼 파라미터의 값의 범위에 따라 크게 변동되거나 저하되는 문제점이 있다.
현재 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법, 하드웨어와 연동하여 최적화하는 연구는 없는 상황이다.
전술한 문제점을 해결하기 위하여, 본 발명은 하이퍼 파라미터의 최적값 도출을 위한 방법을 제공하는 것을 목적으로 한다.
특히, 다양한 데이터 어플리케이션 별, 최적의 성능을 갖기 위한 스파이킹 뉴럴 네트워크에서 사용하는 하이퍼 파라미터 선정 방법을 제시하고자 한다.
아울러, 본 발명의 다른 목적은 최적화된 하이퍼 파라미터를 설정할 수 있는 최적화 장치와 이를 이용한 연산 처리 장치와의 연동 구조를 제공하는 데 있다.
전술한 목적을 이루기 위하여, 본 발명은 훈련 데이터를 입력받아 통계적 분석을 담당하는 통계 분석부와, 상기 통계 분석부의 통계적 분석값을 이용하여 하이퍼 파라미터별 목적 함수를 생성하는 목적 함수 생성부와, 상기 하이퍼 파라미터별 목적 함수에 의하여 소정의 규칙에 따라 최적의 하이퍼 파라미터를 선택하는 최적 하이퍼 파라미터 선택부를 포함하는 하이퍼 파라미터 최적화기를 제공한다.
통계 분석부는 훈련 데이터에 대해서, 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차를 포함한 통계정보를 산출하고,
목적 함수 생성부는, 하이퍼 파라미터 별로 생성된 상기 목적 함수에 대하여 소정의 리그레션 방법을 통해 실험적 데이터에 근사시키는데, 일례로, 상기 통계 분석부의 통계적 분석 결과를 사용하여 2차 다항식 커브의 계수(coefficient) 및 시그모이드 커브 계수(sigmoid curve coefficient) 중 어느 하나인 하이퍼 파라미터 별 목적 함수의 계수값을 계산하여 실험적 데이터에 근사시킨다.
최적 하이퍼 파라미터 선택부는, 둘 이상의 소정의 특정 규칙을 사용하여 목적하는 어플리케이션 별 스파이킹 뉴럴 네트워크의 연산 결과치 정확도를 구하여, 이 중에서 가장 높은 정확도를 유도하거나, 목적하는 어플리케이션 별 RMSE가 가장 낮게 되는 하이퍼 파라미터를 최적 하이퍼 파라미터로 선택한다.
상기 특정 규칙은 피크 값, 최소값, 최대값, 두 목적함수의 교차값, 최댓값 및 최솟값에서의 백오프값 중 어느 하나일 수 있다.
본 발명의 다른 면에 따라, 훈련 데이터를 입력받는 단계와, 상기 훈련 데이터에 대한 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차 중 적어도 하나를 포함하는 통계 값을 산출하는 단계와, 산출된 상기 통계 값을 토대로 스파이킹 뉴럴 네트워크에 사용되는 하이퍼 파라미터별 목적 함수를 생성하는 단계와, 상기 목적 함수에 대한 리그레션을 수행하는 단계와, 소정의 선택 규칙에 따라 최적 하이퍼 파라미터를 선택하는 단계를 포함하는 하이퍼 파라미터 최적화 방법이 제공된다.
본 발명의 또 다른 면에 따라, 연산 처리 장치로부터 하드웨어 성능 요소를 전달받는 단계와, 상기 하드웨어 성능 요소에 따라 미리 정한 하이퍼 파라미터 별 허용 범위 내에서 최적의 하이퍼 파라미터를 선택하는 단계를 포함하는, 연산 처리 장치와 연동한 하이퍼 파라미터 최적화 방법이 제공된다.
본 발명의 또 다른 면에 따른 스파이킹 뉴럴 네트워크 연산 처리 장치는, 훈련 데이터를 통하여 학습하고 이를 토대로 추론을 수행하는 SNN 가속기와, 상기 SNN 가속기의 하드웨어 성능 요소를 고려하고 통계적 분석 방법을 적용하여, 상기 SNN 가속기에서 연산 처리시 이용하는 하이퍼 파라미터를 선택하고 이를 상기 SNN 가속기로 전달하는 하이퍼 파라미터 최적화기를 포함한다.
본 발명에 따르면, 종래의 실험적인 하이퍼 파라미터 선정 방식에 비하여, 더 타당한 최적의 하이퍼 파라미터의 선정이 가능하며, 특히 스파이킹 뉴럴 네트워크가 다양한 데이터 어플리케이션별로 항상 최적의 성능을 갖을 수 있다.
이를 통해 스파이킹 뉴럴 네트워크의 학습 시 소요되는 시간을 감소시킬 수 있다. 즉, 종래의 복잡한 알고리즘으로 구성된 딥 러닝 네트워크는 학습 시 대용량의 에너지가 필요하지만, 본 발명에 따른 스파이킹 뉴럴 네트워크는 스파이크의 사건 기반 계산으로 저 전력으로 학습 수행이 가능하며 온 칩 학습이 가능하다.
결과적으로, 최적화된 하이퍼 파라미터를 설정할 수 있는 연산 처리 장치를 제공함으로써, 하나의 칩에서 학습과 추론이 가능하고 종래의 스파이킹 뉴럴 네트워크 기술 대비 고성능/저전력 동작을 가능하게 한다.
또한, 연산 처리 장치의 성능이 설정된 하이퍼 파라미터의 값의 범위에 따라 크게 변동되거나 저하되는 문제점을 극복할 수 있다.
도 1은 본 발명에 따른 하이퍼 파라미터 최적화기와 스파이킹 뉴럴 네트워크 연산 처리 장치(SNN 가속기)와의 상호 동작관계를 도시한 도면.
도 2는 본 발명에 따른 하이퍼 파라미터 최적화기의 내부 구성도.
도 3은 본 발명에 따른 하이퍼 파라미터 최적화기의 내부 처리 과정을 도시한 개념도.
도 4는 본 발명에 따른, 상호 연동하는 하이퍼 파라미터 최적화기와 스파이킹 뉴럴 네트워크 연산 처리 장치(SNN 가속기)간의 데이터 흐름도.
도 5는 본 발명에 일 실시예에 따른 하이퍼 파라미터 최적화 방법의 절차 흐름도.
도 6은 본 발명의 다른 실시예에 따른 하이퍼 파라미터 최적화 방법의 절차 흐름도.
본 발명의 목적 및 효과는 이상에서 언급한 것으로 제한되지 않으며, 본 발명의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.
본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 이하의 각 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며 본 발명의 범위를 제한하고자 하는 것이 아니다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 또는 "구비"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "...유닛", "...장치", "...디바이스", "...부" 또는 "...모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
한편, 본 발명의 각 실시예에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있으며, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
이하, 첨부 도면을 참조하여 본 발명의 구성에 대하여 상세히 설명한다.
본 발명의 첫번째 기본 기술사상은, 하이퍼 파라미터들을 설정함에 따라 변동하는 연산 처리 장치들(AI 가속기)의 성능 및 특징을 분석하여 고정되거나 제한된 범위 내에서 하이퍼 파라미터를 설정하도록 함으로써, 제한적인 성능을 가지던 기존의 연산 처리 장치들보다 높은 정확도의 알고리즘 성능 및 효율적인 하드웨어 설계를 가능하도록 하는 것이다.
두번째 기본 기술사상은 훈련 데이터의 통계적 분석을 수행한 후 그 통계값들을 기초로 하이퍼 파라미터 값의 목적 함수에 대한 리그레션(regression)을 수행하고, 이에 더하여 데이터에 대한 피크 값, 최소값, 목적 함수 교차값 등의 특정 규칙을 이용하여 각 어플리케이션에 적합한 어플리케이션별 최적의 하이퍼 파라미터를 도출하는 것이다.
본 발명의 원활한 이해를 위하여, 우선 스파이킹 뉴럴 네트워크(SNN: Spiking Neural Network)에 대하여 간단히 정리하고, 본 발명에서 최적화하려는 하이퍼 파라미터에 대해 살펴보도록 한다.
많은 은닉층을 두는 신경망을 이용한 연산을 수행하는 딥러닝과 같은 방식은 대용량의 학습 데이터와 높은 성능의 컴퓨팅 리소스를 필요로 하므로, 현실의 다양한 상황에 적용되는 저전력/저사양의 소형 장치(예컨대, IoT 단말 장치)에 이용되기가 어렵기 때문에, 최근들어 뉴로모픽 분야의 연구가 활발하게 진행되고 있다.
이 중에서 주요한 연구분야 중 하나인 스파이킹 뉴럴 네트워크 기술은 사람의 두뇌 활동 작용을 모사하여 학습과 추론을 하는 것으로서, 하나의 뉴로모픽 칩에서 학습 및 추론이 가능하도록 하며 이를 구현한 연산 처리 장치를 SNN 가속기라 칭하기도 한다.
스파이킹 뉴럴 네트워크 연산 처리 장치의 기본 구성 및 동작을 살펴보면, 복수의 뉴런과 뉴런들을 상호 연결하는 시냅스를 두며, 데이터마다 하나의 뉴런을 할당하여 신호의 강도에 따라 스파이크 신호를 생성하도록 설계하고, 여러 시냅스 중 스파이크 신호가 전달된 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 상기 스파이크 신호를 내보내며 출력단에서는 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화하여 출력값을 냄으로써, 다수의 은닉층을 두는 딥러닝 효과를 발휘한다.
이러한 스파이킹 뉴럴 네트워크 연산 처리 장치에서 이용되는 하이퍼 파라미터는 다음과 같다.
주요 파라미터
- Spike Train의 길이 : 하나의 데이터를 표현하기 위한 스파이크 트레인(Spike Train)의 길이로, 길이에 따른 연산이 선형적으로 증가하므로, 하드웨어 측면에서 에너지 소모가 많아지고, 연산 시간이 증가할 수 있다.
- 뉴런 개수 : 포스트 시냅틱(post-synaptic) 뉴런 수가 적으면 완전한 학습이 되지 못하므로 성능이 열화되며, 너무 많을 경우 계산 복잡도 증가로 연산 시간 및 전력 소모가 커진다.
- 입력 스파이크 생성 빈도 : 스파이크 생성 빈도가 높을수록 연산량 및 전력소모가 커진다.
- 시냅스 가중치(Weight) 학습율 : 시냅스 학습시 사용되는 가중치(Weight)의 변화량에 대한 변수로서, 최적값보다 클 경우 빠른 학습이 되지만, 과적응(over-fitting)되어 성능이 열화 될 수 있고, 작을 경우 학습속도가 느려지거나 학습이 거의 이루어지지 않을 수 있다.
- 임계(Threshold) 학습율 : 각 뉴런이 스파이크를 발생 시 사용되는 임계값의 변화량에 대한 변수로서, 과대할 경우 연산량이 증가하고, 과소할 경우 학습시간이 증가할 수 있다.
- 초기 임계값 : 각 뉴런이 가지고 있는 초기 임계값으로서, 과소하면 스파이크 생성 빈도가 높아지고 연산량이 증가하며 하드웨어 에너지 소모가 증가된다.
- 멤브레인(membrane) 시상수 : 학습 성능 측정 시 영향을 주는 변수로서, 최적값이 아닐 경우 성능열화가 발생할 수 있다.
기타 파라미터
- 학습 횟수 : 시냅스를 학습하기 위해 필요한 학습 횟수이다. 특정 횟수 이상 학습하면 성능이 포화(saturation)되므로 하드웨어 측면에서 불필요한 에너지 소모 및 연산 시간이 증가한다.
- STDP 경계(boundary) : 포스트 시냅틱 뉴런에서 스파이크를 내보내면, 프리 시냅틱(pre-synaptic) 뉴런에서 생성되었던 스파이크의 시간 정보를 통하여 시냅스 가중치에 상승(potentiation) 또는 저하(depression) 현상이 일어나게 되는데, STDP 경계는 이 상승 및 저하 현상을 구분 짓게 되는 스파이크의 시간 경계 지점이다.
이하, 도 1을 참조하여 본 발명의 첫번째 기본 사상과 관련한 본 발명의 구성에 대한 설명을 한다.
도시된 바와 같이 하이퍼 파라미터 최적화기(100)는 스파이킹 뉴럴 네트워크 연산 처리 장치(이하의 상세한 설명에서는, SNN 가속기라 칭함)(200)로부터 하드웨어 성능 요소, 즉 하드웨어적으로 한정된 제약 사항(전력, 면적 등)을 전달받는다.
최적화기(100)는 전달받은 하드웨어 성능 요소를 고려하여 최적 하이퍼 파라미터를 설정한다.
예컨대, 스파이크 트레인, 뉴런 개수, 입력 스파이크의 생성 빈도 등 주요 하이퍼 파라미터는 SNN 가속기(200)의 소비 전력, 칩 면적에 직접적으로 영향을 받는다. 만약 SNN 가속기 전력과 칩 면적을 고려하지 않고 과도한 뉴런 개수나 스파이크 트레인의 길이, 입력 스파이크의 생성 빈도를 설정하면, 오히려 가속기 성능의 저하가 있을 수 있다.
따라서, 본 발명에 따른 하이퍼 파라미터 최적화기(100)는 이 파라미터에 의하여 동작할 SNN 가속기(200)의 하드웨어적 성능 요소를 고려하여 최적 파라미터를 도출한다.
본 발명에서 최적화기(100)가 하드웨어적 성능 요소를 고려하는 일 실시예는 아래의 표와 같다.
변수명 자료형 범위 (하드웨어 고려)
Spike train 길이 Int 0<x<800
뉴런 개수 Int 0<x<=1600
입력 spike 생성 빈도 Float 0<x<=1
(0<=rand()<= 1, 0 <=입력 pixel<= 1 가정 )
시냅스 weight 학습률 Float 0<x<1
Threshold 학습률 Float 0<x<1
초기 Threshold Float 0<x<(뉴런 당 synapse합의 최댓값)
Membrane 시상수 Float 0<x<∞
표 1은 특정한 면적과 소비전력을 가지는 어떤 하드웨어에 대한 각 파라미터별 허용범위를 정의한 테이블의 예시이다.
즉, 하드웨어 성능 요소별로 허용 가능한, 즉 적절한 성능을 담보할 수 있는 하이퍼 파라미터별 허용 범위 테이블을 미리 정하여 위 표와 같이 준비해놓고, 입력되는 하드웨어 성능 요소가 허용하는 범위 내에서 하이퍼 파라미터를 선택하는 것이다.
이렇게 도출한 최적 파라미터는 SNN 가속기(200)로 전달되어 스파이킹 뉴럴 네트워크에 기반한 연산을 처리함으로써, 최적의 성능을 발휘할 수 있다.
이하에서는, 도 2를 참조하여 본 발명의 두번째 기술 사상에 따른 하이퍼 파라미터 최적화기(100)의 내부 구성 및 동작에 대하여 설명한다.
도시된 바와 같이, 본 발명에 따른 최적화기(100)는 훈련 데이터를 입력으로 하여 스파이킹 뉴럴 네트워크에 필요한 하이퍼 파라미터를 생성하는 최적화 장치이며, 데이터의 통계적 분석을 담당하는 통계 분석부(110), 통계적 분석값을 이용하여 하이퍼 파라미터별 목적 함수를 생성하는 목적 함수 생성부(120), 그리고 최적 하이퍼 파라미터 선택부(130)를 포함한다.
통계 분석부(110)는 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차를 포함한 다양한 통계정보를 산출한다.
목적 함수 생성부(120)은 통계 분석부(110)가 산출한 훈련 데이터의 통계 값들을 입력으로 사용하여, 스파이킹 뉴럴 네트워크에 사용되는 하이퍼 파라미터 값의 목적 함수에 관하여 다양한 리그레션 방법을 지원한다.
예컨대, 커브 리그레션(curve regression) 방법은 통계적 분석 결과를 사용하여 2차 다항식 커브의 계수(coefficient) 혹은 시그모이드 커브 계수(sigmoid curve coefficient)등 하이퍼 파라미터에 따른 목적 함수의 계수값을 계산하여 실험적 데이터에 근사한다.
마지막으로 최적 하이퍼 파라미터 선택부(130)에서는 피크 값, 최소값, 목적 함수의 교차값 등의 특정 규칙을 사용하여 목적하는 어플리케이션에 적합한 스파이킹 뉴럴 네트워크의 정확도 혹은 RMSE등의 결과가 최적이 되도록 하는 하이퍼 파라미터를 선택하여 출력하고, 스파이킹 뉴럴 네트워크 시스템의 입력으로 사용한다.
목적 함수 생성부(120)가 생성하여 전달한 하이퍼 파라미터별 목적 함수를 이용하여 선택 규칙에 따라 최적값을 선택하는데, 목적 함수의 최댓값, 혹은 최솟값이 될 수도 있고 또는 최댓값, 최솟값에서의 back-off 값을 고려할 수도 있고, 두 목적 함수의 교차값을 선택하는 방법을 취할 수 있다. 추가적으로 2개의 하이퍼 파라미터를 동시에 최적화할 경우 평면의 교차선의 최소 혹은 최대값을 선택하는 방법도 사용할 수 있다.
이상의 최적화기의 동작에 대하여 도 3에 개념적으로 도시하였다.
이와 같은 구성을 가진 본 발명에 따른 하이퍼 파라미터 최적화기(100)는 수행할 어플리케이션에 따라 리그레션 방법 및 선택 방법을 결정하며, 그럼으로써 어플리케이션별 최적의 하이퍼 파라미터를 도출할 수 있다.
아울러, 전술한 바와 같이 SNN 가속기의 하드웨어 사양을 고려하여, 예컨대 표시에 기재한 바와 같은 파라미터별 허용되는 범위 내에서 최적 파라미터를 선택함으로써 SNN 가속기별 최적의 하이퍼 파라미터를 도출할 수 있다.
도 4는 본 발명에 따른 하이퍼 파라미터 최적화기(100)와 연산 처리 장치(SNN 가속기)(200)가 상호 연동하여 동작하는 방식을 도시한 데이터 플로우도이다.
본 발명에 따른 SNN 가속기(200)는 최적화기(100)로부터 전달받은 어플리케이션별 최적 하이퍼 파라미터를 토대로 스파이킹 뉴럴 네트워크를 동작시킨다. SNN 가속기(200)는 기본적으로 스파이크를 기반으로 연산을 수행하며, 다양한 뉴럴 네트워크 구조를 동작시킬 수 있도록 설계된다. 또한, 장치 내부에 학습에 대한 연산을 포함하고 있다.
특히 본 발명의 첫번째 기술 사상에 따라서, 하이퍼 파라미터 최적화기(100)는 SMM 가속기(200)로부터 소비 전력, 면적 등의 하드웨어적 성능 고려 요소들을 종합적으로 전달받고, 판단하여 최적화된 하이퍼 파라미터를 구성할 수 있다.
전술한 첫번째 기술 사상 및 두번째 기술 사상은 함께 본 발명에 따른 최적화기(100) 및 SNN 가속기(200)에 적용될 수 있으며, 또는 각각 적용될 수 있음은 물론이다.
이하, 도 5 및 도 6을 참조하여 본 발명에 따른 최적화 방법을 설명한다.
본 발명에 따른 최적화 방법은, 우선 훈련데이터를 입력받아(S510), 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차를 포함한 다양한 통계정보를 산출한다(S520).
그 다음, 산출된 훈련 데이터의 통계 값들을 토대로 스파이킹 뉴럴 네트워크에 사용되는 하이퍼 파라미터 값의 목적 함수를 생성하고, 이에 관한 다양한 리그레션 방법을 적용한다(S530).
이를 토대로 각 어플리케이션에 적합한 스파이킹 뉴럴 네트워크의 정확도 혹은 RMSE등의 가 최적이 되도록 하는 하이퍼 파라미터를 선택하여 출력한다(S540).
하이퍼 파라미터별 목적 함수는 선택 규칙에 따라 최적값을 선택하는데, 목적 함수의 최댓값, 혹은 최솟값이 될 수도 있고 또는 최댓값, 최솟값에서의 백오프 값을 고려할 수도 있고, 두 목적 함수의 교차값을 선택 방법으로 사용할 수도 있다. 추가적으로 2개의 하이퍼 파라미터를 동시에 최적화할 경우 평면의 교차선의 최소 혹은 최대값을 선택 방법으로 사용할 수 있다.
이렇게 선택된 최적 하이퍼 파라미터를 SNN 가속기의 입력으로 사용되도록 전달한다(S550).
한편, 도 6에 도시한 다른 실시예에 따라, 최적 하이퍼 파라미터의 선택에 있어서 SNN 가속기의 하드웨어 제약 조건을 더 고려할 수 있다.
즉, SNN 가속기의 소비 전력, 면적 등 하드웨어 성능 요소와 관련된 제약 사항을 입력받고(S610), 이를 최적 하이퍼 파라미터의 선택시 고려한다(S640).
예컨대, 설계 가능한 범위의 하드웨어 성능 요소별로, 허용 가능한 하이퍼 파라미터별 허용 범위 테이블을 둘 이상 준비하고, 입력된 상기 하드웨어 성능 요소에 부합하는 허용 범위 테이블을 참조하여 참조된 상기 허용 범위 테이블에 정의된 하이퍼 파라미터별 허용 범위 내에서 하이퍼 파라미터를 선택하는 과정을 더 포함할 수 있다.
즉, 하드웨어를 고려한 허용 범위 내에서 전술한 방법(S510 내지 S550)을 수행하여 하이퍼 파라미터를 선택하거나, 먼저 전술한 방법으로 하이퍼 파라미터를 선택하고 선택된 하이퍼 파라미터가 하드웨어를 고려한 허용 범위에 속하는지를 살피고, 만약 허용 범위에 속하지 않는다면 다시 전술한 방법에 따른 하이퍼 파라미터 선택 과정을 수행하는 절차를 진행한다.
이상 본 발명의 구성에 대하여 바람직한 몇 실시예를 들어 상세히 설명하였으나, 이는 이해를 돕기위한 예시에 불과한 것으로 본 발명의 보호범위가 각 실시예의 구성에 한정되는 것은 아니다. 본 발명의 기술적 사상의 범주 내에서 전술한 실시예의 다양한 변형 및 변경이 가능함은 물론이다.
예컨대, 본 발명에 따른 하이퍼 파라미터 최적화기와 SNN 가속기는 하나의 칩에 상호 연결되어 구현될 수도 있고, 상호 분리된 형태로 각각 다른 장치로서 구현될 수 있다. 즉, 본 발명에 따른 연산 처리 장치는 SNN 가속기만일 수도 있으나, SNN 가속기와 최적화기를 포함할 수도 있다.
아울러, 본 발명의 기술적 사상이 스파이킹 뉴럴 네트워크에만 국한된 것이 아니라 파라미터 최적화가 요구되는 제반 분야의 가속기 및 연산 처리 장치에 적용될 수 있다.
따라서, 본 발명의 보호범위는 이하의 특허청구범위의 기재에 의하여 정해져야 할 것이다.

Claims (17)

  1. 연산 처리 장치의 하이퍼 파라미터 최적화를 위한 최적화기로서,
    훈련 데이터를 입력받아, 상기 훈련 데이터에 대해서 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차를 포함하는 통계정보를 산출하는 통계 분석부와,
    상기 통계 분석부가 산출한 통계정보를 이용하여 하이퍼 파라미터별 목적 함수를 생성하는 목적 함수 생성부와,
    상기 하이퍼 파라미터별 목적 함수에 의하여 소정의 규칙에 따라 최적의 하이퍼 파라미터를 선택하는 최적 하이퍼 파라미터 선택부
    를 포함하는 하이퍼 파라미터 최적화기.
  2. 삭제
  3. 제1항에 있어서, 상기 목적 함수 생성부는,
    하이퍼 파라미터 별로 생성된 상기 목적 함수에 대하여 소정의 리그레션 방법을 통해 실험적 데이터에 근사시키는 것인 하이퍼 파라미터 최적화기.

  4. 제1항에 있어서, 상기 목적 함수 생성부는,
    상기 통계 분석부의 통계적 분석 결과를 사용하여 2차 다항식 커브의 계수(coefficient) 및 시그모이드 커브 계수(sigmoid curve coefficient) 중 어느 하나인 하이퍼 파라미터 별 목적 함수의 계수값을 계산하여 실험적 데이터에 근사시키는 것인 하이퍼 파라미터 최적화기.
  5. 제1항에 있어서, 상기 최적 하이퍼 파라미터 선택부는,
    둘 이상의 소정의 특정 규칙을 사용하여 목적하는 어플리케이션 별 스파이킹 뉴럴 네트워크의 연산 결과치 정확도를 구하여, 이 중에서 가장 높은 정확도를 유도하는 하이퍼 파라미터를 최적 하이퍼 파라미터로 선택하는 것인 하이퍼 파라미터 최적화기.
  6. 제1항에 있어서, 상기 최적 하이퍼 파라미터 선택부는,
    둘 이상의 소정의 특정 규칙을 사용하여 도출한, 목적하는 어플리케이션 별 RMSE가 가장 낮게 되는 하이퍼 파라미터를 최적 하이퍼 파라미터로 선택하는 것인 하이퍼 파라미터 최적화기.
  7. 삭제
  8. 통계적 분석 방법을 적용한 하이퍼 파라미터 최적화 방법에 있어서,
    훈련 데이터를 입력받는 단계와,
    상기 훈련 데이터에 대한 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차 중 적어도 하나를 포함하는 통계 값을 산출하는 단계와,
    산출된 상기 통계 값을 토대로 스파이킹 뉴럴 네트워크에 사용되는 하이퍼 파라미터별 목적 함수를 생성하는 단계와,
    상기 목적 함수에 대한 리그레션을 수행하는 단계와,
    소정의 선택 규칙에 따라 최적 하이퍼 파라미터를 선택하는 단계
    를 포함하는 하이퍼 파라미터 최적화 방법.
  9. 제8항에 있어서, 상기 리그레션을 수행하는 단계는,
    상기 통계 값을 사용하여 2차 다항식 커브의 계수(coefficient) 및 시그모이드 커브 계수(sigmoid curve coefficient) 중 하나인 하이퍼 파라미터별 목적 함수의 계수값을 계산하여 실험적 데이터에 근사시키는 것인 하이퍼 파라미터 최적화 방법.
  10. 제8항에 있어서, 상기 하이퍼 파라미터를 선택하는 단계는,
    상기 리그레션 수행 결과, 각 어플리케이션에 적합한 스파이킹 뉴럴 네트워크의 정확도가 가장 높은 하이퍼 파라미터 및 RMSE 값이 최소인 하이퍼 파라미터 중 하나를 선택하는 것인 하이퍼 파라미터 최적화 방법.
  11. 제8항에 있어서,
    선택된 최적 하이퍼 파라미터를 스파이킹 뉴럴 네트워크 연산 처리 장치로 전달하는 단계를 더 포함하는 하이퍼 파라미터 최적화 방법.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 훈련 데이터를 통하여 학습하고 이를 토대로 추론을 수행하는 SNN 가속기와,
    상기 훈련 데이터에 대해서 데이터 수, 라벨별 분포특성, 데이터의 최솟값, 최댓값, 분산, 표준편차를 포함하는 통계정보를 산출하는 통계 분석부와, 상기 통계 분석부가 산출한 통계정보를 이용하여 하이퍼 파라미터별 목적 함수를 생성하는 목적 함수 생성부와, 상기 하이퍼 파라미터별 목적 함수에 의하여 소정의 규칙에 따라 최적의 하이퍼 파라미터를 선택하는 최적 하이퍼 파라미터 선택부를 포함하여, 상기 SNN 가속기에서 연산 처리시 이용하는 하이퍼 파라미터를 선택하고 이를 상기 SNN 가속기로 전달하는 하이퍼 파라미터 최적화기
    를 포함하되,
    상기 하이퍼 파라미터 최적화기는 상기 SNN 가속기의 하드웨어 성능 요소를 추가로 고려하는 것인 스파이킹 뉴럴 네트워크 연산 처리 장치.
  17. 제16항에 있어서, 상기 목적 함수 생성부는,
    하이퍼 파라미터 별로 생성된 상기 목적 함수에 대하여 소정의 리그레션 방법을 통해 실험적 데이터에 근사시키는 것인 스파이킹 뉴럴 네트워크 연산 처리 장치.
KR1020190144181A 2019-11-12 2019-11-12 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치 KR102453336B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190144181A KR102453336B1 (ko) 2019-11-12 2019-11-12 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치
US16/684,087 US11922302B2 (en) 2019-11-12 2019-11-14 Hyper-parameter optimization method for spiking neural network and the processing apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190144181A KR102453336B1 (ko) 2019-11-12 2019-11-12 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치

Publications (2)

Publication Number Publication Date
KR20210057430A KR20210057430A (ko) 2021-05-21
KR102453336B1 true KR102453336B1 (ko) 2022-10-12

Family

ID=75845606

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190144181A KR102453336B1 (ko) 2019-11-12 2019-11-12 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치

Country Status (2)

Country Link
US (1) US11922302B2 (ko)
KR (1) KR102453336B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4180088A1 (en) * 2021-11-16 2023-05-17 Koninklijke Philips N.V. A machine learning based system for generating objective functions for radiation therapy treatment planning

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017228068A (ja) * 2016-06-22 2017-12-28 富士通株式会社 機械学習管理プログラム、機械学習管理方法および機械学習管理装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9305256B2 (en) * 2013-10-02 2016-04-05 Qualcomm Incorporated Automated method for modifying neural dynamics
US20160328644A1 (en) * 2015-05-08 2016-11-10 Qualcomm Incorporated Adaptive selection of artificial neural networks
US10423879B2 (en) * 2016-01-13 2019-09-24 International Business Machines Corporation Efficient generation of stochastic spike patterns in core-based neuromorphic systems
US11216722B2 (en) * 2016-12-31 2022-01-04 Intel Corporation Hardware accelerator template and design framework for implementing recurrent neural networks
US10360517B2 (en) * 2017-02-22 2019-07-23 Sas Institute Inc. Distributed hyperparameter tuning system for machine learning
KR102107378B1 (ko) * 2017-10-31 2020-05-07 삼성에스디에스 주식회사 하이퍼파라미터 자동 최적화 방법 및 그 장치
EP3716160B1 (en) * 2019-03-26 2024-07-31 Robert Bosch GmbH Learning parameters of a probabilistic model comprising gaussian processes
JP2020201871A (ja) * 2019-06-13 2020-12-17 ファナック株式会社 診断装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017228068A (ja) * 2016-06-22 2017-12-28 富士通株式会社 機械学習管理プログラム、機械学習管理方法および機械学習管理装置

Also Published As

Publication number Publication date
US20210142162A1 (en) 2021-05-13
US11922302B2 (en) 2024-03-05
KR20210057430A (ko) 2021-05-21

Similar Documents

Publication Publication Date Title
Huang et al. Recurrent graph convolutional network-based multi-task transient stability assessment framework in power system
CN108108832B (zh) 一种基于无线传感器网络的油罐车油气泄漏智能监测系统
Gu et al. Feature selection for transient stability assessment based on kernelized fuzzy rough sets and memetic algorithm
Koohi et al. Optimizing particle swarm optimization algorithm
Jagtap et al. Comparison of extreme-ANFIS and ANFIS networks for regression problems
Nápoles et al. Recurrence-aware long-term cognitive network for explainable pattern classification
Li et al. Radar emitter recognition based on deep learning architecture
KR102453336B1 (ko) 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치
Qiao et al. Analog circuits for mixed-signal neuromorphic computing architectures in 28 nm FD-SOI technology
Abiyev et al. Identification and control of dynamic plants using fuzzy wavelet neural networks
Chong et al. Load prediction using support vector regression
Wu et al. Automatic fuzzy model identification for short-term load forecast
Dong et al. Reinforcement Learning-Based Wind Farm Control: Toward Large Farm Applications via Automatic Grouping and Transfer Learning
Márquez et al. A scalable evolutionary linguistic fuzzy system with adaptive defuzzification in big data
Xu et al. An improved ELM-WOA–based fault diagnosis for electric power
Juuso Tuning of large-scale linguistic equation (LE) models with genetic algorithms
Terziyska A distributed adaptive neuro-fuzzy network for chaotic time series prediction
Zhang The application of imperialist competitive algorithm based on chaos theory in perceptron neural network
Shivakumar et al. Power system stability enhancement using bio inspired genetic and PSO algorithm implementation
Hu et al. Training A Dynamic Neural Network to Detect False Data Injection Attacks Under Multiple Unforeseen Operating Conditions
Norani et al. Logic Learning in Adaline Neural Network.
Huong et al. A multi-objective ensemble learning approach based on the non-dominated sorting differential evolution for forecasting currency exchange rates
Mahboob et al. An improved version of the SIPO algorithm with fast convergence speed
CN113054653A (zh) 基于VGGNet-SVM的电力系统暂态稳定评估方法
CN114943329B (zh) 基于忆阻器的可片上强化学习脉冲gan模型及设计方法

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