(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-27
(54)【発明の名称】階層的な再構成可能なマルチセグメントスパイキングニューラルネットワーク
(51)【国際特許分類】
G06N 3/065 20230101AFI20240319BHJP
G06N 3/049 20230101ALI20240319BHJP
【FI】
G06N3/065
G06N3/049
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023563057
(86)(22)【出願日】2022-04-16
(85)【翻訳文提出日】2023-11-21
(86)【国際出願番号】 EP2022060197
(87)【国際公開番号】W WO2022219195
(87)【国際公開日】2022-10-20
(32)【優先日】2021-04-16
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521211620
【氏名又は名称】インナテラ・ナノシステムズ・ビー.ブイ.
【氏名又は名称原語表記】INNATERA NANOSYSTEMS B.V.
【住所又は居所原語表記】Patrijsweg 20,2289 EX,RIJSWIJK,Netherlands
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ジャヨ、アミール
(72)【発明者】
【氏名】クマー、スメート・スシェール
(57)【要約】
本発明は、複数のスパイキングニューロンと、ハードウェアにおいて少なくとも部分的に実装されるネットワークを形成するために、スパイキングニューロンを相互接続する複数のシナプス素子と、を備えるニューロシナプス配列を開示する。ニューロシナプス配列は、重みブロックと、出力ブロックと、を備え、各重みブロックは、シナプス素子のうちの1つ以上を備え、各出力ブロックは、ニューロンのうちの1つ以上と、ニューロンスイッチング回路と、を備える。各出力ブロックは、ニューロンスイッチング回路を介して、重みブロックのサブセットに電気的に接続可能である。ニューロンスイッチング回路は、選択されたシナプス素子に電気的に接続されたニューロンのセットへのニューロシナプス配列の区分化を得るために、重みブロックのサブセット内に含まれる少なくとも1つのシナプス素子を、それぞれの出力ブロック内に含まれる少なくとも1つのニューロンに選択的に電気的に接続するように構成される。
【選択図】
図2
【特許請求の範囲】
【請求項1】
複数のスパイキングニューロンと、ハードウェアにおいて少なくとも部分的に実装されるスパイキングニューラルネットワークを形成するために、前記スパイキングニューロンを相互接続する複数のシナプス素子と、を備えるニューロシナプス配列において、
各シナプス素子は、複数の入力のうちの少なくとも1つからシナプス入力信号を受信するように配置され、シナプス出力信号を生成するために、前記シナプス入力信号に重みを適用するように適合され、前記シナプス素子は、各シナプス素子によって適用される前記重みを調整するように構成可能であり、
前記スパイキングニューロンの各々は、前記シナプス素子のうちの1つ以上から、前記シナプス出力信号のうちの1つ以上を受信するように配置され、前記受信された1つ以上のシナプス出力信号に応答して、時空間スパイク列出力信号を生成するように適合されており、
前記ニューロシナプス配列は、重みブロックと、出力ブロックと、を備え、各重みブロックは、前記シナプス素子のうちの1つ以上を備え、各出力ブロックは、前記ニューロンのうちの1つ以上と、ニューロンスイッチング回路と、を備え、
各出力ブロックは、前記ニューロンスイッチング回路を介して、重みブロックのサブセットに電気的に接続可能であり、前記ニューロンスイッチング回路は、選択されたシナプス素子に電気的に接続されたニューロンのセットへの前記ニューロシナプス配列の区分化を得るために、前記重みブロックのサブセット内に含まれる少なくとも1つのシナプス素子を、前記それぞれの出力ブロック内に含まれる少なくとも1つのニューロンに選択的に電気的に接続するように構成される、ニューロシナプス配列。
【請求項2】
出力ブロックが電気的に接続される前記重みブロックのサブセットは、シナプス素子の前記配列内に1つ又は複数の列を形成し、及び/又は、特定の重みブロックに含まれる前記シナプス素子は、前記ニューロシナプス配列の同じ行内に設けられ、及び/又は、各出力ブロックは、重みブロックの列に接続される、請求項1に記載のニューロシナプス配列。
【請求項3】
前記ニューロンスイッチング回路の各々は、前記ニューロンスイッチング回路の論理回路において実装された導線を備えるスイッチング信号経路を備え、前記スイッチング信号経路は、好ましくは、トランジスタゲートを使用することによって、異なる構成間で切り替え可能であるように構成され、各構成は、前記重みブロックのサブセット内に含まれるどの少なくとも1つのシナプス素子が、前記出力ブロック内に含まれるどの少なくとも1つのニューロンに電気的に接続されるかを決定する、請求項1又は2に記載のニューロシナプス配列。
【請求項4】
前記ニューロンスイッチング回路は、前記スイッチング信号経路を動的に再構成するように構成され、好ましくは、前記動的再構成は、前記ニューロシナプス配列の制約駆動型区分化及びセグメンテーションを組み込んだマッピング手法に基づき、好ましくは、前記セグメンテーションは、入力信号対雑音比への前記重みブロック及び出力ブロックサイズのマッチングに基づく、請求項3に記載のニューロシナプス配列。
【請求項5】
前記ニューロシナプス配列の前記セグメンテーションは、前記ニューロシナプスサブ配列のうちの少なくとも2つが、1つ以上の学習則、学習率及び/又は(後)可塑性機構に関して別個であるように、前記1つ以上の学習則、学習率及び/又は(後)可塑性機構に基づいて行われる、請求項1~4のいずれか一項に記載のニューロシナプス配列。
【請求項6】
前記重みブロックのうちの少なくとも1つは、前記ニューロシナプス配列内のシナプス素子の前記切り替え及び/又は組み合わせを容易にするように、インターリーブされた構造として編成され、及び/又は、各出力ブロックについて、前記切り替えは、より高いマッピング柔軟性を得るように、独立して制御可能であり、及び/又は、前記出力ブロックのうちの少なくとも1つは、インターリーブされた構造として編成され、及び/又は、前記出力ブロックのうちのいずれかの前記ニューロン出力は、1つ又は複数のニューロシナプスサブ配列にブロードキャストされる、請求項1~5のいずれか一項に記載のニューロシナプス配列。
【請求項7】
前記出力ブロックのうちの1つ内の前記ニューロンの各々は、電位における段階的なアナログ変化として受動的に伝導する、請求項1~6のいずれか一項に記載のニューロシナプス配列。
【請求項8】
前記ニューロシナプス配列は、ニューロシナプスサブ配列にセグメント化され、これらは、分離可能であり且つそれら自体の必須の回路を有し、及び/又は単一のモダリティを処理し、単一のモダリティに対して最適化されるように配置されている、請求項1~7のいずれか一項に記載のニューロシナプス配列。
【請求項9】
長距離及び短距離の相互接続の両方が、異なるニューロシナプスサブ配列のニューロン間に存在し、より密度の高い接続性が、より遠位のニューロシナプスサブ配列間よりも、近位のニューロシナプスサブ配列間に存在する、請求項8に記載のニューロシナプス配列。
【請求項10】
前記出力ブロックのうちの少なくとも1つは、前記出力ブロックのうちの前記少なくとも1つ内の特定のニューロンの前記蓄積期間及び/又は前記積分定数が、制御信号を介して制御可能であるという点で、制御可能である、請求項1~9のいずれか一項に記載のニューロシナプス配列。
【請求項11】
前記ニューロンのうちの1つの、ニューロン膜電位が、キャパシタの両端の電圧として、若しくはデジタルラッチに記憶されたマルチビット変数として、前記アナログ領域において実装されるか、又はCMOS論理回路を使用して、前記デジタル領域において実装される、請求項1~10のいずれか一項に記載のニューロシナプス配列。
【請求項12】
スパイキングニューラルプロセッサであって、
デジタル又はアナログデータをスパイクに符号化するデータ-スパイクエンコーダと、
前記データ-スパイクエンコーダによって出力された前記スパイクを入力とするように配置され、前記入力の結果として時空間スパイク列を出力するように配置された、請求項1~11のいずれか一項に記載のニューロシナプス配列と、
前記ニューロシナプス配列から生じる前記時空間スパイク列を復号するように配置されたスパイクデコーダと、
を備えるスパイキングニューラルプロセッサ。
【請求項13】
ニューロシナプス配列を構成するための方法において、
前記ニューロシナプス配列は、複数のスパイキングニューロンと、ハードウェアにおいて少なくとも部分的に実装される前記ネットワークを形成するために、前記スパイキングニューロンを相互接続する複数のシナプス素子と、を備え、
各シナプス素子は、複数の入力のうちの少なくとも1つからシナプス入力信号を受信し、シナプス出力信号を生成するために、前記シナプス入力信号に重みを適用するように適合され、前記シナプス素子は、各シナプス素子によって適用される前記重みを調整するように構成可能であり、
前記スパイキングニューロンの各々は、前記シナプス素子のうちの1つ以上から、前記シナプス出力信号のうちの1つ以上を受信し、前記受信された1つ以上のシナプス出力信号に応答して、時空間スパイク列出力信号を生成するように適合されており、
前記方法は、
前記ニューロシナプス配列を、重みブロックと出力ブロックとに分割すること、各重みブロックは、前記シナプス素子のうちの1つ以上を備え、各出力ブロックは、前記ニューロンのうちの1つ以上と、ニューロンスイッチング回路と、を備える、と、
各出力ブロックを、前記ニューロンスイッチング回路を介して、重みブロックのサブセットに電気的に接続可能にすることと、
選択されたシナプス素子に電気的に接続されたニューロンのセットへの前記ニューロシナプス配列の区分化を得るために、前記重みブロックのサブセット内に含まれる少なくとも1つのシナプス素子を、前記それぞれの出力ブロック内に含まれる少なくとも1つのニューロンに選択的に電気的に接続するように、前記ニューロンスイッチング回路を構成することと、
を備える、方法。
【請求項14】
出力ブロックが電気的に接続される前記重みブロックのサブセットは、シナプス素子の前記配列内に1つ以上の複数の列を形成し、及び/又は、特定の重みブロックに含まれる前記シナプス素子は、前記ニューロシナプス配列の同じ行内に設けられる、請求項14に記載の方法。
【請求項15】
前記ニューロンスイッチング回路の各々は、前記ニューロンスイッチング回路の論理回路において実装された導線を備えるスイッチング信号経路を備え、前記スイッチング信号経路は、好ましくは、トランジスタゲートを使用することによって、異なる構成間で切り替え可能であるように構成され、各構成は、前記重みブロックのサブセット内に含まれるどの少なくとも1つのシナプス素子が、前記出力ブロック内に含まれるどの少なくとも1つのニューロンに電気的に接続されるかを決定する、請求項13又は14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
[0001]本発明は、自動信号認識技法に関し、特に、スパイキングニューロンの階層的な再構成可能なマルチセグメントネットワークのためのシステム及び方法に関する。
【背景技術】
【0002】
[0002]ディープニューラルネットワーク(DNN)は、数多くの機械学習アプリケーションの基礎を形成し、音声及び画像認識を始めとして、DNNを利用するアプリケーションの数は、飛躍的に増大している。当初、ハードウェア(ディープネットワーク)アクセラレータは、標準的な同期デジタル論理上で実装されてきた。ニューラルネットワークの高レベルな並列性は、デジタルシステムにおける(典型的な)直列及び時間多重化処理では再現されず、逆に言えば、メモリ及び処理要素が共局在化される、アナログ計算ノードとして実現されるハードウェアDNNエミュレータの計算プリミティブは、速度、サイズ、及び電力消費に関して大幅な改善をもたらす。
【0003】
[0003]生物学的ニューラルネットワークモデルでは、各個々のニューロンは、非同期的に且つスパースイベント(sparse events)、又はスパイクを通じて通信する。このようなイベントベースのスパイキングニューラルネットワーク(SNN:spiking neural network)では、状態を変化させるニューロンのみがスパイクを生成し、後続の層における信号処理をトリガし得、その結果、計算リソースを節約する。特に、SNNは、ローカルスパイク駆動型計算、ローカル又はグローバルフィードバック、及びオンライン学習によって、スパースバイナリ時系列を処理する非同期分散アーキテクチャを組み込む。生物学的ニューラル処理システムと同様に、混合信号ベースのSNNプロセッサは、それらの基本的な特性のうちの2つ、即ち、時間の明示的な表現と、空間の明示的な使用と、を保持し、各ニューロン/シナプス素子について専用の物理回路をインスタンス化する。
【0004】
[0004]本質的に、このようなSNNの実装は、ハイブリッドアナログ-デジタル信号表現を採用し、即ち、パルス/スパイクの列は、イベントのタイミングにおいてアナログ情報を送信し、これらは、ニューロンの樹状突起(入力)においてアナログ信号に変換し戻される。情報は、ニューロンの集団にわたって生じる活動のパターンによって符号化され、シナプス(後続のニューロンへの接続)は、それらが受信するパルスに応じてそれらの機能(function)を適応させ得、信号伝達エネルギー効率、並びに情報を記憶及び想起する(recall)ための柔軟性を提供する。SNNは、振幅領域、時間領域、及び周波数領域の特徴が、一意の空間的及び時間的にコード化されたスパイクシーケンスに符号化され得るという原理に依拠して、パターン認識及びセンサデータ融合に直接適用され得る。これらのシーケンスの生成は、スパイキングニューロンの1つ以上のセグメントの使用に依拠する。
【0005】
[0005]SNNをハードウェア基板上にマッピングするための現在知られている方法は、例えば、SNN内で特定の機能のために使用されるニューロンの数、シナプスを介した接続性、並びにこれらのニューロン及びシナプスの構成に関して、大きな柔軟性を考慮しない(do not allow for)。
【0006】
[0006]更に、SNNによって必要とされる基本動作は、アナログ電子回路によって非常に効率的に実現されるが、製造上の不一致(fabrication mismatch)が、それらの機能特性における歪みを誘発する。M.J.M. Pelgrom, A.C.J. Duinmaijer, A.P.G. Welbers, “Matching properties of MOS transistors,” IEEE Journal of Solid-State Circuits, vol. 24, no. 5, pp. 1433-1439, 1989を参照。特に、より小さい製造プロセスジオメトリ及びより低い動作電流では、これらの回路は、量子効果及び外部雑音にますます影響されやすく、これは、信号対雑音比を効果的に低減し、処理パフォーマンスを制限する。K.L. Shepard, V. Narayanan, “Noise in deep submicron digital design,” IEEE International Conference on Computer-Aided Design, pp.524-531, 1997を参照。
【0007】
[0007]これらの非理想性の影響は、ドライバ、バイアシング、並びにニューロン及びシナプスが、より長い相互接続を介して、より多数のデバイスによって共有される、大きい配列の場合に増大する。
【発明の概要】
【0008】
[0008]本発明において開示されるニューロシナプスセグメントは、シナプス回路及びニューロンユニットの反復配列として編成される。本発明は、これらの配列がどのようにセグメントに区分化及びマッピングされるかのモダリティを包含し、ニューロシナプス配列及び付随する接続が再構成及びセグメント化され得、その後、SNNをハードウェア基板上にマッピングする際により大きな柔軟性を提供する方法及び機構を説明する。マッピング手法は、(各セグメントのサイズ(ニューロンの数)、それらの接続性(シナプスの数及びトポロジ)、及びそれらの構成(層の数及び重み)に関して)セグメントの制約駆動型区分化(constraint driven partitioning)及びマッピングを組み込み、ここで、選ばれた定義及び有界制約は、セグメントのネットワークの指定された機能にリンクされたパフォーマンスメトリックである。本開示の残りの部分で詳述されるこのアプローチは、複雑な感覚信号(complex sensory signals)のパターン認識が可能なスパイキングニューロンの大規模ネットワークを実現するための有効な手段をもたらす。
【0009】
[0009]本開示の第1の態様によれば、複数のスパイキングニューロンと、ハードウェアにおいて少なくとも部分的に実装されるスパイキングニューラルネットワークを形成するために、スパイキングニューロンを相互接続する複数のシナプス素子と、を備えるニューロシナプス配列が開示される。各シナプス素子は、複数の入力のうちの少なくとも1つからシナプス入力信号を受信するように配置され、シナプス出力信号を生成するために、シナプス入力信号に重みを適用するように適合され、これらシナプス素子は、各シナプス素子によって適用される重みを調整するように構成可能である。更に、スパイキングニューロンの各々は、シナプス素子のうちの1つ以上から、シナプス出力信号のうちの1つ以上を受信するように配置され、受信された1つ以上のシナプス出力信号に応答して、時空間スパイク列出力信号を生成するように適合される。
【0010】
[0010]ニューロシナプス配列は、重みブロックと、出力ブロックと、を備え、各重みブロックは、シナプス素子のうちの1つ以上を備え、各出力ブロックは、ニューロンのうちの1つ以上と、ニューロンスイッチング回路と、を備える。各出力ブロックは、ニューロンスイッチング回路を介して、重みブロックのサブセットに電気的に接続可能であり、ニューロンスイッチング回路は、選択されたシナプス素子に電気的に接続されたニューロンのセットへのニューロシナプス配列の区分化を得るために、重みブロックのサブセット内に含まれる少なくとも1つのシナプス素子を、それぞれの出力ブロック内に含まれる少なくとも1つのニューロンに選択的に電気的に接続するように構成される。
【0011】
[0011]本開示の第1の態様の一実施形態によれば、出力ブロックが電気的に接続される重みブロックのサブセットは、シナプス素子の配列内に1つ又は複数の列を形成し、及び/又は、特定の重みブロックに含まれるシナプス素子は、ニューロシナプス配列の同じ行内に設けられ、及び/又は、各出力ブロックは、重みブロックの列に接続される。
【0012】
[0012]本開示の第1の態様の一実施形態によれば、ニューロンスイッチング回路の各々は、ニューロンスイッチング回路の論理回路において実装された導線を備えるスイッチング信号経路を備え、スイッチング信号経路は、好ましくは、トランジスタゲートを使用することによって、異なる構成間で切り替え可能であるように構成され、各構成は、重みブロックのサブセット内に含まれるどの少なくとも1つのシナプス素子が、出力ブロック内に含まれるどの少なくとも1つのニューロンに電気的に接続されるかを決定する。
【0013】
[0013]本開示の第1の態様の一実施形態によれば、ニューロンスイッチング回路は、スイッチング信号経路を動的に再構成するように構成され、好ましくは、動的再構成は、ニューロシナプス配列の制約駆動型区分化及びセグメンテーションを組み込んだマッピング手法に基づき、好ましくは、セグメンテーションは、入力信号対雑音比への重みブロック及び出力ブロックサイズのマッチングに基づく。
【0014】
[0014]本開示の第1の態様の一実施形態によれば、ニューロシナプス配列のセグメンテーションは、ニューロシナプスサブ配列のうちの少なくとも2つが、1つ以上の学習則、学習率及び/又は(後)可塑性機構((post-) plasticity mechanisms)に関して別個であるように、1つ以上の学習則、学習率及び/又は(後)可塑性機構に基づいて行われる。
【0015】
[0015]本開示の第1の態様の一実施形態によれば、重みブロックのうちの少なくとも1つは、ニューロシナプス配列内のシナプス素子の切り替え及び/又は組み合わせを容易にするように、インターリーブされた構造として編成され、及び/又は、各出力ブロックについて、切り替えは、より高いマッピング柔軟性を得るように、独立して制御可能であり、及び/又は、出力ブロックのうちの少なくとも1つは、インターリーブされた構造として編成され、及び/又は、出力ブロックのうちのいずれかのニューロン出力は、1つ又は複数のニューロシナプスサブ配列にブロードキャストされる。
【0016】
[0016]本開示の第1の態様の一実施形態によれば、出力ブロックのうちの1つ内のニューロンの各々は、電位における段階的なアナログ変化として受動的に伝導する。
【0017】
[0017]本開示の第1の態様の一実施形態によれば、ニューロシナプス配列は、ニューロシナプスサブ配列にセグメント化され、これらは、分離可能であり且つそれら自体の必須の回路を有し、及び/又は単一のモダリティを処理し、単一のモダリティに対して最適化されるように配置される。
【0018】
[0018]本開示の第1の態様の一実施形態によれば、長距離及び短距離の相互接続の両方が、異なるニューロシナプスサブ配列のニューロン間に存在し、より密度の高い接続性が、より遠位のニューロシナプスサブ配列間よりも、近位のニューロシナプスサブ配列間に存在する。
【0019】
[0019]本開示の第1の態様の一実施形態によれば、出力ブロックのうちの少なくとも1つは、出力ブロックのうちの少なくとも1つ内の特定のニューロンの蓄積期間(accumulation period)及び/又は積分定数が、制御信号を介して制御可能であるという点で、制御可能である。
【0020】
[0020]本開示の第1の態様の一実施形態によれば、ニューロンのうちの1つの、ニューロン膜電位が、キャパシタの両端の電圧として、若しくはデジタルラッチに記憶されたマルチビット変数として、アナログ領域において実装されるか、又はCMOS論理回路を使用して、デジタル領域において実装される。
【0021】
[0021]本開示の第2の態様によれば、スパイキングニューラルプロセッサが開示される。スパイキングニューラルプロセッサは、デジタル又はアナログデータをスパイクに符号化するデータ-スパイクエンコーダと、データ-スパイクエンコーダによって出力されたスパイクを入力とするように配置され、入力の結果として時空間スパイク列を出力するように配置された、本開示の第1の態様によるニューロシナプス配列と、ニューロシナプス配列から生じる時空間スパイク列を復号するように配置されたスパイクデコーダと、を備える。
【0022】
[0022]本開示の第3の態様によれば、ニューロシナプス配列を構成するための方法が開示される。ニューロシナプス配列は、複数のスパイキングニューロンと、ハードウェアにおいて少なくとも部分的に実装されるネットワークを形成するために、スパイキングニューロンを相互接続する複数のシナプス素子と、を備える。各シナプス素子は、複数の入力のうちの少なくとも1つからシナプス入力信号を受信し、シナプス出力信号を生成するために、シナプス入力信号に重みを適用するように適合され、これらシナプス素子は、各シナプス素子によって適用される重みを調整するように構成可能である。更に、スパイキングニューロンの各々は、シナプス素子のうちの1つ以上から、シナプス出力信号のうちの1つ以上を受信し、受信された1つ以上のシナプス出力信号に応答して、時空間スパイク列出力信号を生成するように適合される。
【0023】
[0023]この方法は、ニューロシナプス配列を、重みブロックと出力ブロックとに分割すること、各重みブロックは、シナプス素子のうちの1つ以上を備え、各出力ブロックは、ニューロンのうちの1つ以上と、ニューロンスイッチング回路と、を備える、と、各出力ブロックを、ニューロンスイッチング回路を介して、重みブロックのサブセットに電気的に接続可能にすることと、選択されたシナプス素子に電気的に接続されたニューロンのセットへのニューロシナプス配列の区分化を得るために、重みブロックのサブセット内に含まれる少なくとも1つのシナプス素子を、それぞれの出力ブロック内に含まれる少なくとも1つのニューロンに選択的に電気的に接続するように、ニューロンスイッチング回路を構成することと、を備える。
【0024】
[0024]
【0025】
[0025]本開示の第3の態様の一実施形態によれば、出力ブロックが電気的に接続される重みブロックのサブセットは、シナプス素子の配列内に1つ以上の複数の列を形成し、及び/又は、特定の重みブロックに含まれるシナプス素子は、ニューロシナプス配列の同じ行内に設けられる。
【0026】
[0026]本開示の第3の態様の一実施形態によれば、ニューロンスイッチング回路の各々は、ニューロンスイッチング回路の論理回路において実装された導線を備えるスイッチング信号経路を備え、スイッチング信号経路は、好ましくは、トランジスタゲートを使用することによって、異なる構成間で切り替え可能であるように構成され、各構成は、重みブロックのサブセット内に含まれるどの少なくとも1つのシナプス素子が、出力ブロック内に含まれるどの少なくとも1つのニューロンに電気的に接続されるかを決定する。
【0027】
[0027]次に、実施形態が、添付の概略図を参照して、単に例として説明され、ここで、対応する参照符号は、対応する部分を示す。
【図面の簡単な説明】
【0028】
【
図1】[0028]
図1は、n
2個のシナプスを有する正方形のニューロシナプス配列の略図を示す。
【
図2】[0029]
図2A~
図2Cは、再構成可能なニューロシナプス配列の編成の略図を示し、
図2Aでは、主要な編成上のユニットは、それぞれ、m個の重み及びm個のニューロンを収集する、重みブロックW
i,j及び出力ブロックO
jであり、
図2Bでは、重みブロックW
i,jの構造が示され、
図2Cでは、出力ブロックO
jの構造が示される。
【
図2D】[0030]
図2Dは、列/ニューロンデコーダにおけるニューロンスイッチング回路の可能な構成の例示的な実施形態を示す。
【
図3】[0031]
図3は、(例えば、
図2に示されるような)例示的な再構成可能な配列を複数のセグメント/サブ配列にどのように分割するかを概略的に示す。
【
図4】[0032]
図4A~
図4Dは、再構成可能なニューロシナプス配列の例示的な編成を概略的に示し、
図4Aでは、n
2個のシナプス及びn個のニューロン、
図4Bでは、
図4Aにおける配列を、n
2/2個のシナプス及び2×n個のニューロンをそれぞれ有する2つのセグメントに分割し、
図4Cでは、配列を、n
2/4個のシナプス及び4×n個のニューロンをそれぞれ有する4つのセグメントに分割し、
図4Dでは、配列を、n
2/8個のシナプス及び8×n個のニューロンをそれぞれ有する8つのセグメントに分割する。
【
図5】[0033]
図5は、再構成可能なニューロシナプス配列の編成の例示的な表現を示し、セグメント(サブ配列)の各々は、1ニューロン当たりの異なるシナプス数を有し得る。
【
図6A】[0034]
図6Aは、データ-スパイクエンコーダと、マルチセグメント化アナログ/混合信号ニューロシナプス配列と、スパイクデコーダと、を組み込んだスパイキングニューラルプロセッサの例示的な表現を示す。
【
図6B】[0035]
図6Bは、相互接続構造の例示的な表現を示す。
【発明を実施するための形態】
【0029】
[0036]これら図は、例示のみを目的とするものであり、特許請求の範囲によって規定される範囲又は保護の制限としての役割を果たすものではない。
【0030】
[0037]以下、特定の実施形態を更に詳細に説明する。しかしながら、これらの実施形態は、本開示の保護の範囲を限定するものとして解釈され得ないことを理解されたい。
【0031】
[0038]
図1は、n
2個のシナプスと、n個のニューロンと、を有する正方形のニューロシナプス配列100の略図を示す。ニューロシナプス配列100は、シナプス101を有するシナプス行列150と、ニューロン103を有するニューロン行160と、を備える。シナプス及びニューロンは、部分的に又は完全にハードウェアで実装され得る。
【0032】
[0039]シナプス行列150におけるシナプス101の各々は、それに帰属するある特定の重みwi,jを有し、ここで、iは、シナプス行列150のi番目の行を示し、jは、シナプス行列150のj番目の列を示す。シナプス行列150の各行は、それぞれの入力102によって駆動される。入力102は、電気信号であり、例えば、電圧又は電流スパイク(列)であり得る。シナプス行列150の各列jは、Njで示されるそれぞれの出力ニューロン103を駆動する。
【0033】
[0040]重みwi,jの各々は、シナプス行列150のi番目の行へのそれぞれの入力102と、シナプス行列150のj番目の列に接続されたニューロンNjとの間の接続の強度又は振幅を示す。換言すれば、重みwi,jが増大した場合、シナプス行列150の、i番目の行へのそれぞれの入力102と、j番目の列に接続されたニューロンNjとの間で、接続が強くなる。
【0034】
[0041]ニューロンの膜電荷に関連する、特定のニューロンNjの膜電位が特定の値(「閾値」と呼ばれる)に達すると、ニューロンは発火する。この電気信号は、電圧又は電流スパイクのいずれかとして表され、スパイクアウト線(spike out line)180を介して、SNNの別の部分に送られる。
【0035】
[0042]ニューロン行160は、例えば、特定のニューロン(複数可)103の蓄積期間及び/又は積分定数が、制御信号170を介して制御され得るという点で、制御され得る(1つの制御信号170のみが示されているが、各ニューロンについて1つ以上の別個の制御信号が存在し得る)。このようにして、シナプス行列150からの信号に対するニューロン103の反応が、制御され得る。
【0036】
[0043]この正方形のニューロシナプス配列は、US63/107,498に記載されているもの等のスパイキングニューラルネットワークハードウェアの一例であり、これは、いかなる任意の接続トポロジの実装も容易にするプログラム可能な相互接続構造を使用して接続されたスパイキングニューロン、シナプスの構成可能な配列を利用する。そこでは、n個のニューロン及びn2個のシナプスを駆動するn個の入力で構成される分散コンポーネントを使用した効率的なニューロシナプス配列が説明されており、即ち、このシステムは、配列の接合部において電子シナプスの存在を組み込み、一方、配列の周辺部は、生物学的ニューロンの細胞体及び軸索小丘のアクションを模倣するニューロン回路の行を含む。
【0037】
[0044]このような配列は、区分化され、セグメントの配列上にマッピングされ得、その各々が、スパイキングニューロンのプログラム可能なネットワークを含む。
【0038】
[0045]
図2A~
図2Cは、n
2個のシナプス素子と、n個のニューロンと、を備える再構成可能なニューロシナプス配列の編成の略図を示す。
図2Aでは、主要な編成上のユニットは、それぞれ、1×m個のシナプス素子及びm個のニューロンを収集する、重みブロック201及び出力ブロック202である。
【0039】
[0046]
図2Bは、入力線を有する単一の重みブロック201を示す。より大きいファンイン(fan-in)をサポートするために、複数のシナプス列にわたって分散された複数のシナプス素子のシナプス出力は、単一のニューロンに向けられ得、ニューロンの潜在的なファンインをn×m個の一意の入力に効果的に増大させる。これは、シナプスを重みブロックに収集することによって達成される。再構成可能なニューロシナプス配列の編成は、重みブロック内のシナプス素子の数mによって制御される可能なアーキテクチャの空間を記述し、m∈[1,n]であり、ここで、ニューロンへの最大ファンインは、n×mであり、入力ポートの数は、n×mであり、単一の入力スパイクを介してそれにブロードキャストされるニューロンの数は、n/mである。W
n,n/m重みブロックの数を増大させることは、入力が全てのマッピングされたニューロンの間で共有されないとき、より高いシナプス利用をもたらす。
【0040】
[0047]従って、重みブロック201におけるシナプス列(シナプス素子の列)の数は、
図2Bに示されるように、mに等しく、n/mは、ニューロシナプス配列150の各行における重みブロック201の総数であり、nは、シナプス行列150における列の総数である(正方形配列を仮定する)。重みブロックは、シナプス素子の複数の行並びにシナプス素子の複数の列を備え得るが、各重みブロック201における行の数は、この例では1である。各重みブロックは、W
ijとして示され、i∈[1,n]及びj∈[1,n/m]である。
【0041】
[0048]
図2Aは、簡略化のために、重みブロック201の各行について単一の入力線を図示するが、重みブロック201の各行は、実際には、複数の入力を受信し、例えば、m個のシナプス素子を備える重みブロック201は、
図2Bに示されるように、m個の入力を有し得、これにより、各行における重みブロック201は、m個の入力線に接続されることに留意されたい。同様に、
図2Aは、簡略化のために、重みブロック201の各列の出力を送信するための単一線を図示する。しかしながら、重みブロック201の各列は、実際には、複数の出力を生成し、例えば、m個のシナプス素子を備える重みブロック201は、
図2Bに示されるように、m個の出力を生成し得、これにより、各列における重みブロック201は、m個の出力線に接続される。
【0042】
[0049]
図2Cは、単一の出力ブロック202を示す。重みブロック201の列によって駆動される各出力ブロック202におけるニューロンの数は、mである。各出力ブロックは、O
iとして示され、i∈[1,n/m]である。
【0043】
[0050]従って、正方形の再構成可能なニューロシナプス配列は、サイズmのn/m個の出力ブロックに分割され得、ここで、m≦nである。このようにして、n個の一意の入力ポートと、m個のニューロンを備えるn/m個の出力ブロックと、を有する分離可能なニューロシナプス配列が形成される。
【0044】
[0051]これにより、一意の入力の総数は、増大され、個々のニューロンへのファンインを増大させるため、及び/又はスパイク分布においてより細分性(more granularity)を提供するためのいずれにも使用され得る。フィードバック結合は、リカレント型ネットワーク及び多層ネットワークの効率的なマッピングのために、配列を用いてグレースフルにスケーリングされる(gracefully scaled)。従って、行当たりの重みブロックの数n/mは、n2個のニューロシナプス配列の内部区分化を指定し、集合的に、一意の入力の数は、n×mに増大される。m=nの場合、各シナプスは、それ自体の専用入力ポートを有するが、m=1の場合、元のn2配列が得られ、従って、入力は、全てのニューロンにわたって共有される。
【0045】
[0052]
図2Bでは、単一の重みブロックW
i,jの構造が、再構成可能なニューロシナプス配列の編成について表されている。
【0046】
[0053]Wn,n/m個の重みブロックの各々は、配列編成に従い、即ち、i∈[1,n]としたiniで示される、m個の入力のセットが、重みブロックの行に沿ってブロードキャストされ、即ち、x∈[1,m]とした単一の入力
【0047】
【0048】
が、n/m個のニューロンに直接分配される。
【0049】
[0054]重みブロックWi,j(i∈[1,n]及びj∈[1,n/m]である)のx番目のシナプス素子(x∈[1,m]である)は、
【0050】
【0051】
で示される。i∈[1,n]としたiniで示される、m個の入力のセットは、シナプス素子のi番目の行に沿ってブロードキャストされ、即ち、m個の入力のセットにおける、x∈[1,m]とした単一の入力
【0052】
【0053】
は、n/m個のニューロンに分配される。
【0054】
[0055]
図2Cでは、出力ブロックO
jの構造が、再構成可能なニューロシナプス配列の編成について示されている。
【0055】
[0056]重みブロック201の列は、出力ブロック202に接続可能な複数のシナプス列を備え、シナプス列からの出力252を、列/ニューロンデコーダ250へと渡す。列/ニューロンデコーダ250は、シナプス列出力252を、出力ブロック202のニューロン254の1つ以上のセットに接続するためのスイッチング回路260を含み、スイッチング回路260は、1つ以上のセレクト信号251によって制御される。列/ニューロンデコーダ250から出てくる切り替えられた信号は、j∈[1,n/m]とした出力ブロックOjについて、x∈[1,m]とした
【0056】
【0057】
で示される1つ以上のニューロン254に切り替えられており、異なる組合せのニューロン又は異なるセットのニューロンへのシナプス列出力252の接続を可能にする。
【0058】
[0057]セレクト信号251は、列/ニューロンデコーダ250が、シナプス列出力252を、出力ブロック202のニューロン254の1つのセットからニューロン254の別のセットにどのように切り替えるかを選択するために使用され得る。1つ以上のニューロン制御信号253は、ニューロンセット254の動作特性又は個々のニューロンの動作特性を決定するために使用され得る。
【0059】
[0058]
図2Dでは、4つのシナプス列270が、列/ニューロンデコーダ250への入力として機能するときの、列/ニューロンデコーダ250におけるニューロンスイッチング回路260の可能な構成の例示的な実施形態が示される。この例では、列/ニューロンデコーダ250は、示されるように、4つの隣接するシナプス列270の各グループに、4つの可能な出力ニューロン構成280を提供するように配置され、即ち、4つのシナプス列は、それらの出力を、出力ブロック202のニューロン254の4つの異なるセットに選択的に向けられ得る。列/ニューロンデコーダ250は、異なる数のシナプス列270及び出力ニューロン254と接続され得、シナプス列及び出力ニューロンの数が異なり得、出力ニューロン構成280の数及び配置が異なり得る。
【0060】
[0059]次に、ニューロンスイッチング回路260の4つの構成280が説明される。第1の構成では、4つのシナプス列270は、スイッチング信号経路261を介して、4つの出力ニューロンへのそれぞれの入力として機能する。第2の構成では、4つのシナプス列270のうちの2つの対が、スイッチング信号経路261を介して、出力ニューロンの2つのセットへの入力として機能し、即ち、シナプス列i0及びi1が、出力ニューロンo0に供給し(serve)、シナプス列i2及びi3が、出力ニューロンo2に供給する。第3の構成では、3つのシナプス列i0、i1及びi2が、1つの出力ニューロンセットo0に供給し、残りのシナプス列i3が、スイッチング信号経路261を介して、出力ニューロンo3に供給する。第4の構成では、4つのシナプス列全てが、スイッチング信号経路261を介して、単一の出力ニューロンセットo0に供給する。
【0061】
[0060]スイッチング信号経路261は、スイッチング回路260の論理回路に実装された導電経路を備え得、それらは、例えば、構成可能な又は固定されたトランジスタゲートによって、特定の実装形態において、異なる構成間で切り替えられ得る。スイッチング信号経路261の特定の接続は、ニューロシナプス配列の初期製造時に、例えば、工場において設定され得、及び/又は、列/ニューロンデコーダ250及び/又はニューロンスイッチング回路260のプログラミング又は他の構成を介して、オンザフライで設定され得る。ニューロンスイッチング回路260は、例えば、ニューロシナプス配列の動作中に、スイッチング信号経路261を動的に再構成し得る。上述したように、1つ以上のセレクト信号251は、列/ニューロンデコーダ250が、ニューロン254の1つのセットからニューロン254の別のセットにどのように切り替わるかを選択するために使用され得る。動的再構成は、セグメントの制約駆動型区分化及びマッピングを組み込んだある特定のマッピング手法に基づき得、その例示的な実施形態が、以下で更に説明される。例えば、動的再構成は、ニューロシナプス配列における特定のセグメントの信号対雑音比S/Nに基づいて行われ得る。これについては、以下で更に説明される。
【0062】
[0061]従って、ニューロンスイッチング回路260は、どのシナプス列270が、どの出力ニューロンセット280に出力を送るかを決定する。換言すれば、ニューロンスイッチング回路260は、従って-ニューロンスイッチング回路260の現在アクティブな構成の結果として-ニューロシナプス配列の特定のセグメンテーションを実施する。
【0063】
[0062]より大きいファンインをサポートするために、重みブロックWn,n/mは、m個の隣接するシナプス列の切り替え/組み合わせを容易にするように、インターリーブされた構造として編成され得る。n/m個のニューロンスイッチの各セットについての構成は、より高いマッピング柔軟性のために独立して制御され得る。層間結合又はリカレントスパイクのレイテンシに敏感なルーティングの場合、いくつかのオプションが考えられ得、例えば、出力ニューロンiと選択された入力との間の直接経路を提供すること、入力が任意のグループに迅速にルーティングされ得るように、ニューロングループ又はセットの、インターリーブされた編成を利用すること、ニューロン出力が個々の又は複数のグループに自動的にブロードキャストされ得る、配列へのスパイクの柔軟な注入を提供することである。
【0064】
[0063]配列をセグメント化することは、パフォーマンスの信頼性及びロバスト性の観点から均一性を可能にし、即ち、セグメンテーションは、(i)ロバストな電力分配((抵抗を下げるための)垂直方向に広い金属バスが、IRドロップの懸念を軽減するために、シナプス行境界において配置され得る)を可能にする、(ii)重み保持回路へのアクセスのためのインターフェースがクロックを必要とする場合、セグメンテーションは、クロックリバッフィング戦略(clock rebuffing strategy)のために必要とされる階層を作成する、(iii)セグメンテーションは、信号インテグリティを改善する-大きい駆動強度を有する単一の前シナプス(pre-synapse)の代わりに、セグメンテーションは、信号が各セグメントの後にリバッフィング/増幅され得るので、分散型アプローチを可能にする、(iv)セグメンテーションは、配列内の可観測性を増大させ、検証プロセスを簡略化する。
【0065】
[0064]
図3は、(例えば、
図2に示されるような)例示的な再構成可能な配列を、複数のセグメント/サブ配列にどのように分割するかを概略的に示す。
【0066】
[0065]第1のサブ配列301は、重みブロックWijを備え、i∈[1,n]及びj∈[1,x]である。第2のサブ配列302は、重みブロックWijを備え、i∈[1,n]及びj∈[x+1,y]である。最後のサブ配列303は、重みブロックWijを備え、i∈[1,n]及びj∈[z+1,n/m]である。ここで、x、y、zは、自然数であり、x≦y≦z≦n/mである。より多くのサブ配列が存在し得る。いくつかのn個の入力線304が、異なる重みブロックに供給する。重みブロックWi,jの各々は、出力ブロックOjに接続される。各サブ配列は、それぞれサブ配列301、302、303の出力ブロック305、306、307としてセグメント化されたいくつかの出力ブロックを備え得る。特定のニューロンNjの膜電位(これは、ニューロンの膜電荷に関連する)が特定の値に達すると、ニューロンは発火する。この電気信号は、電圧又は電流スパイクのいずれかとして表され、スパイクアウト線309を介して、SNNの別の部分に送られる。
【0067】
[0066]出力ブロックの各々は、例えば、特定のニューロン(複数可)の蓄積期間及び/又は積分定数が、制御信号308を介して制御され得るという点で、制御され得る。このようにして、サブ配列301、302、303における重みブロックからの信号に対するニューロンの反応が、制御され得る。
【0068】
[0067]前述のように、SNNによって必要とされる基本動作は、アナログ電子回路によって非常に効率的に実現されるが、製造上の不一致が、それらの機能特性における歪みを誘発する。特に、より小さい製造プロセスジオメトリ及びより低い動作電流では、これらの回路は、量子効果及び外部雑音にますます影響されやすく、これは、信号対雑音比を効果的に低減し、処理パフォーマンスを制限する。これらの非理想性の影響は、ドライバ、バイアシング、並びにニューロン及びシナプスが、より長い相互接続を介して、より多数のデバイスによって共有される、大きい配列の場合に増大する。大きい配列を、それら自体の必須の回路をそれぞれ有するより小さいセグメント(サブ配列)に区分化することは、マッピング手法が、セグメントの制約駆動型区分化及びマッピングを組み込む場合、パフォーマンスの均一性を可能にし、これらの非理想性を緩和する。
【0069】
[0068]一実施形態では、セグメントは、ターゲット信号処理機能の特性(例えば、利得、フィルタリング、乗算、加算)、又は動作の周波数/時定数に基づいて編成され得る。
【0070】
[0069]別の実施形態では、ニューロシナプス配列の異なる領域/セグメントは、ターゲットアプリケーションケース、前処理信号チェーン/経路におけるチャネルの数、対象となる周波数帯域、特徴セットの複雑さ及び特性、又はシステムのターゲット信号対雑音比に基づいて構成され得る。
【0071】
[0070]別の実施形態では、セグメントは、生物物理学的/化学的に着想された定義(例えば、時空間的(長期及び短期)評価、老化アーチファクト、脳通信コスト及び領域/層)に基づいて編成され得る。
【0072】
[0071]別の実施形態では、セグメントは、学習則、学習率及び関連付けられたコストベースの機構若しくは(後)可塑性機構に基づいて、又は事前定義された性能指数(Figure of Merit)パフォーマンスベースの定義に基づいて、定義され得る。
【0073】
[0072]別の実施形態では、ニューロシナプス配列内のセグメントは、ホメオスタシス調節(homeostatic regulation)(ローカル及びグローバル)要件、又は誤差伝播/較正能力及び機構制限、又は興奮性/抑制性比、クロストーク、又はネットワーク飽和機構等の制限機構に基づいて構成され得る。
【0074】
[0073]
図4A~
図4Dは、再構成可能なニューロシナプス配列400の例示的な編成を概略的に示し、
図4Aでは、n
2個のシナプス401及びn個のニューロン402、
図4Bでは、
図4Aにおける配列400を、n
2/2個のシナプス及び2×n個のニューロンをそれぞれ有する2つのセグメントに分割し、
図4Cでは、配列400を、n
2/4個のシナプス401及び4×n個のニューロン402をそれぞれ有する4つのセグメントに分割し、
図4Dでは、配列400を、n
2/8個のシナプス401及び8×n個のニューロン402をそれぞれ有する8つのセグメントに分割する。
【0075】
[0074]ニューロシナプスセグメントは、(
図1~
図3、
図4A中のように)n
2個のシナプス及びn個のニューロンを駆動する、n個の入力で構成され得る。樹状突起/配列の距離を低減することによって、複合体及びコンパートメントは、遅延を短縮し、雑音を低減し、即ち、電力消費を低減し、同じ面積に対するシナプス結合当たりのニューロン数を増大させるために、
図4A中の配列は、n
2/2個のシナプス及びn個のニューロンをそれぞれ有する2つのセグメント(
図4B)に再分割され得、従って、2つのセグメントにわたる総シナプス数は、同じままである一方で、ニューロンの数は2倍になる。同様に、
図4A中の配列を、それぞれ、n
2/4個のシナプスをそれぞれ有する4つのセグメント(
図4C)に分割することは、総ニューロン数を4倍にし得、又は、n
2/8個のシナプスをそれぞれ有する8つのセグメント(
図4D)に分割することは、ニューロン数を8倍増大させ得る。
【0076】
[0075]配列の情報容量は、信号(S)対雑音(N)比S/Nに依存し、log2(1+S/N)として増大する。しかしながら、信号を配列に通すエネルギーコストは、√S/Nとして増大する。従って、√S/Nが増大するにつれて、配列の効率は低下し、即ち、単位固定コスト当たりの情報は上昇するが、全てのコンポーネントが同じ信号を送信しよう試みる。最適化が、これら2つの競合する傾向が均衡する場合に起こる。その結果、信号伝達コストに対する固定コストの比率が高いほど、より大きい最適な配列が得られる。
【0077】
[0076]最適な配列サイズはまた、システム全体にわたってパフォーマンスを最大にするために、コンポーネント間で割り振られたS/Nを分配することを考慮すると、回路の他の部分におけるコストにも依存する。
【0078】
[0077]
図5は、再構成可能なニューロシナプス配列500の編成の例示的な表現を示し、セグメント(サブ配列)501の各々は、1ニューロン当たりの異なるシナプス数を有し得る。セグメント501レベルでは、センサ出力の精度の向上、及び/又は、識別特徴の選択及び抽出能力の向上から利益を得るために、それぞれが単一のモダリティの処理に充てられる専用セグメントが定義され得る。
【0079】
[0078]セグメントの各々は、本発明の説明に従って定義される、1ニューロン当たりの異なるシナプス数を有し得、ここで、m=[1,.n]である。
【0080】
[0079]入力雑音が配列のS/Nによってアプローチされるべき境界を課すので、入力のS/Nは、配列の最適なサイズに大きな影響を及ぼす。これは、低い入力S/Nでの大きい配列と、最も効率的な配列のサイズとの有効性を低減させ、即ち、低いS/Nを有する入力は、より少ない情報を含み、より小さい配列は、より低い情報容量を有するので、最適な配列は、その容量をその入力に一致させるからである。配列サイズを入力S/Nに整合させることは、シンモルフォーシス(symmorphosis)の原理に従い、最適ソリューションを得るためにシステム内の容量を整合させる。E.R. Weibel, “Symmorphosis: On form and function in shaping life,” Cambridge, MA: Harvard University Press, 2000を参照。
【0081】
[0080]セグメント内のニューロン数を節約する(ただし、1つのコンポーネントが複数のタスクを準最適に行うことを阻止する)ために、ニューロン内の回路(複数可)の計算能力が向上されるべきであり、即ち、より多くの神経受容体(AMPA、NMDA、GABA)又はニューロンコンダクタンスベース(Na、Ca、K)の定義を、ニューロンの特定のモダリティに充て、従って、ニューロンの感度及び信号対雑音比を改善する。このようなニューロンは、機能を行うために、内部(神経受容体又はコンダクタンスベースの)回路を使用し得、これは、通常、いくつかのニューロンの回路を必要とする。
【0082】
[0081]ニューロモジュレータが、広範にブロードキャストされながらも、依然として局所的且つ特異的に作用し、適切な神経受容体を有するニューロンのみに影響を及ぼし得る。ニューロモジュレータの到達範囲は、その受容体が、異なるセグメント内信号伝達ネットワークに結合する複数のサブタイプに多様化するので、更に拡張される。その結果、小さい、ターゲットを絞った調整が、ネットワーク全体を再調整及び再構成し得、効率的な処理のモジュール性、及び他の信号処理機能が必要とされる場合のタスクリスケジューリングを可能にする。神経受容体は、電流の電圧依存性を変化させ、その後、活性化曲線及び不活性化曲線の形状に影響を及ぼす。
【0083】
[0082]各受容体は、関連付けられた非線形特性をモデル化するマルチ(トランス)コンダクタンスチャネル(multi-(trans)conductance channel)を表す。NMDA受容体は、シナプス重みの活動依存的な修飾(activity-dependent modifications)を提供し得、一方、AMPA受容体は、高速シナプス電流が細胞体を駆動することを可能にし得る。高速受容体修飾は、シナプス効力における活動依存的な変化についての制御機構として機能し得る。樹状突起状のスパイクのグループ(バースト)が特定のニューロンの閾値を超えるのに十分である場合、軸索は、活動電位を生成することになり、スパイクが樹状突起に送り返されることを確実にし、細胞体信号と共に乗算され、NMDA受容体信号に加算され、その後、重み制御を生成する。
【0084】
[0083]一般に、フィードバック信号は、利用可能な信号のサブセットであり得、システムパラメータのサブセットに作用し得る(即ち、摂動が補償されるときに、特定の固有特性を保持する)。T. O’Leary, A.H. Wiliams,A. France, E. Marder, “Cell types, network homeostasis, and pathological compensation from a biologically plausible ion channel expression model,” Neuron, vol. 82, pp. 809-821, 2014を参照。
【0085】
[0084]ネットワーク摂動が発生すると、ニューロン計算素子は、摂動の符号、強度、及び位相に基づいて、スパイクを生成する。ニューロンクラスタの共鳴反応が歪められるか、又は変化した場合、各ニューロンは、スパイキングの位相を調整する。その後、ニューロン計算素子は、時間依存計算を行い得る。
【0086】
[0085]十分に高いレベルの不均一性(例えば、積分容量、発火閾値、不応期等のニューロシナプスパラメータにおける増大した不均一性)では、ネットワークは、空間的に不規則なパターンのニューラル活動を示す。ネットワーク活動プロファイルが狭い場合、ネットワークによって符号化される空間刺激の分布における均一性の必要性が増大する。
【0087】
[0086]
図6Aは、1つ以上のデータ-スパイクエンコーダ606と、マルチセグメント化アナログ/混合信号ニューロシナプス配列607と、スパイクデコーダ611と、を組み込んだスパイキングニューラルプロセッサ600の例示的な表現を示す。
【0088】
[0087]データは、AER601、例えば、SPI602、I2C603及び/若しくはI/O(入力/出力)604等のインターフェース、並びに/又はプリプロセッサDSP/CPU605等、入力モジュールのための入力として使用される。これらの入力モジュールの出力は、1つ以上のデータ-スパイクエンコーダ606に送られる。1つ以上のデータ-スパイクエンコーダ606は、アナログ/混合信号ニューロシナプス配列607のための入力として使用されるスパイクにデータを符号化する。
【0089】
[0088]ニューロシナプス配列607によって出力されるスパイクは、スパイクデコーダ611によって復号され得る。パターンルックアップモジュール612が、スパイク出力信号内の特定のパターンを解釈するために使用され得る。次いで、復号されたスパイクは、1つ以上の出力インターフェース及び/又は割り込み論理(interrupt logic)613に送られ得る。構成及び制御モジュール614は、スパイキングニューラルプロセッサの異なる部分の構成及び制御、例えば、ニューロシナプス配列607内のシナプス素子及びニューロンの重み及び構成パラメータの設定を可能にする。
【0090】
[0089]ニューロシナプス配列607は、上述した実施形態のいずれかに従ってセグメント化され得る。特定のセグメント内のニューロンは、電位における段階的な(アナログ)変化として受動的に伝導し得、従って、アナログ計算のみに依拠し、これは、直接的且つエネルギー効率的である。短時間の、鋭い、エネルギー集約的な活動電位は、より長距離の信号伝達のために確保され、即ち、マルチセグメントアナログ/混合信号ニューロシナプス配列内の相互接続は、生物学的脳のパラダイムに従い、即ち、近位セグメント内/間では密な接続性であり、遠位セグメント間ではより密度が低い。従って、長距離相互接続610と短距離相互接続609との両方が、セグメント化されたニューロシナプス配列607内のニューロン間に存在し得る。
【0091】
[0090]
図6Bは、相互接続構造の例示的な表現を示す。
【0092】
[0091]先と同様に、長距離相互接続610と短距離相互接続609とが、ニューロシナプス配列607内の異なるセグメント608間に存在し得る。
【0093】
[0092]このような(デュアル)相互接続構造は、特有の設計目的に支配され、短距離通信609では、近位セグメント間の低レイテンシが優先され(高い接続密度で得られ)、一方、長距離通信610では、遠位セグメント間の高スループットがターゲットとされる。セグメントツーセグメント相互接続ファブリックは、デジタルCMOS論理で実装され得るが、ニューロシナプス配列自体は、例えば、アナログ/混合信号、デジタル、又は非揮発性メモリ技術を使用することによって実装され得る。
【0094】
[0093]その最も単純な形態では、ニューロン膜電位は、キャパシタの両端の電圧として、又はデジタルラッチに記憶されたマルチビット変数として、アナログ領域において実装され得る。代替として、デジタルニューロンは、加算器、乗算器、及びカウンタ等の、CMOS論理回路を使用して実現され得る。回路設計の観点から、シナプスは、入力スパイクを変調し、それらを電荷に変換し、それは結果として、シナプス後ニューロンの膜容量で積分されるシナプス後電流を作り出す。シリコンシナプスの実装は、典型的に、混合信号手法に従う。
【0095】
[0094]異なるタイプのシナプス伝達の時空間的な協調は、感覚信号及び関連付けられた学習パフォーマンスの推論の基礎である。強い入力の場合、ネットワークは、それ自体を動的状態に編成し、ここで、神経発火は、非同期不規則状態に似ている入力変動によって主に駆動され、即ち、時間的及びペアワイズスパイク数相互相関(temporal and pairwise spike count cross-correlations)がゼロに近づく。全ての入力シナプスの間での異シナプス性抑圧(heterosynaptic depression)は、ネットワーク内に安定した活動シーケンスを生成する。
【0096】
[0095]ニューロンは、時間ロックされたパターンを生成し、コンダクタンス遅延(及び可塑性規則)間の相互作用により、ネットワークは、ニューロングループ/セグメントのセットを利用し、これは、再現可能且つ正確な発火シーケンスを形成する。コンダクタンスが増大するにつれて(結果として、ネットワークへの正味興奮(net excitation)をもたらす)、発火率は、増大し得、より低い変動係数でより均一になり得る。ネットワークは、異なるセグメントにおいて規則的なタイミング関係(バースト間インターバル及びデューティサイクル)を有するスパイク列を生成し得る。
【0097】
[0096]低周波数同期挙動の同調化(entrainment)は、最適な、即ち、最も興奮性の位相が、進行中の入力刺激におけるイベントの時間的特性と整合するような、位相の再編成を含む。シナプス電流のシーケンス(即ち、外向き、内向き)は、個々のニューロンにおける活動電位の生成における時間的ジッタを低減し、その結果、活動の制御性が向上したネットワークを作成する。
【0098】
[0097]生物学的神経と従来の計算とのエネルギー効率及び認知パフォーマンスにおける大きな食い違いが、物理的周囲とのリアルタイムの相互作用に関連するタスク、特に、制御されていない又は雑音の多い感覚入力が存在下で、顕著に例示される。しかしながら、ニューロモルフィックイベントベースのニューロンネットワークは、例によって学習する能力、動作の並列性、連想メモリ、多因子最適化、及び拡張可能性により、複雑な感覚信号の統計値の変化を学習し、それに適応するコンパクで低電力の認知システムのための固有の選択肢である。
【0099】
[0098]ニューロモルフィックネットワークのための、このマルチセグメント再構成可能なアーキテクチャは、生物医学的信号のパターンを検出すること(例えば、スパイク分類、発作検出、等)、画像(例えば、手書き数字)を分類すること、音声命令に及ぶアプリケーションに対してエネルギー効率の良いソリューションを提供する設計を可能とし、サイバー物理システム及びモノのインターネットにおけるスマートセンサ又はウェアラブルデバイスを含む、広範囲のデバイスにおいて適用され得る。
【0100】
[0099]上記の実施形態のうちの2つ以上が、任意の適切な方法で組み合わされ得る。
【国際調査報告】