WO2023090592A1 - 뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법 - Google Patents

뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법 Download PDF

Info

Publication number
WO2023090592A1
WO2023090592A1 PCT/KR2022/012743 KR2022012743W WO2023090592A1 WO 2023090592 A1 WO2023090592 A1 WO 2023090592A1 KR 2022012743 W KR2022012743 W KR 2022012743W WO 2023090592 A1 WO2023090592 A1 WO 2023090592A1
Authority
WO
WIPO (PCT)
Prior art keywords
neuromorphic
learning model
neural network
defective
weight transfer
Prior art date
Application number
PCT/KR2022/012743
Other languages
English (en)
French (fr)
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 US17/972,049 priority Critical patent/US20230162014A1/en
Publication of WO2023090592A1 publication Critical patent/WO2023090592A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron

Definitions

  • the present invention relates to a weight transfer device for a neuromorphic device and a weight transfer method using the same.
  • SNNs Neural networks and Spiking Neural Networks (SNNs), which are currently widely studied, originated from imitation of actual biological nervous systems (concepts of memory, learning, and reasoning), but only adopt a similar network structure, signal transmission and It is different from the actual biological nervous system in various aspects, such as information expression method and learning method.
  • the present invention is intended to alleviate the performance degradation of the inference process by utilizing the synaptic element included in the neuromorphic element even when it includes a defective cell.
  • the present invention is to solve the above-mentioned problems of the prior art, to provide a weight transfer device and method for newly constructing an artificial neural network learning model in consideration of defective cells of synaptic devices and transferring the weights of the newly constructed learning model. There is a purpose.
  • a weight transfer device for a neuromorphic device includes a memory storing a weight transfer program for the neuromorphic device; and a processor that executes the weight transfer program, wherein the weight transfer program builds an artificial neural network learning model, transfers weights of the built artificial neural network learning model to the neuromorphic element, and transfers the weights to the transferred data. After determining whether a synaptic cell included in a lomorphic device is defective, setting a weight corresponding to a synaptic cell in a defective state to 0 in the artificial neural network learning model, rebuilding the artificial neural network learning model, and reconstructing artificial The weight of the neural network learning model is transferred to the neuromorphic element.
  • a weight transfer device for a neuromorphic device includes a memory storing a weight transfer program for the neuromorphic device; and a processor executing the weight transfer program, wherein the weight transfer program determines whether a synaptic cell included in the neuromorphic device is defective, and sets a weight corresponding to the defective synaptic cell to 0.
  • An artificial neural network learning model to be transferred to the neuromorphic element is constructed and weights of the constructed artificial neural network learning model are transferred to the neuromorphic element.
  • a weight transfer method for a neuromorphic element includes the steps of constructing an artificial neural network learning model; transferring weights based on the built learning model to the neuromorphic device; determining whether a synaptic cell included in the neuromorphic device is defective based on the transferred weight; setting a weight of the artificial neural network learning model corresponding to a synaptic cell in a defective state as a result of the determination to 0 and rebuilding the learning model; and transferring weights of the reconstructed artificial neural network learning model to the neuromorphic device.
  • a weight transfer method for a neuromorphic device includes determining whether a synaptic cell included in the neuromorphic device is defective; Setting a weight of an artificial neural network learning model corresponding to a synaptic cell in a defective state as a result of the determination to 0 and constructing an artificial neural network learning model; and transferring weights of the constructed artificial neural network learning model to the neuromorphic device.
  • FIG. 1 is a block diagram showing the configuration of a weight transfer device for a neuromorphic device according to an embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating a weight transfer method according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a weight transfer method according to another embodiment of the present invention.
  • FIG. 4 is a diagram for explaining a method of processing a defective cell of a synaptic cell according to an embodiment of the present invention.
  • FIG. 5 is a diagram for explaining a method of processing a defective cell of a synaptic cell according to another embodiment of the present invention.
  • FIG. 6 is a diagram for explaining an effect of a weight transfer technique according to an embodiment of the present invention.
  • a weight transfer device for a neuromorphic device includes a memory storing a weight transfer program for the neuromorphic device; and a processor that executes the weight transfer program, wherein the weight transfer program builds an artificial neural network learning model, transfers weights of the built artificial neural network learning model to the neuromorphic element, and transfers the weights to the transferred data. After determining whether a synaptic cell included in a lomorphic device is defective, setting a weight corresponding to a synaptic cell in a defective state to 0 in the artificial neural network learning model, rebuilding the artificial neural network learning model, and reconstructing artificial The weight of the neural network learning model is transferred to the neuromorphic element.
  • a weight transfer device for a neuromorphic device includes a memory storing a weight transfer program for the neuromorphic device; and a processor executing the weight transfer program, wherein the weight transfer program determines whether a synaptic cell included in the neuromorphic device is defective, and sets a weight corresponding to the defective synaptic cell to 0.
  • An artificial neural network learning model to be transferred to the neuromorphic element is constructed and weights of the constructed artificial neural network learning model are transferred to the neuromorphic element.
  • a weight transfer method for a neuromorphic element includes the steps of constructing an artificial neural network learning model; transferring weights based on the built learning model to the neuromorphic device; determining whether a synaptic cell included in the neuromorphic device is defective based on the transferred weight; setting a weight of the artificial neural network learning model corresponding to a synaptic cell in a defective state as a result of the determination to 0 and rebuilding the learning model; and transferring weights of the reconstructed artificial neural network learning model to the neuromorphic device.
  • a weight transfer method for a neuromorphic device includes determining whether a synaptic cell included in the neuromorphic device is defective; Setting a weight of an artificial neural network learning model corresponding to a synaptic cell in a defective state as a result of the determination to 0 and constructing an artificial neural network learning model; and transferring weights of the constructed artificial neural network learning model to the neuromorphic device.
  • the neuromorphic device of the present invention is manufactured to mimic the human brain in hardware using a semiconductor process, and includes a synaptic element corresponding to a synapse of the brain, a neuron circuit corresponding to a neuron, and various peripheral circuits. it means.
  • FIG. 1 is a block diagram showing the configuration of a weight transfer device for a neuromorphic device according to an embodiment of the present invention.
  • the weight transfer device 100 is implemented in the form of a computing device including a memory 110 and a processor 120, and may also include a communication module, peripheral devices for processing various IOs, and a power supply unit. there is.
  • the weight transfer device 100 includes a socket in which the neuromorphic element 200, which is a target of weight transfer, is mounted, various sensing circuits for reading the state of the neuromorphic element 200, and the neuromorphic element ( 200), various voltage supply circuits for writing weights may be additionally disposed. Since this corresponds to a peripheral circuit for writing data to or reading data from a memory cell of a general semiconductor memory device, a detailed description thereof will be omitted.
  • a weight transfer program for the neuromorphic element is stored in the memory 110, and an operation of constructing an artificial neural network learning model and an operation of transferring the weight of the built learning model to the neuromorphic element 200 are executed by the corresponding program. do.
  • the memory 110 collectively refers to a non-volatile storage device that continuously retains stored information even when power is not supplied and a volatile storage device that requires power to maintain stored information. Also, the memory 110 may temporarily or permanently store data processed by the processor 120 .
  • the processor 120 executes the weight transfer program stored in the memory 110 .
  • the processor 120 may include various types of devices that control and process data.
  • the processor 120 may refer to a data processing device embedded in hardware having a physically structured circuit to perform functions expressed by codes or instructions included in a program.
  • the processor 120 may include a microprocessor, a central processing unit (CPU), a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), an FPGA ( field programmable gate array), etc., but the scope of the present invention is not limited thereto.
  • the neuromorphic element 200 which is a target to which weights are transferred by the weight transfer device 100 , may include a synapse array 210 , a neuron circuit 220 , and a control unit 230 .
  • the synapse array 210 is implemented to exert the same functions as synapses in the brain, and is typically implemented based on a non-volatile memory device.
  • the synaptic array 210 corresponds to a plurality of synaptic cells, and each synaptic cell stores a predetermined weight.
  • the synapse array 210 may include synaptic cells corresponding to the product of the number of front-end neuron circuits coupled to the synapse array 210 and the number of back-end neuron circuits.
  • An operation of storing weights in the synapse array 210 or a process of reading stored weights is performed through the same principle as a program operation or a read operation performed in a general non-volatile memory device.
  • the weight means a weight that is multiplied to an input signal in a perceptron structure representing an artificial neural network model, and is additionally defined as a concept including a bias, a special weight having an input of 1.
  • the neuron circuit 220 may be divided into a front-end neuron circuit or pre-neuron circuit coupled to the front end of the synapse array 210 and a rear-end neuron circuit or post-neuron circuit coupled to the rear end of the synapse array 210 .
  • a typical neuron circuit 220 includes a signal integrator for integrating a signal transmitted through the immediately preceding synapse, and a comparator for comparing whether or not the integrated signal is equal to or greater than a threshold value.
  • a typical neuron circuit is configured to output a spike signal according to an firing operation when a comparison result of the comparator is equal to or greater than a threshold value.
  • a counter for calculating the number of spike signals may be connected to each neuron circuit 120 . Meanwhile, in relation to the configuration of the signal integrator, an embodiment in which a signal is integrated using a capacitor is generally known.
  • the controller 230 controls the operation of the synapse array 210 and the neuron circuit 220 .
  • the control unit 230 may include a peripheral circuit that performs an operation for programming weights or biases with respect to the synapse array 210 and an operation for reading stored weights.
  • the control unit 230 includes various voltage supply modules for performing an operation such as ISPP (Incremental Step Pulse Program) or ISPE (Incremental Step Pulse Erase) with respect to the synapse array 210 for adjusting weights or biases. can do.
  • the control unit 230 may be configured to perform a program operation or an erase operation of weights suitable for device characteristics of the synapse array 210 .
  • FIG. 2 is a flowchart illustrating a weight transfer method according to an embodiment of the present invention.
  • the weight transfer program executed in the weight transfer device 100 may first build an artificial neural network learning model (S210).
  • the artificial neural network learning model built by the weight transcription program is DFN (Deep Feedforward Network), RNN (Recurrent Neural Network), LSTM (Long Short-Term Memory), Autoencoder, CNN (Convolutional Neural Network), GAN (Generative Adversarial Network), DRN (Deep Residual Network), etc. can be built using various learning network structures.
  • a weight value is determined for each node.
  • the determined weight is transferred to the neuromorphic element 200 and then input to the neuromorphic element 200 We want to perform the process of inference by inputting data.
  • the weight transfer device 100 builds an artificial neural network learning model to calculate weights to be transferred to the neuromorphic element 200 .
  • the weights of the artificial neural network learning model are transferred to the neuromorphic element 200 (S220).
  • the weights of the artificial neural network learning model can be calculated in the form of a matrix, which is recorded in the form of a matrix in the synapse array 210 included in the neuromorphic element 200, and in this way, the weights are ) is defined as transfer.
  • the weight value is converted into a conductivity value stored in each synaptic cell of the synapse array 210, and a data write operation is performed for each synapse array 210 according to the converted conductivity value.
  • a specific transcription method may vary depending on the type of device of each synapse array 210, for example, for the flash memory-based synapse array 210, ISPP (Incremental Step Pulse Program) or ISPE (Incremental Step Pulse Erase), etc.
  • ISPP Intelligent Step Pulse Program
  • ISPE Intelligent Step Pulse Erase
  • the difference between the conductivity value to be recorded in each synaptic cell and the conductivity value actually output from each synaptic cell is compared, and if the value is within a threshold value, it is judged to be a normal cell and the value exceeds the threshold value. If it exceeds, it is determined as a defective cell.
  • the weight of the artificial neural network learning model corresponding to the synaptic cell is set to have a value of 0, and the artificial neural network learning model is It is to be rebuilt (S240). At this time, the conductivity of the synaptic cell determined to be defective is set to 0. Meanwhile, when no defective cells are generated, the transfer process is completed.
  • FIG. 4 is a diagram for explaining a method of processing a defective cell of a synaptic cell according to an embodiment of the present invention.
  • the synaptic array shown in FIG. 4 has a crossbar array structure and includes EEPROM-based synaptic cells using electronic fuses. As shown in (a), when a defective element (indicated as fault) is sensed, as shown in (b), the fuse of the defective element is cut and the conductivity of the defective element is set to zero.
  • a synaptic array in which a synaptic element and a fuse are serially coupled for each cell may be considered, and a method of disconnecting a fuse connected in series with a defective synaptic element may also be considered.
  • FIG. 5 is a diagram for explaining a method of processing a defective cell of a synaptic cell according to another embodiment of the present invention.
  • weights may be defined using a difference in conductivity between two synapses. If the conductivities of two adjacent synaptic cells are G+ and G-, respectively, the voltage applied to each synaptic cell and the conductance of each synaptic cell are multiplied to define the current flowing through each synaptic cell. In order to set the conductance of each synaptic cell to 0, cells adjacent to each other may be paired to express one weight. For example, in this case, setting the conductivity to 0 means, strictly speaking, setting the difference in conductivity (G+-G-) between adjacent cells to 0.
  • the conductance (G-) of the paired synaptic cell should have the same value. Program it so that the final weight becomes 0. That is, if the conductivity of the defective cell is measured as 1, an operation of adjusting the state of the corresponding synaptic cell is performed so that the conductivity of the paired synaptic cell also becomes 1. Through this, the difference in conductivity between the two cells becomes zero.
  • the weights of the updated artificial neural network learning model are transferred to the neuromorphic element through the reconstruction process (S250).
  • the weight of the artificial neural network learning model corresponding to the defective cell is set to 0, other weight values may be changed in the process of rebuilding the artificial neural network learning model, and the weight of the artificial neural network learning model thus changed is transferred to a neuromorphic device.
  • an artificial neural network learning model can be newly built using the characteristics of the synaptic array including the defective element, and accuracy in the reasoning process can be improved.
  • FIG. 3 is a flowchart illustrating a weight transfer method according to another embodiment of the present invention.
  • An alternative configuration is similar to the method of FIG. 2 , with a difference in that defective cells of the neuromorphic device are identified and processing for the defective cells is performed first.
  • the defect processing of the synaptic cell included in the neuromorphic device is first performed (S310).
  • the same input data is collectively recorded in each synaptic cell.
  • the difference between the conductivity value to be recorded in each synaptic cell and the conductivity value actually output from each synaptic cell is compared, and if the value is within the threshold value, it is judged as a normal cell, and if the value exceeds the threshold value is determined as a defective cell.
  • the conductivity of the synaptic cell determined to be defective is set to 0.
  • the difference between the conductivity value to be recorded in each synaptic cell and the conductivity value actually output from each synaptic cell is compared, and if the value is within a threshold value, it is judged to be a normal cell and the value exceeds the threshold value In this case, it is determined as a defective cell.
  • the artificial neural network learning model is built with the weight of the artificial neural network learning model corresponding to the synaptic cell set to have a value of 0. let it do
  • the weights of the artificial neural network learning model generated through the construction process of the artificial neural network learning model are transferred to the neuromorphic device (S330).
  • the artificial neural network learning model since the artificial neural network learning model is built in a state where the weight of the artificial neural network learning model corresponding to the defective cell is set to 0, the artificial neural network learning model reflecting the state of the synaptic cell can be built.
  • an artificial neural network learning model can be newly built using the characteristics of the synaptic array including the defective element, and accuracy in the reasoning process can be improved.
  • the weights of the artificial neural network learning model can be generated or newly updated by reflecting the state of the defective cell.
  • the artificial neural network learning model built through this process may reflect hardware defect characteristics of each synaptic element, and through this, it is possible to improve the inference accuracy of each neuromorphic element.
  • FIG. 6 is a diagram for explaining an effect of a weight transfer technique according to an embodiment of the present invention.
  • Each of the graphs in (a) to (d) of FIG. 6 is a graph showing inference results obtained by transcribing a learning model for classifying the MNIST data set into each neuromorphic element.
  • FIG. (b) shows the result of a technique known as Fault-aware retraining (FAR).
  • FAR Fault-aware retraining
  • An embodiment of the present invention may be implemented in the form of a recording medium including instructions executable by a computer, such as program modules executed by a computer.
  • Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media.
  • Computer readable media may include computer storage media.
  • Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Computer Hardware Design (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 일 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 장치는, 상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및 상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되, 상기 가중치 전사 프로그램은 인공 신경망 학습 모델을 구축하고, 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하고, 상기 가중치가 전사된 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 상기 인공 신경망 학습 모델에서 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 후 상기 인공 신경망 학습 모델을 재구축하고, 재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사한다.

Description

뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법
본 발명은 뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법에 관한 것이다.
최근 인공신경망에 기반한 컴퓨팅 기술이 발전함과 더불어, 하드웨어 기반 뉴럴 네트워크에 대한 연구 개발도 활발하게 이루어지고 있다.
현재 널리 연구되고 있는 뉴럴 네트워크와 스파이킹 뉴럴 네트워크(Spiking Neural Network, SNN)는 실제 생물학적 신경계의 모방(기억, 학습, 추론에 대한 개념)으로부터 시작되었지만, 유사한 네트워크 구조를 채택할 뿐, 신호 전달 및 정보 표현 방법, 학습 방법 등 다양한 측면에서 실제 생물학적 신경계와는 차이점이 있다.
한편, 실제 신경계와 거의 동일하게 동작하는 하드웨어 기반 SNN은 아직 기존의 뉴럴 네트워크를 뛰어넘는 성능을 보이는 학습 방법이 개발되지 않아, 실제 산업에서 사용되고 있는 사례는 드물다. 하지만 기존 뉴럴 네트워크를 사용하여 시냅스 가중치를 도출하고 이를 활용해 SNN 방식으로 추론 한다면, 높은 정확도와 동시에 초저전력 컴퓨팅 시스템을 구현할 수 있어, 이에 대한 연구가 활발히 진행되고 있다.
뉴럴 네트워크를 통해 학습한 시냅스 가중치를 하드웨어 기반 뉴럴 네트워크에 전사하여 추론하게 되면 기존 뉴럴 네트워크와 거의 동일한 수준의 성능을 낼 수 있다. 그러나, 종래의 시냅스 소자의 경우 소자의 제조 과정에서 결함이 발생할 가능성이 있어, 이를 해결할 수 있는 방법이 연구되고 있다. 시냅스 소자에 심각한 결함이 발생한 때에는 리던던트 어레이에 액세스 하는 방식을 사용하는 종래 기술이 알려져 있다. 또한, 재료의 다양화를 통해 시냅스 소자의 안정성을 극대화하는 방향으로 기술이 개발되고 있으나 결함 소자를 제거하는 근본적인 해결 방안은 아니다.
본 발명은 뉴로모픽 소자에 포함된 시냅스 소자가 결함 셀을 포함한 경우에도, 이를 활용하여 추론 과정의 성능 저하를 완화하고자 한다
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 시냅스 소자의 결함 셀을 고려하여 인공 신경망 학습 모델을 새롭게 구축하고, 새롭게 구축된 학습 모델의 가중치를 전사하는 가중치 전사 장치 및 방법을 제공하는데 목적이 있다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다
상술한 기술적 과제를 해결하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 장치는, 상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및 상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되, 상기 가중치 전사 프로그램은 인공 신경망 학습 모델을 구축하고, 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하고, 상기 가중치가 전사된 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 상기 인공 신경망 학습 모델에서 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 후 상기 인공 신경망 학습 모델을 재구축하고, 재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사한다.
본 발명의 제 2 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 장치는, 상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및 상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되, 상기 가중치 전사 프로그램은 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 상태에서 상기 뉴로모픽 소자에 전사할 인공 신경망 학습 모델을 구축하고, 구축된 상기 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사한다.
본 발명의 제 3 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 방법은, 인공 신경망 학습 모델을 구축하는 단계; 구축된 학습 모델에 의한 가중치를 상기 뉴로모픽 소자에 전사하는 단계; 상기 전사된 가중치를 기초로 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하는 단계; 상기 판단 결과 결함 상태의 시냅스 셀에 대응하는 상기 인공 신경망 학습 모델의 가중치를 0으로 설정하고 상기 학습 모델을 재구축하는 단계; 및 재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 단계를 포함한다.
본 발명의 제 4 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 방법은, 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하는 단계; 상기 판단 결과 결함 상태의 시냅스 셀에 대응하는 인공 신경망 학습 모델의 가중치를 0으로 설정하고 인공 신경망 학습 모델을 구축하는 단계; 및 상기 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 단계를 포함한다.
전술한 본원의 과제 해결 수단에 의하면, 시냅스 소자의 하드웨어적인 결함 상태를 고려한, 인공 신경망 학습 모델의 구축이 가능하다. 이를 통해, 시냅스 소자를 사용하는 뉴로모픽 소자의 추론 성능을 현저하게 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 위한 가중치 전사 장치의 구성을 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 가중치 전사 방법을 도시한 순서도이다.
도 3은 본 발명의 다른 실시예에 따른 가중치 전사 방법을 도시한 순서도이다.
도 4는 본 발명의 일 실시예에 따른 시냅스 셀의 결함 셀 처리 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 다른 실시예에 따른 시냅스 셀의 결함 셀 처리 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 가중치 전사 기술의 효과를 설명하기 위한 도면이다.
본 발명의 제 1 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 장치는, 상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및 상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되, 상기 가중치 전사 프로그램은 인공 신경망 학습 모델을 구축하고, 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하고, 상기 가중치가 전사된 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 상기 인공 신경망 학습 모델에서 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 후 상기 인공 신경망 학습 모델을 재구축하고, 재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사한다.
본 발명의 제 2 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 장치는, 상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및 상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되, 상기 가중치 전사 프로그램은 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 상태에서 상기 뉴로모픽 소자에 전사할 인공 신경망 학습 모델을 구축하고, 구축된 상기 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사한다.
본 발명의 제 3 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 방법은, 인공 신경망 학습 모델을 구축하는 단계; 구축된 학습 모델에 의한 가중치를 상기 뉴로모픽 소자에 전사하는 단계; 상기 전사된 가중치를 기초로 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하는 단계; 상기 판단 결과 결함 상태의 시냅스 셀에 대응하는 상기 인공 신경망 학습 모델의 가중치를 0으로 설정하고 상기 학습 모델을 재구축하는 단계; 및 재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 단계를 포함한다.
본 발명의 제 4 측면에 따른 뉴로모픽 소자를 위한 가중치 전사 방법은, 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하는 단계; 상기 판단 결과 결함 상태의 시냅스 셀에 대응하는 인공 신경망 학습 모델의 가중치를 0으로 설정하고 인공 신경망 학습 모델을 구축하는 단계; 및 상기 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 단계를 포함한다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본 발명의 뉴로모픽 장치는 반도체 공정을 이용하여 하드웨어적으로 사람의 뇌를 모사하도록 제조된 것으로, 뇌의 시냅스에 해당하는 시냅스 소자, 뉴런에 해당하는 뉴런 회로, 그리고 각종 주변회로를 포함하는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 위한 가중치 전사 장치의 구성을 도시한 블록도이다.
도시된 바와 같이 가중치 전사 장치(100)는 메모리(110) 및 프로세서(120)를 포함하는 컴퓨팅 장치의 형태로 구현되며, 그 밖에 통신 모듈, 각종 IO 처리를 위한 주변 장치, 전원부등을 포함할 수 있다. 또한, 가중치 전사 장치(100)는 가중치 전사의 대상이 되는 뉴로모픽 소자(200)가 거치되는 소켓과, 뉴로모픽 소자(200)의 상태를 판독하기 위한 각종 센싱 회로, 뉴로모픽 소자(200)에 가중치를 기록하기 위한 각종 전압 공급 회로가 추가로 배치될 수 있다. 이는 일반적인 반도체 메모리 소자의 메모리 셀에 데이터를 기록하거나, 메모리 셀로부터 데이터를 독출하기 위한 주변회로에 해당하는 것이어서, 구체적인 설명은 생략하기로 한다.
메모리(110)에는 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장되며, 해당 프로그램에 의해 인공 신경망 학습 모델의 구축 동작과 구축된 학습 모델의 가중치를 뉴로모픽 소자(200)에 전사하는 동작이 실행된다. 메모리(110)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력을 필요로 하는 휘발성 저장장치를 통칭 한다. 또한, 메모리(110)는 프로세서(120)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다.
프로세서(120)는 메모리(110)에 저장된 가중치 전사 프로그램을 실행한다. 프로세서(120)는 데이터를 제어 및 처리하는 다양한 종류의 장치들을 포함할 수 있다. 프로세서(120)는 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 일 예에서, 프로세서(120)는 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 형태로 구현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
또한, 가중치 전사 장치(100)에 의해 가중치가 전사되는 대상인 뉴로 모픽 소자(200)는 시냅스 어레이(210), 뉴런회로(220) 및 제어부(230)를 포함할 수 있다.
시냅스 어레이(210)는 뇌의 시냅스와 동일한 기능을 발휘하도록 구현된 것으로, 통상적으로는 비휘발성 메모리 소자에 기반하여 구현되고 있다. 시냅스 어레이(210)는 복수의 시냅스 셀과 대응하는 것으로, 각각의 시냅스 셀은 소정의 가중치를 각각 저장하고 있다. 예를 들면, 시냅스 어레이(210)는 시냅스 어레이(210)에 결합되는 전단 뉴런 회로의 개수와 후단 뉴런 회로의 개수의 곱에 해당하는 시냅스 셀을 포함할 수 있다. 시냅스 어레이(210)에 대하여 가중치를 저장하는 동작이나, 저장된 가중치를 독출하는 과정은, 일반적인 비휘발성 메모리 소자에서 수행되는 프로그램 동작 또는 독출동작과 마찬가지 원리를 통해 수행된다. 여기서, 가중치라 함은 인공 신경망 모형을 나타내는 퍼셉트론 구조 등에서 입력 신호에 곱해지는 가중치(weight)를 의미하며, 추가적으로 입력이 1인 특별한 가중치인 바이어스(bias)를 포함하는 개념으로서 정의한다.
뉴런 회로(220)는 시냅스 어레이(210)의 전단에 결합되는 전단 뉴런 회로 또는 프리 뉴런 회로와, 시냅스 어레이(210)의 후단에 결합되는 후단 뉴런 회로 또는 포스트 뉴런 회로 등으로 구분될 수 있다. 통상의 뉴런 회로(220)는 직전의 시냅스 등을 통해 전달되는 신호가 적분되는 신호적분부와, 적분된 신호가 문턱값 이상인지 여부를 비교하는 비교기등을 포함한다. 그리고, 통상의 뉴런 회로는 비교기의 비교 결과가 문턱값 이상이 되면, 발화 동작에 따라 스파이크 신호를 출력하도록 구성된다. 또한, 각 뉴런 회로(120)에는 스파이크 신호의 개수를 산출하는 카운터를 연결할 수 있다. 한편, 신호적분부의 구성과 관련하여, 커패시터를 이용하여 신호를 적분하는 실시예가 일반적으로 알려져있다.
제어부(230)는 시냅스 어레이(210)와 뉴런 회로(220)의 동작을 제어한다. 또한, 제어부(230)는 시냅스 어레이(210)에 대하여 가중치나 바이어스를 프로그래밍하기 위한 동작, 저장된 가중치를 독출하는 동작을 수행하는 주변회로를 포함할 수 있다. 또한, 제어부(230)는 가중치나 바이어스의 조절을 위해 시냅스 어레이(210)에 대하여 ISPP (Incremental Step Pulse Program) 또는 ISPE(Incremental Step Pulse Erase) 등의 동작을 수행하기 위한, 각종 전압 공급 모듈을 포함할 수 있다. 또한, 제어부(230)는 시냅스 어레이(210)의 소자 특성에 맞는 가중치의 프로그램 동작 또는 소거 동작 등을 수행하도록 구성될 수 있다.
도 2는 본 발명의 일 실시예에 따른 가중치 전사 방법을 도시한 순서도이다.
가중치 전사 장치(100)에서 실행되는 가중치 전사 프로그램은 먼저 인공 신경망 학습 모델을 구축할 수 있다(S210). 가중치 전사 프로그램이 구축하는 인공 신경망 학습 모델은 DFN(Deep Feedforward Network), RNN(Recurrent Neural Network), LSTM(Long Short-Term Memory), 오토인코더(Autoencoder), CNN(Convolutional Neural Network), GAN(Generative Adversarial Network), DRN(Deep Residual Network) 등 다양한 학습 네트워크 구조를 이용하여 구축될 수 있다. 각각의 인공 신경망 학습 모델의 학습이 완료되면, 각 노드 별로 가중치 값이 결정되는데, 본 발명에서는 이와 같이 결정된 가중치를 뉴로모픽 소자(200)에 전사한 후, 뉴로모픽 소자(200)에 입력 데이터를 입력하여 추론하는 과정을 수행하고자 한다. 이를 위해, 가중치 전사 장치(100)는 뉴로모픽 소자(200)에 전사할 가중치를 산출하기 위해 인공 신경망 학습 모델을 구축한다.
다음으로, 인공 신경망 학습 모델의 가중치를 뉴로모픽 소자(200)에 전사한다(S220).
인공 신경망 학습 모델의 가중치는 행렬의 형태로 산출될 수 있고, 이는 뉴로모픽 소자(200)에 포함된 시냅스 어레이(210)에 행렬 형태로 기록되며, 이와 같이, 가중치가 뉴로모픽 소자(200)에 기록되는 과정을 전사(transfer)로 정의한다. 전사 동작을 수행하기 전에 가중치 값을 시냅스 어레이(210)의 각 시냅스 셀에 저장되는 전도도 값으로 변환하고, 변환된 전도도 값에 따라 각 시냅스 어레이(210)에 대해 데이터 기록 동작이 수행되도록 한다.
구체적인 전사 방법은 각 시냅스 어레이(210)의 소자 종류에 따라 달라질 수 있으며, 예를 들어 플래시 메모리에 기반한 시냅스 어레이(210)에 대해서는, ISPP (Incremental Step Pulse Program) 또는 ISPE(Incremental Step Pulse Erase) 등의 데이터 프로그램 동작을 통해, 각 시냅스 셀에 가중치를 기록할 수 있다.
다음으로, 가중치가 전사된 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단한다(S230).
예를 들면, 각 시냅스 셀에 기록하기로 한 전도도 값과 실제 각 시냅스 셀에서 출력되는 전도도 값의 차이를 비교하고, 그 값이 임계값 이내인 경우에는 정상 셀로 판단하고, 그 값이 임계값을 초과하는 경우에는 결함 셀로 판단한다.
만약, 시냅스 어레이에 결함 셀이 발생한 경우에는 해당 셀에 대해서는 이후에도 데이터 기록이 어려울 가능성이 높으므로, 해당 시냅스 셀과 대응하는 인공 신경망 학습 모델의 가중치는 0 값을 갖도록 설정하고, 인공 신경망 학습 모델을 재구축하도록 한다(S240). 이때, 결함으로 판단된 시냅스 셀에 대해서는 전도도가 0이 되도록 한다. 한편, 결함 셀이 발생하지 않은 경우에는 전사 과정을 완료한다.
도 4는 본 발명의 일 실시예에 따른 시냅스 셀의 결함 셀 처리 방법을 설명하기 위한 도면이다.
도 4에 도시된 시냅스 어레이는 크로스바 어레이 구조를 가지며, 전자 퓨즈를 사용하는 EEPROM 기반의 시냅스 셀을 포함한다. (a)에 도시된 바와 같이, 결함 소자(fault 로 표시됨)를 센싱하게 되면, (b)에 도시된 바와 같이, 결함 소자의 퓨즈를 끊어 결함 소자의 전도도가 0이 되도록 설정한다.
또는, 다른 실시예로서, 각 셀별로 시냅스 소자와 퓨즈가 직렬 결합되어 있는 형태의 시냅스 어레이를 고려할 수 있으며, 결함이 있는 시냅스 소자와 직렬로 연결된 퓨즈를 끊는 방식도 고려할 수 있다.
도 5는 본 발명의 다른 실시예에 따른 시냅스 셀의 결함 셀 처리 방법을 설명하기 위한 도면이다.
도 5에 도시된 시냅스 어레이에서, 두개의 시냅스의 전도도 차이를 이용하여 가중치를 정의하할 수 있다. 서로 인접한 두개의 시냅스 셀의 전도도가 각각 G+, G- 라고 하면, 각 시냅스 셀에 인가되는 전압과 각 시냅스 셀의 전도도가 곱해져 각 시냅스 셀에 흐르는 전류를 정의할 수 있다. 각 시냅스 셀의 전도도를 0으로 설정하기 위해, 서로 인접한 셀을 쌍으로 묶어, 하나의 가중치를 표현하도록 구성할 수 있다. 예를 들어, 이러한 경우 전도도를 0으로 한다는 의미는 엄밀히 말하면 서로 인접한 셀의 전도도의 차이(G+- G- )를 0으로 한다는 의미이다.
예를 들어, G+와 G- 가 0과 1 사이의 값이라고 하고, 결함이 있는 시냅스 셀의 전도도(G+)로 고정된 것이라면, 이와 쌍을 이루는 시냅스 셀의 전도도(G-)가 동일한 값을 갖도록 프로그램하여, 최종 가중치가 0이 되도록 한다. 즉, 결함 셀의 전도도가 1로 측정된다면, 이와 쌍을 이루는 시냅스 셀의 전도도 역시 1이 되도록 해당 시냅스 셀의 상태를 조정하는 동작을 수행한다. 이를 통해 두 셀의 전도도의 차이가 0이 되도록 한다.
다시 도 2를 참조하면, 재구축 과정을 통해 갱신 인공 신경망 학습 모델의 가중치를 뉴로모픽 소자에 전사한다(S250). 앞서 설명한 바와 같이, 결함 셀에 대응하는 인공 신경망 학습 모델의 가중치가 0으로 설정되면, 인공 신경망 학습 모델의 재구축 과정에서, 다른 가중치 값이 변경될 수 있으며, 이와 같이 변경된 인공 신경망 학습 모델의 가중치를 뉴로모픽 소자에 전사한다. 이러한 과정을 수행하게 되면, 결함 소자를 포함하는 시냅스 어레이의 특성을 이용한 상태로 인공 신경망 학습 모델을 새롭게 구축하고, 추론 과정에서의 정확성도 향상시킬 수 있다.
한편, 위의 단계(S230~S250)은 결함 셀에 대한 처리가 모두 마무리될때까지 반복적으로 수행될 수 있다.
도 3은 본 발명의 다른 실시예에 따른 가중치 전사 방법을 도시한 순서도이다.
대체적인 구성은 도 2의 방법과 유사한데, 뉴로모픽 소자의 결함 셀을 확인하고, 결함 셀에 대한 처리를 우선적으로 수행하는 것에 차이점이 있다.
즉, 뉴로모픽 소자에 포함된 시냅스 셀의 결함 처리를 먼저 실행한다(S310). 시냅스 셀의 결함 여부를 먼저 판단하기 위해, 일괄적으로 동일한 입력 데이터를 각 시냅스 셀에 기록한다. 그리고, 각 시냅스 셀에 기록하기로 한 전도도 값과 실제 각 시냅스 셀에서 출력되는 전도도 값의 차이를 비교하고 그 값이 임계값 이내인 경우에는 정상 셀로 판단하고, 그 값이 임계값을 초과하는 경우에는 결함 셀로 판단한다. 그리고, 결함으로 판단된 시냅스 셀에 대해서는 전도도가 0이 되도록 설정 한다.
한편, 결함 셀이 발생하지 않은 경우에는 이후에 학습 모델 구축 과정과 전사 과정을 순차적으로 수행한다.
다음으로, 결함 셀을 고려하여 인공 신경망 학습 모델을 구축한다(S320).
예를 들면, 각 시냅스 셀에 기록하기로 한 전도도 값과 실제 각 시냅스 셀에서 출력되는 전도도 값의 차이를 비교하고 그 값이 임계값 이내인 경우에는 정상 셀로 판단하고, 그 값이 임계값을 초과하는 경우에는 결함 셀로 판단한다.
만약, 결함 셀이 발생한 경우에는 해당 셀에 대해서는 이후에도 데이터 기록이 어려울 가능성이 높으므로, 해당 시냅스 셀과 대응하는 인공 신경망 학습 모델의 가중치는 0 값을 갖도록 설정한 상태에서, 인공 신경망 학습 모델을 구축하도록 한다.
다음으로, 인공 신경망 학습 모델의 구축 과정을 통해 생성된 인공 신경망 학습 모델의 가중치를 뉴로모픽 소자에 전사한다(S330). 앞서 설명한 바와 같이, 결함 셀에 대응하는 인공 신경망 학습 모델의 가중치가 0으로 설정된 상태에서, 인공 신경망 학습 모델이 구축되므로, 시냅스 셀의 상태를 반영한 인공 신경망 학습 모델이 구축될 수 있다. 이러한 과정을 수행하게 되면, 결함 소자를 포함하는 시냅스 어레이의 특성을 이용한 상태로 인공 신경망 학습 모델을 새롭게 구축하고, 추론 과정에서의 정확성도 향상시킬 수 있다.
이와 같이, 결함 셀의 상태를 반영하여 인공 신경망 학습 모델의 가중치를 생성하거나, 새롭게 갱신할 수 있는 것에 기술적 특징이 있다. 또한, 이와 같은 과정을 통해 구축된 인공 신경망 학습 모델은 각 시냅스 소자의 하드웨어적인 결함 특성을 반영할 수 있으며, 이를 통해 각 뉴로모픽 소자의 추론 정확성을 향상시킬 수 있다.
도 6은 본 발명의 일 실시예에 따른 가중치 전사 기술의 효과를 설명하기 위한 도면이다.
도 6의 (a) 내지 (d)의 그래프 각각은 MNIST 데이터 셋을 분류하기 위한 학습 모델을 각각의 뉴로 모픽 소자에 전사하고, 이를 이용한 추론 결과를 그래프로 나타낸 것이다.
(d)는 임의의 가중치 값을 갖는 결함 소자 10%만 발생해도 정확도가 10% 부근으로 낮아짐을 나타내고 있다.
(b)는 결함 인지 재학습 (Fault-aware retraining, FAR) 으로 알려진 기술의 결과를 도시한 것으로, 시냅스 소자 어레이에 결함 소자가 발생할 경우 결함 소자의 전도도를 반영하고 재학습을 통해, 정상적인 시냅스 소자들만 가중치를 갱신하는 방법이다. 결함 인지 재학습을 적용하면 정확도가 개선되긴 하지만 10%의 결함 비율에서조차 평균 60% 정도의 정확도를 나타낸다는 점에서 여전히 부족한 수준이며 편차도 크다.
(c)는 결함 소자의 가중치를 0으로 바꿔주는 동작을 수행한 것으로, 이것만으로도 (b)의 결함 인지 재학습 보다 더 많은 인식률 향상이 발생함을 확인할 수 있다.
또한, (a)와 같이, 결함 인지 재학습과 결함 소자의 가중치를 0으로 바꿔주는 본 발명의 동작은 80%의 결함 비율에서도 99.29%의 인식률로 확연한 성능 향상을 이끌어낼 수 있음을 확인할 수 있다.
이와 같이, 본 발명에서는 뉴로모픽 소자에 포함된 시냅스 셀들 중 결함 셀을 확인하고, 이를 반영하여 인공 신경망 학습 모델이 재구축되도록 한다는 점에서 기술적 차별성이 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.

Claims (10)

  1. 뉴로모픽 소자를 위한 가중치 전사 장치에 있어서,
    상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및
    상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되,
    상기 가중치 전사 프로그램은 인공 신경망 학습 모델을 구축하고, 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하고, 상기 가중치가 전사된 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 상기 인공 신경망 학습 모델에서 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 후 상기 인공 신경망 학습 모델을 재구축하고, 재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 것인, 가중치 전사 장치.
  2. 제1항에 있어서,
    상기 가중치 전사 장치는 상기 뉴로모픽 소자에서 결함으로 판단된 시냅스 셀의 전도도를 0으로 설정하는 것인, 가중치 전사 장치.
  3. 뉴로모픽 소자를 위한 가중치 전사 장치에 있어서,
    상기 뉴로모픽 소자에 대한 가중치 전사 프로그램이 저장된 메모리; 및
    상기 가중치 전사 프로그램을 실행하는 프로세서를 포함하되,
    상기 가중치 전사 프로그램은 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하고, 결함 상태의 시냅스 셀에 대응하는 가중치를 0으로 설정한 상태에서 상기 뉴로모픽 소자에 전사할 인공 신경망 학습 모델을 구축하고, 구축된 상기 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 것인, 가중치 전사 장치.
  4. 제3항에 있어서,
    상기 가중치 전사 장치는 상기 뉴로모픽 소자의 전체 시냅스 셀에 동일한 데이터를 입력한 후 각 시냅스 셀의 출력값에 기초하여 각 시냅스 셀의 결함 여부를 판단하는 것인, 가중치 전사 장치.
  5. 제3항에 있어서,
    상기 가중치 전사 장치는 상기 뉴로모픽 소자에서 결함으로 판단된 시냅스 셀의 전도도를 0으로 설정하는 것인, 가중치 전사 장치.
  6. 뉴로모픽 소자를 위한 가중치 전사 방법에 있어서,
    인공 신경망 학습 모델을 구축하는 단계;
    구축된 학습 모델에 의한 가중치를 상기 뉴로모픽 소자에 전사하는 단계;
    상기 전사된 가중치를 기초로 상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하는 단계;
    상기 판단 결과 결함 상태의 시냅스 셀에 대응하는 상기 인공 신경망 학습 모델의 가중치를 0으로 설정하고 상기 학습 모델을 재구축하는 단계; 및
    재구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 단계를 포함하는, 뉴로모픽 소자를 위한 가중치 전사 방법.
  7. 제6항에 있어서,
    상기 뉴로모픽 소자에서 결함으로 판단된 시냅스 셀의 전도도를 0으로 설정하는 단계를 더 포함하는, 뉴로모픽 소자를 위한 가중치 전사 방법.
  8. 뉴로모픽 소자를 위한 가중치 전사 방법에 있어서,
    상기 뉴로모픽 소자에 포함된 시냅스 셀의 결함 여부를 판단하는 단계;
    상기 판단 결과 결함 상태의 시냅스 셀에 대응하는 인공 신경망 학습 모델의 가중치를 0으로 설정하고 인공 신경망 학습 모델을 구축하는 단계; 및
    상기 구축된 인공 신경망 학습 모델의 가중치를 상기 뉴로모픽 소자에 전사하는 단계를 포함하는, 뉴로모픽 소자를 위한 가중치 전사 방법.
  9. 제8항에 있어서,
    상기 시냅스 셀의 결함 여부를 판단하는 단계는,
    상기 뉴로모픽 소자의 전체 시냅스 셀에 동일한 데이터를 입력한 후 각 시냅스 셀의 출력값에 기초하여 각 시냅스 셀의 결함 여부를 판단하는 것인, 뉴로모픽 소자를 위한 가중치 전사 방법.
  10. 제8항에 있어서,
    상기 뉴로모픽 소자에서 결함으로 판단된 시냅스 셀의 전도도를 0으로 설정하는 단계를 더 포함하는, 뉴로모픽 소자를 위한 가중치 전사 방법.
PCT/KR2022/012743 2021-11-19 2022-08-25 뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법 WO2023090592A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/972,049 US20230162014A1 (en) 2021-11-19 2022-10-24 Weight transfer apparatus for neuromorphic devices and weight transfer method using the same

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20210159893 2021-11-19
KR10-2021-0159893 2021-11-19
KR10-2022-0071878 2022-06-14
KR1020220071878A KR102514652B1 (ko) 2021-11-19 2022-06-14 뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/972,049 Continuation US20230162014A1 (en) 2021-11-19 2022-10-24 Weight transfer apparatus for neuromorphic devices and weight transfer method using the same

Publications (1)

Publication Number Publication Date
WO2023090592A1 true WO2023090592A1 (ko) 2023-05-25

Family

ID=85800067

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/012743 WO2023090592A1 (ko) 2021-11-19 2022-08-25 뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법

Country Status (2)

Country Link
KR (1) KR102514652B1 (ko)
WO (1) WO2023090592A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019519045A (ja) * 2016-06-09 2019-07-04 プログレス インコーポレイテッドProgress,Inc. ニューラルネットワーク、およびニューラルネットワークトレーニングの方法
KR20200113106A (ko) * 2019-03-22 2020-10-06 국민대학교산학협력단 멤리스터 어레이 회로를 제어하기 위한 게이트 회로를 포함하는 뉴럴 네트워크 시스템
KR20210024640A (ko) * 2018-07-11 2021-03-05 실리콘 스토리지 테크놀로지 인크 딥 러닝 인공 신경 네트워크에서 아날로그 신경 메모리 내의 결함이 있는 메모리 셀들을 포함하는 로우들 또는 컬럼들에 대한 리던던트 메모리 액세스
JP2021511566A (ja) * 2018-01-19 2021-05-06 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ニューロモーフィック・チップ、ニューロモーフィック・システム、ニューロモーフィック・チップ内のシナプス重みを更新するための方法およびコンピュータ・プログラム
KR20210100194A (ko) * 2019-01-29 2021-08-13 실리콘 스토리지 테크놀로지 인크 딥 러닝 인공 신경 네트워크에서 아날로그 신경 메모리 내의 비휘발성 메모리 셀의 프로그래밍 동작 도중 저장된 값을 검증하기 위한 알고리즘들 및 회로부

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102592146B1 (ko) 2017-11-06 2023-10-20 삼성전자주식회사 시냅스 가중치 학습을 위한 뉴런 회로, 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019519045A (ja) * 2016-06-09 2019-07-04 プログレス インコーポレイテッドProgress,Inc. ニューラルネットワーク、およびニューラルネットワークトレーニングの方法
JP2021511566A (ja) * 2018-01-19 2021-05-06 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ニューロモーフィック・チップ、ニューロモーフィック・システム、ニューロモーフィック・チップ内のシナプス重みを更新するための方法およびコンピュータ・プログラム
KR20210024640A (ko) * 2018-07-11 2021-03-05 실리콘 스토리지 테크놀로지 인크 딥 러닝 인공 신경 네트워크에서 아날로그 신경 메모리 내의 결함이 있는 메모리 셀들을 포함하는 로우들 또는 컬럼들에 대한 리던던트 메모리 액세스
KR20210100194A (ko) * 2019-01-29 2021-08-13 실리콘 스토리지 테크놀로지 인크 딥 러닝 인공 신경 네트워크에서 아날로그 신경 메모리 내의 비휘발성 메모리 셀의 프로그래밍 동작 도중 저장된 값을 검증하기 위한 알고리즘들 및 회로부
KR20200113106A (ko) * 2019-03-22 2020-10-06 국민대학교산학협력단 멤리스터 어레이 회로를 제어하기 위한 게이트 회로를 포함하는 뉴럴 네트워크 시스템

Also Published As

Publication number Publication date
KR102514652B1 (ko) 2023-03-29

Similar Documents

Publication Publication Date Title
US10810487B2 (en) Reconfigurable and customizable general-purpose circuits for neural networks
US9189731B2 (en) Structural plasticity in spiking neural networks with symmetric dual of an electronic neuron
WO2018228424A1 (zh) 一种神经网络训练方法和装置
WO2022034983A1 (ko) 신경망 기반의 배터리 셀 불량 및 화재 사전 진단 방법 및 장치
EP2641214A1 (en) Electronic synapses for reinforcement learning
US20180211163A1 (en) Providing transposable access to a synapse array using a recursive array layout
KR20200009044A (ko) 이분 멤리스티브 네트워크의 심층 학습
WO2023090592A1 (ko) 뉴로모픽 소자를 위한 가중치 전사 장치 및 이를 이용한 가중치 전사 방법
CN117493066B (zh) 一种服务器的故障预测方法、装置、设备及介质
CN112598119B (zh) 一种面向液体状态机的神经形态处理器片上存储压缩方法
Klöppel Neural networks as a new method for EEG analysis: a basic introduction
US20230162014A1 (en) Weight transfer apparatus for neuromorphic devices and weight transfer method using the same
Baram Associative memory in fractal neural networks
WO2023080701A1 (ko) 스파이킹 뉴럴 네트워크 제공 장치 및 그 동작 방법
KR102419338B1 (ko) 스파이킹 신경망 학습 장치 및 방법
WO2023101255A1 (ko) 뉴로모픽 장치 및 뉴로모픽 장치에서의 변이 특성 보상 방법
Du et al. Evolutionary NAS in light of model stability for accurate continual learning
WO2023090597A1 (ko) 스파이크 신호를 병렬처리하는 뉴로모픽 장치
CN112561063A (zh) 一种基于微柱激活程度的htm时间池训练方法
WO2023085545A1 (ko) 하드웨어 기반 인공 신경망 제공 장치
Adami Making artificial brains: Components, topology, and optimization
WO2023080432A1 (ko) 뉴런 회로와 이의 동작 방법, 그리고, 뉴런 회로를 포함하는 뉴로모픽 장치
Awano et al. Use of a sparse structure to improve learning performance of recurrent neural networks
US11645510B2 (en) Accelerating neuron computations in artificial neural networks by selecting input data
KR20230068215A (ko) 인공지능 모델, 인공지능 모델의 트레이닝 장치 및 인공지능 모델의 복제 방지 방법

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: 22895801

Country of ref document: EP

Kind code of ref document: A1