JP7122041B2 - ニューラルネットワークに用いられる混合粒度に基づく共同スパース方法 - Google Patents
ニューラルネットワークに用いられる混合粒度に基づく共同スパース方法 Download PDFInfo
- Publication number
- JP7122041B2 JP7122041B2 JP2021174307A JP2021174307A JP7122041B2 JP 7122041 B2 JP7122041 B2 JP 7122041B2 JP 2021174307 A JP2021174307 A JP 2021174307A JP 2021174307 A JP2021174307 A JP 2021174307A JP 7122041 B2 JP7122041 B2 JP 7122041B2
- Authority
- JP
- Japan
- Prior art keywords
- sparsity
- vector
- sparsification
- grained
- pruning
- 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
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/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
- Complex Calculations (AREA)
Description
前記共同スパースプロセスは、具体的には、ユーザが目標スパース性(target sparsity)と粒度混合比率(mixing ratio)を予め設定することにより、異なるプルーニング粒度のプルーニングマスクを得ることができる。独立したベクトルレベル細粒度スパース化(vector-wise fine-grained sparsity)とブロックレベル粗粒度スパース化(block-wise coarse-grained sparsity)とを含み、ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化の夫々のスパース性は、ユーザが予め設定した目標スパース性と粒度混合比率に基づいて、スパース性補償方法によって推定し、
前記ベクトルレベル細粒度スパース化は、行数が#rowであり、列数が#colである重み行列を、補間後の最小行列列数がちょうどKにより割り切れるように該重み行列の右端にゼロ列を充填し、行数が1であり、列数がKである複数のベクトル行に分割され、且つベクトル行毎に対して、ベクトル行内要素を大きさに基づくプルーニングを行い、プルーニングマスク1上で対応する要素の位置の1を0にセットし、プルーニングマスク1上の0の個数がベクトルレベル細粒度スパース化のスパース性要求を満たすようにし、
前記ブロックレベル粗粒度スパース化は、行数が#rowであり、列数が#colである重み行列を、補間後の最小行列がちょうどR行、S列サイズのブロックにより割り切れるように該重み行列の下端及び/又は右端にゼロ行及び/又はゼロ列を充填し、行数がRであり、列数がSである複数のベクトルブロックに分割され、充填されたゼロ行又はゼロ列を含まない各ベクトルブロックの重要性スコア和(psum)を計算し、重要性スコア和の計算に用いた全てのベクトルブロックに対し、重要性スコア和の大きさに応じてプルーニングを行い、プルーニングマスク2上の重要性スコア和の計算に用いたベクトルブロックの対応する要素の位置の1を0にセットし、プルーニングマスク2上の0の個数がブロックレベル粗粒度スパース化のスパース性要求を満たすようにし、
ベクトルレベル細粒度スパース化して得られたプルーニングマスク1とブロックレベル粗粒度スパース化して得られたプルーニングマスク2とをビット論理積演算し、最終的なプルーニングマスク3を得、最終的なプルーニングマスク3と行数が#rowであり、列数が#colである行列とをビット論理積演算し、スパース化された重み行列を得、
畳み込みニューラルネットワーク各層の重み行列をスパース化して、トレーニングを完了させた後、識別対象画像を畳み込みニューラルネットワークに入力し、画像識別を行う。
細粒度プルーニングに比べて、粗粒度プルーニングは、通常、よりハードウェア友好型のサブ構造の構築方面でより良い表現を有するが、その代価が通常、モデル精度を低下している。ブロックレベル粗粒度スパース化の目的は、GPUの計算並列性のために、適切な行列サブ構造を提供することである。従来の深層学習応用シナリオに配備された商用GPU(例えば、Volta、TuringとNvidia A100 GPU)は、Tensor Coreと呼ばれる専用ハードウェアを一般的に採用し、このハードウェアは、迅速行列乗算方面において優勢を有し、新規のデータタイプをサポートする。これにより、深層ニューラルネットワークのために利点をもたらし、深層ニューラルネットワークでは、基本算術計算は、畳み込み層と完全連結層における大量基準行列乗算であり、メモリではなく、その乗算計算速度が性能表現を制限している。
(付記1)
ニューラルネットワークに用いられる混合粒度に基づく共同スパース方法であって、
この方法は、画像識別に用いられ、まず、複数の画像データを収集して人為的にラベルを付与し、画像データセットを生成し、画像データセットをトレーニングセットとして畳み込みニューラルネットワークに入力し、畳み込みニューラルネットワーク各層の重み行列をランダムに初期化し、繰り返しの方式でトレーニングし、共同スパースプロセスを採用して、畳み込みニューラルネットワークをプルーニングし、
前記共同スパースプロセスは、具体的には、ユーザが目標スパース性と粒度混合比率を予め設定することにより、異なるプルーニング粒度のプルーニングマスクを得、独立したベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化とを含み、ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化の夫々のスパース性は、ユーザが予め設定した目標スパース性と粒度混合比率に基づいて、スパース性補償方法によって推定し、
前記ベクトルレベル細粒度スパース化は、行数が#rowであり、列数が#colである重み行列を、補間後の最小行列列数がちょうどKにより割り切れるように該重み行列の右端にゼロ列を充填し、行数が1であり、列数がKである複数のベクトル行に分割され、且つベクトル行毎に対して、ベクトル行内要素を大きさに基づくプルーニングを行い、プルーニングマスク1上で対応する要素の位置の1を0にセットし、プルーニングマスク1上の0の個数がベクトルレベル細粒度スパース化のスパース性要求を満たすようにし、
前記ブロックレベル粗粒度スパース化は、行数が#rowであり、列数が#colである重み行列を、補間後の最小行列がちょうどR行、S列サイズのブロックにより割り切れるように該重み行列の下端及び/又は右端にゼロ行及び/又はゼロ列を充填し、行数がRであり、列数がSである複数のベクトルブロックに分割され、充填されたゼロ行又はゼロ列を含まない各ベクトルブロックの重要性スコア和を計算し、重要性スコア和の計算に用いた全てのベクトルブロックに対し、重要性スコア和の大きさに応じてプルーニングを行い、プルーニングマスク2上の重要性スコア和の計算に用いたベクトルブロックの対応する要素の位置の1を0にセットし、プルーニングマスク2上の0の個数がブロックレベル粗粒度スパース化のスパース性要求を満たすようにし、
ベクトルレベル細粒度スパース化して得られたプルーニングマスク1とブロックレベル粗粒度スパース化して得られたプルーニングマスク2とをビット論理積演算し、最終的なプルーニングマスク3を得、最終的なプルーニングマスク3と行数が#rowであり、列数が#colである行列とをビット論理積演算し、スパース化された重み行列を得、
畳み込みニューラルネットワーク各層の重み行列をスパース化して、トレーニングを完了させた後、識別対象画像を畳み込みニューラルネットワークに入力し、画像識別を行う、
ことを特徴とするニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。
前記ベクトルレベル細粒度スパース化は、ベクトル行内要素の絶対値の大きさに応じて大きさに基づくプルーニングを行うことである、
ことを特徴とする付記1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。
前記ベクトルブロックの重要性スコア和は、ベクトルブロック内各要素の2乗の総和である、
ことを特徴とする付記1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。
前記ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化のプルーニングマスク1とプルーニングマスク2行列における要素の初期は、いずれも1である、
ことを特徴とする付記1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。
ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化の大きさに基づくプルーニングは、プルーニングマスク1とプルーニングマスク2上で、ベクトル行又はベクトルブロックにおけるスパース性閾値未満の対応する位置の要素を0にセットすることである、
ことを特徴とする付記1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。
Claims (5)
- コンピュータにより実行される、ニューラルネットワークに用いられる混合粒度に基づく共同スパース方法であって、
この方法は、画像識別に用いられ、まず、複数の画像データを収集して人為的にラベルを付与し、画像データセットを生成し、画像データセットをトレーニングセットとして畳み込みニューラルネットワークに入力し、畳み込みニューラルネットワーク各層の重み行列をランダムに初期化し、繰り返しの方式でトレーニングし、共同スパースプロセスを採用して、畳み込みニューラルネットワークをプルーニングし、
前記共同スパースプロセスは、具体的には、ユーザが目標スパース性と粒度混合比率を予め設定することにより、異なるプルーニング粒度のプルーニングマスクを得、独立したベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化とを含み、ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化の夫々のスパース性は、ユーザが予め設定した目標スパース性と粒度混合比率に基づいて、スパース性補償方法によって推定し、
前記ベクトルレベル細粒度スパース化は、行数が#rowであり、列数が#colである重み行列を、補間後の最小行列列数がちょうどKにより割り切れるように該重み行列の右端にゼロ列を充填し、行数が1であり、列数がKである複数のベクトル行に分割され、且つベクトル行毎に対して、ベクトル行内の要素の絶対値の大きさに基づくプルーニングを行い、プルーニングマスク1上で対応する要素の位置の1を0にセットし、プルーニングマスク1上の0の個数がベクトルレベル細粒度スパース化のスパース性要求を満たすようにし、
前記ブロックレベル粗粒度スパース化は、行数が#rowであり、列数が#colである重み行列を、補間後の最小行列がちょうどR行、S列サイズのブロックにより割り切れるように該重み行列の下端及び/又は右端にゼロ行及び/又はゼロ列を充填し、行数がRであり、列数がSである複数のベクトルブロックに分割され、充填されたゼロ行又はゼロ列を含まない各ベクトルブロックの重要性スコア和を計算し、重要性スコア和の計算に用いた全てのベクトルブロックに対し、重要性スコア和の大きさに応じてプルーニングを行い、プルーニングマスク2上の重要性スコア和の計算に用いたベクトルブロックの対応する要素の位置の1を0にセットし、プルーニングマスク2上の0の個数がブロックレベル粗粒度スパース化のスパース性要求を満たすようにし、
ベクトルレベル細粒度スパース化して得られたプルーニングマスク1とブロックレベル粗粒度スパース化して得られたプルーニングマスク2とをビット論理積演算し、最終的なプルーニングマスク3を得、最終的なプルーニングマスク3と行数が#rowであり、列数が#colである行列とをビット論理積演算し、スパース化された重み行列を得、
畳み込みニューラルネットワーク各層の重み行列をスパース化して、トレーニングを完了させた後、識別対象画像を畳み込みニューラルネットワークに入力し、画像識別を行う、
ことを特徴とするニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。 - 前記ベクトルブロックの重要性スコア和は、ベクトルブロック内各要素の2乗の総和である、
ことを特徴とする請求項1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。 - 前記ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化のプルーニングマスク1とプルーニングマスク2行列における要素の初期は、いずれも1である、
ことを特徴とする請求項1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。 - ベクトルレベル細粒度スパース化とブロックレベル粗粒度スパース化の大きさに基づくプルーニングは、プルーニングマスク1とプルーニングマスク2上で、ベクトル行又はベクトルブロックにおけるスパース性閾値未満の対応する位置の要素を0にセットすることである、
ことを特徴とする請求項1に記載のニューラルネットワークに用いられる混合粒度に基づく共同スパース方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011553635.6A CN112288046B (zh) | 2020-12-24 | 2020-12-24 | 一种用于神经网络的基于混合粒度的联合稀疏方法 |
CN202011553635.6 | 2020-12-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022101461A JP2022101461A (ja) | 2022-07-06 |
JP7122041B2 true JP7122041B2 (ja) | 2022-08-19 |
Family
ID=74426136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021174307A Active JP7122041B2 (ja) | 2020-12-24 | 2021-10-26 | ニューラルネットワークに用いられる混合粒度に基づく共同スパース方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220207374A1 (ja) |
JP (1) | JP7122041B2 (ja) |
CN (1) | CN112288046B (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114627342A (zh) * | 2022-03-03 | 2022-06-14 | 北京百度网讯科技有限公司 | 基于稀疏度的图像识别模型的训练方法、装置和设备 |
CN117270476B (zh) * | 2023-10-24 | 2024-03-08 | 清远欧派集成家居有限公司 | 基于智慧工厂的生产控制方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180046915A1 (en) | 2016-08-12 | 2018-02-15 | Beijing Deephi Intelligence Technology Co., Ltd. | Compression of deep neural networks with proper use of mask |
US20200104717A1 (en) | 2018-10-01 | 2020-04-02 | Neuralmagic Inc. | Systems and methods for neural network pruning with accuracy preservation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528864B2 (en) * | 2016-08-11 | 2020-01-07 | Nvidia Corporation | Sparse convolutional neural network accelerator |
US11645529B2 (en) * | 2018-05-01 | 2023-05-09 | Hewlett Packard Enterprise Development Lp | Sparsifying neural network models |
CN110147834A (zh) * | 2019-05-10 | 2019-08-20 | 上海理工大学 | 基于稀疏化双线性卷积神经网络的细粒度图像分类方法 |
CN111079781B (zh) * | 2019-11-07 | 2023-06-23 | 华南理工大学 | 基于低秩与稀疏分解的轻量化卷积神经网络图像识别方法 |
CN110874631B (zh) * | 2020-01-20 | 2020-06-16 | 浙江大学 | 一种基于特征图稀疏化的卷积神经网络剪枝方法 |
CN111401554B (zh) * | 2020-03-12 | 2023-03-24 | 交叉信息核心技术研究院(西安)有限公司 | 支持多粒度稀疏与多模式量化的卷积神经网络的加速器 |
-
2020
- 2020-12-24 CN CN202011553635.6A patent/CN112288046B/zh active Active
-
2021
- 2021-10-26 JP JP2021174307A patent/JP7122041B2/ja active Active
- 2021-11-02 US US17/517,662 patent/US20220207374A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180046915A1 (en) | 2016-08-12 | 2018-02-15 | Beijing Deephi Intelligence Technology Co., Ltd. | Compression of deep neural networks with proper use of mask |
US20200104717A1 (en) | 2018-10-01 | 2020-04-02 | Neuralmagic Inc. | Systems and methods for neural network pruning with accuracy preservation |
Also Published As
Publication number | Publication date |
---|---|
JP2022101461A (ja) | 2022-07-06 |
CN112288046A (zh) | 2021-01-29 |
CN112288046B (zh) | 2021-03-26 |
US20220207374A1 (en) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11521068B2 (en) | Method and system for neural network synthesis | |
Liu et al. | Learning efficient convolutional networks through network slimming | |
US10832120B2 (en) | Systems and methods for a multi-core optimized recurrent neural network | |
JP7122041B2 (ja) | ニューラルネットワークに用いられる混合粒度に基づく共同スパース方法 | |
US8700552B2 (en) | Exploiting sparseness in training deep neural networks | |
US20210133540A1 (en) | System and method for compact, fast, and accurate lstms | |
US11657285B2 (en) | Methods, systems, and media for random semi-structured row-wise pruning in neural networks | |
US20220222534A1 (en) | System and method for incremental learning using a grow-and-prune paradigm with neural networks | |
CN112508190A (zh) | 结构化稀疏参数的处理方法、装置、设备及存储介质 | |
Li et al. | Efficient bitwidth search for practical mixed precision neural network | |
Lopes et al. | Deep belief networks (DBNs) | |
Qi et al. | Learning low resource consumption cnn through pruning and quantization | |
Li et al. | An accelerating convolutional neural networks via a 2D entropy based-adaptive filter search method for image recognition | |
Johnson et al. | WeightMom: Learning Sparse Networks using Iterative Momentum-based pruning | |
Maji et al. | 1D-FALCON: Accelerating deep convolutional neural network inference by co-optimization of models and underlying arithmetic implementation | |
Sun et al. | Computation on sparse neural networks and its implications for future hardware | |
Mishra et al. | Wrpn & apprentice: Methods for training and inference using low-precision numerics | |
Zhang et al. | Optimization method of residual networks of residual networks for image classification | |
Theodorakopoulos et al. | Parsimonious Inference on Convolutional Neural Networks: Learning and applying on-line kernel activation rules | |
Giffon et al. | Psm-nets: compressing neural networks with product of sparse matrices | |
Li et al. | Memory saving method for enhanced convolution of deep neural network | |
Jiang et al. | Class-Aware Pruning for Efficient Neural Networks | |
Hossain et al. | Computational Complexity Reduction Techniques for Deep Neural Networks: A Survey | |
Bhalgaonkar et al. | Model compression of deep neural network architectures for visual pattern recognition: Current status and future directions | |
Qu et al. | A Coordinated Model Pruning and Mapping Framework for RRAM-based DNN Accelerators |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211108 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20211108 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220301 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20220506 |
|
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: 20220726 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220801 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7122041 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |