(57)【特許請求の範囲】
【請求項１】
複数の処理層が階層的に接続されたニューラルネットワークによる演算を実行する演算処理装置（１０，２０，３０，４０，５０，６０）であって、
前階層から入力される入力データに対して畳み込み演算処理を実行する畳み込み演算処理部（１１，２１，３１，４１，５１，６１）と、
前記畳み込み演算処理部による処理結果データに対してプーリング処理を実行するプーリング処理部（１２，２２，３２，４２，５２，６２）と、
次回層の演算が開始される前に、前記プーリング処理部による処理結果データを積算する積算処理部（１３，２３，３３，４３，５３，６３）と、
前記積算処理部が積算するデータの平均値および標準偏差を算出する統計処理部（１４，２４，３４，４４，５４，６４）と、
次回層の演算が開始されると、前階層において前記統計処理部により算出された平均値および標準偏差を用いて、前階層において前記プーリング処理部により出力された処理結果データに対して正規化処理を実行する正規化処理部（１５，２５，３５，４５，５５，６５）と、
を備える演算処理装置。
【請求項２】
前記正規化処理部（２５）は、減算処理部（２５ａ）および除算処理部（２５ｂ）を備え、
前記減算処理部は、前階層において前記統計処理部（２４）により算出された平均値を、前階層において前記プーリング処理部（２２）により出力された処理結果データから減算し、
前記畳み込み演算処理部（２１）は、前記減算処理部が出力する処理結果データに対して畳み込み演算処理を実行し、
前記除算処理部は、前記畳み込み演算処理部が出力する処理結果データを、前階層において前記統計処理部（２４）により算出された標準偏差により除算する請求項１に記載の演算処理装置。
【請求項３】
前記積算処理部（３３）は、前記プーリング処理部（３２）による処理結果データの一部を積算する請求項１または２に記載の演算処理装置。
【請求項４】
前記積算処理部（４３）は、前記プーリング処理部（４２）による処理結果データの上位の所定ビットを積算する請求項１から３の何れか１項に記載の演算処理装置。
【請求項５】
前記畳み込み演算処理部（６１）、前記プーリング処理部（６２）、前記積算処理部（６３）、前記正規化処理部（６５）を有する演算ブロック（６００）が複数備えられ、
前記統計処理部（６４）は、複数の前記積算処理部（６３）が算出するデータの平均値および標準偏差を算出する請求項１から４の何れか１項に記載の演算処理装置。
【請求項６】
前記畳み込み演算処理部（５１）、前記プーリング処理部（５２）、前記積算処理部（５３）、前記正規化処理部（５５）を有する演算ブロック（５００）が複数備えられ、
複数の前記畳み込み演算処理部がそれぞれ畳み込み演算処理を実行する際に用いる重み係数の最大値を特定し、その特定した最大値の絶対値により、複数の前記畳み込み演算処理部が用いる重み係数を除算する重み調整処理部（５６）を備える請求項１から５の何れか１項に記載の演算処理装置。
【請求項７】
前記畳み込み演算処理部（５１）が前記重み調整処理部により調整された重み係数を用いて演算した演算結果データに、前記重み係数の最大値の絶対値を乗算する乗算処理部（５８）を備える請求項６に記載の演算処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演算処理装置に関する。
【背景技術】
【０００２】
従来より、複数の処理層が階層的に接続されたニューラルネットワークによる演算を実行する演算処理装置が考えられている。特に画像認識を行う演算処理装置においては、いわゆる畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）が中核的な存在となっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５１８４８２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の畳み込みニューラルネットワークでは、前段の階層により得られる複数の異なる演算結果データ、つまり特徴量の抽出結果データに対して畳み込み演算処理を実行し、活性化処理を実行し、プーリング処理を実行することで、より高次元の特徴量の抽出を行っている。そして、さらに、プーリング処理による処理結果データに対して正規化処理を施すことにより、特徴量の認識率を向上することができ、特徴量の抽出処理を一層優位に行うことができる。
【０００５】
ところで、処理結果データに対して正規化処理を行う場合、従来では、まず、畳み込み演算処理時にメモリからデータを読み出し、読み出したデータに対して畳み込み演算処理およびプーリング処理を行い、その演算結果データをメモリに格納する。そして、その後、同一の処理階層において、そのメモリに格納したデータを読み出し、読み出したデータに対して正規化処理を行う。即ち、従来技術では、同一の処理階層においてメモリからのデータの読み出しを２回行う必要があり、大きなレイテンシが発生してしまう。
【０００６】
そこで、本発明は、ニューラルネットワークによる演算処理を実現する演算処理装置において、正規化処理を行うための構成に改良を施すことにより、レイテンシの発生を抑えることを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る演算処理装置は、複数の処理層が階層的に接続されたニューラルネットワークによる演算を実行する演算処理装置であって、畳み込み演算処理部、プーリング処理部、積算処理部、統計処理部、正規化処理部を備える。畳み込み演算処理部は、前階層から入力される入力データに対して畳み込み演算処理を実行する。プーリング処理部は、前記畳み込み演算部による処理結果データに対してプーリング処理を実行する。積算処理部は、次回層の演算が開始される前に、前記プーリング処理部による処理結果データを積算する。統計処理部は、前記積算処理部が積算するデータの平均値および標準偏差を算出する。正規化処理部は、次回層の演算が開始されると、前階層において前記統計処理部により算出された平均値および標準偏差を用いて、前階層において前記プーリング処理部により出力された処理結果データに対して正規化処理を実行する。
【０００８】
この構成によれば、次回層における演算処理の入力部分において、前階層の演算処理時に得られた統計値を用いて正規化処理を行うことができる。そのため、同一の処理階層においてメモリからのデータの読み出しを２回行う必要が無く、レイテンシの発生を抑えることができる。
【図面の簡単な説明】
【０００９】
【図１】畳み込みニューラルネットワークの構成例を概念的に示す図
【図２】中間層における演算処理の流れを視覚的に示す図（その１）
【図３】中間層における演算処理の流れを視覚的に示す図（その２）
【図４】特徴量抽出処理に用いられる一般的な演算式および関数を示す図
【図５】第１実施形態に係る演算処理装置の構成例を概略的に示すブロック図
【図６】正規化関数の一例を示す図
【図７】演算処理装置による演算処理の流れを視覚的に示す図
【図８】第２実施形態に係る演算処理装置の構成例を概略的に示すブロック図
【図９】正規化処理を構成する減算式および除算式の一例を示す図
【図１０】第３実施形態に係る演算処理装置の構成例を概略的に示すブロック図
【図１１】プーリング処理部の処理結果データのサンプリング例を示す図
【図１２】第４実施形態に係る演算処理装置の構成例を概略的に示すブロック図
【図１３】プーリング処理部の処理結果データの一例を２進数により示す図
【図１４】第５実施形態に係る演算処理装置の構成例を概略的に示すブロック図（その１）
【図１５】第５実施形態に係る演算処理装置の構成例を概略的に示すブロック図（その２）
【図１６】非線形の活性化関数の一例を示す図
【図１７】第６実施形態に係る演算処理装置の構成例を概略的に示すブロック図
【発明を実施するための形態】
【００１０】
以下、演算処理装置の複数の実施形態について図面を参照しながら説明する。なお、各実施形態において実質的に同一の要素には同一の符号を付し、説明を省略する。
（ニューラルネットワーク）
図１には、詳しくは後述する演算処理装置１０，２０，３０，４０，５０，６０に適用されるニューラルネットワーク、この場合、畳み込みニューラルネットワークの構成を概念的に示している。即ち、畳み込みニューラルネットワークＮは、入力データである画像データＤ１から所定の形状やパターンを認識する画像認識技術に応用されるものであり、中間層Ｎａと全結合層Ｎｂとを有する。中間層Ｎａは、複数の特徴量抽出処理層Ｎａ１，Ｎａ２・・・が階層的に接続された構成である。各特徴量抽出処理層Ｎａ１，Ｎａ２・・・は、それぞれ畳み込み層Ｃおよびプーリング層Ｐを備える。
【００１１】
次に、中間層Ｎａにおける処理の流れについて説明する。図２に例示するように、第１層目の特徴量抽出処理層Ｎａ１では、演算処理装置は、入力される画像データＤ１を例えばラスタスキャンにより所定サイズごとに走査する。そして、走査したデータに対して周知の特徴量抽出処理を施すことにより入力画像に含まれる複数の特徴量を抽出する。なお、第１層目の特徴量抽出処理層Ｎａ１では、例えば水平方向に延びる線状の特徴量や斜め方向に延びる線状の特徴量などといった比較的シンプルな単独の特徴量を抽出する。このとき、演算処理装置は、入力画像に含まれる複数の特徴にそれぞれ対応する複数の特徴マップを生成する。
【００１２】
第２層目の特徴量抽出処理層Ｎａ２では、演算処理装置は、前階層の特徴量抽出処理層Ｎａ１から入力される入力データを例えばラスタスキャンにより所定サイズごとに走査する。そして、走査したデータに対して周知の特徴量抽出処理を施すことにより入力画像に含まれる複数の特徴量を抽出する。なお、第２層目の特徴量抽出処理層Ｎａ２では、第１層目の特徴量抽出処理層Ｎａ１で抽出された複数の特徴量の空間的な位置関係などを考慮しながら統合させることで、より高次元の複合的な特徴量を抽出する。このとき、演算処理装置は、入力画像に含まれる複数の特徴にそれぞれ対応する複数の特徴マップを生成する。
【００１３】
第３層目の特徴量抽出処理層Ｎａ３では、演算処理装置は、前階層の特徴量抽出処理層Ｎａ２から入力される入力データを例えばラスタスキャンにより所定サイズごとに走査する。そして、走査したデータに対して周知の特徴量抽出処理を施すことにより入力画像に含まれる複数の特徴量を抽出する。なお、第３層目の特徴量抽出処理層Ｎａ３では、第２層目の特徴量抽出処理層Ｎａ２で抽出された複数の特徴量の空間的な位置関係などを考慮しながら統合させることで、より高次元の複合的な特徴量を抽出する。このとき、演算処理装置は、入力画像に含まれる複数の特徴にそれぞれ対応する複数の特徴マップを生成する。このように、複数の特徴量抽出処理層による特徴量の抽出処理を繰り返すことで、演算処理装置は、画像データＤ１に含まれる検出対象物体の画像認識を行う。
【００１４】
演算処理装置は、中間層Ｎａにおいて複数の特徴量抽出処理層Ｎａ１，Ｎａ２，Ｎａ３・・・による処理を繰り返すことで入力画像データＤ１に含まれる種々の特徴量を高次元で抽出していく。そして、演算処理装置は、中間層Ｎａの処理により得られた結果を中間演算結果データとして全結合層Ｎｂに出力する。
【００１５】
全結合層Ｎｂは、中間層Ｎａから得られる複数の中間演算結果データを結合して最終的な演算結果データを出力する。即ち、全結合層Ｎｂは、中間層Ｎａから得られる複数の中間演算結果データを結合し、さらに、その結合結果に対して重み係数を異ならせながら積和演算を行うことにより、最終的な演算結果データ、即ち、入力データである画像データＤ１に含まれる検出対象物を認識した画像データを出力する。このとき、積和演算による演算結果の値が大きい部分が検出対象物の一部または全部として認識される。
【００１６】
次に、演算処理装置による特徴量抽出処理の流れについて説明する。図３に例示するように、演算処理装置は、前階層の特徴量抽出処理層から入力される入力データＤｎを所定サイズ、この場合、図にてハッチングで示す３×３画素ごとのフィルタサイズにより走査する。なお、画素サイズは、３×３画素に限られず、例えば５×５画素など適宜変更することができる。
【００１７】
そして、演算処理装置は、走査したデータに対して、それぞれ周知の畳み込み演算を行う。そして、演算処理装置は、畳み込み演算後のデータに対して周知の活性化処理を行い、畳み込み層Ｃの出力とする。そして、演算処理装置は、畳み込み層Ｃの出力データＣｎに対して、所定サイズ、この場合、２×２画素ごとに周知のプーリング処理を行い、プーリング層Ｐの出力とする。そして、演算処理装置は、プーリング層Ｐの出力データＰｎを次の階層の特徴量抽出処理層に出力する。なお、画素サイズは、２×２画素に限られず適宜変更することができる。
【００１８】
ここで、演算処理装置は、プーリング処理後のデータＰｎ１，Ｐｎ２，・・・に対して周知の正規化処理を施すことにより、プーリングデータＰｎを所定の基準形式である正規化データＮｎ１，Ｐｎ２，・・・に変換してから次の階層に出力する。これにより、より統一された形式でプーリングデータＰｎを次の階層に出力することができる。従って、特徴量の認識率を向上することができ、特徴量の抽出処理を一層優位に行うことができる。後述する各実施形態においては、演算処理装置には、この正規化処理を行うための構成に改良が施されている。
【００１９】
図４には、畳み込み演算処理に用いられる畳み込み関数、活性化処理に用いられる関数、プーリング処理に用いられる関数の一般的な例を示している。即ち、畳み込み関数Ｙｉｊは、直前の層の出力Ｘｉｊに学習により得られる重み係数Ｗｐ，ｑを乗算した値を累積する関数となっている。なお、「Ｎ」は１サイクルの畳み込み演算処理により処理される画素サイズを示す。即ち、例えば１演算サイクルの画素サイズが「３×３」画素である場合、Ｎの値は「２」である。また、畳み込み関数Ｙｉｊは、累積値に所定のバイアス値を加算する関数としてもよい。また、畳み込み関数は、全結合処理にも対応し得る積和演算が可能な関数であれば、種々の関数を採用することができる。また、活性化処理には、周知のロジスティックジグモイド関数やＲｅＬＵ関数（Rectified Linear Units）などが用いられる。また、プーリング処理には、入力されるデータの最大値を出力する周知の最大プーリング関数や、入力されるデータの平均値を出力する周知の平均プーリング関数などが用いられる。
【００２０】
上述した畳み込みニューラルネットワークＮによれば、コンボルーション層Ｃによる処理およびプーリング層Ｐによる処理が繰り返されることにより、より高次元の特徴量の抽出が可能となる。次に、この畳み込みニューラルネットワークＮを適用した演算処理装置に係る複数の実施形態について説明する。なお、各実施形態に係る図においては、第ｎ層目の処理を行っている演算処理装置を実線により示し、次回層である第ｎ＋１層目の処理を行っている演算処理装置を二点鎖線により示している。また、第ｎ層目の処理を行っている演算ブロックを実線により示し、次回層である第ｎ＋１層目の処理を行っている演算ブロックを二点鎖線により示している。
【００２１】
（第１実施形態）
図５に例示する演算処理装置１０は、畳み込み演算処理部１１、プーリング処理部１２、積算処理部１３、統計処理部１４、正規化処理部１５を備える。畳み込み演算処理部１１は、前階層から入力される入力データに対して周知の畳み込み演算処理を実行して、その処理結果データをプーリング処理部１２に出力する。なお、演算処理装置１０は、畳み込み演算処理部１１の処理結果データに対して図示しない活性化処理部により周知の活性化処理を実行してからプーリング処理部１２に出力する。プーリング処理部１２は、畳み込み演算処理部１１から入力される処理結果データに対して周知のプーリング処理を実行して、その処理結果データを、次回層の演算処理時における正規化処理部１５に出力するようになっている。
【００２２】
積算処理部１３は、プーリング処理部１２が出力する処理結果データを、次回層における演算処理が開始される前に積算する。統計処理部１４は、積算処理部１３が積算するデータ、つまり、プーリング処理部１２が出力する処理結果データの平均値および標準偏差を算出する。正規化処理部１５は、図示しない減算器や除算器などを備えており、次回層における演算処理が開始されると、前階層において統計処理部１４により算出された平均値および標準偏差を用いて、前階層においてプーリング処理部１２により出力された処理結果データに対して周知の正規化処理を実行する。正規化処理部１５は、例えば図６に示す正規化関数に基づいて正規化処理を実行する。
【００２３】
演算処理装置１０によれば、図７に例示するように、次回層における演算処理の入力部分において、前階層の演算処理時に得られた統計値を用いて正規化処理を行うようにした。そのため、同一の処理階層においてメモリからのデータの読み出しを２回行う必要が無く、連続する２層にわたって正規化処理をパイプライン化して行うことができる。よって、処理の高速化を図ることができ、レイテンシの発生を抑えることができる。
【００２４】
（第２実施形態）
図８に例示する演算処理装置２０は、畳み込み演算処理部２１、プーリング処理部２２、積算処理部２３、統計処理部２４、正規化処理部２５を備える。正規化処理部２５は、減算処理部２５ａおよび除算処理部２５ｂを備える。
【００２５】
減算処理部２５ａは、図９に例示する減算式（１）に基づいて、前階層において統計処理部２４により算出された平均値を、前階層においてプーリング処理部２２により出力された処理結果データから減算する。畳み込み演算処理部２１は、減算処理部２５ａが出力する処理結果データに対し周知の畳み込み演算処理を実行する。除算処理部２５ｂは、図９に例示する除算式（２）に基づいて、畳み込み演算処理部２１が出力する処理結果データを、前階層において統計処理部２４により算出された標準偏差により除算する。
【００２６】
減算および除算からなる正規化処理を行った上で畳み込み演算処理を行う構成では、正規化処理部に入力されるデータの数に応じた除算回路が必要であり、回路規模が大きくなるという課題がある。演算処理装置２０によれば、減算からなる正規化処理を行い、その処理結果データに対して畳み込み演算処理を行い、その処理結果データに対して除算からなる正規化処理を行うようにした。畳み込み演算処理において、入力されるデータは複数であるのに対し、出力されるデータは１つである。そのため、演算処理装置２０の構成によれば、畳み込み演算処理の後に除算を行うようにしたので、除算回路の数を削減することができる。
【００２７】
（第３実施形態）
図１０に例示する演算処理装置３０は、畳み込み演算処理部３１、プーリング処理部３２、積算処理部３３、統計処理部３４、正規化処理部３５、サンプリング処理部３６を備える。図１１に例示するように、サンプリング処理部３６は、プーリング処理部３２が出力する処理結果データの一部をサンプリングする。そして、サンプリング処理部３６は、サンプリングしたデータを積算処理部３３に出力する。そして、積算処理部３３は、サンプリング処理部３６によってサンプリングされたデータ、つまり、プーリング処理部３２による処理結果データの一部のみを積算する。そして、統計処理部３４は、積算処理部３３により積算されたプーリング処理部３２による処理結果データの一部のみに基づいて、その平均値および標準偏差を算出する。
【００２８】
演算処理装置３０によれば、プーリング処理部３２による処理結果データの全てではなく一部のみに基づいて、その平均値と標準偏差を算出して正規化処理に用いる。このように、プーリング処理部３２による処理結果データの一部のみに基づく統計値によっても十分精度が高い正規化処理を行うことができる。また、演算処理装置３０によれば、積算処理部３３の処理負荷を低減することができる。
【００２９】
（第４実施形態）
図１２に例示する演算処理装置４０は、畳み込み演算処理部４１、プーリング処理部４２、積算処理部４３、統計処理部４４、正規化処理部４５、右シフト処理部４６、左シフト処理部４７を備える。右シフト処理部４６は、プーリング処理部４２と積算処理部４３との間に設けられており、プーリング処理部４２による処理結果データを所定ビットだけ右にシフトさせて積算処理部４３に出力する。左シフト処理部４７は、積算処理部４３と統計処理部４４との間に設けられており、積算処理部４３による処理結果データを所定ビットだけ左にシフトさせて統計処理部４４に出力する。
【００３０】
なお、右シフト処理部４６がデータを右シフトするときのビット数と、左シフト処理部４７がデータを左シフトするときのビット数は同じである。そのため、図１３に例示するように、積算処理部４３は、プーリング処理部４２による処理結果データの上位の所定ビットのみを積算する構成となる。演算処理装置４０によれば、積算処理部４３により、プーリング処理部４２による処理結果データの全ビットではなく上位の所定ビットのみを積算する。この構成によれば、積算処理部４３の処理負荷を低減することができる。
【００３１】
（第５実施形態）
図１４に例示する演算処理装置５０は、畳み込み演算処理部５１、プーリング処理部５２、積算処理部５３、統計処理部５４、正規化処理部５５を有する演算ブロック５００を複数備える構成である。なお、図１４には、１つの演算ブロック５００のみを示している。演算ブロック５００には、それぞれ重み調整処理部５６が備えられている。重み調整処理部５６は、各演算ブロック５００の畳み込み演算処理部５１がそれぞれ畳み込み演算処理を実行する際に用いる重み係数のうち最大の値を示す重み係数を特定する。そして、重み調整処理部５６は、その特定した重み係数の最大値の絶対値により、畳み込み演算処理部５１が用いる重み係数を除算する。これにより、重み調整処理部５６は、重み係数を−１〜１の範囲に収まるように調整する。
【００３２】
演算処理装置５０は、複数の畳み込み演算処理部５１がそれぞれ畳み込み演算処理を実行する際に用いる重み係数の最大値を特定し、その特定した最大値の絶対値により、複数の畳み込み演算処理部５１が用いる重み係数を除算して、重み係数を−１〜１の範囲に調整する。このように重み係数を所定の範囲内に収めることで、当該重み係数を用いて算出される畳み込み演算処理の処理結果データを所定の範囲内に収めることができ、処理結果データのぶれを抑えることができる。よって、処理結果データを、浮動小数点数よりも表現範囲が狭い固定小数点数によっても表現することができ、また、固定小数点数による処理により、より高速で精度の良い演算が可能となる。
【００３３】
なお、図１５に例示するように、演算処理装置５０は、さらに、記憶部５７、乗算処理部５８を備える構成とするとよい。この構成において、記憶部５７は、重み調整処理部５６が特定した重み係数の最大値の絶対値を記憶する。乗算処理部５８は、例えば乗算器で構成されており、畳み込み演算処理部５１が出力する処理結果データに、記憶部５７に記憶されている重み係数の最大値の絶対値を乗算して、活性化処理部５９に出力する。活性化処理部５９は、入力される処理結果データに対して周知の活性化処理を実行して、その処理結果データをプーリング処理部５２に出力する。
【００３４】
この構成は、活性化処理に用いる活性化関数が非線形である場合に特に効果を発揮する。即ち、図１６に例示する非線形の活性化関数により処理結果データにおいては、畳み込み演算の重み係数を調整しない場合の処理結果Ｒ１付近における処理結果の変化量と、畳み込み演算の重み係数を調整した場合の処理結果Ｒ２付近における処理結果の変化量とが異なってくる。そのため、演算処理装置５０は、重み係数を調整した場合の処理結果データＲ２に対し、重み係数の調整の際に用いた最大値の絶対値を乗算することにより、矢印ｒで示すように、畳み込み演算処理の処理結果データを、重み係数を調整しない場合の処理結果データＲ１に戻すようにした。これにより、調整された重み係数により高速で精度の良い畳み込み演算を行いつつも、その処理結果データを、重み係数を調整しなかった場合の処理結果データに近似させることができ、特に活性化関数が非線形である場合であっても、その影響を抑えることができる。
【００３５】
（第６実施形態）
図１７に例示する演算処理装置６０は、畳み込み演算処理部６１、プーリング処理部６２、積算処理部６３、正規化処理部６５を有する演算ブロック６００を複数備える。演算ブロック６００には、それぞれ、加算処理部６６、記憶部６７が備えられている。また、複数の演算ブロック６００のうちの何れか１つ、この場合、最上流の演算ブロック６００には、統計処理部６４が備えられている。なお、説明の便宜上、図の下側を下流側、図の上側を上流側と定義する。
【００３６】
加算処理部６６は、自身と同じ演算ブロック６００を構成する積算処理部６３から入力されるデータに、自身よりも下流側の演算ブロック６００から入力されるデータを加算して、記憶部６７に出力する。記憶部６７は、加算処理部６６から入力されるデータを記憶するとともに、そのデータを自身よりも上流側の演算ブロック６００の加算処理部６６に出力する。最も上流側の演算ブロック６００の記憶部６７は、記憶したデータを統計処理部６４に出力する。統計処理部６４は、入力されたデータについて平均値と標準偏差を算出し、各演算ブロック６００の正規化処理部６５にそれぞれ出力する。即ち、統計処理部６４は、複数の積算処理部６３が算出するデータの平均値および標準偏差を算出して、複数の正規化処理部６５にそれぞれ提供する。
【００３７】
演算処理装置６０によれば、複数の演算ブロック６００を備える構成において、各演算ブロック６００にそれぞれ統計処理部６４を設けるのではなく、１つの演算ブロック６００のみに統計処理部６４を設け、当該統計処理部６４が出力する統計値を複数の正規化処理部６５により共用するようにした。この構成によれば、複数の演算ブロック６００を備える場合であっても、回路規模が比較的大きくなる統計処理部６４を１つだけに抑えることができ、装置全体としてコンパクト化や低コスト化を図ることができる。
【００３８】
（その他の実施形態）
なお、本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。例えば、上述した複数の実施形態を適宜組み合わせて実施してもよい。
【符号の説明】
【００３９】
図面中、１０，２０，３０，４０，５０，６０は演算処理装置、１１，２１，３１，４１，５１，６１は畳み込み演算処理部、１２，２２，３２，４２，５２，６２はプーリング処理部、１３，２３，３３，４３，５３，６３は積算処理部、１４，２４，３４，４４，５４，６４は統計処理部、１５，２５，３５，４５，５５，６５は正規化処理部、２５ａは減算処理部、２５ｂは除算処理部、５６は重み調整処理部、５００は演算ブロック、６００は演算ブロックを示す。
【図１】
0006561877.tif 000002
【図２】
0006561877.tif 000003
【図３】
0006561877.tif 000004
【図４】
0006561877.tif 000005
【図５】
0006561877.tif 000006
【図６】
0006561877.tif 000007
【図７】
0006561877.tif 000008
【図８】
0006561877.tif 000009
【図９】
0006561877.tif 000010
【図１０】
0006561877.tif 000011
【図１１】
0006561877.tif 000012
【図１２】
0006561877.tif 000013
【図１３】
0006561877.tif 000014
【図１４】
0006561877.tif 000015
【図１５】
0006561877.tif 000016
【図１６】
0006561877.tif 000017
【図１７】
0006561877.tif 000018