(57)【要約】【課題】スパイキング・ニューラル・ネットワークを使用する神経形態学的処理装置を提供。【解決手段】本発明は、シナプス重みを記憶するためのそれぞれのシナプスを介して１セットの出力スパイキング・ニューロンの各々に個々に接続された１セットの入力スパイキング・ニューロンを備えるスパイキング・ニューラル・ネットワークを含むことができ、シナプス重みは装置の学習モードにおけるネットワーク動作に依存して当該シナプスに対して調整され、また、個々のシナプスは、そのシナプス重みに依存するポスト−シナプス信号をそのそれぞれの出力ニューロンに提供するように動作することができる。本発明は、データ点のパターンを画定する入力データを処理し、それぞれのデータ点を表す値を符号化する第１の１セットの入力スパイク信号、およびデータ点を表すそれぞれの前記値に対して相補をなす値を符号化する第２の１セットの入力スパイク信号を生成し、かつ、入力スパイク信号をネットワークのそれぞれの所定の入力ニューロンに供給するように適合されたプリプロセッサ・ユニットをさらに含むことができる。【選択図】図１
2020531954.tif 000002
【特許請求の範囲】
【請求項１】
装置であって、
シナプス重みを記憶するためのそれぞれのシナプスを介して１セットの出力スパイキング・ニューロンの各々に個々に接続された１セットの入力スパイキング・ニューロンを備えるスパイキング・ニューラル・ネットワークであって、前記シナプス重みが前記装置の学習モードにおけるネットワーク動作に依存して当該シナプスに対して調整され、そのそれぞれの入力ニューロンからスパイクを受け取ると、個々のシナプスがそれに応答して、前記重みに依存するポスト−シナプス信号をそのそれぞれの出力ニューロンに提供するように動作することができる、前記スパイキング・ニューラル・ネットワークと、
データ点のパターンを画定する入力データを処理し、それぞれのデータ点を表す値を符号化する第１の１セットの入力スパイク信号、およびデータ点を表すそれぞれの前記値に対して相補をなす値を符号化する第２の１セットの入力スパイク信号を生成し、かつ、前記入力スパイク信号を前記ネットワークのそれぞれの所定の入力ニューロンに供給するように適合されたプリプロセッサ・ユニットと
を備える装置。
【請求項２】
前記装置が前記学習モードおよびアプリケーション・モードで動作することができ、前記学習モードでは、前記プリプロセッサ・ユニットが、データ点の訓練パターンを画定する少なくとも１セットの訓練データを処理し、前記訓練パターンのための前記第１および第２の１セットの入力スパイク信号を生成し、かつ、所定のマッピングに従って前記入力スパイク信号を前記ネットワークのそれぞれの入力ニューロンに供給するように動作することができ、また、前記ネットワークが、それぞれのシナプスの前記シナプス重みが、前記学習モードにおける前記入力スパイク信号に応答して、ネットワーク動作に依存して調整されるように適合され、また、前記アプリケーション・モードでは、前記プリプロセッサ・ユニットが、データ点のアプリケーション・パターンを画定するアプリケーション・データを処理し、前記アプリケーション・パターンのための前記第１および第２の１セットの入力スパイク信号を生成し、かつ、前記所定のマッピングに従って前記入力スパイク信号を前記ネットワークのそれぞれの入力ニューロンに供給するように動作することができ、また、前記ネットワークが、前記シナプスの前記シナプス重みが前記学習モードで調整されたままを維持するように適合される、請求項１に記載の装置。
【請求項３】
前記学習モードでは、前記ネットワークが、個々のシナプスの前記シナプス重みが、そのシナプスの前記入力ニューロンによって生成されるスパイク、およびそのシナプスの前記出力ニューロンによって生成されるスパイクのうちの少なくとも一方のタイミングに依存して調整されるように適合される、請求項２に記載の装置。
【請求項４】
前記学習モードでは、個々のシナプスの前記シナプス重みが、そのシナプスの前記入力ニューロンおよび出力ニューロンによって生成されるスパイクの相対タイミングに依存して調整される、請求項３に記載の装置。
【請求項５】
前記ネットワークの前記出力ニューロンに接続された、前記アプリケーション・モードにおける前記入力スパイク信号に応答して前記出力ニューロンによって生成されるスパイクに依存してデータ点の前記パターンを分類するように適合されたポストプロセッサ・ユニット
を備える、請求項２に記載の装置。
【請求項６】
個々のシナプスが、前記シナプス重みを記憶するための少なくとも１つのメモリスタ・デバイスを備える、請求項２に記載の装置。
【請求項７】
前記メモリスタ・デバイスが位相変化記憶セルを備える、請求項６に記載の装置。
【請求項８】
前記プリプロセッサ・ユニットが、前記第２の１セットの入力スパイク信号がすべての前記データ点に対する相補値を符号化する信号を含むように適合される、請求項１に記載の装置。
【請求項９】
前記プリプロセッサ・ユニットが、前記第２の１セットの入力スパイク信号が所定のサブセットの前記データ点に対する相補値を符号化する信号を含むように適合される、請求項１に記載の装置。
【請求項１０】
前記プリプロセッサ・ユニットが、前記入力データからアクティブ・データ点を識別し、かつ、前記アクティブ・データ点を含むパターンの一部におけるデータ点に対する相補値を符号化する信号を含むべく、前記第２の１セットの入力スパイク信号を生成するようにさらに適合される、請求項１に記載の装置。
【請求項１１】
前記プリプロセッサ・ユニットが、所定の符号化スキームを介してそれぞれのデータ点に対応する前記入力データを符号化することによって前記第１の１セットの入力スパイク信号を生成し、また、それぞれのデータ点に対応する前記入力データに対して相補をなすデータを生成し、かつ、前記所定の符号化スキームを介して前記相補データを符号化することによって前記第２の１セットの入力スパイク信号を生成するように適合される、請求項１に記載の装置。
【請求項１２】
前記プリプロセッサ・ユニットが、所定の符号化スキームを介してそれぞれのデータ点に対応する前記入力データを符号化することによって前記第１の１セットの入力スパイク信号を生成し、また、前記所定の符号化スキームの逆を介してそれぞれのデータ点に対応する前記入力データを符号化することによって前記第２の１セットの入力スパイク信号を生成するように適合される、請求項１に記載の装置。
【請求項１３】
前記プリプロセッサ・ユニットがレート符号化スキームを使用して前記入力スパイク信号を生成するように適合される、請求項１に記載の装置。
【請求項１４】
前記プリプロセッサ・ユニットがスパイク相関符号化スキームを使用して前記入力スパイク信号を生成するように適合される、請求項１に記載の装置。
【請求項１５】
前記ネットワークの前記出力ニューロンに接続された、前記入力スパイク信号に応答して前記出力ニューロンによって生成されるスパイクに依存してデータ点の前記パターンを分類するように適合されたポストプロセッサ・ユニット
を備える、請求項１に記載の装置。
【請求項１６】
個々のシナプスが、前記シナプス重みを記憶するための少なくとも１つのメモリスタ・デバイスを備える、請求項１に記載の装置。
【請求項１７】
前記メモリスタ・デバイスが位相変化記憶セルを備える、請求項１６に記載の装置。
【請求項１８】
データ点の前記パターンが画像を含み、また、前記入力データが画像データを含む、請求項１に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に神経形態学的処理装置に関し、より詳細にはスパイキング・ニューラル・ネットワークを使用しているこのような装置に関する。
【背景技術】
【０００２】
神経形態学的技術は、神経系の生物学的体系によって鼓舞される計算システムに関している。従来の計算アーキテクチャは、近代のコンピュータ・システムに課される、常に拡大する処理要求に合致するためには、ますます不適切になりつつある。ビッグ・データの台頭は、例えば、多様な情報のますます拡大する量の高速処理を要求している。人間の脳と比較すると、古典的なフォン・ノイマン・コンピュータ・アーキテクチャは、電力消費および空間要求事項の点できわめて無能である。人間の脳が占有するのは２リットル未満であり、また、消費電力は２０Ｗ程度である。最新技術のスーパーコンピュータを使用して脳アクティビティを５秒間模擬すると、約５００秒を要し、また、１．４ＭＷの電力が必要である。これらの問題は、人間の脳のきわめて有効な計算模範を理解し、また、先例のない計算能力を有する人工認識システムを創造する重要な研究努力を促している。
【０００３】
ニューロンおよびシナプスは、脳における２つの基本計算ユニットである。ニューロンは、例えば他のニューロンまたは感覚受容器からの入力信号を積分し、かつ、出力信号（「アクション電位」すなわち「スパイク」）を生成することができる。出力スパイクは、シナプスを介して他のニューロンに中継される。シナプスは、入力、プリ−シナプス・ニューロンと、出力、ポスト−シナプス・ニューロンとの間に接続される。シナプスは、その入力ニューロンからスパイクを受け取り、かつ、ポスト−シナプス信号（「ポスト−シナプス電位」）をその出力ニューロンに提供する。ポスト−シナプス信号は、シナプスのコンダクタンス（「シナプス効力」または「重み」として同じく知られている）に依存するグレーデッド(graded)・シナプス電位である。シナプス重みは、ニューロン・アクティビティによって強化または低減することができ、また、シナプスのこの「柔軟性」は、記憶および他の脳機能にとって決定的である。例えばシナプス重みは、ニューロン・スパイクの到着に応答して修正することができ、また、重みの変化は、入力ニューロン・スパイクまたは出力ニューロン・スパイクあるいはその両方のタイミングまたは相対タイミングなどのニューラル・ネットワーク動作の様々な態様に依存し得る。
【０００４】
神経形態学的処理アーキテクチャは、典型的には、計算がスパイキング・ニューロンのネットワーク間の全か無のスパイク・ベース通信を利用するスパイキング・ニューラル・ネットワーク（ＳＮＮ）の実施態様に基づいている。ＳＮＮの基本構成要素は、ニューロンおよびシナプスをエミュレートする回路機構を備え、ニューロンは、記憶されているシナプス重みに依存して、それらの入力ニューロンと出力ニューロン間でスパイクを中継することができるシナプスによって相互接続される。様々なニューロンおよびシナプス実施態様が知られており、ニューロンは、生物学的ニューロンの「積分および発火(integrate-and-fire)」機能性をエミュレートし、また、シナプスは、生物学的シナプスの柔軟性をエミュレートする。例えばナノスケール・シナプスは、ナノデバイス、例えば位相変化記憶（ＰＣＭ）セルなどの抵抗性記憶セルのメモリスタ特性を使用して実現することができる。これらのメモリスタ・シナプスの動力学および柔軟性を使用してこれらのシステムのメモリおよび分散計算機能の両方が実現されるため、このようなメモリスタ・デバイスの稠密クロス−バー・アレイは、重くて大きい、平行の、面積およびエネルギの有効性が高い実施態様を提供する。
【０００５】
ＳＮＮは相関検出タスクを実施することができ、それによりネットワークは入力データ・ストリーム間の相関を検出することができることが分かっている。ＰＣＭデバイスに基づくシナプスを使用した相関検出基本(correlation detection primitives)の最近のデモンストレーションは良好な性能を示している（例えば“Learning Spatio-Temporal Patterns in the Presence of Input Noiseusing Phase-Change Memristors”, Wozniak et al., ISCAS2016, IEEE (2016) pp. 365-368を参照されたい）。相関検出は、パターン認識／分類などのより複雑な認識タスクのための基本を提供する。ＳＮＮ動作の精度の改善は、このようなタスクにとってきわめて重要である。
【０００６】
スパイキング・ニューラル・ネットワーク・アーキテクチャに対して、分類タスクのための教師なし学習手法が研究されている。これらの手法は、漸減する精度改善をもたらし、ニューロンの数が増加する。メモリスタ・デバイスをハードウェア実施態様に使用すると、デバイス可変性、雑音および欠陥などのこれらのデバイスの固有特性のため、精度がさらに低下する。また、ＰＣＭセルなどの抵抗性記憶セルは、非対称コンダクタンス応答を示し、したがってセル抵抗を小さくするプロセスは、セル抵抗を大きくするためのプロセスと異なる。このようなデバイスを使用している、シナプス重みがセル抵抗に依存するシナプス実施態様では、この非対称コンダクタンス応答は精度にさらに影響を及ぼす。このような効果は、手書き数字のＭＮＩＳＴ（修正米国国立標準技術研究所：Modified National Institute of Standards and Technology）分類などの複雑な認識タスクではとりわけ明白である。これらの問題に対処する試行は、シナプス重みを更新するための非対称ＳＴＤＰ（スパイク・タイミング依存柔軟性：Spike Timing Dependent Plasticity）規則を有する単一のＰＣＭセルに基づくシナプス、および２つのＰＣＭセルの差動構成などの２つ以上のセルに基づくシナプスを含む。しかしながら複雑なタスクのためには、単一セル手法に必要な突然のセル・リセットが重大になる。多重セル手法は複雑性が増す。非対称コンダクタンス応答は、これらの手法においては場合によっては依然として問題であり、また、差動構成には、セル飽和を防止するためのシナプスの周期的再平衡化が必要である。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】“Learning Spatio-Temporal Patterns in the Presence of Input Noise using Phase-Change Memristors”, Wozniak et al., ISCAS 2016, IEEE (2016) pp. 365-368
【非特許文献２】“Simulation of a memristor-based spiking neural network immune to device variations”,Querlioz et al., Neural Networks, IJCNN 2011, IEEE (2011), pp. 1775-1781
【非特許文献３】“Experimental demonstration and tolerancing of a large-scale neural network (165,000 synapses), using phase-change memory as the synaptic weight element”,Burr et al., 2014 IEEE International Electron Devices Meeting, IEEE (2014)29.5.1- 29.5.4
【非特許文献４】“All-memristive neuromorphic computing with level-tuned neurons”, Pantazi et al.,Nanotechnology 27(35) (2016) 355205
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、スパイキング・ニューラル・ネットワークを使用する神経形態学的処理装置を提供する。
【課題を解決するための手段】
【０００９】
本発明の少なくとも１つの実施形態によれば、神経形態学的処理装置が提供される。処理装置は、シナプス重みを記憶するためのそれぞれのシナプスを介して１セットの出力スパイキング・ニューロンの各々に個々に接続された１セットの入力スパイキング・ニューロンを備えるスパイキング・ニューラル・ネットワークを含み、シナプス重みは装置の学習モードにおけるネットワーク動作に依存して当該シナプスに対して調整される。個々のシナプスは、そのそれぞれの入力ニューロンからスパイクを受け取ると、それに応答して、そのシナプス重みに依存するポスト−シナプス信号をそのそれぞれの出力ニューロンに提供するように動作することができる。装置は、データ点のパターンを画定する入力データを処理し、それぞれのデータ点を表す値を符号化する第１の１セットの入力スパイク信号、およびデータ点を表すそれぞれの前記値に対して相補をなす値を符号化する第２の１セットの入力スパイク信号を生成し、かつ、入力スパイク信号をネットワークのそれぞれの所定の入力ニューロンに供給するように適合されたプリプロセッサ・ユニットをさらに含む。
【００１０】
本発明を具体化する装置では、プリプロセッサ・ユニットは２セットの入力信号をＳＮＮに提供し、１セットは、処理されるデータ点のパターンを符号化し、もう１セットは相補パターンを符号化する。これは、改善されたＳＮＮ性能をもたらす重要な利点を提供する。シナプスは、元のパターン上および相補パターン上の両方に情報を記憶し、相関検出のための感度を高くする。特定の点における入力の欠落に関する情報も同じくネットワーク内で考慮され、部分的に重畳しているパターン、例えば手書きの数字４および９、または１および７を区別する問題の多い事例における改善された性能を提供する。さらに、相補入力情報は、ＰＣＭシナプスなどの抵抗性メモリ・シナプスの非対称応答のための改善された性能を提供する。これらおよび他の利点については、以下でより詳細に説明される。
【００１１】
シナプス重みは、装置の学習モードにおける特定のタスクのためのネットワークを訓練することによって調整される。アプリケーション特化処理装置は、事後学習、すなわち特定のタスクに対して既に訓練済みのＳＮＮを備えることができる。代替実施形態は、訓練を通して所望のタスクに適合することができる。したがって装置の実施形態は、学習モードとアプリケーション・モードの両方で動作することができる。学習モードでは、プリプロセッサ・ユニットは、データ点の訓練パターンを画定する少なくとも１セットの訓練データを処理し、訓練パターンのための第１および第２の１セットの入力スパイク信号を生成し、かつ、所定のマッピングに従って入力スパイク信号をネットワークのそれぞれの入力ニューロンに供給するように動作することができる。この学習モードでは、ネットワークは、それぞれのシナプスのシナプス重みが、訓練パターンのための入力スパイク信号に応答して、ネットワーク動作に依存して調整されるように適合される。アプリケーション・モードにおける事後学習では、プリプロセッサ・ユニットは、データ点のアプリケーション・パターンを画定するアプリケーション・データを処理し、アプリケーション・パターンのための第１および第２の１セットの入力スパイク信号を生成し、かつ、学習モードで使用される所定のマッピングに従って入力スパイク信号をネットワークのそれぞれの入力ニューロンに供給するように動作することができる。このモードでは、ネットワークは、シナプスのシナプス重みが学習モードで調整されたままを維持するように、すなわち重みがアプリケーション・パターンのための入力スパイク信号に応答してそれ以上更新されないように適合される。
【００１２】
訓練が終了すると、入力パターンに応答して出力ニューロンによって生成されたスパイクは、その入力パターンに関する情報を、学習モードで処理され、かつ、シナプス重みの調整を介してネットワークを訓練するために使用されたパターンに対する関係で提供する。出力ニューロン・スパイクは、装置の実施態様および特定のアプリケーションに応じて様々な方法で処理することができる。いくつかの実施形態では、例えばＳＮＮは、複数のサブネットワークを含むより複雑なネットワークの部分を形成することができる。出力ニューロン・スパイクは、次に、パターンの特定の特徴または態様に関する情報を提供することができ、また、この情報は、より大きいネットワーク内でさらに処理させることができる。他の実施形態は、ネットワークの出力ニューロンに接続されたポストプロセッサ・ユニットを含むことができる。ポストプロセッサ・ユニットは、パターンのための入力スパイク信号に応答して出力ニューロンによって生成されるスパイクに依存して入力パターンを分類するように適合させることができる。分類操作の性質は、ここではアプリケーション・タスクで決まることになる。
【００１３】
プリプロセッサ・ユニットは、第２の１セットの入力スパイク信号がすべてのデータ点に対する相補値を符号化する信号を含み、それにより入力信号が元のパターン全体に対応する相補パターンを符号化するように適合させることができる。これは、相関検出操作のための最大情報を提供する。他の実施形態では、第２の１セットの入力スパイク信号は、所定のサブセット、または元のパターンに依存するサブセットなどの、データ点のサブセットのみに対する相補値を符号化する信号を含むことができる。例えばプリプロセッサ・ユニットは、入力データからアクティブ・データ点を識別し、かつ、アクティブ・データ点を含むパターンの一部におけるデータ点に対する相補値を符号化する信号を含むべく、第２の１セットの入力スパイク信号を生成するように適合させることができる。以下でさらに説明されるこのような実施形態は、改善された電力消費、ならびに元のパターンおよび相補パターンのよりバランスの取れたスパイク分布を提供する。
【００１４】
本発明を具体化する装置は、特定のシナプス技術に無関係に、改善された性能を提供する。しかしながら好ましい実施形態は、抵抗性記憶セル、例えばＰＣＭセルに基づくメモリスタ・シナプスを使用する。このようなセルの有効なネットワークを利用することができ、その一方で、これらのセルに基づく先行ＳＮＮに関連する問題を軽減することができる。
【００１５】
以下、本発明の実施形態について、添付の図面を参照して、非制限の例証例によってより詳細に説明する。
【図面の簡単な説明】
【００１６】
【図１】本発明を具体化する神経形態学的処理装置の略図である。
【図２】図１の処理装置のＳＮＮの基本構造を示す図である。
【図３】処理装置のプリプロセッサ・ユニットの一実施形態を示す図である。
【図４】図２のＳＮＮにおけるシナプスの略図である。
【図５】図４のシナプスのより詳細な実施形態を示す図である。
【図６】ＰＣＭセルのコンダクタンス応答を示すグラフである。
【図７】図２のＳＮＮにおける図５のシナプスの動作を示す図である。
【図８】図２のＳＮＮにおける図５のシナプスの動作を示す図である。
【図９】図９（ａ）〜（ｄ）は本発明を具体化する装置および匹敵するシステムに対するシミュレーション結果を示す図である。
【図１０】本発明の実施形態を使用して得られた実験結果を示す図である。
【図１１】匹敵する先行システムを使用して得られた実験結果を示す図である。
【図１２】本発明を具体化する装置のプリプロセッサ・ユニットの別の実施形態を示す図である。
【図１３】本発明の実施形態における相補パターンを生成するための代替方法を示す図である。
【図１４】本発明の実施形態における相補パターンを生成するための代替方法を示す図である。
【発明を実施するための形態】
【００１７】
本明細書においては、特許請求される構造および装置の詳細な実施形態が開示されるが、開示される実施形態は、特許請求される、様々な形態で具体化することができる構造および方法の単なる例証的なものにすぎないことは理解されよう。しかしながら本発明は多くの異なる形態で具体化することができ、本明細書において明確に示されている例示的実施形態に限定されるものとして解釈してはならない。そうではなく、これらの例示的実施形態は、本開示が徹底的で、かつ、完全であるように、また、本開示が本発明の範囲を当業者に完全に伝えるように提供されている。説明では、よく知られている特徴および技法の詳細は、提示される実施形態を不必要に曖昧にすることを回避するために場合によっては省略されている。
【００１８】
図１は、本発明を具体化する神経形態学的処理装置１の基本構造を示す略ブロック図である。この例では、装置１は画像分類アプリケーションに使用されている。装置１は、プリプロセッサ・ユニット２、ＳＮＮ３およびポストプロセッサ・ユニット４を備えている。プリプロセッサ・ユニット２は、データ点のパターンを画定する入力データを処理するように適合されている。このアプリケーションでは、データ点のパターンは、カメラ、スキャナ、等々（図示せず）などの入力デバイスによって獲得されるグレースケール画像５を含む。結果として得られる、画像のそれぞれのピクセルに対応するデータを含む画像データは、入力データとしてプリプロセッサ・ユニット２に供給される。プリプロセッサ・ユニットは、この入力データを処理して、スパイク・セット１およびスパイク・セット２によって示されている、ＳＮＮ３のための２セットの入力スパイク信号を生成するように適合されている。セット１の入力スパイク信号は、解析されるパターン、ここでは画像５のピクセルのそれぞれのデータ点を表す値を符号化する。したがって画像のピクセル毎に、そのピクセルに対するデータ値が入力スパイク信号としてセット１の中に符号化される。セット２の入力スパイク信号は、データ点を表すそれぞれの値に対して相補をなす値を符号化する。したがってセット２の個々の入力スパイク信号は、画像ピクセルに対するデータ値に対して相補をなす値を符号化する。この例では、プリプロセッサ・ユニットは、画像の個々のピクセルに対応するセット２スパイク信号を生成し、それによりセット２は、すべてのデータ点に対する相補値を符号化する信号を含む。両方のセットの入力スパイク信号は、入力としてＳＮＮ３に供給される。
【００１９】
ＳＮＮ３の構造は図２に略図で示されている。ＳＮＮ３は、１セットのＭ個の入力スパイキング・ニューロンおよび１セットのＮ個の出力スパイキング・ニューロンを含み、Ｎは典型的にはＭ未満である。ｍｉ（ｉ＝１からＭ）によって示されている個々の入力ニューロンは、それぞれのシナプスｓｊｉによって、ｎｊ（ｊ＝１からＮ）によって示されている個々の出力ニューロンに接続されている。以下でさらに説明されるように、個々のシナプスｓｊｉはシナプス重みＷｊｉを記憶し、また、そのそれぞれの入力ニューロンｍｉからスパイクを受け取ると、それに応答して、その重みＷｊｉに依存するポスト−シナプス信号（当技術分野では「ポスト−シナプス電位」とも呼ばれる）をそのそれぞれの出力ニューロンｎｊに提供するように動作することができる。
【００２０】
図２に略図で示されているように、プリプロセッサ・ユニット２は、両方のセット１およびセット２の入力スパイク信号をＳＮＮ３のそれぞれの所定の入力ニューロンｍｉに供給する。信号は、どの入力ニューロンｍｉが入力パターンの所与のデータ点、ここではピクセルに対応する入力信号を受け取るかを、第１および第２の１セットの入力信号の各々に対して画定する所定のマッピングに従って個々の入力ニューロンに供給される。このマッピングは、以下で考察される、装置の学習モードのために決定され、任意に画定することができるが、装置の動作における無矛盾を維持する。また、ＳＮＮ３内におけるニューロンおよびシナプスの物理的なレイアウトも同じく任意であり、設計選択の問題である。しかしながら典型的なＳＮＮでは、シナプスｓｊｉは、行および列を含むクロス−バー・アレイでレイアウトすることができ、所与の列におけるシナプスは、対応する入力ニューロンｍｉからスパイクを受け取り、また、所与の行におけるシナプスは、対応する出力ニューロンｎｊにポスト−シナプス信号を提供する。
【００２１】
この実施形態のプリプロセッサ・ユニット２は、所定の符号化スキームを介してそれぞれのデータ点に対応する入力データを符号化することによってセット１の入力スパイク信号を生成し、また、（ａ）それぞれのデータ点に対応する入力データに対して相補をなすデータを生成し、かつ、（ｂ）同じ符号化スキームを介して相補データを符号化することによってセット２の入力スパイク信号を生成するように適合されている。図３はプリプロセッサ２の構造の略図である。プリプロセッサは、データ・インバータ１０およびレート・エンコーダ１１を備えている。データ・インバータ１０は、入力画像データを受け取り、かつ、画像のピクセル毎に相補ピクセル・データを生成する。相補ピクセル・データは、対応するピクセルに対するピクセル・データの値に対して相補をなす値を画定する。例えばグレースケール上の暗から明までのピクセルが０からｘまでの範囲の値によって表される場合、元の画像のピクセルに対して値０≦ｐ≦ｘのピクセル・データを反転して、値ｐ’＝（ｘ−ｐ）の相補ピクセル・データを生成することができる。したがって相補画像データは元の画像の陰画像を表す。相補画像データは、データ・インバータ１０によって、元の入力画像データを同じく受け取るレート・エンコーダ１１に供給される。レート・エンコーダ１１は、元の画像データおよび相補画像データの個々のピクセルおよび相補ピクセルをレート符号化して、スパイクの列を含むスパイク信号を生成し、スパイク・レートは、そのピクセル／相補ピクセルに対するデータ値に依存する。元の画像データから生成されるスパイク信号は、セット１の入力スパイク信号を形成する。相補画像データから生成されるスパイク信号は、セット２の入力スパイク信号を形成する。結果として得られるレート符号化スパイク信号はＳＮＮ３に出力される。
【００２２】
ＳＮＮ３が動作している間、スパイキング・ニューロンｍｉ、ｎｊはそれらの入力信号を積分し、かつ、発火し、蓄積された入力値（ニューロンのいわゆる「膜電位」によって表される）がニューロンに対する発火閾値を超えると出力スパイクを生成する。したがって個々の入力ニューロンｍｉは、そのニューロンによって受け取られた入力スパイク信号に依存するスパイクを生成する。入力ニューロンｍｉによって生成されたスパイクは、その接続されているシナプスｓｊｉによって受け取られ、シナプスｓｊｉは、ポスト−シナプス信号をそれらのそれぞれの出力ニューロンｎｊに出力する。個々の出力ニューロンｎｊは、同様に、そのシナプスｓｊｉから受け取った信号に依存する出力スパイクを生成することができる。この実施形態では、ＳＮＮ３の出力ニューロンｎｊは、出力ニューロン・スパイクを受け取るポストプロセッサ・ユニット４に接続されている。ポストプロセッサ・ユニット４は、ＳＮＮ３への入力スパイク信号に応答して生成される出力ニューロン・スパイクに依存して、データ点の元の入力パターン、ここでは画像５を分類するように適合されている。詳細には、ポストプロセッサ４は、出力ニューロン・スパイクに基づいて、入力画像パターンと、以下でさらに説明される学習モードでＳＮＮ３によって既に「学習されている」１つまたは複数の訓練パターンとの間の相関を検出する。ポストプロセッサは、相関検出操作に基づいて入力画像を分類し、例えば手書き数字などの特定の項目を描写しているものとして画像を識別し、その画像に対する分類出力を提供する。一般に、ポストプロセッサ４内で入力パターンを分類するプロセスは、特定のアプリケーション・タスクおよび学習モードで学習される訓練パターンで決まることになる。分類は、例えば特定のパターンまたはパターンのタイプであるものとしての入力パターンの識別、訓練パターンに対する類似／非類似としてのパターンの識別、さもなければ１つまたは複数の訓練パターンとの相関の程度の指示を含むことができる。
【００２３】
本明細書において説明されているプリプロセッサ２およびポストプロセッサ４の機能性は、ハードウェアまたはソフトウェアあるいはそれらの組合せを介して、広く知られている方法で実現することができる。知られている様々な回路実施態様をＳＮＮ３のニューロンおよびシナプスのために使用することができる。しかしながら、一般に、ニューロンｍｉ、ｎｊおよびシナプスｓｊｉは、任意の所望の方法で実現することができ、また、特定の機能性は、ハードウェア／ソフトウェアまたはそれらの組合せによって提供することができる。以下、装置１の学習操作および相関検出操作ための基本を提供するシナプスｓｊｉの動作について、より詳細に説明する。
【００２４】
図４は、シナプスｓｊｉを実現するためのシナプス装置２０の基本構造を示したものである。シナプス２０は、シナプス・デバイス２１およびシナプス制御論理２２を備えている。シナプス・デバイス２１はシナプス重みＷｊｉを記憶し、例えば抵抗性記憶セルなどのメモリスタ・デバイスによって実現することができ、それによりシナプス重みＷｊｉはデバイス抵抗Ｒの逆比に依存し、例えばＷｊｉ＝Ｒ−１である。制御論理２２は、入力ニューロン・スパイクを受け取り、かつ、シナプス・デバイス２１の動作を制御する。詳細には、制御論理２２は、シナプス・デバイス２１の「読出し」操作および「書込み」操作を制御する。読出し操作は、入力ニューロン・スパイクの受取りに応答して実施され、シナプス重みＷｊｉに依存するポスト−シナプス信号をシナプス・デバイス２１の出力に生成する。これは、読出し信号、例えば電流パルスまたは電圧パルスをシナプス・デバイス２１に印加することにより、知られている方法で達成することができ、それにより結果として得られる出力信号は、記憶されている、例えばデバイス抵抗Ｒによって決定される重みＷｊｉに依存する。書込み操作は、シナプス柔軟性を実現するために、重みＷｊｉを調整するべく実施される。書込み操作、および重みＷｊｉが更新される量ΔＷｊｉは、ＳＮＮ３の動作中に制御論理によって受け取られる重み制御信号に依存して制御論理２２によって制御される。重み制御信号は、書込み操作を促す事象、および更新量ΔＷｊｉが依存する事象または他の変数を示す。これらの事象／変数は、ネットワーク動作の様々な態様に依存してもよく、また、所望のシナプス動力学を提供するよう、様々な方法で選択することができる。例えば書込み操作は、入力ニューロンまたは出力ニューロンあるいはその両方のスパイキングに応答して促すことができ、また、重み更新ΔＷｊｉは、ニューロン・スパイクの絶対タイミングまたは相対タイミング、ニューロン・スパイクのレート、またはネットワーク・アクティビティの他の態様、例えば上で言及した、いつニューロンが発火するかを決定する膜電位などの入力ニューロンまたは出力ニューロンあるいはその両方の特性に依存し得る。書込み操作は、書込み信号、例えば電流パルス／電圧パルスまたは一連のパルスをシナプス・デバイス２１に印加して、記憶されている重みＷｊｉを例えばデバイス抵抗Ｒを変化させることによって所望の量だけ更新することにより、知られている方法で実施することができる。
【００２５】
また、制御論理２２は、ＳＮＮ３内におけるシナプスｓｊｉの動作モードを制御するモード制御信号を同じく受け取る。詳細には、処理装置１は、ＳＮＮ３が訓練され、また、書込み操作によってシナプス重みＷｊｉが調整される学習モード、およびシナプス重みＷｊｉが調整されず、読出し操作のみが実施されるアプリケーション・モードで動作することができる。したがってシナプス重みＷｊｉは、学習モードにおけるネットワーク動作に依存して、シナプスに対して調整され、また、学習後の記憶された重みは、アプリケーション・モードの間、不変を維持する。モード制御信号は、ＳＮＮの動作を全体的に制御するネットワーク・コントローラ（図示せず）によって包括的に生成することができ、また、モード制御信号は、読出し／書込み操作のための包括的供給電圧を生成することも可能である。
【００２６】
シナプスｓｊｉのシナプス・デバイス２１は、ＰＣＭセルを使用して実現されることが好ましい。図５は、このようなシナプスの例示的実施態様を示したものである。その入力ニューロンｍｉと出力ニューロンｎｊの間に接続されているシナプス３０が示されている。シナプス・デバイスは、ここでは単一のＰＣＭセル３１を備えている。ＰＣＭセル３１の読出し操作および書込み操作は、入力ニューロンｍｉおよび出力ニューロンｎｊの両方からスパイクを受け取るＳＴＤＰ（スパイク・タイミング依存柔軟性）論理３２によって制御される。ＰＣＭセル３１の動作は、一対の電極３５の間に配置されているＰＣＭ材料３４、例えばＧＳＴ（ゲルマニウム−アンチモン−テルル）などのカルコゲニドの体積の可変抵抗特性を利用している。シナプス重みＷｊｉはセルの相構成で記憶され、電流パルスを印加することによって変更される。ＰＣＭ材料は、非晶質（大きい抵抗率）相と結晶質（小さい抵抗率）相の間で大きい抵抗率差を示す。非晶質相から結晶質相への移行は、電極への結晶化パルスの印加を介して実現される。これらのパルスは、材料を結晶化温度より高い温度に加熱し、ここでは残りの低抵抗結晶質材料３７内の高抵抗非晶質ドーム３６のサイズを小さくすることによってデバイス・コンダクタンスを徐々に変化させる。図６は、結晶化パルスを連続的に印加した後のこのようなＰＣＭセル３１のコンダクタンス応答を示したものである。この漸進的な特性により、シナプス重みＷｊｉを増分的に調整し、シナプス３０における増分学習能力を提供することができる。セルの非晶質領域は、リセット・パルスを印加してＰＣＭ材料を融解させることによって回復することができ、冷却すると非晶質相が回復する。
【００２７】
ＳＴＤＰ論理３２は、シナプスの入力ニューロンおよび出力ニューロンｍｉ、ｎｊによって生成されるスパイクの相対タイミングに依存して、ＰＣＭセル３１に対する書込み操作を介して、学習モードにおけるシナプス３０のシナプス重みＷｊｉを調整する。ここでは、様々なＳＴＤＰ規則（重み更新ΔＷｊｉが入力ニューロン・スパイクと出力ニューロン・スパイクの間の時間差Δｔに依存する程度を定義する）を実現することができ、以下、特定の例について詳細に説明する。ＳＴＤＰ論理３２は、学習モードおよびアプリケーション・モードの両方でポスト−シナプス信号を生成するために、セル電極に低電圧読出しパルスを印加することによって読出し操作を同じく制御する。読出し電圧レベルは、読出し電圧がプログラム済みのセル状態を妨害しないことを保証するために十分に低い。結果として得られる、セルを通って流れる、セル抵抗に依存し、したがってシナプス重みＷｊｉに依存する電流パルスは、ポスト−シナプス信号を出力ニューロンｎｊに提供する。
【００２８】
装置１の学習モードでは、ＳＮＮ３は、データ点の訓練パターンをそれぞれ画定する少なくとも１セットの訓練データを処理することによって訓練され、アプリケーション・モードにおける分類はこの訓練パターンに基づく。ここでの画像分類例の場合、訓練パターンは画像を含む。個々の訓練画像に対して、プリプロセッサ・ユニットは上で説明したように動作して、訓練画像のための第１および第２の１セットの入力スパイク信号を生成する。これらの入力スパイク信号は、既に説明した所定のマッピングに従ってネットワークのそれぞれの入力ニューロンｍｉに供給される。ＳＮＮ３に対するモード制御信号は、すべてのシナプスｓｊｉを学習モードに設定する。したがってそれぞれのシナプスのシナプス重みＷｊｉは、個々の訓練画像のための入力スパイク信号に応答して、ＳＮＮ動作に依存して調整される。
【００２９】
個々の訓練画像に応答して出力ニューロンｎｊによって生成されたスパイクは、ポストプロセッサ４によって検出される。訓練画像のためのスパイク・パターンと、アプリケーション・モードで入力画像のために生成されたスパイク・パターンとの間の相関を後で検出することができるよう、特定のスパイク・パターンが個々の訓練画像と結合される。この結合操作は、アプリケーションの特質に応じて様々な方法で実施することができ、また、出力スパイク・パターンのさらなる処理を含むことができる。以下、この手順の特定の例について詳細に説明する。
【００３０】
訓練が終了すると、アプリケーション・モードで装置を動作させて、データ点のアプリケーション・パターンを画定するアプリケーション・データを処理して、アプリケーション・パターンと、学習モードでＳＮＮ３によって学習されたパターンとの間の相関を検出することができる。このモードでは、画像を含むアプリケーション・パターンに対して、画像は、画像のための第１および第２の１セットの入力スパイク信号を生成するために、プリプロセッサ２によって上で説明したように処理される。これらの入力スパイク信号は、学習モードのために画定された所定のマッピングに従ってネットワークのそれぞれの入力ニューロンｍｉに供給される。ＳＮＮ３に対するモード制御信号は、すべてのシナプスｓｊｉをアプリケーション・モードに設定する。したがってこのモードでは、ＳＮＮ３は、シナプスのシナプス重みＷｊｉが学習モードで調整されたままを維持するように、すなわちアプリケーション・パターンに応答して書込み操作が実施されないように、また、重みがさらに更新されないように適合される。アプリケーション画像に応答して出力ニューロンｎｊによって生成されたスパイクは、ポストプロセッサ４によって検出され、かつ、上で説明したようにアプリケーション画像を分類するために使用される。
【００３１】
元のパターンおよび相補パターンの両方からの入力の使用は、ＳＮＮ動作における重要な改善を提供し、また、先行システムにおける抵抗性記憶セル・シナプスの使用に関連する問題を軽減する。改善された動作は、ＭＮＩＳＴ分類などの複雑な分類タスクに対してさえも立証されている。様々な利点が、以下でさらに詳細に説明される上記実施形態の実施態様を使用して得られた分類結果によって例証されている。
【００３２】
試験された実施態様は、上で概略的に説明した処理装置アーキテクチャを使用した。単一のＰＣＭセル・シナプス・デバイスは、図５で説明したように使用され、突然のリセットに対処するために非対称ＳＴＤＰ規則が使用された。図７および図８は、概念をより詳細に示したものである。図７は、ＰＣＭシナプス・デバイスの動作を示している（上で参照したＷｏｚｎｉａｋ文書により詳細に記載されている）。結晶化パルスがシナプス相乗作用のために使用されている（シナプス重みＷｊｉが増す）。これらのパルスは、材料を結晶化温度Ｔｃｒｙｓｔより高い温度に加熱し、デバイス・コンダクタンスを増分的に変化させる。リセット・パルスは、ＰＣＭ材料を個々のシナプス降下事象で再非晶質化させるために使用されている（シナプス重みＷｊｉが減少する）。リセット・パルスは、振幅がより大きい電流パルスであり、ＰＣＭ材料をその融解温度Ｔｍｅｌｔより高い温度に加熱する。パルスの突然の遮断は、溶融した材料が非晶質相に焼き戻しされる原因になる。突然のリセットは、事実上、Ｗｊｉの調整を介して既に学習済みの情報をシナプスに即座に「忘れさせる」ことになる。
【００３３】
図８はＳＴＤＰ学習機構を示したものである。これは、“Simulation of amemristor-based spiking neural network immune to device variations”, Querlioz et al., Neural Networks, IJCNN 2011, IEEE (2011), pp.1775-1781に提示されているスキームの修正版である。図に示されているように、２回窓δｐｏｔおよびδｄｅｐが画定されている。時間瞬時ｔｊで出力ニューロンがスパイクすると、対応するシナプス重みＷｊｉがそれらの最後の入力スパイクの時間ｔｉに応じて修正される。ｔｊ−ｔｉ＜δｐｏｔである場合、シナプス重みＷｊｉが相乗作用される。ｔｊ−ｔｉ＞δｄｅｐである場合、シナプスが降下される。それ以外のすべての事例では、シナプス重みは不変を維持する。学習機構における２つの窓の導入は、ここでは、印加されるリセット・パルスの数の低減を目的としている。
【００３４】
分類タスクは、手書き数字０から９のＭＮＩＳＴデータセットを使用した。ネットワークのタスクは、入力に表されている数字を認識し、かつ、それを１０個のクラスのうちの１つに分類することである。入力パターンは、２８×２８個のピクセル・グレースケール画像からなっており、これらは、レート符号化スキームを使用してプリプロセッサ２内で処理された。特に、ピクセル強度は、０Ｈｚ（最低強度）から２０Ｈｚ（最高強度）までのスパイキング周波数に直線的にマップされた。これらの周波数は、入力スパイク信号を生成するために、ランダム・ポアッソン過程における平均周波数として使用された。ＳＮＮアーキテクチャは、漏洩積分および発火（ＬＩＦ:leaky integrate-and-fire）モデルを実現する２×２８×２８＝１５６８個の入力ニューロンｍｉおよび５０個の出力ニューロンｎｊからなっていた。出力ニューロン間に競合を導入するために、側方抑制に基づくＷＴＡ（勝者がすべてを得る：Ｗｉｎｎｅｒ−Ｔａｋｅｓ−Ａｌｌ）機構が適用された。（このような機構は当技術分野ではよく知られており、また、発火閾値を越えるすべての中から１つの「勝ち」出力ニューロンｎｊを選択する。この選択は、それぞれの膜電位と発火閾値の間の差に基づく。）すべてのニューロンが学習に加わったことを保証するために、上で参照したＱｕｅｒｌｉｏｚに記載されている機構と同様、閾値電圧は、恒常性を使用してそれらのそれぞれの刺激に適合された。（恒常性は、同じく当技術分野でよく知られており、ニューロンが長期間にわたって同様のレベルのアクティビティを維持することを保証するために、それらのアクティビティに基づくニューロン発火閾値の調整を含む。したがって発火閾値は、ニューロンがよりアクティブである（他のニューロンと比較してより多くの出力スパイクを放出する）場合はより高いレベルに設定され、また、ニューロンがそれほどアクティブではない（他のニューロンと比較してそれほど多くの出力スパイクを放出しない）場合はより低いレベルに設定される）。
【００３５】
学習モードに対しては、ＭＮＩＳＴ訓練セットからのサンプルが入力パターンとして使用された。シナプス重みは学習機構に従って更新され、また、閾値は恒常性規則に従って調整された。ポストプロセッサ４は、最初に、出力スパイクによって示される外観の類似に基づいて、教師なし方法で（すなわちクラスを示すラベルなしに）入力パターンをクラスタ化し、すべての出力ニューロンが１つのクラスタを表した。第２のステップで、訓練パターンに対する分類ラベルを使用して、個々のクラスタ、したがって出力ニューロンが１０個のクラスのうちの１つに割り当てられた。すべての出力ニューロンにクラスを割り当てるために、訓練セットからの最後の１００００パターンが使用された。ネットワークは、非活性化された学習機構（シナプス重みは調整されない）および恒常性の両方を使用して動作された。ポストプロセッサ４は、発火事象の数に基づいて、最も多くスパイクしたクラスにすべての出力ニューロンを割り当てた。
【００３６】
アプリケーション・モードに対しては、ＭＮＩＳＴデータベースからの試験セットが使用された。すべての試験パターンが、対応する出力ニューロンが最も多くの出力スパイクを生成したクラスに分類された。次に分類精度が計算された。上記実施態様に対するシミュレーション結果は、６８．６１％の試験セット分類精度を達成した。図９（ａ）は、最終シナプス重み事後学習の画像表現を示したものである。この結果は、相補パターンを使用していない、したがって入力ニューロンおよびシナプスの数が半分であり、また、同じ数の出力ニューロンを使用している先行システムの等価実施態様と比較された。上で参照したＷｏｚｎｉａｋの単一のＰＣＭシナプスの場合、試験精度は５５．５５％であり、また、最終シナプス重みは図９（ｂ）に示されている。差動構成の２つのＰＣＭセルを有するシナプス・デバイスの場合（“Experimental demonstration and tolerancing of a large-scale neural network (165,000 synapses), using phase-change memory as the synaptic weightelement”, Burr et al., 2014 IEEE International Electron Devices Meeting, IEEE (2014) 29.5.1- 29.5.4に詳細に記載されているように）、試験精度は７３．７３％であり、また、重みは図９（ｃ）に示されている。最後に、理想シナプス重み（線形の、相乗作用と降下の間が非対称である双方向重み）を使用したシミュレーションは、７７．７％の試験精度および図９（ｄ）に示されているシナプス重みを示した。
【００３７】
理想シナプス重みと比較すると、単一ＰＣＭシナプスを有するＷｏｚｎｉａｋ  ＳＮＮのドロップ−イン精度は、シナプスの突然の降下特性によるものである。比較すると、相補パターン実施態様は約１３％の精度向上を提供した。１つは元の入力データを記憶し、また、もう１つはその相補を記憶する２つのデバイスを使用して個々のデータ点の情報が表されるため、突然のリセット問題は、この相補パターン手法によって軽減される。一方のシナプスがリセットされ、情報が「忘れられ」ても、そのデータ点に関する情報は、もう一方のシナプスによって依然として記憶されている。入力ニューロンおよびシナプスの数は２倍になるが、出力ニューロンの数、およびＳＮＮアーキテクチャにおけるそれらの動作モードは不変である。
【００３８】
相補パターン実施態様の性能は、精度がごくわずかに劣るだけで、差動２ＰＣＭ構成の性能に匹敵する。シナプス・デバイスの数は、両方の実施態様で同じであるが、相補パターン実施態様は、その複雑性の点で著しく優っている。差動構成には、シナプス・デバイスのための２つのクロスバー・アレイ、および個々のシナプスにおける２つのセルの正および負の重み寄与の控除が必要である。また、この構成には、シナプス動作のための周期的なコンダクタンス再平衡化が必要であり、それによりセルの重みが連続的に読み出され、かつ、再平衡化されて飽和が回避される。それとは対照的に、相補パターン手法に必要であるのは１つのクロスバー・アレイのみであり、ＳＮＮ動作に複雑性を追加することはない。すべての追加機能性はプリプロセッサ動作によって提供されるため、ネットワークの動作原理は、従来の単一セル手法と同じ動作原理を維持している。
【００３９】
単一ビットの情報を運ぶスパイクの形態で入力パターンが提示されるため、アクティブ情報のみが使用されることは、先行ＳＮＮの固有の特性である。したがって非アクティブ・データ点（例えば暗いピクセル）は、入力がないことと区別されない。それとは対照的に、上で説明した相補パターン手法を使用すると、特定の位置における入力の欠落に関する情報が同じくネットワーク内で考慮されることが保証される。相補情報はパターン差の面積のより良好な区別を可能にするため、これは、入力パターン間、例えば手書き数字１と７の間が高度に畳重している事例における性能を改善する場合にとりわけ有利である。相補パターンからの追加情報は、ネットワークにおける高い感度を提供し、偽ニューロン・スパイキングの低減をもたらす。
【００４０】
２つのネットワーク構成を実現することにより、差動２ＰＣＭシナプス構成、および単一ＰＣＭシナプスを有する相補パターン手法が実験的にさらに比較された。基本ハードウェア・プラットフォームは、“All-memristive neuromorphic computing with level-tuned neurons”, Pantazi et al., Nanotechnology 27(35) (2016) 355205に記載されているものであり、また、９０ｎｍ  ＣＭＯＳ技術で製造されたプロトタイプ位相変化チップを使用した。ＰＣＭデバイスは、Ｇｅ２Ｓｂ２Ｔｅ５がドープされたマッシュルーム形位相変化材料のデバイスであった。ＰＣＭデバイスは、ハードウェア中でＳＮＮのシナプスを実現し、一方、学習機構およびＬＩＦニューロンは、ソフトウェア中でエミュレートされた。相補パターン、単一ＰＣＭデバイス手法に対する実験的重みは図１０に示されており、また、差動シナプス手法に対する実験的重みは図１１に示されている。差動シナプスに対するＭＮＩＳＴ試験セット精度は６８．１４％であった。シミュレーションと比較した精度の低下は、ＰＣＭデバイスの可変性および欠陥によるものであるが、ネットワークのサイズが小さいことを考慮すると、性能は良好である。相補パターン手法は５９．２０％の精度を達成した。スキームの単純性を考慮すると、ＭＮＩＳＴ分類タスクにおけるこの性能は著しく良好である。
【００４１】
上記実施形態に対する変更態様では、プリプロセッサ・ユニット２は、上で説明したように符号化スキームを介して元の入力データを符号化することによって第１の１セットの入力スパイク信号を生成することができるが、反転符号化スキームを介して元の入力データを符号化することによって第２の１セットの入力スパイク信号を生成することができる。レート・エンコーダ４１および反転レート・エンコーダ４２を備えたこのようなプリプロセッサ４０は図１２に示されている。反転レート・エンコーダ４２は、エンコーダ４１のレート符号化操作を単純に反転し、すなわちその相補ピクセル値ｐ’に対応するスパイク・レートで個々のピクセル値ｐを符号化する。
【００４２】
代替実施形態では、プリプロセッサ・ユニット２は、第２の１セットの入力スパイク信号が、元のパターン中のデータ点の所定のサブセットに対する相補値を符号化する信号を含むように適合させることができる。例えば相補データは、図１３に略図で示されている入力画像の、中央窓などの所定の部分に対してのみ生成することができる。別法としては、相補データは、例えばパターンのアクティブ領域に基づいて決定された、元のパターンに依存するデータ点のサブセットに対して生成することも可能ある。詳細には、プリプロセッサ・ユニットは、入力データからアクティブ・データ点を識別し、かつ、アクティブ・データ点を含むパターンの一部におけるデータ点に対する相補値を符号化する信号を含むべく、第２の１セットの入力スパイク信号を生成するように適合させることができる。例は図１４に略図で示されている。ここでは、プリプロセッサは、アクティブ・ピクセル、例えばアクティブ・ピクセルを画定する所定の閾値より大きいデータ値を有するピクセルを取り囲み、かつ、含む画像の領域に対する相補画像データを生成する。これは、プリプロセッサ２の簡単な修正によって達成することができる。例えばプリプロセッサは、ピクセル値を閾値に対して比較することによってアクティブ画像ピクセルを識別し、次に、相補データを生成するためにアクティブ・ピクセルを含む領域を選択するように適合させることができる。別法としては、例えば相補画像データは、元の画像を１つまたは複数の方向に有効にシフトし、かつ、元の画像を控除することによって生成することも可能である。これらの実施形態は、低減された電力消費、ならびにアクティブ入力および非アクティブ入力のよりバランスの取れたスパイク分布を提供する。
【００４３】
相補データが元のパターンの一部に対してのみ生成される場合、それに応じて、第２の相補の１セットのスパイク信号を処理するための入力ニューロンおよびシナプスの数を少なくすることができる。別法としては、同じ数の入力ニューロン／シナプスを両方のスパイク・セットに対して使用することも可能であり、また、相補パターンは、元のパターンと同じデータ点を使用して、例えば図１３および図１４の相補パターンを取り囲んでいる暗い面積に対して「完了する」ことも可能である。
【００４４】
当然、説明されている例示的実施形態に様々な他の変更および修正を加えることができる。例えばプリプロセッサは、スパイク相関符号化などの他の符号化スキームを使用してスパイク・パターンを生成することができる。この事例では、個々のデータ点に対するデータ値は二進スパイク列によって表されており、スパイクは「１」を表し、また、スパイクなしは「０」を表している。この場合、相補入力スパイク列はデータ点値の二進相補を表す。
【００４５】
以上、画像分類アプリケーションについて説明したが、一般に、データ点の任意のパターンを装置によって処理することができ、また、任意のタイプの相関検出操作を実施してパターンを解析することができる。データ点は、情報の任意の定義済み項目またはユニットを含むことができ、また、パターンは、データ点が定義済みの順序、配置、割振りまたは他の編成を有する任意の構造化セットを含むことができる。一例として、データ点は、文書またはデータ構造中の情報の項目、装置、例えばセンサ・アレイからの信号、医療記録などの記録中の項目、等々を含むことができる。
【００４６】
一般に、データ点に対する相補値は、特定のアプリケーションおよび入力パターンの性質に応じて様々な方法で画定することができる。カラー画像の場合、例えばＲＧＢ（赤／緑／青）成分は、例えば、グレースケールとして個別に処理されるＨＳＶ（色相、飽和、値）スキームまたはＨＳＩ（色相、飽和、強度）スキームに基づいて個別のチャネルに分割することができる。一般に、相補値は、所与のデータ点に対する何らかのタイプの逆すなわち反対の値を表すために、任意の従来の方法で画定することができる。
【００４７】
ＳＮＮのニューロンは、一般に、データ・パターン全体または複合パターンの独立構成要素パターンを学習することができる。いくつかの実施形態のＳＮＮは、出力ニューロンｎｊが例えば追加シナプスを介してより大きいネットワークの他のニューロンに接続されるよう、より大きく、より複雑なＳＮＮの構成要素部分であってもよい。ここでは、装置の構成要素ＳＮＮの出力は、パターンの特徴または態様に関する情報を提供し、この情報は、より大きいネットワーク内でさらに処理することができる。この事例では、全体としてのネットワークの出力に対する事後処理操作を実施することができる。
【００４８】
装置が事後学習を備え、アプリケーション・モードでのみ使用するためにシナプス重みが事前調整されるアプリケーション特化実施形態を想定することができる。
【００４９】
相補パターン手法は、ニューロンおよびシナプスの特定の実施態様には無関係である。他のＳＴＤＰスキームを使用して、入力ニューロン・スパイクおよび出力ニューロン・スパイクのうちの少なくとも一方の（絶対または相対）タイミングに依存してシナプス重みを調整することも可能であり、また、重み更新スキームは、ＳＮＮ動作における他の変数／事象、例えばニューロン膜電位、または誤差の後方伝搬などのニューラル・ネットワーク最適化技法の出力、あるいはその両方に基づくことができる。シナプス・デバイスは、他のメモリスタ・デバイス、例えば、導電性ブリッジＲＲＡＭセル、酸化物または金属酸化物ＲＲＡＭセルおよび炭素ＲＲＡＭセルを含む抵抗性ＲＡＭ（ＲＲＡＭまたはＲｅＲＡＭ）セルなどの他の抵抗性記憶セルに基づくことができる。ニューロンおよびシナプス・デバイスは、いくつかの実施形態ではＣＭＯＳ回路によって実現することができ、また、シナプスは、例えば動的範囲を広くするための多重セル配置の複数のシナプス・デバイス、あるいは異なる構成の２つの記憶セルを使用した複数のシナプス・デバイスを含むことができる。
【００５０】
本発明の様々な実施形態の説明は、例証を目的として提示されたものであり、余す所のないものであること、あるいは開示されている実施形態に限定されることは意図されていない。当業者には、説明されている実施形態の範囲および思想から逸脱することなく、多くの変更態様および変形形態が明らかであろう。本明細書において使用された専門用語は、実施形態の原理、実践的アプリケーション、または市場で見出される技術に対する技術的改善を最も良好に説明し、あるいは本明細書において開示された実施形態に対する他の当業者による理解を可能にするべく選択された。
【図１】
2020531954.tif 000003
【図２】
2020531954.tif 000004
【図３】
2020531954.tif 000005
【図４】
2020531954.tif 000006
【図５】
2020531954.tif 000007
【図６】
2020531954.tif 000008
【図７】
2020531954.tif 000009
【図８】
2020531954.tif 000010
【図９】
2020531954.tif 000011
【図１０】
2020531954.tif 000012
【図１１】
2020531954.tif 000013
【図１２】
2020531954.tif 000014
【図１３】
2020531954.tif 000015
【図１４】
2020531954.tif 000016
【国際調査報告】
2020531954.tif 000017
2020531954.tif 000018