JP2016536657A - ニューラルモデルのためのグループタグの実装のための方法および装置 - Google Patents

ニューラルモデルのためのグループタグの実装のための方法および装置 Download PDF

Info

Publication number
JP2016536657A
JP2016536657A JP2016516530A JP2016516530A JP2016536657A JP 2016536657 A JP2016536657 A JP 2016536657A JP 2016516530 A JP2016516530 A JP 2016516530A JP 2016516530 A JP2016516530 A JP 2016516530A JP 2016536657 A JP2016536657 A JP 2016536657A
Authority
JP
Japan
Prior art keywords
population
parameters
artificial
synapses
group
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.)
Pending
Application number
JP2016516530A
Other languages
English (en)
Other versions
JP2016536657A5 (ja
Inventor
ジュリアン、デイビッド・ジョナサン
レビン、ジェフリー・アレキサンダー
ゲールハー、ジェフレイ・バギンスキー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2016536657A publication Critical patent/JP2016536657A/ja
Publication of JP2016536657A5 publication Critical patent/JP2016536657A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Feedback Control In General (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Nitrogen Condensed Heterocyclic Rings (AREA)

Abstract

本開示のいくつかの態様は、ニューロンおよび/またはシナプスをグループタグに割り当てることをサポートし、グループタグは、関連付けられるパラメータのセットを有する。グループタグを使用することによって、集団におけるニューロンまたはシナプスは、グループタグを割り当てられ得る。次いで、グループタグに関連付けられるパラメータを変更することによって、グループ内のすべてのシナプスまたはニューロンはそのパラメータを変更し得る。

Description

米国特許法第119条による優先権の主張
[0001]本出願は、2013年9月25日に出願された米国仮特許出願第61/882,465号、および2014年5月2日に出願された米国特許出願第14/268,152号の利益を主張し、その両方は、参照により全体が本明細書に組み込まれる。
[0002]本開示のいくつかの態様は、一般に人工神経系に関し、より詳細には、ニューロンおよびシナプスのためのグループタグを実装するための方法および装置に関する。
[0003]人工ニューロン(すなわち、ニューラル処理ユニット)の相互結合されたグループを備え得る人工ニューラルネットワークは、計算デバイスであるか、または計算デバイスによって実行される方法を表す。人工ニューラルネットワークは、生物学的ニューラルネットワークにおける対応する構造および/または機能を有し得る。しかしながら、人工ニューラルネットワークは、従来の計算技法が厄介、実行不可能または不適切であるいくつかの適用例に革新的で有用な計算技法を提供することができる。人工ニューラルネットワークが観測から機能を推論することができるので、そのようなネットワークは、タスクまたはデータの複雑さが従来の技法による機能の設計を面倒にする適用例において、特に有用である。
[0004]1つのタイプの人工ニューラルネットワークはスパイキングニューラルネットワークであり、これは、それの動作モデルならびにニューロンおよびシナプスの状態に時間の概念を組み込み、それによって、ニューラルネットワークにおける計算機能の発生元となり得る挙動の豊かなセットを提供する。スパイキングニューラルネットワークは、ニューロンがニューロンの状態に基づいて特定の(1つまたは複数の)時間に発火する、または「スパイクする」という概念、および時間がニューロン機能にとって重要であるという概念に基づく。ニューロンが発火するとき、そのニューロンは、他のニューロンに進むスパイクを生成し、他のニューロンは、今度は、このスパイクが受信された時間に基づいてそれらの状態を調整することができる。言い換えれば、ニューラルネットワークにおけるスパイクの相対的タイミングまたは絶対的タイミングで情報が符号化され得る。
[0005]本開示のいくつかの態様は、人工神経系を操作するための方法を提供する。本方法は、一般に、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることと、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てることと、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することとを含む。
[0006]本開示のいくつかの態様は、人工神経系を操作するための装置を提供する。本装置は、一般に、処理システムと、処理システムに結合されたメモリとを含む。本処理システムは、典型的に、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てて、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てて、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するように構成される。
[0007]本開示のいくつかの態様は、人工神経系を操作するための装置を提供する。本装置は、一般に、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てるための手段と、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てるための手段と、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける一手段、またはより多くのシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するための手段とを含む。
[0008]本開示のいくつかの態様は、人工神経系を操作するためのコンピュータプログラム製品を提供する。本コンピュータプログラム製品は、一般に、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることと、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てることと、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することとを行うために実行可能な命令を有するコンピュータ可読媒体を含む。
[0009]本開示のいくつかの態様は、人工神経系を操作するための方法を提供する。本方法は、一般に、人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送ることとを含む。
[0010]本開示のいくつかの態様は、人工神経系を操作するための装置を提供する。本装置は、一般に、処理システムと、処理システムに結合されたメモリとを含む。本処理システムは、典型的に、人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てて、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送るように構成される。
[0011]本開示のいくつかの態様は、人工神経系を操作するための装置を提供する。本装置は、一般に、人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てるための手段と、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送るための手段とを含む。
[0012]本開示のいくつかの態様は、人工神経系を操作するためのコンピュータプログラム製品を提供する。本コンピュータプログラム製品は、一般に、人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送ることとを行うために実行可能な命令を有するコンピュータ可読媒体を含む。
[0013]本開示の上述の特徴が詳細に理解され得るように、添付の図面にその一部が示される態様を参照することによって、上記で簡単に要約された内容のより具体的な説明が得られ得る。ただし、その説明は他の等しく有効な態様に通じ得るので、添付の図面は、本開示のいくつかの典型的な態様のみを示し、したがって、本開示の範囲を限定するものと見なされるべきではないことに留意されたい。
[0014]本開示のいくつかの態様によるニューロンの例示的なネットワークを示す図。 [0015]本開示のいくつかの態様による、計算ネットワーク(ニューラルシステムまたはニューラルネットワーク)の例示的な処理ユニット(ニューロン)を示す図。 [0016]本開示のいくつかの態様による例示的なスパイクタイミング依存可塑性(STDP)曲線を示す図。 [0017]本開示のいくつかの態様による、ニューロンの挙動を定義するための正レジームと負レジームとを示す、人工ニューロンに関する状態の例示的なグラフ。 [0018]本開示のいくつかの態様による、人工神経系を操作するための例示的な動作の流れ図。 [0019]図5に示す動作を実行することが可能な例示的な手段を示す図。 [0020]本開示のいくつかの態様による、人工神経系を操作するための別の例示的な動作の流れ図。 [0021]図6に示される動作を実行することが可能な例示的な手段を示す図。 [0022]本開示のいくつかの態様による、汎用プロセッサを使用して人工神経系を操作するための例示的な実装形態を示す図。 [0023]本開示のいくつかの態様による、メモリが個々の分散処理ユニットとインターフェースされ得る人工神経系を操作するための例示的な実装形態を示す図。 [0024]本開示のいくつかの態様による、分散メモリおよび分散処理ユニットに基づいて人工神経系を操作するための例示的な実装形態を示す図。 [0025]本開示のいくつかの態様による、ニューラルネットワークの例示的な実装形態を示す図。
[0026]添付の図面を参照しながら本開示の様々な態様について以下でより十分に説明する。ただし、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示される任意の特定の構造または機能に限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるように与えられる。本明細書の教示に基づいて、本開示の範囲は、本開示の任意の他の態様とは無関係に実装されるにせよ、本開示の任意の他の態様と組み合わされるにせよ、本明細書で開示する本開示のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。たとえば、本明細書に記載される態様をいくつ使用しても、装置は実装され得、または方法は実施され得る。さらに、本開示の範囲は、本明細書に記載される本開示の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示する本開示のいずれの態様も、請求項の1つまたは複数の要素によって実施され得ることを理解されたい。
[0027]「例示的」という単語は、本明細書では「例、事例、または例示の働きをすること」を意味するために使用される。「例示的」として本明細書で説明するいかなる態様も、必ずしも他の態様よりも好ましいまたは有利であると解釈されるべきであるとは限らない。
[0028]本明細書では特定の態様について説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好ましい態様のいくつかの利益および利点が説明されるが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、様々な技術、システム構成、ネットワーク、およびプロトコルに広く適用可能であるものとし、そのうちのいくつかを例として図および好ましい態様についての以下の説明で示す。発明を実施するための形態および図面は、本開示を限定するものではなく説明するものにすぎず、本開示の範囲は添付の特許請求の範囲およびそれの均等物によって定義される。
例示的なニューラルシステム
[0029]図1は、本開示のいくつかの態様による、複数のレベルのニューロンをもつ例示的なニューラルシステム100を示す。ニューラルシステム100は、シナプス結合のネットワーク104(すなわち、フィードフォワード結合)を介してニューロンの別のレベル106に結合されたニューロンのあるレベル102を備え得る。簡単のために、図1には2つのレベルのニューロンのみが示されているが、典型的なニューラルシステムには、より少ないまたはより多くのレベルのニューロンが存在し得る。ニューロンのいくつかは、ラテラル結合を介して同じ層の他のニューロンに結合し得ることに留意されたい。さらに、ニューロンのいくつかは、フィードバック結合を介して前の層のニューロンに戻る形で結合し得る。
[0030]図1に示すように、レベル102における各ニューロンは、前のレベル(図1に図示せず)の複数のニューロンによって生成され得る入力信号108を受信し得る。信号108は、レベル102のニューロンへの入力(たとえば、入力電流)を表し得る。そのような入力は、膜電位を充電するためにニューロン膜上に蓄積され得る。膜電位がそれのしきい値に達すると、ニューロンは、発火し、ニューロンの次のレベル(たとえば、レベル106)に転送されるべき出力スパイクを生成し得る。そのような挙動は、アナログおよびデジタル実装形態を含むハードウェアおよび/またはソフトウェアでエミュレートまたはシミュレートされ得る。
[0031]生物学的ニューロンでは、ニューロンが発火するときに生成される出力スパイクは、活動電位と呼ばれる。電気信号は、約100mVの振幅と約1msの持続時間とを有する比較的急速で、一時的で、全か無かの神経インパルスである。一連の結合されたニューロンを有するニューラルシステムの特定の態様(たとえば、図1におけるあるレベルのニューロンから別のレベルのニューロンへのスパイクの転送)では、あらゆる活動電位が基本的に同じ振幅と持続時間とを有するので、信号における情報は、振幅によってではなく、スパイクの周波数および数(またはスパイクの時間)によってのみ表される。活動電位によって搬送される情報は、スパイク、スパイクしたニューロン、および1つまたは複数の他のスパイクに対するスパイクの時間によって決定される。
[0032]図1に示すように、あるレベルのニューロンから別のレベルのニューロンへのスパイクの転送は、シナプス結合(または単に「シナプス」)のネットワーク104によって達成され得る。シナプス104は、レベル102のニューロン(シナプス104に対するシナプス前ニューロン)から出力信号(すなわち、スパイク)を受信し得る。いくつかの態様では、これらの信号は、調整可能なシナプス重み
Figure 2016536657
(ここでPは、レベル102のニューロンとレベル106のニューロンとの間のシナプス結合の総数である)に従ってスケーリングされ得る。他の態様では、シナプス104は、いかなるシナプス重みをも適用しないことがある。さらに、(スケーリングされた)信号は、レベル106における各ニューロン(シナプス104に対するシナプス後ニューロン)の入力信号として合成され得る。レベル106におけるあらゆるニューロンは、対応する合成された入力信号に基づいて、出力スパイク110を生成し得る。出力スパイク110は、次いで、シナプス結合の別のネットワーク(図1には図示せず)を使用して、別のレベルのニューロンに転送され得る。
[0033]生物学的シナプスは、電気シナプスまたは化学シナプスのいずれに分類され得る。電気シナプスは、興奮性信号を送るために主に使用される一方、化学シナプスは、シナプス後ニューロンにおける興奮性活動または抑制性(過分極化)活動のいずれかを調停することができ、ニューロン信号を増幅する役目を果たすこともできる。興奮性信号は通常、膜電位を脱分極する(すなわち、静止電位に対して膜電位を増加させる)。しきい値を超えて膜電位を脱分極するために十分な興奮性信号が一定期間内に受信された場合、シナプス後ニューロンに活動電位が生じる。対照的に、抑制性信号は一般に、膜電位を過分極する(すなわち、低下させる)。抑制性信号は、十分に強い場合、興奮性信号のすべてを相殺し、膜電位がしきい値に達するのを防止することができる。シナプス興奮を相殺することに加えて、シナプス抑制は、自然に活発なニューロンに対して強力な制御を行うことができる。自然に活発なニューロンは、たとえば、それのダイナミクスまたはフィードバックに起因するさらなる入力なしにスパイクするニューロンを指す。これらのニューロンにおける活動電位の自然な生成を抑圧することによって、シナプス抑制は、一般にスカルプチャリングと呼ばれる、ニューロンの発火のパターンを形成することができる。様々なシナプス104は、望まれる挙動に応じて、興奮性シナプスまたは抑制性シナプスの任意の組合せとして働き得る。
[0034]ニューラルシステム100は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス(PLD)、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、プロセッサによって実行されるソフトウェアモジュール、またはそれらの任意の組合せによってエミュレートされ得る。ニューラルシステム100は、たとえば画像およびパターン認識、機械学習、モータ制御など、かなりの適用範囲において利用され得る。ニューラルシステム100における各ニューロンは、ニューロン回路として実装され得る。出力スパイクを開始するしきい値まで充電されるニューロン膜は、たとえば、そこを通って流れる電流を積分するキャパシタとして実装され得る。
[0035]一態様では、キャパシタは、ニューロン回路の電流積分デバイスとして除去され得、その代わりにより小さいメモリスタ(memristor)要素が使用され得る。この手法は、ニューロン回路において、ならびにかさばるキャパシタが電流積分器として利用される様々な他の適用例において適用され得る。さらに、シナプス104の各々は、メモリスタ要素に基づいて実装され得、シナプス重みの変化は、メモリスタ抵抗の変化に関係し得る。ナノメートルの特徴サイズのメモリスタを用いると、ニューロン回路およびシナプスの面積が大幅に低減され得、それによって、非常に大規模なニューラルシステムハードウェア実装形態の実装が実用的になり得る。
[0036]ニューラルシステム100をエミュレートするニューラルプロセッサの機能は、ニューロン間の結合の強さを制御し得る、シナプス結合の重みに依存し得る。シナプス重みは、パワーダウン後にプロセッサの機能を維持するために、不揮発性メモリに記憶され得る。一態様では、シナプス重みメモリは、主たるニューラルプロセッサチップとは別個の外部チップ上に実装され得る。シナプス重みメモリは、交換可能メモリカードとしてニューラルプロセッサチップとは別個にパッケージ化され得る。これは、ニューラルプロセッサに多様な機能を提供することができ、特定の機能は、ニューラルプロセッサに現在取り付けられているメモリカードに記憶されたシナプス重みに基づき得る。
[0037]図2は、本開示のいくつかの態様による、計算ネットワーク(たとえば、ニューラルシステムまたはニューラルネットワーク)の処理ユニット(たとえば、人工ニューロン202)の一例200を示す。たとえば、ニューロン202は、図1のレベル102のニューロンおよび106のニューロンのうちのいずれかに対応し得る。ニューロン202は、ニューラルシステムの外部にある信号、または同じニューラルシステムの他のニューロンによって生成された信号、またはその両方であり得る、複数の入力信号2041〜204N(x1〜xN)を受信し得る。入力信号は、電流または電圧、実数値または複素数値であり得る。入力信号は、固定小数点表現または浮動小数点表現をもつ数値を備え得る。これらの入力信号は、調整可能なシナプス重み2061〜206N(w1〜wN)に従って信号をスケーリングするシナプス結合を通してニューロン202に伝えられ得、Nはニューロン202の入力接続の総数であり得る。
[0038]ニューロン202は、スケーリングされた入力信号を合成し、合成された、スケーリングされた入力を使用して、出力信号208(すなわち、信号y)を生成し得る。出力信号208は、電流または電圧、実数値または複素数値であり得る。出力信号は、固定小数点表現または浮動小数点表現をもつ数値を備え得る。出力信号208は、次いで、同じニューラルシステムの他のニューロンへの入力信号として、または同じニューロン202への入力信号として、またはニューラルシステムの出力として伝達され得る。
[0039]処理ユニット(ニューロン202)は電気回路によってエミュレートされ得、それの入力接続および出力接続は、シナプス回路をもつワイヤによってエミュレートされ得る。処理ユニット、それの入力接続および出力接続はまた、ソフトウェアコードによってエミュレートされ得る。処理ユニットはまた、電気回路によってエミュレートされ得るが、それの入力接続および出力接続はソフトウェアコードによってエミュレートされ得る。一態様では、計算ネットワーク中の処理ユニットはアナログ電気回路を備え得る。別の態様では、処理ユニットはデジタル電気回路を備え得る。さらに別の態様では、処理ユニットは、アナログ構成要素とデジタル構成要素の両方をもつ混合信号電気回路を備え得る。計算ネットワークは、上述の形態のいずれかにおける処理ユニットを備え得る。そのような処理ユニットを使用した計算ネットワーク(ニューラルシステムまたはニューラルネットワーク)は、たとえば画像およびパターン認識、機械学習、モータ制御など、かなりの適用範囲において利用され得る。
[0040]ニューラルネットワークをトレーニングする過程で、シナプス重み(たとえば、図1の重み
Figure 2016536657
および/または図2の重み2061〜206N)がランダム値により初期化され得、学習ルールに従って増加または減少し得る。学習ルールのいくつかの例として、スパイクタイミング依存可塑性(STDP)学習ルール、Hebb則、Oja則、Bienenstock−Copper−Munro(BCM)則などがある。非常に多くの場合、重みは、2つの値のうちの1つに安定し得る(すなわち、重みの双峰分布)。この効果が利用されて、シナプス重み当たりのビット数を低減し、シナプス重みを記憶するメモリとの間の読取りおよび書込みの速度を上げ、シナプスメモリの電力消費量を低減し得る。
シナプスタイプ
[0041]ニューラルネットワークのハードウェアおよびソフトウェアモデルでは、シナプス関係機能の処理がシナプスタイプに基づき得る。シナプスタイプは、非塑性シナプス(non-plastic synapse)(重みおよび遅延の変化がない)と、可塑性シナプス(重みが変化し得る)と、構造遅延可塑性シナプス(重みおよび遅延が変化し得る)と、完全可塑性シナプス(重み、遅延および結合性が変化し得る)と、それの変形(たとえば、遅延は変化し得るが、重みまたは結合性の変化はない)とを備え得る。これの利点は、処理が再分割され得ることである。たとえば、非塑性シナプスは、可塑性機能を実行すること(またはそのような機能が完了するのを待つこと)を必要とし得ない。同様に、遅延および重み可塑性は、一緒にまたは別々に、順にまたは並列に動作し得る動作に再分割され得る。異なるタイプのシナプスは、適用される異なる可塑性タイプの各々の異なるルックアップテーブルまたは式およびパラメータを有し得る。したがって、本方法は、シナプスのタイプの関係するテーブルにアクセスすることになる。
[0042]また、スパイクタイミング依存構造可塑性がシナプス可塑性とは無関係に実行され得るという事実のさらなる含意がある。構造可塑性(すなわち、遅延量の変化)は前後スパイク時間差(pre-post spike time difference)の直接関数であり得るので、構造可塑性は、重みの大きさに変化がない場合(たとえば、重みが最小値または最大値に達したか、あるいはそれが何らかの他の理由により変更されない場合)でも実行され得る。代替的に、それは、重み変化量に応じて、または重みもしくは重み変化の限界に関係する条件に基づいて設定され得る。たとえば、重み変化が生じたとき、または重みが最大限に達するのではなく、重みがゼロに達した場合のみ、シナプス遅延が変化し得る。しかしながら、これらのプロセスが並列化され、メモリアクセスの数および重複を低減し得るように、独立した機能を有することが有利であり得る。
シナプス可塑性の決定
[0043]神経可塑性(または単に「可塑性」)は、脳内のニューロンおよびニューラルネットワークがそれらのシナプス結合と挙動とを新しい情報、感覚上の刺激、発展、損傷または機能不全に応答して変える能力である。可塑性は、生物学における学習および記憶にとって、また計算論的神経科学およびニューラルネットワークにとって重要である。(たとえば、Hebb則理論による)シナプス可塑性、スパイクタイミング依存可塑性(STDP)、非シナプス可塑性、活性依存可塑性、構造可塑性および恒常的可塑性など、様々な形の可塑性が研究されている。
[0044]STDPは、脳内の場合のようなニューロン間のシナプス結合の強さを調整する学習プロセスである。結合強度は、特定のニューロンの出力スパイクおよび受信入力スパイク(すなわち、活動電位)の相対的タイミングに基づいて調整される。STDPプロセスの下で、あるニューロンに対する入力スパイクが、平均して、そのニューロンの出力スパイクの直前に生じる傾向がある場合、長期増強(LTP)が生じ得る。その場合、その特定の入力はいくらか強くなる。対照的に、入力スパイクが、平均して、出力スパイクの直後に生じる傾向がある場合、長期抑圧(LTD)が生じ得る。その場合、その特定の入力はいくらか弱くなるので、「スパイクタイミング依存可塑性」と呼ばれる。したがって、シナプス後ニューロンの興奮の原因であり得る入力は、将来的に寄与する可能性がさらに高くなる一方、シナプス後スパイクの原因ではない入力は、将来的に寄与する可能性が低くなる。結合の初期セットのサブセットが残る一方で、その他の部分の影響がゼロまたはゼロの近くまで低減されるまで、このプロセスは続く。
[0045]ニューロンは一般に出力スパイクを、それの入力の多くが短い期間内に生じる(すなわち、出力をもたらすのに十分に累積している)ときに生成するので、通常残っている入力のサブセットは、時間的に相関する傾向のあった入力を含む。さらに、出力スパイクの前に生じる入力は強化されるので、最も早い十分に累積的な相関指示を提供する入力は結局、ニューロンへの最終入力となる。
[0046]STDP学習ルールは、シナプス前ニューロンのスパイク時間tpreとシナプス後ニューロンのスパイク時間tpostとの間の時間差(すなわち、t=tpost−tpre)に応じて、シナプス前ニューロンをシナプス後ニューロンに結合するシナプスのシナプス重みを効果的に適合させ得る。STDPの通常の公式化は、時間差が正である(シナプス前ニューロンがシナプス後ニューロンの前に発火する)場合にシナプス重みを増加させ(すなわち、シナプスを増強し)、時間差が負である(シナプス後ニューロンがシナプス前ニューロンの前に発火する)場合にシナプス重みを減少させる(すなわち、シナプスを抑制する)ことである。
[0047]STDPプロセスでは、経時的なシナプス重みの変化は通常、以下の式によって与えられるように、指数関数的減衰を使用して達成され得る。
Figure 2016536657
ここで、k+およびk-はそれぞれ、正の時間差および負の時間差の時間定数であり、a+およびa-は対応するスケーリングの大きさであり、μは正の時間差および/または負の時間差に適用され得るオフセットである。
[0048]図3は、STDPによる、シナプス前スパイクおよびシナプス後スパイクの相対的タイミングに応じたシナプス重み変化の例示的なグラフ300を示す。シナプス前ニューロンがシナプス後ニューロンの前に発火する場合、グラフ300の部分302に示すように、対応するシナプス重みは増加し得る。この重み増加は、シナプスのLTPと呼ばれ得る。グラフ部分302から、シナプス前スパイク時間とシナプス後スパイク時間との間の時間差に応じて、LTPの量がほぼ指数関数的に減少し得ることが観測され得る。グラフ300の部分304に示すように、発火の逆の順序は、シナプス重みを減少させ、シナプスのLTDをもたらし得る。
[0049]図3のグラフ300に示すように、STDPグラフのLTP(原因)部分302に負のオフセットμが適用され得る。x軸の交差306のポイント(y=0)は、層i−1(シナプス前層)からの原因入力の相関を考慮して、最大タイムラグと一致するように構成され得る。フレームベースの入力(すなわち、入力は、スパイクまたはパルスを備える特定の持続時間のフレームの形態である)の場合、オフセット値μは、フレーム境界を反映するように計算され得る。直接的にシナプス後電位によってモデル化されるように、またはニューラル状態に対する影響の点で、フレームにおける第1の入力スパイク(パルス)が経時的に減衰することが考慮され得る。フレームにおける第2の入力スパイク(パルス)が特定の時間フレームの相関したまたは関連したものと考えられる場合、フレームの前および後の関連する時間は、その時間フレーム境界で分離され、関連する時間の値が異なり得る(たとえば、1つのフレームよりも大きい場合は負、1つのフレームよりも小さい場合は正)ように、STDP曲線の1つまたは複数の部分をオフセットすることによって、可塑性の点で別様に扱われ得る。たとえば、曲線が、フレーム時間よりも大きい前後の時間で実際にゼロよりも下になり、結果的にLTPの代わりにLTDの一部であるようにLTPをオフセットするために負のオフセットμが設定され得る。
ニューロンモデルおよび演算
[0050]有用なスパイキングニューロンモデルを設計するための一般的原理がいくつかある。良いニューロンモデルは、2つの計算レジーム、すなわち、一致検出および関数計算の点で豊かな潜在的挙動を有し得る。その上、良いニューロンモデルは、時間コーディングを可能にするための2つの要素を有する必要がある。すなわち、入力の到着時間は出力時間に影響を与え、一致検出は狭い時間ウィンドウを有し得る。最後に、計算上魅力的であるために、良いニューロンモデルは、連続時間に閉形式解を有することができ、ニアアトラクター(near attractor)と鞍点とを含む安定した挙動を有し得る。言い換えれば、有用なニューロンモデルは、実用的なニューロンモデルであり、豊かで、現実的で、生物学的に一貫した挙動をモデル化するために使用され得、神経回路のエンジニアリングとリバースエンジニアリングの両方を行うために使用され得るニューロンモデルである。
[0051]ニューロンモデルは事象、たとえば入力の到着、出力スパイク、または内部的であるか外部的であるかを問わず他の事象に依存し得る。豊かな挙動レパートリーを実現するために、複雑な挙動を示すことができる状態機械が望まれ得る。入力寄与(ある場合)とは別個の事象の発生自体が状態機械に影響を与え、事象の後のダイナミクスを制限し得る場合、システムの将来の状態は、単なる状態および入力の関数ではなく、むしろ状態、事象および入力の関数である。
[0052]一態様では、ニューロンnは、下記のダイナミクスによって決定される膜電圧vn(t)によるスパイキングリーキー積分発火ニューロンとしてモデル化され得る。
Figure 2016536657
ここでαおよびβはパラメータであり、wm,nは、シナプス前ニューロンmをシナプス後ニューロンnに結合するシナプスのシナプス重みであり、ym(t)は、ニューロンnの細胞体に到着するまでΔtm,nに従って樹状遅延または軸索遅延によって遅延し得るニューロンmのスパイキング出力である。
[0053]シナプス後ニューロンへの十分な入力が達成された時間からシナプス後ニューロンが実際に発火する時間までの遅延があることに留意されたい。イジケヴィッチの単純モデルなど、動的スパイキングニューロンモデルでは、脱分極しきい値vtとピークスパイク電圧vpeakとの間に差がある場合、時間遅延が生じ得る。たとえば、単純モデルでは、電圧および復元のための1対の微分方程式、すなわち、
Figure 2016536657
Figure 2016536657
によってニューロン細胞体ダイナミクス(neuron soma dynamics)が決定され得る。ここでvは膜電位であり、uは、膜復元変数であり、kは、膜電位vの時間スケールを記述するパラメータであり、aは、復元変数uの時間スケールを記述するパラメータであり、bは、膜電位vのしきい値下変動に対する復元変数uの感度を記述するパラメータであり、vrは、膜静止電位であり、Iは、シナプス電流であり、Cは、膜のキャパシタンスである。このモデルによれば、ニューロンはv>vpeakのときにスパイクすると定義される。
Hunzinger Coldモデル
[0054]Hunzinger Coldニューロンモデルは、豊かな様々な神経挙動を再生し得る最小二重レジームスパイキング線形動的モデルである。モデルの1次元または2次元の線形ダイナミクスは2つのレジームを有することができ、時間定数(および結合)はレジームに依存し得る。しきい値下レジームでは、時間定数は、慣例により負であり、一般に生物学的に一貫した線形方式で静止状態に細胞を戻す役目を果たすリーキーチャネルダイナミクスを表す。しきい値上レジームにおける時間定数は、慣例により正であり、一般にスパイク生成のレイテンシを生じさせる一方でスパイク状態に細胞を駆り立てる反リーキーチャネルダイナミクスを反映する。
[0055]図4に示すように、モデルのダイナミクスは2つの(またはそれよりも多くの)レジームに分割され得る。これらのレジームは、負レジーム402(リーキー積分発火(LIF)ニューロンモデルと混同されないように互換的にLIFレジームとも呼ばれる)および正レジーム404(反リーキー積分発火(ALIF)ニューロンモデルと混同されないように互換的にALIFレジームとも呼ばれる)と呼ばれ得る。負レジーム402では、状態は将来の事象の時点における静止(v-)の傾向がある。この負レジームでは、モデルは一般に、時間的入力検出特性と他のしきい値下挙動とを示す。正レジーム404では、状態はスパイキング事象(vs)の傾向がある。この正レジームでは、モデルは、後続の入力事象に応じてスパイクにレイテンシを生じさせるなどの計算特性を示す。事象の点からのダイナミクスの公式化およびこれら2つのレジームへのダイナミクスの分離は、モデルの基本的特性である。
[0056]線形二重レジーム2次元ダイナミクス(状態vおよびuの場合)は、慣例により次のように定義され得る。
Figure 2016536657
Figure 2016536657
ここでqρおよびrは、結合のための線形変換変数である。
[0057]シンボルρは、ダイナミクスレジームを示すためにここで使用され、特定のレジームの関係を論述または表現するときに、それぞれ負レジームおよび正レジームについて符号「−」または「+」にシンボルρを置き換える慣例がある。
[0058]モデル状態は、膜電位(電圧)vおよび復元電流uによって定義される。基本形態では、レジームは基本的にモデル状態によって決定される。正確で一般的な定義の微妙だが重要な側面があるが、差し当たり、モデルが、電圧vがしきい値(v+)を上回る場合に正レジーム404にあり、そうでない場合に負レジーム402にあると考える。
[0059]レジーム依存時間定数は、負レジーム時間定数であるτ-と正レジーム時間定数であるτ+とを含む。復元電流時間定数τuは通常、レジームから独立している。便宜上、τuと同様に、指数およびτ+が一般に正となる正レジームの場合に、電圧発展(voltage evolution)に関する同じ表現が使用され得るように、減衰を反映するために負の量として負レジーム時間定数τ-が一般に指定される。
[0060]2つの状態要素のダイナミクスは、事象において、ヌルクラインから状態をオフセットする変換によって結合され得、ここで変換変数は、
Figure 2016536657
Figure 2016536657
であり、δ、ε、βおよびv-、v+はパラメータである。vρのための2つの値は、2つのレジームのための参照電圧のベースである。パラメータv-は、負レジームのためのベース電圧であり、膜電位は一般に、負レジームにおいてv-に減衰することになる。パラメータv+は、正レジームのためのベース電圧であり、膜電位は一般に、正レジームにおいてv+から離れる傾向となる。
[0061]vおよびuのためのヌルクラインは、それぞれ変換変数qρおよびrの負によって与えられる。パラメータδは,uヌルクラインの傾きを制御するスケール係数である。パラメータεは通常、−v-に等しく設定される。パラメータβは、両方のレジームにおいてvヌルクラインの傾きを制御する抵抗値である。τρ時間定数パラメータは、指数関数的減衰だけでなく、各レジームにおいて別個にヌルクラインの傾きを制御する。
[0062]モデルは、電圧vが値vsに達したときにスパイクするように定義される。続いて、状態は通常、(技術的に、スパイク事象と同じ1つのものであり得る)リセット事象でリセットされる。
Figure 2016536657
Figure 2016536657
ここで、
Figure 2016536657
およびΔuはパラメータである。リセット電圧
Figure 2016536657
は通常、v-にセットされる。
[0063]瞬時結合の原理によって、状態について(また、単一の指数項による)だけではなく、特定の状態に到達するために必要とされる時間についても、閉形式解が可能である。閉形式状態解は、次のとおりである。
Figure 2016536657
Figure 2016536657
[0064]したがって、モデル状態は、入力(シナプス前スパイク)または出力(シナプス後スパイク)などの事象に伴ってのみ更新され得る。また、演算が(入力があるか、出力があるかを問わず)任意の特定の時間に実行され得る。
[0065]その上、瞬時結合原理によって、反復的技法または数値解法(たとえば、オイラー数値解法)なしに、特定の状態に到達する時間が事前に決定され得るように、シナプス後スパイクの時間が予想され得る。前の電圧状態v0を踏まえ、電圧状態vfに到達するまでの時間遅延は、次の式によって与えられる。
Figure 2016536657
[0066]スパイクが、電圧状態vがvsに到達する時間に生じると定義される場合、電圧が所与の状態vにある時間から測定されたスパイクが生じるまでの時間量、または相対的遅延に関する閉形式解は、次のとおりである。
Figure 2016536657
ここで、
Figure 2016536657
は通常、パラメータv+にセットされるが、他の変形も可能であり得る。
[0067]モデルダイナミクスの上記の定義は、モデルが正レジームにあるか、それとも負レジームにあるかに依存する。上述のように、結合およびレジームρは、事象に伴って計算され得る。状態の伝搬のために、レジームおよび結合(変換)変数は、最後の(前の)事象の時間における状態に基づいて定義され得る。続いてスパイク出力時間を予想するために、レジームおよび結合変数は、次の(最新の)事象の時間における状態に基づいて定義され得る。
[0068]Coldモデルの、適時にシミュレーション、エミュレーションまたはモデルを実行するいくつかの可能な実装形態がある。これは、たとえば、事象更新モード、ステップ事象更新モード、およびステップ更新モードを含む。事象更新は、(特定の瞬間における)事象または「事象更新」に基づいて状態が更新される更新である。ステップ更新は、間隔(たとえば、1ms)をおいてモデルが更新される更新である。これは必ずしも、反復的技法または数値解法を必要とするとは限らない。また、事象がステップもしくはステップ間で生じる場合または「ステップ事象」更新によってモデルを更新するのみによって、ステップベースのシミュレータにおいて限られた時間分解能で事象ベースの実装形態が可能である。
ニューラルコーディング
[0069]図1の人工ニューロン102、106から構成されるニューラルネットワークモデルなどの有用なニューラルネットワークモデルは、一致コーディング、時間コーディングまたはレートコーディングなど、様々な好適なニューラルコーディング方式のうちのいずれかを介して情報を符号化することができる。一致コーディングでは、情報は、ニューロン集団の活動電位(スパイキング活動)の一致(または時間的近接度)で符号化される。時間コーディングでは、ニューロンは、絶対時間であるか相対時間であるかを問わず、活動電位(すなわち、スパイク)の正確なタイミングを通して情報を符号化する。したがって、情報は、ニューロン集団の間でスパイクの相対的タイミングで符号化され得る。対照的に、レートコーディングは、発火レートまたは集団発火レートでニューラル情報をコーディングすることを伴う。
[0070]ニューロンモデルは、時間コーディングを実行し得る場合、(レートは単に、タイミングまたはスパイク間の間隔の関数であるので)レートコーディングも実行し得る。時間コーディングを行うために、良いニューロンモデルは2つの要素を有する必要がある。すなわち、(1)入力の到着時間は出力時間に影響を与え、(2)一致検出は狭い時間ウィンドウを有し得る。時間パターンの要素を適切に遅延させることによって、要素はタイミング一致に組み込まれ得るので、結合遅延は、一致検出を時間パターン復号に拡大するための1つの手段を提供する。
到着時間
[0071]良いニューロンモデルでは、入力の到着の時間は、出力の時間に影響を与えるはずである。シナプス入力は、ディラックのデルタ関数であるか、成形シナプス後電位(PSP:shaped post-synaptic potential)であるかを問わず、興奮性(EPSP)であるか、抑制性(IPSP)であるかを問わず、到着時間(たとえば、デルタ関数またはステップもしくは他の入力関数の開始もしくはピークの時間)を有し、これは入力時間と呼ばれ得る。ニューロン出力(すなわち、スパイク)は、(細胞体、軸索に沿ったポイント、または軸索の端部など、どこで測定される場合でも)発生の時間を有し、これは出力時間と呼ばれ得る。出力時間は、スパイクのピークの時間、スパイクの開始の時間、または出力波形に関係する任意の他の時間であり得る。支配的原理は、出力時間が入力時間に依存することである。
[0072]一見したところ、すべてのニューロンモデルがこの原理に従うと思われるかもしれないが、これは一般には当てはまらない。たとえば、レートベースのモデルは、この特徴を有しない。多くのスパイキングモデルも、一般には適合しない。リーキー積分発火(LIF)モデルは、(しきい値を越えて)追加の入力がある場合にさらに速く発火することはない。その上、非常に高いタイミング分解能でモデル化された場合に適合する可能性があるモデルは多くの場合、タイミング分解能がたとえば1msのステップに限定されているときに適合しない。
入力
[0073]ニューロンモデルへの入力はディラックのデルタ関数、たとえば電流としての入力または伝導性ベースの入力を含み得る。後者の場合、ニューロン状態への寄与は連続的または状況依存的であり得る。
解決される例示的な問題
[0074]本開示のいくつかの態様は、人工ニューロンおよび/またはシナプスのセットのメモリ要件の低減、ならびに、人工ニューロンおよび/またはシナプスの大きい集団に関連付けられるフラグを、同時に、または時間的に近接してオン/オフにすることという2つの問題に対するソリューションを提供する。
[0075]スパイキングニューロンネットワークでは、各人工ニューロン(ニューロン回路)およびシナプスを定義するいくつかのパラメータがある。ニューロンおよびシナプスの集団は、しばしば同じパラメータを共有するか、ほんのいくつかのパラメータの点だけが異なる。同じパラメータを共有する集団では、シナプスタイプおよびニューロンタイプの概念が使用され得る。したがって、各シナプスまたはニューロンインスタンスは、そのシナプスタイプまたはニューロンタイプを指定するためにいくつかのビットだけを必要とし、シナプスタイプまたはニューロンタイプテーブルは、シナプスまたはニューロンパラメータのリストを備え得る。この手法は、まったく同じパラメータを共有するシナプスまたは人工ニューロンのために、かなりの量のメモリをすでに節約し得る。
[0076]しかしながら、ニューロンまたはシナプス集団は、メモリを節約することが好ましい完全に新しいタイプの定義を現在必要とする、ほんのいくつかのパラメータの点だけが異なることがしばしばあり得る。多くの場合、複数のニューロンまたはシナプス集団は、一般的であり、大量のパラメータメモリを消費する、ニューロンまたはシナプスタイプパラメータに関連付けられている。これらのパラメータの例は、異なる機能の有効/無効フラグなどの、わずかな量のパラメータメモリを消費する集団間で異なるパラメータのサブセットを有する、STDPテーブルおよび微分方程式線形化係数テーブルである。したがって、当分野では、ニューラルネットワークの実装におけるハードウェアメモリ要件を低減するために、この潜在的なメモリ節約を利用するための方法が必要とされている。
[0077]さらに、ニューラルネットワークでは、同時に、または少なくとも時間的に非常に近接して有効または無効にされる必要がある機能を有するシナプスまたはニューロンのグループまたは集団がしばしばある。たとえば、ビジュアルネットワークは、ニューロンの3つのレイヤを有し得る。第1のレイヤ(すなわち、レイヤ1)は、網膜神経節細胞(RGC)からのシナプスを有するL4興奮性ニューロンおよびL4抑制性ニューロンを備え得る。第2のレイヤ(すなわち、レイヤ2)は、L4レイヤニューロンからのシナプスを有するL23興奮性ニューロンおよびL23抑制性ニューロンを備え得、第3のレイヤ(すなわち、レイヤ3)は、L23抑制性ニューロンからL23興奮性ニューロンへのシナプスを備え得る。ある態様では、まずレイヤ1、次いでレイヤ2、最後にレイヤ3をトレーニングすることが望ましい場合がある。これは、たとえば、まずレイヤ1のために、次いでレイヤ2のために、最後にレイヤ3のために、シナプスおよび/またはニューロン内に可塑性有効/無効パラメータを設定することによって達成され得る。
[0078]より広範には、同時にトレーニングされ得るだけでなく、前述の階層化手法を有する、同様の階層化構造を有する並行聴覚ネットワークがあり得る。レイヤ1内にあるようなニューロンおよび/またはシナプスの集団のために、可塑性有効/無効などのパラメータを同時に、または時間的に近接して制御するための方法を提供することが望ましい場合がある。時間的な近接は、有効/無効パラメータが、相互のいくつかのクロックサイクルまたはモデルチック(model ticks)内にあることが望ましい場合があることを意味することに留意されたい。
人工ニューロンおよびシナプスのためのグループタグ
[0079]本開示のいくつかの態様は、人工神経系の人工ニューロンおよび/またはシナプスをグループタグに割り当てることをサポートし、グループタグは、関連付けられるパラメータのセットを有する。グループタグを使用することによって、集団における人工ニューロンおよび/またはシナプスは、グループタグを割り当てられ得る。次いで、グループタグに関連付けられるパラメータを変更することによって、グループ内のすべてのシナプスおよび/または人工ニューロンはそのパラメータを変更し得る。
[0080]本開示の一態様では、STDPテーブルおよび可塑性パラメータ、ならびに可塑性、スパイキング、およびドーパミンを有効/無効にするためのフラグを含むシナプスタイプにおけるパラメータは、2つの別個の構造にグループ化される。第1の構造は、STDPテーブル、リソーステーブル、および他の可塑性パラメータを有するシナプスタイプを備え得、第2のグループタグ構造は、可塑性を有効/無効にするためのフラグ、シナプス後電位(PSP)転送のためのフラグ、およびドーパミンのためのフラグを備え得る。次いで、シナプスは、グループタグとシナプスタイプの両方を割り当てられる。この態様では、異なるシナプスタイプを有するシナプスは、前述の例におけるレイヤ1シナプスのすべてのなどの、同じグループタグを割り当てられ得る。これは、これらの集団のすべてのフラグを同時に、さらに異なるシナプスタイプにわたって最小のシグナリングオーバーヘッドで制御することを可能にする。
[0081]本開示の別の態様では、人工神経系の人工ニューロンのために同じ前述の概念が利用され得る。
[0082]本開示の別の態様では、グループタグは、ニューロンだけに、シナプスだけに、および両方に適用し得るパラメータの組合せを有する、人工ニューロンとシナプスの両方のグループのための単一のタグを有するように結合され得る。たとえば、人工ニューロンは、恒常性有効/無効フラグ、およびシナプスPSP転送有効/無効フラグに関連付けられ得、両方は可塑性有効/無効フラグを共有することができる。このグループのこれらの値を変更する単一のメッセージを送ることによって、グループ内のすべてのシナプスおよび人工ニューロンのためのこれらのパラメータを同時に切り替える。
[0083]本開示の別の態様では、グループタグは、シナプスタイプのスーパーセットとして実装され得る。この態様では、シナプスはそれ自体だけをグループタグとして指定する。グループタグは、可塑性有効/無効、リソース有効/無効、およびPSP利得、ドーパミン有効/無効、ならびに使用するシナプスタイプなどの、パラメータのセットを指定する。次いで、シナプスタイプは、STDPテーブル、リソースモデル、および他の関連付けられるパラメータを指定する。この態様では、シナプスタイプパラメータは、STDPルックアップテーブルなどの、より多くのメモリを使用し、シナプスのいくつかの集団にとって共通であるパラメータを備え得る。グループタグは、機能有効/無効フラグなどの、はるかに少ないメモリを消費するパラメータを備え得、それは普通ならコアSTDPテーブルを共有する集団にわたって変化する。たとえば、ニューロンモデルは、同じSTDPテーブルを共有するシナプスの3つの集団を備え得るが、異なる時間インスタント(time instant)に可塑性をオンにする必要があり、または、ドーパミンまたはリソースモデルが利用されるか否かの点だけが異なる場合がある。テーブル全体を複製するためにメモリを使用するよりも、この文脈でグループタグを使用することによって、より効率的なメモリ使用が可能になる。
[0084]ハードウェアによくフィットさせるためにシナプス重みを正規化する際に、この態様の2つの主要な例が発生する。第1の例では、まったく同じ学習ルールを使用するシナプスの複数の集団があるが、ネットワーク内の複数の場所では、それらは異なるファンアウトを有し、したがって異なる最大重みまたはPSP利得を有する。この場合、すべてのパラメータは、ファンアウトに関連するこの1つのパラメータ以外は同じであり、グループタグの使用がより効率的なメモリ構造を可能にする。第2の例では、ニューロンの複数の集団は、ファンインに基づいて変更する入力スケーリングパラメータ以外は同じモデルパラメータを利用する。やはり、グループタグの使用が、より効率的なメモリ構造を可能にし得る。
[0085]本開示のいくつかの態様によれば、グループタグパラメータは、いくつかの方法で記憶され得る。一態様では、パラメータのセットはグループタグに関連付けられ得、別個の外された(disjoint)パラメータのセットはシナプスおよび/またはニューロンタイプに関連付けられ得る。
[0086]別の態様では、グループタグパラメータのうちのいくつかまたはすべては、シナプスタイプおよび/またはニューロンタイプに関連付けられ得、グループタグは、シナプスおよび/またはニューロンタイプパラメータが存在し、アクティブである場合、それらをオーバーライドする機能を有する。たとえば、グループタグは、最大3つのシナプスタイプパラメータをオーバーライドすることが可能であり得、ここにおいて、フィールドは0、4何も示さないためにデフォルト値を使用して、どのパラメータをオーバーライドするべきかを指定し得、別のフィールドは使用するべき新しい値を指定する。これは、同じ量のメモリまたはさらに少ないメモリを使用して、さらなる柔軟性を提供し得る。
追加の機能
[0087]本開示のいくつかの態様によれば、グループタグは動的に割り当てられ得る。さらに、シナプスまたは人工ニューロンは複数のグループに属し得る。複数のグループに属する1つの方法は、ニューロン/シナプスが、それらが属する任意のグループへの変更を追跡して、グループメンバーシップのそれらのセットに基づいて最後に更新された値を維持することである。
[0088]この手法の一実装形態は、単一および複数の初期グループメンバーシップのすべての使用された拡張を備えるグループのより大きいセットを作成することであり得る。次いで、ハードウェアまたはソフトウェアは、単一のグループ値変更を追跡して、それらを単一のグループ、ならびに単一のグループがその一部である既存の複数のグループセットの両方に適用し得る。このように、変更は、発生する時にすべてのシナプス/ニューロンに伝搬される必要はないが、むしろシナプス/ニューロンは、書込みの数の点で効率的に更新を行い、新しい値を使用する第1のニューロン/シナプス更新の時間の点で迅速に発生する、共有データベースに行くことができる。
[0089]本開示のある態様では、グループパラメータは、ニューロンネットワーク内から変更され得る。たとえば、グループA可塑性は、いくつかのニューロンスパイキングに基づいて有効にされ、異なるニューロンスパイキングに基づいて無効にされ得る。それらのニューロンはグループAに属してもよく、属さなくてもよい。さらに、グループA可塑性は、ニューロンスパイキングのセットに基づいて、しきい値を上回る/下回る活動率を有するニューロンのセットに基づいて、あるいは、定義された値を上回る重みの合計、または特定の値を上回る重みを有するシナプスの割合などの、メトリックに到達するシナプス重みの機能に基づいて有効にされ得る。
[0090]本開示のいくつかの態様によれば、グループタグは活動依存であり得る。たとえば、一態様では、時間枠内で発火するすべての細胞(たとえば、場所細胞、上丘細胞、V1細胞、等)は、グループタグAに割り当てられ得る。別の態様では、しきい値を下回る、またはしきい値を上回る重みを有するすべてのシナプスはグループタグBに割り当てられ得る。別の態様では、しきい値を上回る/下回るレートで発火するすべての細胞(たとえば、場所細胞、上丘細胞、V1細胞、等)は、いくつかのグループタグを取得し得る。別の態様では、時間枠内/外で発火するすべての細胞(たとえば、場所細胞、上丘細胞、V1細胞、等)は、いくつかのグループタグに割り当てられ得る。別の態様では、しきい値を上回る/下回る膜電圧などのニューロンパラメータを有するすべての細胞(たとえば、場所細胞、上丘細胞、V1細胞、等)は、特定のグループタグを取得し得る。
[0091]しきい値を下回る重みを有するシナプスの動的なタグ付けは、プロセッサ負荷可用性に基づいて可塑性更新をオン/オフにするために利用され得る。したがって、これらの動的なタグは、スパイクドロッピングのために重要性の最も低いシナプスをターゲットにするために使用され得る。動的なタグ付けはまた、再割振りまたは構造可塑性のために、十分に活用されていないシナプスおよび/またはニューロンをフラグ付けするために使用され得る。たとえば、構造可塑性は、低い重みを有するシナプスの動的なグループ、または低いスパイキングレートを有するニューロンのグループのためにビットが設定されることを可能にする。さらに、動的なタグ付けはまた、デバッグおよび測定目的、ならびに、たとえば所与のタグを有する集団の割合などのメトリックを得るための統計のために使用され得る。
[0092]図5は、本開示のいくつかの態様による、人工神経系を操作するための例示的な動作500の流れ図である。動作500は、ハードウェアにおいて(たとえば、神経形態学的プロセッサなどの1つまたは複数のニューラル処理ユニットによって)、ソフトウェアにおいて、またはファームウェアにおいて実行され得る。人工神経系は、視覚神経系、聴覚神経系、海馬等の、様々な生物学的または架空の神経系のいずれかでモデル化され得る。
[0093]動作500は、502で、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることによって開始し得、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられ得る。504で、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つが第2のグループタグに割り当てられ得、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられ得る。506で、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータが変更され得、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす。
[0094]本開示のある態様では、人工神経系のシナプスの複数の集団または人工ニューロンの複数の集団のうちの少なくとも1つが、複数のグループタグに割り当てられ得、ここにおいて、複数のグループタグは、パラメータの複数のセットと、複数のシナプスタイプまたは複数のニューロンタイプのうちの少なくとも1つとに関連付けられ得る。パラメータの複数のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することは、複数の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、複数の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つのために、1つまたは複数のパラメータを変更することをもたらし得る。
[0095]本開示のある態様では、第1のグループタグと第2のグループタグの両方は、人工ニューロンのうちの1つまたは複数、あるいはシナプスのうちの1つまたは複数のうちの少なくとも1つを、第1のグループタグと第2のグループタグの両方でタグ付けするために利用され得る。第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータを変更することは、第1の集団および第2の集団におけるすべてのシナプスのためにこれらのパラメータを変更することをもたらし得る。さらに、第1のニューロンタイプおよび第2のニューロンタイプに関連付けられる他のパラメータを変更することは、第1の集団および第2の集団におけるすべての人工ニューロンのためにこれらの他のパラメータを変更することをもたらし得る。
[0096]本開示のある態様では、第1のセットおよび第2のセットにおけるパラメータは、同時に制御され得る。本開示のある態様では、第1のシナプスタイプは第2のシナプスタイプと同じであり得、第1のニューロンタイプは第2のニューロンタイプと同じであり得る。さらに、第1のセットおよび第2のセットにおけるパラメータは、異なる時間インスタントに変更され得、第1のセットにおけるパラメータの値は、第2のセットにおけるそのパラメータの値とは異なり得る。
[0097]本開示のある態様では、シナプスの第1の集団および第2の集団は、同じレイヤまたは同じタイプのうちの少なくとも1つのシナプスのセットのサブセットであり得、人工ニューロンの第1の集団および第2の集団は、同じレイヤまたは同じタイプのうちの少なくとも1つの人工ニューロンのセットのサブセットであり得る。第1のセットおよび第2のセットにおけるパラメータは、第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータから外され得る。
[0098]本開示のいくつかの態様について、第1のセットおよび第2のセットにおける少なくとも1つのパラメータは、第1のシナプスタイプおよび第2のシナプスタイプに関連付けられる少なくとも1つのパラメータと共通であり得る。さらに、第1のシナプスタイプおよび第2のシナプスタイプに関連付けられる少なくとも1つのパラメータをオーバーライドすることは、第1のセットおよび第2のセットにおける少なくとも1つのパラメータに基づき得る。
[0099]図6は、本開示のいくつかの態様による、人工神経系を操作するための例示的な動作600の流れ図である。動作600は、ハードウェアで(たとえば、神経形態学的プロセッサなどの1つもしくは複数のニューラル処理ユニットによって)、ソフトウェアで、またはファームウェアで実行され得る。人工神経系は、視覚神経系、聴覚神経系、海馬などのような様々な生物学上または想像上の神経系のうちのいずれかでモデル化され得る。
[0100]動作600は、602で、人工神経系の人工ニューロンおよびシナプスのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることによって開始し得る。604で、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージが送られ得る。本開示のいくつかの態様によれば、セットにおけるパラメータは、グループ内の人工ニューロンだけに適用するパラメータと、グループ内のシナプスだけに適用するパラメータと、グループ内の人工ニューロンとシナプスの両方に適用するパラメータとを備え得る。
[0101]図7は、本開示のいくつかの態様による、汎用プロセッサ702を使用して人工神経系を操作するための上述した方法の例示的なブロック図700を示す。計算ネットワーク(ニューラルネットワーク)に関連する変数(ニューラル信号)、シナプス重み、および/またはシステムパラメータは、メモリブロック704に記憶され得る一方、汎用プロセッサ702において実行される関連した命令は、プログラムメモリ706からロードされ得る。本開示のある態様では、汎用プロセッサ702にロードされた命令は、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てて、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てて、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するためのコードを備え得る。本開示の別の態様では、汎用プロセッサ702にロードされた命令は、人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てて、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送るためのコードを備え得る。
[0102]図8は、本開示のいくつかの態様による、メモリ802が相互接続ネットワーク804を介して計算ネットワーク(ニューラルネットワーク)の個々の(分散型)処理ユニット(ニューラルプロセッサ)806とインターフェースされ得る人工神経系を操作するための上述した方法の例示的なブロック図800を示す。計算ネットワーク(ニューラルネットワーク)に関連する変数(ニューラル信号)、シナプス重み、および/またはシステムパラメータは、メモリ802に記憶されてよく、相互接続ネットワーク804の接続を介してメモリ802から各処理ユニット(ニューラルプロセッサ)806にロードされ得る。本開示のある態様では、処理ユニット806は、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てて、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てて、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するように構成され得る。本開示の別の態様では、処理ユニット806は、人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てて、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送るように構成され得る。
[0103]図9は、本開示のいくつかの態様による、分散型重みメモリ902および分散型処理ユニット(ニューラルプロセッサ)904に基づいて人工神経系を操作するための上述した方法の例示的なブロック図900を示す。図9に示すように、1つのメモリバンク902が、計算ネットワーク(ニューラルネットワーク)の1つの処理ユニット904と直接インターフェースされてよく、メモリバンク902は、その処理ユニット(ニューラルプロセッサ)904に関連する変数(ニューラル信号)、シナプス重み、および/またはシステムパラメータを記憶することができる。本開示のある態様では、処理ユニット904は、人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てて、ここにおいて、第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てて、ここにおいて、第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、第1の集団または第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての1つまたは複数のパラメータの変更をもたらす、パラメータの第1のセットまたはパラメータの第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するように構成され得る。本開示の別の態様では、処理ユニット904は、人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、グループ内のすべての人工ニューロンとシナプスとのパラメータの同時切替えをもたらすセットにおけるパラメータの値を変更する単一のメッセージを送るように構成され得る。
[0104]図10は、本開示のいくつかの態様による、ニューラルネットワーク1000の例示的な実装形態を示す。図10に示すように、ニューラルネットワーク1000は、上述した方法の様々な動作を実行し得る複数のローカル処理ユニット1002を備えることができる。各処理ユニット1002は、ローカル状態メモリ1004と、ニューラルネットワークのパラメータを記憶するローカルパラメータメモリ1006とを備えることができる。さらに、処理ユニット1002は、ローカル(ニューロン)モデルプログラムを有するメモリ1008と、ローカル学習プログラムを有するメモリ1010と、ローカル接続メモリ1012とを備えることができる。さらに、図10に示すように、各ローカル処理ユニット1002は、ローカル処理ユニットのローカルメモリのための設定を提供し得る設定処理のためのユニット1014と、またローカル処理ユニット1002間のルーティングを提供するルーティング接続処理要素1016とインターフェースされ得る。
[0105]本開示のいくつかの態様によれば、各ローカル処理ユニット1002は、ニューラルネットワークの所望の1つまたは複数の機能的特徴に基づいてニューラルネットワークのパラメータを決定し、決定されたパラメータがさらに適合、調整および更新されることで、1つまたは複数の機能的特徴を所望の機能的特徴に向けて発展させるように構成され得る。
[0106]上述した方法の様々な動作は、対応する機能を実行することが可能な任意の好適な手段によって実行され得る。それらの手段は、限定はしないが、回路、特定用途向け集積回路(ASIC)、またはプロセッサを含む、様々なハードウェアおよび/またはソフトウェア構成要素および/またはモジュールを含み得る。たとえば、様々な動作は、図7〜図10に示す様々なプロセッサのうちの1つまたは複数によって実行され得る。概して、図に示されている動作がある場合、それらの動作は、同様の番号をもつ対応するカウンターパートのミーンズプラスファンクション構成要素を有し得る。たとえば、図5〜図6に示す動作500〜動作600は、図5A〜図6Aに示す手段500A〜手段600Aに対応する。
[0107]たとえば、表示するための手段は、ディスプレイ(たとえば、モニタ、フラットスクリーン、タッチスクリーンなど)、プリンタ、または視覚的描写(たとえば、表、チャートもしくはグラフ)のためのデータを出力するための任意の他の好適な手段を含み得る。処理するための手段、受信するための手段、追跡するための手段、調整するための手段、更新するための手段、または決定するための手段は、1つまたは複数のプロセッサまたは処理ユニットを含み得る、処理システムを備え得る。感知するための手段は、センサーを含み得る。記憶するための手段は、処理システムによってアクセスされ得る、メモリまたは任意の他の好適な記憶デバイス(たとえば、RAM)を含み得る。
[0108]本明細書で使用する「決定」という用語は、多種多様なアクションを包含する。たとえば、「決定」は、計算すること、算出すること、処理すること、導出すること、調査すること、ルックアップすること(たとえば、テーブル、データベースまたは別のデータ構造においてルックアップすること)、確認することなどを含み得る。また、「決定」は、受信すること(たとえば、情報を受信すること)、アクセスすること(たとえば、メモリ中のデータにアクセスすること)などを含み得る。また、「決定」は、解決すること、選択すること、選定すること、確立することなどを含み得る。
[0109]本明細書で使用する、項目のリスト「のうちの少なくとも1つ」を指す句は、単一のメンバーを含む、それらの項目の任意の組合せを指す。一例として、「a、b、またはcのうちの少なくとも1つ」は、a、b、c、a−b、a−c、b−c、およびa−b−cを包含するものとする。
[0110]本開示に関連して説明した様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ信号(FPGA)または他のプログラマブル論理デバイス(PLD)、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明した機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の市販のプロセッサ、コントローラ、マイクロコントローラまたは状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。
[0111]本開示に関連して説明した方法またはアルゴリズムのステップは、ハードウェアで直接実施されるか、プロセッサによって実行されるソフトウェアモジュールで実施されるか、またはその2つの組合せで実施され得る。ソフトウェアモジュールは、当技術分野で知られている任意の形態の記憶媒体中に常駐し得る。使用され得る記憶媒体のいくつかの例としては、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、フラッシュメモリ、EPROMメモリ、EEPROM(登録商標)メモリ、レジスタ、ハードディスク、リムーバブルディスク、CD−ROMなどを含む。ソフトウェアモジュールは、単一の命令、または多数の命令を備えることができ、いくつかの異なるコードセグメント上で、異なるプログラム間で、複数の記憶媒体にわたって分散され得る。記憶媒体は、プロセッサがその記憶媒体から情報を読み取ることができ、その記憶媒体に情報を書き込むことができるように、プロセッサに結合され得る。代替として、記憶媒体はプロセッサと一体化され得る。
[0112]本明細書で開示する方法は、説明した方法を達成するための1つまたは複数のステップまたはアクションを備える。本方法のステップおよび/またはアクションは、特許請求の範囲から逸脱することなく互いに交換され得る。言い換えれば、ステップまたはアクションの特定の順序が指定されない限り、特定のステップおよび/またはアクションの順序および/または使用は、特許請求の範囲から逸脱することなく変更され得る。
[0113]説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ハードウェアで実装される場合、例示的なハードウェア構成はデバイス中に処理システムを備え得る。処理システムは、バスアーキテクチャを用いて実装され得る。バスは、処理システムの特定の適用例および全体的な設計制約に応じて、任意の数の相互接続バスとブリッジとを含み得る。バスは、プロセッサと、機械可読媒体と、バスインターフェースとを含む様々な回路を互いにリンクし得る。バスインターフェースは、ネットワークアダプタを、特に、バスを介して処理システムに接続するために使用され得る。ネットワークアダプタは、信号処理機能を実装するために使用され得る。いくつかの態様では、ユーザインターフェース(たとえば、キーパッド、ディスプレイ、マウス、ジョイスティックなど)もバスに接続され得る。バスはまた、タイミングソース、周辺機器、電圧調整器、電力管理回路などの様々な他の回路にリンクし得るが、それらは当技術分野でよく知られており、したがってこれ以上は説明されない。
[0114]プロセッサは、機械可読媒体に記憶されたソフトウェアの実行を含む、バスおよび一般的な処理を管理することを担当し得る。プロセッサは、1つまたは複数の汎用および/または専用プロセッサを用いて実装され得る。例としては、マイクロプロセッサ、マイクロコントローラ、DSPプロセッサ、およびソフトウェアを実行し得る他の回路を含む。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語などの名称にかかわらず、命令、データ、またはそれらの任意の組合せを意味すると広く解釈されたい。機械可読媒体は、例として、RAM(ランダムアクセスメモリ)、フラッシュメモリ、ROM(読取り専用メモリ)、PROM(プログラマブル読取り専用メモリ)、EPROM(消去可能プログラマブル読取り専用メモリ)、EEPROM(電気消去可能プログラマブル読取り専用メモリ)、レジスタ、磁気ディスク、光ディスク、ハードドライブ、または任意の他の好適な記憶媒体、あるいはそれらの任意の組合せを含み得る。機械可読媒体はコンピュータプログラム製品において実施され得る。コンピュータプログラム製品はパッケージング材料を備え得る。
[0115]ハードウェア実装形態では、機械可読媒体は、プロセッサとは別個の処理システムの一部であり得る。しかしながら、当業者なら容易に理解するように、機械可読媒体またはその任意の部分は処理システムの外部にあり得る。例として、機械可読媒体は、すべてバスインターフェースを介してプロセッサによってアクセスされ得る、伝送線路、データによって変調された搬送波、および/またはデバイスとは別個のコンピュータ製品を含み得る。代替的に、または追加で、機械可読媒体またはその任意の部分は、キャッシュおよび/または汎用レジスタファイルがそうであり得るように、プロセッサに統合され得る。
[0116]処理システムは、すべて外部バスアーキテクチャを介して他のサポート回路と互いにリンクされる、プロセッサ機能を提供する1つまたは複数のマイクロプロセッサと、機械可読媒体の少なくとも一部分を提供する外部メモリとをもつ汎用処理システムとして構成され得る。代替的に、処理システムは、プロセッサをもつASIC(特定用途向け集積回路)と、バスインターフェースと、ユーザインターフェースと、サポート回路と、単一のチップに統合された機械可読媒体の少なくとも一部分とを用いて、あるいは1つまたは複数のFPGA(フィールドプログラマブルゲートアレイ)、PLD(プログラマブル論理デバイス)、コントローラ、状態機械、ゲート論理、個別ハードウェア構成要素、もしくは他の好適な回路、または本開示全体にわたって説明した様々な機能を実行し得る回路の任意の組合せを用いて、実装され得る。当業者なら、特定の適用例と、全体的なシステムに課される全体的な設計制約とに応じて、どのようにしたら処理システムについて説明した機能を最も良く実装し得るかを理解されよう。
[0117]機械可読媒体はいくつかのソフトウェアモジュールを備え得る。ソフトウェアモジュールは、プロセッサによって実行されたときに、処理システムに様々な機能を実行させる命令を含む。ソフトウェアモジュールは、送信モジュールと受信モジュールとを含み得る。各ソフトウェアモジュールは、単一の記憶デバイス中に常駐するか、または複数の記憶デバイスにわたって分散され得る。例として、トリガイベントが発生したとき、ソフトウェアモジュールがハードドライブからRAMにロードされ得る。ソフトウェアモジュールの実行中、プロセッサは、アクセス速度を高めるために、命令のいくつかをキャッシュにロードし得る。次いで、1つまたは複数のキャッシュラインが、プロセッサによる実行のために汎用レジスタファイルにロードされ得る。以下でソフトウェアモジュールの機能に言及する場合、そのような機能は、そのソフトウェアモジュールからの命令を実行したときにプロセッサによって実装されることが理解されよう。
[0118]ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気記憶デバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体を適切に名づけられる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線(IR)、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)、およびBlu−ray(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。したがって、いくつかの態様では、コンピュータ可読媒体は非一時的コンピュータ可読媒体(たとえば、有形媒体)を備え得る。さらに、他の態様では、コンピュータ可読媒体は一時的コンピュータ可読媒体(たとえば、信号)を備え得る。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
[0119]したがって、いくつかの態様は、本明細書で提示する動作を実行するためのコンピュータプログラム製品を備え得る。たとえば、そのようなコンピュータプログラム製品は、本明細書で説明する動作を実行するために1つまたは複数のプロセッサによって実行可能である命令を記憶した(および/または符号化した)コンピュータ可読媒体を備え得る。いくつかの態様では、コンピュータプログラム製品はパッケージング材料を含み得る。
[0120]さらに、本明細書で説明した方法および技法を実行するためのモジュールおよび/または他の適切な手段は、適用可能な場合にデバイスによってダウンロードされ、および/または他の方法で取得され得ることを諒解されたい。たとえば、そのようなデバイスは、本明細書で説明した方法を実施するための手段の転送を可能にするためにサーバに結合され得る。代替的に、本明細書で説明した様々な方法は、デバイスが記憶手段をデバイスに結合または提供すると様々な方法を得ることができるように、記憶手段(たとえば、RAM、ROM、コンパクトディスク(CD)またはフロッピーディスクなどの物理記憶媒体など)によって提供され得る。その上、本明細書で説明した方法および技法をデバイスに与えるための任意の他の好適な技法が利用され得る。
[0121]特許請求の範囲は、上記で示した厳密な構成および構成要素に限定されないことを理解されたい。上記で説明した方法および装置の構成、動作および詳細において、特許請求の範囲から逸脱することなく、様々な改変、変更および変形が行われ得る。
[0121]特許請求の範囲は、上記で示した厳密な構成および構成要素に限定されないことを理解されたい。上記で説明した方法および装置の構成、動作および詳細において、特許請求の範囲から逸脱することなく、様々な改変、変更および変形が行われ得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
人工神経系を操作するための方法であって、
前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることと、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てることと、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することとを備える、方法。
[C2]
前記人工ニューロンのうちの1つまたは複数、あるいは前記シナプスのうちの1つまたは複数のうちの少なくとも1つを、前記第1のグループタグと第2のグループタグの両方でタグ付けすることをさらに備える、C1に記載の方法。
[C3]
前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータを変更することが、前記第1の集団および第2の集団におけるすべてのシナプスのためにこれらのパラメータを変更することをもたらすことと、
前記第1のニューロンタイプおよび第2のニューロンタイプに関連付けられる他のパラメータを変更することが、前記第1の集団および第2の集団におけるすべての人工ニューロンのためにこれらの他のパラメータを変更することをもたらすこととをさらに備える、C1に記載の方法。
[C4]
パラメータの前記第1のセットおよび第2のセットが、可塑性を有効にするためのフラグ、可塑性を無効にするためのフラグ、シナプス後電位(PSP)転送のためのフラグ、ドーパミンのためのフラグ、恒常性有効フラグ、恒常性無効フラグ、可塑性有効フラグ、または可塑性無効フラグのうちの少なくとも1つを備える、C1に記載の方法。
[C5]
可塑性を有効にするための前記フラグと、可塑性を無効にするための前記フラグと、シナプス後電位(PSP)転送のための前記フラグと、ドーパミンのための前記フラグとを同時に制御することをさらに備える、C4に記載の方法。
[C6]
前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータが、スパイクタイミング依存可塑性(STDP)テーブル、リソースモデル、または可塑性パラメータのうちの少なくとも1つを備える、C1に記載の方法。
[C7]
前記第1のセットおよび第2のセットにおけるパラメータを同時に制御することをさらに備える、C1に記載の方法。
[C8]
前記第1のシナプスタイプが前記第2のシナプスタイプと同じであり、
前記第1のニューロンタイプが前記第2のニューロンタイプと同じであり、前記方法が、
前記第1のセットおよび第2のセットにおけるパラメータを、異なる時間インスタントに変更することをさらに備え、
前記第1のセットにおけるパラメータの値が、前記第2のセットにおけるそのパラメータの値とは異なる、C1に記載の方法。
[C9]
シナプスの前記第1の集団および第2の集団が、同じレイヤまたは同じタイプのうちの少なくとも1つのシナプスのセットのサブセットであり、
人工ニューロンの前記第1の集団および第2の集団が、同じレイヤまたは同じタイプのうちの少なくとも1つの人工ニューロンのセットのサブセットである、C1に記載の方法。
[C10]
前記第1のセットおよび第2のセットにおけるパラメータが、前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータから外される、C1に記載の方法。
[C11]
前記第1のセットおよび第2のセットにおける少なくとも1つのパラメータが、前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられる少なくとも1つのパラメータと共通であり、前記方法が、
前記第1のセットおよび第2のセットにおける前記少なくとも1つのパラメータに基づいて、前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられる前記少なくとも1つのパラメータをオーバーライドすることをさらに備える、C1に記載の方法。
[C12]
前記第1のグループタグまたは前記第2のグループタグのうちの少なくとも1つが動的に割り当てられる、C1に記載の方法。
[C13]
第1のグループタグまたは第2のグループタグのうちの前記少なくとも1つを動的に割り当てることが、しきい値を下回る重みを有するシナプスの前記第1の集団、またはシナプスの前記第2の集団のうちの少なくとも1つのシナプスに関連付けられる、C12に記載の方法。
[C14]
第1のグループタグまたは第2のグループタグのうちの前記少なくとも1つを動的に割り当てることが、
再割振りまたは構造可塑性のうちの少なくとも1つのために、シナプスの前記第1の集団または第2の集団のうちの少なくとも1つの十分に活用されていないシナプス、および人工ニューロンの前記第1の集団または第2の集団のうちの少なくとも1つの十分に活用されていない人工ニューロンをフラグ付けすることをさらに備える、C12に記載の方法。
[C15]
前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
人工ニューロンの前記第1の集団の、または人工ニューロンスパイキングの前記第2の集団の、いくつかの人工ニューロンに基づいて可塑性を有効にすることと、
人工ニューロンの前記第1の集団の、または人工ニューロンスパイキングの前記第2の集団の、異なるいくつかの人工ニューロンに基づいて可塑性を無効にすることとをさらに備える、C1に記載の方法。
[C16]
前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
人工ニューロンの前記第1の集団または人工ニューロンスパイキングの前記第2の集団のうちの少なくとも1つの人工ニューロンのセットに基づいて、可塑性を有効にすることをさらに備える、C1に記載の方法。
[C17]
前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
人工ニューロンの前記第1の集団または定義された活動率を有する人工ニューロンの前記第2の集団のうちの少なくとも1つの人工ニューロンのセットに基づいて、可塑性を有効にすることをさらに備える、C1に記載の方法。
[C18]
前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
メトリックに到達するシナプスの前記第1の集団またはシナプスの前記第2の集団のうちの少なくとも1つに関連付けられるシナプス重みの機能に基づいて可塑性を有効にすることをさらに備える、C1に記載の方法。
[C19]
人工神経系を操作するための装置であって、
前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てて、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てて、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するように構成された処理システムと、
前記処理システムに結合されたメモリとを備える、装置。
[C20]
人工神経系を操作するための装置であって、
前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てるための手段と、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てるための手段と、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記第1の集団または前記第2の集団のうちの少なくとも1つにおける一手段、またはより多くのシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するための手段とを備える、装置。
[C21]
人工神経系を操作するためのコンピュータプログラム製品であって、
前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることと、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てることと、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することとを行うために実行可能な命令を有するコンピュータ可読媒体を備える、コンピュータプログラム製品。
[C22]
人工神経系を操作するための方法であって、
前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、
前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送ることとを備える、方法。
[C23]
前記セットにおける前記パラメータが、前記グループ内の人工ニューロンだけに適用するパラメータと、前記グループ内のシナプスだけに適用するパラメータと、前記グループ内の人工ニューロンとシナプスの両方に適用するパラメータとを備える、C22に記載の方法。
[C24]
前記グループ内の人工ニューロンだけに適用する前記パラメータが、恒常性有効フラグと恒常性無効フラグとを備える、C23に記載の方法。
[C25]
前記グループ内のシナプスだけに適用する前記パラメータが、シナプス後電位(PSP)転送有効フラグおよびPSP転送無効フラグを備える、C23に記載の方法。
[C26]
前記グループ内の人工ニューロンとシナプスの両方に適用する前記パラメータが、可塑性有効フラグと可塑性無効フラグとを備える、C23に記載の方法。
[C27]
人工神経系を操作するための装置であって、
前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てて、
前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送るように構成された処理システムと、
前記処理システムに結合されたメモリとを備える、装置。
[C28]
人工神経系を操作するための装置であって、
前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てるための手段と、
前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送るための手段とを備える、装置。
[C29]
人工神経系を操作するためのコンピュータプログラム製品であって、
前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、
前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送ることとを行うために実行可能な命令を有するコンピュータ可読媒体を備える、コンピュータプログラム製品。

Claims (29)

  1. 人工神経系を操作するための方法であって、
    前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることと、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てることと、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することと
    を備える、方法。
  2. 前記人工ニューロンのうちの1つまたは複数、あるいは前記シナプスのうちの1つまたは複数のうちの少なくとも1つを、前記第1のグループタグと第2のグループタグの両方でタグ付けすることをさらに備える、請求項1に記載の方法。
  3. 前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータを変更することが、前記第1の集団および第2の集団におけるすべてのシナプスのためにこれらのパラメータを変更することをもたらすことと、
    前記第1のニューロンタイプおよび第2のニューロンタイプに関連付けられる他のパラメータを変更することが、前記第1の集団および第2の集団におけるすべての人工ニューロンのためにこれらの他のパラメータを変更することをもたらすことと
    をさらに備える、請求項1に記載の方法。
  4. パラメータの前記第1のセットおよび第2のセットが、可塑性を有効にするためのフラグ、可塑性を無効にするためのフラグ、シナプス後電位(PSP)転送のためのフラグ、ドーパミンのためのフラグ、恒常性有効フラグ、恒常性無効フラグ、可塑性有効フラグ、または可塑性無効フラグのうちの少なくとも1つを備える、請求項1に記載の方法。
  5. 可塑性を有効にするための前記フラグと、可塑性を無効にするための前記フラグと、シナプス後電位(PSP)転送のための前記フラグと、ドーパミンのための前記フラグとを同時に制御することをさらに備える、請求項4に記載の方法。
  6. 前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータが、スパイクタイミング依存可塑性(STDP)テーブル、リソースモデル、または可塑性パラメータのうちの少なくとも1つを備える、請求項1に記載の方法。
  7. 前記第1のセットおよび第2のセットにおけるパラメータを同時に制御することをさらに備える、請求項1に記載の方法。
  8. 前記第1のシナプスタイプが前記第2のシナプスタイプと同じであり、
    前記第1のニューロンタイプが前記第2のニューロンタイプと同じであり、前記方法が、
    前記第1のセットおよび第2のセットにおけるパラメータを、異なる時間インスタントに変更することをさらに備え、
    前記第1のセットにおけるパラメータの値が、前記第2のセットにおけるそのパラメータの値とは異なる、請求項1に記載の方法。
  9. シナプスの前記第1の集団および第2の集団が、同じレイヤまたは同じタイプのうちの少なくとも1つのシナプスのセットのサブセットであり、
    人工ニューロンの前記第1の集団および第2の集団が、同じレイヤまたは同じタイプのうちの少なくとも1つの人工ニューロンのセットのサブセットである、請求項1に記載の方法。
  10. 前記第1のセットおよび第2のセットにおけるパラメータが、前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられるパラメータから外される、請求項1に記載の方法。
  11. 前記第1のセットおよび第2のセットにおける少なくとも1つのパラメータが、前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられる少なくとも1つのパラメータと共通であり、前記方法が、
    前記第1のセットおよび第2のセットにおける前記少なくとも1つのパラメータに基づいて、前記第1のシナプスタイプおよび第2のシナプスタイプに関連付けられる前記少なくとも1つのパラメータをオーバーライドすることをさらに備える、請求項1に記載の方法。
  12. 前記第1のグループタグまたは前記第2のグループタグのうちの少なくとも1つが動的に割り当てられる、請求項1に記載の方法。
  13. 第1のグループタグまたは第2のグループタグのうちの前記少なくとも1つを動的に割り当てることが、しきい値を下回る重みを有するシナプスの前記第1の集団、またはシナプスの前記第2の集団のうちの少なくとも1つのシナプスに関連付けられる、請求項12に記載の方法。
  14. 第1のグループタグまたは第2のグループタグのうちの前記少なくとも1つを動的に割り当てることが、
    再割振りまたは構造可塑性のうちの少なくとも1つのために、シナプスの前記第1の集団または第2の集団のうちの少なくとも1つの十分に活用されていないシナプス、および人工ニューロンの前記第1の集団または第2の集団のうちの少なくとも1つの十分に活用されていない人工ニューロンをフラグ付けすることをさらに備える、請求項12に記載の方法。
  15. 前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
    人工ニューロンの前記第1の集団の、または人工ニューロンスパイキングの前記第2の集団の、いくつかの人工ニューロンに基づいて可塑性を有効にすることと、
    人工ニューロンの前記第1の集団の、または人工ニューロンスパイキングの前記第2の集団の、異なるいくつかの人工ニューロンに基づいて可塑性を無効にすることと
    をさらに備える、請求項1に記載の方法。
  16. 前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
    人工ニューロンの前記第1の集団または人工ニューロンスパイキングの前記第2の集団のうちの少なくとも1つの人工ニューロンのセットに基づいて、可塑性を有効にすることをさらに備える、請求項1に記載の方法。
  17. 前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
    人工ニューロンの前記第1の集団または定義された活動率を有する人工ニューロンの前記第2の集団のうちの少なくとも1つの人工ニューロンのセットに基づいて、可塑性を有効にすることをさらに備える、請求項1に記載の方法。
  18. 前記1つまたは複数のパラメータを変更することが、可塑性を有効にすることおよび無効にすることを備え、前記方法が、
    メトリックに到達するシナプスの前記第1の集団またはシナプスの前記第2の集団のうちの少なくとも1つに関連付けられるシナプス重みの機能に基づいて可塑性を有効にすることをさらに備える、請求項1に記載の方法。
  19. 人工神経系を操作するための装置であって、
    前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てて、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てて、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するように構成された処理システムと、
    前記処理システムに結合されたメモリと
    を備える、装置。
  20. 人工神経系を操作するための装置であって、
    前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てるための手段と、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てるための手段と、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記第1の集団または前記第2の集団のうちの少なくとも1つにおける一手段、またはより多くのシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更するための手段と
    を備える、装置。
  21. 人工神経系を操作するためのコンピュータプログラム製品であって、
    前記人工神経系のシナプスの第1の集団または人工ニューロンの第1の集団のうちの少なくとも1つを第1のグループタグに割り当てることと、ここにおいて、前記第1のグループタグが、パラメータの第1のセットと、第1のシナプスタイプまたは第1のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記人工神経系のシナプスの第2の集団または人工ニューロンの第2の集団のうちの少なくとも1つを第2のグループタグに割り当てることと、ここにおいて、前記第2のグループタグが、パラメータの第2のセットと、第2のシナプスタイプまたは第2のニューロンタイプのうちの少なくとも1つとに関連付けられる、
    前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数のシナプス、あるいは、前記第1の集団または前記第2の集団のうちの少なくとも1つにおける1つまたは複数の人工ニューロンのうちの少なくとも1つについての前記1つまたは複数のパラメータの変更をもたらす、パラメータの前記第1のセットまたはパラメータの前記第2のセットのうちの少なくとも1つにおける1つまたは複数のパラメータを変更することと
    を行うために実行可能な命令を有するコンピュータ可読媒体を備える、コンピュータプログラム製品。
  22. 人工神経系を操作するための方法であって、
    前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、
    前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送ることと
    を備える、方法。
  23. 前記セットにおける前記パラメータが、前記グループ内の人工ニューロンだけに適用するパラメータと、前記グループ内のシナプスだけに適用するパラメータと、前記グループ内の人工ニューロンとシナプスの両方に適用するパラメータとを備える、請求項22に記載の方法。
  24. 前記グループ内の人工ニューロンだけに適用する前記パラメータが、恒常性有効フラグと恒常性無効フラグとを備える、請求項23に記載の方法。
  25. 前記グループ内のシナプスだけに適用する前記パラメータが、シナプス後電位(PSP)転送有効フラグおよびPSP転送無効フラグを備える、請求項23に記載の方法。
  26. 前記グループ内の人工ニューロンとシナプスの両方に適用する前記パラメータが、可塑性有効フラグと可塑性無効フラグとを備える、請求項23に記載の方法。
  27. 人工神経系を操作するための装置であって、
    前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てて、
    前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送る
    ように構成された処理システムと、
    前記処理システムに結合されたメモリと
    を備える、装置。
  28. 人工神経系を操作するための装置であって、
    前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てるための手段と、
    前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送るための手段と
    を備える、装置。
  29. 人工神経系を操作するためのコンピュータプログラム製品であって、
    前記人工神経系の人工ニューロンとシナプスとのグループを、関連付けられるパラメータのセットを有するグループタグに割り当てることと、
    前記グループ内のすべての人工ニューロンとシナプスとの前記パラメータの同時切替えをもたらす前記セットにおける前記パラメータの値を変更する単一のメッセージを送ることと
    を行うために実行可能な命令を有するコンピュータ可読媒体を備える、コンピュータプログラム製品。
JP2016516530A 2013-09-25 2014-08-18 ニューラルモデルのためのグループタグの実装のための方法および装置 Pending JP2016536657A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361882465P 2013-09-25 2013-09-25
US61/882,465 2013-09-25
US14/268,152 US9959499B2 (en) 2013-09-25 2014-05-02 Methods and apparatus for implementation of group tags for neural models
US14/268,152 2014-05-02
PCT/US2014/051469 WO2015047589A2 (en) 2013-09-25 2014-08-18 Methods and apparatus for implementation of group tags for neural models

Publications (2)

Publication Number Publication Date
JP2016536657A true JP2016536657A (ja) 2016-11-24
JP2016536657A5 JP2016536657A5 (ja) 2017-08-31

Family

ID=52691891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016516530A Pending JP2016536657A (ja) 2013-09-25 2014-08-18 ニューラルモデルのためのグループタグの実装のための方法および装置

Country Status (9)

Country Link
US (1) US9959499B2 (ja)
EP (1) EP3050004A2 (ja)
JP (1) JP2016536657A (ja)
KR (1) KR20160058825A (ja)
CN (1) CN105556543B (ja)
BR (1) BR112016006482A2 (ja)
CA (1) CA2921831A1 (ja)
TW (1) TW201523463A (ja)
WO (1) WO2015047589A2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170118479A1 (en) * 2015-10-23 2017-04-27 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and electronic device
CN108255775A (zh) * 2016-12-28 2018-07-06 上海磁宇信息科技有限公司 用于细胞阵列计算系统的细胞阵列总线广播方法
US11195079B2 (en) * 2017-11-22 2021-12-07 Intel Corporation Reconfigurable neuro-synaptic cores for spiking neural network
CN108830379B (zh) * 2018-05-23 2021-12-17 电子科技大学 一种基于参数量化共享的神经形态处理器
KR20200075344A (ko) 2018-12-18 2020-06-26 삼성전자주식회사 검출기, 객체 검출 방법, 학습기 및 도메인 변환을 위한 학습 방법
US11625583B2 (en) * 2019-02-13 2023-04-11 Mipsology SAS Quality monitoring and hidden quantization in artificial neural network computations
TWI828109B (zh) * 2019-09-24 2024-01-01 美商應用材料股份有限公司 用於組織分割之機器學習模型的交互式訓練
CN113065647B (zh) * 2021-03-30 2023-04-25 西安电子科技大学 加速神经网络的计算-存储通信系统及通信方法
CN115169547B (zh) * 2022-09-09 2022-11-29 深圳时识科技有限公司 神经形态芯片及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0414192A (ja) * 1990-05-07 1992-01-20 Fujitsu Ltd ニューラルネットワークにおける結合のグループ単位学習調整方式
JPH06348675A (ja) * 1993-06-07 1994-12-22 Ebara Corp ニューロコンピュータ応用機器およびこれを含む機械装置
JP2002251601A (ja) * 2001-02-22 2002-09-06 Fuji Xerox Co Ltd ニューラルネットワーク処理装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276769A (en) * 1989-03-13 1994-01-04 Sharp Kabushiki Kaisha Neural network learning apparatus and method
EP0937286B1 (en) * 1996-11-05 2002-03-27 Cyberlife Technology Limited Process control
US8630966B2 (en) 2009-01-27 2014-01-14 Salk Institute For Biological Studies Temporally dynamic artificial neural networks
US8504499B2 (en) 2009-07-15 2013-08-06 The Intellisis Corporation Constant memory implementation of a phase-model neural network
US20110055131A1 (en) * 2009-08-28 2011-03-03 Hung-Han Chen Method of universal computing device
US9129220B2 (en) 2010-07-07 2015-09-08 Qualcomm Incorporated Methods and systems for digital neural processing with discrete-level synapes and probabilistic STDP
US8738554B2 (en) 2011-09-16 2014-05-27 International Business Machines Corporation Event-driven universal neural network circuit
US9098811B2 (en) * 2012-06-04 2015-08-04 Brain Corporation Spiking neuron network apparatus and methods
US8943008B2 (en) * 2011-09-21 2015-01-27 Brain Corporation Apparatus and methods for reinforcement learning in artificial neural networks
US8712939B2 (en) 2011-09-21 2014-04-29 Brain Corporation Tag-based apparatus and methods for neural networks
US9129221B2 (en) 2012-05-07 2015-09-08 Brain Corporation Spiking neural network feedback apparatus and methods
US9256823B2 (en) * 2012-07-27 2016-02-09 Qualcomm Technologies Inc. Apparatus and methods for efficient updates in spiking neuron network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0414192A (ja) * 1990-05-07 1992-01-20 Fujitsu Ltd ニューラルネットワークにおける結合のグループ単位学習調整方式
JPH06348675A (ja) * 1993-06-07 1994-12-22 Ebara Corp ニューロコンピュータ応用機器およびこれを含む機械装置
JP2002251601A (ja) * 2001-02-22 2002-09-06 Fuji Xerox Co Ltd ニューラルネットワーク処理装置

Also Published As

Publication number Publication date
TW201523463A (zh) 2015-06-16
WO2015047589A2 (en) 2015-04-02
CN105556543A (zh) 2016-05-04
KR20160058825A (ko) 2016-05-25
BR112016006482A2 (pt) 2017-08-01
EP3050004A2 (en) 2016-08-03
CA2921831A1 (en) 2015-04-02
CN105556543B (zh) 2018-11-23
US20150088796A1 (en) 2015-03-26
US9959499B2 (en) 2018-05-01
WO2015047589A3 (en) 2015-05-21

Similar Documents

Publication Publication Date Title
JP6130056B2 (ja) スパイキングネットワークの効率的なハードウェア実装
JP2016536679A (ja) ニューラルシミュレータ用の共有メモリアーキテクチャ
JP6275868B2 (ja) ニューラルウォッチドッグ
JP2016536657A (ja) ニューラルモデルのためのグループタグの実装のための方法および装置
JP2017509982A (ja) 原位置ニューラルネットワークコプロセッシング
JP6133503B2 (ja) 擬似乱数のプログラム可能な確率分布関数を生成するための方法および装置
JP2017511936A (ja) 現在の計算リソースへのニューラルネットワーク適応
JP2016539414A (ja) スパイキングニューラルネットワークにおいてリプレーを使用するシナプス学習を実装すること
JP2017509952A (ja) シャドウネットワークでニューラルネットワークを監視すること
JP2017509951A (ja) スパースニューラルネットワークを構成すること
JP2017513127A (ja) スパイキング深層信念ネットワーク(dbn)におけるトレーニング、認識、および生成
JP2016538632A (ja) 教師あり学習を使用してクラスにタグ付けするための方法および装置
JP2017510890A (ja) 一般的なニューロンモデルの効率的な実装のための方法および装置
JP2017519268A (ja) スパイキングニューラルネットワークにおけるグローバルスカラ値によって可塑性を調節すること
WO2015020802A2 (en) Computed synapses for neuromorphic systems
JP2016530630A (ja) ニューラルデバイスのトレーニングを調節するための方法および装置
JP2017513108A (ja) サブしきい値変調を介するアナログ信号再構築および認識
JP6193509B2 (ja) 可塑性シナプス管理
JP2017509980A (ja) 動的な空間ターゲット選択
JP2016538633A (ja) 多次元範囲にわたって分離可能なサブシステムを含むシステムの評価
JP2016532216A (ja) 人工神経システムにおけるブレークポイント決定ユニットを実現するための方法および装置
JP2016537711A (ja) スパイキングニューロンのネットワークにおける輻輳回避
JP6219509B2 (ja) シナプス遅延を動的に割り当てることおおよび検査すること
JP6096388B2 (ja) ニューラルネットワークモデルにおけるドップラー効果処理
JP6133517B2 (ja) 座標変換のための位相コーディング

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170721

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180629

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190212