JP6903132B2 - データ処理装置およびデータ処理方法 - Google Patents
データ処理装置およびデータ処理方法 Download PDFInfo
- Publication number
- JP6903132B2 JP6903132B2 JP2019528310A JP2019528310A JP6903132B2 JP 6903132 B2 JP6903132 B2 JP 6903132B2 JP 2019528310 A JP2019528310 A JP 2019528310A JP 2019528310 A JP2019528310 A JP 2019528310A JP 6903132 B2 JP6903132 B2 JP 6903132B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- quantization
- data processing
- neural network
- information
- 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/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/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
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- 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/047—Probabilistic or stochastic 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Neurology (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
機械学習には、脳の神経回路(ニューロン)を模擬したニューラルネットワークという手法がある。ニューラルネットワークでは、ニューロンが相互に結合されたネットワークによって表現された確率モデル(識別モデル、生成モデル)によって、入力データの分類(識別)または回帰が行われる。
さらに、全結合層(Fully−connected Layer)だけでなく、畳み込み層(Convolution Layer)とプーリング層(Pooling Layer)を持つニューラルネットワークである畳み込みニューラルネットワーク(Convolutional Neural Network)では、データのフィルタ処理を実現するネットワークなど、分類および回帰以外のデータ処理を実現するネットワークが生成可能となっている。例えば、画像または音声を入力として、入力信号のノイズ除去、または高品質化などを実現する画像または音声のフィルタ処理、圧縮音声などの高域が失われた音声の高域復元処理、一部領域が欠損した画像の復元処理(inpainting)、画像の超解像処理、などが畳み込みニューラルネットワークで実現可能である。
その他にも、生成モデルで生成されたデータが、本物のデータであるか(生成モデルによって生成されたデータではないか)を判定する識別モデルに入力してデータの真贋判定する、生成モデルと識別モデルとを組み合わせてネットワークを構築し、生成モデルは、生成データが識別モデルに生成データであることを見破られないように、識別モデルは、生成データが生成データであることを見破れるように、敵対的に学習することで、高精度な生成モデルの生成を実現する敵対的生成ネットワーク(Generative Adversarial Network)という新しいニューラルネットワークも近年発表されている。
ただし、ニューラルネットワークのデータサイズは大容量化する傾向にあり、ニューラルネットワークを用いたコンピュータの計算負荷も増加している。
このため、エッジの重みの圧縮サイズにばらつきが生じて、非特許文献1に記載される技術では、ニューラルネットワークのエッジに関するパラメータデータの高圧縮を実現できないという課題があった。
圧縮データから復号した量子化情報およびネットワーク構成情報を用いることで、符号化側で最適化されたニューラルネットワークを復号側で構成することができる。
実施の形態1.
図1は、この発明の実施の形態1に係るデータ処理装置100の構成を示すブロック図である。図1において、データ処理装置100は、学習済みのニューラルネットワークを用いて入力データを処理し、処理結果を出力する。
また、データ処理装置100は、量子化情報およびネットワーク構成情報を符号化するエンコーダとして機能し、データ処理部101、圧縮制御部102および符号化部103を備える。
また、データ処理部101は、圧縮制御部102によって生成された量子化情報を入力し、量子化情報に定義された量子化ステップでニューラルネットワークのパラメータデータを量子化する。そして、データ処理部101は、量子化した上記パラメータデータを含むネットワーク構成情報を、符号化部103に出力する。
ニューラルネットワークのパラメータデータを学習する場合、予め決まった初期状態(パラメータデータの初期値)のニューラルネットワークに対して、学習対象の入力データを用いてニューラルネットワークの学習を行った後、圧縮制御部102によって生成された量子化情報を入力して量子化情報に定義された量子化ステップでニューラルネットワークのパラメータデータを量子化する。
そして、この量子化されたニューラルネットワークを次の学習の初期状態として、上記の学習と量子化を実施する。この学習と量子化の処理をL回(Lは1以上の整数)繰り返した結果として得られたニューラルネットワークをネットワーク構成情報の一部として、符号化部103に出力する。
なお、L=1の場合は、量子化後のニューラルネットワークを再学習しないため、データ処理部101で学習せずに外部で学習済みのニューラルネットワークを用いることと同様の処理と言える。つまり、学習をデータ処理部101で行うか外部で行うかの違いのみである。
ニューラルネットワークのパラメータデータとは、例えば、ニューラルネットワークにおけるノード間を結合するエッジに付与された重み情報がある。
例えば、圧縮制御部102は、ニューラルネットワークにおける、エッジごと、ノードごと、カーネルごと、または、レイヤごとに切り替わる量子化ステップを決定する。
具体的には、量子化値kは、下記式(1)で表される。
k=floor((x/Q)+d0)+d1 (1)
上記式(1)において、xは量子化対象パラメータの値、Qは量子化ステップ、d0(0≦d0<1)は、それぞれの量子化値に対応する量子化対象値の範囲の調整オフセットであり、d1(0≦d1<1)は量子化値を調整するオフセット、floor()は小数点切捨て処理関数を示している。さらに、上記式(1)に対して設定した範囲の量子化対象値xの量子化値kを0とするデッドゾーンを設ける方法もある。
また、量子化済みパラメータの値yは下記式(2)のとおりとなる。
y=kQ (2)
上記で説明した量子化ステップの最小切り替え単位を、エッジ単位からレイヤ単位とした場合、量子化によるパラメータデータの圧縮率が高くなるので、符号化前のパラメータデータを削減することができる。
なお、データ処理部101から符号化部103に入力されたネットワーク構成情報は、圧縮制御部102によって決定された量子化ステップで、データ処理部101によって量子化されたパラメータデータを含むネットワーク構成情報である。
データ処理装置200は、圧縮データから、量子化情報およびネットワーク構成情報を復号するデコーダとして機能し、復号部201およびデータ処理部202を備える。
復号部201によって復号されたネットワーク構成情報には、エンコーダであるデータ処理装置100側の学習結果によって最適化されたエッジの重み情報などのパラメータデータを量子化した結果(量子化値k)が含まれている。
復号部201によって復号された量子化情報には、パラメータデータを量子化するときの量子化ステップQが定義されている。上記パラメータデータを量子化した結果kと上記量子化ステップQから、上記式(2)に従って、量子化済みパラメータyが復号される。これらの復号結果は、復号部201からデータ処理部202に出力される。
また、データ処理部202は、復号部201によって圧縮データから復号された量子化情報およびネットワーク構成情報を用いて、パラメータデータであるエッジの重み情報を逆量子化する。さらに、データ処理部202は、逆量子化したパラメータデータを含んだネットワーク構成情報を用いて、ニューラルネットワークを構成する。
すなわち、データ処理装置100は、図4を用いて後述するステップST1からステップST3までの処理を実行するための処理回路を備える。
処理回路は、専用のハードウェアであってもよいが、メモリに記憶されたプログラムを実行するCPU(Central Processing Unit)であってもよい。
なお、データ処理部101、圧縮制御部102および符号化部103のそれぞれの機能を別々の処理回路で実現してもよいし、これらの機能をまとめて1つの処理回路で実現してもよい。
ソフトウェアまたはファームウェアは、プログラムとして記述されて、メモリ302に記憶される。
プロセッサ301は、メモリ302に記憶されたプログラムを読み出して実行することによってデータ処理部101、圧縮制御部102および符号化部103のそれぞれの機能を実現する。すなわち、データ処理装置100は、プロセッサ301によって実行されるときに、図4に示すステップST1からステップST3までの処理が結果的に実行されるプログラムを記憶するためのメモリ302を備える。
これらのプログラムは、データ処理部101、圧縮制御部102および符号化部103の手順または方法をコンピュータに実行させるものである。
メモリ302は、コンピュータを、データ処理部101、圧縮制御部102および符号化部103として機能させるためのプログラムが記憶されたコンピュータ可読記憶媒体であってもよい。
例えば、データ処理部101については、専用のハードウェアとしての処理回路でその機能を実現し、圧縮制御部102および符号化部103については、プロセッサ301がメモリ302に記憶されたプログラムを読み出して実行することによってその機能を実現してもよい。
このように、処理回路は、ハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせによって上記機能のそれぞれを実現することができる。
なお、復号部201およびデータ処理部202のそれぞれの機能を、別々の処理回路で実現してもよいし、これらの機能をまとめて1つの処理回路で実現してもよい。
ソフトウェアまたはファームウェアは、プログラムとして記述されて、メモリ302に記憶される。
プロセッサ301は、メモリ302に記憶されたプログラムを読み出して実行することによって、復号部201およびデータ処理部202のそれぞれの機能を実現する。
すなわち、データ処理装置200は、プロセッサ301によって実行されるときに、図5に示すステップST1aからステップST4aまでの処理が結果的に実行されるプログラムを記憶するためのメモリ302を備える。
これらのプログラムは、復号部201およびデータ処理部202の手順または方法を、コンピュータに実行させるものである。
メモリ302は、コンピュータを、復号部201およびデータ処理部202として機能させるためのプログラムが記憶されたコンピュータ可読記憶媒体であってもよい。
例えば、復号部201については、専用のハードウェアとしての処理回路でその機能を実現し、データ処理部202については、プロセッサ301がメモリ302に記憶されたプログラムを読み出して実行することによってその機能を実現してもよい。
図4は、データ処理装置100の動作を示すフローチャートである。
以下では、ニューラルネットワークのパラメータデータがエッジの重み情報である場合を説明する。
圧縮制御部102は、学習済みのニューラルネットワークを構成する複数のエッジのそれぞれの重み情報を量子化するときの量子化ステップを決定して、量子化ステップが定義された量子化情報を生成する(ステップST1)。量子化情報は、圧縮制御部102からデータ処理部101および符号化部103に出力される。
符号化部103によって符号化された上記ネットワーク構成情報および上記量子化情報の圧縮データは、データ処理装置200に出力される。
復号部201は、符号化部103によって符号化された上記圧縮データから量子化情報およびネットワーク構成情報を復号する(ステップST1a)。量子化情報およびネットワーク構成情報は、復号部201からデータ処理部202に出力される。
これにより、データ処理装置200は、データ処理装置100で学習済みのニューラルネットワークを構成することができる。
図6に示すニューラルネットワークでは、入力データ(x1,x2,・・・,xN1)がそれぞれの層で処理されて、処理結果(y1,・・・,yNL)が出力される。
図6において、Nl(l=1,2,・・・,L)は、l層目のレイヤのノード数を示しており、Lは、ニューラルネットワークのレイヤ数を示している。
ニューラルネットワークは、図6に示すように、入力層、隠れ層および出力層を有しており、これらの層のそれぞれには、複数のノードがエッジで繋がれた構造になっている。
複数のノードのそれぞれの出力値は、エッジによって繋がれた前の層のノードの出力値と、エッジの重み情報、および、層ごとに設定されている活性化関数から算出することができる。
なお、DNN(Deep Neural Network)と呼ばれるネットワーク(ディープラーニング、DCNN(Deep CNN)などとも呼ばれる)は、CNNのレイヤ数を多層化したものである。
図7に示す畳み込み層は、前層に9つのノード10−1〜10−9、次層に3つのノード11−1〜11−3を備えている。
エッジ12−1,12−6,12−11には同じ重みが付与されており、エッジ12−2,12−7,12−12には同じ重みが付与されており、エッジ12−3,12−8,12−13には同じ重みが付与されており、エッジ12−4,12−9,12−14には同じ重みが付与されており、エッジ12−5,12−10,12−15には同じ重みが付与されている。また、エッジ12−1から12−5までの重みは全て異なる値となる場合もあるし、複数の重みが同じ値となる場合もある。
例えば、図7に示すように、ノード10−1は、エッジ12−1を介してノード11−1に繋がり、ノード10−2は、エッジ12−2を介してノード11−1に繋がり、ノード10−3は、エッジ12−3を介してノード11−1に繋がり、ノード10−4は、エッジ12−4を介してノード11−1に繋がり、ノード10−5は、エッジ12−5を介してノード11−1に繋がっている。カーネルは、エッジ12−1〜12−5の重みの組み合わせによって規定される。
ノード10−5は、エッジ12−11を介してノード11−3に繋がり、ノード10−6は、エッジ12−12を介してノード11−3に繋がり、ノード10−7は、エッジ12−13を介してノード11−3に繋がり、ノード10−8は、エッジ12−14を介してノード11−3に繋がり、ノード10−9は、エッジ12−15を介してノード11−3に繋がっている。カーネルは、エッジ12−11〜12−15の重みの組み合わせによって規定される。
なお、画像認識用途のCNNでは、複数のカーネルを有する畳み込み層でネットワークが構成されることが多い。
図8に示す2次元データのうち、カーネル20は、x方向のサイズがKx、y方向のサイズがKyのブロック領域である。カーネルサイズKは、K=Kx×Kyである。
データ処理部101またはデータ処理部202は、2次元データにおいて、x方向ステップ数Sxの間隔およびy方向ステップ数Syの間隔で、カーネル20ごとのデータの畳み込み演算を実施する。ここで、ステップSx,Syは1以上の整数である。
図10は、ニューラルネットワークの全結合層であるl(l=1,2,・・・,L)層目のレイヤにおけるノードごとのエッジの重み情報の量子化ステップのマトリクスを示す図である。
さらに、量子化ステップは、複数のノードインデックスまたは複数のエッジインデックス、あるいは複数のノードインデックスとエッジインデックスで共通化してもよい。このようにすることで、符号化すべき量子化情報を削減することができる。
図12は、畳み込み層におけるエッジの重み情報の量子化ステップのマトリクスを示す図である。畳み込み層では、1つのカーネルに対するエッジの重みは全てのノードで共通であり、ノード一つ当たりに結合するエッジ数、すなわちカーネルサイズKを小さくしてカーネルを小領域とすることができる。
なお、i’は、カーネルインデックスであり、i’=1,2,・・・,Ml(l=1,2,・・・,L)である。j’は、エッジインデックスであり、j’=1,2,・・・,Klである。
さらに、量子化ステップは、複数のカーネルインデックスまたは複数のエッジインデックス、あるいは複数のカーネルインデックスとエッジインデックスで共通化してもよい。このようにすることで符号化すべき量子化情報を削減することができる。
同様に、データ処理部101は、図4のステップST2において、図12に示した量子化ステップqi’j’で、図11に示したエッジの重みwi’j’を量子化して、量子化された重みwi’j’を含むネットワーク構成情報を符号化部103に出力する。
なお、ネットワーク構成情報には、量子化された重み以外に、ネットワークのレイヤ数、レイヤごとのノード数、ノード間を繋ぐエッジ、エッジごとに付与された重み情報、ノードの出力を表す活性化関数、層ごとの種別情報(畳み込み層、プーリング層、全結合層)等が含まれる。ただし、データ処理装置100とデータ処理装置200との間で予め固定(定義)している情報については、符号化するネットワーク構成情報に含まない。
図14は、実施の形態1における量子化情報を構成する情報のマトリクス単位のシンタックスを示す図である。
図15は、実施の形態1における量子化情報を構成する情報のレイヤ単位のシンタックスを示す図である。
また、Lはレイヤ数である。
また、Cは、ノード数Nlayer_idまたはカーネル数Mlayer_idである。さらに、Eは、エッジ数Nlayer_id−1またはカーネルサイズKlayer_idである。
フラグquant_enable_flagが0(偽)である場合は、ネットワークにおける全てのエッジの重み情報が量子化されない。すなわち、量子化ステップが量子化情報に設定されない。
一方、フラグquant_enable_flagが1(真)である場合、圧縮制御部102は、フラグlayer_adaptive_quant_flagを参照する。
フラグlayer_adaptive_quant_flagが1(真)である場合、圧縮制御部102は、フラグmatrix_adaptive_quant_flagを参照する。
ただし、入力層(1層目)はエッジを持たないため、量子化ステップは設定されない。
なお、図15は、レイヤ単位で共通した量子化ステップに関するシンタックスを示している。
前述したように、入力層(1層目)はエッジを持たない。
このため、ID情報layer_idが1からL−1までのlayer_id+1層目のレイヤが、量子化ステップの設定対象となる。
まず、圧縮制御部102は、layer_id+1層目のレイヤにおいて、図10に示した1番目のノード(図12では、1番目のカーネル)の量子化ステップを示すbase_quant_step[j](j=0,1,・・・,E−1)を設定する。
なお、Eは、エッジ数Nlayer_idまたはカーネルサイズKlayer_id+1である。
フラグprev_quant_copy_flag[i−1]が1(真)である場合、i+1番目のノード(またはカーネル)は、i番目のノード(またはカーネル)と量子化ステップが同じである。
一方、フラグprev_quant_copy_flag[i−1]が0(偽)である場合、圧縮制御部102は、i+1番目のノード(またはカーネル)の量子化ステップを生成する情報として、差分値diff_quant_value[i−1][j](i=1,2,・・・,C−1、j=0,1,・・・,E−1)を設定する。
すなわち、2番目(i=1)のノード(またはカーネル)では、base_quant_step[j]+diff_quant_value[0][j]が量子化ステップとなる。3番目以降(i≧2)のノード(またはカーネル)は、diff_quant_value[i−2][j]+diff_quant_value[i−1][j]が量子化ステップとなる。
ノード(またはカーネル)間の量子化ステップの相関が低い傾向にある場合、このように構成する方が、符号化部103での符号化効率が高くなる。
前述したように、入力層(1層目)はエッジを持たない。
そこで、圧縮制御部102は、2層目のレイヤにおける全てのエッジの重み情報に共通の量子化ステップとして、base_layer_quant_stepを設定する。
次に、圧縮制御部102は、3層目以降(i≧2)のレイヤについて、i+1層目のレイヤにおける全てのエッジの重み情報に共通の量子化ステップが、i層目のレイヤにおける全てのエッジの重み情報に共通の量子化ステップと同一であるか否かを示すフラグlayer_quant_copy_flag[i−2](i=2,3,・・・,L−1)を参照する。
なお、量子化ステップの最小切り替え単位をエッジ単位としたが、図10に示すようにノード単位(図12では、カーネル単位)を、量子化ステップの最小切り替え単位としてもよい。これは、図14においてE=1とすることと同意である。この場合、量子化ステップは、ノード単位(図12では、カーネル単位)に独立に符号化してもよい。
これは、図13においてフラグlayer_adaptive_quant_flag=1(真)である場合に、フラグmatrix_adaptive_quant_flagなしに、常にlayer_quant_coding()のみを実行することと同意である。このように量子化ステップの最小切り替え単位を、エッジ単位よりも大きくすることで、符号化前の量子化情報のデータサイズを削減することができる。
特に、上記では、ニューラルネットワークのパラメータデータとしてニューラルネットワークにおけるノード間を結合するエッジに付与された重み情報を扱う例について説明した。これらの構成を有することで、量子化ステップが定義された量子化情報と量子化情報における量子化ステップで量子化されたパラメータデータを含むネットワーク構成情報とが圧縮データに符号化される。これにより、ニューラルネットワークのパラメータデータを高圧縮することができる。
また、圧縮データから復号された量子化情報およびネットワーク構成情報を用いることで、符号化側で最適化されたニューラルネットワークを復号側で構成することができる。
この構成において、データ処理部202が、復号部201によって圧縮データから復号された量子化情報およびネットワーク構成情報を用いてパラメータデータを逆量子化し、逆量子化したパラメータデータを含むネットワーク構成情報を用いてニューラルネットワークを構成する。
これにより、圧縮データから復号した量子化情報およびネットワーク構成情報を用いて符号化側で最適化されたニューラルネットワークを構成することができる。
このように構成しても、パラメータデータを高精度に量子化することができる。
このように構成することで、量子化によるパラメータデータの圧縮率が高まるので、符号化前の重み情報のデータ量を削減することができる。
実施の形態1では、ニューラルネットの出力結果を直接的にデータ処理結果とする例について述べたが、ニューラルネットの中間レイヤの出力を、下記の参考文献の画像検索(retrieval)またはマッチング(matching)を一例とした画像データおよび音声データに対するデータ処理の特徴量として用い、これを下記の参考文献のように別のデータ処理手法によって最終的なデータ処理結果を得る応用例がある。
例えば、画像検索、マッチング、物体追跡等の画像処理の画像特徴量としてニューラルネットの中間レイヤの出力を用いる場合、従来の上記画像処理で用いられている画像特徴量であるHOG(Histogram of Oriented Gradients)、SIFT(Scale Invariant Feature Transform)、SURF(Speeded Up Robust Features)などに対する画像特徴量の置き換えもしくは追加を行うことで、上記従来の画像特徴量を用いた画像処理と同じ処理フローで画像処理を実現できる。
この場合、データ処理装置100において、ネットワーク構成情報、量子化情報として符号化するのはデータ処理の特徴量とする出力が得られる中間レイヤまでのニューラルネットワークとなる。
さらに、データ処理装置100は上記データ処理の特徴量を用いて画像検索等のデータ処理を行う。データ処理装置200は圧縮データから上記中間レイヤまでのニューラルネットワークを復号し、入力データを入力して得られる出力をデータ処理の特徴量として画像検索等のデータ処理を実施する。
(参考文献)ISO/IEC JTC1/SC29/WG11/m39219, “Improved retrieval and matching with CNN feature for CDVA”, Chengdu, China, Oct.2016.
Claims (8)
- ニューラルネットワークを用いて、入力データを処理するデータ処理部と、
前記ニューラルネットワークのパラメータデータを量子化するときの量子化ステップを決定し、量子化ステップが定義された量子化情報を生成する圧縮制御部と、
前記圧縮制御部によって決定された量子化ステップで量子化されたパラメータデータを含むネットワーク構成情報と前記量子化情報とを符号化して圧縮データを生成する符号化部と
を備えたことを特徴とするデータ処理装置。 - ニューラルネットワークを用いて入力データを処理するデータ処理部と、
前記ニューラルネットワークのパラメータデータを量子化するときの量子化ステップが定義された量子化情報と、前記量子化情報における量子化ステップで量子化されたパラメータデータを含むネットワーク構成情報と、が符号化された圧縮データを復号する復号部とを備え、
前記データ処理部は、
前記復号部によって圧縮データから復号された前記量子化情報および前記ネットワーク構成情報を用いてパラメータデータを逆量子化し、逆量子化したパラメータデータを含む前記ネットワーク構成情報を用いて前記ニューラルネットワークを構成すること
を特徴とするデータ処理装置。 - 前記ニューラルネットワークのパラメータデータは、前記ニューラルネットワークにおけるノード間を結合するエッジに付与された重み情報であること
を特徴とする請求項1または請求項2記載のデータ処理装置。 - 前記圧縮制御部は、エッジごとに量子化ステップを切り替え、
前記符号化部は、前記エッジごとの量子化ステップが定義された前記量子化情報を符号化すること
を特徴とする請求項1記載のデータ処理装置。 - 前記圧縮制御部は、ノードごとまたはカーネルごとに量子化ステップを切り替え、
前記符号化部は、前記ノードごとまたは前記カーネルごとの量子化ステップが定義された前記量子化情報を符号化すること
を特徴とする請求項1記載のデータ処理装置。 - 前記圧縮制御部は、前記ニューラルネットワークのレイヤごとに量子化ステップを切り替え、
前記符号化部は、前記ニューラルネットワークのレイヤごとの量子化ステップが定義された前記量子化情報を符号化すること
を特徴とする請求項1記載のデータ処理装置。 - 復号部が、ニューラルネットワークのパラメータデータを量子化するときの量子化ステップが定義された量子化情報と、前記量子化情報における量子化ステップで量子化されたパラメータデータを含むネットワーク構成情報と、が符号化された圧縮データを復号するステップと、
データ処理部が、前記復号部によって圧縮データから復号された前記量子化情報および前記ネットワーク構成情報を用いてパラメータデータを逆量子化し、逆量子化したパラメータデータを含む前記ネットワーク構成情報を用いて前記ニューラルネットワークを構成し、当該ニューラルネットワークを用いて入力データを処理するステップと
を備えたことを特徴とするデータ処理方法。 - データ処理部が、ニューラルネットワークを用いて入力データを処理するステップと、
圧縮制御部が、前記ニューラルネットワークのパラメータデータを量子化するときの量子化ステップを決定し、量子化ステップが定義された量子化情報を生成するステップと、
符号化部が、前記圧縮制御部によって決定された量子化ステップで量子化されたパラメータデータを含むネットワーク構成情報と前記量子化情報とを符号化して圧縮データを生成するステップと
を備えたことを特徴とするデータ処理方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/024992 WO2019008752A1 (ja) | 2017-07-07 | 2017-07-07 | データ処理装置、データ処理方法および圧縮データ |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020206026A Division JP7282070B2 (ja) | 2020-12-11 | 2020-12-11 | 圧縮データ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019008752A1 JPWO2019008752A1 (ja) | 2020-01-09 |
JP6903132B2 true JP6903132B2 (ja) | 2021-07-14 |
Family
ID=64950713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019528310A Active JP6903132B2 (ja) | 2017-07-07 | 2017-07-07 | データ処理装置およびデータ処理方法 |
Country Status (11)
Country | Link |
---|---|
US (1) | US20200184318A1 (ja) |
EP (1) | EP3651069A4 (ja) |
JP (1) | JP6903132B2 (ja) |
KR (1) | KR102526818B1 (ja) |
CN (1) | CN110832507A (ja) |
BR (1) | BR112019027664B1 (ja) |
CA (1) | CA3066204C (ja) |
RU (1) | RU2747445C1 (ja) |
SG (1) | SG11201911600VA (ja) |
WO (1) | WO2019008752A1 (ja) |
ZA (1) | ZA201908272B (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11902369B2 (en) | 2018-02-09 | 2024-02-13 | Preferred Networks, Inc. | Autoencoder, data processing system, data processing method and non-transitory computer readable medium |
KR102621118B1 (ko) * | 2018-11-01 | 2024-01-04 | 삼성전자주식회사 | 영상 적응적 양자화 테이블을 이용한 영상의 부호화 장치 및 방법 |
US11977388B2 (en) * | 2019-02-21 | 2024-05-07 | Nvidia Corporation | Quantizing autoencoders in a neural network |
SG11202108534PA (en) * | 2019-02-28 | 2021-09-29 | Mitsubishi Electric Corp | Data processing device, data processing system, and data processing method |
JP7313515B2 (ja) * | 2019-02-28 | 2023-07-24 | 三菱電機株式会社 | データ処理装置、データ処理システムおよびデータ処理方法 |
CN109903351B (zh) * | 2019-03-02 | 2023-05-30 | 复旦大学 | 基于卷积神经网络和传统编码相结合的图像压缩方法 |
JP7215242B2 (ja) * | 2019-03-08 | 2023-01-31 | 富士フイルムビジネスイノベーション株式会社 | 画像処理装置及びプログラム |
JP7345262B2 (ja) * | 2019-03-11 | 2023-09-15 | キヤノン株式会社 | データ圧縮装置、データ処理装置、データ圧縮方法、プログラム、及び学習済みモデル |
JP6605170B1 (ja) * | 2019-05-15 | 2019-11-13 | 株式会社小野測器 | 学習装置及び推定装置 |
US11166022B2 (en) | 2019-06-04 | 2021-11-02 | Google Llc | Quantization constrained neural image coding |
KR20200139909A (ko) | 2019-06-05 | 2020-12-15 | 삼성전자주식회사 | 전자 장치 및 그의 연산 수행 방법 |
JP6651040B1 (ja) * | 2019-08-20 | 2020-02-19 | 株式会社小野測器 | ノッキング判定装置 |
WO2021059476A1 (ja) * | 2019-09-27 | 2021-04-01 | 三菱電機株式会社 | データ処理装置、データ処理システムおよびデータ処理方法 |
KR102384255B1 (ko) * | 2020-01-20 | 2022-04-06 | 경희대학교 산학협력단 | 인공 신경망의 가중치를 처리하는 방법 및 장치 |
WO2021225262A1 (en) * | 2020-05-07 | 2021-11-11 | Samsung Electronics Co., Ltd. | Neural architecture search based optimized dnn model generation for execution of tasks in electronic device |
WO2022009433A1 (ja) | 2020-07-10 | 2022-01-13 | 富士通株式会社 | 情報処理装置,情報処理方法および情報処理プログラム |
US11741712B2 (en) | 2020-09-28 | 2023-08-29 | Nec Corporation | Multi-hop transformer for spatio-temporal reasoning and localization |
KR20220069653A (ko) * | 2020-11-20 | 2022-05-27 | 한국전자기술연구원 | 초경량 딥러닝 네트워크 학습 방법 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2530270C2 (ru) * | 2012-10-23 | 2014-10-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский ядерный университет "МИФИ" (НИЯУ МИФИ) | Виртуальная потоковая вычислительная система, основанная на информационной модели искусственной нейросети и нейрона |
ES2738319T3 (es) * | 2014-09-12 | 2020-01-21 | Microsoft Technology Licensing Llc | Sistema informático para entrenar redes neuronales |
US10417525B2 (en) * | 2014-09-22 | 2019-09-17 | Samsung Electronics Co., Ltd. | Object recognition with reduced neural network weight precision |
US10373050B2 (en) * | 2015-05-08 | 2019-08-06 | Qualcomm Incorporated | Fixed point neural network based on floating point neural network quantization |
US10262259B2 (en) * | 2015-05-08 | 2019-04-16 | Qualcomm Incorporated | Bit width selection for fixed point neural networks |
CN106066783A (zh) * | 2016-06-02 | 2016-11-02 | 华为技术有限公司 | 基于幂次权重量化的神经网络前向运算硬件结构 |
KR101974261B1 (ko) * | 2016-06-24 | 2019-04-30 | 한국과학기술원 | Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치 |
CN106529670B (zh) * | 2016-10-27 | 2019-01-25 | 中国科学院计算技术研究所 | 一种基于权重压缩的神经网络处理器、设计方法、芯片 |
CN106485316B (zh) * | 2016-10-31 | 2019-04-02 | 北京百度网讯科技有限公司 | 神经网络模型压缩方法以及装置 |
CN106557812A (zh) * | 2016-11-21 | 2017-04-05 | 北京大学 | 基于dct变换的深度卷积神经网络压缩与加速方案 |
-
2017
- 2017-07-07 CA CA3066204A patent/CA3066204C/en active Active
- 2017-07-07 WO PCT/JP2017/024992 patent/WO2019008752A1/ja unknown
- 2017-07-07 KR KR1020197038494A patent/KR102526818B1/ko active IP Right Grant
- 2017-07-07 US US16/625,093 patent/US20200184318A1/en not_active Abandoned
- 2017-07-07 SG SG11201911600VA patent/SG11201911600VA/en unknown
- 2017-07-07 EP EP17916616.0A patent/EP3651069A4/en active Pending
- 2017-07-07 CN CN201780092806.XA patent/CN110832507A/zh active Pending
- 2017-07-07 JP JP2019528310A patent/JP6903132B2/ja active Active
- 2017-07-07 BR BR112019027664-5A patent/BR112019027664B1/pt active IP Right Grant
- 2017-07-07 RU RU2020104030A patent/RU2747445C1/ru active
-
2019
- 2019-12-11 ZA ZA2019/08272A patent/ZA201908272B/en unknown
Also Published As
Publication number | Publication date |
---|---|
BR112019027664B1 (pt) | 2023-12-19 |
US20200184318A1 (en) | 2020-06-11 |
SG11201911600VA (en) | 2020-01-30 |
CN110832507A (zh) | 2020-02-21 |
CA3066204C (en) | 2022-04-26 |
JPWO2019008752A1 (ja) | 2020-01-09 |
KR102526818B1 (ko) | 2023-04-27 |
KR20200013710A (ko) | 2020-02-07 |
RU2747445C1 (ru) | 2021-05-05 |
EP3651069A4 (en) | 2020-07-15 |
EP3651069A1 (en) | 2020-05-13 |
CA3066204A1 (en) | 2019-01-10 |
ZA201908272B (en) | 2022-03-30 |
BR112019027664A2 (pt) | 2020-07-07 |
WO2019008752A1 (ja) | 2019-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6903132B2 (ja) | データ処理装置およびデータ処理方法 | |
Choukroun et al. | Low-bit quantization of neural networks for efficient inference | |
US20200005146A1 (en) | Neural network method and apparatus | |
CN114402596A (zh) | 神经网络模型压缩 | |
Lee et al. | Anytime neural prediction via slicing networks vertically | |
CN110503152B (zh) | 用于目标检测的双路神经网络训练方法及图像处理方法 | |
JP7282070B2 (ja) | 圧縮データ | |
EP4036802A1 (en) | Data processing device, data processing system, and data processing method | |
CN113382244B (zh) | 编解码网络结构、图像压缩方法、装置及存储介质 | |
JP7094434B2 (ja) | データ処理装置、データ処理システムおよびデータ処理方法 | |
JP7438544B2 (ja) | ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法 | |
Shen et al. | Golomb-Rice coding parameter learning using deep belief network for hyperspectral image compression | |
EP4327250A1 (en) | Hardware-aware neural network design | |
Chu et al. | Mixed-precision quantized neural network with progressively decreasing bitwidth for image classification and object detection | |
JP7313515B2 (ja) | データ処理装置、データ処理システムおよびデータ処理方法 | |
WO2021055364A1 (en) | Efficient inferencing with fast pointwise convolution | |
Rolon et al. | A multi-class structured dictionary learning method using discriminant atom selection | |
US20230130779A1 (en) | Method and apparatus with neural network compression | |
Gu | Explore deep graph generation | |
Kuzhively | Quantization and Evaluation of AI Algorithms for Hardware Acceleration | |
Lionello et al. | End-To-End Dilated Variational Autoencoder with Bottleneck Discriminative Loss for Sound Morphing--A Preliminary Study | |
KR20230075923A (ko) | 신경망 모델을 학습하기 위한 학습 데이터를 생성하는 방법 및 이를 실행시키기 위한 프로그램을 저장하는 저장 매체, 그리고 전자 장치 | |
Erdenee et al. | Spatially Weighted Convolutional Feature Aggregation for Image Retrieval | |
CN113574882A (zh) | 使用深度生成性模型的视频压缩 | |
He et al. | Improved RSM Algorithm Based on Ensemble Pruning for High-dimensional Steganalysis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190815 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201013 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201211 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20201211 |
|
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: 20210525 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210622 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6903132 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |