KR102311659B1 - 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법 - Google Patents
컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- KR102311659B1 KR102311659B1 KR1020190068462A KR20190068462A KR102311659B1 KR 102311659 B1 KR102311659 B1 KR 102311659B1 KR 1020190068462 A KR1020190068462 A KR 1020190068462A KR 20190068462 A KR20190068462 A KR 20190068462A KR 102311659 B1 KR102311659 B1 KR 102311659B1
- Authority
- KR
- South Korea
- Prior art keywords
- input
- neural network
- convolutional neural
- computing device
- weight
- Prior art date
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 100
- 238000000034 method Methods 0.000 title claims description 24
- 230000015654 memory Effects 0.000 claims abstract description 103
- 210000002364 input neuron Anatomy 0.000 claims abstract description 36
- 238000011176 pooling Methods 0.000 claims description 23
- 239000011159 matrix material Substances 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 abstract description 7
- 238000011017 operating method Methods 0.000 abstract description 4
- 210000002569 neuron Anatomy 0.000 description 19
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 7
- 238000005070 sampling Methods 0.000 description 7
- 238000005192 partition Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
Abstract
Description
도 2는 본원의 일 실시예에 따른 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치의 개략적인 구성도이다.
도 3은 컨볼루션 신경망 모델의 구조를 설명하기 위한 개념도이다.
도 4는 단일 메모리를 사용하는 종래의 컨벌루션 신경망 모델에 기초한 컴퓨팅 장치를 설명하기 위한 개념도이다.
도 5는 본원의 일 실시예에 따른 복수의 메모리 모듈을 포함하는 컨벌루션 신경망 모델에 기초한 컴퓨팅 장치의 개념도이다.
도 6은 본원의 일 실시예에 따른 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치의 동작 방법의 동작 흐름도이다.
도 7은 본원의 일 실시예에 따른 출력 데이터의 생성을 위한 연산 방법의 동작 흐름도이다.
110: 컨볼루션 신경망
111: 입력 계층
1110: 입력 뉴런
112: 은닉 계층
113: 출력 계층
120: 메모리 모듈
130: 연산부
140: 가중치 커널 업데이트부
130: 데이터 수신부
10: 입력 데이터
20: 출력 데이터
Claims (10)
- 컨볼루션 신경망(Convolutional Neural Network, CNN) 모델에 기초한 컴퓨팅 장치에 있어서,
복수의 입력 뉴런을 포함하는 입력 계층, 은닉 계층 및 출력 계층을 포함하는 컨볼루션 신경망;
상기 컨볼루션 신경망의 복수의 입력 뉴런에 대응하도록 복수 개 마련되고, 상기 복수의 입력 뉴런에 대응되는 가중치 커널을 저장하는 복수의 메모리 모듈;
상기 컨볼루션 신경망의 입력 계층에 입력되는 입력 데이터 및 상기 복수의 메모리 모듈 각각에 저장된 상기 가중치 커널을 기초로 상기 입력 뉴런 각각에 대응하는 출력 데이터의 생성을 위한 연산을 수행하는 연산부; 및
상기 출력 데이터에 기초하여 역전파(Back Propagation) 연산을 수행하고, 상기 역전파 연산의 결과를 기초로 상기 복수의 메모리 모듈에 기 저장된 상기 가중치 커널을 수정하는 가중치 커널 업데이트부,
를 포함하고,
상기 입력 데이터는 이미지 데이터이고,
상기 컴퓨팅 장치는, 상기 이미지 데이터에 포함된 객체를 인식하거나 상기 이미지 데이터를 기 설정된 범주로 분류하되,
상기 복수의 메모리 모듈은,
상기 가중치 커널의 크기, 상기 가중치 커널과 연계된 행렬 성분, 스트라이드 값 및 바이어스 값을 저장하고,
상기 가중치 커널 업데이트부는,
상기 이미지 데이터에 대한 객체 인식 결과 또는 분류 결과의 정확도 정보에 기초하여 상기 크기, 상기 행렬 성분, 상기 스트라이드 값 및 상기 바이어스 값을 업데이트 하고,
상기 복수의 메모리 모듈은,
상기 컴퓨팅 장치에 구비된 단일 메모리로부터 분할된 것으로서, 분할 메모리의 수 및 각각의 메모리 할당량을 포함하는 상기 단일 메모리에 대한 분할 구조는 상기 복수의 입력 뉴런의 수에 기초하여 결정되어 상기 입력 계층과 연계하여 상기 가중치 커널을 저장하도록 상기 입력 계층의 연산 레벨과 동일한 레벨에 배치되고,
상기 연산부는,
상기 복수의 입력 뉴런 각각에 대한 컨볼루션 연산을 위하여 상기 복수의 메모리 모듈로부터 동시에 상기 가중치 커널을 조회하고,
상기 가중치 커널 업데이트부는,
상기 복수의 메모리 모듈에 기 저장된 상기 가중치 커널 각각을 랜덤 노이즈를 추가하여 동시에 수정하는 것인, 컴퓨팅 장치. - 삭제
- 제1항에 있어서,
상기 연산부는,
특징맵 생성을 위한 컨볼루션 연산, 활성화 함수 연산 및 풀링 연산 중 적어도 하나를 수행하는 것인, 컴퓨팅 장치. - 제3항에 있어서,
상기 풀링 연산은,
LeNet-5 네트워크 기반의 평균 풀링(mean pooling)인 것인, 컴퓨팅 장치. - 제1항에 있어서,
상기 복수의 메모리 모듈은,
STT(spin-torque transfer) 메모리 또는 비휘발성 이진 메모리를 포함하는 것인, 컴퓨팅 장치. - 삭제
- 컨볼루션 신경망(Convolutional Neural Network, CNN) 모델에 기초한 컴퓨팅 장치의 동작 방법에 있어서,
상기 컨볼루션 신경망은 복수의 입력 뉴런을 포함하는 입력 계층, 은닉 계층 및 출력 계층을 포함하고,
상기 컨볼루션 신경망의 복수의 입력 뉴런에 대응하도록 복수 개 마련되고, 상기 복수의 입력 뉴런에 대응되는 가중치 커널을 저장하는 복수의 메모리 모듈에 상기 가중치 커널의 초기값을 저장하는 단계;
상기 컨볼루션 신경망의 입력 계층에 입력되는 이미지 데이터인 입력 데이터를 수신하는 단계;
상기 복수의 메모리 모듈 각각에 저장된 상기 가중치 커널의 초기값을 조회하는 단계;
상기 입력 데이터 및 상기 가중치 커널의 초기값을 기초로 상기 입력 뉴런 각각에 대응하는 출력 데이터의 생성을 위한 연산을 수행하여 상기 이미지 데이터에 포함된 객체를 인식하거나 상기 이미지 데이터를 기 설정된 범주로 분류하는 단계;
상기 출력 데이터에 기초하여 역전파(Back Propagation) 연산을 수행하는 단계; 및
상기 역전파 연산의 결과를 기초로 상기 복수의 메모리 모듈에 기 저장된 상기 가중치 커널의 초기값을 수정하는 단계,
를 포함하고,
상기 가중치 커널의 초기값을 저장하는 단계는,
상기 가중치 커널의 크기, 상기 가중치 커널과 연계된 행렬 성분, 스트라이드 값 및 바이어스 값을 저장하고,
상기 가중치 커널의 초기값을 수정하는 단계는,
상기 이미지 데이터에 대한 객체 인식 결과 또는 분류 결과의 정확도 정보에 기초하여 상기 크기, 상기 행렬 성분, 상기 스트라이드 값 및 상기 바이어스 값을 업데이트 하고,
상기 복수의 메모리 모듈은,
상기 컴퓨팅 장치에 구비된 단일 메모리로부터 분할된 것으로서, 분할 메모리의 수 및 각각의 메모리 할당량을 포함하는 상기 단일 메모리에 대한 분할 구조는 상기 복수의 입력 뉴런의 수에 기초하여 결정되어 상기 입력 계층과 연계하여 상기 가중치 커널을 저장하도록 상기 입력 계층의 연산 레벨과 동일한 레벨에 배치되고,
상기 조회하는 단계는,
상기 복수의 입력 뉴런 각각에 대한 컨볼루션 연산을 위하여 상기 복수의 메모리 모듈로부터 동시에 상기 가중치 커널을 조회하고,
상기 수정하는 단계는,
상기 복수의 메모리 모듈에 기 저장된 상기 가중치 커널 각각을 랜덤 노이즈를 추가하여 동시에 수정하는 것인, 컴퓨팅 장치의 동작 방법. - 삭제
- 제7항에 있어서,
상기 출력 데이터의 생성을 위한 연산을 수행하는 단계는,
특징맵 생성을 위한 컨볼루션 연산을 수행하는 단계;
상기 컨볼루션 연산 결과에 활성화 함수를 적용하는 단계; 및
LeNet-5 네트워크 기반의 평균 풀링(mean pooling) 연산을 수행하는 단계,
를 포함하는 것인, 컴퓨팅 장치의 동작 방법. - 제7항 또는 제9항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190068462A KR102311659B1 (ko) | 2019-06-11 | 2019-06-11 | 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190068462A KR102311659B1 (ko) | 2019-06-11 | 2019-06-11 | 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200141663A KR20200141663A (ko) | 2020-12-21 |
KR102311659B1 true KR102311659B1 (ko) | 2021-10-13 |
Family
ID=74090478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190068462A KR102311659B1 (ko) | 2019-06-11 | 2019-06-11 | 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102311659B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102694681B1 (ko) * | 2020-08-31 | 2024-08-16 | (주)제이엘케이 | 정규화된 합성곱 신경망 시스템 및 합성곱 신경망 정규화 방법 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3035204B1 (en) * | 2014-12-19 | 2018-08-15 | Intel Corporation | Storage device and method for performing convolution operations |
-
2019
- 2019-06-11 KR KR1020190068462A patent/KR102311659B1/ko active IP Right Grant
Non-Patent Citations (1)
Title |
---|
Alessandro Aimar et al., "NullHop: A Flexible Convolutional Neural network Accelerator Based on Sparse Representations of Feature Maps," arXiv:1706.01406v2 [cs.CV] (2018.03.06.)* |
Also Published As
Publication number | Publication date |
---|---|
KR20200141663A (ko) | 2020-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12131130B2 (en) | Exploiting activation sparsity in deep neural networks | |
KR102344473B1 (ko) | 콘볼루셔널 뉴럴 네트워크들에 대한 슈퍼픽셀 방법들 | |
US11861484B2 (en) | Neural processing unit (NPU) direct memory access (NDMA) hardware pre-processing and post-processing | |
CN111095302B (zh) | 稀疏深度卷积网络权重的压缩 | |
US11562205B2 (en) | Parallel processing of a convolutional layer of a neural network with compute-in-memory array | |
JP7539971B2 (ja) | コンピュートインメモリアレイの列しきい値を調整することによってxnor等価演算を実施すること | |
CN107977704A (zh) | 权重数据存储方法和基于该方法的神经网络处理器 | |
US11694301B2 (en) | Learning model architecture for image data semantic segmentation | |
US20220138563A1 (en) | Method and device with deep learning operations | |
CN116457842A (zh) | 用于高效视频处理的跳跃卷积 | |
CN115699028A (zh) | 模拟人工智能网络推理的逐行卷积神经网络映射的高效瓦片映射 | |
US20210406694A1 (en) | Neuromorphic apparatus and method with neural network | |
KR102311659B1 (ko) | 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법 | |
CN112966729B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN112889072A (zh) | 用于降低功率消耗的系统、方法和装置 | |
US20240037377A1 (en) | Method and apparatus with weight compression | |
CN116964589A (zh) | 一种由预训练小型网络构建的多节点神经网络 | |
CN115461754A (zh) | 深度过参数化 | |
US20240111828A1 (en) | In memory computing processor and method thereof with direction-based processing | |
US20230267325A1 (en) | Processing apparatus for neural network calculation and method for operating the same | |
US20250013714A1 (en) | Method and apparatus with neural network operation and keyword identification | |
TW202223759A (zh) | 通過分層分析的類神經網路修剪方法與系統 | |
WO2024123391A1 (en) | Folding cumulative summation operations using matrix multiplications | |
WO2024091324A1 (en) | Single search for architectures on embedded devices | |
WO2021209789A1 (en) | Modifying structure of artificial neural networks by collocating parameters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20190611 |
|
PA0201 | Request for examination | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20200713 Patent event code: PE09021S01D |
|
AMND | Amendment | ||
PG1501 | Laying open of application | ||
E90F | Notification of reason for final refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Final Notice of Reason for Refusal Patent event date: 20210107 Patent event code: PE09021S02D |
|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20210712 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20210107 Comment text: Final Notice of Reason for Refusal Patent event code: PE06011S02I Patent event date: 20200713 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |
|
X091 | Application refused [patent] | ||
AMND | Amendment | ||
PX0901 | Re-examination |
Patent event code: PX09011S01I Patent event date: 20210712 Comment text: Decision to Refuse Application Patent event code: PX09012R01I Patent event date: 20210305 Comment text: Amendment to Specification, etc. Patent event code: PX09012R01I Patent event date: 20200908 Comment text: Amendment to Specification, etc. |
|
PX0701 | Decision of registration after re-examination |
Patent event date: 20210929 Comment text: Decision to Grant Registration Patent event code: PX07013S01D Patent event date: 20210913 Comment text: Amendment to Specification, etc. Patent event code: PX07012R01I Patent event date: 20210712 Comment text: Decision to Refuse Application Patent event code: PX07011S01I Patent event date: 20210305 Comment text: Amendment to Specification, etc. Patent event code: PX07012R01I Patent event date: 20200908 Comment text: Amendment to Specification, etc. Patent event code: PX07012R01I |
|
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20211005 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20211006 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |