KR20220076271A - Circuit for implementing simplified sigmoid function and neuromorphic processor including the circuit - Google Patents
Circuit for implementing simplified sigmoid function and neuromorphic processor including the circuit Download PDFInfo
- Publication number
- KR20220076271A KR20220076271A KR1020210069870A KR20210069870A KR20220076271A KR 20220076271 A KR20220076271 A KR 20220076271A KR 1020210069870 A KR1020210069870 A KR 1020210069870A KR 20210069870 A KR20210069870 A KR 20210069870A KR 20220076271 A KR20220076271 A KR 20220076271A
- Authority
- KR
- South Korea
- Prior art keywords
- circuit
- input data
- sigmoid function
- coefficient
- simplified
- Prior art date
Links
- 230000009466 transformation Effects 0.000 claims abstract description 20
- 230000001131 transforming effect Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 86
- 210000002569 neuron Anatomy 0.000 claims description 51
- 238000013528 artificial neural network Methods 0.000 claims description 31
- 230000004913 activation Effects 0.000 claims description 26
- 238000000034 method Methods 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 6
- 238000001994 activation Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 5
- 210000000225 synapse Anatomy 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 210000002364 input neuron Anatomy 0.000 description 3
- 238000009795 derivation Methods 0.000 description 2
- 229940014144 folate Drugs 0.000 description 2
- OVBPIULPVIDEAO-LBPRGKRZSA-N folic acid Chemical compound C=1N=C2NC(N)=NC(=O)C2=NC=1CNC1=CC=C(C(=O)N[C@@H](CCC(O)=O)C(O)=O)C=C1 OVBPIULPVIDEAO-LBPRGKRZSA-N 0.000 description 2
- 235000019152 folic acid Nutrition 0.000 description 2
- 239000011724 folic acid Substances 0.000 description 2
- 210000004205 output neuron Anatomy 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000000946 synaptic effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
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
본 개시는 간소화된 시그모이드 함수 회로 및 이를 포함하는 뉴로모픽 프로세서에 대한 것으로, 본 개시에 따른 간소화된 시그모이드 함수 회로는 입력 데이터의 실수 영역에서의 부호가 양인 경우, 상기 입력 데이터에 대하여 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 1 회로, 상기 입력 데이터의 실수 영역에서의 부호가 음인 경우, 상기 입력 데이터에 대하여 상기 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 2 회로 및 상기 입력 데이터의 부호에 기반하여 상기 제 1 회로의 출력 및 상기 제 2 회로의 출력 중 어느 하나를 선택하여 출력하는 제 1 멀티플렉서를 포함하되, 상기 간소화된 시그모이드 함수는 실수 영역의 시그모이드 함수를 로그 영역의 시그모이드 함수로 변환하고, 상기 로그 영역의 시그모이드 함수를 변분 변환하여 도출된다.The present disclosure relates to a simplified sigmoid function circuit and to a neuromorphic processor including the same, wherein the simplified sigmoid function circuit according to the present disclosure provides an input data with a positive sign in the real area of the input data. a first circuit for performing an operation based on the simplified sigmoid function for A circuit and a first multiplexer for selecting and outputting any one of an output of the first circuit and an output of the second circuit based on a sign of the input data, wherein the simplified sigmoid function is a sig of a real domain It is derived by transforming the moid function into a sigmoid function of the logarithmic domain, and performing an incremental transformation of the sigmoid function of the logarithmic domain.
Description
본 개시는 인공지능(Artificial Intelligence, AI) 기술에 관한 것으로, 좀 더 상세하게는 인공신경망(Artificial Neural Network, ANN)에 사용되는 간소화된 시그모이드 함수 회로 및 이를 포함하는 뉴로모픽 프로세서에 관한 것이다.The present disclosure relates to artificial intelligence (AI) technology, and more particularly, to a simplified sigmoid function circuit used in an artificial neural network (ANN) and a neuromorphic processor including the same will be.
최근 4차 산업 혁명의 핵심 기술인 인공지능(Artificial Intelligence, AI) 기술에 대한 관심이 높아지고 있다. 인공지능이란, 인간의 지능을 기계, 시스템 등에 인공적으로 구현한 것으로, 인공신경망(Artificial Neural Network, ANN)으로 불리는 학습 알고리즘에 기반하여 구현될 수 있다. 인공신경망은 생물학의 신경망과 유사한 방식으로 데이터를 처리하는 통계학적인 망이다. 인공신경망은 문자 인식, 이미지 인식, 음성 인식, 얼굴 인식 등과 같은 다양한 분야에서 사용될 수 있다.Recently, interest in artificial intelligence (AI) technology, a core technology of the 4th industrial revolution, is increasing. Artificial intelligence refers to artificially implemented human intelligence in machines, systems, etc., and may be implemented based on a learning algorithm called an artificial neural network (ANN). Artificial neural networks are statistical networks that process data in a manner similar to neural networks in biology. Artificial neural networks can be used in various fields such as text recognition, image recognition, voice recognition, and face recognition.
기술의 발전에 따라, 인공신경망의 복잡도는 보다 증가하고, 인공신경망을 통하여 다뤄지는 데이터의 양과 종류가 방대해지면서, 인공신경망에 요구되는 연산량이 급격히 증가하였다. 연산량 증가에 따라 인공신경망의 데이터 처리 속도가 현저히 떨어지는 문제점을 해결하기 위하여, 연산량을 감소시키기 위한 텐서 분해법(Tensor Decomposition), 망 가지치기(Network Pruning), 양자화 등 다양한 방법이 제안되었으나, 연산량을 획기적으로 감소시키기에 어려움이 있다.With the development of technology, the complexity of artificial neural networks has increased, and as the amount and types of data handled through artificial neural networks have become vast, the amount of computation required for artificial neural networks has rapidly increased. In order to solve the problem that the data processing speed of the artificial neural network significantly decreases as the amount of computation increases, various methods such as tensor decomposition, network pruning, and quantization have been proposed to reduce the amount of computation. It is difficult to reduce to
본 개시는 인공신경망(Artificial Neural Network, ANN)에 사용되는 간소화된 시그모이드 함수 회로 및 이를 포함하는 뉴로모픽 프로세서를 제공하는 것을 목적으로 한다.An object of the present disclosure is to provide a simplified sigmoid function circuit used in an artificial neural network (ANN) and a neuromorphic processor including the same.
본 개시의 실시 예에 따른 간소화된 시그모이드 함수 회로는 입력 데이터의 실수 영역에서의 부호가 양인 경우, 상기 입력 데이터에 대하여 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 1 회로, 상기 입력 데이터의 실수 영역에서의 부호가 음인 경우, 상기 입력 데이터에 대하여 상기 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 2 회로 및 상기 입력 데이터의 부호에 기반하여 상기 제 1 회로의 출력 및 상기 제 2 회로의 출력 중 어느 하나를 선택하여 출력하는 제 1 멀티플렉서를 포함하되, 상기 간소화된 시그모이드 함수는 실수 영역의 시그모이드 함수를 로그 영역의 시그모이드 함수로 변환하고, 상기 로그 영역의 시그모이드 함수를 변분 변환하여 도출된다.A simplified sigmoid function circuit according to an embodiment of the present disclosure includes a first circuit that performs an operation based on the simplified sigmoid function on the input data when a sign in a real region of the input data is positive, the input When the sign in the real region of data is negative, a second circuit that performs an operation based on the simplified sigmoid function on the input data, and an output of the first circuit and the second circuit based on the sign of the input data A first multiplexer that selects and outputs one of the outputs of the two circuits, wherein the simplified sigmoid function converts a sigmoid function of a real domain into a sigmoid function of a log domain, and It is derived by transforming the sigmoid function.
예로서, 상기 제 1 회로는 상기 변분 변환을 위한 제 1 계수를 선택하는 제 2 멀티플렉서 및 상기 변분 변환을 위한 제 2 계수를 선택하는 제 3 멀티플렉서를 포함하고, 상기 제 2 회로는 상기 변분 변환을 위한 제 3 계수를 선택하는 제 4 멀티플렉서 및 상기 변분 변환을 위한 제 4 계수를 선택하는 제 5 멀티플렉서를 포함한다.As an example, the first circuit comprises a second multiplexer for selecting a first coefficient for the differential transformation and a third multiplexer for selecting a second coefficient for the differential transformation, wherein the second circuit performs the differential transformation a fourth multiplexer for selecting a third coefficient for
예로서, 상기 제 1 회로는 상기 입력 데이터의 크기와 상기 제 1 계수의 곱 연산을 수행하는 제 1 곱셈기 및 상기 입력 데이터의 크기와 상기 제 1 계수의 곱 엽산의 결과와 상기 제 2 계수의 합 연산을 수행하는 제 1 합산기를 더 포함하고, 상기 제 2 회로는 상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산을 수행하는 제 2 곱셈기 및 상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산의 결과와 상기 제 4 계수의 합 연산을 수행하는 제 2 합산기를 더 포함한다.For example, the first circuit may include a first multiplier configured to multiply the size of the input data and the first coefficient, and a result of the product of the size of the input data and the first coefficient and the result of folate and the second coefficient. and a first summer for performing an operation, wherein the second circuit includes a second multiplier for multiplying the size of the input data and the third coefficient, and a multiplication operation between the size of the input data and the third coefficient It further includes a second summer for performing a sum operation of the result and the fourth coefficient.
예로서, 상기 변분 변환은 상기 입력 데이터의 구간별 변분 변환을 통하여 근사화한 결과를 도출한다.For example, the differential transformation derives an approximated result through the differential transformation for each section of the input data.
본 개시의 실시 예에 따른 뉴로모픽 프로세서는 인공 신경망의 연산을 수행하기 위한 복수의 인공뉴런 구현 소자들을 포함하는 인공뉴런 구현 소자 어레이를 포함하되, 상기 복수의 인공뉴런 구현 소자들 각각은 입력 데이터와 가중치의 곱에 대한 합 연산을 수행하는 합산 회로 및 상기 합산 회로의 연산 결과로부터 활성 함수를 통한 활성 경과를 도출하는 활성 함수 회로를 포함하고, 상기 활성 함수는 실수 영역의 시그모이드 함수를 로그 영역의 시그모이드 함수로 변환하고, 상기 로그 영역의 시그모이드 함수를 변분 변환하여 도출된다.A neuromorphic processor according to an embodiment of the present disclosure includes an artificial neuron implementation element array including a plurality of artificial neuron implementation elements for performing an operation of an artificial neural network, wherein each of the plurality of artificial neuron implementation elements is input data and an activation function circuit for deriving an activation process through an activation function from an operation result of the addition circuit and a summation circuit for performing a sum operation on the product of and weights, wherein the activation function is a logarithmic sigmoid function of a real domain It is derived by transforming it into a sigmoid function of the domain, and performing an incremental transform on the sigmoid function of the log domain.
예로서, 상기 활성 함수 회로는 적어도 하나의 간소화된 시그모이드 함수 회로를 포함하고, 상기 적어도 하나의 간소화된 시그모이드 함수 회로는 입력 데이터의 실수 영역에서의 부호가 양인 경우, 상기 입력 데이터에 대하여 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 1 회로, 상기 입력 데이터의 실수 영역에서의 부호가 음인 경우, 상기 입력 데이터에 대하여 상기 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 2 회로 및 상기 입력 데이터의 부호에 기반하여 상기 제 1 회로의 출력 및 상기 제 2 회로의 출력 중 어느 하나를 선택하여 출력하는 제 1 멀티플렉서를 포함한다.As an example, the activation function circuit comprises at least one simplified sigmoid function circuit, wherein the at least one simplified sigmoid function circuit is configured to: a first circuit for performing an operation based on the simplified sigmoid function for and a first multiplexer for selecting and outputting one of an output of the first circuit and an output of the second circuit based on a circuit and a sign of the input data.
예로서, 상기 제 1 회로는 상기 입력 데이터의 크기와 상기 제 1 계수의 곱 연산을 수행하는 제 1 곱셈기 및 상기 입력 데이터의 크기와 상기 제 1 계수의 곱 엽산의 결과와 상기 제 2 계수의 합 연산을 수행하는 제 1 합산기를 더 포함하고, 상기 제 2 회로는 상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산을 수행하는 제 2 곱셈기 및 상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산의 결과와 상기 제 4 계수의 합 연산을 수행하는 제 2 합산기를 더 포함한다.For example, the first circuit may include a first multiplier configured to multiply the size of the input data and the first coefficient, and a result of the product of the size of the input data and the first coefficient and the result of folate and the second coefficient. and a first summer for performing an operation, wherein the second circuit includes a second multiplier for multiplying the size of the input data and the third coefficient, and a multiplication operation between the size of the input data and the third coefficient It further includes a second summer for performing a sum operation of the result and the fourth coefficient.
예로서, 상기 제 1 회로는 상기 변분 변환을 위한 제 1 계수를 선택하는 제 2 멀티플렉서 및 상기 변분 변환을 위한 제 2 계수를 선택하는 제 3 멀티플렉서를 포함하고, 상기 제 2 회로는 상기 변분 변환을 위한 제 3 계수를 선택하는 제 4 멀티플렉서 및 상기 변분 변환을 위한 제 4 계수를 선택하는 제 5 멀티플렉서를 포함한다.As an example, the first circuit comprises a second multiplexer for selecting a first coefficient for the differential transformation and a third multiplexer for selecting a second coefficient for the differential transformation, wherein the second circuit performs the differential transformation a fourth multiplexer for selecting a third coefficient for
예로서, 상기 변분 변환은 상기 입력 데이터의 구간별 변분 변환을 통하여 근사화한 결과를 도출한다.For example, the differential transformation derives an approximated result through the differential transformation for each section of the input data.
예로서, 본 개시에 따른 뉴로모픽 프로세서는 외부로부터 상기 입력 데이터를 수신하고, 상기 외부로 상기 입력 데이터에 대한 상기 인공 신경망의 연산 결과를 출력하는 입출력 유닛, 상기 입출력 유닛으로부터 상기 입력 데이터를 수신하고, 상기 입력 데이터를 전달하는 제어 로직 유닛, 상기 제어 로직 유닛으로부터 상기 인공뉴런 구현 소자 어레이에 상기 입력 데이터를 전달하는 워드 라인 바이어스 유닛, 상기 인공뉴런 구현 소자 어레이로부터 상기 입력 데이터에 대한 연산 결과를 검출하는 비트 라인 바이어스 및 검출 유닛을 더 포함한다.For example, the neuromorphic processor according to the present disclosure receives the input data from the outside, an input/output unit for outputting an operation result of the artificial neural network on the input data to the outside, and receives the input data from the input/output unit and a control logic unit that transfers the input data, a word line bias unit that transfers the input data from the control logic unit to the artificial neuron implementation element array, and an operation result on the input data from the artificial neuron implementation element array It further includes a bit line bias and detection unit for detecting.
예로서, 본 개시에 따른 뉴로모픽 프로세서는 상기 인공뉴런 구현 소자 어레이에 포함되는 복수의 인공뉴런 구현 소자들의 연결 관계에 대한 정보를 저장하는 비휘발성 메모리, 상기 인공뉴런 구현 소자 어레이로부터 검출된 상기 연산 결과를 저장하는 휘발성 메모리를 더 포함한다.For example, the neuromorphic processor according to the present disclosure may include a non-volatile memory that stores information on a connection relationship between a plurality of artificial neuron implementation elements included in the artificial neuron implementation element array, and the artificial neuron implementation element array detected from the array. It further includes a volatile memory for storing the operation result.
본 개시에 따른 간소화된 시그모이드 함수 회로 및 이를 포함하는 뉴로모픽 프로세서에 의하면, 실수 영역에서 연산이 이루어지는 시그모이드 함수를 로그 영역에서 처리함으로써 인공신경망의 연산량을 획기적으로 감소시킬 수 있다.According to the simplified sigmoid function circuit and the neuromorphic processor including the same according to the present disclosure, the amount of computation of the artificial neural network can be remarkably reduced by processing the sigmoid function, which is calculated in the real domain, in the log domain.
도 1은 본 개시의 실시 예에 따른 인공신경망을 나타내는 도면이다.
도 2는 본 개시의 실시 예에 따른 인공뉴런을 나타내는 도면이다.
도 3은 본 개시의 실시 예에 따른 간소화된 시그모이드 함수 회로를 나타내는 도면이다.
도 4는 본 개시의 실시 예에 따른 간소화된 시그모이드 함수 회로가 적용된 뉴로모픽 프로세서를 나타내는 도면이다.1 is a diagram illustrating an artificial neural network according to an embodiment of the present disclosure.
2 is a diagram illustrating an artificial neuron according to an embodiment of the present disclosure.
3 is a diagram illustrating a simplified sigmoid function circuit according to an embodiment of the present disclosure.
4 is a diagram illustrating a neuromorphic processor to which a simplified sigmoid function circuit is applied according to an embodiment of the present disclosure.
이하에서, 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 용이하게 실시할 수 있을 정도로, 본 개시의 실시 예들은 명확하고 상세하게 기재될 것이다.Hereinafter, embodiments of the present disclosure will be described clearly and in detail to the extent that those of ordinary skill in the art can easily practice the present disclosure.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며, 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서 사용된 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises) 및/또는 포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자에 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.The terminology used herein is for the purpose of describing the embodiments, and is not intended to limit the present disclosure. As used herein, the singular also includes the plural unless the phrase specifically dictates otherwise. As used herein, “comprises and/or comprises” refers to the presence or addition of one or more other components, steps, acts and/or elements to a stated element, step, operation and/or element. do not exclude
본 명세서에서 사용되는 "제 1 및/또는 제 2" 등의 용어는 다양한 구성요소들을 설명하기 위하여 사용될 수 있으나, 이는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 목적으로만 사용될 뿐, 해당 용어로 지칭되는 구성요소를 한정하기 위한 것은 아니다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않는 한, 제 1 구성요소는 제 2 구성요소로 명명될 수 있으며, 제 2 구성요소 또한 제 1 구성요소로 명명될 수 있다.As used herein, terms such as “first and/or second” may be used to describe various components, but these terms are only used for the purpose of distinguishing one component from other components, and the term It is not intended to limit the components referred to as . For example, without departing from the scope of the present disclosure, a first component may be referred to as a second component, and the second component may also be referred to as a first component.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 잇는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서, 전문에 걸쳐 동일한 참조 부호는 동일한 구성 요소를 지칭할 수 있다.Unless otherwise defined, all terms (including technical and scientific terms) used herein may be used in the meaning commonly understood by those of ordinary skill in the art to which this disclosure belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless specifically defined explicitly. In this specification, the same reference numerals may refer to the same elements throughout.
도 1은 본 개시의 실시 예에 따른 인공신경망(Artificial Neural Network; ANN, 10)을 나타내는 도면이다. 도 1을 참조하면, 본 개시의 실시예에 따른 인공신경망은 입력층(Input Layer, IL), 은닉층(Hidden Layer, HL) 및 출력층(Output Layer, OL)을 포함할 수 있다. 입력층(IL), 은닉층(HL) 및 출력층(OL)은 시냅스(Synapse, SN)를 통하여 서로 연결될 수 있다.1 is a diagram illustrating an artificial neural network (ANN, 10) according to an embodiment of the present disclosure. Referring to FIG. 1 , an artificial neural network according to an embodiment of the present disclosure may include an input layer (IL), a hidden layer (HL), and an output layer (OL). The input layer IL, the hidden layer HL, and the output layer OL may be connected to each other through a synapse (SN).
인공신경망(10)은 복수의 인공뉴런(100)들을 포함할 수 있다. 복수의 인공뉴런(100)들은 외부로부터 입력 데이터(X1, X2, …, Xn)를 수신하는 복수의 입력 뉴런들, 복수의 입력 뉴런들로부터 데이터를 수신하고 이를 처리하는 복수의 은닉 뉴런들 및 복수의 은닉 뉴런들로부터 데이터를 수신하고 출력 데이터(Y1, Y2, …, Ym)를 생성하는 복수의 출력 뉴런들을 포함할 수 있다. 입력층(IL)은 복수의 입력 뉴런들을 포함할 수 있고, 은닉층(HL)은 복수의 은닉 뉴런들을 포함할 수 있으며, 출력층(OL)은 복수의 출력 뉴런들을 포함할 수 있다.The artificial
입력층(IL), 은닉층(HL) 및 출력층(OL) 각각에 포함된 인공 뉴런들의 개수는 도 1에 도시된 바에 한정되지 않는다. 또한, 은닉층(HL)은 도 1에 도시된 것보다 더 많은 층(Layer)들을 포함할 수 있다. 은닉층(HL)의 개수는 인공신경망(10)의 정확도 및 학습 속도와 관련될 수 있다. 또한, 입력 데이터(X1, X2, …, Xn) 및 출력 데이터(Y1, Y2, …, Ym)는 텍스트, 이미지 등 다양한 형태의 데이터일 수 있다.The number of artificial neurons included in each of the input layer IL, the hidden layer HL, and the output layer OL is not limited to that illustrated in FIG. 1 . Also, the hidden layer HL may include more layers than those shown in FIG. 1 . The number of hidden layers HL may be related to the accuracy and learning speed of the artificial
도 2는 본 개시의 실시 예에 따른 인공뉴런(100)을 나타내는 도면이다. 도 2를 참조하면, 인공뉴런(100)은 합산 회로(Summation Circuit, 110) 및 활성 함수 회로(Activation Function Circuit, 120)를 포함할 수 있다.2 is a diagram illustrating an
합산 회로(110)는 가중치들(W1, W2, …, WK)을 이용하여 입력 신호들(A1, A2, …, AK)을 합산할 수 있다. 입력 신호들(A1, A2, …, AK) 각각은 임의의 인공뉴런으로부터 생성된 출력 신호일 수 있다. 가중치들(W1, W2, …, WK) 각각은 시냅스(SN, 도 1 참조)의 강도, 다시 말하면 하나의 인공뉴런과 다른 하나의 인공뉴런과의 결합 정도를 나타낼 수 있다. 합산 회로(110)는 가중치들(W1, W2, …, WK)과 입력 신호들(A1, A2, …, AK)을 각각 곱한 후, 그 결과들을 합쳐서 합산 결과(B)를 도출할 수 있다. 합산 결과(B)는 수학식 1로 나타낼 수 있다.The
활성 함수 회로(120)는 합산 결과(B) 및 활성 함수(Activation Function, f)를 이용하여 활성 결과(C)를 도출할 수 있다. 본 개시의 실시 예에 따른 활성 함수(f)는 간소화된 시그모이드 함수일 수 있다. 시그모이드 함수란, 선형인 멀티퍼셉트론에서 비선형 값을 도출하기 위하여 이용될 수 있으며, 예로서 로지스틱(Logistic) 함수를 포함할 수 있다. 시그모이드 함수는 실수(Real Number) 영역에서 정의될 수 있으며, 수학식 2로 나타낼 수 있다. 수학식 2에서, sig(x)는 실수 영역의 시그모이드 함수를, x는 실수 변수를 의미한다.The
본 개시의 실시 예에서, 활성 함수(f)로 이용되는 간소화된 시그모이드 함수는 인공신경망의 연산량을 감소시키기 위하여 로그 영역에서의 시그모이드 함수를 변분 변환한 형태일 수 있다. 즉, 본 개시의 실시 예에서 이용되는 활성 함수(f)는 로그 영역의 시그모이드 함수를 도출하고, 도출된 로그 영역의 시그모이드 함수를 변분 변환하는 과정을 통하여 도출될 수 있다.In an embodiment of the present disclosure, the simplified sigmoid function used as the activation function f may be a form obtained by transforming a sigmoid function in a logarithmic domain in order to reduce the amount of computation of the artificial neural network. That is, the activation function f used in an embodiment of the present disclosure may be derived through a process of deriving a sigmoid function of a logarithmic domain and performing an incremental transformation of the derived sigmoid function of a logarithmic domain.
로그 영역의 시그모이드 함수는 수학식 2에 제시된 실수 영역의 시그모이드 함수의 양 변에 자연로그를 취하여 유도할 수 있다. 로그 영역의 시그모이드 함수를 유도하는 과정은 수학식 3의 (1) 내지 (4) 과정으로 나타낼 수 있으며, 수학식 3에서 sig(x)는 실수 영역의 시그모이드 함수를, SIG(X)는 로그 영역의 시그모이드 함수를, x는 실수 변수를, X는 로그 영역의 변수를 의미한다. 이하, 표기의 명확화를 위하여 ex는 exp(x)의 형태로 표현한다.The sigmoid function of the logarithmic domain can be derived by taking the natural logarithm of both sides of the sigmoid function of the real domain presented in Equation (2). The process of deriving the sigmoid function of the logarithmic domain can be represented by the processes (1) to (4) of Equation 3, where sig(x) represents the sigmoid function of the real domain, SIG(X) ) denotes a logarithmic sigmoid function, x denotes a real variable, and X denotes a logarithmic variable. Hereinafter, for clarity of notation, e x is expressed in the form of exp(x).
수학식 3으로부터 도출된 로그 영역의 시그모이드 함수는 인공신경망의 연산량을 줄이기 위하여 변분 변환될 수 있다. 로그 영역의 시그모이드 함수의 변분 변환은 실수 변수 x의 부호에 따라 달리 유도될 수 있다. 먼저, 실수 변수 x가 양수인 경우 유도 과정은 수학식 4의 (1) 내지 (12) 과정으로 나타낼 수 있다. 수학식 4에서 F(x)는 변분 변환을 통하여 도출되는 근사식을 의미하고, D(x)는 로그 영역의 시그모이드 함수 SIG(X)와 근사식의 차이를 의미한다. 또한, Y는 D(x)를 최소화한 함수를 의미한다.The sigmoid function of the log domain derived from Equation 3 may be differentially transformed to reduce the amount of computation of the artificial neural network. The differential transformation of the sigmoid function in the log domain may be induced differently depending on the sign of the real variable x. First, when the real variable x is a positive number, the derivation process may be expressed as processes (1) to (12) of Equation (4). In Equation 4, F(x) denotes an approximate expression derived through a differential transformation, and D(x) denotes a difference between the logarithmic sigmoid function SIG(X) and the approximate expression. Also, Y denotes a function that minimizes D(x).
실수 변수 x가 음수인 경우 로그 영역의 시그모이드 함수는 수학식 5와 같이 표현된다. 수학식 5에서, x는 음수이므로 양수인 xp와 -1의 곱으로 표현할 수 있다. 수학식 5에서 sig(x)는 실수 영역에서의 시그모이드 함수를 의미하고, SIG(Xp)는 로그 영역의 시그모이드 함수를 의미한다.When the real variable x is negative, the sigmoid function of the logarithmic region is expressed as in Equation 5. In Equation 5, since x is a negative number, it can be expressed as a product of a positive number xp and -1. In Equation 5, sig(x) denotes a sigmoid function in the real domain, and SIG(Xp) denotes a sigmoid function in the log domain.
실수 변수 x가 음수인 경우, 유도 과정은 수학식 6의 (1) 내지 (12) 과정으로 나타낼 수 있다. 수학식 6에서 F(x)는 변분 변환을 통하여 도출되는 근사식을 의미하고, D(x)는 로그 영역의 시그모이드 함수 SIG(Xp)와 근사식의 차이를 의미한다. 또한, Y는 D(xp)를 최소화한 함수를 의미한다.When the real variable x is a negative number, the derivation process can be expressed by the processes (1) to (12) of Equation (6). In Equation 6, F(x) denotes an approximate expression derived through a differential transformation, and D(x) denotes a difference between the logarithmic sigmoid function SIG(Xp) and the approximate expression. Also, Y denotes a function that minimizes D(xp).
수학식 4 및 수학식 6에서 도출된 근사식 F(X) 및 F(Xp)는 활성 함수 회로(120)에서 활성 결과(C)를 도출하기 위한 활성 함수(f)로 이용될 수 있다.Approximate expressions F(X) and F(Xp) derived from Equations 4 and 6 may be used as an activation function f for deriving an activation result C in the
도 3은 본 개시의 실시 예에 따른 간소화된 시그모이드 함수 회로(200)를 나타내는 도면이다. 간소화된 시그모이드 함수 회로(200)는 활성 함수(f)를 구현하기 위한 회로로, 활성 함수 회로(120, 도 2 참조)에 포함될 수 있다. 도 3을 참조하면, 간소화된 시그모이드 함수 회로(200)는 제 1 회로(210), 제 2 회로(220) 및 제 1 멀티플렉서(230)를 포함할 수 있다. 제 1 회로(210)는 제 1 비교기(211), 제 2 멀티플렉서(212a), 제 3 멀티플렉서(212b), 제1 곱셈기(213) 및 제 1 합산기(214)를 포함할 수 있다. 제 2 회로(220)는 제 2 비교기(221), 제 4 멀티플렉서(222a), 제 5 멀티플렉서(222b), 제 2 곱셈기(223) 및 제 2 합산기(224)를 포함할 수 있다.3 is a diagram illustrating a simplified
본 개시의 실시 예에 따르면, 간소화된 시그모이드 함수 회로(200)를 통하여 활성 결과(F)(도 2에 개시된 활성 결과(C)에 대응)가 도출될 수 있다. 로그 도메인에서, 입력 는 벡터로, 방향인 부호 Xs와 크기 X로 표현될 수 있다. 간소화된 시그모이드 함수 회로(200)는 입력된 의 방향 부호가 양(+)인 경우, 제 1 회로(210)로부터의 출력 값이 활성 결과(F)로 도출될 수 있다. 입력된 의 방향 부호가 음(-)인 경우, 제 2 회로(220)로부터의 출력 값이 활성 결과(F)로 도출될 수 있다.According to an embodiment of the present disclosure, an activation result F (corresponding to the activation result C disclosed in FIG. 2 ) may be derived through the simplified
도 4는 본 개시의 실시 예에 따른 간소화된 시그모이드 함수 회로(200, 도 3 참조)가 적용된 뉴로모픽 프로세서(1000)를 나타내는 도면이다. 도 4를 참조하면, 뉴로모픽 프로세서(1000)는 인공뉴런 구현 소자 어레이(1100), 워드 라인 바이어스 유닛(1200), 비트 라인 바이어스 및 검출 유닛(1300), 제어 로직 유닛(1400), 불휘발성 메모리(1500), 휘발성 메모리(1600) 및 입출력 유닛(1700)을 포함할 수 있다.4 is a diagram illustrating the
인공뉴런 구현 소자 어레이(1100)는 상술한 도 1에 개시된 인공신경망(10, 도 1 참조)을 하드웨어적으로 구현한 것일 수 있다. 인공뉴런 구현 소자 어레이(1100)는 복수의 인공뉴런(100, 도 1 참조)들을 구현한 소자들을 포함할 수 있으며, 복수의 인공뉴런(100) 구현 소자들이 행들 및 열들로 배열된 구조일 수 있다. 복수의 인공뉴런(100) 구현 소자들 각각은 상술한 도 3에 개시된 간소화된 시그모이드 함수 회로(200, 도 3 참조)를 포함할 수 있다. 인공뉴런 구현 소자 어레이(1100)는 간소화된 시그모이드 함수에 기반한 결과치를 출력할 수 있다. 도 4에서, 인공뉴런 구현 소자 어레이(1100)와 연결되는 워드 라인(WL) 및 비트 라인(BL)은 하나로 도시되었으나, 이는 도면의 복잡도를 줄이기 위한 것일 뿐, 인공뉴런 구현 소자 어레이(1100)에 포함되는 복수의 인공뉴런(100) 구현 소자들 각각에 연결되는 워드 라인(WL) 및 비트 라인(BL)을 의미한다.The artificial neuron implementation element array 1100 may be a hardware implementation of the artificial neural network 10 (refer to FIG. 1 ) disclosed in FIG. 1 described above. The artificial neuron implementation element array 1100 may include elements implementing a plurality of artificial neurons 100 (refer to FIG. 1 ), and may have a structure in which the plurality of
워드 라인 바이어스 유닛(1200)은 제어 로직 유닛(1400)으로부터 입력 데이터를 수신하고, 워드 라인(WL)을 통하여 인공뉴런 구현 소자 어레이(1100)에 포함되는 복수의 인공뉴런(100) 구현 소자들 각각에 입력 데이터를 전달할 수 있다. 또한, 워드 라인 바이어스 유닛(1200)은 인공뉴런 구현 소자 어레이(1100)에 포함되는 복수의 시냅스(SN, 도 1 참조) 연결들에 가중치를 기록하기 위한 전류를 워드 라인(WL)을 통하여 공급할 수 있다.The word line bias unit 1200 receives input data from the
비트 라인 바이어스 및 검출 유닛(1300)은 인공뉴런 구현 소자 어레이(1100)에 포함되는 복수의 인공뉴런(100) 구현 소자들 각각에서 인공 신경망 연산을 수행할 때 비트 라인(BL)에 접지 전압을 바이어스할 수 있다. 또한, 비트 라인 바이어스 및 검출 유닛(1300)은 비트 라인(BL)을 통하여 전류량을 검출함으로써, 인공뉴런 구현 소자 어레이(1100)에 포함되는 복수의 인공뉴런(100) 구현 소자들의 연산 결과를 획득할 수 있다.The bit line bias and
제어 로직 유닛(1400)은 불휘발성 메모리(1500)에 저장된 정보를 읽고, 읽혀진 정보에 기반하여 워드 라인 바이어스 유닛(1200) 및 비트 라인 바이어스 및 검출 유닛(1300)을 제어할 수 있다. 또한, 제어 로직 유닛(1400)은 입출력 유닛(1700)을 통하여 수신되는 초기 입력을 입력 데이터로서 워드 라인 바이어스 유닛(1200)에 전달하거나 휘발성 메모리(1600)에 저장할 수 있다. 또한, 제어 로직 유닛(1400)은 인공뉴런 구현 소자 어레이(1100)로부터 출력된 결과를 입력 데이터로서 워드 라인 바이어스 유닛(1200)에 전달하거나 휘발성 메모리(1600)에 저장할 수 있다.The
비휘발성 메모리(1500)는 인공뉴런 구현 소자 어레이(1100)에 포함된 복수의 인공뉴런(100) 구현 소자들의 연결 관계에 대한 정보를 저장할 수 있다. 즉, 비휘발성 메모리(1500)는 뉴로모픽 프로세서(1000)에 의하여 구현되는 인공 신경망의 전체 구조에 대한 정보를 포함할 수 있다.The
휘발성 메모리(1600)는 입출력 유닛(1700)으로부터 입력된 초기 입력 및 인공뉴런 구현 소자 어레이(1100)으로부터 출력된 결과를 저장할 수 있다. 입출력 유닛(1700)은 외부로부터 초기 입력을 수신하여 제어 로직 유닛(1400)에 전달하고, 제어 로직 유닛(1400)으로부터 인공뉴런 구현 소자 어레이(1100)로부터 출력된 결과를 전달받아 외부로 출력할 수 있다.The volatile memory 1600 may store an initial input input from the input/
상술된 내용은 본 개시를 실시하기 위한 구체적인 실시 예들이다. 본 개시는 상술된 실시 예들 뿐만 아니라, 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시 예들 또한 포함할 것이다. 또한, 본 개시는 실시 예들을 이용하여 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다. 따라서, 본 개시의 범위는 상술된 실시 예들에 국한되어 정해져서는 안되며, 후술하는 특허청구범위뿐만 아니라 본 개시의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.The above are specific embodiments for carrying out the present disclosure. The present disclosure will include not only the above-described embodiments, but also simple design changes or easily changeable embodiments. In addition, the present disclosure will also include techniques that can be easily modified and implemented using the embodiments. Accordingly, the scope of the present disclosure should not be limited to the above-described embodiments, but should be defined by the claims and equivalents of the claims of the present disclosure as well as the claims to be described later.
10 : 인공신경망(Artificial Neural Network; ANN)
100 : 인공뉴런
110 : 합산 회로(Summatation Circuit)
120 : 활성 함수 회로(Activation Fuction Circuit)10: Artificial Neural Network (ANN)
100: artificial neuron
110: summation circuit
120: Activation Function Circuit
Claims (11)
상기 입력 데이터의 실수 영역에서의 부호가 음인 경우, 상기 입력 데이터에 대하여 상기 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 2 회로; 및
상기 입력 데이터의 부호에 기반하여 상기 제 1 회로의 출력 및 상기 제 2 회로의 출력 중 어느 하나를 선택하여 출력하는 제 1 멀티플렉서를 포함하되,
상기 간소화된 시그모이드 함수는 실수 영역의 시그모이드 함수를 로그 영역의 시그모이드 함수로 변환하고, 상기 로그 영역의 시그모이드 함수를 변분 변환하여 도출되는 간소화된 시그모이드 함수 회로.a first circuit for performing an operation based on a simplified sigmoid function on the input data when a sign in a real region of the input data is positive;
a second circuit for performing an operation based on the simplified sigmoid function on the input data when a sign in the real region of the input data is negative; and
Comprising a first multiplexer for selecting and outputting any one of the output of the first circuit and the output of the second circuit based on the sign of the input data,
The simplified sigmoid function is a simplified sigmoid function circuit derived by transforming a sigmoid function of a real domain into a sigmoid function of a log domain, and incrementally transforming the sigmoid function of the log domain.
상기 제 1 회로는:
상기 변분 변환을 위한 제 1 계수를 선택하는 제 2 멀티플렉서; 및
상기 변분 변환을 위한 제 2 계수를 선택하는 제 3 멀티플렉서를 포함하고,
상기 제 2 회로는:
상기 변분 변환을 위한 제 3 계수를 선택하는 제 4 멀티플렉서; 및
상기 변분 변환을 위한 제 4 계수를 선택하는 제 5 멀티플렉서를 포함하는 간소화된 시그모이드 함수 회로.The method of claim 1,
The first circuit comprises:
a second multiplexer for selecting a first coefficient for the differential transform; and
a third multiplexer for selecting a second coefficient for the differential transform;
The second circuit is:
a fourth multiplexer for selecting a third coefficient for the differential transform; and
A simplified sigmoid function circuit comprising a fifth multiplexer for selecting a fourth coefficient for the differential transform.
상기 제 1 회로는:
상기 입력 데이터의 크기와 상기 제 1 계수의 곱 연산을 수행하는 제 1 곱셈기; 및
상기 입력 데이터의 크기와 상기 제 1 계수의 곱 엽산의 결과와 상기 제 2 계수의 합 연산을 수행하는 제 1 합산기를 더 포함하고,
상기 제 2 회로는:
상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산을 수행하는 제 2 곱셈기; 및
상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산의 결과와 상기 제 4 계수의 합 연산을 수행하는 제 2 합산기를 더 포함하는 간소화된 시그모이드 함수 회로.3. The method of claim 2,
The first circuit comprises:
a first multiplier for multiplying the size of the input data and the first coefficient; and
and a first summer configured to perform a sum operation of a result of a multiplication of the size of the input data and the first coefficient and the second coefficient,
The second circuit is:
a second multiplier for multiplying the size of the input data and the third coefficient; and
The simplified sigmoid function circuit further comprising a second summer configured to perform a sum operation of a result of the multiplication operation of the magnitude of the input data and the third coefficient and the fourth coefficient.
상기 변분 변환은 상기 입력 데이터의 구간별 변분 변환을 통하여 근사화한 결과를 도출하는 간소화된 시그모이드 함수 회로.The method of claim 1,
The differential transformation is a simplified sigmoid function circuit for deriving an approximate result through the differential transformation for each section of the input data.
상기 복수의 인공뉴런 구현 소자들 각각은:
입력 데이터와 가중치의 곱에 대한 합 연산을 수행하는 합산 회로; 및
상기 합산 회로의 연산 결과로부터 활성 함수를 통한 활성 결과를 도출하는 활성 함수 회로를 포함하고,
상기 활성 함수는 실수 영역의 시그모이드 함수를 로그 영역의 시그모이드 함수로 변환하고, 상기 로그 영역의 시그모이드 함수를 변분 변환하여 도출되는 뉴로모픽 프로세서.An artificial neuron implementation element array including a plurality of artificial neuron implementation elements for performing an operation of an artificial neural network,
Each of the plurality of artificial neuron implementation elements is:
a summing circuit for performing a sum operation on a product of input data and a weight; and
an activation function circuit for deriving an activation result through an activation function from the operation result of the summing circuit;
The activation function is a neuromorphic processor derived by transforming a sigmoid function of a real domain into a sigmoid function of a log domain, and incrementally transforming the sigmoid function of the log domain.
상기 활성 함수 회로는 적어도 하나의 간소화된 시그모이드 함수 회로를 포함하고,
상기 적어도 하나의 간소화된 시그모이드 함수 회로는:
입력 데이터의 실수 영역에서의 부호가 양인 경우, 상기 입력 데이터에 대하여 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 1 회로;
상기 입력 데이터의 실수 영역에서의 부호가 음인 경우, 상기 입력 데이터에 대하여 상기 간소화된 시그모이드 함수에 기반한 연산을 수행하는 제 2 회로; 및
상기 입력 데이터의 부호에 기반하여 상기 제 1 회로의 출력 및 상기 제 2 회로의 출력 중 어느 하나를 선택하여 출력하는 제 1 멀티플렉서를 포함하는 뉴로모픽 프로세서.6. The method of claim 5,
wherein the activation function circuit comprises at least one simplified sigmoid function circuit;
The at least one simplified sigmoid function circuit comprises:
a first circuit for performing an operation based on a simplified sigmoid function on the input data when a sign in a real region of the input data is positive;
a second circuit for performing an operation based on the simplified sigmoid function on the input data when a sign in the real region of the input data is negative; and
Neuromorphic processor including a first multiplexer for selecting and outputting any one of the output of the first circuit and the output of the second circuit based on the sign of the input data.
상기 제 1 회로는:
상기 입력 데이터의 크기와 상기 제 1 계수의 곱 연산을 수행하는 제 1 곱셈기; 및
상기 입력 데이터의 크기와 상기 제 1 계수의 곱 엽산의 결과와 상기 제 2 계수의 합 연산을 수행하는 제 1 합산기를 더 포함하고,
상기 제 2 회로는:
상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산을 수행하는 제 2 곱셈기; 및
상기 입력 데이터의 크기와 상기 제 3 계수의 곱 연산의 결과와 상기 제 4 계수의 합 연산을 수행하는 제 2 합산기를 더 포함하는 뉴로모픽 프로세서.7. The method of claim 6,
The first circuit comprises:
a first multiplier for multiplying the size of the input data and the first coefficient; and
and a first summer configured to perform a sum operation of a result of a multiplication of the size of the input data and the first coefficient and the second coefficient,
The second circuit is:
a second multiplier for multiplying the size of the input data and the third coefficient; and
The neuromorphic processor further comprising a second summer configured to perform a sum operation of a result of the multiplication operation of the size of the input data and the third coefficient and the fourth coefficient.
상기 제 1 회로는:
상기 변분 변환을 위한 제 1 계수를 선택하는 제 2 멀티플렉서; 및
상기 변분 변환을 위한 제 2 계수를 선택하는 제 3 멀티플렉서를 포함하고,
상기 제 2 회로는:
상기 변분 변환을 위한 제 3 계수를 선택하는 제 4 멀티플렉서; 및
상기 변분 변환을 위한 제 4 계수를 선택하는 제 5 멀티플렉서를 포함하는 뉴로모픽 프로세서.8. The method of claim 7,
The first circuit comprises:
a second multiplexer for selecting a first coefficient for the differential transform; and
a third multiplexer for selecting a second coefficient for the differential transform;
The second circuit is:
a fourth multiplexer for selecting a third coefficient for the differential transform; and
Neuromorphic processor including a fifth multiplexer for selecting a fourth coefficient for the differential transformation.
상기 변분 변환은 상기 입력 데이터의 구간별 변분 변환을 통하여 근사화한 결과를 도출하는 뉴로모픽 프로세서.6. The method of claim 5,
The differential transformation is a neuromorphic processor for deriving an approximate result through differential transformation for each section of the input data.
외부로부터 상기 입력 데이터를 수신하고, 상기 외부로 상기 입력 데이터에 대한 상기 인공 신경망의 연산 결과를 출력하는 입출력 유닛;
상기 입출력 유닛으로부터 상기 입력 데이터를 수신하고, 상기 입력 데이터를 전달하는 제어 로직 유닛;
상기 제어 로직 유닛으로부터 상기 인공뉴런 구현 소자 어레이에 상기 입력 데이터를 전달하는 워드 라인 바이어스 유닛;
상기 인공뉴런 구현 소자 어레이로부터 상기 입력 데이터에 대한 연산 결과를 검출하는 비트 라인 바이어스 및 검출 유닛을 더 포함하는 뉴로모픽 프로세서.6. The method of claim 5,
an input/output unit for receiving the input data from the outside and outputting an operation result of the artificial neural network on the input data to the outside;
a control logic unit receiving the input data from the input/output unit and transferring the input data;
a word line bias unit that transfers the input data from the control logic unit to the artificial neuron implementation element array;
Neuromorphic processor further comprising a bit line bias and detection unit for detecting a result of the operation on the input data from the artificial neuron implementation element array.
상기 인공뉴런 구현 소자 어레이에 포함되는 복수의 인공뉴런 구현 소자들의 연결 관계에 대한 정보를 저장하는 비휘발성 메모리;
상기 인공뉴런 구현 소자 어레이로부터 검출된 상기 연산 결과를 저장하는 휘발성 메모리를 더 포함하는 뉴로모픽 프로세서.
6. The method of claim 5,
a non-volatile memory for storing information on a connection relationship between a plurality of artificial neuron implementation elements included in the artificial neuron implementation element array;
Neuromorphic processor further comprising a volatile memory for storing the operation result detected from the artificial neuron implementation element array.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/536,536 US20220172029A1 (en) | 2020-11-30 | 2021-11-29 | Circuit for implementing simplified sigmoid function and neuromorphic processor including the circuit |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200164528 | 2020-11-30 | ||
KR20200164528 | 2020-11-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220076271A true KR20220076271A (en) | 2022-06-08 |
Family
ID=81981344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210069870A KR20220076271A (en) | 2020-11-30 | 2021-05-31 | Circuit for implementing simplified sigmoid function and neuromorphic processor including the circuit |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220076271A (en) |
-
2021
- 2021-05-31 KR KR1020210069870A patent/KR20220076271A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10740671B2 (en) | Convolutional neural networks using resistive processing unit array | |
US20210142164A1 (en) | Multi-Task Knowledge Distillation for Language Model | |
Aizenberg et al. | Multi-valued and universal binary neurons: Theory, learning and applications | |
Ponghiran et al. | Spiking neural networks with improved inherent recurrence dynamics for sequential learning | |
Moustafa et al. | Performance evaluation of artificial neural networks for spatial data analysis | |
RoyChowdhury et al. | Dynamic tunneling technique for efficient training of multilayer perceptrons | |
CN114241245B (en) | Image classification system based on residual capsule neural network | |
Fatahi et al. | Towards an spiking deep belief network for face recognition application | |
Abdulsalam et al. | Electrical energy demand forecasting model using artificial neural network: A case study of Lagos State Nigeria | |
KR20210152244A (en) | Apparatus for implementing neural network and operation method thereof | |
US5274744A (en) | Neural network for performing a relaxation process | |
Harikrishnan et al. | Handwritten digit recognition with feed-forward multi-layer perceptron and convolutional neural network architectures | |
Shaharin et al. | Performance study of TDNN training algorithm for speech recognition | |
López-Monroy et al. | Neural networks and deep learning | |
Eom et al. | Alpha-Integration Pooling for Convolutional Neural Networks | |
Dao | Image classification using convolutional neural networks | |
KR20220076271A (en) | Circuit for implementing simplified sigmoid function and neuromorphic processor including the circuit | |
US11526735B2 (en) | Neuromorphic neuron apparatus for artificial neural networks | |
Shen et al. | A fast learning algorithm of neural network with tunable activation function | |
US20220172029A1 (en) | Circuit for implementing simplified sigmoid function and neuromorphic processor including the circuit | |
Chand et al. | Understanding neural networks | |
Jovanović et al. | Neural network implementation in Java | |
Scherer | Multi-layer neural networks for sales forecasting | |
Boyko et al. | Neural Networks: Training with Backpropagation and the Gradient Algorithm | |
Barthakur et al. | Neural network methods for image segmentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |