KR102553366B1 - Spiking Neural Network-Based Component Generating System for Intelligent Application IoT - Google Patents

Spiking Neural Network-Based Component Generating System for Intelligent Application IoT Download PDF

Info

Publication number
KR102553366B1
KR102553366B1 KR1020200159398A KR20200159398A KR102553366B1 KR 102553366 B1 KR102553366 B1 KR 102553366B1 KR 1020200159398 A KR1020200159398 A KR 1020200159398A KR 20200159398 A KR20200159398 A KR 20200159398A KR 102553366 B1 KR102553366 B1 KR 102553366B1
Authority
KR
South Korea
Prior art keywords
neural network
iot
model
file
compatibility
Prior art date
Application number
KR1020200159398A
Other languages
Korean (ko)
Other versions
KR20220071821A (en
Inventor
정진만
윤영선
김서연
김재희
정재혁
Original Assignee
한남대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한남대학교 산학협력단 filed Critical 한남대학교 산학협력단
Priority to KR1020200159398A priority Critical patent/KR102553366B1/en
Publication of KR20220071821A publication Critical patent/KR20220071821A/en
Application granted granted Critical
Publication of KR102553366B1 publication Critical patent/KR102553366B1/en

Links

Images

Classifications

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

Landscapes

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

Abstract

본 발명은 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템에 관한 것으로서, 더욱 상세하게는 IoT 개발자에게 IoT 플랫폼과 호환 가능한 SNN(Spiking Neural Network) 모델을 포함하는 지능형 컴포넌트의 생성 기능을 제공하여 기존 IoT 응용프로그램의 SNN 모델 적용뿐만 아니라 뉴로모픽 하드웨어와의 연동이 가능한 컴포넌트 생성시스템에 대한 것이다.The present invention relates to a spiking neural network-based component generation system for intelligent application IoT, and more particularly, by providing an IoT developer with a function of generating an intelligent component including a Spiking Neural Network (SNN) model compatible with an IoT platform, It is about a component generation system that can be linked with neuromorphic hardware as well as applying the SNN model of IoT applications.

Description

지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템 {Spiking Neural Network-Based Component Generating System for Intelligent Application IoT}Spiking Neural Network-Based Component Generating System for Intelligent Application IoT}

본 발명은 스파이킹 신경망 기반 컴포넌트 생성시스템에 관한 것으로서, 더욱 상세하게는 IoT 개발자에게 IoT 플랫폼과 호환 가능한 SNN(Spiking Neural Network) 모델을 포함하는 지능형 컴포넌트의 생성 기능을 제공하여 기존 IoT 응용프로그램의 SNN 모델 적용뿐만 아니라 뉴로모픽 하드웨어와의 연동이 가능한 컴포넌트 생성시스템에 대한 것이다.The present invention relates to a spiking neural network-based component generation system, and more particularly, to IoT developers by providing a function of generating an intelligent component including a Spiking Neural Network (SNN) model compatible with an IoT platform, thereby providing an SNN of existing IoT applications. It is about a component generation system that can be linked with neuromorphic hardware as well as model application.

IoT(사물인터넷, Internet of Things)란 4차 산업혁명의 핵심 개념으로서 모든 사물이 인터넷으로 연결되는 것을 말한다. 즉, 스마트폰, 가전제품, 헬스케어, 자율주행 자동차, 스마트홈, 스마트팩토리, 스마트팜 등에 사용되는 다양한 스마트기기를 인터넷으로 연결하여 정보를 통합 관리하는 것이다.IoT (Internet of Things) is a core concept of the 4th industrial revolution, meaning that all things are connected to the Internet. In other words, information is integrated and managed by connecting various smart devices used in smart phones, home appliances, healthcare, self-driving cars, smart homes, smart factories, and smart farms through the Internet.

이러한 IoT는 사물의 상태를 전달하는 연결형 사물인터넷의 제한된 기능에서 발전해, 다른 IoT 기기들과 상호 소통하며 주변 상황 인지와 자율적 대응까지 수행하는 방향으로 발전하고 있는 추세이다.IoT has developed from the limited function of the connected IoT that conveys the state of things, and is developing in the direction of communicating with other IoT devices, recognizing the surrounding situation, and even autonomously responding.

특히 IoT 엣지 서비스의 성능 향상을 위한 하드웨어 기반 접근방식은 뉴로모픽 하드웨어를 이용한 데이터 처리가 가능해질 것이라는 전망이 강하다. 따라서 뉴로모픽 하드웨어를 포함한 다양한 하드웨어와 결합된 프레임워크를 지원하는 것이 필수적이 되었다.In particular, the hardware-based approach to improve the performance of IoT edge services has a strong prospect that data processing using neuromorphic hardware will be possible. Therefore, it has become essential to support a framework combined with various hardware, including neuromorphic hardware.

이때, 뉴로모픽 하드웨어는 신경망(Neural Network) 구조를 사용하는데, 신경망은 인간이 뇌를 통해 문제를 처리하는 방법과 비슷한 방법으로 문제를 해결하기 위해 컴퓨터에서 채택하고 있는 구조를 말한다.At this time, the neuromorphic hardware uses a neural network structure, which refers to a structure adopted by computers to solve problems in a similar way to how humans process problems through the brain.

인간의 뇌가 기본 구조 조직인 뉴런이 서로 연결되어 일을 처리하는 것처럼, 수학적 모델로서의 뉴런이 상호 연결되어 네트워크를 형성할 때 이를 신경망이라 한다. 이를 생물학적인 신경망과 구별하여 특히 인공신경망이라고도 한다.Just as neurons, the basic structural organization of the human brain, are connected to each other to process work, when neurons as a mathematical model are interconnected to form a network, it is called a neural network. It is also called an artificial neural network to distinguish it from a biological neural network.

신경망은 각 뉴런이 독립적으로 동작하는 처리기의 역할을 하기 때문에 병렬성이 뛰어나고, 많은 연결선에 정보가 분산되어 있기 때문에 몇몇 뉴런에 문제가 발생하더라도 전체 시스템에 큰 영향을 주지 않으므로 결함 허용(fault tolerance) 능력이 있으며, 주어진 환경에 대한 학습 능력이 있다.A neural network has excellent parallelism because each neuron acts as a processor that operates independently, and since information is distributed over many connection lines, even if a problem occurs in a few neurons, it does not significantly affect the entire system, so it has fault tolerance. and has the ability to learn about a given environment.

더불어. 신경망의 최신 모델인 SNN(Spiking Neural Network)은 기존의 신경망에 생물학적인 개념을 도입한 차세대 인공신경망 모델이다. SNN에서는 뇌 신경세포인 뉴런의 스파이크(spike) 전달 및 처리 과정을 모방한 3세대 인공신경망 모델로 기존 딥러닝 모델들의 문제점을 해결한 모델이다.together. SNN (Spiking Neural Network), the latest model of neural networks, is a next-generation artificial neural network model that introduces biological concepts to existing neural networks. SNN is a 3rd-generation artificial neural network model that mimics the spike delivery and processing of neurons, which are brain nerve cells, and is a model that solves the problems of existing deep learning models.

그러나 종래의 IoT 프레임워크는 이러한 신경망을 사용하는 머신러닝을 지원하지 않는다. 더욱이 SNN 모델을 지원하기 위한 뉴로모픽 하드웨어와 호환되지 않아 이를 활용하기는 어렵다. 또한 복잡한 구조의 생물학적 지식을 요구하는 차세대 인공신경망 모델인 SNN 프레임워크를 IoT 개발자들이 복잡한 구조와 매개변수 때문에 SNN 프레임워크의 내부를 이해하기 어려워 이를 IoT에 적용하기 어렵다는 문제가 있었다. 이러한 문제로 인하여 기존 IoT 응용프로그램에서의 SNN 프레임워크 적용이 전무한 실정이다.However, conventional IoT frameworks do not support machine learning using such neural networks. Moreover, it is difficult to utilize it because it is not compatible with neuromorphic hardware for supporting SNN models. In addition, there was a problem that it was difficult for IoT developers to understand the inside of the SNN framework due to its complex structure and parameters, making it difficult to apply it to IoT. Due to these problems, there is no application of SNN framework in existing IoT applications.

이러한 문제를 해결하기 위해 IoT 응용프로그램과 인공신경망 모델 프레임워크 사이의 호환성을 제공하는 개발도구의 필요성이 점차 대두되고 있었다.In order to solve these problems, the need for development tools that provide compatibility between IoT applications and artificial neural network model frameworks has been gradually emerging.

한국공개특허 제10-2017-0094355호(2017.08.17. 공개)Korean Patent Publication No. 10-2017-0094355 (published on August 17, 2017)

이와 같은 문제를 해결하기 위해 안출된 본 발명은 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템에 관한 것으로서, 더욱 상세하게는 IoT 개발자에게 IoT 플랫폼과 호환 가능한 SNN(Spiking Neural Network) 모델을 포함하는 지능형 컴포넌트의 생성 기능을 제공하여 기존 IoT 응용프로그램의 SNN 모델 적용뿐만 아니라 뉴로모픽 하드웨어와의 연동이 가능한 컴포넌트 생성시스템에 대한 것이다.The present invention, conceived to solve this problem, relates to a spiking neural network-based component generation system for intelligent application IoT, and more specifically, provides IoT developers with a Spiking Neural Network (SNN) model compatible with the IoT platform. It is about a component creation system that provides a function of generating intelligent components and can be linked with neuromorphic hardware as well as applying the SNN model of existing IoT applications.

상기한 바와 같은 목적을 달성하기 위한 본 발명의 일실시예에 따른 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템은, Spiking neural network-based component generation system for intelligent application IoT according to an embodiment of the present invention for achieving the above object,

뉴런의 필수적인 파라미터를 습득하는 파라미터 관리부(100); 및a parameter management unit 100 that acquires essential parameters of neurons; and

상기 파라미터 관리부(100)에서 생성된 모델을 실행 환경의 코드로 변환하여 컴포넌트를 생성하는 모델 생성부(200)로 구성될 수 있다.It may be configured with a model generation unit 200 that converts the model generated by the parameter management unit 100 into code of an execution environment to generate a component.

이때, 상기 파라미터 관리부(100)는 뉴런모델 정의정보를 습득하는 뉴런모델 파라미터 습득수단(110), 신경망 학습정보를 습득하는 트레이닝 파라미터 습득수단(120), 신경망 레이어정보를 습득하는 레이어환경 습득수단(130)로 구성되되,At this time, the parameter management unit 100 includes a neuron model parameter acquisition unit 110 for acquiring neuron model definition information, a training parameter acquisition unit 120 for acquiring neural network learning information, and a layer environment acquisition unit for acquiring neural network layer information ( 130), but

상기 파라미터 관리부(100)의 인터페이스는 GUI로 구성될 수 있다.The interface of the parameter management unit 100 may be composed of a GUI.

또한, 상기 모델 생성부(200)에서 생성된 컴포넌트는, 생성된 컴포넌트의 모델이름, 모델버전 및 모델제작자의 정보를 포함하는 기본정보파일(211) 및 생성된 컴포넌트의 실행파일로 모델의 수행작업을 정의하는 기능수행파일(212)로 구성되는 컴포넌트파일(210)과, In addition, the component generated by the model generation unit 200 is a basic information file 211 including the model name, model version, and information of the model maker of the generated component, and an executable file of the generated component. A component file 210 composed of a function execution file 212 defining

생성된 컴포넌트의 구현 파일로 기계학습이 적용되는 경우 신경망(Neural Network) 작업을 수행하는 어플리케이션파일(220)로 구성될 수 있다.When machine learning is applied as an implementation file of the generated component, it may be composed of an application file 220 that performs a neural network operation.

더불어, 상기 컴포넌트파일(210)은 상기 기본정보파일(211) 및 상기 기능수행파일(212)이 IoT 프레임워크와 호환이 가능할 수 있다.In addition, in the component file 210, the basic information file 211 and the function execution file 212 may be compatible with the IoT framework.

또한, 상기 어플리케이션파일(220)은 외부 머신러닝 플랫폼과의 호환성을 제공하는 플랫폼호환성제공수단(221)과, 뉴로모픽 하드웨어와의 호환성을 제공하는 하드웨어호환성제공수단(222)을 더 포함하여 구성될 수 있다.In addition, the application file 220 further includes a platform compatibility providing means 221 providing compatibility with an external machine learning platform and a hardware compatibility providing means 222 providing compatibility with neuromorphic hardware. It can be.

이때, 상기 모델 생성부(200)는 IoT 지원 및 응용 컴포넌트, ANN(Artificial Neural Network) 지원 컴포넌트 및 SNN(Spiking Neural Network) 지원 컴포넌트를 생성할 수 있다.At this time, the model generating unit 200 may generate an IoT support and application component, an Artificial Neural Network (ANN) support component, and a Spiking Neural Network (SNN) support component.

본 발명의 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템은, IoT 개발자가 기기에 복잡한 구조의 생물학적 지식을 요구하는 차세대 인공신경망 모델인 SNN를 사용하는 응용프로그램을 제작함에 있어, SNN 모델의 생물학적 구조 및 복잡한 처리 과정에 대한 지식 없이도 간단한 GUI를 통하여 필요한 값을 입력받아 IoT 응용프로그램을 위한 지능형 컴포넌트를 자동으로 생성할 수 있어 IoT 개발자의 개발 환경을 개선해주며, IoT 응용프로그램에 인공지능 서비스를 보다 쉽게 적용할 수 있다.The spiking neural network-based component generation system for the intelligent application IoT of the present invention provides IoT developers with biological knowledge of the SNN model in creating applications using SNN, a next-generation artificial neural network model that requires biological knowledge of a complex structure in a device. It improves the development environment for IoT developers by receiving necessary values through a simple GUI and automatically generating intelligent components for IoT applications without knowledge of structures and complex processing processes, and provides more AI services to IoT applications. Easy to apply.

더불어, 플랫폼호환수단을 통하여 PyTorch, Caffe2, TensorFlow 등과 같은 다양한 플랫폼과의 호환성을 제공하여 IoT 개발자에게 보다 개방된 개발환경을 제공하여 해당 IoT 응용프로그램의 효율을 높일 수 있다.In addition, compatibility with various platforms such as PyTorch, Caffe2, TensorFlow, etc. is provided through platform compatibility means to provide a more open development environment to IoT developers, thereby increasing the efficiency of the IoT application program.

또한, 하드웨어호환성제공수단을 통하여 Native Code를 제공하여 NengoDL, NAAL 등과 같은 뉴로모픽 하드웨어와의 호환성을 제공하여 IoT 응용프로그램이 보다 효율적인 머신러닝을 수행할 수 있는 환경을 제공할 수 있다.In addition, it is possible to provide an environment in which IoT applications can perform more efficient machine learning by providing compatibility with neuromorphic hardware such as NengoDL and NAAL by providing Native Code through a hardware compatibility providing means.

도 1은 본 발명의 시스템 구성도
도 2는 본 발명의 파라미터 관리부 구성도
도 3은 본 발명의 파라미터 관리부 일실시예
도 4는 본 발명의 모델 생성부 구성도
1 is a system configuration diagram of the present invention
2 is a configuration diagram of a parameter management unit of the present invention
3 is an embodiment of a parameter management unit of the present invention
4 is a block diagram of the model generation unit of the present invention

이하, 첨부된 도면을 참조하여 본 발명을 더욱 상세하게 설명한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정하여 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 또한, 사용되는 기술 용어 및 과학 용어에 있어서 다른 정의가 없다면, 이 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 통상적으로 이해하고 있는 의미를 가지며, 하기의 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 설명은 생략한다. 다음에 소개되는 도면들은 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 예로서 제공되는 것이다. 따라서, 본 발명은 이하 제시되는 도면들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 또한, 명세서 전반에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 도면들 중 동일한 구성요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의해야 한다. Hereinafter, the present invention will be described in more detail with reference to the accompanying drawings. Prior to this, the terms or words used in this specification and claims should not be construed as being limited to ordinary or dictionary meanings, and the inventor appropriately uses the concept of terms in order to explain his/her invention in the best way. Based on the principle that it can be defined, it should be interpreted as meaning and concept consistent with the technical spirit of the present invention. In addition, unless there is another definition in the technical terms and scientific terms used, they have meanings commonly understood by those of ordinary skill in the art to which this invention belongs, and the gist of the present invention is described in the following description and accompanying drawings. Descriptions of well-known functions and configurations that may be unnecessarily obscure are omitted. The drawings introduced below are provided as examples to sufficiently convey the spirit of the present invention to those skilled in the art. Accordingly, the present invention may be embodied in other forms without being limited to the drawings presented below. Also, like reference numerals denote like elements throughout the specification. It should be noted that like elements in the drawings are indicated by like numerals wherever possible.

도 1은 본 발명의 시스템 구성도이고, 도 2는 본 발명의 파라미터 관리부 구성도이며, 도 3은 본 발명의 파라미터 관리부 일실시예이며, 도 4는 본 발명의 모델 생성부 구성도이다.1 is a system configuration diagram of the present invention, FIG. 2 is a configuration diagram of a parameter management unit of the present invention, FIG. 3 is an embodiment of a parameter management unit of the present invention, and FIG. 4 is a configuration diagram of a model generation unit of the present invention.

본 발명의 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템은, 도 1에서 도시하고 있는 바와 같이, As shown in FIG. 1, the spiking neural network-based component generation system for intelligent application IoT of the present invention,

IoT 개발자에게 뉴런의 필수적인 파라미터를 습득하는 파라미터 관리부(100)와, 상기 파라미터 관리부에서 생성된 모델을 실행 환경의 코드로 변환하여 컴포넌트를 생성하는 모델 생성부(200)로 구성될 수 있다.It can be composed of a parameter management unit 100 that acquires essential parameters of neurons for IoT developers, and a model generation unit 200 that converts the models generated by the parameter management unit into codes of an execution environment to create components.

이때, 상기 파라미터 관리부(100)는 뉴런모델정의정보를 습득하는 뉴런모델 파라미터 습득수단(110)과, 신경망 학습정보를 습득하는 트레이닝 파라미터 습득수단(120)과, 신경망 레이어정보를 습득하는 레이어환경 습득수단(130)로 구성될 수 있다.At this time, the parameter management unit 100 includes a neuron model parameter acquisition means 110 for acquiring neuron model definition information, a training parameter acquisition means 120 for acquiring neural network learning information, and a layer environment acquisition for acquiring neural network layer information. It may consist of means (130).

즉, 종래에는 IoT 개발자가 IoT 응용프로그램에 머신러닝과 같은 신경망 플랫폼을 사용하는 기능을 추가하기 위해서는 신경망 모델이 갖는 깊은 생물학적 구조와 동작 및 처리 과정에 대한 지식을 추가적으로 습득하여 해당 신경망모델의 적용을 위한 컴포넌트를 원하는 플랫폼에 맞추어 직접 제작하여야 했다. That is, conventionally, in order for an IoT developer to add a function using a neural network platform such as machine learning to an IoT application, knowledge of the deep biological structure, operation, and processing of a neural network model is additionally acquired and the application of the corresponding neural network model is implemented. components for the desired platform had to be produced by hand.

이는 IoT 개발자에게 장시간의 학습과 개발시간을 소요하게 만들어 IoT 응용프로그램 전체 개발시간을 늘리는 악영향을 줄 수밖에 없었다.This inevitably had an adverse effect of increasing the entire development time of the IoT application by making IoT developers spend a long time learning and developing.

그러나 본 발명의 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템은 IoT 개발자가 신경망 모델을 이해하지 못하여도 모델 형성에 필수적인 값을 상기 파라미터 관리부(100)에 입력함으로써, 최신 신경망 모델인 SNN(Spiking Neural Network) 모델 적용에 필요한 컴포넌트를 상기 모델 생성부(200)에서 생성함으로써 별도의 작업 없이도 SNN 모델이 적용된 IoT 응용프로그램을 개발할 수 있다.However, the spiking neural network-based component generation system for the intelligent application IoT of the present invention provides the latest neural network model, SNN (Spiking Neural Network) An IoT application to which the SNN model is applied can be developed without additional work by generating components necessary for application of the model in the model generator 200.

특히, 상기 뉴런모델 파라미터 습득수단(110), 상기 트레이닝 파라미터 습득수단(120) 및 상기 레이어환경 습득수단(130)에서 IoT 개발자에게 뉴런모델 정의에 필요한 필수 정보들을 요구하고, 해당 정보들을 반영한 뉴런모델 정의 및 환경설정을 위한 세부정보를 입력받아 IoT 개발자가 개발하고 있는 IoT 응용프로그램에 최적화된 뉴런모델을 생성할 수 있다.In particular, the neuron model parameter acquisition means 110, the training parameter acquisition means 120, and the layer environment acquisition means 130 request essential information necessary for defining a neuron model from an IoT developer, and a neuron model reflecting the corresponding information. By receiving detailed information for definition and environment setting, IoT developers can create neuron models optimized for the IoT application they are developing.

따라서 IoT 개발자가 IoT 응용프로그램에 보다 쉽게 SNN 모델을 적용할 수 있어 다양한 활용이 가능하며, 신경망 모델이 갖는 깊은 생물학적 구조와 동작 및 처리 과정에 대한 지식을 추가적으로 습득하고, 호환성을 맞추어 개발하기 위한 개발기간을 단축시킬 수 있어 전체 IoT 응용프로그램 개발기간을 단축할 수 있다.Therefore, IoT developers can more easily apply SNN models to IoT applications, enabling various uses, additionally acquiring knowledge about the deep biological structure, operation, and processing process of neural network models, and development for compatibility. It can shorten the development period of the entire IoT application program.

또한 이러한 특성을 이용하여, Core Neural Network 라이브러리를 구현하고 성능을 측정하며, 다양한 개방형 IoT 프레임워크에 적용하여 에너지 소비와 대기시간의 효율성을 향상시키는 뉴로모픽 아키텍처 하드웨어를 이용한 에지 컴퓨팅 응용 개발도 지원 가능하다.In addition, using these characteristics, it implements the Core Neural Network library, measures its performance, and applies it to various open IoT frameworks to support edge computing application development using neuromorphic architecture hardware that improves energy consumption and latency efficiency. possible.

이때, 상기 파라미터 관리부(100)의 인터페이스는 GUI로 구성될 수 있다. 따라서 일반적으로 Text로만 구성된 인터페이스를 이용하여 개발할 경우 발생할 수 있는 개발자의 휴먼에러 요소를 최소화 하여 보다 빠르고 정확하게 응용프로그램을 개발할 수 있다.At this time, the interface of the parameter management unit 100 may be composed of a GUI. Therefore, it is possible to develop an application program more quickly and accurately by minimizing the human error factor of the developer that may occur when developing using an interface composed of text only.

더불어, 상기 파라미터 관리부(100)의 인터페이스는 와이어프레임 형태의 인터페이스를 제공할 수 있다. 이를 통하여 IoT 개발자는 신경망 설정에 있어 보다 쉽게 인지할 수 있으며, 신경망 모델의 전체적인 특성을 보다 쉽게 인식할 수 있어 작업의 효율을 높일 수 있다.In addition, the interface of the parameter management unit 100 may provide a wireframe type interface. Through this, IoT developers can more easily recognize the setting of the neural network, and can more easily recognize the overall characteristics of the neural network model, increasing work efficiency.

또한 도 1 내지 도 4에서 도시한 바와 같이, 상기 모델 생성부(200)에서 생성된 컴포넌트는 생성된 컴포넌트의 모델이름, 모델버전, 모델제작자의 정보 등을 포함하는 기본정보파일(211) 및 생성된 컴포넌트의 실행파일로 모델의 수행작업을 정의하는 기능수행파일(212)로 구성되는 컴포넌트파일(210)과, 생성된 컴포넌트의 구현 파일로 기계학습이 적용되는 경우 신경망작업을 수행하는 어플리케이션파일(220)로 구성될 수 있다.In addition, as shown in FIGS. 1 to 4, the components generated by the model generation unit 200 include a basic information file 211 including the model name, model version, information of the model maker, and the like of the generated component. The component file 210 composed of the function execution file 212 defining the operation of the model as an executable file of the generated component, and the application file that performs the neural network operation when machine learning is applied as the implementation file of the generated component ( 220).

즉, 상기 모델 생성부(200)에서 생성된 파일은 상기 컴포넌트파일(210) 및 상기 어플리케이션파일(220)로 나눌 수 있다. That is, the file generated by the model generator 200 can be divided into the component file 210 and the application file 220 .

이때, 상기 컴포넌트파일(210)은 모델이름, 모델버전, 모델제작자의 정보와 같은 해당 모델의 기본적인 제작정보를 담고 있는 상기 기본정보파일(211)과, 컴포넌트의 실행파일로 모델의 수행작업을 정의하는 기능수행파일(212)로 구성된다. 더불어, 상기 컴포넌트파일(210)은 상기 기본정보파일(211) 및 상기 기능수행파일(212)이 IoT 프레임워크와 호환이 가능할 수 있다.At this time, the component file 210 is the basic information file 211 containing basic production information of the model, such as model name, model version, and information of the model maker, and the execution file of the component, which defines the operation of the model. It is composed of a function execution file 212 that does. In addition, in the component file 210, the basic information file 211 and the function execution file 212 may be compatible with the IoT framework.

따라서 노드 RED와 같은 플랫폼에서 상기 기본정보파일(211)을 통해 신경망 모델의 정보를 확인하고, 상기 기능수행파일(212)을 통해 수행작업을 확인하여 머신러닝을 실시할 수 있다. 여기서, 노드 RED는 노드를 포함하는 흐름을 구성하는 흐름 기반 프로그래밍 툴로서 Python과 Node.js를 사용하는 Node.js 엔진과 결합되어 웹 브라우저 기반의 편집기를 제공하며, 개발자들은 팔레트에서 노드를 끌어서 쉽게 응용프로그램을 만들 수 있는 플랫폼이다.Therefore, on a platform such as Node RED, machine learning can be performed by checking the information of the neural network model through the basic information file 211 and checking the operation through the function execution file 212. Here, Node RED is a flow-based programming tool that composes flows containing nodes. It is combined with the Node.js engine using Python and Node.js to provide a web browser-based editor, and developers can easily drag and drop nodes from the palette. It is a platform for building applications.

더불어, 상기 모델 생성부(200)는 생성된 신경망 모델의 구동을 테스트 해볼 수 있는 샌드박스를 더 포함하여 구성될 수 있다.In addition, the model generation unit 200 may further include a sandbox capable of testing the operation of the generated neural network model.

즉, 상기 모델 생성부(200)를 통하여 신경망 모델을 생성하고, 생성된 신경망 모델이 IoT 개발자가 의도한 기능을 구현하여 응용프로그램과 연결되어 제대로 구동되는지 테스트할 수 있다. 따라서 IoT 개발자에게 미리 테스트를 진행하여 문제여부를 미리 확인하여 개발 중간에 문제가 발견되어 개발 기간이 늘어지는 것을 미연에 방지할 수 있다. That is, it is possible to generate a neural network model through the model generating unit 200, and test whether the generated neural network model implements the function intended by the IoT developer and is connected to an application program and properly operated. Therefore, it is possible to prevent an increase in the development period due to a problem being discovered in the middle of development by conducting a test in advance to the IoT developer to check for problems in advance.

또한, 상기 어플리케이션파일(220)은 외부 머신러닝 플랫폼과의 호환성을 제공하는 플랫폼호환성제공수단(221)과, 뉴로모픽 하드웨어와의 호환성을 제공하는 하드웨어호환성제공수단(222)을 더 포함하여 구성될 수 있다.In addition, the application file 220 further includes a platform compatibility providing means 221 providing compatibility with an external machine learning platform and a hardware compatibility providing means 222 providing compatibility with neuromorphic hardware. It can be.

상기 플랫폼호환성제공수단(221)은 PyTorch, Caffe2, Tensorflow와 같은 서로 다른 신경망 프레임워크 환경에서 본 발명의 컴포넌트가 호환되게 사용할 수 있도록 만들 수 있다. The platform compatibility providing means 221 can make the components of the present invention compatible with different neural network framework environments such as PyTorch, Caffe2, and Tensorflow.

일반적으로 특정 신경망 프레임워크 환경을 사용하기 위해서는 해당 신경망 프레임워크에 맞추어 작업을 해야 했으나, 상기 플랫폼호환성제공수단(221)을 통하여 본 발명의 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템은 IoT 개발자가 미리 설정한 신경망 프레임워크에 맞추어 호환성을 제공할 수 있다. 이를 통해 IoT 개발자는 별도의 작업 없이도 각각의 플랫폼에 대한 호환성을 확보할 수 있어 작업효율을 극대화 할 수 있다.In general, in order to use a specific neural network framework environment, it was necessary to work according to the corresponding neural network framework, but through the platform compatibility providing means 221, the spiking neural network-based component generation system for the intelligent application IoT of the present invention is an IoT developer It can provide compatibility according to the neural network framework set in advance. Through this, IoT developers can secure compatibility for each platform without separate work, maximizing work efficiency.

또한 하드웨어호환성제공수단(222)을 통하여 Native Code를 제공하여 NengoDL, NAAL와 같은 뉴로모픽 하드웨어와의 호환성을 제공하여 IoT 응용프로그램이 보다 효율적인 머신러닝을 수행할 수 있는 환경을 제공할 수 있다.In addition, native code is provided through the hardware compatibility providing means 222 to provide compatibility with neuromorphic hardware such as NengoDL and NAAL, thereby providing an environment in which IoT applications can perform more efficient machine learning.

아울러 상기 모델 생성부(200)는 IoT 지원 및 응용 컴포넌트, ANN(Artificial Neural Network) 지원 컴포넌트 및 SNN 지원 컴포넌트를 생성할 수 있다. 이와 같은 상기 모델 생성부(200)의 특성을 통하여, 다양한 포맷에 대응되는 컴포넌트를 생성할 수 있어 IoT 개발자의 응용프로그램 개발 효율을 높일 수 있다.In addition, the model generation unit 200 may generate IoT support and application components, ANN (Artificial Neural Network) support components, and SNN support components. Through the characteristics of the model generation unit 200 as described above, it is possible to generate components corresponding to various formats, thereby increasing the efficiency of application program development by IoT developers.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것 일뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with specific details such as specific components and limited embodiment drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments, Those skilled in the art in the field to which the present invention pertains can make various modifications and variations from these descriptions.

따라서 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허 청구 범위뿐 아니라 이 특허 청구 범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims to be described later, but also all modifications equivalent or equivalent to the scope of the claims belong to the scope of the present invention.

100: 파라미터 관리부
110: 뉴런모델 파라미터 습득수단
120: 트레이닝 파라미터 습득수단
130: 레이어환경 습득수단
200: 모델 생성부
210: 컴포넌트파일
211: 기본정보파일 212: 기능수행파일
220: 어플리케이션파일
221: 플랫폼호환성제공수단 222: 하드웨어호환성제공수단
100: parameter management unit
110: means for acquiring neuron model parameters
120: training parameter acquisition means
130: layer environment acquisition means
200: model generation unit
210: component file
211: basic information file 212: function execution file
220: application file
221: means for providing platform compatibility 222: means for providing hardware compatibility

Claims (6)

뉴런의 필수적인 파라미터를 습득하는 파라미터 관리부(100); 및
상기 파라미터 관리부에서 생성된 모델을 실행 환경의 코드로 변환하여 컴포넌트를 생성하는 모델 생성부(200);를 포함하는 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템에 있어서,
상기 파라미터 관리부(100)는
뉴런모델정의정보를 습득하는 뉴런모델 파라미터 습득수단(110)과,
신경망 학습정보를 습득하는 트레이닝 파라미터 습득수단(120)과,
신경망 레이어정보를 습득하는 레이어환경 습득수단(130)로 구성되고,
상기 모델 생성부(200)에서 생성된 컴포넌트는
생성된 컴포넌트의 모델이름, 모델버전 및 모델제작자의 정보를 포함하는 기본정보파일(211) 및
생성된 컴포넌트의 실행파일로 모델의 수행작업을 정의하는 기능수행파일(212)로 구성되는 컴포넌트파일(210)과,
생성된 컴포넌트의 구현 파일로 기계학습이 적용되는 경우 신경망작업을 수행하는 어플리케이션파일(220)로 구성되며,
상기 어플리케이션파일(220)은
외부 머신러닝 플랫폼과의 호환성을 제공하는 플랫폼호환성제공수단(221)과,
뉴로모픽 하드웨어와의 호환성을 제공하는 하드웨어호환성제공수단(222)을 포함하고,
상기 모델 생성부(200)는
IoT 지원 및 응용 컴포넌트, ANN(Artifical Neural Network) 지원 컴포넌트 및 SNN 지원 컴포넌트를 생성하며,
신경망 모델 형성에 필수적인 값을 상기 파라미터 관리부(100)에 입력하고, 신경망 모델 적용에 필요한 컴포넌트를 상기 모델 생성부(200)에서 생성함으로써, 신경망 모델이 적용된 IoT 응용프로그램을 개발하고,
상기 플랫폼호환성제공수단을 통하여 다양한 플랫폼과의 호환성을 제공하여 해당 IoT 응용프로그램의 효율을 높이며,
상기 하드웨어호환성제공수단을 통하여 뉴로모픽 하드웨어와의 호환성을 제공하여 IoT 응용프로그램이 효율적인 머신러닝을 수행하는 것을 특징으로 하는 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템.
a parameter management unit 100 that acquires essential parameters of neurons; and
In the spiking neural network-based component creation system for intelligent application IoT including;
The parameter management unit 100
Neuron model parameter acquisition means 110 for acquiring neuron model definition information;
Training parameter acquisition means 120 for acquiring neural network learning information;
Consists of a layer environment acquisition means 130 for acquiring neural network layer information,
The components created by the model generating unit 200 are
A basic information file 211 including the model name of the generated component, the model version, and information of the model maker, and
A component file 210 composed of a function execution file 212 defining the operation of the model as an executable file of the generated component;
It is an implementation file of the generated component and consists of an application file 220 that performs neural network work when machine learning is applied.
The application file 220 is
A platform compatibility providing means 221 for providing compatibility with an external machine learning platform;
Includes hardware compatibility providing means 222 for providing compatibility with neuromorphic hardware;
The model generator 200
Create IoT support and application components, ANN (Artifical Neural Network) support components and SNN support components,
Develop an IoT application to which a neural network model is applied by inputting essential values for forming a neural network model into the parameter management unit 100 and generating components necessary for applying the neural network model in the model generating unit 200,
Through the platform compatibility providing means, compatibility with various platforms is provided to increase the efficiency of the IoT application program,
A spiking neural network-based component generation system for intelligent application IoT, characterized in that the IoT application program performs efficient machine learning by providing compatibility with neuromorphic hardware through the hardware compatibility providing means.
삭제delete 삭제delete 제1항에 있어서,
상기 컴포넌트파일(210)은
상기 기본정보파일(211) 및 상기 기능수행파일(212)이 IoT 프레임워크와 호환이 가능한 것을 특징으로 하는 지능형 응용 IoT를 위한 스파이킹 신경망 기반 컴포넌트 생성시스템.
According to claim 1,
The component file 210 is
Spiking neural network-based component creation system for intelligent application IoT, characterized in that the basic information file 211 and the function execution file 212 are compatible with the IoT framework.
삭제delete 삭제delete
KR1020200159398A 2020-11-24 2020-11-24 Spiking Neural Network-Based Component Generating System for Intelligent Application IoT KR102553366B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200159398A KR102553366B1 (en) 2020-11-24 2020-11-24 Spiking Neural Network-Based Component Generating System for Intelligent Application IoT

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200159398A KR102553366B1 (en) 2020-11-24 2020-11-24 Spiking Neural Network-Based Component Generating System for Intelligent Application IoT

Publications (2)

Publication Number Publication Date
KR20220071821A KR20220071821A (en) 2022-05-31
KR102553366B1 true KR102553366B1 (en) 2023-07-06

Family

ID=81787354

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200159398A KR102553366B1 (en) 2020-11-24 2020-11-24 Spiking Neural Network-Based Component Generating System for Intelligent Application IoT

Country Status (1)

Country Link
KR (1) KR102553366B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020210673A1 (en) 2019-04-10 2020-10-15 Cornell University Neuromorphic algorithm for rapid online learning and signal restoration

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10373062B2 (en) 2014-12-12 2019-08-06 Omni Ai, Inc. Mapper component for a neuro-linguistic behavior recognition system
KR102464490B1 (en) * 2018-11-26 2022-11-09 한국전자기술연구원 Spiking neural network device and intelligent apparatus comprising the same
KR20200084646A (en) * 2019-01-03 2020-07-13 한국전자통신연구원 System for machine learning service ui

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020210673A1 (en) 2019-04-10 2020-10-15 Cornell University Neuromorphic algorithm for rapid online learning and signal restoration

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Balaji et al. "Run-time mapping of spiking neural networks to neuromorphic hardware." Journal of Signal Processing Systems 92.11 (2020): 1293-1302.*
송상근 et al. "인공지능 기반의 TensorFlow 그래픽 사용자 인터페이스 개발에 관한 연구." 디지털융복합연구 16.5 (2018): 221-229.*

Also Published As

Publication number Publication date
KR20220071821A (en) 2022-05-31

Similar Documents

Publication Publication Date Title
Kirchhof et al. Model-driven digital twin construction: synthesizing the integration of cyber-physical systems with their information systems
De Farias et al. COMFIT: A development environment for the Internet of Things
WO2022110435A1 (en) Method, system and device for constructing power service simulation environment, and storage medium
CN105512304A (en) Method for generating internet applications on line, system integration method and supporting platform
Rumpe Agile test-based modeling
Garcia et al. Bootstrapping mde development from ros manual code-part 1: Metamodeling
CN113168564A (en) Method and system for generating artificial intelligence model
CN108563951A (en) Method for detecting virus and device
CN109753281B (en) Micro-grid energy management strategy visualization development tool based on graphical programming
Moin et al. Supporting AI engineering on the IoT edge through model-driven TinyML
KR102188044B1 (en) Framework system for intelligent application development based on neuromorphic architecture
KR102553366B1 (en) Spiking Neural Network-Based Component Generating System for Intelligent Application IoT
Richta et al. Petri Nets-Based Development of Dynamically Reconfigurable Embedded Systems.
Terzić et al. A model-driven approach to microservice software architecture establishment
Märtin et al. Patterns and models for automated user interface construction–in search of the missing links
Qi et al. ECHONET lite framework based on embedded component systems
Zhang et al. Establishing tool chains above the service cloud with integration models
Bordoni et al. Towards cyber-physical systems as services: the ASIP protocol
Marchese Conserving software-based artwork through software engineering
da Silva Orchestration for Automatic Decentralization in Visually-defined IoT
EP4231204A1 (en) System for developing and running applications in hybrid quantum computing networks
Brown et al. Software specification and prototyping technologies
Karsai From modeling to model-based programming
CN108984163A (en) A kind of multi-platform code generating method of isomery formula based on IMCL model
Novak et al. Semantic design and integration of simulation models in the industrial automation area

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