(57)【特許請求の範囲】
【請求項１】
ニューロン素子間で共通の局所受容野構造を有する階層型神経回路網において、
受容野を定めるシナプス結合に入力されるデータとして前段の階層レベルに属するニューロン素子からの出力信号を、各分割信号が他の分割信号と時系列上で重複部分を有するように分割する分割多重化手段を有することを特徴とするデータ構造を多重化した並列処理装置。
【請求項２】
前記階層型神経回路網は、特徴検出層と特徴統合層が交互に配列する階層構造を有し、前記特徴検出層及び前記特徴統合層は、それぞれ少なくとも一つの特徴に関する検出及び統合を行うことを特徴とする請求項１に記載のデータ構造を多重化した並列処理装置。
【請求項３】
前記シナプス結合に入力されるデータの構造は、前段の階層レベルからの予め設定された特徴に関する統合結果を表す信号を前記階層型神経回路網の入力データの互いに重複する予め設定された領域内の各位置に対応する信号として１つの時系列データとして配列したことを特徴とする請求項１に記載のデータ構造を多重化した並列処理装置。
【請求項４】
前記シナプス結合に入力されるデータの構造は、前段の階層レベルからの予め設定された特徴に関する統合結果を表す信号を前記階層型神経回路網への入力データ全体の予め設定された複数サンプリング点位置に対応して抽出し、当該抽出された信号から前記入力データの互いに部分的に重複する区間に対応するデータのセットを１つの時系列データとして配列してなることを特徴とする請求項３に記載のデータ構造を多重化した並列処理装置。
【請求項５】
前記シナプス結合に入力されるデータの構造は、前段の階層レベルからの予め設定された特徴に関する統合結果を表す信号を前記階層型神経回路網への入力データ全体の予め設定された複数サンプリング点位置に対応して抽出し、当該抽出された信号から前記入力データの互いに重複しない複数の部分的区間に対応する当該信号のセットを並列して配列し、かつ前記各部分的区間の信号は、隣接する部分的区間のデータの一部が１つの時系列データとして転送されることを特徴とする請求項３に記載のデータ構造を多重化した並列処理装置。
【請求項６】
前記階層型神経回路網は、複数のシナプス結合回路と複数のニューロン回路が予め設定された方法で配列する構造を有し、前記シナプス結合回路に入力されるデータの構造は、前段の階層レベルからの予め設定された特徴に関する統合結果を表す信号が時間軸方向に並んだ時系列データであり、各データは前記入力データの予め設定されたサンプリング位置と対応付けられ、かつ異なる前記サンプリング位置に対応するように時間軸方向に配列し、隣接する前記シナプス結合回路に入力される時系列データは互いに重複するデータを含むことを特徴とする請求項４に記載のデータ構造を多重化した並列処理装置。
【請求項７】
前記時系列データは、前段の階層レベルからの予め設定された特徴に関する統合結果を表す信号を前記入力データの異なるサンプリング位置に対応付けて時系列に抽出されるデータ全体から予め設定された部分データを１つの時系列データとして配列してなることを特徴とする請求項６に記載のデータ構造を多重化した並列処理装置。
【請求項８】
ニューロン素子間で共通の局所受容野構造を有する階層型神経回路網において、
受容野を定めるシナプス結合と、
前記シナプス結合に入力されるデータとして前段の階層レベルに属するニューロン素子からの出力信号を、各分割信号が他の分割信号と重複部分を有するように分割して変換する分割多重化信号生成手段と
を具備することを特徴とするデータ構造を多重化した並列処理装置。
【請求項９】
前記分割多重化信号生成手段は、
複数の前記出力信号をサンプリングし、複数の重複する区分の前記出力信号を抽出する区分化サンプリング手段と、
複数の区分化データを統合して一つの時系列データを生成する時系列データ生成回路と
を有することを特徴とする請求項８に記載のデータ構造を多重化した並列処理装置。
【請求項１０】
前記分割多重化信号生成手段は、
複数の前記出力信号をサンプリングし、複数の重複しない区分の前記出力信号を抽出する区分化サンプリング手段と、
区分化データをそれぞれ格納する複数のメモリと、
データ転送の前後で重複する区分化データが存在するように前記区分化データの一部についてのデータ転送制御を前記複数のメモリ間で行うメモリ制御手段と、
前記データ転送が行われる毎に前記メモリ内の区分化データを並列出力する並列出力手段と
を有することを特徴とする請求項８に記載のデータ構造を多重化した並列処理装置。
【請求項１１】
前記区分化データは、予め設定された前記ニューロン素子の受容野に属する他のニューロン素子出力を時系列化したデータであることを特徴とする請求項９または請求項１０に記載のデータ構造を多重化した並列処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターン認識等の情報処理に適用可能な並列処理技術に関するものである。
【背景技術】
【０００２】
従来、大規模な多層神経回路網を小規模な回路を用いて実現する方法として、時分割処理により行う方法が知られる（例えば、特許文献１，２を参照）。多層神経回路網をアナログ・デジタル混載または融合型回路として実装する場合、２次元平面にニューロン、シナプス等の構成要素を全て並列配置し、並列処理を実現することは困難な場合が多い。そのため従来技術では、少数のニューロンまたはシナプス回路要素を用いて時分割処理が行われる。また、大規模なネットワーク構造を小規模なネットワークモジュールに分割して行う方法も従来から開示されている（例えば、特許文献３，４を参照）。
【特許文献１】特許２６７９７３０号公報
【特許文献２】特許３１１０４３４号公報
【特許文献３】特許３０３５１０６号公報
【特許文献４】特許３２１０３１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の技術のうち、時分割処理により行う方式では大規模な問題を解くためには、同一のハードウエアを時分割で使用するため、問題の複雑さや規模の大きさに応じて処理時間が長くなり、神経回路網が本来持つ並列処理の利点を活かしきれていないという問題があった。
【０００４】
また、各ニューロンの受容野構造（シナプス結合荷重分布）のメモリからのローディング頻度、或いは各階層の中間処理結果を保持するメモリからの中間結果の読み出し頻度が高いほどメモリアクセス時間に起因して処理時間が遅くなるという問題、更に、スイッチング素子を用いてニューロン出力及び荷重データを切り替える場合には、スイッチングに要する消費電力が累積して全体としての消費電力が非常に大きくなるという問題があった。
【０００５】
また、小規模なネットワークモジュールに分割する方法では、全体としての回路規模は小さくならないというという欠点があった。
【０００６】
本発明は以上の問題に鑑みてなされたものであり、階層型神経回路網の各層を複数の演算素子でもって時分割で行う場合に、演算効率を大幅に向上させることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために、例えば本発明の並列処理装置は以下の構成を備える。
【０００８】
すなわち、ニューロン素子間で共通の局所受容野構造を有する階層型神経回路網において、
受容野を定めるシナプス結合に入力されるデータとして前段の階層レベルに属するニューロン素子からの出力信号を、各分割信号が他の分割信号と時系列上で重複部分を有するように分割する分割多重化手段を有することを特徴とする。
【発明の効果】
【０００９】
本発明の構成により、階層型神経回路網の各層を複数の演算素子でもって時分割で行う場合に、演算効率を大幅に向上させることができる。
【発明を実施するための最良の形態】
【００１０】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１１】
［第１の実施形態］
図１は、本実施形態に係る並列処理装置の基本構成を示すブロック図である。本実施形態に係る並列処理装置は同図に示すように、データ入力制御回路１、ニューロンアレイ回路ブロック２、シナプスアレイ回路ブロック３、処理結果保持メモリ４、分割多重化信号生成回路ブロック５、受容野構造制御回路ブロック６、および全体制御回路ブロック７を主たる構成要素とする。
【００１２】
ここで、多層神経回路網をアナログ・デジタル混載または融合型回路として実装する場合、２次元平面にニューロン、シナプス等の構成要素を全て並列配置し、並列処理を実現することは困難な場合が多い。そのため、本実施形態においても少数のニューロンまたはシナプス回路要素を用いて時分割処理を行う。すなわち、各層における処理を時分割で行う。
【００１３】
また、従来技術で行う時分割処理では、各ニューロンの受容野構造（シナプス結合荷重分布）のメモリからのローディング頻度、或いは各階層の中間処理結果を保持するメモリからの中間結果の読み出し頻度が高いほど処理時間が遅くなり、消費電力が増大するが、以下に説明する多重化データ表現を用いることにより、メモリアクセスに起因する処理速度の低下とスイッチングエネルギによる消費電力の増大などを回避することが可能となる。
【００１４】
図１において、データ入力制御回路１は、画像データなどをセンサ或いはデータベース等から入力する為の制御回路で、その内部には一次記憶用メモリを有する。
【００１５】
ニューロンアレイ回路ブロック２は、階層処理構造中の所定階層に属するニューロン回路が複数個配列する。即ち、本実施形態では、ある時間範囲にニューロンアレイ回路ブロック２を用いて実現するのは、多層神経回路網の一階層（または一階層中の一特徴クラスの検出に関与するニューロン）であり、他の階層に属するニューロン（または他の特徴クラスの検出に関与するニューロン）については異なる時間帯に実現する。
【００１６】
シナプスアレイ回路ブロック３は、ニューロン間のシナプス結合回路が２次元アレイ状に配列する。ここでは、異なる階層間でシナプス結合がある場合について説明する。シナプスアレイ回路ブロック３は、ある一つの階層レベルへのシナプス結合を実現する。
【００１７】
シナプスアレイ回路ブロック３は、受容野構造制御回路ブロック６により、ニューロンアレイ回路ブロック２内のニューロン回路との結合構造が制御される。受容野構造制御回路ブロック６は、自身が有する内部メモリに特徴クラスに応じた受容野構造データを格納している。
【００１８】
処理結果保持メモリ４は、ニューロンアレイ回路ブロック２からの出力を一時的に保持するメモリである。分割多重化信号生成回路ブロック５は、シナプスアレイ回路ブロック３にニューロンアレイからの出力信号を時間的に分割多重化して供給する。
【００１９】
全体制御回路７は各回路ブロックの動作を制御して多層神経回路網において下位層から上位層への信号入出力を制御する。
【００２０】
なお本実施形態に係る並列処理装置が実現する多層神経回路網は、フィードフォワード結合型に限らず、回帰結合またはフィードバック結合を含む構成であってもよい。
【００２１】
図５は、本実施形態に係る並列処理装置が実現する多層神経回路網のモデルの構成を示す図である。
【００２２】
同図に示した神経回路網は、入力データ中の局所領域において、対象または幾何学的特徴などの認識（検出）に関与する情報を階層的に扱うものであり、その基本構造はいわゆるConvolutionalネットワーク構造（LeCun，Y. and Bengio Y.， １９９５， “Convolutional Networks for Images Speech，and Time Series” in Handbook of Brain Theory and Neural Networks （M. Arbib，Ed.）， MIT Press， pp.２５５-２５８）である。最終層（最上位層）からの出力は認識結果としての認識された対象のカテゴリとその入力データ上の位置情報である。
【００２３】
図５において、データ入力層１０１は、ＣＭＯＳセンサ、或いはＣＣＤ素子等の光電変換素子からの局所領域データを入力する層である。特徴検出層１０２ａ（１，０）は、データ入力層１０１より入力された画像パターンの局所的な低次の特徴（特定方向成分、特定空間周波数成分などの幾何学的特徴のほか色成分特徴を含んでもよい）を全画面の各位置を中心として局所領域（或いは、全画面にわたる所定のサンプリング点の各点を中心とする局所領域）において同一箇所で複数のスケールレベル又は解像度で複数の特徴カテゴリの数だけ検出する。そのために、特徴の種類（例えば、幾何学的特徴として所定方向の線分を抽出する場合にはその幾何学的構造である線分の傾き）に応じた受容野構造を有し、その程度に応じたパルス列を発生するニューロン素子から構成される。
【００２４】
特徴統合層１０３ａ（２，０）は、所定の受容野構造（以下、受容野とは直前の層の出力素子との結合範囲を、受容野構造とはその結合荷重の分布を意味する）を有し、パルス列を発生するニューロン素子からなり、特徴検出層１０２ａ（１，０）からの同一受容野１０５内にある複数のニューロン素子出力の統合（局所平均化、最大出力検出等によるサブサンプリングなどの演算）を行う。また、特徴統合層内のニューロンの各受容野は同一層内のニューロン間で共通の構造を有している。これを荷重の共有（weight sharing）という。
【００２５】
特徴検出層１０２ａの後続の特徴検出層（（１，１）、（１，２）、…、（１，Ｍ））の各々、及び特徴統合層１０３ａの後続の特徴統合層（（２，１）、（２，２）、…、（２，Ｍ））の各々は、それぞれ所定の受容野構造を持ち、上述した各層と同様に機能する。すなわち、特徴検出層（（１，１）、…）は、特徴検出モジュール１０４ａ（１０４ｂについても同じ）において複数の異なる特徴の検出を行い、特徴統合層（（２，１）、…）は、特徴統合モジュール１０６ａ（１０６ｂについても同じ）において前段の特徴検出層からの複数の特徴に関する検出結果の統合を行う。
【００２６】
但し、特徴検出層は同一チャネルに属する前段の特徴統合層の細胞素子出力を受けるように結合（配線）されている。また、特徴統合層１０３で行う処理であるサブサンプリングは、同一特徴カテゴリの特徴検出細胞集団からの局所的な領域（当該特徴統合層ニューロンの局所受容野）からの出力についての平均化、或いは最大値検出などを行うものである。
【００２７】
図８Ａ、８Ｂは、ある特徴検出（或いは特徴統合）細胞（特徴検出層内のニューロン）に対する受容野を形成する特徴統合（或いは特徴検出）細胞のニューロン群（ｎｉ）からの出力（当該細胞から見ると入力）に関与する結合手段の構成を示す図である。信号伝達部２０３は局所的な共通バスラインを構成し、この信号伝達ライン上に複数のニューロンからのパルス信号が時系列に並んで伝達される。
【００２８】
いわゆる、興奮性結合ではシナプス結合回路においてパルス信号の増幅を行い、抑制性結合は逆に減衰を与える。パルス信号により情報の伝達を行う場合、増幅及び減衰はパルス信号の振幅変調、パルス幅変調、位相変調、周波数変調のいずれによっても実現することができる。本実施形態においては、シナプス結合回路は、主にパルスの位相変調素子として用い、信号の増幅は、特徴に固有な量としてのパルス到着時間の実質的な進み、減衰は実質的な遅れとして変換される。パルス位相変調を行う回路としては、特開平１０−３２７０５４号公報、特開平５−３７３１７号公報、特開平６−６１８０８号公報などに開示される構成が知られる。
【００２９】
シナプス結合回路がパルス位相変調を行う場合には、出力先のニューロンにおいて、個々の特徴に固有な時間軸上の到着位置（位相）を与えるが、その位相に加えて入力信号のレベル（位相で与えられる）に所定のシナプス荷重に相当する係数を掛けた値に相当する位相シフトを付与することもできる。この場合、定性的には興奮性結合はある基準位相に対する到着パルスの位相の進みを、抑制性結合では同様に遅れを与えるものである。
【００３０】
図８Ａにおいて、各ニューロン素子ｎj（１≦ｊ≦ｋ）は、パルス信号（スパイクトレイン）を出力し、いわゆるintegrate-and-fire型の入出力処理を行う。先ずニューロン回路について説明する。各ニューロン素子は、いわゆるintegrate-and-fireニューロンを基本として拡張モデル化したもので、入力信号（アクションポテンシャルに相当するパルス列）を時空間的に線形加算した結果が閾値を越したら発火し、パルス状信号を出力する点では、いわゆるintegrate-and-fireニューロンと同じである。
【００３１】
図８Ｂは、ニューロン素子としてのパルス発生回路（ＣＭＯＳ回路）の動作原理を表す基本構成の一例を示し、所定の時間窓内での入力パルス信号の重み付き積分を実行可能としている。
【００３２】
ここでは、入力信号として興奮性と抑制性の入力を受けるものとして構成されている。なお、各ニューロン素子のパルス発火タイミングの動作制御機構等に関しては、本願の主眼とするところではないので説明を省略する。
【００３３】
次に、階層構造を有する神経回路網において分割多重化した信号を生成する方法について説明する。
【００３４】
ある上位階層ニューロンの受容野内の下位階層からの出力は、下位階層における全てのニューロン出力の部分集合をなしている。いわゆるConvolutional Network構造においては、同一階層レベルの同一特徴クラスに属するニューロン間で受容野構造が共通の構造を有するが、上位階層各ニューロンに入力される下位階層ニューロン出力の部分集合は、部分的な重複を有するデータセットである。そこで、一つの受容野構造に相当するシナプスアレイ回路には、下位階層ニューロン出力の異なるデータセットを分割多重化して入力する。
【００３５】
与えられた受容野構造中の所定の位置にあるシナプス回路に入力されるデータは特徴検出層のニューロンの位置（入力画像データ上の位置と対応がつく）に応じて決まり、かつそのデータは既に読み込み済みである。このことから、特徴検出層の各ニューロンへの信号入力動作を所定の順序で行う場合に、特徴検出層ニューロンの受容野内の各シナプス回路に入力されるべき特徴統合層ニューロン出力は、後段の各特徴検出層ニューロンの位置に応じて決まるので、各シナプス回路へ入力される信号は特徴検出層ニューロンの走査順序により決まる時系列データとして予め生成しておくことができる。即ち、シナプス回路ごとに与える特徴統合層出力データを時系列データとして予め格納してある全てのニューロンからの出力データの所定のサンプリングを行うことにより部分再生を行うことができる。
【００３６】
本実施形態では、特徴検出層の前段にある特徴統合層の所定の特徴クラスに属する全てのニューロン（全部でｎ・ｍ個）からの出力を時系列的に順次（ラスタ形式などにより）読み出し（図３Ａに図示のｎ・ｍ個の時系列データ）、所定の処理結果保持メモリ４（SDRAM、MRAM、FRAMなど）に読み出しデータとして格納する。
【００３７】
その後、分割多重化信号生成回路ブロック５によって、特徴検出層の各ニューロンの受容野に属する特徴統合層ニューロン出力（処理結果保持メモリ４から読み出したデータ）をそれぞれ図３Ａに示す如く重複部分を有しつつ分割し、分割したそれぞれのデータを図３Ｂに示す如く時間的につなぎ合わせて一つの時系列データとし（図３Ｂ）、または分割したそれぞれのデータを図３Ｃに示す如く並列出力して、シナプスアレイ回路の各シナプス（シナプス１、シナプス２、…）に分岐入力する。この方法を利用することにより任意の波形の部分的な再生を高精度でかつ高速に行うことができる。なお、処理結果保持メモリ４からの読み出しデータに対して、所定の信号変換を行っても良い。例えば、ニューロン回路およびシナプス回路でパルス信号を扱う場合には、読み出しデータの値に応じたパルス位相またはパルス幅の信号データに変換しても良い。
【００３８】
なお、図４Ａに示すように、区間が互いに重複しない部分的切り出しデータを複数のメモリに格納して並列出力してもよい。この場合、分割多重化信号生成回路ブロック５は例えば図４Ｂに示す如く、区分化サンプリング部５９、メモリデータ転送制御部５６及び複数のメモリ５７（M１, M２, …, Mk）、パルス信号生成器５５（PG１, PG２, …, PGk）、D／A変換器５２（DA１, DA２, …, DAk）、および並列出力ポート５４を有する必要がある。
【００３９】
隣接するメモリ間でデータ転送が可能とし、ある特徴クラスに属する特徴検出層ニューロンの位置が順次切り替わるごとに、メモリ内の各データアドレスをシフトして重複しないデータを隣接するメモリから転送することにより、各メモリから出力すべき部分的切り出しデータの更新を行い、各部分データについてD／A変換、パルス信号生成を行って並列出力する。このように、各メモリ内に保持されるデータの内容は、データ転送の前後で重複した区間データになっており、全体として多重化したデータ転送を行っている。
【００４０】
図３Ｂに示すデータの縦軸の出力レベルは、パルス位相（値が０から２πの範囲とする）によるニューロン出力の表現形式では、位相の値が小さいほど高い出力レベルを表す。また、図３Ｂのデータは連続的な曲線表示をしているが、実際には、受容野内各ニューロン出力をサンプリングして得られる離散的なデータである。パルス位相表現では、図６に示すように一定の時間幅で分割された各区間がそれぞれ下位層の異なるニューロンに対応し、その区間内の位置（アナログ量）でパルス位相表現を行う。
【００４１】
時系列データの部分的切り出しは、図２Ａに示す分割多重化信号生成回路ブロック５内部の多重化サンプリング回路５１により行われる。多重化サンプリング回路５１は、一連のデータセットから所定の区間データを抽出する機能である区分化サンプリングを行う。分割多重化信号生成回路ブロック５は図２に示す如く、関数生成回路５０、多重化サンプリング回路５１、D／A変換器５２及びデマルチプレクサ５３、パルス信号生成器５５を主たる構成要素とする。
【００４２】
ここでは、処理結果保持メモリ４から読み出したデータを入力し、多重化サンプリング回路５１で図３に示すように各シナプス回路へ入力する複数の時系列データセットのサンプリングを行い、関数生成器５０でデジタル波形を生成する。また、D／A変換器５２とパルス信号生成器５５で前段の階層レベルのニューロン出力レベルに応じた位相を有するパルス位相変調信号を生成する。このパルス信号の位相基準は所定のタイミング信号（クロック信号）により与えられる。
【００４３】
部分的切り出しデータは、上位層ニューロンの受容野に属する下位層ニューロンからの出力のうち、２次元配列する上位層ニューロンアレイ回路をラスタ走査したときに、ニューロン間で共通の構造をもつ受容野構造内の特定位置のシナプス回路に入力されるべきデータを時系列化したものである。シナプスアレイ回路上の各シナプス番号（シナプス１、シナプス２、…）はラスタ走査順に配列している。
【００４４】
多重化サンプリング回路５１の構成が同時並列的に上記部分的切り出しデータを複数（例えば、シナプスアレイ回路の１列分）のポートから出力するようになっている場合には、シナプスアレイ回路ブロック３と分割多重化信号生成回路５の各入出力ポート（図２Ｂでは分割多重生成回路５の並列出力ポート５４に相当）を並列接続可能な様にする。
【００４５】
この時系列データセットは対応するシナプス回路ブロックが近接していれば（即ち、シナプスにより変調された信号を受けるニューロンが互いに近接した位置にあれば）、図３Ａに示すデータの互いに重複する区間でサンプリングされたデータとなる。
【００４６】
この多重化サンプリング回路５１は、特徴統合層のある特徴クラスに関与する全てのニューロンからの出力データ（時系列的にサンプリングされているものとする）から部分的に重複する区間のデータを区分データとして切り出し、各区分データを時間的につなぎ合わせ一つの時系列データを生成する（図３Ｂ参照）か、或いは各区分データを同時並列的に出力する（図３Ｃ参照）。
【００４７】
本実施形態では、神経回路網の複数ニューロン出力の表現形式として、このように元の完全なデータのうち部分的な区間データを単位とする複数データセットを一まとめにして扱うデータ表現形式を分割多重化表現といい、特に前者のように時間的にずらして行う表現形式を時分割多重化表現という。
【００４８】
多重化サンプリング回路５１及び関数生成回路５０から生成される時系列データはD／A変換器５２でD／A変換され、デマルチプレクサ５３により時間各区分データを所定のシナプス回路に分岐出力する。この分岐はデマルチプレクサ回路５３が内蔵するスイッチング回路において、所定のクロック信号と同期する時間区分の更新タイミングデータを入力するたびにスイッチが切り替わることにより行われる。
【００４９】
予めシナプス結合の位置に応じてその信号の時間軸上の位置が所定の範囲内に収まるように設定されている場合には、そのシナプスの位置を時間軸上のパルス信号位置で識別し、クロック信号と同期して動作するデマルチプレクサ５３を用いて信号を分岐させ、所定のシナプス回路に特徴統合層からの出力信号を適切に入力させる。
【００５０】
なお、分割多重化信号生成回路ブロック５で行う処理は、デジタル回路でルックアップテーブル（LUT）法によりデジタル波形を作り出し（図２ＡのLUT生成回路５０により）、その必要範囲の信号をD／A変換器によりアナログ波形にする方法を用いても良い。
【００５１】
以上説明したような分割多重化を行うデータ表現形式によれば、メモリへのデータ書き込みまたはメモリからの読み出しに関する入出力動作を繰り返す必要がなく、一つの特徴クラスに付き一回のメモリアクセスで済むので、メモリアクセス時間に起因する処理時間の低下を防ぎ、高速化が可能である。
【００５２】
本実施形態では、同じクラスの特徴を検出する特徴検出（統合）層ニューロン間で受容野が共通の構造を有することを利用し、単一のニューロンのある特徴クラスに関する一受容野分のシナプスアレイ回路を用いて上述した分割多重化信号をシナプス回路に入力し、変調を受けたパルス列信号の時間窓積分を各ニューロン回路で行う。
【００５３】
本実施形態では、シナプスアレイ回路ブロック３は、ニューロンアレイ回路ブロック２の出力先ニューロンを切り替える出力分岐手段としてのデマルチプレクサを内蔵し、次の階層レベルまたは次の特徴クラスに属するニューロンを実現するニューロンアレイブロック２へのシナプスアレイ回路ブロック３からの信号伝播は、出力先（即ち、出力先のニューロン）が一定の順序で切り替わるデマルチプレクサを介して行われる。即ち、各シナプス回路から出力される変調後のパルス列データは、それぞれのパルスが異なるニューロン回路に出力される。
【００５４】
同一階層レベルで複数の異なる特徴クラスの検出に関与するニューロン回路のアレイを同一基盤上に並列配置することができない場合には、検出する特徴のクラスごとにニューロンアレイ回路ブロック内部の構成を各特徴クラスの検出に適する構成に切り替えて（或いは内部状態をリセットして）シーケンシャルに処理を行えばよい。シナプス回路構成を変える受容野構造の制御およびニューロン回路の特性制御を実現するためには、FPGA（Field Programmable Gate Array）やFPAA（Field Programmable Analog Array）などの回路構成を用いてもよい。
【００５５】
また、上述した並列処理装置をパターン認識手段としてカメラその他の画像入力手段、或いはプリンタ及びディスプレイその他の画像出力手段に搭載することができる。その結果、低消費電力で小規模な回路構成により、特定被写体の認識または検出を行って所定の動作、例えば画像入力手段については、特定被写体を中心とするフォーカシング、露出補正、ズーミング、或いは色補正などの処理を行うことができる。画像出力手段についても特定被写体に関する最適色補正などの処理を自動的に行うことができる。
【００５６】
次に、本実施形態に係る並列処理装置を適用したパターン検出（認識）装置を画像入力装置の一つである撮像装置に搭載させることにより、特定被写体へのフォーカシングや特定被写体の色補正、露出制御を行う場合について、図１１を参照して説明する。図１１は、本実施形態に係るパターン検出（認識）装置を撮像装置に用いた例の構成を示す図である。
【００５７】
ここで撮像装置１１０１は、撮影レンズおよびズーム撮影用駆動制御機構を含む結像光学系１１０２、CCD又はＣＭＯＳイメージセンサー１１０３、撮像パラメータの計測部１１０４、映像信号処理回路１１０５、記憶部１１０６、撮像動作の制御、撮像条件の制御などの制御用信号を発生する制御信号発生部１１０７、EVFなどファインダーを兼ねた表示ディスプレイ１１０８、ストロボ発光部１１０９、記録媒体１１１０などを具備し、更に上述した時分割多重化処理を行う並列処理装置（パターン認識装置として機能させる）を認識用並列処理装置１１１１として備える。
【００５８】
この撮像装置１１０１は、例えば撮影された映像中から予め登録された人物の検出（存在位置、サイズの検出を伴う）を認識用並列処理装置１１１１により行う。そして、その人物の位置、サイズ情報が認識用並列処理装置１１１１から制御信号発生部１１０７に入力されると、同制御信号発生部１１０７は、撮像パラメータ計測部１１０４からの出力に基づき、その人物に対するピント制御、露出条件制御、ホワイトバランス制御などを最適に行う制御信号を発生する。
【００５９】
上述した並列処理装置をパターン検出（認識）に適用し、このように撮像装置に用いた結果、小型・低消費電力な回路で、高速に人物検出とそれに基づく撮影の最適制御を行うことができるようになる。
【００６０】
以上説明したように本実施形態によれば、並列に複数の演算素子が結合してなる並列処理装置において複数の演算素子の中間的な出力を一括して多重化するデータ表現を用いることにより、演算効率を大幅に向上させることができる。
【００６１】
特に、受容野構造が一部共通化される階層型神経回路網（例えば、Convolutional ネットワーク構造）において、その共通化された受容野をもつ各ニューロンに入力される複数のデータセットを時分割で処理する場合、それぞれのデータセットを一括して関数、曲線、またはルックアップテーブル形式で時分割多重化表現することにより、各データセットの入出力に伴うメモリアクセスを最小限の回数で済ませることが出来、処理速度を向上させることができる。
【００６２】
［第２の実施形態］
本実施形態では多層神経回路網を実装する回路構成において、データ構造の多重化表現を異なるニューロンからの信号を周波数ドメインでの多重化により行う。
【００６３】
また、下位層の複数のニューロン出力（異なるベースバンド周波数の信号の混合した多重化信号）を検出する上位層ニューロンにおいて周波数ドメインでのフィルタ処理により各受容野からの信号を分離する。以下、データ構造の周波数軸上での多重化処理について説明する。
【００６４】
本実施形態において図５に示すような同じ特徴クラスの検出に関与するニューロンの局所的受容野構造が共通化する階層型神経回路網においては、特徴統合層出力を異なる特徴検出層ニューロン（ただし、同じ特徴クラスに属する）に入力される受容野単位で異なるベースバンド周波数を割り当てても良い。即ち、各受容野に該当する時系列化された出力データ（異なるニューロンへ入力される）の「波形」信号を変調して異なるベースバンド周波数を有する搬送波信号にのせる。図１２は、周波数多重化した信号の各成分（異なるニューロンへ出力される）のスペクトルを概念的に示す図である。
【００６５】
周波数多重化の例として、光信号を層間で伝播する信号として用い、かつ、光波を信号伝播キャリアとし、各ニューロンからの出力のデータ構造が波長多重化されるようにした場合について次に説明する。図７に波長多重化を行う場合の要部構成図を示す。波長多重化技術については、雑誌オプトロニクス（１９９６年５月号）の特集記事（１１１〜１４０頁）、光技術コンタクト（２００１年１０月号）の特集記事（３〜３１頁）などに記載されている。
【００６６】
この場合、多層神経回路網の各層は、所定の波長範囲で透明なサファイア基盤１３０上に構成されるCMOS回路１５０（IEEE Circuits and Systems Magazine, vol.１, No.３, ２００１, pp.２２-３０.の記事：”Silicon on Sapphire CMOS for Optoelectronic Microsystems,”を参照）、波長多重化用光源１２０（波長の異なる複数の固定波長光源、或いは波長可変光源となる半導体レーザアレイなど）、波長選択性を有する光フィルタ１００、および光電変換部（光検出器）１１０などにより構成される。CMOS回路１５０はニューロンアレイ回路および（または）シナプスアレイ回路を主たる構成要素とする。
【００６７】
層間結合部１４０には、光ファイバ、回折格子型アレイ光導波路に代表される波長選択性を有する光媒体網、或いは、光音響素子などの光偏向機能を有する空間光変調素子などを用いる。CMOS回路１５０がニューロンアレイ回路を含むが、シナプスアレイ回路ブロック２を含まない場合には、層間結合部１４０に波長によって利得の異なる光増幅装置から構成されるシナプスアレイ回路が含まれるものとする。この場合、波長可変または波長固定の光フィルタを通過後の光信号に対して波長によって利得の異なる光増幅装置をシナプス荷重に相当するデバイスとして用いてもよい。
【００６８】
このようにシナプスアレイ回路ブロック２は、周波数軸上で多重化された信号（複数の受容野からの出力セット）からフィルタを用いて分離された各信号（電気信号または光波信号のいずれでもよい）についてシナプス荷重値と他のニューロン素子からの出力信号との所定の積和演算を各信号の属する周波数ドメインで行い、デマルチプレクサその他の分岐出力用の手段を用いて異なる周波数ドメインで求められた積和演算結果（電気信号または光波信号のいずれでもよい）をその周波数ドメインに対応する出力先ニューロンに分岐出力する。なお、パルス信号（電気信号）についてのシナプス荷重値との積和演算については、文献（A．F．Murray et al., “Pulse-Stream VLSI Neural Networks Mixing Analog and Digital Techniques,”，IEEE Trans. On Neural Networks, vol.２, pp.１９３-２０４., １９９１）に記載されている技術を用いることができる。
【００６９】
ニューロン素子はCMOS回路１５０上にアナログ・デジタル混載（融合）回路として構成され、その出力信号はニューロン素子の属する受容野に応じて（結局のところ、出力先ニューロンに応じて）異なる波長の光信号に変換され、波長多重化信号として出力される。そのために、ニューロン素子の出力部に結合して光源（半導体レーザアレイなどにより構成される）１２０が設定されている。
【００７０】
図５の階層型神経回路網の特徴検出層ニューロンがニューロンアレイ回路ブロック２において実現されているとき、これに結合するシナプスアレイ回路ブロック３の各シナプス回路は、特徴検出層のある特徴クラスを検出するニューロンの受容野構造を形成するものであり、特徴統合層の単一または複数の特徴クラスに属するニューロンとの結合構造の一部または全部を形成する。
【００７１】
シナプス回路ブロックが特徴検出層ニューロンの一受容野を構成する結合構造の全部を形成する場合には、特徴検出層のある特徴クラスに属する各ニューロンに入力されるべき多重化された信号は、互いに重複する受容野に属し、異なる特徴検出層ニューロンに入力されるべき同一の特徴統合層ニューロン出力である。
【００７２】
［第３の実施形態］
本実施形態では、階層型神経回路網のニューロンの受容野が部分的に共通の構造を有する場合に、共通する受容野構造を有する複数のニューロンに入力される複数のデジタルデータセットの構造を一括してビットの深さ方向に多重化したデータ表現形式となるようにしている。
【００７３】
本実施形態の分割多重化信号生成回路ブロックは、図９に示すように、区分化サンプリング部５９、パラメータ近似部６５、ビット深さ方向データ変換部６０、区分データ合成部６１などから構成される。
【００７４】
パラメータ近似部６５は、例えば、各区分データの「波形」を近似するパラメトリックに表される曲線の当てはめを行い、その結果のパラメータデータ（ｋ個あるとする）をセットにして一つの区分データとする。
【００７５】
データの多重化表現は、ビット深さ方向変換部６０と区分データ合成部６１で行われる。受容野構造の特定位置に対応するデータがＱビットで表現されるとき、受容野構造が共通する出力先のニューロンの数がｋとすると、そのデータ表現を図１０の上図のグラフに示すようにｋ分割し、各出力先ニューロンへの各区分データの表現をそれぞれ、［Ｑ／Ｎ］＝ｐビットで行う（ここに［ｘ］はｘを丸めて整数化することを意味する）。
【００７６】
即ち、ビット深さ方向データ変換部６０は、図１０の下図に示すように第一の区分データには、０〜ｐビットが、第二の区分データにはｐ＋１〜２ｐビットが割り当てられるといった要領で、ビット深さ方向に複数の区分データの分割表現を行う。
【００７７】
各区分データはそれぞれが、ｓ個のパラメータデータを表すように、さらにビット深さ方向にｓ分割表現される。なお、ビット深さ方向の分割は、後で行われるシナプス回路による変換の結果が与えられた区分データのビット幅ｐに収まるように設定しておく必要があることは言うまでもない。また、各区分データは受容野構造が共通する複数ニューロンのそれぞれに入力されるべきデータであり、それぞれの受容野に属する他のニューロンからの出力である。
【００７８】
区分データ合成部６１は、以上のようにビット深さ方向に変換された区分データを一例として図１０の下図に示すような一つの合成データを生成する。なお、図９には示していないが、区分データ合成部６１は、合成されたデータに対して所定のD／A変換その他の変換を施してアナログ信号を得てもよい。
【００７９】
シナプスアレイ回路ブロック３は、ビット深さ方向に多重化された信号の各分割データについて、シナプス荷重値に対応する所定の演算（シナプス荷重値と分割データとの積算など）を行う。ビット深さが同じ区分データについての積和演算結果を得ると、ビット深さ方向に多重化してある各演算結果をシフトレジスタなどにより分割して抽出し、デマルチプレクサなどの分岐出力部（図１に図示せず）により各ビット深さレベルに対応したニューロン（ニューロンアレイ回路ブロック２内にある）に分岐出力する。
【００８０】
なお、上述した曲線当てはめを行わない場合には、パラメータ近似部６５は必要ではないが、有限個（ｋ個とする）のデータセットで表され、かつそのデータセットの全体を多重化表現することには変わりはないものとする。
【００８１】
以上の説明により、中間的なデータセットの全体の周波数多重化表現またはビット深さ方向の多重化表現を用いることにより、処理速度をさらに向上させることができる。
【００８２】
なお、上記実施形態では、階層構造でもって下層から上層に向けて情報処理を行う処理系としてニューラルネットワークを用いたが、これに限定するものではない。
【図面の簡単な説明】
【００８３】
【図１】本発明の第１の実施形態に係る並列処理装置の基本構成を示すブロック図である。
【図２Ａ】分割多重化信号生成回路ブロック５の構成を示す図である。
【図２Ｂ】分割多重化信号生成回路ブロック５の構成を示す図である。
【図３Ａ】特徴検出層の前段にある特徴統合層の所定の特徴クラスに属する全てのニューロンからの出力を処理する内容を説明するための図である。
【図３Ｂ】特徴検出層の前段にある特徴統合層の所定の特徴クラスに属する全てのニューロンからの出力を処理する内容を説明するための図である。
【図３Ｃ】特徴検出層の前段にある特徴統合層の所定の特徴クラスに属する全てのニューロンからの出力を処理する内容を説明するための図である。
【図４Ａ】区間が互いに重複しない部分的切り出しデータを複数のメモリに格納して並列出力する例を説明する図である。
【図４Ｂ】図４Ａに示す如く部分切り出しデータを処理する場合の分割多重化信号生成回路ブロック５の構成を示す図である。
【図５】本実施形態に係る並列処理装置が実現する多層神経回路網のモデルの構成を示す図である。
【図６】各ニューロンへの信号のパルス位相表現を説明する図である。
【図７】波長多重化を行う場合の要部構成図を示す図である。
【図８Ａ】ある特徴検出（或いは特徴統合）細胞（特徴検出層内のニューロン）に対する受容野を形成する特徴統合（或いは特徴検出）細胞のニューロン群（ｎｉ）からの出力（当該細胞から見ると入力）に関与する結合手段の構成を示す図である。
【図８Ｂ】ある特徴検出（或いは特徴統合）細胞（特徴検出層内のニューロン）に対する受容野を形成する特徴統合（或いは特徴検出）細胞のニューロン群（ｎｉ）からの出力（当該細胞から見ると入力）に関与する結合手段の構成を示す図である。
【図９】本発明の第３の実施形態の分割多重化信号生成回路ブロックの構成を示す図である。
【図１０】第３の実施形態におけるデータ表現を説明する図である。
【図１１】本発明の第１の実施形態に係るパターン検出（認識）装置を撮像装置に用いた例の構成を示す図である。
【図１２】周波数多重化した信号の各成分（異なるニューロンへ出力される）のスペクトルを概念的に示す図である。
【図１】
0004845350.tif 000002
【図２Ａ】
0004845350.tif 000003
【図２Ｂ】
0004845350.tif 000004
【図３Ａ】
0004845350.tif 000005
【図３Ｂ】
0004845350.tif 000006
【図３Ｃ】
0004845350.tif 000007
【図４Ａ】
0004845350.tif 000008
【図４Ｂ】
0004845350.tif 000009
【図５】
0004845350.tif 000010
【図６】
0004845350.tif 000011
【図７】
0004845350.tif 000012
【図８Ａ】
0004845350.tif 000013
【図８Ｂ】
0004845350.tif 000014
【図９】
0004845350.tif 000015
【図１０】
0004845350.tif 000016
【図１１】
0004845350.tif 000017
【図１２】
0004845350.tif 000018