WO2020111356A1 - Spiking neural network device and intelligent device including same - Google Patents

Spiking neural network device and intelligent device including same Download PDF

Info

Publication number
WO2020111356A1
WO2020111356A1 PCT/KR2018/015188 KR2018015188W WO2020111356A1 WO 2020111356 A1 WO2020111356 A1 WO 2020111356A1 KR 2018015188 W KR2018015188 W KR 2018015188W WO 2020111356 A1 WO2020111356 A1 WO 2020111356A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
neural network
spiking neural
signal
spike
Prior art date
Application number
PCT/KR2018/015188
Other languages
French (fr)
Korean (ko)
Inventor
황태호
김병수
권진산
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Publication of WO2020111356A1 publication Critical patent/WO2020111356A1/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
    • 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

Definitions

  • the present invention relates to a neuromorphic technology, and more particularly, to a spiking neural network device for simplifying and modeling the signaling and learning system between neurons based on spiking and an intelligent device including the same.
  • Neuromorphic technology includes multiple pre-synaptic neurons, multiple post-synaptic neurons and multiple synapses.
  • the neural network software model such as existing deep learning is a model optimized for a back propagation algorithm and requires a large amount of data and high-performance computing resources for learning.
  • the network learned offline from the server is limited in terms of versatility because it is difficult to adapt to various environments in a situation where it is applied in the form of being loaded and executed in a small hardware language.
  • the technical problem to be achieved by the present invention is to simplify and integrate neuron models, synaptic models, and spike models studied in the neuromorphic field, and spies that support models of cognitive performance satisfactory in intelligent IoT devices through supervised and unsupervised learning. It is an object to provide a King Neural Network device and an intelligent device including the same.
  • the spiking neural network device receives multi-channel data, filters and normalizes the received data, converts it into multi-dimensional data, and features points of the converted multi-dimensional data.
  • Designed to generate a spike signal according to the strength of the signal by allocating a single neuron for each of the multi-dimensional data from which the pre-processing unit and the feature point are extracted, and each neuron is connected, and one synapse is allocated between the connected neurons, Includes a spiked neural network unit that compares a summation value with respect to a value of a synapse in which the spike signal is generated, and a preset threshold value, sends the spike signal, groups and classifies the exported spike signals, and clusters them. do.
  • the pre-processing unit a sensor interface unit that receives multi-channel data in real time, performs noise reduction on the data, amplifies the noise-removed data, normalizes it to data within a certain range, and converts it into the multi-dimensional data It characterized in that it comprises a signal processing unit and a feature point extraction unit for extracting the feature points by measuring the amount of change in the signal in the convolution operation or time window (convolution) operation or a time window (time window) section of the converted multi-dimensional data.
  • the spiking neural network unit one neuron is assigned to each dimension or time to the multidimensional data, and an input layer designed to generate a spike signal based on probability according to signal strength. It is configured, and allocates one synapse between the connected neurons, and when the sum value for the value of the synapse in which the spike signal is generated is higher than the threshold value, sends the spike signal, and when the threshold value is lower than the threshold value It characterized in that it comprises a hidden layer that does not emit a spike signal and an output layer that groups the exported spike signal to classify the data and outputs the result by clustering.
  • the hidden layer it characterized in that it is composed of a single layer or a fully connected (fully connected) multi-layer.
  • the output layer is characterized in that if there is labeled data among the grouped data, the spike signal is counted and mapped to the corresponding labeling group for output.
  • the spiking neural network unit is characterized by updating the weight value of the synapse by using a time difference between a spike signal emitted by a pre-neuron and a spike signal emitted by a post neuron.
  • the spiking neural network unit increases the weight by LTP (Long Term Potentiation) when the difference between the time at which the pre-neuron sends a spike signal and the time at which the post-neuron sends a spike signal is greater than 0, and the difference is less than 0. If small, it is characterized by making LTD (Long Term Digression).
  • LTP Long Term Potentiation
  • the intelligent device is a communication unit that performs communication with an external device, a sensor unit that measures at least one sensing data among environment information, image information, detection information, and recognition information using a plurality of sensors and is received from the communication unit
  • a control unit that receives the measured data and the sensing data measured from the sensor unit in a multi-channel, and performs learning and arithmetic processing using a spiking neural network device based on neuromorphic technology based on the received multi-channel data Including, the spiking neural network device, receiving the multi-channel data, filtering and normalizing the received data into multi-dimensional data, pre-processing to extract the feature points of the converted multi-dimensional data Designed to generate a spike signal according to the strength of a signal by allocating a single neuron for each of the multi-dimensional data from which the negative and the feature points are extracted, connecting each neuron, allocating one synapse between the connected neurons, and And a spiked neural network unit that compares a summation value with respect to a
  • the spiking neural network device of the present invention and the intelligent device including the same may support a simplified network model structure of spiking-based neurons.
  • STDP extreme frequency period-dependent plasticity
  • the present invention can simplify and integrate neuron models, synaptic models, and spike models, and support satisfactory recognition performance in intelligent IoT devices through supervised and unsupervised learning.
  • FIG. 1 is a view for explaining an intelligent device according to an embodiment of the present invention.
  • FIG. 2 is a diagram for describing a spiking neural network device according to an embodiment of the present invention.
  • FIG. 3 is a view for explaining synaptic neurons and spiking signals according to an embodiment of the present invention.
  • FIG. 4 is a view for explaining a histogram of the Poisson distribution according to an embodiment of the present invention.
  • FIG. 5 is a view for explaining a complete connection between layers according to an embodiment of the present invention.
  • FIG. 6 is a view for explaining a spiking snap neuron according to an embodiment of the present invention.
  • FIG. 7 is a view for explaining an extreme wave period dependent plasticity rule according to an embodiment of the present invention.
  • FIG. 8 is a view for explaining an operation on the MNIST data of the spiking neural network device according to an embodiment of the present invention.
  • FIG. 1 is a view for explaining an intelligent device according to an embodiment of the present invention.
  • the intelligent device 200 is an Internet of Things (IoT) device, and performs intelligent learning and arithmetic processing based on various data. That is, the intelligent device 200 can acquire various information in real time through communication with various devices through IoT communication as well as calculation through learning.
  • the intelligent device 200 may include a refrigerator, a TV, a robot cleaner, an air conditioner, a humidifier, an air cleaner, and the like.
  • the intelligent device 200 includes a communication unit 210, a sensor unit 220 and a control unit 230, and further includes an output unit 240 and a storage unit 250.
  • the communication unit 210 communicates with an external device.
  • the communication unit 210 may support IoT communication.
  • the communication unit 210 may receive data from various external devices or transmit data to the external devices.
  • the external device is a device supporting IoT communication, and may include a refrigerator, a TV, a robot cleaner, an air conditioner, a humidifier, and an air cleaner.
  • the sensor unit 220 includes a plurality of sensors, and uses it to measure sensing data of at least one of environmental information, sensing information, and cognitive information.
  • the sensor unit 220 may include a temperature sensor, a humidity sensor, an infrared sensor, a pressure sensor, a camera, a microphone, an electrocardiogram (ECG) sensor, and a heart rate (PPG) sensor.
  • ECG electrocardiogram
  • PPG heart rate
  • the control unit 230 may receive data received from the communication unit 210 and sensing data measured from the sensor unit 220 in real time.
  • the controller 230 performs learning and arithmetic processing using the spiking neural network (SNN) model 100 based on neuromorphic technology based on the received multi-channel data.
  • the controller 230 may perform data classification and clustering and association by performing learning and arithmetic processing through the spiking neural network device 100.
  • the detailed description of the spiking neural network device 100 will be described with reference to FIGS. 2 to 7.
  • the output unit 240 outputs the results of the learning and calculation processing through the control unit 230.
  • the output unit 240 may output in the form of an image, audio, or operation.
  • the output unit 240 may include various types of modules such as a display, a speaker, a transfer device, and a robot arm.
  • the storage unit 250 stores external data received from the communication unit 210 and sensing data measured from the sensor unit 220.
  • the storage unit 250 stores data learned from the control unit 230 and data that has been processed.
  • the storage unit 250 includes a flash memory type, a hard disk type, a media card micro type, and a card type memory (for example, SD or XD memory, etc.), RAM (Random Access Memory, RAM), SRAM (Static Random Access Memory), ROM (Read-Only Memory, ROM), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, It may include at least one storage medium among magnetic disks and optical disks.
  • FIG. 2 is a view for explaining a spiking neural network device according to an embodiment of the present invention
  • FIG. 3 is a view for explaining a synaptic neuron and a spiking signal according to an embodiment of the present invention
  • FIG. 4 is a present invention Is a diagram for explaining the histogram of the Poisson distribution according to an embodiment
  • Figure 5 is a view for explaining the complete connection between the layers according to an embodiment of the present invention
  • Figure 6 is a spike according to an embodiment of the present invention
  • FIG. 7 is a diagram for explaining snaptic neurons
  • FIG. 7 is a diagram for explaining extreme wave duration dependent plasticity rules according to an embodiment of the present invention.
  • the spiking neural network device 100 includes a pre-processing unit 10 and a spiking neural network unit 30.
  • the pre-processing unit 10 receives multi-channel data, converts the received data into multi-dimensional data by filtering and normalization, and extracts feature points of the converted multi-dimensional data. To accomplish this, the pre-processing unit 10 includes a sensor interface unit (sensor I/F) 11, a signal processing unit 13, and a feature extraction unit 15.
  • sensor I/F sensor interface unit
  • signal processing unit 13 signal processing unit 13
  • feature extraction unit 15 feature extraction unit
  • the sensor interface unit 11 supports a variety of analog/digital interfaces to receive multi-channel data in real time.
  • the sensor interface unit 11 supports I2C, I2S, Universal asynchronous receiver/transmitter (UART), analog-digital converter (ADC), Serial Peripheral Interface (SPI), and general-purpose input/output (GPIO).
  • the signal processor 13 removes noise included in multi-channel data received from the sensor interface 11.
  • the signal processor 13 may remove noise using at least one of a low pass filter, a high pass filter, and a band pass filter.
  • the signal processing unit 13 amplifies the signal of the data from which the noise has been removed, and then standardizes the data within a predetermined range to convert it into multidimensional data.
  • the feature point extraction unit 15 extracts the feature points by measuring the amount of change in the signal in a convolution operation or a time window section of the transformed multidimensional data.
  • the feature point may be a maximum value (peak), a minimum value, or a preset pattern in the data signal.
  • the spiking neural network unit 30 transmits a spike signal (Fig. 3(b)), when the electrical signals transmitted between the cells of the authorized neurons are combined and exceeds a certain threshold (Fig. 3(a)). It is a control module modeled by simplifying the process of delivering. That is, the spiking neural network unit 30 is designed to generate a spike signal according to the strength of the signal by allocating one neuron for each multi-dimensional data from which feature points are extracted. The spiking neural network unit 30 connects each neuron and allocates one synapse between the connected neurons.
  • the spiking neural network unit 30 compares the sum value with respect to the value of the synapse that generated the spike signal among the synapses and a preset threshold value, sends the spike signal, groups the classified spike signals, and classifies them. do.
  • the spiking neural network unit 30 includes an input layer 31, a hidden layer 33, and an output layer 35.
  • the input layer 31 is designed such that one neuron is assigned to each dimension or time to multidimensional data, and generates a spike signal based on probability according to the signal strength. At this time, the input layer 31 may be designed to generate a spike signal based on a Poisson distribution (FIG. 4). That is, the input layer 31 generates a spike signal at a high rate when the signal size is large.
  • a Poisson distribution FOG. 4
  • the hidden layer 33 is configured in such a way that all neurons are connected.
  • the hidden layer 33 allocates one synapse between connected neurons.
  • the hidden layer 33 may be composed of a single layer or a multi-layer of a fully connected method.
  • neurons of the first layer may be configured to be connected to all neurons of the second layer (FIG. 5).
  • the hidden layer 33 is composed of two or more multi-layers, more abstracted information can be obtained, but there is a disadvantage in that the number of synapses and neurons increases exponentially, so that the appropriate number of layers is suitable for the application. Can be configured.
  • the hidden layer 33 compares the sum value with respect to the value of the synapse in which the spike signal is generated, and a preset threshold value, and sends a spike signal.
  • the synapse is a memory having a weight value, and serves to adjust the frequency of synapses emitted from the hidden layer 33.
  • the hidden layer 33 sends out a spike signal when the sum value of the synapse value in which the spike signal is generated among the synapses is higher than a preset threshold value, and does not send a spike signal when it is lower than a preset threshold value.
  • the output layer 35 groups and classifies the spike signals emitted from the hidden layer 33 and clusters them to output a result. If there is labeled data among the grouped data, the output layer 35 counts the spike signal and maps it to the corresponding labeling group to output. At this time, the output layer 35 may be applied with a probability-based mapping method as well as a number of simple spike signals.
  • the neurons of the hidden layer 33 that generated the spike signal for the first signal can emit a relatively low frequency spike signal to the second signal, they are converted into probability values for the number of labeled data sets. Judgment can improve accuracy.
  • the spiking neural network unit 30 may perform learning. Learning is to update the weight value of the synapse by using a time difference between the spike signal emitted by the pre-neuron and the post signal emitted by the pre-neuron similar to the living body. For example, if the time difference between the time at which a free (synaptic) neuron emits a spike signal and the time at which a post (synaptic) neuron emits a spike is greater than 0, the weight is increased by Long Term Potentiation (LTP), and if the difference is less than 0, LTD ( Long Term Digression) (Fig. 6).
  • LTP Long Term Potentiation
  • the spiking neural network unit 30 determines the amount of weight to be changed according to LTP and LTD according to ⁇ t as shown in FIG. 7 by a simple equation. That is, the weight value determined according to the spike-timing-dependent plasticity (STDP) rule adds a user input (eg, positive/negative) value to determine a weight value of a reward method.
  • STDP spike-timing-dependent plasticity
  • FIG. 8 is a view for explaining an operation on the MNIST data of the spiking neural network device according to an embodiment of the present invention.
  • the input layer 31 is composed by allocating one neuron per pixel to 28 ⁇ 28 2D image data, and about 300,000 synapses are allocated by connecting the hidden layer 33 composed of 400 neurons in a fully connected manner.
  • the spiking neural network device 100 was constructed.
  • the figure showing the weight of FIG. 8 is a diagram showing 256 grayscales according to the degree of value for 784 points of 28 ⁇ 28 in which each neuron for 400 hidden layers 33 of 20 ⁇ 20 is internally. .
  • the spiking neural network device 100 counts the position and number of neurons of the hidden layer 33 that generates the spike signal, and outputs the result of the number 1 in the output layer 35 as a result. It has a cognitive action.
  • signal processing unit 15 feature point extraction unit
  • control unit 240 output unit

Landscapes

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

Abstract

Disclosed are a spiking neural network device and an intelligent device including same. The spiking neural network device according to the present invention includes: a pre-processing unit for receiving multichannel data, filtering and normalizing the received data and converting the filtered and normalized data to multidimensional data, and extracting feature points of the converted multidimensional data; and a spiking neural network unit which is designed to allocate one neuron to each piece of the multidimensional data from which the feature points have been extracted and generate spike signals according to the intensities of signals, connects each of the neurons, allocates one synapse between each of the connected neurons, sends out the spike signals by comparing a preset threshold and the sum of the values of the synapses from which the spike signals have been generated among the synapses, and groups the sent out spike signals to classify and cluster the same.

Description

스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치Spiking neural network device and intelligent device including same
본 발명은 뉴로모픽 기술에 관한 것으로, 더욱 상세하게는 생체의 스파이킹 기반의 뉴런 간 신호전달 및 학습 체계를 단순화하여 모델링하는 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치에 관한 것이다.The present invention relates to a neuromorphic technology, and more particularly, to a spiking neural network device for simplifying and modeling the signaling and learning system between neurons based on spiking and an intelligent device including the same.
최근 인가의 뇌를 모방하는 뉴로모픽 기술이 주목받고 있다. 뉴로모픽 기술은 다수의 프리-시냅스 뉴런들, 다수의 포스트-시냅스 뉴런들 및 다수의 시냅스들을 포함한다.Recently, neuromorphic technology that mimics the brain of a license has attracted attention. Neuromorphic technology includes multiple pre-synaptic neurons, multiple post-synaptic neurons and multiple synapses.
한편 기존 딥러닝과 같은 뉴럴 네트워크 소프트웨어 모델은 역전파(back propagation) 알고리즘에 최적화된 모델로서 학습을 위해 대용량의 데이터와 높은 성능의 컴퓨팅 리소스를 요구한다.Meanwhile, the neural network software model such as existing deep learning is a model optimized for a back propagation algorithm and requires a large amount of data and high-performance computing resources for learning.
서버에서 오프라인(off-line)으로 학습된 네트워크는 소형 하드웨어어에 로드되어 실행되는 형태로 적용되는 상황에서 실제의 다양한 환경에 적응이 어려운 점이 있어 범용성의 측면에서는 제한적이다.The network learned offline from the server is limited in terms of versatility because it is difficult to adapt to various environments in a situation where it is applied in the form of being loaded and executed in a small hardware language.
이를 해결하기 위해서 서버와의 별도 유무선 네트워크를 통해 학습을 진행하는 방법이 적용되고 있으나, 저전력 IoT 장치들에서는 지능형 학습과 처리를 위하여 통신장치의 높은 비용을 요구하는 문제점이 발생되고 있다.In order to solve this, a method of conducting learning through a separate wired/wireless network with a server is applied, but in low-power IoT devices, there is a problem that requires a high cost of a communication device for intelligent learning and processing.
최근 생체신호 모방을 통해 낮은 복잡도의 장치에서 지능을 구현하고자 하는 뉴로모픽 기술이 연구되고 있다. 하지만 주로 뉴런, 시냅스의 구조와 신호전달 체계에 관한 모델을 연구되고 있어 아직까지 반도체에 즉시 적용 가능한 단순하고 효과적인 모델이 없는 실정이다.Recently, neuromorphic technology is being researched to implement intelligence in low-complexity devices through imitation of biosignals. However, mainly the model of the structure of neurons and synapses and the signal transduction system is being studied, so there is no simple and effective model that can be applied immediately to semiconductors.
본 발명이 이루고자 하는 기술적 과제는 뉴로모픽 분야에서 연구되는 뉴런 모델, 시냅스 모델 및 스파이크 모델을 단순화하여 통합하고, 지도 및 비지도 학습을 통해 지능형 IoT 장치에서 만족할만한 인식 성능의 모델을 지원하는 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치를 제공하는데 목적이 있다.The technical problem to be achieved by the present invention is to simplify and integrate neuron models, synaptic models, and spike models studied in the neuromorphic field, and spies that support models of cognitive performance satisfactory in intelligent IoT devices through supervised and unsupervised learning. It is an object to provide a King Neural Network device and an intelligent device including the same.
상기 목적을 달성하기 위해, 본 발명에 따른 스파이킹 뉴럴 네트워크 장치는 다채널의 데이터를 수신하고, 상기 수신된 데이터를 필터링 및 표준화(normalization)하여 다차원 데이터로 변환하며, 상기 변환된 다차원 데이터의 특징점을 추출하는 전처리부 및 상기 특징점이 추출된 다차원 데이터마다 하나의 뉴런을 할당하여 신호의 강도에 따라 스파이크 신호를 생성하도록 설계하고, 각 뉴런을 연결하며, 상기 연결된 뉴런 간에 하나의 시냅스를 할당하고, 상기 시냅스 중 상기 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 상기 스파이크 신호를 내보내며, 상기 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화하는 스파이킹 뉴럴 네트워크부를 포함한다.To achieve the above object, the spiking neural network device according to the present invention receives multi-channel data, filters and normalizes the received data, converts it into multi-dimensional data, and features points of the converted multi-dimensional data. Designed to generate a spike signal according to the strength of the signal by allocating a single neuron for each of the multi-dimensional data from which the pre-processing unit and the feature point are extracted, and each neuron is connected, and one synapse is allocated between the connected neurons, Includes a spiked neural network unit that compares a summation value with respect to a value of a synapse in which the spike signal is generated, and a preset threshold value, sends the spike signal, groups and classifies the exported spike signals, and clusters them. do.
또한 상기 전처리부는, 실시간으로 다채널의 데이터를 수신하는 센서 인터페이스부, 상기 데이터를 잡음 제거를 수행하고, 상기 잡음 제거된 데이터를 증폭한 후, 일정 범위 내의 데이터로 표준화하여 상기 다차원 데이터로 변환하는 신호처리부 및 상기 변환된 다차원 데이터를 합성곱(convolution) 연산 또는 타임 윈도우(time window) 구간에서 신호의 변화량을 측정하여 상기 특징점을 추출하는 특징점 추출부를 포함하는 것을 특징으로 한다.In addition, the pre-processing unit, a sensor interface unit that receives multi-channel data in real time, performs noise reduction on the data, amplifies the noise-removed data, normalizes it to data within a certain range, and converts it into the multi-dimensional data It characterized in that it comprises a signal processing unit and a feature point extraction unit for extracting the feature points by measuring the amount of change in the signal in the convolution operation or time window (convolution) operation or a time window (time window) section of the converted multi-dimensional data.
또한 상기 스파이킹 뉴럴 네트워크부는, 상기 다차원 데이터에 각 차원 또는 시간별로 하나의 뉴런이 할당되고, 신호의 강도에 따라 확률기반으로 스파이크 신호를 생성하도록 설계하는 입력 레이어, 상기 뉴런이 모두 연결되는 형태로 구성되고, 상기 연결된 뉴런 간에 하나의 시냅스를 할당하며, 상기 시냅스 중 상기 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값이 상기 문턱치 값보다 높은 경우 상기 스파이크 신호를 내보내고, 상기 문턱치 값보다 낮은 경우 상기 스파이크 신호를 내보내지 않는 히든 레이어 및 상기 내보진 스파이크 신호를 그룹핑하여 데이터를 분류하고, 군집화하여 결과를 출력하는 출력 레이어를 포함하는 것을 특징으로 한다.In addition, the spiking neural network unit, one neuron is assigned to each dimension or time to the multidimensional data, and an input layer designed to generate a spike signal based on probability according to signal strength. It is configured, and allocates one synapse between the connected neurons, and when the sum value for the value of the synapse in which the spike signal is generated is higher than the threshold value, sends the spike signal, and when the threshold value is lower than the threshold value It characterized in that it comprises a hidden layer that does not emit a spike signal and an output layer that groups the exported spike signal to classify the data and outputs the result by clustering.
또한 상기 히든 레이어는, 단일 층 또는 완전 연결(fully connected) 방식의 다층으로 구성되는 것을 특징으로 한다.In addition, the hidden layer, it characterized in that it is composed of a single layer or a fully connected (fully connected) multi-layer.
또한 상기 출력 레이어는, 상기 그룹핑된 데이터 중 라벨링된 데이터가 있는 경우, 상기 스파이크 신호를 카운팅하고, 해당 라벨링 그룹에 매핑하여 출력하는 것을 특징으로 한다.In addition, the output layer is characterized in that if there is labeled data among the grouped data, the spike signal is counted and mapped to the corresponding labeling group for output.
또한 상기 스파이킹 뉴럴 네트워크부는, 프리(pre) 뉴런이 내보내는 스파이크 신호와 포스트(post) 뉴런이 내보내는 스파이크 신호의 시간차를 이용하여 상기 시냅스의 가중치 값을 업데이트하는 것을 특징으로 한다.In addition, the spiking neural network unit is characterized by updating the weight value of the synapse by using a time difference between a spike signal emitted by a pre-neuron and a spike signal emitted by a post neuron.
또한 상기 스파이킹 뉴럴 네트워크부는, 상기 프리 뉴런이 스파이크 신호를 내보내는 시간과 상기 포스트 뉴런이 스파이크 신호를 내보내는 시간의 차이가 0보다 클 경우 LTP(Long Term Potentiation)으로 가중치를 올리고, 상기 차이가 0보다 작을 경우 LTD(Long Term Digression)시키는 것을 특징으로 한다.In addition, the spiking neural network unit increases the weight by LTP (Long Term Potentiation) when the difference between the time at which the pre-neuron sends a spike signal and the time at which the post-neuron sends a spike signal is greater than 0, and the difference is less than 0. If small, it is characterized by making LTD (Long Term Digression).
본 발명에 따른 지능형 장치는 외부 장치와의 통신을 수행하는 통신부, 복수의 센서를 이용하여 환경정보, 영상정보, 감지정보 및 인지정보 중 적어도 하나의 센싱 데이터를 측정하는 센서부 및 상기 통신부로부터 수신된 데이터 및 센서부로부터 측정된 센싱 데이터를 다채널로 수신하고, 상기 수신된 다채널 데이터를 기초로 뉴로모픽 기술을 기반으로 하는 스파이킹 뉴럴 네트워크 장치를 이용하여 학습 및 연산 처리를 수행하는 제어부를 포함하되, 상기 스파이킹 뉴럴 네트워크 장치는, 상기 다채널의 데이터를 수신하고, 상기 수신된 데이터를 필터링 및 표준화(normalization)하여 다차원 데이터로 변환하며, 상기 변환된 다차원 데이터의 특징점을 추출하는 전처리부 및 상기 특징점이 추출된 다차원 데이터마다 하나의 뉴런을 할당하여 신호의 강도에 따라 스파이크 신호를 생성하도록 설계하고, 각 뉴런을 연결하며, 상기 연결된 뉴런 간에 하나의 시냅스를 할당하고, 상기 시냅스 중 상기 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 상기 스파이크 신호를 내보내며, 상기 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화하는 스파이킹 뉴럴 네트워크부를 포함하는 것을 특징으로 한다.The intelligent device according to the present invention is a communication unit that performs communication with an external device, a sensor unit that measures at least one sensing data among environment information, image information, detection information, and recognition information using a plurality of sensors and is received from the communication unit A control unit that receives the measured data and the sensing data measured from the sensor unit in a multi-channel, and performs learning and arithmetic processing using a spiking neural network device based on neuromorphic technology based on the received multi-channel data Including, the spiking neural network device, receiving the multi-channel data, filtering and normalizing the received data into multi-dimensional data, pre-processing to extract the feature points of the converted multi-dimensional data Designed to generate a spike signal according to the strength of a signal by allocating a single neuron for each of the multi-dimensional data from which the negative and the feature points are extracted, connecting each neuron, allocating one synapse between the connected neurons, and And a spiked neural network unit that compares a summation value with respect to a value of a synapse where a spike signal is generated and a preset threshold value, sends the spike signal, groups the spike signals by grouping them, and clusters them. do.
본 발명의 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치는 스파이킹 기반의 뉴런의 단순화된 네트워크 모델 구조를 지원할 수 있다.The spiking neural network device of the present invention and the intelligent device including the same may support a simplified network model structure of spiking-based neurons.
또한 생체 유사도가 높은 극파 기간 의존 가소성(STDP) 기반의 단순한 학습 모델을 적용하고, 생체와 유사한 리워드(reward) 방식의 추가 학습 모델을 적용할 수 있다.In addition, a simple learning model based on extreme frequency period-dependent plasticity (STDP) with high bio-similarity may be applied, and an additional learning model similar to a living body may be applied.
이를 통해 본 발명은 뉴런 모델, 시냅스 모델, 스파이크 모델을 단순화하여 통합하고, 지도 및 비지도 학습을 통해 지능형 IoT 장치에서 만족할만한 인식 성능을 지원할 수 있다.Through this, the present invention can simplify and integrate neuron models, synaptic models, and spike models, and support satisfactory recognition performance in intelligent IoT devices through supervised and unsupervised learning.
도 1은 본 발명의 실시예에 따른 지능형 장치를 설명하기 위한 도면이다.1 is a view for explaining an intelligent device according to an embodiment of the present invention.
도 2는 본 발명의 실시예에 따른 스파이킹 뉴럴 네트워크 장치를 설명하기 위한 도면이다.2 is a diagram for describing a spiking neural network device according to an embodiment of the present invention.
도 3은 본 발명의 실시예에 따른 시냅틱 뉴런 및 스파이킹 신호를 설명하기 위한 도면이다.3 is a view for explaining synaptic neurons and spiking signals according to an embodiment of the present invention.
도 4는 본 발명의 실시예에 따른 푸아송 분포의 히스토그램을 설명하기 위한 도면이다.4 is a view for explaining a histogram of the Poisson distribution according to an embodiment of the present invention.
도 5는 본 발명의 실시예에 따른 레이어 간의 완전 연결을 설명하기 위한 도면이다.5 is a view for explaining a complete connection between layers according to an embodiment of the present invention.
도 6은 본 발명의 실시예에 따른 스파이킹 스냅틱 뉴런을 설명하기 위한 도면이다.6 is a view for explaining a spiking snap neuron according to an embodiment of the present invention.
도 7은 본 발명의 실시예에 따른 극파 기간 의존 가소성 룰을 설명하기 위한 도면이다.7 is a view for explaining an extreme wave period dependent plasticity rule according to an embodiment of the present invention.
도 8은 본 발명의 실시예에 따른 스파이킹 뉴럴 네트워크 장치의 MNIST 데이터에 대한 동작을 설명하기 위한 도면이다.8 is a view for explaining an operation on the MNIST data of the spiking neural network device according to an embodiment of the present invention.
이하 본 발명의 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의한다. 또한 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 당업자에게 자명하거나 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, when adding reference numerals to the components of each drawing, it is noted that the same components have the same reference numerals as possible even though they are displayed on different drawings. In addition, in describing the present invention, when it is determined that a detailed description of related known configurations or functions is apparent to those skilled in the art or may obscure the gist of the present invention, the detailed description thereof will be omitted.
도 1은 본 발명의 실시예에 따른 지능형 장치를 설명하기 위한 도면이다.1 is a view for explaining an intelligent device according to an embodiment of the present invention.
도 1을 참조하면, 지능형 장치(200)는 IoT(Internet of Things) 장치로써, 다양한 데이터를 기초로 지능형 학습과 연산 처리를 수행한다. 즉 지능형 장치(200)는 학습을 통한 연산뿐만 아니라 IoT 통신을 통해 다양한 장치들과의 통신을 통해 실시간으로 다양한 정보를 습득할 수 있다. 지능형 장치(200)는 냉장고, TV, 로봇 청소기, 에어콘, 가습기, 공기청정기 등을 포함할 수 있다. 지능형 장치(200)는 통신부(210), 센서부(220) 및 제어부(230)를 포함하고, 출력부(240) 및 저장부(250)를 더 포함한다.Referring to FIG. 1, the intelligent device 200 is an Internet of Things (IoT) device, and performs intelligent learning and arithmetic processing based on various data. That is, the intelligent device 200 can acquire various information in real time through communication with various devices through IoT communication as well as calculation through learning. The intelligent device 200 may include a refrigerator, a TV, a robot cleaner, an air conditioner, a humidifier, an air cleaner, and the like. The intelligent device 200 includes a communication unit 210, a sensor unit 220 and a control unit 230, and further includes an output unit 240 and a storage unit 250.
통신부(210)는 외부 장치와의 통신을 수행한다. 이때 통신부(210)는 IoT 통신을 지원할 수 있다. 통신부(210)는 다양한 외부 장치로부터 데이터를 수신하거나 외부 장치로 데이터를 전송할 수 있다. 여기서 외부 장치는 IoT 통신을 지원하는 장치로써, 냉장고, TV, 로봇 청소기, 에어콘, 가습기, 공기청정기 등을 포함할 수 있다.The communication unit 210 communicates with an external device. At this time, the communication unit 210 may support IoT communication. The communication unit 210 may receive data from various external devices or transmit data to the external devices. Here, the external device is a device supporting IoT communication, and may include a refrigerator, a TV, a robot cleaner, an air conditioner, a humidifier, and an air cleaner.
센서부(220)는 복수의 센서를 포함하고, 이를 이용하여 환경정보, 감지정보 및 인지정보 중 적어도 하나의 센싱 데이터를 측정한다. 센서부(220)는 온도 센서, 습도 센서, 적외선 센서, 압력 센서, 카메라, 마이크, 심전도(ECG) 센서, 심박(PPG) 센서 등을 포함할 수 있다.The sensor unit 220 includes a plurality of sensors, and uses it to measure sensing data of at least one of environmental information, sensing information, and cognitive information. The sensor unit 220 may include a temperature sensor, a humidity sensor, an infrared sensor, a pressure sensor, a camera, a microphone, an electrocardiogram (ECG) sensor, and a heart rate (PPG) sensor.
제어부(230)는 통신부(210)로부터 수신된 데이터 및 센서부(220)로부터 측정된 센싱 데이터를 다채널로 실시간 수신할 수 있다. 제어부(230)는 수신된 다채널의 데이터를 기초로 뉴로모픽 기술을 기반으로 하는 스파이킹 뉴럴 네트워크(SNN) 모델(100)을 이용하여 학습 및 연산 처리를 수행한다. 제어부(230)는 스파이킹 뉴럴 네트워크 장치(100)을 통해 학습 및 연산 처리를 함으로써, 데이터의 분류(classification), 군집화(clusterign), 연관성(association)의 실행을 진행할 수 있다. 스파이킹 뉴럴 네트워크 장치(100)의 자세한 설명은 도 2 내지 도 7에서 설명하기로 한다.The control unit 230 may receive data received from the communication unit 210 and sensing data measured from the sensor unit 220 in real time. The controller 230 performs learning and arithmetic processing using the spiking neural network (SNN) model 100 based on neuromorphic technology based on the received multi-channel data. The controller 230 may perform data classification and clustering and association by performing learning and arithmetic processing through the spiking neural network device 100. The detailed description of the spiking neural network device 100 will be described with reference to FIGS. 2 to 7.
출력부(240)는 제어부(230)를 통해 학습 및 연산 처리된 결과를 출력한다. 출력부(240)는 영상, 음성, 동작 등의 형태로 출력할 수 있다. 이를 위해, 출력부(240)는 디스플레이, 스피커, 이송장치, 로봇팔 등 다양한 형태의 모듈을 포함할 수 있다.The output unit 240 outputs the results of the learning and calculation processing through the control unit 230. The output unit 240 may output in the form of an image, audio, or operation. To this end, the output unit 240 may include various types of modules such as a display, a speaker, a transfer device, and a robot arm.
저장부(250)는 통신부(210)로부터 수신된 외부 데이터 및 센서부(220)로부터 측정된 센싱 데이터가 저장된다. 저장부(250)는 제어부(230)로부터 학습된 데이터 및 연산 처리된 데이터가 저장된다. 저장부(250)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기메모리, 자기 디스크, 광디스크 중 적어도 하나의 저장매체를 포함할 수 있다. The storage unit 250 stores external data received from the communication unit 210 and sensing data measured from the sensor unit 220. The storage unit 250 stores data learned from the control unit 230 and data that has been processed. The storage unit 250 includes a flash memory type, a hard disk type, a media card micro type, and a card type memory (for example, SD or XD memory, etc.), RAM (Random Access Memory, RAM), SRAM (Static Random Access Memory), ROM (Read-Only Memory, ROM), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, It may include at least one storage medium among magnetic disks and optical disks.
도 2는 본 발명의 실시예에 따른 스파이킹 뉴럴 네트워크 장치를 설명하기 위한 도면이고, 도 3은 본 발명의 실시예에 따른 시냅틱 뉴런 및 스파이킹 신호를 설명하기 위한 도면이며, 도 4는 본 발명의 실시예에 따른 푸아송 분포의 히스토그램을 설명하기 위한 도면이고, 도 5는 본 발명의 실시예에 따른 레이어 간의 완전 연결을 설명하기 위한 도면이며, 도 6은 본 발명의 실시예에 따른 스파이킹 스냅틱 뉴런을 설명하기 위한 도면이고, 도 7은 본 발명의 실시예에 따른 극파 기간 의존 가소성 룰을 설명하기 위한 도면이다.2 is a view for explaining a spiking neural network device according to an embodiment of the present invention, FIG. 3 is a view for explaining a synaptic neuron and a spiking signal according to an embodiment of the present invention, and FIG. 4 is a present invention Is a diagram for explaining the histogram of the Poisson distribution according to an embodiment, Figure 5 is a view for explaining the complete connection between the layers according to an embodiment of the present invention, Figure 6 is a spike according to an embodiment of the present invention FIG. 7 is a diagram for explaining snaptic neurons, and FIG. 7 is a diagram for explaining extreme wave duration dependent plasticity rules according to an embodiment of the present invention.
도 2 내지 도 7을 참조하면, 스파이킹 뉴럴 네트워크 장치(100)은 전처리부(10) 및 스파이킹 뉴럴 네트워크부(30)를 포함한다.2 to 7, the spiking neural network device 100 includes a pre-processing unit 10 and a spiking neural network unit 30.
전처리부(10)는 다채널의 데이터를 수신하고, 수신된 데이터를 필터링 및 표준화(normalization)하여 다차원 데이터로 변환하며, 변환된 다차원 데이터의 특징점을 추출한다. 이를 수행하기 위해, 전처리부(10)는 센서 인터페이스부(sensor I/F)(11), 신호 처리부(signal processing)(13) 및 특징점 추출부(feature extraction)(15)를 포함한다.The pre-processing unit 10 receives multi-channel data, converts the received data into multi-dimensional data by filtering and normalization, and extracts feature points of the converted multi-dimensional data. To accomplish this, the pre-processing unit 10 includes a sensor interface unit (sensor I/F) 11, a signal processing unit 13, and a feature extraction unit 15.
센서 인터페이스부(11)는 아날로그/디지털의 다양한 인터페이스를 지원하여 실시간으로 다채널의 데이터를 수신할 수 있다. 센서 인터페이스부(11)는 I2C, I2S, UART(Universal asynchronous receiver/transmitter), ADC(analog-digital converter), SPI(Serial Peripheral Interface), GPIO(General-purpose input/output)를 지원한다. The sensor interface unit 11 supports a variety of analog/digital interfaces to receive multi-channel data in real time. The sensor interface unit 11 supports I2C, I2S, Universal asynchronous receiver/transmitter (UART), analog-digital converter (ADC), Serial Peripheral Interface (SPI), and general-purpose input/output (GPIO).
신호 처리부(13)는 센서 인터페이스부(11)로부터 수신된 다채널의 데이터에 포함된 잡음을 제거한한다. 이때 신호 처리부(13)는 로우 패스 필터(low pass filter), 하이 패스 필터(high pass filter) 및 밴드 패스 필터(band pass filter) 중 적어도 하나의 필터를 사용하여 잡음을 제거할 수 있다. 신호 처리부(13)는 잡음이 제거된 데이터의 신호를 증폭한 후, 일정 범위 내의 데이터로 표준화하여 다차원 데이터로 변환한다. The signal processor 13 removes noise included in multi-channel data received from the sensor interface 11. In this case, the signal processor 13 may remove noise using at least one of a low pass filter, a high pass filter, and a band pass filter. The signal processing unit 13 amplifies the signal of the data from which the noise has been removed, and then standardizes the data within a predetermined range to convert it into multidimensional data.
특징점 추출부(15)는 변환된 다차원 데이터를 합성곱(convolution) 연산 또는 타임 윈도우(time window) 구간에서 신호의 변화량을 측정하여 특징점을 추출한다. 여기서 특징점은 데이터 신호에서 최대치(peak), 최저치, 기 설정된 패턴 등일 수 있다. The feature point extraction unit 15 extracts the feature points by measuring the amount of change in the signal in a convolution operation or a time window section of the transformed multidimensional data. Here, the feature point may be a maximum value (peak), a minimum value, or a preset pattern in the data signal.
스파이킹 뉴럴 네트워크부(30)는 인가의 뉴런 세포간에 전달되는 전기적 신호가 합쳐져 특정 문턱치(threshold)를 넘어서는 경우(도 3(a)), 스파이크 신호를 내보냄으로써(도 3(b)), 정보를 전달하게 되는 과정을 단순화하여 모델링된 제어모듈이다. 즉 스파이킹 뉴럴 네트워크부(30)는 특징점이 추출된 다차원 데이터마다 하나의 뉴런을 할당하여 신호의 강도에 따라 스파이크 신호를 생성하도록 설계한다. 스파이킹 뉴럴 네트워크부(30)는 각 뉴런을 연결하고, 상기 연결된 뉴런 간에 하나의 시냅스를 할당한다. 이때 스파이킹 뉴럴 네트워크부(30)는 시냅스 중 스파이크 신호를 생성한 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 상기 스파이크 신호를 내보내고, 상기 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화한다. 스파이킹 뉴럴 네트워크부(30)는 입력 레이어(input layer)(31), 히든 레이어(hidden layer)(33) 및 출력 레이어(output layer)(35)를 포함한다.The spiking neural network unit 30 transmits a spike signal (Fig. 3(b)), when the electrical signals transmitted between the cells of the authorized neurons are combined and exceeds a certain threshold (Fig. 3(a)). It is a control module modeled by simplifying the process of delivering. That is, the spiking neural network unit 30 is designed to generate a spike signal according to the strength of the signal by allocating one neuron for each multi-dimensional data from which feature points are extracted. The spiking neural network unit 30 connects each neuron and allocates one synapse between the connected neurons. At this time, the spiking neural network unit 30 compares the sum value with respect to the value of the synapse that generated the spike signal among the synapses and a preset threshold value, sends the spike signal, groups the classified spike signals, and classifies them. do. The spiking neural network unit 30 includes an input layer 31, a hidden layer 33, and an output layer 35.
입력 레이어(31)는 다차원 데이터에 각 차원 또는 시간별로 하나의 뉴런이 할당되고, 신호의 강도에 따라 확률 기반으로 스파이크 신호를 생성하도록 설계한다. 이때 입력 레이어(31)는 푸아송 분포(poisson distribution) 기반으로 스파이크 신호를 생성하도록 설계할 수 있다(도 4). 즉 입력 레이어(31)는 신호의 크기가 클 때 높은 비율로 스파이크 신호를 발생하도록 한다.The input layer 31 is designed such that one neuron is assigned to each dimension or time to multidimensional data, and generates a spike signal based on probability according to the signal strength. At this time, the input layer 31 may be designed to generate a spike signal based on a Poisson distribution (FIG. 4). That is, the input layer 31 generates a spike signal at a high rate when the signal size is large.
히든 레이어(33)는 뉴런이 모두 연결되는 형태로 구성된다. 히든 레이어(33)는 연결된 뉴런 간에 하나의 시냅스를 할당한다. 여기서 히든 레이어(33)는 단일 층 또는 완전 연결(fully connected) 방식의 다층으로 구성될 수 있다. 완전 연결 방식의 다층인 경우, 제1 레이어의 뉴런들이 제2 레이어 중 하나의 뉴런에 모두 연결되는 형태로 구성할 수 있다(도 5). 여기서, 히든 레이어(33)는 2개 이상의 다층 레이어로 구성될 경우, 보다 추상화된 정보를 얻을 수 있으나, 시냅스와 뉴런의 개수가 지수승으로 증가하는 단점이 있어 응용에 맞도록 적절한 개수의 레이어로 구성될 수 있다.The hidden layer 33 is configured in such a way that all neurons are connected. The hidden layer 33 allocates one synapse between connected neurons. Here, the hidden layer 33 may be composed of a single layer or a multi-layer of a fully connected method. In the case of a fully connected multi-layer, neurons of the first layer may be configured to be connected to all neurons of the second layer (FIG. 5). Here, when the hidden layer 33 is composed of two or more multi-layers, more abstracted information can be obtained, but there is a disadvantage in that the number of synapses and neurons increases exponentially, so that the appropriate number of layers is suitable for the application. Can be configured.
히든 레이어(33)는 시냅스 중 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 스파이크 신호를 내보낸다. 여기서 시냅스는 가중치 값을 가지고 있는 메모리로써, 히든 레이어(33)에서 내보내는 시냅스의 빈도수를 조정하는 역할을 한다. 상세하게는 히든 레이어(33)는 시냅스 중 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값이 기 설정된 문턱치 값보다 높은 경우 스파이크 신호를 내보내고, 기 설정된 문턱치 값보다 낮은 경우 스파이크 신호를 내보내지 않는다. The hidden layer 33 compares the sum value with respect to the value of the synapse in which the spike signal is generated, and a preset threshold value, and sends a spike signal. Here, the synapse is a memory having a weight value, and serves to adjust the frequency of synapses emitted from the hidden layer 33. In detail, the hidden layer 33 sends out a spike signal when the sum value of the synapse value in which the spike signal is generated among the synapses is higher than a preset threshold value, and does not send a spike signal when it is lower than a preset threshold value.
출력 레이어(35)는 히든 레이어(33)에서 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화하여 결과를 출력한다. 그룹핑된 데이터중 라벨링된 데이터가 있는 경우, 출력 레이어(35)는 스파이크 신호를 카운팅하고, 해당 라벨링 그룹에 매핑하여 출력한다. 이때 출력 레이어(35)는 단순 스파이크 신호의 횟수뿐만 아니라 확률 기반의 매핑방법이 적용될 수 있다.The output layer 35 groups and classifies the spike signals emitted from the hidden layer 33 and clusters them to output a result. If there is labeled data among the grouped data, the output layer 35 counts the spike signal and maps it to the corresponding labeling group to output. At this time, the output layer 35 may be applied with a probability-based mapping method as well as a number of simple spike signals.
예를 들어 제1 신호에 대하여 스파이크 신호를 생성한 히든 레이어(33)의 뉴런은 제2 신호에도 상대적으로 낮은 빈도의 스파이크 신호를 내보낼 수 있기 때문에 라벨링된 데이터 셋의 개수에 대한 확률 값으로 변환하여 판단함으로써 정확도를 높일 수 있다.For example, since the neurons of the hidden layer 33 that generated the spike signal for the first signal can emit a relatively low frequency spike signal to the second signal, they are converted into probability values for the number of labeled data sets. Judgment can improve accuracy.
한편 스파이킹 뉴럴 네트워크부(30)는 학습을 수행할 수 있다. 학습은 생체와 유사한 방식의 프리(pre) 뉴런이 내보내는 스파이크 신호와 포스트(post) 뉴런이 내보내는 스파이크 신호의 시간차를 이용하여 시냅스의 가중치 값을 업데이트하는 것이다. 예를 들어 프리(시냅틱) 뉴런이 스파이크 신호를 내보내는 시간과 포스트(시냅틱) 뉴런이 스파이크를 내보내는 시간차가 0보다 클 경우 LTP(Long Term Potentiation)으로 가중치를 올리고, 상기 차이가 0보다 작을 경우 LTD(Long Term Digression)시킨다(도 6). 이때 스파이킹 뉴럴 네트워크부(30)는 LTP와 LTD에 따라 변경시킬 가중치의 양을 △t에 따라 도 7과 같이 간단한 수학식으로 결정한다. 즉 극파 기간 의존 가소성(Spike-timing-dependent plasticity, STDP) 룰에 따라 결정된 가중치의 값은 사용자의 입력(예: positive/negative) 값을 더하여 리워드(reward) 방식의 가중치 값을 결정한다. Meanwhile, the spiking neural network unit 30 may perform learning. Learning is to update the weight value of the synapse by using a time difference between the spike signal emitted by the pre-neuron and the post signal emitted by the pre-neuron similar to the living body. For example, if the time difference between the time at which a free (synaptic) neuron emits a spike signal and the time at which a post (synaptic) neuron emits a spike is greater than 0, the weight is increased by Long Term Potentiation (LTP), and if the difference is less than 0, LTD ( Long Term Digression) (Fig. 6). At this time, the spiking neural network unit 30 determines the amount of weight to be changed according to LTP and LTD according to Δt as shown in FIG. 7 by a simple equation. That is, the weight value determined according to the spike-timing-dependent plasticity (STDP) rule adds a user input (eg, positive/negative) value to determine a weight value of a reward method.
도 8은 본 발명의 실시예에 따른 스파이킹 뉴럴 네트워크 장치의 MNIST 데이터에 대한 동작을 설명하기 위한 도면이다.8 is a view for explaining an operation on the MNIST data of the spiking neural network device according to an embodiment of the present invention.
도 2 및 도 8을 참조하면, 스파이킹 뉴럴 네트워크 장치(100) 구조에 따라 숫자 0~9의 필기 글자를 인식하는 응용에 대한 실시예를 설명한다.2 and 8, an embodiment of an application for recognizing handwritten characters of numbers 0 to 9 according to the structure of the spiking neural network device 100 will be described.
28×28 2차원 이미지 데이터를 픽셀당 하나의 뉴런을 할당하여 입력 레이어(31)를 구성하고, 400개의 뉴런으로 구성된 히든 레이어(33)를 완전 연결 방식으로 연결하여 약 30만개의 시냅스가 할당된 스파이킹 뉴럴 네트워크 장치(100)를 구성하였다.The input layer 31 is composed by allocating one neuron per pixel to 28×28 2D image data, and about 300,000 synapses are allocated by connecting the hidden layer 33 composed of 400 neurons in a fully connected manner. The spiking neural network device 100 was constructed.
도 8은 입력 레이어(33)에서 확률 기반으로 생성된 스파이크 신호와 히든 레이어(33)에서 발생하는 스파이크 신호 간의 시간차에 의해 STDP 룰에 따라 시냅스의 가중치를 업데이트하여 학습한 과정의 결과이다.8 is a result of a process of learning by updating the weight of a synapse according to the STDP rule by a time difference between a spike signal generated based on probability in the input layer 33 and a spike signal generated in the hidden layer 33.
즉 도 8의 가중치를 도시한 도면은 20×20인 400개의 히든 레이어(33)에 대한 각 뉴런이 내부적으로 28×28인 784개의 점에 대한 값의 정도에 따라 256 그레이스케일로 도시된 도면이다.That is, the figure showing the weight of FIG. 8 is a diagram showing 256 grayscales according to the degree of value for 784 points of 28×28 in which each neuron for 400 hidden layers 33 of 20×20 is internally. .
따라서 스파이킹 뉴럴 네트워크 장치(100)는 숫자 1의 이미지가 입력되면 스파이크 신호를 발생하는 히든 레이어(33)의 뉴런에 대한 위치와 횟수를 카운트하여 출력 레이어(35)에서 숫지 1임을 결과로 내보내게 되어 인지하는 동작을 가진다.Therefore, when the image of the number 1 is input, the spiking neural network device 100 counts the position and number of neurons of the hidden layer 33 that generates the spike signal, and outputs the result of the number 1 in the output layer 35 as a result. It has a cognitive action.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.Although the preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific preferred embodiments described above, and the technical field to which the present invention pertains without departing from the gist of the present invention claimed in the claims. Of course, various modifications can be made to anyone having ordinary knowledge, and such changes are within the scope of the claims.
[부호의 설명][Description of codes]
10: 전처리부 11: 센서 인터페이스부10: pre-processing unit 11: sensor interface unit
13: 신호처리부 15: 특징점 추출부13: signal processing unit 15: feature point extraction unit
30: 스파이킹 뉴럴 네트워크부 31: 입력 레이어30: spiking neural network unit 31: input layer
33: 히든 레이어 35: 출력 레이어33: hidden layer 35: output layer
100: 스파이킹 뉴럴 네트워크 장치 200: 지능형 장치100: spiking neural network device 200: intelligent device
210: 통신부 220: 센서부210: communication unit 220: sensor unit
230: 제어부 240: 출력부230: control unit 240: output unit
250: 저장부250: storage

Claims (8)

  1. 다채널의 데이터를 수신하고, 상기 수신된 데이터를 필터링 및 표준화(normalization)하여 다차원 데이터로 변환하며, 상기 변환된 다차원 데이터의 특징점을 추출하는 전처리부; 및A pre-processor for receiving multi-channel data, filtering and normalizing the received data into multi-dimensional data, and extracting feature points of the converted multi-dimensional data; And
    상기 특징점이 추출된 다차원 데이터마다 하나의 뉴런을 할당하여 신호의 강도에 따라 스파이크 신호를 생성하도록 설계하고, 각 뉴런을 연결하며, 상기 연결된 뉴런 간에 하나의 시냅스를 할당하고, 상기 시냅스 중 상기 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 상기 스파이크 신호를 내보내며, 상기 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화하는 스파이킹 뉴럴 네트워크부;Designed to generate a spike signal according to signal strength by allocating one neuron for each extracted multidimensional data of the feature points, connecting each neuron, allocating one synapse between the connected neurons, and the spike signal among the synapses A spiked neural network unit that compares the sum value of the generated synapse value and a preset threshold value, sends out the spike signal, groups the spike signals, classifies them, and clusters them;
    를 포함하는 스파이킹 뉴럴 네트워크 장치.Spiking neural network device comprising a.
  2. 제 1항에 있어서,According to claim 1,
    상기 전처리부는,The pre-processing unit,
    실시간으로 다채널의 데이터를 수신하는 센서 인터페이스부;A sensor interface unit that receives multi-channel data in real time;
    상기 데이터를 잡음 제거를 수행하고, 상기 잡음 제거된 데이터를 증폭한 후, 일정 범위 내의 데이터로 표준화하여 상기 다차원 데이터로 변환하는 신호처리부; 및A signal processor that performs noise reduction on the data, amplifies the noise-removed data, and then standardizes the data to a multi-dimensional data by standardizing the data within a predetermined range; And
    상기 변환된 다차원 데이터를 합성곱(convolution) 연산 또는 타임 윈도우(time window) 구간에서 신호의 변화량을 측정하여 상기 특징점을 추출하는 특징점 추출부;A feature point extractor for extracting the feature points by measuring the amount of change in a signal in a convolution operation or a time window section of the converted multidimensional data;
    를 포함하는 것을 특징으로 하는 스파이킹 뉴럴 네트워크 장치.Spiking neural network device comprising a.
  3. 제 1항에 있어서,According to claim 1,
    상기 스파이킹 뉴럴 네트워크부는,The spiking neural network unit,
    상기 다차원 데이터에 각 차원 또는 시간별로 하나의 뉴런이 할당되고, 신호의 강도에 따라 확률기반으로 스파이크 신호를 생성하도록 설계하는 입력 레이어;An input layer designed to generate a spike signal based on probability according to the strength of the signal, wherein one neuron is allocated to each of the dimensions or time to the multidimensional data;
    상기 뉴런이 모두 연결되는 형태로 구성되고, 상기 연결된 뉴런 간에 하나의 시냅스를 할당하며, 상기 시냅스 중 상기 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값이 상기 문턱치 값보다 높은 경우 상기 스파이크 신호를 내보내고, 상기 문턱치 값보다 낮은 경우 상기 스파이크 신호를 내보내지 않는 히든 레이어; 및All of the neurons are configured to be connected, and one synapse is allocated between the connected neurons, and when the sum value for the value of the synapse in which the spike signal is generated is higher than the threshold value, the spike signal is emitted. , A hidden layer that does not emit the spike signal when it is lower than the threshold value; And
    상기 내보진 스파이크 신호를 그룹핑하여 데이터를 분류하고, 군집화하여 결과를 출력하는 출력 레이어;An output layer for classifying the grouped data by grouping the exported spike signals and clustering the data to output a result;
    를 포함하는 것을 특징으로 하는 스파이킹 뉴럴 네트워크 장치.Spiking neural network device comprising a.
  4. 제 3항에 있어서,According to claim 3,
    상기 히든 레이어는,The hidden layer,
    단일 층 또는 완전 연결(fully connected) 방식의 다층으로 구성되는 것을 특징으로 하는 스파이킹 뉴럴 네트워크 장치.Spiking neural network device, characterized in that it consists of a single layer or a multi-layer of fully connected (fully connected).
  5. 제 3항에 있어서,According to claim 3,
    상기 출력 레이어는,The output layer,
    상기 그룹핑된 데이터 중 라벨링된 데이터가 있는 경우, 상기 스파이크 신호를 카운팅하고, 해당 라벨링 그룹에 매핑하여 출력하는 것을 특징으로 하는 스파이킹 뉴럴 네트워크 장치.A spiked neural network device characterized in that if there is labeled data among the grouped data, the spike signal is counted and mapped to the corresponding labeling group to be output.
  6. 제 1항에 있어서,According to claim 1,
    상기 스파이킹 뉴럴 네트워크부는,The spiking neural network unit,
    프리(pre) 뉴런이 내보내는 스파이크 신호와 포스트(post) 뉴런이 내보내는 스파이크 신호의 시간차를 이용하여 상기 시냅스의 가중치 값을 업데이트하는 것을 특징으로 하는 스파이킹 뉴럴 네트워크 장치.Spiking neural network device characterized in that the weight value of the synapse is updated by using a time difference between a spike signal emitted by a pre neuron and a spike signal emitted by a post neuron.
  7. 제 6항에 있어서,The method of claim 6,
    상기 스파이킹 뉴럴 네트워크부는,The spiking neural network unit,
    상기 프리 뉴런이 스파이크 신호를 내보내는 시간과 상기 포스트 뉴런이 스파이크 신호를 내보내는 시간의 차이가 0보다 클 경우 LTP(Long Term Potentiation)으로 가중치를 올리고, 상기 차이가 0보다 작을 경우 LTD(Long Term Digression)시키는 것을 특징으로 하는 스파이킹 뉴럴 네트워크 장치.If the difference between the time at which the pre-neuron sends a spike signal and the time at which the post-neuron sends a spike signal is greater than 0, the weight is increased by LTP (Long Term Potentiation), and when the difference is less than 0, LTD (Long Term Digression) Spiking neural network device, characterized in that.
  8. 외부 장치와의 통신을 수행하는 통신부;A communication unit performing communication with an external device;
    복수의 센서를 이용하여 환경정보, 영상정보, 감지정보 및 인지정보 중 적어도 하나의 센싱 데이터를 측정하는 센서부; 및A sensor unit measuring at least one sensing data among environment information, image information, detection information, and recognition information using a plurality of sensors; And
    상기 통신부로부터 수신된 데이터 및 센서부로부터 측정된 센싱 데이터를 다채널로 수신하고, 상기 수신된 다채널 데이터를 기초로 뉴로모픽 기술을 기반으로 하는 스파이킹 뉴럴 네트워크 장치를 이용하여 학습 및 연산 처리를 수행하는 제어부;를 포함하되,It receives data received from the communication unit and sensing data measured from the sensor unit in multiple channels, and learns and calculates processing using a spiking neural network device based on neuromorphic technology based on the received multi-channel data. Includes a control unit for performing;
    상기 스파이킹 뉴럴 네트워크 장치는,The spiking neural network device,
    상기 다채널의 데이터를 수신하고, 상기 수신된 데이터를 필터링 및 표준화(normalization)하여 다차원 데이터로 변환하며, 상기 변환된 다차원 데이터의 특징점을 추출하는 전처리부; 및A pre-processor for receiving the multi-channel data, filtering and normalizing the received data into multi-dimensional data, and extracting feature points of the converted multi-dimensional data; And
    상기 특징점이 추출된 다차원 데이터마다 하나의 뉴런을 할당하여 신호의 강도에 따라 스파이크 신호를 생성하도록 설계하고, 각 뉴런을 연결하며, 상기 연결된 뉴런 간에 하나의 시냅스를 할당하고, 상기 시냅스 중 상기 스파이크 신호가 발생된 시냅스의 값에 대한 합산 값과 기 설정된 문턱치 값을 비교하여 상기 스파이크 신호를 내보내며, 상기 내보내진 스파이크 신호를 그룹핑하여 분류하고, 군집화하는 스파이킹 뉴럴 네트워크부;Designed to generate a spike signal according to signal strength by allocating one neuron for each extracted multidimensional data of the feature points, connecting each neuron, allocating one synapse between the connected neurons, and the spike signal among the synapses A spiked neural network unit that compares the sum value of the generated synapse value and a preset threshold value, sends out the spike signal, groups the spike signals, classifies them, and clusters them;
    를 포함하는 것을 특징으로 하는 지능형 장치.Intelligent device comprising a.
PCT/KR2018/015188 2018-11-26 2018-12-03 Spiking neural network device and intelligent device including same WO2020111356A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0147415 2018-11-26
KR1020180147415A KR102464490B1 (en) 2018-11-26 2018-11-26 Spiking neural network device and intelligent apparatus comprising the same

Publications (1)

Publication Number Publication Date
WO2020111356A1 true WO2020111356A1 (en) 2020-06-04

Family

ID=70852188

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/015188 WO2020111356A1 (en) 2018-11-26 2018-12-03 Spiking neural network device and intelligent device including same

Country Status (2)

Country Link
KR (1) KR102464490B1 (en)
WO (1) WO2020111356A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102535007B1 (en) 2020-11-13 2023-05-19 숭실대학교 산학협력단 Neuromorphic architecture dynamic selection method for snn model parameter-based modeling, recording medium and device for performing the method
KR102553366B1 (en) * 2020-11-24 2023-07-06 한남대학교 산학협력단 Spiking Neural Network-Based Component Generating System for Intelligent Application IoT
CN114925721B (en) * 2022-04-27 2023-04-25 中国电子科技集团公司第二十九研究所 Signal sorting method based on U-Net segmentation network
CN117311516B (en) * 2023-11-28 2024-02-20 北京师范大学 Motor imagery electroencephalogram channel selection method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170096105A (en) * 2014-12-19 2017-08-23 인텔 코포레이션 Method and apparatus for distributed and cooperative computation in artificial neural networks
KR20170135563A (en) * 2016-05-31 2017-12-08 한국과학기술원 A neuromotor device in the form of a wearable device and a method of processing biometric information using the neuromotor device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100338473B1 (en) * 1999-07-02 2002-05-30 조양호 Face detection method using multi-dimensional neural network and device for the same
KR20170117861A (en) 2016-04-14 2017-10-24 에스케이하이닉스 주식회사 Neural Network Systems
KR20180027887A (en) * 2016-09-07 2018-03-15 삼성전자주식회사 Recognition apparatus based on neural network and training method of neural network
KR20180069452A (en) * 2016-12-15 2018-06-25 삼성전자주식회사 Method for training the neural network, method for recogning using neural network and apparatus thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170096105A (en) * 2014-12-19 2017-08-23 인텔 코포레이션 Method and apparatus for distributed and cooperative computation in artificial neural networks
KR20170135563A (en) * 2016-05-31 2017-12-08 한국과학기술원 A neuromotor device in the form of a wearable device and a method of processing biometric information using the neuromotor device

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ANUP VANARSE: "An Investigation into Spike-Based Neuromorphic Approaches for Artificial Olfactory Systems", SENSORS 2017, vol. 17, no. 11, 10 November 2017 (2017-11-10), XP055712787, Retrieved from the Internet <URL:https://www.mdpi.com/1424-8220/17/11/2591> [retrieved on 20190802] *
EVANGELOS STROMATIAS: "An Event-Driven Classifier for Spiking Neural Networks Fed with Synthetic or Dynamic Vision Sensor Data", ORIGINAL RESEARCH ARTICLE OF FRONTIERS IN NEUROSCIENCE, 28 June 2017 (2017-06-28), XP055712791, Retrieved from the Internet <URL:https://www.frontiersin.org/articles/10.3389/fnins.2017.00350/full> [retrieved on 20190802] *
HWANG, TAEBO: "An Outline of NeuromorphicComputing", NON-OFFICIAL TRANSLATION SOC PLATFORM RESEARCH CENTER, KOREA ELECTRONICS TECHNOLOGY INSTITUTE., 6 August 2018 (2018-08-06) *
HWANG, TAEHO: "Neuromorphic ComputingTechnologj'", NON-OFFICIAL TRANSLATION SOC PLATFORM RESEARCH CENTER, KOREA ELECTRONICS TECHNOLOGY INSTITUTE., 29 March 2018 (2018-03-29) *

Also Published As

Publication number Publication date
KR20200068051A (en) 2020-06-15
KR102464490B1 (en) 2022-11-09

Similar Documents

Publication Publication Date Title
WO2020111356A1 (en) Spiking neural network device and intelligent device including same
CN111160139B (en) Electrocardiosignal processing method and device and terminal equipment
CN108764059B (en) Human behavior recognition method and system based on neural network
Alaslani Convolutional neural network based feature extraction for iris recognition
CN110133610B (en) Ultra-wideband radar action identification method based on time-varying distance-Doppler diagram
CN111612136B (en) Neural morphology visual target classification method and system
Dhull et al. ECG beat classifiers: a journey from ANN to DNN
SG182933A1 (en) A data structure and a method for using the data structure
CN115054272A (en) Electroencephalogram signal identification method and system for dyskinesia function remodeling
CN114983343A (en) Sleep staging method and system, computer-readable storage medium and electronic device
Yang et al. PDNet: a convolutional neural network has potential to be deployed on small intelligent devices for arrhythmia diagnosis
CN116612439A (en) Balancing method for modal domain adaptability and feature authentication and pedestrian re-identification method
Jarrah et al. IoMT-Based Smart Healthcare of Elderly People Using Deep Extreme Learning Machine
CN108255303B (en) Gesture recognition method based on self-made data gloves
CN114724245B (en) Incremental learning human body action recognition method based on CSI
WO2023054768A1 (en) Deep learning model system for detecting pressure ulcer disease and determining stage of pressure ulcer disease, generation method therefor, and method for diagnosing pressure ulcer by using same
Mahmood et al. A new hand gesture recognition system using artificial neural network
US20160321538A1 (en) Pattern Recognition System and Method
WO2012077909A2 (en) Method and apparatus for recognizing sign language using electromyogram sensor and gyro sensor
WO2024117546A1 (en) Edge device for detecting somnambulism
Mankar et al. Design of Adaptive Filter Using Jordan/Elman Neural Network in a Typical EMG Signal Noise Removal.
Sao et al. A literature review on approaches of ECG pattern recognition
Alrowais et al. Hand gesture recognition for disabled people using bayesian optimization with transfer learning
CN108363490A (en) A kind of good intelligent robot system of interaction effect
CN114496227B (en) Disease development prediction system and platform based on quantum neural network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18941561

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18941561

Country of ref document: EP

Kind code of ref document: A1