JP7403638B2 - 高速なスパースニューラルネットワーク - Google Patents
高速なスパースニューラルネットワーク Download PDFInfo
- Publication number
- JP7403638B2 JP7403638B2 JP2022519014A JP2022519014A JP7403638B2 JP 7403638 B2 JP7403638 B2 JP 7403638B2 JP 2022519014 A JP2022519014 A JP 2022519014A JP 2022519014 A JP2022519014 A JP 2022519014A JP 7403638 B2 JP7403638 B2 JP 7403638B2
- Authority
- JP
- Japan
- Prior art keywords
- elements
- values
- matrix
- null
- weight
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000013528 artificial neural network Methods 0.000 title claims description 66
- 239000011159 matrix material Substances 0.000 claims description 90
- 238000000034 method Methods 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 37
- 230000004913 activation Effects 0.000 claims description 36
- 239000013598 vector Substances 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 19
- 238000012549 training Methods 0.000 description 13
- 238000002474 experimental method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 239000003795 chemical substances by application Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000005284 excitation Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012886 linear function Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 241000009334 Singa Species 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000007 visual 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/04—Architecture, e.g. interconnection topology
- G06N3/0495—Quantised networks; Sparse networks; Compressed networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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
-
- 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
- G06N3/045—Combinations of networks
-
- 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
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/513—Sparse representations
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
- Complex Calculations (AREA)
Description
101 入力層
102 隠れ層
103 出力層
200 コンピュータシステム
201 データ入力
202 プロセッサ
203 メモリユニット、プログラムメモリユニット
204 メモリユニット、重みメモリユニット
205 メモリユニット、特徴値メモリユニット、特徴値メモリ
206 キャッシュメモリ
207 出力データ
301 活性化行列
302 重み行列
401 活性化行列
402 重み行列
501 重み行列
502 メモリ空間
503 メモリ空間
Claims (16)
- ニューラルネットワークを実装する方法であって、前記ニューラルネットワークが、少なくとも1つのスパース1x1畳み込み層を含む複数の層を備え、前記畳み込み層の入力が、HxWのアレイに並べられた複数の要素の各々に対して、特徴値のそれぞれの入力チャネルを備え、
前記スパース1x1畳み込み層が、スパース1x1畳み込みを前記入力チャネルに適用して、各々複数の畳み込まれた値からなるそれぞれの出力チャネルを形成するように構成され、前記スパース1x1畳み込みが、0に等しい複数のヌル重みおよび複数のノンヌル重みを有するスパースCxC'重み行列によって定義され、前記入力チャネルが、デンスC'xHW活性化行列の各要素のために定義された特徴値を有する前記活性化行列を構成し、
前記方法が、
システムの処理ユニットが、前記重み行列の前記ヌル重みの指示を取得するステップと、
前記活性化行列の行の中の複数の前記要素を備える行ベクトルの要素に対して、
(a)前記活性化行列を記憶するメモリユニットから前記入力チャネルの対応する特徴値を抽出することであって、前記対応する特徴値が、前記指示によると前記重み行列の前記対応する重みがノンヌル重みであるような特徴値である、抽出すること、および
(b)それぞれのノンヌル重みにより重み付けられた前記対応する抽出された特徴値の対応する和を形成すること
によって、前記複数の要素のための前記畳み込まれた値を生成することによって、前記処理ユニットが前記デンスC'xHW活性化行列に関連して前記スパースCxC'重み行列を処理するステップとを備える、方法。 - 前記ヌル重みが、前記重み行列の成分の70~95%を構成する、請求項1に記載の方法。
- 前記ニューラルネットワークの出力層が全結合される、請求項1または2に記載の方法。
- 前記メモリユニットがCHWメモリレイアウトを有する、請求項1から3のいずれか一項に記載の方法。
- 前記処理が、同じ行の中の要素の連続する行ベクトルのための内側ループ、および連続する行のための外側ループを用いて実行される、請求項4に記載の方法。
- 前記処理が連続する行ベクトルに対して繰り返し実行され、前記行ベクトルが要素のアレイ全体を集合的に含む、請求項1から5のいずれか一項に記載の方法。
- 前記ニューラルネットワークがさらに、前記畳み込み層の後にあり1つまたは複数の出力値を生成するようになされる出力層を含み、各出力値がすべての前記要素のすべての前記畳み込まれた値に基づいて決定される、請求項1から6のいずれか一項に記載の方法。
- 前記ノンヌル重みが、前記重み行列の複数の行の各々において同じ位置にある、請求項1から7のいずれか一項に記載の方法。
- 前記重み行列の前記複数の行のための処理が、前記行ベクトルのための前記出力チャネルの対応する複数の畳み込まれた値を生成するために並列に実行される、請求項8に記載の方法。
- 前記複数の要素のための前記畳み込まれた値の前記生成の間に、前記メモリユニットからの対応する特徴値の前記抽出に際し、前記抽出された特徴値がキャッシュメモリに記憶され、前記抽出および記憶が、前記複数の要素のための先行する畳み込まれた値の前記生成の間に前記キャッシュメモリに記憶された特徴値に関して実行されない、請求項1から9のいずれか一項に記載の方法。
- 前記複数の要素のための前記対応する特徴値に基づく前記複数の要素のための前記畳み込まれた値の前記生成の間に、複数の追加の要素のための前記対応する特徴値も、前記キャッシュメモリへと前記メモリユニットから読み取られ、前記複数の追加の要素の前記畳み込まれた値が、前記複数の要素のための前記畳み込まれた値と並列に生成されない、請求項10に記載の方法。
- 前記複数のノンヌル重みが、スパース性データセットによって前記それぞれの出力チャネルに示される、請求項1に記載の方法。
- 前記重み行列の前記ヌル重みが、スパース性データセットに従ってあらかじめ決定される、請求項12に記載の方法。
- ニューラルネットワークを実装するように構成されるシステムであって、前記ニューラルネットワークが、少なくとも1つのスパース1x1畳み込み層を含む複数の層を備え、前記畳み込み層の入力が、HxWのアレイに並べられた複数の要素の各々に対して、特徴値のそれぞれの入力チャネルを備え、
前記スパース1x1畳み込み層が、スパース1x1畳み込みを前記入力チャネルに適用して、各々複数の畳み込まれた値からなるそれぞれの出力チャネルを形成するように構成され、前記スパース1x1畳み込みが、0に等しい複数のヌル重みおよび複数のノンヌル重みを有するスパースCxC'重み行列によって定義され、前記入力チャネルが、デンスC'xHW活性化行列の各要素のために定義された特徴値を有する前記活性化行列を構成し、
前記システムがメモリユニットおよび処理ユニットを備え、前記メモリユニットが、前記処理ユニットによって実施されると、前記処理ユニットに、
前記重み行列の前記ヌル重みの指示を取得させ、
前記活性化行列の行の中の複数の前記要素を備える行ベクトルの要素に対して、
(a)前記活性化行列を記憶するメモリユニットから前記入力チャネルの対応する特徴値を抽出することであって、前記対応する抽出された特徴値が、前記指示によると前記重み行列の前記対応する重みがノンヌル重みであるような特徴値である、抽出すること、および
(b)それぞれのノンヌル重みにより重み付けられた前記対応する抽出された特徴値の対応する和を形成すること
によって、前記複数の要素のための前記畳み込まれた値を生成することによって、前記デンスC'xHW活性化行列に関連して前記スパースCxC'重み行列を処理させる
命令を記憶する、システム。 - 請求項1から11のいずれか一項に記載の方法を実施するように構成される、請求項14に記載のシステム。
- 請求項1から13のいずれか一項に記載の方法を実施するためのコンピュータプログラム命令を記憶する、有形の非一時的記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962905888P | 2019-09-25 | 2019-09-25 | |
US62/905,888 | 2019-09-25 | ||
PCT/EP2020/076587 WO2021058578A1 (en) | 2019-09-25 | 2020-09-23 | Fast sparse neural networks |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022550730A JP2022550730A (ja) | 2022-12-05 |
JP7403638B2 true JP7403638B2 (ja) | 2023-12-22 |
Family
ID=72644240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022519014A Active JP7403638B2 (ja) | 2019-09-25 | 2020-09-23 | 高速なスパースニューラルネットワーク |
Country Status (7)
Country | Link |
---|---|
US (1) | US20220335272A1 (ja) |
EP (1) | EP4007971A1 (ja) |
JP (1) | JP7403638B2 (ja) |
KR (1) | KR20220051242A (ja) |
CN (1) | CN114424252A (ja) |
CA (1) | CA3155094A1 (ja) |
WO (1) | WO2021058578A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214508B (zh) * | 2017-06-30 | 2022-04-05 | 华为技术有限公司 | 信号处理的系统和方法 |
US20210264239A1 (en) * | 2020-02-20 | 2021-08-26 | Tencent America LLC | Method and apparatus for neural network optimized matrix-matrix multiplication (nnmm) |
KR20230063791A (ko) * | 2021-11-02 | 2023-05-09 | 리벨리온 주식회사 | 인공지능 코어, 인공지능 코어 시스템 및 인공지능 코어 시스템의 로드/스토어 방법 |
US20230267301A1 (en) * | 2022-02-23 | 2023-08-24 | International Business Machines Corporation | Neural network inference quantization |
CN116187420B (zh) * | 2023-05-04 | 2023-07-25 | 上海齐感电子信息科技有限公司 | 轻量化的深度神经网络的训练方法、系统、设备和介质 |
KR102660892B1 (ko) * | 2023-06-27 | 2024-04-26 | 주식회사 하이퍼엑셀 | 로터리 포지션 임베딩 연산을 위한 메모리 매핑 방법 및 시스템 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180129935A1 (en) | 2016-11-07 | 2018-05-10 | Electronics And Telecommunications Research Institute | Convolutional neural network system and operation method thereof |
US20180157969A1 (en) | 2016-12-05 | 2018-06-07 | Beijing Deephi Technology Co., Ltd. | Apparatus and Method for Achieving Accelerator of Sparse Convolutional Neural Network |
US20180330235A1 (en) | 2017-05-15 | 2018-11-15 | National Taiwan University | Apparatus and Method of Using Dual Indexing in Input Neurons and Corresponding Weights of Sparse Neural Network |
-
2020
- 2020-09-23 KR KR1020227009693A patent/KR20220051242A/ko unknown
- 2020-09-23 JP JP2022519014A patent/JP7403638B2/ja active Active
- 2020-09-23 CN CN202080066353.5A patent/CN114424252A/zh active Pending
- 2020-09-23 EP EP20780164.8A patent/EP4007971A1/en active Pending
- 2020-09-23 CA CA3155094A patent/CA3155094A1/en active Pending
- 2020-09-23 WO PCT/EP2020/076587 patent/WO2021058578A1/en unknown
- 2020-09-23 US US17/763,924 patent/US20220335272A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180129935A1 (en) | 2016-11-07 | 2018-05-10 | Electronics And Telecommunications Research Institute | Convolutional neural network system and operation method thereof |
US20180157969A1 (en) | 2016-12-05 | 2018-06-07 | Beijing Deephi Technology Co., Ltd. | Apparatus and Method for Achieving Accelerator of Sparse Convolutional Neural Network |
US20180330235A1 (en) | 2017-05-15 | 2018-11-15 | National Taiwan University | Apparatus and Method of Using Dual Indexing in Input Neurons and Corresponding Weights of Sparse Neural Network |
Also Published As
Publication number | Publication date |
---|---|
CN114424252A (zh) | 2022-04-29 |
WO2021058578A1 (en) | 2021-04-01 |
US20220335272A1 (en) | 2022-10-20 |
CA3155094A1 (en) | 2021-04-01 |
KR20220051242A (ko) | 2022-04-26 |
EP4007971A1 (en) | 2022-06-08 |
JP2022550730A (ja) | 2022-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7403638B2 (ja) | 高速なスパースニューラルネットワーク | |
AU2020220126B2 (en) | Superpixel methods for convolutional neural networks | |
Ye et al. | Inverted pyramid multi-task transformer for dense scene understanding | |
KR20170136588A (ko) | 공간 트랜스포머 모듈들 | |
US11348203B2 (en) | Image generation using subscaling and depth up-scaling | |
US11693627B2 (en) | Contiguous sparsity pattern neural networks | |
US11481994B2 (en) | Method and apparatus for extracting image data in parallel from multiple convolution windows, device, and computer-readable storage medium | |
US20240135543A1 (en) | Method and device with image data generating | |
US20230008777A1 (en) | Accelerating convolutions for sparse inputs | |
KR20230157220A (ko) | 영상 처리 장치 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220523 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231003 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20231113 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231212 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7403638 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |