JP7120288B2 - ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム - Google Patents
ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム Download PDFInfo
- Publication number
- JP7120288B2 JP7120288B2 JP2020187816A JP2020187816A JP7120288B2 JP 7120288 B2 JP7120288 B2 JP 7120288B2 JP 2020187816 A JP2020187816 A JP 2020187816A JP 2020187816 A JP2020187816 A JP 2020187816A JP 7120288 B2 JP7120288 B2 JP 7120288B2
- Authority
- JP
- Japan
- Prior art keywords
- neural network
- function
- quantization
- learning
- input
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
まず、本発明の実施形態の背景について説明する。
続いて、本発明の第1の実施形態について説明する。
まず、本発明の第1の実施形態に係るニューラルネットワーク軽量化装置の構成例について説明する。図2は、本発明の第1の実施形態に係るニューラルネットワーク軽量化装置の機能構成例を示す図である。図2に示されるように、本発明の第1の実施形態に係るニューラルネットワーク軽量化装置10は、入力部100、モデル修正部101、学習部102、演算変換部103および出力部104を備える。なお、後にも説明するように、ニューラルネットワーク軽量化装置10は、演算変換部103を備えていなくてもよい。
入力部100は、軽量化対象のニューラルネットワーク(第1のニューラルネットワーク)および軽量化対象のニューラルネットワークの学習に使用されるデータ(学習用データセット)を取得する。例えば、入力部100は、軽量化対象のニューラルネットワークおよび学習用データセットを、図示しないメモリから読み出すことによって取得してもよい。例えば、軽量化対象のニューラルネットワークは、学習前のニューラルネットワークの構造(モデル構造)であってよい。
モデル修正部101は、入力部100から入力された軽量化対象のニューラルネットワークに基づいて、軽量化対象のニューラルネットワークに含まれる少なくとも一つの乗算処理を修正対象の乗算処理として特定する。ここでは、第1層から第(N-1)層に含まれる畳み込み層、および、第N層に含まれる全結合層に含まれる全部の乗算処理を、修正対象の乗算処理として特定する場合を想定する。しかし、修正対象の乗算処理は、かかる例に限定されない。例えば、軽量化対象のニューラルネットワークに含まれる一部の乗算処理(例えば、要素同士の乗算処理など)のみを修正対象の乗算処理として特定してもよい。
学習部102は、モデル修正部101から入力された学習用データセットに基づいて、モデル修正部101から入力された訓練対象のニューラルネットワークの学習を行う。例えば、学習部102は、誤差逆伝播法(バックプロパゲーション)などを用いて、訓練対象のニューラルネットワークの学習を行う。これによって、重みと制御パラメータとが訓練される。なお、本明細書では、学習用データセットに適応するようにパラメータを調整することを「パラメータを訓練する」とも言い、「ニューラルネットワークの学習を行う」とも言う。
演算変換部103は、学習部102から入力された学習後のニューラルネットワークに基づいて、量子化関数をインデックス化処理に変換するとともに、修正対象の乗算処理をメモリ参照処理に変換する。これによって、演算変換部103は、変換後のニューラルネットワーク(第3のニューラルネットワーク)を生成する。インデックス化処理およびメモリ参照処理についての詳細は後に説明する。演算変換部103による変換後のニューラルネットワークは、出力部104に出力される。
出力部104は、演算変換部103から入力された変換後のニューラルネットワークを出力する。なお、ニューラルネットワーク軽量化装置10が演算変換部103を備えていない場合には、学習部102から入力された学習後のニューラルネットワークを出力する。ニューラルネットワークは、どのように出力されてもよい。例えば、出力部104は、ニューラルネットワークを記録媒体に出力することによって、記録媒体にニューラルネットワークを記録してもよい。あるいは、出力部104は、ニューラルネットワークを通信装置に出力することによって、通信装置を介してニューラルネットワークを他の装置に送信してもよい。
続いて、本発明の第1の実施形態に係るニューラルネットワーク軽量化装置10の動作例について説明する。上記したように、入力部100によって、軽量化対象のニューラルネットワーク(図3)および学習用データセットが取得される。ここでは一例として、学習用データとして2次元画像が使用される場合を想定する。このとき、軽量化対象のニューラルネットワークに含まれる第l(エル)層の畳み込み層によって行われる演算は、下記の数式(1)のように示される。
本発明の第1の実施形態によれば、入力部100と、モデル修正部101と、学習部102と、出力部104とを備える、ニューラルネットワーク軽量化装置10が提供される。入力部100は、軽量化対象のニューラルネットワークを取得する。そして、モデル修正部101は、軽量化対象のニューラルネットワークに含まれる少なくとも一つの乗算処理を特定し、特定した乗算処理への入力に対して制御パラメータを含んだ量子化関数を導入して訓練対象のニューラルネットワークを生成する。
続いて、本発明の第2の実施形態について説明する。
本発明の第2の実施形態に係るニューラルネットワーク軽量化装置10の構成は、本発明の第2の実施形態に係るニューラルネットワーク軽量化装置10の構成と同様である。したがって、以下では、図2に示したニューラルネットワーク軽量化装置10の機能構成例を用いて、本発明の第2の実施形態について詳細に説明する。具体的には、本発明の第2の実施形態は、本発明の第1の実施形態と比較して、モデル修正部101の機能が異なる。以下では、モデル修正部101の機能について主に説明し、その他の機能についての詳細な説明は省略する。
続いて、本発明の第2の実施形態に係るニューラルネットワーク軽量化装置10の動作例について説明する。本発明の第1の実施形態と同様に、本発明の第2の実施形態において、モデル修正部101は、入力部100から入力された軽量化対象のニューラルネットワークに基づいて、修正対象の乗算処理を特定し、修正対象の乗算処理への入力に対して、制御パラメータを含んだ量子化関数を導入する。
本発明の第2の実施形態によれば、量子化関数は、圧縮伸長処理(合成関数)の後に、高ビット量子化処理(第2の一様量子化関数)を含む。高ビット量子化処理の量子化ビット数は、圧縮伸長処理に含まれる一様量子化関数(第1の一様量子化関数)の量子化ビット数よりも大きい。かかる構成によれば、ルックアップテーブル404の要素値の数を、高ビット量子化処理(第1の高ビット量子化処理510および第2の高ビット量子化処理511)の量子化ビット数に合わせることができるため、メモリ消費量を低減することが可能となる。
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
続いて、本発明の実施形態に係るニューラルネットワーク軽量化装置10のハードウェア構成例について説明する。以下では、本発明の実施形態に係るニューラルネットワーク軽量化装置10のハードウェア構成例として、情報処理装置900のハードウェア構成例について説明する。なお、以下に説明する情報処理装置900のハードウェア構成例は、ニューラルネットワーク軽量化装置10のハードウェア構成の一例に過ぎない。したがって、ニューラルネットワーク軽量化装置10のハードウェア構成は、以下に説明する情報処理装置900のハードウェア構成から不要な構成が削除されてもよいし、新たな構成が追加されてもよい。
100 入力部
101 修正部
102 学習部
103 演算変換部
104 出力部
Claims (10)
- 第1のニューラルネットワークを取得する入力部と、
前記第1のニューラルネットワークに含まれる少なくとも一つの乗算処理を特定し、前記乗算処理への入力に対してパラメータを含んだ、第1の非線形関数と、第1の一様量子化関数と、第2の非線形関数との合成関数を含む量子化関数を導入して第2のニューラルネットワークを生成する修正部と、
前記第2のニューラルネットワークの学習によって、前記第2のニューラルネットワークの重みパラメータと前記量子化関数に含まれるパラメータとを訓練する学習部と、
学習後の第2のニューラルネットワークを出力する出力部と、
を備える、ニューラルネットワーク軽量化装置。 - 前記第2の非線形関数は、前記第1の非線形関数の逆関数である、
請求項1に記載のニューラルネットワーク軽量化装置。 - 前記量子化関数は、前記合成関数の後に、前記第1の一様量子化関数の量子化ビット数よりも量子化ビット数が大きい第2の一様量子化関数を含む、
請求項1または2に記載のニューラルネットワーク軽量化装置。 - 前記第1の非線形関数は、区分線形関数である、
請求項1~3のいずれか一項に記載のニューラルネットワーク軽量化装置。 - 前記学習部は、前記第2のニューラルネットワークの重みパラメータと前記量子化関数に含まれるパラメータとを同時に訓練する、
請求項1~4のいずれか一項に記載のニューラルネットワーク軽量化装置。 - 前記ニューラルネットワーク軽量化装置は、
学習後の第2のニューラルネットワークに基づいて、前記量子化関数をインデックス化処理に変換するとともに、前記乗算処理をメモリ参照処理に変換して第3のニューラルネットワークを生成する演算変換部を備え、
前記出力部は、前記第3のニューラルネットワークを出力する、
請求項1~5のいずれか一項に記載のニューラルネットワーク軽量化装置。 - 前記メモリ参照処理は、あらかじめ計算されてメモリに記録された、前記量子化関数の出力に基づく乗算処理の結果を得る処理を含む、
請求項6に記載のニューラルネットワーク軽量化装置。 - 前記インデックス化処理は、前記量子化関数への入力を前記量子化関数の出力に基づく乗算処理の結果が記録されたメモリ領域に対応するインデックス値に変換する処理を含む、
請求項7に記載のニューラルネットワーク軽量化装置。 - 第1のニューラルネットワークを取得することと、
前記第1のニューラルネットワークに含まれる少なくとも一つの乗算処理を特定し、前記乗算処理への入力に対してパラメータを含んだ、第1の非線形関数と、第1の一様量子化関数と、第2の非線形関数との合成関数を含む量子化関数を導入して第2のニューラルネットワークを生成することと、
前記第2のニューラルネットワークの学習によって、前記第2のニューラルネットワークの重みパラメータと前記量子化関数に含まれるパラメータとを訓練することと、
学習後の第2のニューラルネットワークを出力することと、
を含む、ニューラルネットワーク軽量化方法。 - コンピュータを、
第1のニューラルネットワークを取得する入力部と、
前記第1のニューラルネットワークに含まれる少なくとも一つの乗算処理を特定し、前記乗算処理への入力に対してパラメータを含んだ、第1の非線形関数と、第1の一様量子化関数と、第2の非線形関数との合成関数を含む量子化関数を導入して第2のニューラルネットワークを生成する修正部と、
前記第2のニューラルネットワークの学習によって、前記第2のニューラルネットワークの重みパラメータと前記量子化関数に含まれるパラメータとを訓練する学習部と、
学習後の第2のニューラルネットワークを出力する出力部と、
を備えるニューラルネットワーク軽量化装置として機能させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020187816A JP7120288B2 (ja) | 2020-11-11 | 2020-11-11 | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020187816A JP7120288B2 (ja) | 2020-11-11 | 2020-11-11 | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022077134A JP2022077134A (ja) | 2022-05-23 |
JP7120288B2 true JP7120288B2 (ja) | 2022-08-17 |
Family
ID=81654227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020187816A Active JP7120288B2 (ja) | 2020-11-11 | 2020-11-11 | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7120288B2 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190347550A1 (en) | 2018-05-14 | 2019-11-14 | Samsung Electronics Co., Ltd. | Method and apparatus with neural network parameter quantization |
US20200234126A1 (en) | 2019-01-23 | 2020-07-23 | Google Llc | Look-up table based neural networks |
US20200302269A1 (en) | 2019-03-18 | 2020-09-24 | Microsoft Technology Licensing, Llc | Differential bit width neural architecture search |
-
2020
- 2020-11-11 JP JP2020187816A patent/JP7120288B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190347550A1 (en) | 2018-05-14 | 2019-11-14 | Samsung Electronics Co., Ltd. | Method and apparatus with neural network parameter quantization |
US20200234126A1 (en) | 2019-01-23 | 2020-07-23 | Google Llc | Look-up table based neural networks |
US20200302269A1 (en) | 2019-03-18 | 2020-09-24 | Microsoft Technology Licensing, Llc | Differential bit width neural architecture search |
Also Published As
Publication number | Publication date |
---|---|
JP2022077134A (ja) | 2022-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110363279B (zh) | 基于卷积神经网络模型的图像处理方法和装置 | |
US11468331B2 (en) | Neural network load reduction device, information processing unit, and neural network load reduction method and computer-readable storage medium | |
TWI791610B (zh) | 對人工神經網路及浮點神經網路進行量化的方法及裝置 | |
CN110969251B (zh) | 基于无标签数据的神经网络模型量化方法及装置 | |
JP6789894B2 (ja) | ネットワーク係数圧縮装置、ネットワーク係数圧縮方法およびプログラム | |
CN110663048A (zh) | 用于深度神经网络的执行方法、执行装置、学习方法、学习装置以及程序 | |
CN113348474A (zh) | 具有非均匀尾数的神经网络激活压缩 | |
JP6787444B1 (ja) | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム | |
JP6633787B2 (ja) | 線形予測復号装置、方法、プログラム及び記録媒体 | |
JP7408799B2 (ja) | ニューラルネットワークモデルの圧縮 | |
EP4008057B1 (en) | Lossless exponent and lossy mantissa weight compression for training deep neural networks | |
CN112771547A (zh) | 通信系统中的端到端学习 | |
WO2022168604A1 (ja) | ソフトマックス関数の近似計算装置、近似計算方法および近似計算プログラム | |
US20240080038A1 (en) | Compression of Data that Exhibits Mixed Compressibility | |
JP7120288B2 (ja) | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム | |
CN113177634B (zh) | 基于神经网络输入输出量化的图像分析系统、方法和设备 | |
JP6992864B1 (ja) | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム | |
KR102243119B1 (ko) | 가변 정밀도 양자화 장치 및 방법 | |
JP7081708B1 (ja) | ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム | |
CN113361701A (zh) | 神经网络模型的量化方法和装置 | |
JP2009210644A (ja) | 線形予測係数算出装置、線形予測係数算出方法、線形予測係数算出プログラム、および記憶媒体 | |
JP2021076900A (ja) | データ処理装置及びその動作方法、プログラム | |
JP2004527172A (ja) | 画像品質についてのアルゴリズムのランダムシステムを最適化するための拡張可能なシステム及び方法 | |
US20240048703A1 (en) | Encoding device, decoding device, encoding method, decoding method, and program | |
EP4141745A1 (en) | Threshold determination program, threshold determination method, and information processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220310 |
|
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: 20220705 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220718 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7120288 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |