JP6872599B1 - ニューラルネットワーク処理装置 - Google Patents

ニューラルネットワーク処理装置 Download PDF

Info

Publication number
JP6872599B1
JP6872599B1 JP2019231110A JP2019231110A JP6872599B1 JP 6872599 B1 JP6872599 B1 JP 6872599B1 JP 2019231110 A JP2019231110 A JP 2019231110A JP 2019231110 A JP2019231110 A JP 2019231110A JP 6872599 B1 JP6872599 B1 JP 6872599B1
Authority
JP
Japan
Prior art keywords
neural network
node
processing
unit
data
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
Application number
JP2019231110A
Other languages
English (en)
Other versions
JP2021099658A (ja
Inventor
忠明 白石
忠明 白石
Original Assignee
三菱電機マイコン機器ソフトウエア株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 三菱電機マイコン機器ソフトウエア株式会社 filed Critical 三菱電機マイコン機器ソフトウエア株式会社
Priority to JP2019231110A priority Critical patent/JP6872599B1/ja
Application granted granted Critical
Publication of JP6872599B1 publication Critical patent/JP6872599B1/ja
Publication of JP2021099658A publication Critical patent/JP2021099658A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

【課題】ニューラルネットワーク処理の回路化に於いて、回路規模の小規模化を図りながら、ニューラルネットワーク処理速度の高速化を目的とする。
【解決手段】ニューラルネットワークの処理状態を通知、管理する状態遷移管理部と、状態遷移管理部による処理状態の通知を受けて入力ノードデータのパスを切換えて通知された処理状態に対応した処理を行い、ノードデータを出力するデータパス制御部と、データパス制御部による出力されたノードデータに積和演算処理を実施してデータパス制御部に出力するニューラルネットワーク処理コア部とを備え、前記ニューラルネットワーク処理コア部は、ノードデータを全結合層用FIFO部に格納する前段階においてノード値がゼロの場合、積和演算回路の処理を省略するとともに、データパス制御部において動作状態に対応したデータパスを切換え、ニューラルネットワーク処理コア部を共通に用いるようにした。
【選択図】図1

Description

本願は、ニューラルネットワーク処理装置に関する。
近年、ディープニューラルネットワークは、高い識別性能により広く利用されるようになっている。一方で、ネットワーク係数(重み係数、バイアスなど)の個数が非常に膨大であり、使用メモリ量と計算コストは高く、リアルタイムな処理に於いては、高価で消費電力の大きなGPU(Graphics Processing Unit:画像処理装置)デバイスを必要とし、組込みマイクロコンピュータでは処理仕切れない状況にある。特に、画像系の情報量の多いCNN(Convolutional Neural Networks:畳込みニューラルネットワーク)処理は、この傾向が強い(特許文献1参照)。
この対策として、ニューラルネットワーク処理を、GPUデバイスを用いて並列処理性を高め、あるいは回路化により並列動作させて高速化を図る取組みがFPGA(field-programmable gate array)にて行われている。その際、重み係数の量子化またはネットワーク計算の処理を間引く枝刈り等の軽量化により演算量および回路規模の削減を行うが、これらをリアルタイムで実現可能とする回路は、その回路規模のために、1個あたり数10万円を超える高価なGPUあるいはFPGAを搭載することが必要となっている。
特開2019−28746号公報
しかしながら、従来の技術では、ニューラルネットワーク処理を30fps(フレーム毎秒)以上で高速に処理するため必要となるGPUあるいはFPGAの価格が高価なため、機器価格が数万円程度の機器に組み込む場合、実用的価格でこれらの機能を実現することが困難となっていた。
これらの課題に対して、処理の並列度を高め、処理の高速化を図ることが考えられるが、並列度を高める程、回路規模が増大するという問題が大きくなり、GPUあるいはFPGAの規模が大きくなり、デバイスの価格が増加することになる。
また、逆に、並列度を下げて回路規模を小さくすることは、処理速度の低下に繋がることになる。つまり、並列度と処理速度は、一般的に反比例の関係にある。
このため、本願におけるニューラルネットワーク処理装置は、回路規模を抑えながら、高速処理を行うという課題を同時に克服することを目的としている。
本願に開示されるニューラルネットワーク処理装置は、制御信号を受けて動作状態を制御し、ニューラルネットワークの処理状態を通知、管理する状態遷移管理部と、前記状態遷移管理部による処理状態の通知を受けて入力ノードデータのパスを切換えて通知された処理状態に対応した処理を行い、ノードデータを出力するデータパス制御部と、前記データパス制御部により出力されたノードデータに積和演算処理を実施して前記データパス制御部に出力するニューラルネットワーク処理コア部とを備え、前記ニューラルネットワーク処理コア部は、ニューラルネットワークのノードデータおよびメモリアドレスをそれぞれ格納する全結合層用FIFO部およびメモリアドレス用FIFO部、重み係数が格納されたメモリ、各ノード値と対応する前記重み係数を乗算して逐次加算する積和演算回路を有し、ノードデータを前記全結合層用FIFO部に格納する前段階においてノード値がゼロの場合、前記積和演算回路の処理を省略するとともに、前記データパス制御部において動作状態に対応したデータパスを切換え、前記ニューラルネットワーク処理コア部を共通に用いるものにおいて、ノードデータを格納する前記全結合層用FIFO部を複数の分割FIFO部にて構成し、ゼロでないノードデータの格納を並列処理した上で、FIFOから積和演算回路への読出し処理においては読み出す分割FIFO部を順次選択し、選択された分割FIFO部からの読出し完了を検知すれば、次の分割FIFO部を選択して読み出す制御を行う前記データパス制御部を備え、前記データパス制御部により、前記分割FIFO部のデータを繋いで1個のFIFOに見立てるようにしたことを特徴とするものである。
本願に係るニューラルネットワーク処理装置によれば、回路規模を抑えながら、高速処理を行うことが可能となる。
実施形態1に係るニューラルネットワーク処理装置の全体構成を示すブロック図である。 実施の形態1に係る動作状態の状態遷移を説明するための概念図である。 ニューラルネットワークの基本的な動作を説明するための概念図である。 実施の形態1における処理の概要を示す概念図である。 実施の形態1に係る回路の共用化を説明するための概念図である。 実施の形態1におけるニューラルネットワーク処理装置の要部構成を示すブロック図である。 実施の形態1に係る重み係数メモリの処理動作を説明するための概念図である。 実施の形態1に係る複数FIFO部の一本化動作を説明するための概念図である。 実施の形態1に係るニューラルネットワーク処理装置の動作を説明するためのフローチャートである。 実施の形態2に係る重み係数メモリのデータ構成を説明するための概念図である。 実施の形態2に係るニューラルネットワーク処理装置の要部構成を示す概念図である。
実施の形態1.
以下、本願における実施の形態について図面を用いて説明する。なお、各図において、同一または相当する部分については、同一符号を付して説明する。
図1は、実施の形態1に係るニューラルネットワーク処理装置を示すブロック図で、図において、ニューラルネットワーク処理装置1は、状態遷移管理部10と、データパス制御部20と、ニューラルネットワーク処理コア部30とを備えている。
状態遷移管理部10は、制御信号を受けて動作状態を制御し、現在、ニューラルネットワークのどの層の処理を行っているかの状態を管理しており、その情報をデータパス制御部20に通知する。
データパス制御部20は、状態遷移管理部10の通知を受けて入力ノードデータのパスを切換えるデータパス切換え部201および通知された処理状態に対応して例えば、ノードデータのReLU(Rectified Linear Unit:正規化線形ユニット)活性化関数処理を行う活性化関数処理部202とマックスプーリング(Maxpooling)処理を行うマックスプーリング処理部203を備え、ノードデータをニューラルネットワーク処理コア部30に出力する。
ニューラルネットワーク処理コア部30は、データパス制御部20の出力を受けて、ノードデータが非ゼロであるか否かを判定する非ゼロ判定制御部301と、累積積和演算を実現する上での全結合層用FIFO部(First In First Out:先入れ先出し)302と、メモリアドレス用FIFO部303と、重み係数メモリ304と、積和演算回路305とから構成されており、全結合層用FIFO部302と、メモリアドレス用FIFO部303と、重み係数メモリ304と、積和演算回路305とにより次層ノード生成演算部310を構成している。
これら各部の動作状態の遷移イメージを図2に示している。
すなわち、第1回目の畳込み処理の完了を開始として#1動作状態に遷移し、第1回目の畳込み処理で得られた特徴画像に対して、第2回目の畳込み処理を行うが、全ての畳込み処理の完了を待つのではなく、畳込み処理が完了した画素単位で、逐次、ReLU活性化関数処理、マックスプーリング処理および全結合層用FIFO部302内の分割FIFO部への書込みを行う。
次に、#1動作状態の完了報告を受けると、状態遷移管理部10は、#2動作状態に遷移し、この動作状態での処理対象ノードは、#1動作状態の処理の結果であるため、これに対応してデータパス制御部20は、パスを切換え、ノードデータをニューラルネットワーク処理コア部30に入力する。その際、重み係数メモリ304もノードに対応したものに切替わるため、非ゼロ判定制御部301は、ゼロ値のノードデータの排除とそれに合わせてメモリアドレス値を選別し、それぞれ、全結合層用FIFO部302とメモリアドレス用FIFO部303に書き込む。
次に、状態遷移管理部10は、#2動作状態の完了報告を受けると、#3動作状態に遷移し、第2全結合層に対する積和演算を行う。このときの処理は、第1全結合層に対する積和演算のみであるため、処理結果を入力に戻す必要はない。#3動作状態での処理が全て完了すると、ニューラルネットワーク処理は完了となり、状態遷移管理部10は、待ち状態に遷移する。
ところで、通常のニューラルネットワーク処理は、図3に示すように、前段層のノード計算を全て終えてから、次段層の演算を行う関係にある。つまり、現層のノード値が確定していない状態で、次層のノード値を求めることはできない。また、推論結果は、最終段の層のノード値が確からしさとして意味を持つのみで、途中の全結合層のノード値を最後まで記憶しておく必要はない。これらのニューラルネットワーク処理の特徴より、各全結合層の処理回路をそれぞれに設けるのではなく、1つの処理回路を共通して使い回すことによって回路規模の低減化を図ることができる。この概念を図4に示している。
なお、最終的に出力される値は、推定の確からしさを示すもので、推論対象ごとに存在する。また、推論結果は、最終段の層のノード値が確からしさとして意味を持ちソフトマックス(Softmax)演算により強調される。その値以外の途中の全結合層のノード値を最後まで記憶しておく必要はない。
すなわち、図4に示すように第1畳込み層―ReLU活性化関数―第2畳込み層―ReLU活性化関数による畳込み処理を行った後、マックスプーリング処理を行い、さらに、全結合層数が2個の場合、第1全結合層―ReLU活性化関数―第2全結合層によるニューラルネットワーク処理を行うことになるが、ここで、第1全結合層および第2全結合層は、図5に示すように同じ回路(非ゼロ判定制御部301、全結合層用FIFO部302、メモリアドレス用FIFO部303および積和演算回路305)を用いて実行している。
なお、ここで、非ゼロ判定制御部301、全結合層用FIFO部302、メモリアドレス用FIFO部303をまとめて非ゼロFIFO部と表示している
図6は、このようなニューラルネットワーク処理装置1におけるニューラルネットワーク処理コア部30の要部構成を示すブロック図である。
このニューラルネットワーク処理コア部30には、乗算器が用いられており、通常、乗算器は、多数の加算器回路より構成されているため、回路規模が大きく処理遅延時間も長くなる。また、FPGAにおいては、ライブラリとして使用可能な乗算器の数がデバイスファミリ毎に決まっており有限個である。したがって、ニューラルネットワーク処理コア部30においては、乗算演算毎に乗算器を設けるのではなく、1個の乗算器を使い回すことによって回路規模の増大を抑制している。
一方、1個の乗算器を使い回すと、乗算演算中は他の乗算処理を行うことができず、一つずつ処理する逐次処理型となるため、トータルの処理時間が長くなる問題が生じる。この対策として幹刈りを行い、乗算演算の回数自体を減らすように構成している。
一般的にノードから出ているニューラルネットに対応する重み係数がゼロの場合に、積和演算を省略することを「枝刈り」と称しているが、本願における「幹刈り」とは、ノード値がゼロの場合に、そのノード(幹)から出ている全てのニューラルネット(枝)の積和演算を省略することを称している。この幹刈りは、ノード値がゼロの場合にFIFO部にデータを書き込まないことで実現するが、この場合、廃棄ノードに繋がるニューラルネットワークの被乗算の重み係数も読み飛ばさなければ、乗算と被乗算の対応が崩れることになる。
このため、図7(B)(C)に示すようにノード値が「0」以外すなわち非ゼロのノードデータを全結合層用FIFO部302に選択して書込み、これに合わせて、重み係数が格納されたメモリの対応するアドレスを同様にメモリアドレス用FIFO部303に書き込む。その後、積和演算時にFIFO部からノード値を読み出する際に、ノード値に対応した重み係数のアドレス値を読み出し、重み係数メモリ304に供給することによりペアのズレをなくすことができる。
また、上述ではノード値がゼロの場合に、それに繋がる全てのニューラルネットの積和演算をキャンセルするものであるが、逆に、全てのニューラルネットの重み係数値がゼロの場合、同様に積和演算をキャンセルすることが可能である。ノード値は入力データにより変化するが、重み係数は固定であるため、事前に全てのニューラルネットの重み係数値がゼロであるノードを特定することは可能であり、その特定されたノードの積和演算をキャンセルする。また、ノード処理の単位を分割並列化させた場合に於いては、その単位範囲内で接続されるニューラルネットの重み係数がゼロであれば、そのノード演算の前にキャンセル指定することが可能となる。
このようにして全結合層用FIFO部302から読み出されたノードデータと、メモリアドレス用FIFO部303から読み出されたアドレスが示す重み係数メモリ304の出力、すなわち、重み係数とが乗算され、積和演算回路305のレジスタに記憶される。全結合層用FIFO部302のデータが空になるまで乗算結果の加算が繰り替えされ、最終的にその値が次層ノード値として確定することになる。
次に、積和演算回路305の小型化について説明する。
2進数の演算において2のn乗の乗算は、通常の乗算器を使用しなくてもシフト演算によって可能である。例えば、10に0.5(2−1)を乗ずると5になるが、これをシフト演算で行う場合、10は2進数で「1010」であり1ビット右シフト、即ち、0.5乗算相当とすると、「0101」となり、これは10進数の5である。この理論を活かし、学習段階にて重み係数の取る範囲を2のn乗に指定し、またはそれに近似化することによって量子化し、乗算器をなくすことが可能となる。乗算器に比べシフト演算は、配線の切り替えだけの回路になるため、回路規模を著しく小さいものとすることができる。
また、全結合層の前段処理に於いては、一般的に複数種類の特徴画像データが抽出され、メモリまたはレジスタに記憶される。ここで、特徴画像の記憶回路と全結合層用FIFO部302は、基本的に同一容量である。このため、図5、図6に示すように、これらニューラルネットワーク処理コア部30を2重に持たずに共通化する。また、図8に示すように、非ゼロ判定および非ゼロデータの複数の分割FIFO部への書き込みを同時並列(例えば64個)で行った後、それを繋いで一個のFIFOに見立てるもので、モードに応じた制御切換えにより実現している。なお、複数の分割FIFO部を一本化した全結合層用FIFO部302の出力は、一つの次層ノード生成演算部310にて処理される。
次に、図9に示すフローチャートを用いてニューラルネットワーク処理装置1の動作を説明する。
まず、ステップS101においてニューラルネットワーク処理の前の畳込み処理により生成された特徴画像に対し、例えば、マックスプーリング処理を行い、その情報量を1/4に削減した特徴画像データ(ノード値)を生成する。次に、ステップS102において、特徴画像毎に非ゼロデータであるか否かの判定を非ゼロ判定制御部301により行う。 ステップS102において非ゼロデータであると判定すると、ステップS103に移行し、全結合層用FIFO部302における分割FIFO部にノードデータを書き込み、並行してステップS104において非ゼロノードに対応したメモリアドレスを書き込む。これらの全データの書き込みが完了したか判定し(ステップS105)、書き込みが完了していないと判定した場合、ステップS102に戻り、次のデータを判定し、書き込みを行う。なお、ステップS102において、ゼロデータであると判定した場合、書き込み処理を行わず、ステップS105に移行する。
一方、ステップS105において書き込みが完了していると判定した場合(ステップS106)、状態遷移管理部10によりニューラルネットワーク処理モードに移行し、全結合層用FIFO部302内の分割FIFO部の制御を変えて一本のFIFO部相当の出力を生成する。また、同様に、メモリアドレス用FIFO部303も一本のFIFO部相当の出力を生成する(ステップS107)。
次に、ステップS108において、積和演算回路305により全結合層用FIFO部302およびメモリアドレス用FIFO部303内のデータが空になるまで累積積和演算を行い、ステップS109においてデータが最終であると判定すると、ステップS110に移行して次段への全結合層のノード値が確定することになる。
なお、次層ノード生成演算部310は、次層のノード数分あり、次層ノードは、一斉に生成されるが、回路規模を低減する目的のため、次層ノード生成演算部310をノード分割させて減らすことは可能である。但し、この場合、全結合層用FIFO部302は、分割の数分だけ読み返す必要がある。
すなわち、前段のノード数をm個(mは整数)とし、次段のノード数をn個(nは整数)とした場合、FIFOの読出し段数msは、mからゼロ値のノード数mzを引いた値となる(ms=m−mz)。また、処理時間の削減率は、ms/mにより求められる。使用される機会の多い活性化関数ReLUにより、ノード値のうちゼロよりも小さな値は、一律ゼロにされるため、実際のノード値は、ゼロの比率が高く、その分、処理の高速化へと繋がり易い。なお、前段と後段に接続されるニューラルネット数はm×n本となり、その数分の重み係数データが存在することになる。
ところで、ニューラルネットワークの個数は、一般的には100万を超える個数であり、当然、重み係数のメモリアドレスも同数のデータを有しているため、多ビットにより構成することが必要となる。このメモリアドレス値は2進数で表現されるが、仮に14ビット幅で表現すると、図10に示すように全アドレスのうちのゼロ固定(無効データ)となる領域が半分を占めることになり、データの記憶効率が悪いものとなる。
実施の形態2.
図11は、このようなメモリアドレス用FIFO部303におけるアドレスの記憶容量を減らすことを目的として増分値(相対アドレス化)を記憶させた例を示している。
すなわち、重み係数メモリ304のアドレス入力の前段に、アドレスカウンタ306を設け、アドレスの増分値を現在値に対してインクリメントするものである。このようにアドレスの増分値のみを記憶させることにより、メモリアドレス用FIFO部303の記憶容量を減らすことが可能となる。
ノード値は、直前の活性化関数処理、例えば、ReLU処理によりマイナス値の場合は強制的にゼロになる。このため、ゼロである確率は高くなり、その分、高速化に直結するものであるが、人工知能推論の判定に影響度の低いゼロに近い値の場合に、これをゼロと看做してより高速性を高める。どの範囲をゼロとして丸めるか(閾値の設定)については、汎用のプログラミング言語であるパイソン(PYTHON)言語等で記述したソフトウエアシミュレータにて容易に設定することができる。
なお、上述の実施形態においては、非ゼロノードデータおよび対応する重み係数メモリのアドレス情報の格納にFIFOを使用したものについて説明したが、ニューラルネットワーク処理の前段には、一般的に、畳込み処理、プーリング処理および活性化関数処理があり、データの処理の都合に合わせてデータを読み出す順番を逆にした、いわゆるLIFO(Last In First Out:後入れ先出し)法を使用してもよい。
本開示は、例示的な実施の形態が記載されているが、実施の形態に記載された様々な特徴、態様、および機能は、特定の実施の形態の適用に限られるのではなく、単独で、または様々な組み合わせで実施の形態に適用可能である。従って、例示されていない無数の変形例が、本願明細書に開示される技術の範囲内において想定される。例えば、少なくとも1つの構成要素を変形する場合、追加する場合または省略する場合が含まれるものとする。
1:ニューラルネットワーク処理装置、 10:状態遷移管理部、
20:データパス制御部、 30:ニューラルネットワーク処理コア部、
201:データパス切換え部、 202:活性化関数処理部、
203:マックスプーリング処理部、 301:非ゼロ判定制御部、
302:全結合層用FIFO部、 303:メモリアドレス用FIFO部、
304:重み係数メモリ、 305:積和演算回路、 306:アドレスカウンタ、
310:次層ノード生成演算部

Claims (6)

  1. 制御信号を受けて動作状態を制御し、ニューラルネットワークの処理状態を通知、管理する状態遷移管理部と、前記状態遷移管理部による処理状態の通知を受けて入力ノードデータのパスを切換えて通知された処理状態に対応した処理を行い、ノードデータを出力するデータパス制御部と、前記データパス制御部により出力されたノードデータに積和演算処理を実施して前記データパス制御部に出力するニューラルネットワーク処理コア部とを備え、前記ニューラルネットワーク処理コア部は、ニューラルネットワークのノードデータおよびメモリアドレスをそれぞれ格納する全結合層用FIFO部およびメモリアドレス用FIFO部、重み係数が格納されたメモリ、各ノード値と対応する前記重み係数を乗算して逐次加算する積和演算回路を有し、ノードデータを前記全結合層用FIFO部に格納する前段階においてノード値がゼロの場合、前記積和演算回路の処理を省略するとともに、前記データパス制御部において動作状態に対応したデータパスを切換え、前記ニューラルネットワーク処理コア部を共通に用いるニューラルネットワーク処理装置において、
    ノードデータを格納する前記全結合層用FIFO部を複数の分割FIFO部にて構成し、ゼロでないノードデータの格納を並列処理した上で、FIFOから積和演算回路への読出し処理においては読み出す分割FIFO部を順次選択し、選択された分割FIFO部からの読出し完了を検知すれば、次の分割FIFO部を選択して読み出す制御を行う前記データパス制御部を備え、前記データパス制御部により、前記分割FIFO部のデータを繋いで1個のFIFOに見立てるようにしたことを特徴とするニューラルネットワーク処理装置。
  2. 前記全結合層用FIFO部に書込まれた非ゼロのノードデータに合わせて、重み係数が格納されたメモリの対応するアドレス値を書き込むメモリアドレス用FIFO部を備え、前記アドレス値を相対アドレス値で書き込むようにしたことを特徴とする請求項1に記載のニューラルネットワーク処理装置。
  3. ノードデータのノード値が予め設定された閾値以下の場合にノード値をゼロとして前記積和演算回路の処理を省略するようにしたことを特徴とする請求項1または請求項2に記載のニューラルネットワーク処理装置。
  4. 特定のノードと対応する重み係数が全てゼロであることを事前に検出し、全てゼロと判定した場合に、ゼロ値のノードデータを排除する非ゼロ判定制御部を備え、前記非ゼロ判定制御部により特定のノードの積和演算処理を省略することを特徴とする請求項1から請求項3のいずれか1項に記載のニューラルネットワーク処理装置。
  5. 前記重み係数の値を2のn乗値(nは整数)に量子化し、前記積和演算回路の乗算演算をビットシフト処理にて実行するようにしたことを特徴とする請求項1から請求項4のいずれか1項に記載のニューラルネットワーク処理装置。
  6. ノードデータおよびアドレスをそれぞれ格納する前記全結合層用FIFO部および前記メモリアドレス用FIFO部を全結合層用LIFO部およびメモリアドレス用LIFO部に置き換えたことを特徴とする請求項1から請求項のいずれか1項に記載のニューラルネットワーク処理装置。
JP2019231110A 2019-12-23 2019-12-23 ニューラルネットワーク処理装置 Active JP6872599B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019231110A JP6872599B1 (ja) 2019-12-23 2019-12-23 ニューラルネットワーク処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019231110A JP6872599B1 (ja) 2019-12-23 2019-12-23 ニューラルネットワーク処理装置

Publications (2)

Publication Number Publication Date
JP6872599B1 true JP6872599B1 (ja) 2021-05-19
JP2021099658A JP2021099658A (ja) 2021-07-01

Family

ID=75896319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019231110A Active JP6872599B1 (ja) 2019-12-23 2019-12-23 ニューラルネットワーク処理装置

Country Status (1)

Country Link
JP (1) JP6872599B1 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067360A (ja) * 2001-08-24 2003-03-07 Seiko Epson Corp 積和演算方法および積和演算装置
JP6365258B2 (ja) * 2014-11-19 2018-08-01 株式会社デンソー 演算処理装置
WO2019053835A1 (ja) * 2017-09-14 2019-03-21 三菱電機株式会社 演算回路、演算方法、およびプログラム

Also Published As

Publication number Publication date
JP2021099658A (ja) 2021-07-01

Similar Documents

Publication Publication Date Title
CN107315571B (zh) 一种用于执行全连接层神经网络正向运算的装置和方法
CN112200297B (zh) 神经网络优化方法、装置及处理器
JP2018073102A (ja) 演算回路、その制御方法及びプログラム
CN109993293B (zh) 一种适用于堆叠式沙漏网络的深度学习加速器
US11928599B2 (en) Method and device for model compression of neural network
JP2019139338A (ja) 情報処理装置、情報処理方法、およびプログラム
CN110580519B (zh) 一种卷积运算装置及其方法
CN112633477A (zh) 一种基于现场可编程阵列的量化神经网络加速方法
Faraone et al. Customizing low-precision deep neural networks for FPGAs
CN110490302B (zh) 一种神经网络编译优化方法、装置以及相关产品
US11354097B2 (en) Compressor circuit, Wallace tree circuit, multiplier circuit, chip, and device
JP6872599B1 (ja) ニューラルネットワーク処理装置
WO2020185207A1 (en) Computerized system and method for generative circuit design with machine-learned networks
KR20230075349A (ko) 반도체 장치
CN115982418A (zh) 一种提升ai计算芯片超分运算性能的方法
CN110889080A (zh) 乘积累加运算装置、乘积累加运算方法和系统
CN112732638B (zh) 基于ctpn网络的异构加速系统及方法
CN111767204B (zh) 溢出风险检测方法、装置及设备
KR102372869B1 (ko) 인공 신경망을 위한 행렬 연산기 및 행렬 연산 방법
CN113627587A (zh) 一种多通道式卷积神经网络加速方法及装置
KR20240095659A (ko) 차세대 고속 경량 객체인식 fpga npu 시스템을 위한 계산유닛, 버퍼 및 데이터 이동 최적화 방법론
CN111506522A (zh) 数据处理设备及方法
WO2024009371A1 (ja) データ処理装置、データ処理方法、及びデータ処理プログラム
CN112639838A (zh) 运算处理装置
WO2022265044A1 (ja) 演算処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210224

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: 20210330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210419

R150 Certificate of patent or registration of utility model

Ref document number: 6872599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250