(57)【特許請求の範囲】
【請求項１】
経路を含んでいるコンピュータ・ネットワークであって、
前記経路を介して通信するように構成された複数のユニットを備え、
前記ネットワークが、前記複数のユニットのうちの第１のユニットを前記複数のユニットのうちの第２のユニットに接続する複数のネットワーク経路から形成されたループ内の情報ループ信号を識別するように構成され、
前記ネットワークが、スパイク・タイミング依存可塑性（ＳＴＤＰ）に依存する抑制ゲート制御を前記複数のネットワーク経路に適用するようにさらに構成され、
前記ネットワークが、ＳＴＤＰ関数を開ゲートの出力および閉ゲートの出力に適用することによって、前記ループ内の開ゲートおよび閉ゲートを位相シフトするようにさらに構成され、
前記ネットワークが、前記位相シフトの速度および方向のうちの少なくとも１つが調整信号によって決まるようにさらに構成され、
前記調整信号が、前記ＳＴＤＰに依存する抑制ゲート制御における変化の少なくとも一部に基づく、コンピュータ・ネットワーク。
【請求項２】
前記ユニットが時間エンコーダを備える、請求項１に記載のネットワーク。
【請求項３】
前記時間エンコーダが、前記時間エンコーダと外部エフェクタのセットの結合によって行動選択を選択的に駆動する、請求項２に記載のネットワーク。
【請求項４】
前記ネットワークが、情報最大化を適用して前記時間エンコーダのスパイク速度を調整するようにさらに構成された、請求項２に記載のネットワーク。
【請求項５】
前記情報最大化への入力が、
ネットワークの外部のデータと、
前記情報最大化から得られたフィードフォワード・データと、
ＳＴＤＰに依存する抑制ゲートを横断するスパイクから生じたデータと、
フィードバック接続を横断するスパイクから生じたデータとのうちの少なくとも１つを備える、請求項４に記載のネットワーク。
【請求項６】
前記ネットワークが、ＳＴＤＰの制御の下で、フィードフォワード・スパイク時間およびフィードバック・スパイク時間の分布の関数として前記時間エンコーダのスパイク・タイミングを選択するようにさらに構成された、請求項２に記載のネットワーク。
【請求項７】
前記調整信号が外部測定の少なくとも一部に基づく、請求項１に記載のネットワーク。
【請求項８】
時間の経過に伴う前記位相シフトの合計がゼロに等しい、請求項１に記載のネットワーク。
【請求項９】
前記抑制ゲート制御における前記変化が、前記ゲート制御信号のベクトル表現における直交シフトを含む、請求項１に記載のネットワーク。
【請求項１０】
前記ネットワークのエフェクタ出力の制御の下にある既定の時間間隔の後に前記変化が発生する、請求項１に記載のネットワーク。
【請求項１１】
経路を含んでいるネットワークを実装するコンピュータ実装方法であって、、
プロセッサによって、前記経路を介して複数のユニット間で通信することと、
前記プロセッサによって、前記複数のユニットのうちの第１のユニットを前記複数のユニットのうちの第２のユニットに接続する複数のネットワーク経路から形成されたループ内の情報ループ信号を識別することと、
スパイク・タイミング依存可塑性（ＳＴＤＰ）に依存する抑制ゲート制御を前記複数のネットワーク経路に適用することと、
ＳＴＤＰ関数を開ゲートの出力および閉ゲートの出力に適用することによって、前記ループ内の開ゲートおよび閉ゲートを位相シフトすることと、
前記位相シフトの速度および方向のうちの少なくとも１つが調整信号によって決まるようにすることであって、
前記調整信号が前記ＳＴＤＰに依存する抑制ゲート制御における変化の少なくとも一部に基づく、前記決まるようにすることと
を含む、コンピュータ実装方法。
【請求項１２】
前記ユニットが時間エンコーダを備える、請求項１１に記載の方法。
【請求項１３】
前記時間エンコーダが、前記時間エンコーダと外部エフェクタのセットの結合によって行動選択を選択的に駆動する、請求項１２に記載の方法。
【請求項１４】
経路を含んでいるネットワークを実装するためのコンピュータ・プログラムであって、
前記経路を介して複数のユニット間で通信することと、
前記複数のユニットのうちの第１のユニットを前記複数のユニットのうちの第２のユニットに接続する複数のネットワーク経路から形成されたループ内の情報ループ信号を識別することと、
スパイク・タイミング依存可塑性（ＳＴＤＰ）に依存する抑制ゲート制御を前記複数のネットワーク経路に適用することと、
ＳＴＤＰ関数を開ゲートの出力および閉ゲートの出力に適用することによって、前記ループ内の開ゲートおよび閉ゲートを位相シフトすることと、
前記位相シフトの速度および方向のうちの少なくとも１つが調整信号によって決まるようにすることであって、
前記調整信号が前記ＳＴＤＰ抑制ゲート制御における変化の少なくとも一部に基づく、
前記決まるようにすることと
を含む方法をコンピュータに実行させる、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、生物学的神経系をモデル化するためのコンピュータ・システムの使用に関する。さらに詳細には、本開示は、時間エンコーダおよび情報ループ信号（informative looping signal）を含んでいるパルス・ニューラル・ネットワークを実装するコンピュータ・システムを使用した生物学的神経系のモデル化に関連する。
【背景技術】
【０００２】
動物の継続的に進化している動的感覚刺激の知覚および動的感覚刺激に対する行動反応は、最終的に、ニューロンによって生成されるいわゆるスパイク列の相対的に短いセグメントに含まれている情報から生じる必要がある。それらのスパイク列（パルスまたは活動電位としても知られている）は、神経線維を移動することができる電圧スパイクである。ニューロンによって生成される標準的なスパイク列は、特徴的な時空間構造を伴う局所的事象を含んでいる時空間パターンを含む。それらの事象は、さまざまな空間的スケールおよび時間的スケールで発生し、脳などの生物学的神経系は、それらの事象を統合して、関連する情報の一部を抽出することができる。したがって、生物学的神経系は、ノイズの多い時空間の感覚入力によって提供される情報に対して順序を強いる。
【０００３】
ニューロンは、生物学的神経系の中心的要素である。脳の大部分は、グリア細胞およびアストロサイトとして知られている構造細胞で構成されている。これらの構造細胞の間には、線維に沿って電気インパルスを伝導するニューロンがある。平均的な人間の脳は約１０００億個のニューロンを含み、平均すると、各ニューロンは約１０００個の他のニューロンに接続されていると推定されている。これらのニューロンおよびそれらの相互接続は、脳の処理能力の中心になる広大で複雑な生物学的ニューラル・ネットワークを形成する。ニューロンは、人体の細胞の中でも、スパイク列や活動電位などの信号を長い距離を経由して迅速に伝搬する能力において際立っている。いわゆる感覚ニューロンは、光、音、味覚、嗅覚、触覚などの外部刺激の存在に反応して、さまざまな時間的パターンで活動電位のシーケンスを発火することによって、それらの活動を変化させる。刺激に関する情報は、活動電位のこのパターンでエンコードされ、脳内および脳の周辺に送信される。
【０００４】
生物学的神経系では、１つのニューロンの軸索と別のニューロンの樹状突起との間の接触点はシナプスと呼ばれ、シナプスに対して、２つのニューロンがそれぞれシナプス前およびシナプス後と呼ばれる。ニューロンは、シナプスを介して受信された十分な入力によって活性化された場合、スパイクを放射し、それらのスパイクはシナプスに配信される。このニューロンは、それらのシナプスに対してシナプス前になる。ニューロンは、「興奮性」または「抑制性」のいずれかになることができる。シナプス・コンダクタンスは、シナプスがシナプス前スパイクによって活性化された場合に、シナプスがシナプス後ターゲットに対して持つ影響量の尺度である。シナプス・コンダクタンスは、スパイク・タイミング依存可塑性（ＳＴＤＰ：spike-timing dependent plasticity）に従って、シナプス前ニューロンおよびシナプス後ニューロンの相対的スパイク時間の関数として、時間とともに変化することができる。標準的なＳＴＤＰルールは、シナプス前ニューロンが発火した後に、シナプス後ニューロンが発火した場合、シナプスのコンダクタンスの有効性を増やし、これら２つの発火の順序が逆転した場合、シナプスのコンダクタンスの有効性を減らす。個人の体験の知的所有物は、脳全体の数兆個のシナプス間の信号のコンダクタンスに格納される。
【０００５】
生物学的神経系の動作のすべての側面の基礎になる計算は、関連する情報がスパイク列内で表現されるのに使用される神経コードの文脈の中で実行される。生物学的神経系内で使用される情報符号化方式の決定は、神経コード自体の性質における内発的興味だけでなく、コードの知識が、生物学的神経計算の基礎になるメカニズムに関するモデルの開発に課すことができる制約により、役に立つ。
【０００６】
進化によって人間の脳には、現在のコンピュータ・システムにはない多くの好ましい特徴が与えられた。それらの特徴には、膨大な並列性、分散表現と分散計算、学習能力、一般化能力、適応能力、特有の文脈情報処理、耐障害性、および低いエネルギー消費量などがあるが、これらに限定されない。現在のデジタル・コンピュータは、数値計算および関連するシンボル操作の領域では、人間よりも性能が優れている。しかし人間は、複雑な知覚的問題（例えば、人の顔をちらっと見るだけで、人混みの中から知人を認識すること）を苦労せずに一定の速度で解くことができ、その能力は最高速のコンピュータが小さく見えるほどである。生物学的神経系とコンピュータの間で、性能にこのような驚くべき差が生じるのは、生物学的神経系のアーキテクチャが、標準的なコンピュータ・システムのアーキテクチャとは全く異なっているからである。この違いは、各計算モデルが最高の性能を発揮できる機能の種類に大きな影響を与える。
【０００７】
人工ニューラル・ネットワーク（ＡＮＮ：artificial neuralnetworks）（神経形態学的システムおよびシナプトロニック・システムとしても知られている）は、電子システムが、人間の脳などの生物学的神経系に類似する方法で基本的に機能できるようにする計算システムである。本開示では、ＡＮＮへの参照は、パルス・ニューラル・ネットワーク（ＰＮＮ）を含むがこれに限定されない、生物学的ニューラル・ネットワークをモデル化するコンピュータ・システムおよび電子システムの広い範囲をカバーするように、広い意味で使用される。一般にＡＮＮは、０と１を操作する従来のデジタル・モデルを使用しない。代わりに、標準的なＡＮＮは、生物学的脳のニューロンとほぼ機能的に等しい処理要素の間に、接続を作成する。
【０００８】
ＡＮＮは、多くの場合、多くの相互接続を持つ多くのシンプルなプロセッサを含んでいる比較的に大きい並列コンピューティング・システムとして実装される。ＡＮＮ（またはＰＮＮ）を使用して生物学的神経系をモデル化することは、生物学的機能を良く理解するのに貢献できる。多くのＡＮＮモデルは、人間の脳内で使用されていると考えられている「組織的」原理を使用しようとする。現在のコンピュータ・ハードウェア技術（ＶＬＳＩおよび光など）は、そのようなモデル化を実現可能にした。ＡＮＮは、神経生理学、認知科学／心理学、物理学（統計力学）、制御理論、コンピュータ科学、人工知能、統計学／数学、パターン認識、コンピュータ・ビジョン、並列処理、およびハードウェア（例えば、デジタル／アナログ／ＶＬＳＩ／光）を含む、さまざまな分野からの知識を組み込む。
【０００９】
現在のＡＮＮは、人口ニューロン（「ノード」としても知られている）のネットワークで構成される。これらのノードは互いに接続され、ノード間の接続の強度には、値が割り当てられる。例えば、接続を、抑制（最大抑制は負の１．０）または興奮（最大興奮は正の１．０）を示しているとして識別することができる。接続の大きさの値が高い場合、それは強い接続を示している。各ノードの設計には、伝達関数も組み込まれる。標準的なＡＮＮには、入力ノード、隠れノード、および出力ノードという３種類のニューロンが存在する。
【００１０】
入力ノードは、数値的に表現できる情報を取り込む。この情報は活性化値として提示され、各ノードには数値が与えられ、大きい値の数値ほど大きい活性化を引き起こす。次にこの情報は、ネットワーク全体に渡される。接続の強度または有効性（重み）、抑制または興奮、および伝達関数に基づいて、活性化値がノード間で渡される。各ノードは、受信した活性化値を合計する。次に、各ノードは、その伝達関数に基づいて値を変更する。活性化は、ネットワークを流れ、隠れ層を通り、最後に出力ノードに達する。その後、出力ノードは、入力を有意義な方法で外部の世界に反映する。
【００１１】
ニューラル・ネットワークには多くの種類があるが、２つの最も広いカテゴリは、フィードフォワード・ネットワークおよびフィードバック・ネットワークである。フィードフォワード・ネットワークは、入力、出力、および隠れ層を含む非回帰ネットワークである。信号は、一方向にのみ移動することができる。入力データは、計算を実行する処理要素の層に渡される。各処理要素は、入力の加重和に基づいて、その計算を実行する。その後、新しく計算された値は、次の層に供給される新しい入力値になる。このプロセスは、すべての層を通過して出力を決定するまで継続する。出力層でニューロンの出力を定量化するために、しきい値伝達関数が使用される場合がある。
【００１２】
フィードバック・ネットワークは、フィードバック経路を含んでいる。つまりフィードバック・ネットワークの信号は、ループを使用して両方向に移動できる。ニューロン間で可能なあらゆる接続が許容される。この種類のネットワークにはループが存在するため、特定の動作では、ネットワークが、平衡状態に達するまで継続的に変化する非線形な動的システムになる場合がある。フィードバック・ネットワークは、多くの場合、連想記憶および最適化問題に使用され、そのネットワークは、相互接続された因子の最適な配置を求める。
【００１３】
ＡＮＮでは、スパイク生成機能は、一般に時間エンコーダまたはスパイク・ジェネレータとして知られているコンポーネントによってモデル化できる。したがって、前述の生物学的神経系のより多くの知識を獲得する能力の実現は、スパイクを生成する時間エンコーダの回帰ネットワーク内で神経情報がエンコードされる方法をモデル化するＡＮＮの開発に左右される。時間エンコーダは、非同期的に受信された信号を統合し、その後の非同期的なパルス信号のセットを生成することによって、情報のデジタル・エンコーディングおよびアナログ・エンコーディングの両方の代替手段を提供する。時間エンコーダ・ネットワークの特定の構成を使用して、ネットワークから出力されたパルスまたはスパイクのセットから、ネットワークに入力された信号のセットに関する情報を抽出できる。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】米国特許第８，４７３，４３９号
【特許文献２】米国特許出願公開第ＵＳ２０１２／０１０９８６４号
【非特許文献】
【００１５】
【非特許文献１】Sebastien Helie, SrinivasaChakravarthy and Ahmed A. Moustafa, titled “ExploringThe Cognitive and Motor Functions of The Basal Ganglia: An Integrative Reviewof Computational Cognitive Neuroscience Models,”published in Frontiers In Computational Neuroscience, December 2013
【非特許文献２】S. Brunak and B. Lautrup, titledNeural Networks, Computers with Intuition, published in World Scientific,Singapore (1990)
【非特許文献３】Artificial Neural Networks: ATutorial, by Anil K. Jain, Jianchang Mao and K.M. Mohiuddin, IEEE, March 1996
【非特許文献４】"A Local Learning Rule ThatEnables Information Maximization for Arbitrary Input Distributions,” by R. Linsker (1997) Neural Computation 9, pages1661-1665
【非特許文献５】Kozloski and Cecchi, titled “A Theory Of Loop Formation And Elimination By Spike Timing-DependentPlasticity,” published by Front Neural Circuits (Mar10, 2010)
【発明の概要】
【発明が解決しようとする課題】
【００１６】
本発明は、時間エンコーダおよび情報ループ信号（informative loopingsignal）を含んでいるパルス・ニューラル・ネットワークを提供する。
【課題を解決するための手段】
【００１７】
各実施形態は、経路を含んでいるコンピュータ・ネットワークを対象にしている。ネットワークは、経路を介して通信するように構成された複数のユニットを含んでいる。ネットワークは、複数のユニットのうちの第１のユニットを複数のユニットのうちの第２のユニットに接続する複数のネットワーク経路から形成されたループ内の情報ループ信号を識別するように構成される。ネットワークは、スパイク・タイミング依存可塑性（ＳＴＤＰ）に依存する抑制ゲート制御を複数のネットワーク経路に適用するようにさらに構成される。ネットワークは、ＳＴＤＰ関数を開ゲートの出力および閉ゲートの出力に適用することによって、ループ内の開ゲートおよび閉ゲートを位相シフトするようにさらに構成される。ネットワークは、位相シフトの速度および方向が調整信号によって決まるようにさらに構成される。この調整信号は、ＳＴＤＰに依存する抑制ゲート制御における変化の少なくとも一部に基づく。
【００１８】
各実施形態は、経路を含んでいるネットワークを実装するコンピュータ実装方法をさらに対象にしている。方法は、経路を介して複数のユニット間で通信することを含む。方法は、複数のユニットのうちの第１のユニットを複数のユニットのうちの第２のユニットに接続する複数のネットワーク経路から形成されたループ内の情報ループ信号を識別することをさらに含む。方法は、スパイク・タイミング依存可塑性（ＳＴＤＰ）に依存する抑制ゲート制御を複数のネットワーク経路に適用することをさらに含む。方法は、ＳＴＤＰ関数を開ゲートの出力および閉ゲートの出力に適用することによって、ループ内の開ゲートおよび閉ゲートを位相シフトすることをさらに含む。方法は、位相シフトの速度および方向が調整信号によって決まるようにすることをさらに含む。この調整信号は、ＳＴＤＰに依存する抑制ゲート制御における変化の少なくとも一部に基づく。
【００１９】
各実施形態は、経路を含んでいるネットワークを実装するためのコンピュータ・プログラム製品をさらに対象にしている。コンピュータ・プログラム製品は、プログラム命令が具現化されたコンピュータ可読記憶媒体を含み、コンピュータ可読記憶媒体は、正確な意味において一時的信号ではない。これらのプログラム命令は、プロセッサ回路で方法を実行するために、プロセッサ回路によって読み取ることができる。方法は、経路を介して複数のユニット間で通信することを含む。方法は、複数のユニットのうちの第１のユニットを複数のユニットのうちの第２のユニットに接続する複数のネットワーク経路から形成されたループ内の情報ループ信号を識別することをさらに含む。方法は、スパイク・タイミング依存可塑性（ＳＴＤＰ）に依存する抑制ゲート制御を複数のネットワーク経路に適用することをさらに含む。方法は、ＳＴＤＰ関数を開ゲートの出力および閉ゲートの出力に適用することによって、ループ内の開ゲートおよび閉ゲートを位相シフトすることをさらに含む。方法は、位相シフトの速度および方向が調整信号によって決まるようにすることをさらに含む。この調整信号は、ＳＴＤＰに依存する抑制ゲート制御における変化の少なくとも一部に基づく。
【００２０】
各実施形態は、経路を含んでいるコンピュータ・ネットワーク内のループ信号を処理するコンピュータ実装方法をさらに対象にしている。方法は、ネットワークのプロセッサ・コンポーネントによって、コンピュータ・ネットワークの情報ループ信号を識別することを含み、この情報ループ信号は、特徴を備えているスパイクを含み、このスパイクの特徴は、状態、スパイクが各状態を横断する順序、ならびに、その後のスパイクが横断する状態への変化を引き起こすことにおけるスパイクおよびスパイク・パターンの有用性を含む。方法は、順方向ドライバ・ゲート（forward driver gate）を制御して順方向経路を開くか、または閉じるために、情報ループ信号を使用するネットワークをさらに含む。
【００２１】
各実施形態は、経路を含んでいるコンピュータ・ネットワークの方法をさらに対象にしている。方法は、ネットワークのプロセッサによって、入力データを情報最大化ネットワーク（information maximization network）に提供することを含む。方法は、情報最大化ネットワークからの出力の関数として、スパイク・ジェネレータでスパイクを生成することをさらに含む。方法は、生成されたスパイクのループ・トポロジおよびそれらの経路に影響を与えるために、第１のスパイク・タイミング依存可塑性（ＳＴＤＰ）関数を生成されたスパイクに適用することをさらに含む。方法は、スパイク・ジェネレータに対する順方向ドライバ・ゲートのスパイク反応を計算すること、およびスパイク・ジェネレータに対する順方向ドライバ・ゲートの反応に基づいてモジュレータを抑制することをさらに含む。
【００２２】
その他の特徴および長所が、本明細書に記載された技術によって実現される。本明細書では、その他の実施形態および態様が詳細に説明される。さらに良く理解するために、説明および図面を参照されたい。
【００２３】
実施形態と見なされる主題は、本明細書の最後にある特許請求の範囲において詳細に指摘され、明確に請求される。各実施形態の前述およびその他の特徴と長所は、添付の図面と併せて行われる以下の詳細な説明から明らかになる。
【図面の簡単な説明】
【００２４】
【図１】生物学的ニューロンの略図である。
【図２】人間の脳の構造の一部を表すブロック図である。
【図３】本開示の１つまたは複数の実施形態を実装できるコンピュータ・システムの例を示す図である。
【図４】本開示の１つまたは複数の実施形態によって利用できる情報最大化領域（informationmaximizing areas）の構成を示すブロック図である。
【図５】本開示の１つまたは複数の実施形態によって利用できる行動領域のブロック図の詳細を示す図である。
【図６】本開示の１つまたは複数の実施形態によって利用できる情報最大化領域および行動領域の構成を示すブロック図である。
【図７】本開示の１つまたは複数の実施形態によって利用できる情報最大化領域および行動領域の別の構成を示すブロック図である。
【図８】本開示の１つまたは複数の実施形態によって利用できる行動領域および順方向ドライバ・ゲートの構成を示すブロック図である。
【図９】本開示の１つまたは複数の実施形態によって利用できる行動領域および順方向ドライバ・ゲートの別の構成を示すブロック図である。
【図１０】本開示の１つまたは複数の実施形態に記載された方法を示すフロー図である。
【図１１】本開示の１つまたは複数の実施形態に記載された別の方法を示すフロー図である。
【図１２】本開示の１つまたは複数の実施形態に記載された別の方法を示すフロー図である。
【図１３】本開示の１つまたは複数の実施形態に記載された別の方法を示すフロー図である。
【図１４】情報最大化領域および入力測定から形成され、本開示の１つまたは複数の実施形態によって利用できる情報最大化ネットワークの実装例を示す図である。
【図１５】本開示の１つまたは複数の実施形態によって利用できる情報最大化ネットワークおよび行動ネットワークの構成の例である。
【図１６】図１６Ａは、本開示の１つまたは複数の実施形態によって利用できるＳＴＤＰ関数を調整するループの異なる部分を示す図である。図１６Ｂは、本開示の１つまたは複数の実施形態によって利用できるＳＴＤＰ関数を調整するループの異なる部分を示す図である。図１６Ｃは、本開示の１つまたは複数の実施形態によって利用できるＳＴＤＰ関数を調整するループの異なる部分を示す図である。図１６Ｄは、本開示の１つまたは複数の実施形態によって利用できるＳＴＤＰ関数を調整するループの異なる部分を示す図である。
【図１７】人間の脳の感覚領域、辺縁系領域、運動領域をカバーするグランド・ループであって、その概念を本開示の１つまたは複数の実施形態に関連して利用できる、グランド・ループのさまざまな態様を示す図である。
【図１８】本開示の１つまたは複数の実施形態によって利用できる順方向ドライバ・ゲートの構成の例をさらに示す図である。
【図１９】本開示の１つまたは複数の実施形態に記載された順方向ドライバ・ゲートでのＳＴＤＰ関数の実装方法のその他の詳細を示す図である。
【図２０】本開示の１つまたは複数の実施形態に記載されたグランド・ループが反復的に横断される方法を示す、時間の循環図である。
【図２１】本開示の１つまたは複数の実施形態に記載されたグランド・ループが反復的に横断される方法を示す、時間の循環図である。
【図２２】本開示の１つまたは複数の実施形態に記載されたグランド・ループが反復的に横断される方法を示す、時間の循環図である。
【図２３】本開示の１つまたは複数の実施形態に記載された順方向ゲート制御ＳＴＤＰに入力される調整のソースを示す図である。
【図２４】本開示の１つまたは複数の実施形態に記載された順方向ゲート制御ＳＴＤＰに入力される調整のソースを示す別の図である。
【図２５】本開示の１つまたは複数の実施形態に記載されたコンピュータ・プログラム製品を示す図である。
【発明を実施するための形態】
【００２５】
本開示は、脳の構造および機能のモデル化に特に重点を置いた生物学的ニューラル・ネットワークのモデル化への参照を含むが、本明細書で列挙されている説明内容の実装がどの特定の環境のモデル化にも限定されないということが、あらかじめ理解される。むしろ、本開示の実施形態は、環境へのさまざまな入力をベクトルに変換できる限り、任意のその他の種類の環境（例えば、天候パターン、インターネットから収集された任意のデータなど）と併せて実装することができる。
【００２６】
本開示はコンピュータ・システム・アーキテクチャを対象にしているが、参照および説明を容易にするために、開示されたコンピュータ・システム・アーキテクチャのさまざまな態様は、例えばニューロン、シナプス、ＤＯＰＡ、およびＧＡＢＡなどの神経学の用語を使用して説明される。本明細書では、コンピュータ・システム・アーキテクチャに関する説明または例示のために、神経学の用語または神経学の略語を使用することは、参照を容易にするためであり、説明された神経学的機能または神経学的コンポーネントと同等のパルス・ニューラル・ネットワークを対象にすることを目的にしていると理解されるであろう。
【００２７】
本明細書において前述したように、現在の時間エンコーダは、非同期的に受信された信号を統合し、その後の非同期的なパルス信号のセットを生成することによって、情報のデジタル・エンコーディングおよびアナログ・エンコーディングの両方の代替手段を提供する。時間エンコーダ・ネットワークの特定の構成を使用して、ネットワークから出力されたパルスまたは「スパイク」のセットから、ネットワークに入力された信号のセットに関する情報を抽出できる。情報は、出力時間エンコーダのスパイク速度（スパイク数／秒）、時間エンコーダの集団でのスパイク速度間の相関関係、出力時間エンコーダによって生成されたパルス間の時間間隔、または出力時間エンコーダの集団によって生成されたパルス間の時間間隔のパターンの相関関係から抽出できる。ただし、既知の時間エンコーディング・ネットワークは、ネットワークによってエンコードされた特徴間の有用な関係に対応する一意のループ信号を識別し、持続性のために選択し、さまざまな追加ネットワーク動作（ネットワーク内の状態の遷移など）に使用し、その後終了できるように、回帰ネットワークを構成する方法を開示していない。さらに、既知の時間エンコーダは、出力活動の選択が入力データおよびループ信号の選択に基づいている回帰ネットワーク動作を説明していない。さらに、既知の時間エンコーダ・ネットワークは、入力データに基づいて特定の出力活動を駆動するためのループ信号の選択によって回帰ネットワーク内の情報をエンコードすることが、機械学習における困難な問題（新しい豊かな環境における行動選択など）を解決するのに役立つかどうかを決定しない。さらに、既知の時間エンコーダ・ネットワークは、回帰ネットワークの学習の準備段階を説明していない。この準備段階では、ループ信号の選択が、ネットワークの状態を遷移しながら、その後のループ信号およびネットワークを通るループ信号の経路の多用途性を維持するために行われる。さらに、既知の時間エンコーダ・ネットワークは、外部の値の測定の使用を説明していない。この外部の値の測定は、ネットワークの状態を適切に遷移しながら、その後のループ信号およびネットワークを通るループ信号の経路の多用途性を維持していることを示す内部調整信号を増大するために使用される。さらに、既知の時間エンコーダ・ネットワークは、回帰ネットワークの状態のネットワーク分類の使用を説明していない。このネットワーク分類は、ループ信号の経路を制限し、外部状態と内部状態の結合された測定に関して最大限の情報を提供する経路を選択するために使用される。
【００２８】
ここで、本開示の概要を説明すると、１つまたは複数の実施形態は、時間エンコーダおよび情報ループ信号を含んでいるＰＮＮを実装するコンピュータ・システムを使用した生物学的神経系のモデル化を対象にしている。時間エンコーダのネットワーク内で、有用な情報ループ信号を検出し、維持し、終了することができる静的ネットワーク構成および一連の再構成メカニズムが開示される。有用な情報ループ信号は、ネットワーク構成（本明細書では、情報に基づく交換（ＩＢＥＸ：information-based exchange）ネットワークと呼ばれる）によって入力およびエンコードされた情報に反応して、短期記憶を維持し、ネットワークの状態間での順序付けされた情報の遷移を生じさせ、運動ドライバを段階分けして、調整された有用な行動を引き起こすために使用できる。静的構成および再構成メカニズムは、特定の内部状態および入力データのセットに反応して、学習された遷移および関連する有用な行動のための汎用の記憶として一緒に機能する。
【００２９】
さらに、高度な情報ループ信号が本開示のネットワーク・メカニズムに従って識別されると、その信号は、一時的に安定したネットワーク状態で、情報の短期記憶などの動作に使用することができ、ネットワーク状態の遷移においてエンコードされた情報に反応して、ネットワーク状態間の遷移の有用な順序を学習し、運動ドライバを段階分けして、調整された有用な行動を引き起こす。さらに、ネットワーク・コンポーネントの持続的活動として発生する、情報ネットワークを横断する持続的ループ信号の特徴は、ネットワークによって関係情報を迅速に表現し、利用することを可能にする。スパイクなどのループ信号によって持続的ネットワーク状態の一意の順序付けされた横断において表現されたこの関係情報は、それらの状態によってエンコードされた情報を、状況に固有の方法で活用および増大できるようにする。このプロセスは、本開示では情報に基づく交換と呼ばれるため、本明細書では、情報に基づく交換（ＩＢＥＸ）ネットワークという用語を使用する。一意の順序で一意の状態を横断するスパイクは、スパイクが（例えばアクチュエータのセットへの、またはゲートへの）到着時に大量の情報を運ぶように、この状態と関係情報、および内部ネットワーク構成の「選択」に関する情報を反復的に集約する。そのようなスパイクは、本明細書では情報ループ信号と呼ばれる。
【００３０】
本開示の１つまたは複数の実施形態では、領域の少なくとも１つのフィードフォワード情報最大化ネットワークが提供される。情報最大化ネットワークの各領域は、外部データ・ソース、上流の領域からのフィードフォワード入力、または両方を含んでいる入力データに関する情報を最大化するユニットのセットを含む。これらの領域は、連続的に接続するか、分岐した（ファンアウト／ファンイン）ネットワーク・トポロジで接続するか、または複数の重なり合うフィードフォワード経路を含んでいる複雑なネットワーク・トポロジで接続することができる。領域内の各情報最大化ユニットは、スパイクを時間エンコーダの行動ネットワークに供給するスパイク・ジェネレータを制御する。
【００３１】
スパイク・ジェネレータは、情報最大化ユニットの反応レベルの何らかの関数である速度で、スパイクを生成する。スパイクのタイミングは、ランダムにすることができ、入力データに関する情報をエンコードすることができ、または使用可能な場合は、上流領域のスパイク・ジェネレータからのゲート制御された順方向ドライバ・スパイク（gated forward driver spikes）と、下流領域のスパイク・ジェネレータからのゲート制御されないフィードバック・スパイクの両方から集められた入力スパイク時間のセットから取り出され、中継される。複数のフィードフォワード・ネットワークがシステム内に存在する場合、それらを、ゲート制御されないフィードバックに類似する接続によってフィードフォワード方向に連結するか、特定の順方向ドライバ・ゲートによってフィードフォワード方向に連結することができる。スパイク時間をこのセットから取り出す確率は、セットに寄与する各スパイク・ジェネレータに固有の中継確率によって重み付けされる。次に、スパイク・ジェネレータからのスパイクは、フィードバック接続、順方向ドライバ・ゲート、またはその両方に向けられる。順方向ドライバ・ゲートは、開かれると、スパイク時間をセットに追加する。その下流のスパイク・ジェネレータは、そのセットから自分のスパイク時間を決定し、さらにそれらのスパイクに関するデータ（速度など）を、対応する情報最大化ユニットに入力されたデータとマージする。したがって、このユニットは、上流の領域から二重のフィードフォワード入力、つまり直接情報最大化ユニットの反応レベル、および順方向ドライバ・ゲートを介して条件付きで中継されたそれらのスパイク出力に関する情報を受信する。
【００３２】
スパイク・ジェネレータは、各入力スパイク・ジェネレータの中継確率を変更する関数を実装する。この関数は、入力スパイク／出力スパイクの時間的順序および間隔に対して動作し、スパイク・タイミング依存可塑性（ＳＴＤＰ）と呼ばれる。この関数により、正のフィードバック接続および正の順方向駆動入力によって形成されたスパイク・ジェネレータのネットワークは、短いループを除去し、ＳＴＤＰ関数の時間ウィンドウを超えるスパイク横断の周期を持つ長いループを維持することを優先する。特に興味深い１つのループは、感覚、辺縁系、または行動のいずれかの入力データを受信するフィードフォワード・ネットワークのセットを接続する感覚、辺縁系、運動（ＳＬＭ：sensory, limbic motor）グランド・ループである。このグランド・ループは、人間の脳内では、大脳皮質の一次運動領域（primary motor）から一次体知覚領域（primarysomatosensory areas）への高密度の投影によって完成する。
【００３３】
１つまたは複数の実施形態は、順方向ドライバ・ゲートによって実装される関数のセットも含む。この関数もＳＴＤＰであるが、ゲートを通る接続が負であり、したがって持続的な回帰ループ信号が不可能であるため、ループを調整しない。代わりにＳＴＤＰは、ゲートへの負（抑制性）のゲート制御スパイク入力の位相を、そのゲートを横断しようとしているネットワーク内のさまざまなスパイク・ジェネレータからの正のスパイク到着時間の周期的入力パターンに対してシフトする働きをする。位相シフトは、２種類の負のゲート制御スパイクによって制御される。その１つ（直接／ｄＳＰＮ／Ｄ１）は、ＧＰｉからのトニック閉信号（tonic closed signal）における一時的中断（ゲート開）を生成し、もう１つ（間接／ｉＳＰＮ／Ｄ２）は、（ＧＰｅ内のトニック負信号（tonic negative signal）における一時的中断、すなわちゲート閉によって）ＧＰｉからのトニック閉信号の増加を生成する。
【００３４】
負のゲート制御の開および閉の位相の独立制御は、前述の２つの経路によって、次のように制御される。追加モジュレータ（例えばＤＯＰＡ）および局所的競争（例えばＧＡＢＡ）に従って、モジュレータの存在における「局所的勝者」ユニットに対して位相シフトが確立される。なお、競争はユニット間の側方抑制によって決定され、Ｋｏｈｏｎｅｎネットワーク（Kohonen network）などの当技術分野において知られている。位相シフトは、ｄＳＰＮユニットでは前進し、ｉＳＰＮユニットでは一定になり、時間においてゲート開ウィンドウとゲート閉ウィンドウを有効に分離し、活性化されたときにゲート制御ウィンドウが開のままになることを保証する。モジュレータが撤退した場合、ｄＳＰＮの位相は一定のままになり、一方ｉＳＰＮの位相は前進する。このようにして、「ゲート閉」ウィンドウが前進して「ゲート開」ウィンドウを塞ぎ、ループ信号が終了する。モジュレータの存在における局所的競争の「敗者」の場合、位相シフトはｄＳＰＮとｉＳＰＮの両方で遅延する。モジュレータが存在しない場合、すべての「敗者」の位相シフトはゼロになる。なお、「競争」、「勝者」、および「敗者」の概念は、本明細書では、開示されたネットワークの一実施形態として使用される。当技術分野において説明されている他の「勝者のいない」スパイク・ネットワークも使用されることが可能であり、その場合でも、抑制の相対的レベルが、位相シフトおよび位相シフトの方向を決定するために必要な調整カテゴリを提供できる。さらに、側方接続のパターンは、Ｋｏｈｏｎｅｎネットワークのパターンに従う必要はなく、例えば疎になることができる。
【００３５】
最後に、順方向ゲート制御ＳＴＤＰに入力される調整のソースが開示される。この調整入力は、外部の値の測定によって正に、かつ、まれに駆動される。本開示の閉ループ・システムにおいて、ドライバは、ｄＳＰＮおよびｉＳＰＮのスパイクの大きい集団からの負である。この抑制が緩和されたときに、モジュレータの信号が存在し、強になる（すなわち、回復スパイク）。この信号は、ｄＳＰＮおよびｉＳＰＮのスパイク活動のエントロピー、ならびにゲート制御関数を介したグランド・ループのｄＳＰＮおよびｉＳＰＮの制御間の遷移のエントロピーを時間とともに最大化する（すなわち、ゲート制御ベクトルにおける急速な直交シフトを最大化する）ゲート制御関数に向けて、システムにバイアスをかける。抑制からの回復に対する制御（例えば、活性化、不活性化の積分時間、ユニットの区画化など）は、それらの制御によって課される時間的制約に対応する特定の間隔（例えば、数１００ミリ秒ごと）でゲート制御ベクトルを変更するゲート制御関数に向けて、システムにさらにバイアスをかける。このように、本開示は、人工パルス・ニューラル・ネットワークの一種を実装するコンピュータ・システムを使用して生物学的神経系をモデル化することを対象にしている。この人工パルス・ニューラル・ネットワークは、本開示では、時間エンコーダおよび情報ループ信号を含んでいる情報に基づく交換（ＩＢＥＸ）ネットワークと呼ばれる。
【００３６】
したがって、本開示は、本開示の１つまたは複数の実施形態が閉ループ機能のために課される価値関数を必要としないということを含むが、これに限定されない、技術的利点を提供する。したがって、情報最大化領域間のすべての横断のエントロピーおよび多用途性を最大化するゲート制御関数のループの伝搬および検出から、相対的に高速な学習結果が得られる。行動およびネットワーク動態が、符号化方式として、およびコードの有用性を測定する手段として、展開される。他のループを終了する（すなわち、脅威の除去）高エントロピー・ループの横断の非監視学習を通じて、カテゴリが出現する。開ループ制御問題は、閉ループ選択メカニズムの内部セットにマッピングされる。状態推定コンポーネントは、より堅牢であり、ループ選択の条件が変化したときに、迅速な再組織化が行われる。極めて多数のループ状態、および外部の行動を引き起こさないが、特定の行動結果のみに向けて状態遷移を制約するように働く特定の状態の使用可能性により、行動の開始および終了のための複数の待ち時間を使用できる。
【００３７】
本明細書で開示された実施形態のうちの１つまたは複数の背景として、ここで、生物学的ニューラル・ネットワークの概要を示す。図１は、生物学的ニューロン１００の略図を示している。ニューロン１００は、神経細胞とも呼ばれ、情報を処理する特殊な生物学的細胞である。図に示されているように、ニューロン１００は、細胞体（つまり、体細胞）、および軸索と樹状突起という２種類の外側に伸びる木に似た枝で構成されている。細胞体は、遺伝体質に関する情報を含んでいる核、およびニューロンによって必要とされる材料を生成するための分子装置を保持する細胞質基質を持つ。ニューロンは、樹状突起（レシーバ）を介して他のニューロンから信号（インパルス）受信し、その細胞体によって生成された信号を、軸索（トランスミッタ）に沿って送信する。軸索は、最終的にストランドおよびサブストランドに分岐する。これらのストランドの末端には、シナプスがある。シナプスは、２つのニューロン（１つのニューロンの軸索のストランドおよびもう１つのニューロンの樹状突起）間の基本構造であり、機能ユニットである。インパルスがシナプスの末端に達すると、神経伝達物質と呼ばれる特定の化学物質が放出される。この神経伝達物質は、シナプス間隙間に拡散し、シナプスの種類に応じて、電気インパルスを放射する受容体ニューロン自体の傾向を強化または抑制する。シナプスの有効性は、シナプスを通る信号によって調整できる。そのためシナプスは、そのシナプスが参加した過去の活動から学習することができる。この過去に対する依存は、記憶として機能し、人間の記憶の役割を果たすと考えられている。
【００３８】
図２は、人間の脳２００の構造の一部を表すブロック図を示している。脳２００は、大脳皮質２０２、視床２０４、視床下核２０６、線条体２０８、および淡蒼球２１０を含んでおり、図のように構成および配置されている。図２の詳細な説明は、２０１３年１２月に「Frontiers In Computational Neuroscience」で公開された文献「Exploring The Cognitive and Motor Functions of The Basal Ganglia: AnIntegrative Review of Computational Cognitive Neuroscience Models」（Sebastien Helie、Srinivasa Chakravarthy、およびAhmed A. Moustafa著）に記載されている。現在の説明のために補足すると、人体内の大脳皮質２０２は、約２，２００ｃｍ２の表面積（標準的なコンピュータ・キーボードの面積の約２倍）を持つ約３〜４ミリメートルの厚さのニューロンの大きい平面シートである。大脳皮質は、約１０１１個のニューロンを含んでおり、この数は銀河系の星の数にほぼ等しい。ニューロンは大規模に接続されており、それらが形成するネットワークは、比較すると、電話網よりも非常に複雑かつ高密度である。各ニューロンは、１０３〜１０４個の他のニューロンに接続されている。合計すると、人間の脳２００は約１０１４〜１０１５個の相互接続（図示せず）を含んでいる。大脳皮質２０２内のニューロン（例えば、図１に示されたニューロン１００）は、極めて短い一連のパルス（通常は数ミリ秒の期間）によって通信する。メッセージは、パルス送信周波数に関して調整される。この周波数は、数ヘルツ〜数１００ヘルツの範囲で変化することができる。この周波数は、比較すると、電子回路の最も速いスイッチング速度よりも１００万倍遅い。しかし、顔認識などの複雑な知覚判断が、通常は数１００ミリ秒以内に人間によって行われる。これらの判断は、数ミリ秒の動作速度しかないニューロンのネットワークによって行われる。これは、計算で、連続する約１００段階よりも多くの段階を使用できないということを意味している。言い換えると、人間の脳２００は、そのような知覚作業のために約１００ステップの長さの並列プログラムを実行する。これは、１００ステップ・ルールと呼ばれている。同じタイミングの検討は、１つのニューロンから別のニューロンに送信される情報の量を非常に小さく（数ビットに）する必要があるということを示している。つまり、重要な情報は直接送信されないが、相互接続において捕捉され、分散される。生物学的ニューロンおよび生物学的ニューラル・ネットワークのさらなる詳細は、１９９０年にシンガポールの「World Scientific」で公開された文献「Neural Networks,Computers with Intuition」（S. BrunakおよびB. Lautrup著）に記載されている。
【００３９】
本明細書で開示された実施形態のうちの１つまたは複数のその他の背景として、ここで、ＡＮＮの概要を示す。ＡＮＮは、人工ニューロンがノードであり、有向エッジ（重み付き）がニューロンの出力とニューロンの入力の間の接続である、重み付き有向グラフと見なすことができる。接続パターン（すなわち、アーキテクチャ）に基づいて、ＡＮＮは２つのカテゴリにグループ分けすることができる。それらのカテゴリは、グラフにループがないフィードフォワード・ネットワーク、およびフィードバック接続によってループが発生するフィードバック・ネットワークまたは回帰ネットワークである。フィードフォワード・ネットワークの最も一般的なファミリ（一般に、多層パーセプトロン・ネットワークとして知られている）では、ニューロンは、ニューロン間の一方向接続を含む層に組織化される。
【００４０】
ＡＮＮ内の異なる接続によって、異なるネットワークの挙動が発生する。一般に、フィードフォワード・ネットワークは静的である。言い換えると、フィードフォワード・ネットワークは、与えられた入力から、連続する値ではなく、出力値の１つのセットのみを生成する。フィードフォワード・ネットワークの動態は、入力に対する反応が以前のネットワークの状態とは無関係であるという意味で、記憶を持たない（ただし、それらの重みが過去に依存する状態を保持することができる）。反対に、フィードバック・ネットワークまたは回帰ネットワークは動的システムである。新しい入力パターンが提供された場合、ニューロンの出力が計算される。その後、フィードバック経路によって、各ニューロンへの入力が変更され、それによってネットワークが新しい状態に移行する。
【００４１】
さまざまなネットワーク・アーキテクチャが、適切な学習アルゴリズムを必要としている。学習能力は、知能の基本的な特徴である。学習の正確な定義を定式化するのは難しいが、ＡＮＮの文脈における学習プロセスは、ネットワークが特定の作業を効率的に実行できるように、ネットワーク・アーキテクチャおよび接続の重みを更新する問題であると見なすことができる。通常、ネットワークは、使用できるトレーニング・パターンから接続の重みを学習しなければならない。ネットワーク内の重みを反復的に更新することによって、時間とともに性能が改善される。ＡＮＮは、例から自動的に学習する能力があるため、魅力的な設計の選択肢である。人間の専門家によって指定されたルールのセットに従う代わりに、ＡＮＮは、与えられた代表例の一群から基礎になるルール（入力と出力の間の関係など）を学習するように見える。これは、従来のエキスパート・システムを上回るＡＮＮの大きな長所の１つである。
【００４２】
学習プロセスを理解または設計するには、ニューラル・ネットワークが動作する環境のモデルが存在する必要がある。言い換えると、ネットワークに使用できる情報が知られていなければならない。このモデルは、学習パラダイムと呼ばれる場合がある。さらに、ネットワークの重みが更新される方法が理解されなければならない。言い換えると、更新プロセスを支配する学習ルールが理解されなければならない。学習アルゴリズムは、学習ルールが重みの調整に使用される手順のことを指す。主な学習パラダイムとして、監視、非監視、およびハイブリッドという３つがある。監視学習（つまり、「教師」がいる学習）では、ネットワークには、すべての入力パターンに対して正しい回答（出力）が提供される。重みは、ネットワークが、既知の正しい回答にできるだけ近い回答を生成できるように決定される。補強学習は、監視学習の変形である。補強学習では、ネットワークに、正しい回答自体ではなく、ネットワーク出力の正しさに関する評価のみが提供される。対照的に、非監視学習（つまり、教師がいない学習）は、トレーニング・データセット内の各入力パターンに関連付けられた正しい回答を必要としない。非監視学習は、データ内の基礎になる構造、つまりデータ内のパターン間の相関関係を調査し、それらの相関関係から、パターンをカテゴリに組織化する。ハイブリッド学習は、監視学習と非監視学習を組み合わせる。重みの一部が、通常は監視学習によって決定され、その他の重みが非監視学習によって取得される。ＡＮＮおよび学習ルールのさらなる詳細は、「Artificial Neural Networks: A Tutorial」（AnilK. Jain、Jianchang Mao、およびK.M.Mohiuddin著、ＩＥＥＥ、１９９６年３月）に記載されている。この文献の全体的開示は、参照によって本明細書に包含されている。
【００４３】
ここで、さらなる詳細について図面を参照すると、類似する参照番号は類似する要素を示しており、図３は、本開示の１つまたは複数の実施形態の実装に役立つコンピュータベース情報処理システム３００の例を示す上位のブロック図を示している。コンピュータ・システム３００の一例が示されているが、コンピュータ・システム３００は、コンピュータ・システム３００をその他のシステム（図示せず）に接続する通信経路３２６を含んでおり、１つまたは複数の広域ネットワーク（ＷＡＮ：wide area networks）、またはローカル・エリア・ネットワーク（ＬＡＮ：localarea networks）、あるいはその両方（インターネット、イントラネット、または無線通信ネットワーク、あるいはこれらの組合せなど）を含むことができる。コンピュータ・システム３００およびその他のシステムは、例えばそれらの間でデータをやりとりするために、通信経路３２６を介して通信する。
【００４４】
コンピュータ・システム３００は、プロセッサ３０２などの１つまたは複数のプロセッサを含む。プロセッサ３０２は、通信インフラ３０４（例えば、通信バス、クロスオーバー・バー、またはネットワーク）に接続される。コンピュータ・システム３００は、ディスプレイ・ユニット３０８上に表示するために、グラフィックス、テキスト、およびその他のデータを通信インフラ３０４から（または、図示されていないフレーム・バッファから）転送する表示インターフェイス３０６を含むことができる。コンピュータ・システム３００は、主記憶装置３１０、好ましくはランダム・アクセス・メモリ（ＲＡＭ：random access memory）も含み、二次記憶装置３１２も含むことができる。二次記憶装置３１２は、例えばハード・ディスク・ドライブ３１４または取り外し可能ストレージ・ドライブ３１６（例えば、フロッピー（Ｒ）・ディスク・ドライブ、磁気テープ・ドライブ、または光ディスク・ドライブを表す）あるいはその両方を含むことができる。取り外し可能ストレージ・ドライブ３１６は、当業者に良く知られた方法で、取り外し可能ストレージ・ユニット３１８から読み取り、または取り外し可能ストレージ・ユニット３１８に書き込み、あるいはその両方を行う。取り外し可能ストレージ・ユニット３１８は、例えばフロッピー（Ｒ）・ディスク、コンパクト・ディスク、磁気テープ、または光ディスクなどを表し、取り外し可能ストレージ・ドライブ３１６によって読み取られ、取り外し可能ストレージ・ドライブ３１６に書き込まれる。理解されているように、取り外し可能ストレージ・ユニット３１８は、コンピュータ・ソフトウェアまたはデータあるいはその両方を記憶しているコンピュータ可読媒体を含む。
【００４５】
代替の実施形態では、二次記憶装置３１２は、コンピュータ・プログラムまたはその他の命令をコンピュータ・システムに読み込むことができるようにするためのその他の類似する手段を含むことができる。そのような手段は、例えば取り外し可能ストレージ・ユニット３２０およびインターフェイス３２２を含むことができる。そのような手段の例は、プログラム・パッケージおよびパッケージ・インターフェイス（ビデオ・ゲーム・デバイスで見られるインターフェイスなど）、取り外し可能メモリ・チップ（ＥＰＲＯＭまたはＰＲＯＭなど）および関連するソケット、ならびにソフトウェアおよびデータを取り外し可能ストレージ・ユニット３２０からコンピュータ・システム３００に転送できるようにするその他の取り外し可能ストレージ・ユニット３２０およびインターフェイス３２２を含むことができる。
【００４６】
コンピュータ・システム３００は、通信インターフェイス３２４も含むことができる。通信インターフェイス３２４によって、ソフトウェアおよびデータを、コンピュータ・システムと外部デバイスの間で転送することができる。通信インターフェイス３２４の例は、モデム、ネットワーク・インターフェイス（イーサネット・カードなど）、通信ポート、またはＰＣＭ−ＣＩＡスロットおよびカードなどを含むことができる。通信インターフェイス３２４を介して転送されるソフトウェアおよびデータは、例えば電子信号、電磁気信号、光信号、または通信インターフェイス３２４によって受信できるその他の信号であることができる信号の形態をとる。これらの信号は、通信経路３２６（すなわち、チャネル）を介して通信インターフェイス３２４に提供される。通信経路３２６は、信号を運び、ワイヤもしくはケーブル、光ファイバ、電話線、携帯電話リンク、ＲＦリンク、またはその他の通信チャネル、あるいはこれらの組合せを使用して実装できる。
【００４７】
本開示では、「コンピュータ・プログラム媒体」、「コンピュータ使用可能媒体」、および「コンピュータ可読媒体」という用語は、一般に、主記憶装置３１０および二次記憶装置３１２、取り外し可能ストレージ・ドライブ３１６、ならびにハード・ディスク・ドライブ３１４に設置されたハード・ディスクなどの媒体を指すために使用される。コンピュータ・プログラム（コンピュータ制御ロジックとも呼ばれる）は、主記憶装置３１０または二次記憶装置３１２あるいはその両方に記憶される。コンピュータ・プログラムを、通信インターフェイス３２４を介して受信することもできる。そのようなコンピュータ・プログラムが実行された場合、コンピュータ・システムは、本明細書で説明された本開示の機能を実行することができる。特に、コンピュータ・プログラムが実行された場合、プロセッサ３０２は、コンピュータ・システムの機能を実行することができる。したがって、そのようなコンピュータ・プログラムは、コンピュータ・システムのコントローラを表す。
【００４８】
ここで、本開示の１つまたは複数の実施形態を詳細に説明すると、図４および５は、人間の脳２００（図２に示されている）の大脳皮質２０２（図２に示されている）を２種類の領域、つまり情報最大化領域（ＩＭＡ：information maximizing areas）および行動領域（ＢＡ：behavioralareas）によって特徴付けることができる方法を示している。さらに具体的には、図４はＩＭＡの構成を示すブロック図を示しており、図５はＢＡの例を示している。図４のＩＭＡおよび図５のＢＡは、本開示の１つまたは複数の実施形態によって利用することができる。
【００４９】
図４のブロック図は、第１のＩＭＡ４０２、第２のＩＭＡ４０４、第３のＩＭＡ４０６、第１の表現型測定４０８、第２の表現型測定（phenotypic measures）４１０、および第３の表現型測定４１２を示し、図に示されているように構成および配置される。入力ベクトルが、表現型測定４０８、４１０、４１２を介してＩＭＡ４０２、４０４、４０６に提供される。表現型測定とは、人体のさまざまな感覚受容器（例えば、網膜、皮膚受容器、胃腸の内部受容器、筋肉内の骨伸張受容器（skeletal stretch receptors）、関節の受容器、味覚芽、皮膚内の温度センサなど）によって取得される測定のことである。ＩＭＡ４０２、４０４、４０６は、情報最大化の原理に基づいて動作する。情報最大化は、入力のセットを受け取り、それらを有用な出力のセットにマッピングする。情報最大化は、特徴識別または基本ニューラル・ネットワーク分類としても知られている。本明細書における「情報最大化」という用語の使用は、ある入力ベクトルの集合に対するある出力ベクトルの集合における情報の増加に向かうＩＭＡの一般的な傾向を指しており、最適な最大情報が、ネットワークの動作における特定の時間でネットワークによって実現されることを意味していない。入力ベクトルのカテゴリは、非監視学習を使用して自己組織化され、情報最大化が果たそうとしている目的は、最大エントロピーまたは最大情報である。言い換えると、情報最大化は、ある入力ベクトルの集合が与えられたときに、出力ベクトルの集合によって、ある出力空間の最大カバレッジを提供しようとする。例えば、入力空間内の１つの領域内に強い表現が存在するように一緒にまとめられた入力ベクトルの場合、情報最大化は、まとめられた入力ベクトルを受け取り、それらを出力空間上に拡散する。この効果は、出力空間のより大きい領域が入力ベクトルをエンコードするため、入力ベクトルの解析が非常に詳細化されることである。したがって、ＩＭＡ４０２、４０４、４０６は、本開示のモデル／アーキテクチャにおけるコンポーネントまたは構造（本明細書では領域と呼ばれる）に対応する。領域の入力の数および出力の数は、任意とすることができる。そのため、通常は１つの領域が、情報を最大化するために連携する複数のユニットを表す。
【００５０】
図５のブロック図は、スパイク・ジェネレータ５０２、５０４、５０６を含んでいるＢＡ５００の例を示しており、図に示されているように構成および配置される。スパイク・ジェネレータ５０２、５０４、５０６は、スパイク・ジェネレータの原理に従って動作し、スカラー（例えば０〜１）が一連の時間事象に変換される。事象の時間および頻度は、スカラー値（すなわち、大きさを持つが方向を持たない値）で表される。したがって、「ｕ」の要素が、０〜１の範囲の値を持つスカラーである場合、スパイク・ジェネレータ５０２、５０４、５０６は、「ｕ」の要素の何らかの関数である速度でスパイクを生成する。
【００５１】
ＢＡ５００はスパイクを生成するため、時間エンコーダとして表すことができる。前述したように、現在の時間エンコーダは、非同期的に受信された信号を統合し、その後の非同期的なパルス信号のセットを生成することによって、情報のデジタル・エンコーディングおよびアナログ・エンコーディングの両方の代替手段を提供する。時間エンコーダ・ネットワークの特定の構成を使用して、ネットワークから出力されたパルスまたは「スパイク」のセットから、ネットワークに入力された信号のセットに関する情報を抽出できる。情報は、出力時間エンコーダのスパイク速度（スパイク数／秒）、時間エンコーダの集団でのスパイク速度間の相関関係、出力時間エンコーダによって生成されたパルス間の時間間隔、または出力時間エンコーダの集団によって生成されたパルス間の時間間隔のパターンの相関関係から抽出できる。ただし、本開示の恩恵を受けずに実装された既知の時間エンコーディング・ネットワークは、ネットワークによってエンコードされた特徴間の有用な関係に対応する一意のループ信号を識別し、持続性のために選択し、さまざまな追加ネットワーク動作に使用し、その後送信できるように、回帰ネットワークを構成する方法を開示していない。さらに、既知の時間エンコーダは、回帰ネットワーク動作を説明していない。回帰ネットワーク動作では、出力活動の選択は、入力データおよびループ信号の選択に基づく。さらに、既知の時間エンコーダ・ネットワークは、入力データに基づいて特定の出力活動を駆動するためのループ信号の選択によって回帰ネットワーク内の情報をエンコードすることが、機械学習における困難な問題（新しい豊かな環境における行動選択など）を解決するのに役立つかどうかを決定しない。さらに、既知の時間エンコーダ・ネットワークは、回帰ネットワークの学習の準備段階を説明していない。その準備段階では、ループ信号の選択が、ネットワークの状態を遷移しながら、その後のループ信号およびネットワークを通るループ信号の経路の多用途性を維持するために行われる。さらに、既知の時間エンコーダ・ネットワークは、外部の値の測定の使用を説明していない。この外部の値の測定は、ネットワークの状態を適切に遷移しながら、その後のループ信号およびネットワークを通るループ信号の経路の多用途性を維持していることを示す内部調整信号を増大するために使用される。さらに、既知の時間エンコーダ・ネットワークは、回帰ネットワークの状態のネットワーク分類の使用を説明していない。このネットワーク分類は、ループ信号の経路を制限し、外部状態と内部状態の結合された測定に関して最大限の情報を提供する経路を選択するために使用される。
【００５２】
図６および７は、本開示の１つまたは複数の実施形態によって利用できるＩＭＡおよびＢＡの構成を示すブロック図を示している。さらに具体的には、図６および７は、ＩＭＡ４０２、４０４、４０６およびＢＡ６０２、６０４、６０６を示し、図に示されているように構成および配置される。具体的に図６を参照すると、ＩＭＡ４０２、４０４、４０６は表現型測定４０８、４１０、４１２（図４に示されている）から入力ベクトルを受信する。さらに、ＩＭＡ４０４、４０６は先行する、または上流のＩＭＡから入力測定を受信する。図６および７の構成を、図２に示されている人間の脳２００にマッピングすると、ＩＭＡ４０２、４０４、４０６は、大脳皮質２０２の一部（例えば、大脳皮質の異なるブロードマン領域の層２／３）に含まれている。大脳皮質２０２の（例えば２〜４ミリメートル）深い部分に、ＢＡ６０２、６０４、６０６がある（例えば、大脳皮質の対応するブロードマン領域の層５）。
【００５３】
ＩＭＡ４０２、４０４、４０６は、フィードフォワード方向にカスケード接続されており、ＢＡはフィードバック方向にカスケード接続されている。本明細書で前述したように、フィードフォワード接続は、信号が順方向として識別された方向にのみ移動できる非回帰接続である。入力データは、処理要素の領域に渡され、そこで処理要素が計算を実行する。各処理要素がその計算を行い、計算された新しい値が、次の領域に供給される新しい入力値になる。このプロセスは、すべての層を通過して出力を決定するまで継続する。対照的に、フィードバック接続は、順方向とは異なる方向である逆方向として識別された方向に移動できる。フィードバック接続にはループが存在するため、フィードバック接続は、一定の入力と適切なネットワーク構成が与えられた場合に平衡状態に達するまで継続的に変化する、非線形の動的システムになる。
【００５４】
図７では、ＢＡ６０２、６０４、６０６が、ＩＭＡ４０２、４０４、４０６と一対一に登録されている。ＩＭＡとＢＡの間の登録は、ＩＭＡからＢＡへ、およびＢＡからＩＭＡへ伸びる方向矢印によって表されている。登録は、ＩＭＡからＢＡへの「パルス速度設定」およびＢＡからＩＭＡへの「パルス速度測定」として識別される。ＩＭＡ４０２、４０４、４０６とＢＡ６０２、６０４、６０６の間の方向矢印は、大脳皮質２０２のさまざまな部分（例えば、ＩＭＡ４０２およびＢＡ６０２）の間に広がっている大脳皮質２０２（図２に示されている）内のコラムに対応する。したがって、１つまたは複数の実施形態のシステム・アーキテクチャにおいて、ＢＡによって生成されたスパイクの速度および特定のタイミングは、ＩＭＡによって調整される、または設定される、あるいはその両方が行われる。パルス速度のスカラー表現を求めるために、ＩＭＡは、パルス速度を設定するか、またはパルス速度を調整し、かつＩＭＡはパルス速度を測定する。
【００５５】
前述したように、ＢＡ６０２、６０４、６０６は（図５のＢＡ５００によって示されているように）スパイクを生成する。図６および７に示された構成では、ＢＡ６０２、６０４、６０６で生成されたスパイクがフィードフォワード方向に伝搬するための経路は存在しない。そのため、図８は、本開示の１つまたは複数の実施形態に従って、図に示されているように構成および配置されたＢＡ６０２、６０４、６０６および順方向ドライバ・ゲート（ＦＤＧ）７０２が、ＢＡ６０２、６０４、６０６で生成されたスパイクがＦＤＧ７０２を介してフィードフォワード方向に伝搬するための経路を提供しているブロック図を示している。ＦＤＧ７０２は、上流のＢＡ（例えばＢＡ６０２またはＢＡ６０４）と下流のＢＡ（例えばＢＡ６０６）との間の多対一、一対一、多対多、または一対多のいずれかの関係をゲート制御することができる。図８に示された例および図９に示された例では、ＦＤＧ７０２が、ＢＡ６０２、６０４とＢＡ６０６との間のフィードフォワード方向の多対一の関係をゲート制御する。ＦＤＧ７０２は、ＢＡ６０２およびＢＡ６０４から入力を受信し、開いてそれらの入力をＢＡ６０６に流すかどうかを決定する。
【００５６】
図９は、図８に示されている構成のさらに詳細な図である。図９では、ＦＤＧ７０２がゲート７０６およびグランド・ループＳＴＤＰゲート制御関数７０４を含んでおり、局所的ＳＴＤＰ関数７０８がスパイク・ジェネレータ（ＳＧ）５０２Ａ、５０４Ａ、５０６Ａ、およびＢＡ６０２、６０４、６０６間のフィードバック接続に適用される。実際は、局所的ＳＴＤＰゲート制御関数７０８およびグランド・ループ・ゲート制御関数７０４はＳＴＤＰ機能を適用するが、ＳＴＤＰの各適用は、異なる結果を取得するために使用されている。局所的ＳＴＤＰ関数７０８は、ＢＡ６０２、６０４、６０６の内部またはそれらの間の局所的（すなわち、相対的に短い）ループを除去するために、ＢＡ６０２、６０４、６０６の内部またはそれらの間で適用される。ＳＴＤＰがパルスのタイミングに依存し、ＦＤＧ７０２が、タイミングが設定されてパルスが生成された入力を受け取るため、グランド・ループＳＴＤＰ関数７０４は、ＦＤＧ７０２への入力とゲート７０６の間で適用されて、ＦＤＧ７０２を開くかどうか、または閉じるかどうかを決定する。したがって、局所的ＳＴＤＰ関数７０８の適用によって局所的ループが効果的に除外されているため、ＢＡ６０２、６０４、６０６内のユニットは、グランド・ループ経路を介してのみ接続され、局所的ループ経路を介して接続されない。グランド・ループ経路は、ＢＡ６０２、６０４、６０６内の別々のユニット間のフィードバック接続およびフィードフォワード接続を横断する信号を含むことができるが、ユニット間の局所的ループ信号の大部分が除外されていることに注意する。そのため、ＢＡ６０２からＦＤＧ７０２への２つの入力７１０、７１２、およびＢＡ６０４からＦＤＧ７０２への２つの入力７１４、７１６が存在している。入力７１０、７１４は、与えられた入力のセットに基づいてゲート７０６を通るどの経路を開閉するかを学習しているグランド・ループＳＴＤＰゲート制御関数７０４にアクセスしようと試みる。ゲート７０６が開くか、閉じると、ＢＡ６０２または６０４から直接ゲート７０６に入る入力７１２、７１６は、ゲート７０６を横断してＢＡ６０６に達することができるかどうかに関して影響を受ける。
【００５７】
したがって、ＦＤＧ７０２は、ＳＴＤＰゲート制御関数７０４を使用して、学習を通じてゲート７０６を開閉する。グランド・ループＳＴＤＰゲート制御関数７０４は、７０６への負（抑制性）のゲート制御スパイク入力の位相を、ゲート７０６を横断しようとしているさまざまなスパイク・ジェネレータ５０２Ａ、５０４Ａ、５０６Ａ、５０２Ｂ、５０４Ｂ、５０６Ｂからの正のスパイク到着時間の周期的入力パターンに対してシフトする。位相シフトは、２種類の負のゲート制御スパイクによって制御される。その１つ（直接／ｄＳＰＮ／Ｄ１）は、ＧＰｉからのトニック閉信号における一時的中断（ゲート開）を生成し、もう１つ（間接／ｉＳＰＮ／Ｄ２）は、（ＧＰｅ内のトニック負信号における一時的中断、すなわちゲート閉によって）ＧＰｉからのトニック閉信号の増加を生成する。負のゲート制御の開位相および閉位相の独立制御は、次の段落で説明されているように、これらの２つの経路によって制御される。
【００５８】
ここで、追加モジュレータ（例えばＤＯＰＡ）および局所的競争（例えばＧＡＢＡ）に従って、モジュレータの存在における「局所的勝者」ユニットに対する位相シフトについて説明する。なお、競争はユニット間の側方抑制によって決定され、Ｋｏｈｏｎｅｎネットワークなどの当技術分野において知られている。位相シフトは、ｄＳＰＮユニットでは前進し、ｉＳＰＮユニットでは一定になり、時間においてゲート開ウィンドウとゲート閉ウィンドウを有効に分離し、活性化されたときにゲート制御ウィンドウが開のままになることを保証する。モジュレータが撤退した場合、ｄＳＰＮの位相は一定のままになり、一方ｉＳＰＮの位相は前進する。このようにして、「ゲート閉」ウィンドウは前進して「ゲート開」ウィンドウを塞ぎ、ループ信号が終了する。モジュレータの存在における局所的競争の「敗者」の場合、位相シフトはｄＳＰＮとｉＳＰＮの両方で遅延する。モジュレータが存在しない場合、すべての「敗者」の位相シフトはゼロになる。なお、「競争」、「勝者」、および「敗者」の概念は、本明細書では、ネットワークの一実施形態として使用される。当技術分野において説明されている他の「勝者のいない」スパイク・ネットワークも使用されることが可能であり、その場合でも、抑制の相対的レベルが、位相シフトおよび位相シフトの方向を決定するために必要な調整カテゴリを提供できる。さらに、側方接続のパターンは、Ｋｏｈｏｎｅｎネットワークのパターンに従う必要はなく、例えば疎になることができる。
【００５９】
順方向ゲート制御ＳＴＤＰへの調整入力は、外部の値の測定によって正に、かつ、まれに駆動される。本開示の閉ループ・システムにおいて、ドライバは、ｄＳＰＮおよびｉＳＰＮのスパイクの大きい集団からの負である。この抑制が緩和されたときに、モジュレータの信号が存在し、強になる（回復スパイク）。この信号は、ｄＳＰＮおよびｉＳＰＮのスパイク活動のエントロピー、ならびにゲート制御関数を介したグランド・ループのｄＳＰＮおよびｉＳＰＮの制御間の遷移のエントロピーを時間とともに最大化する（すなわち、ゲート制御ベクトルにおける急速な直交シフトを最大化する）ゲート制御関数に向けて、システムにバイアスをかける。抑制からの回復に対する制御（例えば、活性化、不活性化の積分時間、ユニットの区画化など）は、それらの制御によって課される時間的制約に対応する特定の間隔（例えば、数１００ミリ秒ごと）でゲート制御ベクトルを変更するゲート制御関数に向けて、システムにさらにバイアスをかける。
【００６０】
図１０〜１３は、本開示の１つまたは複数の実施形態に従う方法８００、９００、１０００、１１００を示すフロー図である。方法８００、９００、１０００、１１００に示された動作は順番に示されているが、方法８００、９００、１０００、１１００を構成するブロックは、示された動作の特定の順序での実行に必ずしも限定されないことに注意する必要がある。
【００６１】
図１０は、本開示に従ってネットワーク・アーキテクチャの全体的動作を具現化する方法８００を示している。図１０に示されているように、方法８００は、入力データをＩＭＡに提供することによってブロック８０２で開始する。ブロック８０４で、スパイクが、ネットワーク反応レベルの関数として生成される。ブロック８０６は、局所的ＳＴＤＰ関数をスパイクに適用し、ループ・トポロジに影響を与える。ブロック８０８は、スパイク・ジェネレータに対するＦＤＧのスパイク反応を計算する。ブロック８１０で、スパイク・ジェネレータに対するＦＤＧの反応に基づいて、抑制および調整が実行される。ブロック８１２で、グランド・ループＳＴＤＰ関数に基づいて、ＦＤＧのゲート開信号およびゲート閉信号の位相がシフトされる。ブロック８１４で、順方向駆動スパイクからのデータが、ＩＭＡに入力されるデータにマージされる。ブロック８１６は、回復調整入力をＦＤＧのグランド・ループＳＴＤＰ関数に提供する。ブロック８１８で、スパイク・ジェネレータと表現型エフェクタ（phenotypic effectors）の間の結合に基づいて、行動を選択的に駆動できる。表現型エフェクタは、本明細書に記載されたネットワークの外部であるが、脳幹の神経調節神経核（neuromodulatory nucleus）などの人間の脳の一部に存在することができることに注意する。
【００６２】
図１１〜１３は、その他の詳細を提供するために、図１０の全体的方法を３つの部分に分割している。さらに具体的には、図１１に示されている方法９００は、本開示の１つまたは複数の実施形態に従って、ネットワーク領域内でフィードフォワード接続、フィードバック接続、およびゲート制御接続によって実行されるプロセスの動作を示している。一般に、方法９００は、フィードフォワード方向およびフィードバック方向の両方に伝搬する活動の波として説明できることに関する、本開示を具現化しているネットワークの機能を説明している。方法９００は、表現型測定の第１のセットを収集することによって、ブロック９０２で開始する。ブロック９０４で、第１のＩＭＡの特徴（例えば出力ベクトル）が、収集された第１の表現型測定によって変更される。ブロック９０６で、第１のＩＭＡの特徴（例えばパルス速度設定）が第１のＢＡ内のスパイクを変更する。ブロック９０８で、第１のＢＡ内のスパイクが、ＦＤＧの脱抑制性（Ｄ１）ユニットまたは抑制性（Ｄ２）ユニットのいずれかのスパイクを引き起こす。ブロック９１０は、グランド・ループＳＴＤＰゲート制御機能によって解析されている入力行動のスパイクおよびＤ１ユニットまたはＤ２ユニットのスパイクを（例えばスパイク・タイミング相関解析によって）相関付ける。ブロック９１２で、グランド・ループＳＴＤＰゲート制御関数の相関解析（例えば、スパイク・タイミング相関解析）に従って、ＢＡからＤ１ユニットまたはＤ２ユニットへの接続が変更される。言い換えると、ブロック９１２は、グランド・ループＳＴＤＰゲート制御関数を読み出し、ＳＴＤＰ機能によって、スパイク時間の前後の相関関係に従って、ＢＡからＤ１ユニットまたはＤ２ユニットへの接続を変更する。ブロック９１４で、Ｄ１ユニットのスパイクがゲート制御ユニットに対する抑制を減らすか、またはＤ２ユニットのスパイクがゲート制御ユニットに対する抑制を増やす。ブロック９１６で、抑制が低い場合、スパイクを下流のＢＡに順方向に供給するために、第１のＢＡ内のスパイクがゲートを横断する。ブロック９１８で、第２のＢＡ内のスパイクが、フィードバック接続を介して第１のＢＡ内のスパイクを直接引き起こす。ブロック９２０は、グランド・ループＳＴＤＰゲート制御機能によって解析されている第１のＢＡのスパイクおよび第２のＢＡのスパイクを（例えばスパイク・タイミング相関解析によって）相関付ける。ブロック９２２で、第１のＢＡと第２のＢＡの間の接続が、局所的ループを除去するための局所的ＳＴＤＰ機能に従って変更される。ブロック９２４で、ＩＭＡが、フィードフォワードＩＭＡの特徴およびフィードフォワードＢＡの行動スパイクを測定する。したがって、ブロック９２４は、ＢＡスパイクの測定をＩＭＡ測定に基本的に折り返す。その例を、ＩＭＡ４０２とＢＡ６０２の間でのパルス速度の測定の交換によって、図７に示す。ただし、一般に、ブロック９１８に示されているように、第２のＢＡ内のフィードバック・スパイクは、第１のＢＡ内のスパイクも引き起こすので、第３のＢＡ（図示せず）内のスパイクが、ブロック９１８に示されている第２のＢＡ内のスパイクを引き起こすと予想することができ、それらのスパイクが同様にブロック９２４内の第２のＩＭＡの測定に折り返される（図示せず）ことに注意する。
【００６３】
図１２に示されている方法１０００は、１つまたは複数の実施形態に従って、ＳＴＤＰの順方向ドライバ・ゲート制御ユニットおよびモジュレータによって実行されるプロセスの動作を示している。本開示では、ＳＴＤＰのモジュレータは、ＢＡおよびＦＤＧインターフェイスに特有のさまざまなＳＴＤＰゲート制御関数を引き起こす。その例が、図９に示されているグランド・ループＳＴＤＰゲート制御関数７０４への入力７１０、７１４によって示されている。ＢＡおよびＦＤＧインターフェイスに特有のさまざまなＳＴＤＰゲート制御関数のさらなる詳細が、図１９の下部に示されている。これについては、本開示において後で詳細に説明される。
【００６４】
図１２に示されているように、方法１０００は、ＦＤＧの脱抑制性（Ｄ１）ユニットおよび抑制性（Ｄ２）ユニット内のスパイクを引き起こすＢＡ（１．．．ｎ）内のスパイクによって、ブロック１００２で開始する。ブロック１００４で、順方向ドライバ・ゲート制御ユニット内のスパイクが、局所的ネットワークを介して側方抑制を交換する。この側方抑制の交換の例が、順方向ドライバ・ゲート制御ユニット（ＦＤＧＵ）１８０４、１８０４Ａ、および１８０４Ｂとラベル付けされて、図２０、２１、および２２の下部の小さい図に示されている。図２０、２１、および２２は、本開示において後でより完全に説明されるが、ブロック１００４の側方抑制をさらに示す目的で、図２０、２１、および２２の特定の態様についてここで説明する。図２０では、ＦＤＧＵの図が３つのノードとして示されており、中央のノードは、本明細書ではＧＡＢＡと呼ばれるモジュレータの状態を生成するユニットを表している。図２０に示されているように、ＧＡＢＡモジュレータがアクティブなユニットによって生成される。そのため、ＧＡＢＡモジュレータの状態を受信するユニットに入力されるＧＡＢＡモジュレータが、斑点のある円として示されている。図２０では、ＧＡＢＡ生成ユニットが、ＧＡＢＡを生成している。このＧＡＢＡは、湾曲した正弦曲線に沿って、局所的側方抑制性ネットワークを通って隣接するノードに中継される。ＧＡＢＡ生成ノードは、ＧＡＢＡを生成しており、ＧＡＢＡを受信していないため、抑制されないことによってスパイクを生成することができるので、このノードは、本明細書ではＧＡＢＡＬＯと呼ばれるモジュレータの状態にある。図２１および２２では、ＧＡＢＡノードは、局所的ネットワークからＧＡＢＡを受信しているので、ＧＡＢＡＨＩ状態にある。ここで方法１０００に戻ると、ブロック１００６で、局所的ネットワークが、ＧＡＢＡの交換によって、ユニットのサブセットが抑制性調整（例えばＧＡＢＡ）を受信してスパイク生成を停止する状態に達する。ブロック１００８で、局所的ネットワークが、やはりＧＡＢＡの交換によって、ユニットのサブセットが抑制性調整を提供してスパイク生成を継続する状態に達する。
【００６５】
ブロック１０１０で、第２のモジュレータが、スパイクを生成している順方向駆動ゲート制御ユニットのサブセットから抑制のコピーを受信する。図２３および２４は、本開示において後でより完全に説明されるが、ブロック１０１０の第２のモジュレータをさらに示す目的で、図２３、および２４の特定の態様についてここで説明する。インテグレータ／ユニットである第２のモジュレータは、図２３および２４ではＤＯＰＡとして参照されており、図２３および２４の左端にある小さい図の２１０４および２１０４Ａで、図示されている。線２１０８は、第２のモジュレータ・ユニットの状態を表しており、図に示されているように、高または低になることができる。低状態は、ゲート制御ユニット・ネットワークによって生成されたスパイクから抑制を受信する第２のモジュレータに対応する。したがって、ゲート制御ユニットは、スパイクを生成すると、ゲート制御ユニットどうし、第２のモジュレータ、ＧＰｅ（淡蒼球、外部）、およびＧＰｉ（淡蒼球、内部）を抑制する。スパイクを生成する順方向駆動ゲート制御ユニットのサブセットから抑制のコピーを受信する機能は、図２３では線２１１０によって表されている。
【００６６】
ブロック１０１２で、第２のモジュレータが、スパイクを生成しているサブセットからの抑制の時間を、回復電流として積分する。図２３に示されているように、線２１０８が高状態を開始し、その後、ゲート制御ユニットから抑制を受信したときに、低状態になる。低状態では、動作し、時間とともに増大する電流が存在し、その電流は入力を積分し、線２１０８を反対方向に引っ張る。積分の時間がある最大期間を超え、ゲート制御ユニットからの持続的抑制が存在する場合、電流が再び減少し始める。したがって、第２のモジュレータは、抑制の時間を実質的に測定する。この測定によって、図２４に示すように抑制が解放されたときに、抑制の経過時間が特定の最小値と最大値の間である場合、回復事象が表現される。これは、抑制が解放され、ユニットが、自分自身を単に前の状態に復元するのではなく、スパイクを生成できる（すなわち、調整を提供できる）状態に復元するからである。このタイマは、本明細書では回復電流と呼ばれる。ブロック１０１４で、回復電流が時間間隔Ｔにわたって積分された場合、抑制からの急速な解放によって回復スパイクが発生する。したがって、回復電流は、システム自体の状態の測定である。その状態では、ゲート制御ベクトルが存在しており、第２のモジュレータが一定の最小期間抑制された後に、急速に解放される。さらに、時間間隔Ｔは、ネットワークのエフェクタ出力の調整制御の下にあることができる。このようにして、ネットワークは、行動ネットワークの特定のエフェクタ出力を使用して基準時間間隔Ｔを調整することによって、遷移の速度を制御することができる。
【００６７】
必要に応じて、ブロック１０１６で、第２のモジュレータによって外部の値の信号が検出された場合、スパイク生成が許可される。したがって、ブロック１０１６は、興奮性入力として機能する外部の値を測定することによって、第２のモジュレータにスパイクを生成させる第２のオプションの方法を提供する。言い換えると、第２のモジュレータは、必要に応じて、興奮によって駆動されてスパイクを生成することができる。ブロック１０１８で、グランド・ループＳＴＤＰゲート制御関数の順方向ドライバ・ゲート制御ユニットが、抑制性（例えばＧＡＢＡ）モジュレータおよび第２の（例えばＤＯＰＡ）モジュレータに基づいて変更される。グランド・ループＳＴＤＰゲート制御関数を変更するためのＧＡＢＡ／ＤＯＰＡ基準の１つの可能なセットが、図１９の下部にある４つの図で示されている。ゲート制御ユニットの位相シフトの合計がゼロになるように、時間とともにシステムが動作する限り、その他の基準が可能である。直接または間接順方向ゲート制御ユニットの場合、ＧＡＢＡ調整が高または低のいずれであるか、およびＤ１ユニットでＤＯＰＡが減少しているのか、それとも増加しているのかに従って、またはＤ２ユニットでＤＯＰＡが減少しているのか、それとも増加しているのかに従って、４つの異なるＳＴＤＰの図のうちの１つを選択することによって、グランド・ループＳＴＤＰゲート制御関数が変更される。
【００６８】
図１３に示されている方法１１００は、ＳＴＤＰゲート制御関数を変更するためにＳＴＤＰの順方向ドライバ・ゲート制御ユニットによって実行されるプロセスの動作を示している。方法１１００は、図１９で適用されているさまざまなＳＴＤＰゲート制御関数をさらに説明している。方法１１００は、選択されるＳＴＤＰゲート制御関数を説明することに加えて、選択されたＳＴＤＰゲート制御関数の影響も説明しており、それらの影響は、図２０、２１、および２２において最も良く示されている。ＤＯＰＡ／ＧＡＢＡの対応に基づいて特定のゲート制御関数を選択する場合、ｄＳＰＮ（すなわち、脱抑制またはＤ１）またはｉＳＰＮ（すなわち、抑制またはＤ２）によるパターン化された入力に対するゲート制御反応は、位相が前進するか、または位相が遅延する。任意の周期を使用できるが、本開示の１つまたは複数の実施形態で対象となる周期は、ループを除去するＳＴＤＰを免れているグランド・ループである。さらに、この周期は、抑制が解放されたとき（図２４）に第２のモジュレータにおいて表現される回復事象に必要とされる持続的抑制の最小持続間隔に一致する。
【００６９】
方法１１００は、ブロック１１０２で、局所的ゲート制御ユニットのネットワークから第１の抑制性モジュレータ信号を受信することによって開始する。ブロック１１０４は、方法１０００におけるルールに従って、第２のモジュレータから第２のモジュレータ信号を受信する。ブロック１１０６で、第２のモジュレータであり、第１のモジュレータではない場合、ＳＴＤＰを調整して、周期パターン入力に対するＤ１の反応の位相を前進させる。ブロック１１０８で、第１のモジュレータではなく、第２のモジュレータである場合、ＳＴＤＰを調整して、周期パターン入力に対するＤ２の反応の位相を前進させる。ブロック１１１０で、第１のモジュレータおよび第２のモジュレータである場合、ＳＴＤＰを調整して、周期パターン入力に対するＤ１の反応およびＤ２の反応の位相を遅延させる。ブロック１１１２で、第１のモジュレータであり、第２のモジュレータでない場合、ＳＴＤＰを調整して、周期パターン入力に対するＤ１の反応およびＤ２の反応の位相をいずれも変更しない。
【００７０】
ここで、開示された１つまたは複数の実施形態のアーキテクチャの例を、特に図４〜９のブロック図のレベルで示されたコンポーネントに重点を置いて詳細に説明すると、図１４は、情報最大化領域４０２Ａおよび入力測定１２０２から形成された情報最大化ネットワーク１２００の実装例を示している。情報最大化ネットワーク１２００は、ベクトル「ｘ」を含んでいる何らかの入力ベクトルの集合に対して、ベクトル「ｕ」を含んでいる出力ベクトルの集合を最大化する。下付き文字付の「ｘ」および「ｕ」のラベルの付いたユニットは、この説明におけるベクトルの要素「ｕ」および「ｘ」に対応していることに注意する。出力ベクトルの集合が伝達する、入力ベクトルの集合に関する情報が最大化されるように、有効な学習ルールが重み「Ｗ」（線形代数の用語では、行列）に適用される。実際は、これは、ネットワークからの最小の情報反応が常に同じ出力になるように、出力ベクトルの集合のエントロピーを最大化することによって実現される。ニューラル・ネットワークにおいて表現される出力は、ベクトルと見なすことができ、そのベクトル出力は、常に同じ方向を指している場合、あまり情報を与えない。したがって、重み行列（Ｗ）は、ネットワークに任意の２つの入力ベクトル「ｘ」が与えられたときに生成される任意の２つの出力ベクトル「ｕ」間の分離を最大化するように、動的に変更される。前述したように、図１４は、本開示の１つまたは複数の実施形態に組み込むのに適した情報最大化ネットワークの例を示している。情報最大化ネットワーク１２００に関するさらなる詳細は、文献「A Local Learning Rule That Enables Information Maximization forArbitrary Input Distributions」（R. Linsker著（１９９７年）、Neural Computation 9、１６６１〜１６６５ページ）で開示されている。この文献の全体的開示は、参照によって本明細書に包含されている。
【００７１】
図１５は、本開示の１つまたは複数の実施形態の情報最大化ネットワーク１２００および行動ネットワーク１３００の構成の例を示している。行動ネットワークは、第１のスパイク・ジェネレータ１３０２、第２のスパイク・ジェネレータ１３０４、フィードバック経路１３０６、表現型測定値１３０８、入力データ１３１０、順方向ドライバ・ゲート１３１２、フィードフォワード経路１３１４、および入力データ１３１６を含み、図に示されているように構成および配置される。一般に、行動ネットワーク１３００は、情報最大化ネットワーク１２００によって「支配」されているネットワーク内でループのセットを確立する。この支配された関係の例は、「ｕ」の出力要素からスパイク・ジェネレータ１３０４へ伸びている方向矢印１３２０によって表されている。前述したように、スパイク・ジェネレータは、時間エンコーディング・マシン（temporal or a time encoding machine）として知られているものを含んでいる。「ｕ」の要素が、例えば０〜１の範囲のスカラーである場合、スパイク・ジェネレータ１３０４は、「ｕ」のスカラー要素の何らかの関数に等しい速度でスパイクを生成する。本開示に従って、行動ネットワーク１３００は特定の方法でスパイクを使用する。スパイク・ジェネレータ１３０４の支配者は、最初は情報最大化ネットワーク１２００の「ｕ」の出力要素であり、この出力要素は入力データ１３１０に対して情報を最大化する。入力データ１３１０の一部は、スパイク・ジェネレータ１３０４の影響から生じる。したがって、本開示に従って、図１５に示されているスパイク・ジェネレータを接続することによって、情報最大化ネットワーク１２００への入力ベクトルの集合を変更できる。
【００７２】
図１５に示されたネットワーク構成に従って、スパイク・ジェネレータの制御は情報最大化ユニット１２００に対して局所的になり、スパイクが複数の方法で中継されることが可能になる。例えば、スパイクはエフェクタを介して表現型１３０８に直接影響を与えることができる。本開示にさらに特有なこととして、スパイクは、情報最大化ネットワーク１２００から上流のネットワークへのフィードバック接続に向けられることが可能であり、またはスパイクは、ゲート制御されたフィードフォワード接続に向けられることが可能である。その例は、スパイク・ジェネレータ１３０２から順方向ドライバ・ゲート１３１２に向けて示されている。
【００７３】
図１５は簡略化された表現であり、実際は、情報最大化ネットワーク１２００、行動ネットワーク１３００、およびスパイク・ジェネレータ１３０２、１３０４は、多数の経路（その多くがループを含んでいる）を介して相互接続される。学習ルール（例えばＳＴＤＰ）は、いわゆる局所的ループを除去するように実装されることが可能である。局所的ループとは、特定の期間内で信号を送信するループである。ＳＴＤＰのさらに詳細な例が、図１６Ａ、１６Ｂ、１６Ｃ、および１６Ｄに示されている。図１６Ａに示されているように、スパイクは前のニューロン（前）で開始し、後のニューロン（後）に伝搬し、後のニューロンでスパイクを生成するためのしきい値に基づいて、後のニューロンの発火を引き起こすこと、または引き起こさないことができる。図１６Ｂは、情報最大化ネットワーク１２００（図１４および１５に示されている）および行動ネットワーク１３００（図１５に示されている）に存在する可能性がある多数の経路から得ることができる初期ループ・トポロジを示している。図１６ＣはＳＴＤＰ学習ルールの適用を示し、図１６Ｄは、その適用の結果として学習されたトポロジを示している。そのトポロジでは、ノード「０」で開始および終了している局所的ループが除去されている。ＳＴＤＰによる局所的ループの除去に関するより完全な説明は、Front Neural Circuitsによって２０１０年３月１０日に発行された論文「ATheory Of Loop Formation And Elimination By Spike Timing-Dependent Plasticity」（KozloskiおよびCecchi著）に記載されている。ＳＴＤＰループ除去のハードウェア実装のさらなる詳細は、米国特許第８，４７３，４３９号および米国特許出願公開第ＵＳ２０１２／０１０９８６４号に記載されている。
【００７４】
ここで図１５に戻ると、情報最大化およびループ除去の両方が実装されており、情報が最適化されている。ここでは、行動ネットワーク１３００に示された構成が、ネットワーク状態の最適化された情報表現を受け取り、展開するべき行動は何か（または、さらに口語的に言うと「それについて何を行うべきか」）という基本的な質問に答える。本発明の閉ループの実施形態において、行動は、特定の状態からのネットワークの遷移を指しており、学習済みの有用な遷移を条件として、その後の状態に対して最適化された情報を提示する。この質問に対する回答は、具体的にはスパイク・パターンとして実装され、現在の行動の文脈を前提にして、さらに最適化された情報を提供するために、図１５に示されたアーキテクチャの情報最適化機能にもフィードバックされるということに注意する。順方向ドライバ・ゲート１３１２の動作は、最適化された、局所的ループが除去された情報に関して何を行うべきかを決定する際に、主要なコントローラになる。順方向ドライバ・ゲート１３１２はＳＴＤＰも組み込むが、順方向ドライバ・ゲート１３１２を通る接続が負であり、したがって持続的な回帰ループ信号が不可能であるため、ループを調整しない。代わりにＳＴＤＰは、ゲート７０６（図９に示されている）への負（抑制性）のゲート制御スパイク入力の位相を、順方向ドライバ・ゲート１３１２を横断しようとしているネットワーク内のさまざまなスパイク・ジェネレータからの正のスパイク到着時間の周期的入力パターンに対してシフトする働きをする。位相シフトは、２種類の負のゲート制御スパイクによって制御される。その１つ（図２０〜２２に示されている直接／ｄＳＰＮ）は、ＧＰｉからのトニック閉信号における一時的中断（ゲート開）を生成し、もう１つ（図２０〜２２に示されている間接／ｉＳＰＮ）は、ＧＰｅ内のトニック負信号における一時的中断（ゲートが閉じていることを意味する）によってＧＰｉからのトニック閉信号の増加を生成する。
【００７５】
負のゲート制御の開および閉の位相の独立制御は、これら２つの経路によって、次のように制御される。ここで、追加モジュレータ（例えばＤＯＰＡ）および局所的競争（例えばＧＡＢＡ）に従って、モジュレータの存在における「局所的勝者」ゲートに対する位相シフトについて説明する。なお、競争はユニット間の側方抑制によって決定され、Ｋｏｈｏｎｅｎネットワークなどの当技術分野において知られている。位相シフトは、ｄＳＰＮユニットでは前進し、ｉＳＰＮユニットでは一定になり、時間においてゲート開ウィンドウとゲート閉ウィンドウを有効に分離し、活性化されたときにゲート制御ウィンドウが開のままになることを保証する。モジュレータが撤退した場合、ｄＳＰＮの位相は一定のままになり、一方ｉＳＰＮの位相は前進する。このようにして、「ゲート閉」ウィンドウは前進して「ゲート開」ウィンドウを塞ぎ、ループ信号が終了する。モジュレータの存在における局所的競争の「敗者」の場合、位相シフトはｄＳＰＮとｉＳＰＮの両方で遅延する。モジュレータが存在しない場合、すべての「敗者」の位相シフトはゼロになる。前述したように、「競争」、「勝者」、および「敗者」の概念は、本明細書では、ネットワークの一実施形態として使用される。当技術分野において説明されている他の「勝者のいない」スパイク・ネットワークも使用されることが可能であり、その場合でも、抑制の相対的レベルが、位相シフトおよび位相シフトの方向を決定するために必要な調整カテゴリを提供できる。さらに、側方接続のパターンは、Ｋｏｈｏｎｅｎネットワークのパターンに従う必要はなく、例えば疎になることができる。
【００７６】
順方向ゲート制御ＳＴＤＰへの調整入力は、外部の値の測定によって正に、かつ、まれに駆動される。本開示の閉ループ・システムにおいて、ドライバは、ｄＳＰＮおよびｉＳＰＮのスパイクの大きい集団からの負である。この抑制が特定の期間継続し、その後緩和されたときに、モジュレータの信号が存在し、強になる（回復スパイク）。この信号は、ｄＳＰＮおよびｉＳＰＮのスパイク活動のエントロピー、ならびにゲート制御関数を介したグランド・ループのｄＳＰＮおよびｉＳＰＮの制御間の遷移のエントロピーを時間とともに最大化する（すなわち、ゲート制御ベクトルにおける急速な直交シフトを最大化する）ゲート制御関数に向けて、システムにバイアスをかける。抑制からの回復に対する制御（例えば、活性化、不活性化の積分時間、ユニットの区画化など）は、それらの制御によって課される時間的制約に対応する特定の間隔（例えば、数１００ミリ秒ごと）でゲート制御ベクトルを変更するゲート制御関数に向けて、システムにさらにバイアスをかける。
【００７７】
特定のシステム（例えば、図２に示されている人間の脳２００）内の一部のループは、局所的ＳＴＤＰの適用によって除去されないほど十分に長い。脳内では、例えばそのようなループを総称してグランド・ループと呼ぶことができる。図１７は、脳の感覚領域、辺縁系領域、運動領域（ＳＬＭ）をカバーするグランド・ループのさまざまな態様を示す図である。その概念は、本開示の１つまたは複数の実施形態に関連して利用できる。ＳＴＤＰによって除去されないほど十分に長いループは、脳の大きい領域および情報最大化ネットワークの領域の横断に関わるループである。一般に、図１７に示されているさまざまな領域は、図４〜９、１４、および１５に関連して本開示において前述された情報最大化領域および行動領域に対応する。本開示に従って、順方向ドライバ・ゲート１３１２（図１５に示されている）は、特定のスパイクが通過し、特定のスパイクが通過しないことを可能にするために、行動ネットワーク１３００（図１５に示されている）内のフィードフォワード接続、順方向ドライバ・ゲート接続内のさまざまなノードを開くこと、および閉じることによって、特定のグランド・ループを通って信号を送信するように機能する。
【００７８】
図１８は、本開示の１つまたは複数の実施形態によって利用できる順方向ドライバ・ゲート１６００の別の構成の例をさらに示す図である。本明細書で前述したように、本開示はコンピュータ・システム・アーキテクチャを対象にしている。ただし、参照および説明を容易にするために、開示されたコンピュータ・システム・アーキテクチャのさまざまな態様は、例えばニューロン、シナプス、ＤＯＰＡ、およびＧＡＢＡなどの神経学の用語を使用して説明される。本明細書では、コンピュータ・システム・アーキテクチャに関する説明または例示のために、神経学の用語または神経学の略語を使用することは、参照を容易にするためであり、説明された神経学的機能または神経学的コンポーネントと同等のパルス・ニューラル・ネットワークを対象にすることを目的にしていると理解されるであろう。順方向ドライバ・ゲート１６００の機能は、図１９ではＳｔｒおよびＴｈで示されており、これらはそれぞれ線条体および視床の略語である。順方向ドライバ・ゲート１６００は、図１９ではＳ１、Ｓ２、およびＲＧＡとして示されている、ネットワークのグランド・ループ接続のさまざまな領域をゲート制御する。グランド・ループ内でＳ２からＲＧＡに移動するには、Ｓ２は、Ｓｔｒの抑制性制御の下にあるＴｈを横断する必要がある。つまり、Ｓｔｒは、Ｔｈを抑制するかどうかを内部の重み行列が決定することに基づいて、Ｓ１およびＳ２から入力を受信する。Ｓｔｒの影響がＴｈを抑制することである場合、Ｔｈを横断してＲＧＡに到着しようとしているＳ１またはＳ２からのすべての信号がブロックされる。Ｓｔｒの影響がＴｈを脱抑制することである場合、Ｔｈを横断してＲＧＡに到着しようとしているＳ１またはＳ２からのすべての信号が、到着できる。
【００７９】
図１８の順方向ドライバ・ゲート１６００の機能の詳細な表現は、図１９の上部にある図によって示されている。図１９では、Ｃｘは、順方向ドライバ・ゲート１６００（図１８に示されている）を横断する必要がある行動ネットワーク内の任意のユニットである。順方向ドライバ・ゲート１６００は、Ｓｔｒ（線条体）、ＧＰ（淡蒼球）、およびＴｈ（視床）の総称的機能として表されている。図１９の上部を横切るＣｘからＣｘへの接続は、Ｃｘにも関連付けられている登録されたＩＭＡユニット間のフィードフォワード情報最大化接続であり、順方向ドライバ・ゲート１６００に直接関連していない。例えば、行動ネットワーク内のＣｘ感覚などのスパイク生成ユニットが、フィードフォワード信号を、Ｃｘ辺縁系などの別のＣｘユニットに中継する場合、その信号は、Ｃｘ感覚からＴｈを通ってＣｘ辺縁系まで横断する必要がある。ただし、ＴｈはＧＰの抑制性制御の下にあり、ＧＰはＳｔｒの抑制性制御の下にあり、ＳｔｒはＣｘ感覚から同じ入力を受信している。したがって、ＳｔｒはＳＴＤＰの形態の学習を経験しており、ＳｔｒはＣｘの多くの領域から入力を受信する。信号がＴｈを正常に横断するかどうかは、Ｔｈに対するＳｔｒの影響、およびそれによってＴｈゲートが開くのか、それとも閉じるのかによって決まる。例えば、ＧＰが常にＴｈを抑制する場合、Ｓｔｒは、ＧＰを一時停止させるスパイクの短いバーストを発火することによって、ＧＰに影響を与えることができる。ＧＰが一時停止すると、Ｔｈの抑制が一時停止し、ウィンドウが開く。そのウィンドウが開いている間に、Ｃｘ感覚からのスパイクが横断し、その後Ｃｘ辺縁系に到着することができる。ＧＰのこの機能は、Ｓｔｒニューロンの一種の制御（本明細書では直接と呼ばれる）の下にある。
【００８０】
ＧＰが開いたのちに、それを再び閉じようとする競合ゲート（図１９に示されていない）も存在する。そのため、ＧＰは、２つの段階に存在していると考えることができ、それらの段階には、便宜上、ＧＰｅおよびＧＰｉ（図２０に示されている）というラベルを付けることができる。したがって、ＳｔｒがＧＰを抑制する場合、別の種類のＳｔｒニューロンを介してＧＰの速度を低下ではなく実質的に上昇させる方法（本明細書では間接と呼ばれる）が存在する。調整入力、グランド・ループＳＴＤＰ、直接、および間接の相互作用は、図１９の下部にある４つのグラフ、ならびに図２０、２１、および２２に示されている図によって示されている。グランド・ループＳＴＤＰゲート制御関数を変更するためのＧＡＢＡ／ＤＯＰＡ基準の１つの可能なセットが、図１９の下部にある４つの図で示されている。ゲート制御ユニットの位相シフトの合計がゼロになるように、時間とともにシステムが動作する限り、その他の基準が可能である。直接または間接順方向ゲート制御ユニットの場合、ＧＡＢＡ調整が高または低のいずれであるか、およびＤ１ユニットでＤＯＰＡが減少しているのか、それとも増加しているのかに従って、またはＤ２ユニットでＤＯＰＡが減少しているのか、それとも増加しているのかに従って、４つの異なるＳＴＤＰの図のうちの１つを選択することによって、グランド・ループＳＴＤＰゲート制御関数が変更される。Ｓｔｒゲートの場合、図１９の下部にある４つの図は、直接状態と間接状態の両方について、状態が非ＤＯＰＡからＤＯＰＡに（ＤＯＰＡのラベルが付けられた方向矢印によって示されている）移動したときに発生することを示している。直接経路は、グランド・ループＳＴＤＰ関数の形状に関して、間接経路とは異なっている。直接ＳＴＤＰ関数は、基本的にＸ軸上で対称である。間接ＳＴＤＰ関数は、基本的にＸ軸上で非対称である。
【００８１】
ここで図２０を参照すると、関連する図１８０２、１８０４、１８０６のグループが示されており、それらは共に、周期パターン入力の概念を伝えている。中央にある図１８０２は、時間の循環図と呼ぶことができ、グランド・ループが行動領域内のスパイク・パターンによって反復的に横断される様子を示す。図１８０２は、ＧＰｅおよびＧＰｉというラベルが付けられた２つの環帯を含んでいる。ＧＰｉはＴｈを抑制し、順方向ドライバ・ゲート１６００（図１８に示されている）を開くか、または閉じる。ＧＰｉの開いたウィンドウ（脱抑制）が領域１８０８によって示され、ＧＰｉのより高い抑制によって閉じたウィンドウが領域１８１０によって示されている。
【００８２】
したがって、Ｓｔｒは、直接Ｓｔｒゲートおよび間接Ｓｔｒゲートという２つの部分に存在すると考えることができる。間接ＳｔｒゲートはＧＰｅを抑制し、ＧＰｅはＧＰｉを脱抑制し、ＧＰｉは閉ゲート状態（すなわち、領域１８１０）になる。直接ＳｔｒゲートはＧＰｉを直接抑制し、ＧＰｉは開ゲート状態（すなわち、領域１８０８）になる。Ｓｔｒゲートの２つの種類、間接および直接は、Ｔｈにおけるゲート制御に対して、瞬間的に影響を与える。間接はＴｈゲートを閉じ、直接はＴｈゲートを開く。図２０、２１、および２２に示されている図１８０２、１８０２Ａ、１８０２Ｂ、１８０４、１８０４Ａ、１８０４Ｂ、１８０６、１８０６Ａ、１８０６Ｂは、間接Ｓｔｒゲートおよび直接Ｓｔｒゲートの異なる状態を表している。負（抑制性）のゲート制御の開および閉の位相の独立制御は、これら２つの経路によって、次のように制御される。ここで、追加モジュレータ（例えばＤＯＰＡ）および局所的競争（例えばＧＡＢＡ）に従って、モジュレータの存在における「局所的勝者」ユニットに対する位相シフトについて説明する。なお、競争はユニット間の側方抑制によって決定され、Ｋｏｈｏｎｅｎネットワークなどの当技術分野において知られている。位相シフトは、ｄＳＰＮユニットでは前進し、ｉＳＰＮユニットでは一定になり、時間においてゲート開ウィンドウとゲート閉ウィンドウを有効に分離し、活性化されたときにゲート制御ウィンドウが開のままになることを保証する。モジュレータが撤退した場合、ｄＳＰＮの位相は一定のままになり、一方ｉＳＰＮの位相は前進する。このようにして、「ゲート閉」ウィンドウは前進して「ゲート開」ウィンドウを塞ぎ、ループ信号が終了する。モジュレータの存在における局所的競争の「敗者」の場合、位相シフトはｄＳＰＮとｉＳＰＮの両方で遅延する。モジュレータが存在しない場合、すべての「敗者」の位相シフトはゼロになる。なお、「競争」、「勝者」、および「敗者」の概念は、本明細書では、ネットワークの一実施形態として使用される。当技術分野において説明されている他の「勝者のいない」スパイク・ネットワークも使用されることが可能であり、その場合でも、抑制の相対的レベルが、位相シフトおよび位相シフトの方向を決定するために必要な調整カテゴリを提供できる。さらに、側方接続のパターンは、Ｋｏｈｏｎｅｎネットワークのパターンに従う必要はなく、例えば疎になることができる。
【００８３】
図２３および２４は、本開示の１つまたは複数の実施形態に従って、順方向ゲート制御ＳＴＤＰへの調整入力のソースを示す別の図２１０２、２１０２Ａ、２１０４、２１０４Ａ、２１０６、２１０６Ａを示している。順方向ゲート制御ＳＴＤＰへの調整入力のソースは、外部の値の測定によって正に、かつ、まれに駆動される。本開示の閉ループ・システムにおいて、ドライバは、ｄＳＰＮおよびｉＳＰＮのスパイクの大きい集団からの負である。この抑制が緩和されたときに、モジュレータの信号が存在し、強になる（回復スパイク）。この信号は、ｄＳＰＮおよびｉＳＰＮのスパイク活動のエントロピー、ならびにゲート制御関数を介したグランド・ループのｄＳＰＮおよびｉＳＰＮの制御間の遷移のエントロピーを時間とともに最大化する（すなわち、ゲート制御ベクトルにおける急速な直交シフトを最大化する）ゲート制御関数に向けて、システムにバイアスをかける。抑制からの回復に対する制御（例えば、活性化、不活性化の積分時間、ユニットの区画化など）は、それらの制御によって課される時間的制約に対応する特定の間隔（例えば、数１００ミリ秒ごと）でゲート制御ベクトルを変更するゲート制御関数に向けて、システムにさらにバイアスをかける。
【００８４】
したがって、前述の詳細な説明および添付の図面から、本開示が、人工パルス・ニューラル・ネットワークの一種を実装するコンピュータ・システムを使用して生物学的神経系をモデル化することを対象にするということがわかる。この人工パルス・ニューラル・ネットワークは、本開示では、時間エンコーダおよび情報ループ信号を含んでいる情報に基づく交換（ＩＢＥＸ）ネットワークと呼ばれる。本開示の技術的利点は、閉ループ関数に課される価値関数を必要としないアーキテクチャを含んでいる。したがって、情報最大化領域間のすべての横断のエントロピーおよび多用途性を最大化するゲート制御関数のループの伝搬および検出から、相対的に高速な学習結果が得られる。行動およびネットワーク動態が、符号化方式として、およびコードの有用性を測定する手段として、展開される。他のループを終了する（すなわち、脅威の除去）高エントロピー・ループの横断の非監視学習を通じて、カテゴリが出現する。開ループ制御問題は、閉ループ選択メカニズムの内部セットにマッピングされる。状態推定コンポーネントは、より堅牢であり、ループ選択の条件が変化したときに、迅速な再組織化が行われる。極めて多数のループ状態、および外部の行動を引き起こさないが、特定の行動結果のみに向けて状態遷移を制約するように働く特定の状態の使用可能性により、行動の開始および終了のための複数の待ち時間を使用できる。
【００８５】
ここで図２５を参照すると、コンピュータ可読記憶媒体２３０２およびプログラム命令２３０４を含んでいる実施形態に従うコンピュータ・プログラム製品２３００が、一般的に示されている。
【００８６】
本開示は、システム、方法、またはコンピュータ・プログラム製品あるいはこれらの組合せにすることができる。コンピュータ・プログラム製品は、プロセッサに本開示の態様を実行させるためのコンピュータ可読プログラム命令を含んでいるコンピュータ可読記憶媒体を含んでもよい。
【００８７】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持および格納できる有形のデバイスにすることができる。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組合せにすることができるが、これらに限定されない。コンピュータ可読記憶媒体のさらに具体的な例の非網羅的リストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ：random access memory）、読み取り専用メモリ（ＲＯＭ：read-onlymemory）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ：erasableprogrammable read-only memoryまたはフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ：static random access memory）、ポータブル・コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ：compact disc read-only memory）、デジタル多用途ディスク（ＤＶＤ：digital versatile disk）、メモリ・スティック、フロッピー・ディスク（Ｒ）、パンチカードまたは命令が記録されている溝の中の隆起構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組合せを含む。本明細書において使用されているコンピュータ可読記憶媒体は、本質的に、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波（例えば、光ファイバ・ケーブルを通過する光パルス）、あるいはワイヤを介して送信される電気信号などの一時的信号であると解釈されるべきではない。
【００８８】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各コンピューティング・デバイス／処理デバイスへ、またはネットワーク（例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワークあるいはこれらの組合せ）を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードすることができる。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバあるいはこれらの組合せを備えてもよい。各コンピューティング・デバイス／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス／処理デバイス内のコンピュータ可読記憶媒体に格納するために転送する。
【００８９】
本開示の処理を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ（ＩＳＡ：instruction-set-architecture）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、あるいは、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む１つまたは複数のプログラミング言語の任意の組合せで記述されたソース・コードまたはオブジェクト・コードにしてもよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に実行すること、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、ユーザのコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータを、ローカル・エリア・ネットワーク（ＬＡＮ：local area network）または広域ネットワーク（ＷＡＮ：wide areanetwork）を含む任意の種類のネットワークを介してユーザのコンピュータに接続することができ、または接続を、（例えば、インターネット・サービス・プロバイダを使用してインターネットを介して）外部コンピュータに対して行うことができる。一部の実施形態では、本開示の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ：field-programmable gate arrays）、またはプログラマブル・ロジック・アレイ（ＰＬＡ：programmable logic arrays）を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行できる。
【００９０】
本開示の態様は、本明細書において、本開示の実施形態に記載された方法、装置（システム）、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組合せは、コンピュータ可読プログラム命令によって実装できると理解されるであろう。
【００９１】
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて規定された機能／動作を実装するための手段を構築するように、汎用コンピュータ、専用コンピュータ、またはその他のプログラマブル・データ処理装置のプロセッサに提供されて、マシンを作り出すものであってよい。これらのコンピュータ可読プログラム命令は、命令が記憶されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて規定された機能／動作の態様を実装する命令を含む製品を備えるように、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラマブル・データ処理装置、またはその他のデバイスあるいはこれらの組合せに特定の方法で機能するように指示できるものであってもよい。
【００９２】
コンピュータ可読プログラム命令は、コンピュータ、その他のプログラマブル装置、またはその他のデバイスで実行される命令が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて規定された機能／動作を実装するように、コンピュータ実装プロセスを生成するべく、コンピュータ、その他のプログラマブル・データ処理装置、またはその他のデバイスにロードされ、コンピュータ、その他のプログラマブル装置、またはその他のデバイス上で一連の動作ステップを実行させるものであってもよい。
【００９３】
図内のフローチャートおよびブロック図は、本開示のさまざまな実施形態に記載されているシステム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および処理を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための１つまたは複数の実行可能な命令を備える、命令のモジュール、セグメント、または部分を表すことができる。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生することができる。例えば、連続して示された２つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行されてもよい。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組合せは、規定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令の組合せを実行する専用ハードウェアベースのシステムによって実装できるということにも注意する。
【００９４】
本明細書で使用される用語は、特定の実施形態を説明することのみを目的としており、本開示を限定することを意図していない。本明細書で使用される単数形「ａ」、「ａｎ」、および「ｔｈｅ」は、特に明示的に示されない限り、複数形も含むことが意図されている。「備える（ｃｏｍｐｒｉｓｅ）」または「備えている（ｃｏｍｐｒｉｓｉｎｇ）」あるいはその両方は、本明細書で使用される場合、記載された機能、整数、ステップ、処理、要素、またはコンポーネントあるいはその組合せの存在を示すが、１つまたは複数のその他の機能、整数、ステップ、処理、要素、コンポーネント、またはこれらのグループ、あるいはこれらの組合せの存在または追加を除外していないとさらに理解されるであろう。
【００９５】
下の特許請求の範囲内のすべてのミーンズまたはステップ・プラス・ファンクション要素の対応する構造、材料、動作、および均等なものは、具体的に請求されるその他の請求された要素と組み合わせて機能を実行するための任意の構造、材料、または動作を含むことが意図されている。本開示の説明は、例示および説明の目的で提示されているが、網羅的であることは意図されておらず、開示された形態での開示に限定されない。本開示の範囲および思想を逸脱することなく多くの変更および変形が、当業者にとって明らかとなる。本開示の原理および実際的な適用を最も適切に説明するため、およびその他の当業者が、企図されている特定の用途に適しているようなさまざまな変更を伴う多様な実施形態に関して、本開示を理解できるようにするために、実施形態が選択されて説明された。
【図１】
0006670314.tif 000002
【図２】
0006670314.tif 000003
【図３】
0006670314.tif 000004
【図４】
0006670314.tif 000005
【図５】
0006670314.tif 000006
【図６】
0006670314.tif 000007
【図７】
0006670314.tif 000008
【図８】
0006670314.tif 000009
【図９】
0006670314.tif 000010
【図１０】
0006670314.tif 000011
【図１１】
0006670314.tif 000012
【図１２】
0006670314.tif 000013
【図１３】
0006670314.tif 000014
【図１４】
0006670314.tif 000015
【図１５】
0006670314.tif 000016
【図１６】
0006670314.tif 000017
【図１７】
0006670314.tif 000018
【図１８】
0006670314.tif 000019
【図１９】
0006670314.tif 000020
【図２０】
0006670314.tif 000021
【図２１】
0006670314.tif 000022
【図２２】
0006670314.tif 000023
【図２３】
0006670314.tif 000024
【図２４】
0006670314.tif 000025
【図２５】
0006670314.tif 000026