(57)【特許請求の範囲】
【請求項１】
複数の電子ニューロンと、
前記複数の電子ニューロンを相互接続させるように構成されたクロスバー・アレイを備え、
前記クロスバー・アレイが、
軸索および樹状突起が互いに交差するような複数の軸索および複数の樹状突起と、
樹状突起と軸索との間で結合される前記クロスバー・アレイの交差点接合部にそれぞれあり、シナプス前電子ニューロンとシナプス後電子ニューロンとを相互接続させるようにそれぞれ構成される、複数の電子シナプスを備え、
各電子シナプスが、
前記電子シナプスの状態を表す第１のビットを保存するための第１のメモリ素子と、
前記電子シナプスの状態を更新するためのメタ情報を保存するための追加のメモリ素子であって、前記メタ情報が学習則に基づく強化学習のため前記電子シナプスの前記状態をセット／リセットするための第２および第３のビットを含む、追加のメモリ素子と、
強化学習のために更新信号に応答して、前記メタ情報に基づいて前記電子シナプスの状態を更新するように構成された更新モジュールを備え、
前記メタ情報が、シナプス前ニューロンのスパイク信号および前記シナプス後ニューロンのスパイク信号に基づくものであり、前記シナプスの前記状態が前記メタ情報に基づいてセット／リセットされる、システム。
【請求項２】
前記電子シナプスが、並列に非同期で動作可能である、請求項１に記載のシステム。
【請求項３】
電子シナプスの状態が、遅延更新信号に基づいて強化学習に従ってプログラムされる、請求項１または２に記載のシステム。
【請求項４】
各電子シナプスの前記更新モジュールが、前記電子シナプスを更新するように構成され、その結果、
前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が、前記電子シナプスを介して前記シナプス前ニューロンから前記シナプス後ニューロンに送られる読み取り信号によって更新され、
前記シナプス前ニューロンのスパイク信号に、次いで前記シナプス後ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、その結果前記電子シナプスが学習則に従ってセットされ、
前記シナプス後ニューロンのスパイク信号に、次いで前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってリセットされる、請求項１、２または３に記載のシステム。
【請求項５】
各電子シナプスの前記更新モジュールが、前記電子シナプスが更新信号に応答して、スパイクタイミング依存可塑性に基づいて更新されるように、強化学習に基づいて前記電子シナプスを更新するように構成される、請求項１、２または３に記載のシステム。
【請求項６】
各電子シナプスが、前記メモリ素子がアレイの対角線上の接合部に存在するように、接合部のアレイを形成する複数の樹状突起経路に交差する複数の軸索経路をさらに含む、請求項１ないし５のいずれかに記載のシステム。
【請求項７】
各電子シナプスが、
情報を維持するように構成される３つのメモリ素子と、
前記メモリ素子が前記アレイの対角線上の接合部に存在して、Ｒビット、ＧビットおよびＢビットを提供するように、３×３アレイの９つの接合部を形成する、３つの樹状突起経路と交差する３つの軸索経路とを備える、請求項１ないし６のいずれかに記載のシステム。
【請求項８】
前記クロスバー・アレイが、Ｎ２個の電子シナプスを有するＮｘＮ個の交差点接合部を備え、
各電子シナプスが、
Ｒ行を並列に読み取り、
Ｇ列を並列に読み取ってセットし、
Ｇ行を並列にリセットし、
Ｂ行を並列に読み取ってセットし、
Ｂ列を並列にセットし、
Ｒ行およびＲ列上のセットされたビットの数を見積もり、
報酬信号が到達したときに、グローバル値信号を提供し、前記クロスバー・アレイ内のＮ２個のＲビットをすべてセットおよびリセットして電子強化学習するように構成される、請求項７に記載のシステム。
【請求項９】
各電子シナプスが、読み取り用の２端子、セット用の２端子、およびリセット用の２端子を有する６端子デバイスを備える、請求項１ないし８のいずれかに記載のシステム。
【請求項１０】
各電子シナプスが、スタティック・ランダム・アクセス・メモリ（SRAM）をベースとするメモリ素子を備える、請求項１ないし９のいずれかに記載のシステム。
【請求項１１】
各電子シナプスが、ダイナミック・ランダム・アクセス・メモリ（DRAM）をベースとするメモリ素子を備える、請求項１ないし９のいずれかに記載のシステム。
【請求項１２】
各電子シナプスが、シナプス前電子ニューロンの軸索とシナプス後電子ニューロンの樹状突起とを相互接続させるように構成される、請求項１ないし１１のいずれかに記載のシステム。
【請求項１３】
シナプス前電子ニューロンとシナプス後電子ニューロンとを相互接続させるように構成された電子シナプスを備える装置であって、前記電子シナプスが、
前記電子シナプスの状態を表す第１のビットを保存するための第１のメモリ素子と、
前記電子シナプスの前記状態の更新のためメタ情報を保存するための追加のメモリ素子であって、前記メタ情報が学習則に基づく強化学習のため前記電子シナプスの前記状態をセット／リセットするための第２および第３のビットを含む、追加のメモリ素子と、
強化学習のために更新信号に応答して、前記メタ情報に基づいて前記電子シナプスの前記状態を更新するように構成された更新モジュールを備え、
前記メタ情報が、シナプス前ニューロンのスパイク信号および前記シナプス後ニューロンのスパイク信号に基づくものであり、前記シナプスの前記状態が前記メタ情報に基づいてセット／リセットされる、装置。
【請求項１４】
前記更新モジュールが、学習則に基づく強化学習のために遅延更新信号に応答して、前記メタ情報に基づいて前記電子シナプスの前記状態を更新するように構成される、請求項１３に記載の装置。
【請求項１５】
前記更新モジュールが、前記電子シナプスがスパイクタイミング依存可塑性学習則に基づいて更新されるように、電子強化学習に基づいて前記電子シナプスの前記状態を更新するように構成される、請求項１３または１４に記載の装置。
【請求項１６】
前記更新モジュールが、前記電子シナプスを更新するように構成され、その結果、
前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が、前記電子シナプスを介して前記シナプス前ニューロンから前記シナプス後ニューロンに送られる読み取り信号によって更新され、
前記シナプス前ニューロンのスパイク信号に、次いで前記シナプス後ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、その結果前記電子シナプスが学習則に従ってセットされ、
前記シナプス後ニューロンのスパイク信号に、次いで前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってリセットされる、請求項１４に記載の装置。
【請求項１７】
前記更新モジュールが、前記電子シナプスを更新するように構成され、その結果、更新信号が時間窓内に受け取られる場合に、
前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が、前記電子シナプスを介して前記シナプス前ニューロンから前記シナプス後ニューロンに送られる読み取り信号によって更新され、
前記シナプス前ニューロンのスパイク信号に、次いで前記シナプス後ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってセットされ、
前記シナプス後ニューロンのスパイク信号に、次いで前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってリセットされる、請求項１３ないし１６のいずれかに記載の装置。
【請求項１８】
前記電子シナプスが、６端子デバイスを備え、２つの端子が読み取り用、２つの端子がセット用、２つの端子がリセット用である、請求項１７に記載の装置。
【請求項１９】
前記電子シナプスが、前記シナプス前電子ニューロンの軸索と前記シナプス後電子ニューロンの樹状突起とを相互接続させるように構成される、請求項１３ないし１８のいずれかに記載の装置。
【請求項２０】
前記メモリ素子がアレイの対角線上の接合部に存在するように、前記電子シナプスが、接合部のアレイを形成する複数の樹状突起経路に交差する複数の軸索経路をさらに備える、請求項１３ないし１９のいずれかに記載の装置。
【請求項２１】
学習則に基づく強化学習のために遅延更新信号に応答して、メタ情報に基づいて電子シナプスの状態を更新するように構成されたコンピュータ可読プログラム・コードを含むコンピュータ・プログラムであって、
前記電子シナプスが、シナプス前電子ニューロンとシナプス後電子ニューロンとを相互接続させるように構成され、前記電子シナプスが、
前記電子シナプスの状態を表す第１のビットを保存するための第１のメモリ素子と、
前記電子シナプスの前記状態の更新のためメタ情報を保存するための追加のメモリ素子であって、前記メタ情報が学習則に基づく強化学習のため前記電子シナプスの前記状態をセット／リセットするための第２および第３のビットを含む、追加のメモリ素子と、
強化学習のために更新信号に応答して、前記メタ情報に基づいて前記電子シナプスの前記状態を更新するように構成された更新モジュールを備え、
前記メタ情報が、シナプス前ニューロンのスパイク信号および前記シナプス後ニューロンのスパイク信号に基づくものであり、前記シナプスの前記状態が前記メタ情報に基づいてセット／リセットされる、コンピュータ・プログラム。
【請求項２２】
前記コンピュータ可読プログラム・コードが、
前記電子シナプスがスパイクタイミング依存可塑性学習則に基づいて更新されるように、電子強化学習に基づいて前記電子シナプスの前記状態を更新するように構成される、請求項２１に記載のコンピュータ・プログラム。
【請求項２３】
前記コンピュータ可読プログラム・コードが前記電子シナプスを更新するように構成され、その結果、
前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が、前記電子シナプスを介して前記シナプス前ニューロンから前記シナプス後ニューロンに送られる読み取り信号によって更新され、
前記シナプス前ニューロンのスパイク信号に、次いで前記シナプス後ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、その結果、前記電子シナプスが学習則に従ってセットされ、
前記シナプス後ニューロンのスパイク信号に、次いで前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってリセットされる、請求項２１に記載のコンピュータ・プログラム。
【請求項２４】
前記コンピュータ可読プログラム・コードが、前記電子シナプスを更新するように構成され、その結果、更新信号が時間窓内に受け取られる場合に、
前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が、前記電子シナプスを介して前記シナプス前ニューロンから前記シナプス後ニューロンに送られる読み取り信号によって更新され、
前記シナプス前ニューロンのスパイク信号に、次いで前記シナプス後ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってセットされ、
前記シナプス後ニューロンのスパイク信号に、次いで前記シナプス前ニューロンのスパイク信号に応答して、前記電子シナプスの前記状態が更新され、前記電子シナプスが学習則に従ってリセットされる、請求項２１に記載のコンピュータ・プログラム。
【請求項２５】
前記電子シナプスが、６端子デバイスを備え、２つの端子が読み取り用、２つの端子がセット用、２つの端子がリセット用であり、
前記電子シナプスが、シナプス前電子ニューロンの軸索とシナプス後電子ニューロンの樹状突起とを相互接続させるように構成される、請求項２１に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ニューロモーフィックおよびシナパトロニック・システムに関し、詳細には、電子シナプスおよびシナプス・クロスバー・アレイに関する。
【背景技術】
【０００２】
人工ニューラル・ネットワークとも呼ばれる、ニューロモーフィックおよびシナパトロニック・システムは、電子システムが本質的に生物学的な脳のシステムと類似した方法で機能できるようにする計算システムである。ニューロモーフィックおよびシナパトロニック・システムは、０および１を扱う従来のディジタル・モデルを一般には利用しない。代わりに、ニューロモーフィックおよびシナパトロニック・システムは、生物学的な脳のニューロンとほぼ機能的に等価な処理要素間の接続を作り出す。ニューロモーフィックおよびシナパトロニック・システムは、生物学的なニューロンをモデルにした様々な電子回路で構成することができる。
【０００３】
生物系では、あるニューロンの軸索と別のニューロン上の樹状突起との間の接触点は、シナプスと呼ばれ、シナプスに関して、この２つのニューロンは、それぞれシナプス前、およびシナプス後と呼ばれる。我々個人の経験のエッセンスは、シナプスのコンダクタンスに保存される。シナプスのコンダクタンスは、スパイクタイミング依存可塑性（STDP）に従って、シナプス前ニューロンおよびシナプス後ニューロンの相対的なスパイク時間の関数として時間とともに変化する。ＳＴＤＰ則により、シナプス前ニューロンが発火した後にシナプス後ニューロンが発火すると、シナプスのコンダクタンスが増加し、２つの発火の順序が逆になると、シナプスのコンダクタンスが減少する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的の一つは、強化学習のための電子シナプスを含むシステム、装置およびコンピュータ・プログラムを提供することである。
【課題を解決するための手段】
【０００５】
本発明の実施形態は、強化学習するように構成された電子シナプスを提供する。一実施形態において、電子シナプスは、シナプス前電子ニューロンとシナプス後電子ニューロンとを相互接続させるように構成される。電子シナプスは、電子シナプスの状態を保存するように、および電子シナプスの状態を更新するためのメタ情報を保存するように構成されたメモリ素子を備える。電子シナプスは、強化学習のために更新信号に応答して、メタ情報に基づいて電子シナプスの状態を更新するように構成された更新モジュールをさらに備える。更新モジュールは、学習則に基づく強化学習のために遅延更新信号に応答して、メタ情報に基づいて電子シナプスの状態を更新するように構成される。
【０００６】
別の実施形態において、本発明は、複数の電子ニューロン、およびこの複数の電子ニューロンを相互接続させるように構成されたクロスバー・アレイを備えるシステムを提供する。クロスバー・アレイは、軸索および樹状突起が互いに交差するような複数の軸索および複数の樹状突起を備える。クロスバー・アレイは、複数の電子シナプスをさらに備え、各電子シナプスは、樹状突起と軸索との間で結合されるクロスバー・アレイの交差点接合部にあり、各電子シナプスシナプスは、シナプス前電子ニューロンとシナプス後電子ニューロンとを相互接続させるように構成される。
【０００７】
本発明の好ましい実施形態は、読み取り用の２端子、セット用の２端子、およびリセット用の２端子を有する６端子デバイスを備える空間分割多元接続電子シナプスを提供する。
【０００８】
本発明のこれらの特徴、態様および利点、ならびに、他の特徴、態様および利点は、以下の説明、添付された特許請求の範囲および添付図を参照して理解されるであろう。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態による、電子シナプスのクロスバー・アレイを有するニューロモーフィックおよびシナパトロニック・システムを示す図である。
【図２】本発明の実施形態による、シナプス前経路およびシナプス後経路の交差点接合部での電子シナプスを示す図である。
【図３】本発明の実施形態による、読み取り動作に関わる交差点接合部での電子シナプスを示す図である。
【図４】本発明の実施形態による、ＳＴＤＰセット動作に関わる交差点接合部での電子シナプスを示す図である。
【図５】本発明の実施形態による、ＳＴＤＰリセット動作に関わる交差点接合部での電子シナプスを示す図である。
【図６】本発明の実施形態による、ＳＴＤＰセット動作に関わる交差点接合部での電子シナプスを示す図である。
【図７】本発明の実施形態による、接合部のアレイを含む電子シナプスを示す図である。
【図８】本発明の実施形態による、Ｒビットに対するＳＴＤＰ動作に関わる電子シナプスを示す図である。
【図９】本発明の実施形態による、Ｇビットに対するＳＴＤＰ動作に関わる電子シナプスを示す図である。
【図１０】本発明の実施形態による、Ｂビットに対するＳＴＤＰ動作に関わる電子シナプスを示す図である。
【図１１】本発明の実施形態による、電子シナプスのクロスバー・アレイを示す図である。
【図１２】本発明の実施形態による、電子シナプスを示す図である。
【図１３】本発明の実施形態による、スタティック・ランダム・アクセス・メモリ（SRAM）をベースとした電子シナプスを示す図である。
【図１４】本発明の実施形態による、ダイナミック・ランダム・アクセス・メモリ（DRAM）をベースとする電子シナプスを示す図である。
【図１５】本発明の一実施形態を実施するのに有用な情報処理システムの高レベルのブロック図である。
【発明を実施するための形態】
【００１０】
本発明の実施形態は、強化学習（RL）するように構成された電子シナプスを提供する。本発明の実施形態は、そうしたＲＬのための電子シナプスを利用して、スパイクタイミング依存可塑性（STDP）を実施するクロスバー・アレイを含むニューロモーフィックおよびシナパトロニック・システムをさらに提供する。
【００１１】
ここで、図１を参照すると、本発明の実施形態によるクロスバー・アレイを有するニューロモーフィックおよびシナパトロニック・システム１０の図が示されている。一例において、クロスバー・アレイは、約０．１ｎｍから１０μｍの範囲にあるピッチを有し得る「超高密度クロスバー・アレイ」を備え得る。ニューロモーフィックおよびシナパトロニック・システム１０は、複数のニューロン１４、１６、１８および２０を有するクロスバー・アレイ１２を含む。これらのニューロンも本明細書では「電子ニューロン」と呼ばれる。ニューロン１４および１６は、軸索ニューロンであり、ニューロン１８および２０は、樹状突起ニューロンである。軸索経路（軸索）２６および２８にそれぞれ接続された出力部２２および２４を有する軸索ニューロン１４および１６が示されている。樹状突起経路（樹状突起）３４および３６にそれぞれ接続された入力部３０および３２を有する樹状突起ニューロン１８および２０が示されている。軸索ニューロン１４および１６は、入力部も含み、樹状突起に沿った信号を受け取るが、これらの入力部および樹状突起は、説明を簡単にするため図示されていない。したがって、樹状突起接続に沿った入力を受け取る場合は、軸索ニューロン１４および１６は、樹状突起ニューロンとして機能することになる。同様に、樹状突起ニューロン１８および２０は、それらの軸索接続に沿って信号を送出する場合、軸索ニューロンとして機能することになる。ニューロン１４、１６、１８および２０のうちのどれかが発火すると、それらは、その軸索接続およびその樹状突起接続にパルスを送出することになる。
【００１２】
軸索２６、２８と樹状突起３４、３６間の各接続は、シナプス・デバイス３１を介して行われる。シナプス・デバイスが配置される接合部は、本明細書では「交差点接合部」と呼ばれる場合がある。ニューロン１４、１６、１８および２０は、それぞれ、１対のＲＣ回路４８を含む。一般に、本発明の実施形態によると、軸索ニューロン１４および１６は、樹状突起入力接続（図示せず）から受け取る入力がしきい値を超えると、「発火する」（パルスを送信する）ことになる。軸索ニューロン１４および１６が発火すると、それらは、そのＲＣ回路４８のうちの１つの抵抗器およびコンデンサの値によって決まる、比較的長い、所定の時定数で減衰するＡ−ＳＴＤＰ変数を維持する。例えば、一実施形態において、この時定数は、５０ｍｓであってもよい。Ａ−ＳＴＤＰ変数は、カレントミラー、または等価回路を用いて、コンデンサ両端間の電圧を求めることによってサンプリングされ得る。この変数は、以下でより詳細に論じられるように、関連するニューロンが最後に発火してからの時間をコード化することによって、軸索ＳＴＤＰを実現するために用いられる。軸索ＳＴＤＰは、「増強」を制御するために使用され、この「増強」とは、本文脈において、シナプスのコンダクタンスを増加させることとして定義される。
【００１３】
樹状突起ニューロン１８および２０が発火すると、それらは、そのＲＣ回路４８のうちの１つの抵抗器およびコンデンサの値に基づいた、比較的長い、所定の時定数で減衰するＤ−ＳＴＤＰ変数を維持する。例えば、一実施形態において、この時定数は５０ｍｓであってもよい。他の実施形態において、この変数は、指数曲線以外の他の関数による時間の関数として減衰してもよい。例えば、変数は一次関数、多項式関数または二次関数によって減衰してもよい。本発明の別の実施形態において、変数は、時間とともに減少する代わりに増加してもよい。どんな場合でも、この変数は、以下でより詳細に論じられるように、関連するニューロンが最後に発火してからの時間をコード化することによって、樹状突起ＳＴＤＰを実現するために用いられ得る。樹状突起ＳＴＤＰは、「抑圧」を制御するために使用され、この「抑圧」とは、本文脈において、シナプスのコンダクタンスを減少させることとして定義される。
【００１４】
電子シナプス３１の機能には、ＳＴＤＰ、およびＲＬをベースとするＳＴＤＰによる読み取り状態およびプログラム状態が含まれる。電子シナプス３１は、電力効率がよく、そのため非同期の実施に適している。さらに、電子シナプスは空間効率がよく、そのためクロスバーの実施に適している。図２は、本発明の実施形態による、シナプス前経路２６およびシナプス後経路３６の交差点接合部での電子シナプス３１の斜視図を示す。
【００１５】
図３を参照すると、ニューロン１４の軸索２６と別のニューロン２０上の樹状突起３６との間の接触点の交差点接合部でのシナプス３１に関して、この２つのニューロンは、それぞれシナプス前およびシナプス後と呼ばれる。シナプス前ニューロン１４が発火すると、「読み取り」信号が、シナプス前ニューロン１４からシナプス後ニューロン２０に送られる。図４を参照すると、シナプス前ニューロン１４が発火し、次いで、シナプス後ニューロン２０が発火すると、シナプス３１はＳＴＤＰセットされる。図５を参照すると、シナプス後ニューロン２０が発火し、次いで、シナプス前ニューロン１４が発火すると、シナプス３１はＳＴＤＰリセットされる。
【００１６】
強化学習（RL）は、一般に行動の結果に基づいた学習を含み、ＲＬモジュールは、過去の事象に基づいて行動を選択する。ＲＬモジュールが受け取る強化信号（例えば報酬信号）は、行動の成功を示す報酬（数値）である。その場合、ＲＬモジュールは、報酬を時間とともに増加させる行動を選択することを学習する。本発明による強化学習の一実施態様において、ＳＴＤＰセットおよびＳＴＤＰリセット動作は直ぐには行われない。むしろ、報酬（「値」）信号がある時間窓内に生じる場合に、ＳＴＤＰセットまたはＳＴＤＰリセット動作が適用される。
【００１７】
本発明の実施形態によれば、シナプス３１は、複数の情報ビットを実装する。一例において、ＲＧＢスキームによると、シナプス３１は、ビットＲ、ビットＧおよびビットＢを含む３つのビットを維持する。ビットＲは読み取り用、ビットＧはＳＴＤＰセット用、およびビットＢはＳＴＤＰリセット用である。当初、ビットＧおよびＢは、それらの自然状態として０にセットされている。シナプス前ニューロンが発火し、次いで、シナプス後ニューロンが発火する場合、ＳＴＤＰセットのためにビットＧがセットされる（例えば、１にセットされる）。シナプス後ニューロンが発火し、次いで、シナプス前ニューロンが発火する場合、ＳＴＤＰセットのためにビットＢがセットされる（例えば、１にセットされる）。
【００１８】
一実施形態において、シナプス後ニューロンが発火し、次いで、シナプス後ニューロンが発火すると、ＳＴＤＰリセットがビットＢおよびＧに適用される。例えば、ビットＢおよびＧは、時定数の減衰（例えば１秒）に基づいて、０にリセットされる。別の実施形態において、ビットＢおよびＧのリセットは、ニューロンの発火とは無関係に、ＢおよびＧをリセットするランダム過程を含む。
【００１９】
一実施形態において、以下のように、報酬が生じると、ビットＲがセットおよびリセットされる。  報酬が生じると、
Ｇ＝１およびＢ＝０ならば、Ｒをセットし、
Ｂ＝１およびＧ＝０ならば、Ｒをリセットし、
Ｇ＝１およびＢ＝１、またはＧ＝０およびＢ＝０ならば、Ｒにはなにもしない。
【００２０】
図６を参照すると、一実施態様において、シナプス３１は、ｎｘｎアレイの接合部を含む。図７は、３ｘ３アレイの９つの接合部（ｎ＝３）を含む例示的なシナプス３１を示し、３つの対角線状の接合部が使用されている。
【００２１】
ビットＲを読み取るためのロジックは、図８に例示されるようにシナプス３１の周辺にあり、この図は、シナプス３１の読み取りビットＲをさらに示し、シナプス前ニューロンが発火すると、シナプス後ニューロンに読み取りパルスを送る。次に、パルスがシナプス３１のＲ接合部を介してシナプス前ニューロンから到着すると、シナプス後ニューロンは、非同期でこのパルスを読み取る。ビットＲのセット／リセット用ロジックは、シナプス３１内に収容されている。一実施態様において、ビットＲは、ＤＲＡＭデバイスを用いて実施されてもよい。
【００２２】
ビットＧをセットするためのロジックは、図９に例示されるようにシナプス３１の周辺にあり、この図は、シナプス３１のセットビットＧをさらに示し、シナプス後ニューロンが発火すると、シナプス前ニューロンに警告パルスを送る。シナプス前ニューロンは、いつ最後に発火したかによって、確率的にシナプス前セットパルスをセットする。シナプス後ニューロンは、常にシナプス後セットパルスを送る。シナプス前セットパルスおよびシナプス後セットパルスの両方がともにビットＧに対する接合部に到達すると、ビットＧがセットされる。
【００２３】
さらに、Ｇをリセットするためのロジックは、シナプス３１の周辺に配置されている。一実施形態において、ビットＧは、ゼロの推奨設定値を有し、ある時定数（例えば１秒）後にリセットする。別の実施形態において、Ｇのリセットは、ランダム確率過程を含み、ニューロンの発火とは無関係に完全に非同期でビットＧをリセットする。一例において、この過程は、約１秒の平均的なリセット時間を有し、著しいテール分布を有する。一例において、Ｇのリセットはシナプス前ニューロンによって開始される。一実施態様において、ビットＧは、ＤＲＡＭデバイスを用いて実施されてもよい。
【００２４】
ビットＢをセットするためのロジックは、シナプス３１の周辺にある。図１０を参照すると、一実施形態において、シナプス後ニューロンが発火し、次いで、シナプス前ニューロンが発火すると、ビットＢがセットされる。シナプス前ニューロンが発火し、次いで、シナプス後ニューロンが発火すると、ビットＧがセットされる。シナプス前ニューロンは、発火すると、シナプス後ニューロンに警告する。シナプス後ニューロンは、いつ最後に発火したかによって、確率的にシナプス後セットパルスをセットする。シナプス前ニューロンは、常にシナプス前セットパルスを送る。シナプス前セットパルスおよびシナプス後セットパルスの両方がともにビットＢに到着すると、ビットＢがセットされる。さらに、Ｂをリセットするためのロジックは、ブロック３１に存在する。ビットＢは、ゼロの推奨設定を有し、ビットＢは、ある時定数（例えば約１秒）後に単にリセットする。別の実施形態において、ランダム確率過程は、完全に非同期で、かつニューロンの発火とは無関係に、ビットＢをリセットする。一例において、この過程は、約１秒の平均的なリセット時間を有し、著しいテール分布を有する。一例において、このリセットは、シナプス後ニューロンによって開始される。一実施態様において、ビットＢは、ＤＲＡＭデバイスを使用して実施されてもよい。
【００２５】
図１１を参照すると、本発明が提供する一実施形態において、本発明の一実施形態による電子強化学習シナプスを実施するためのシステム７０が示されている。システム７０は、並列に非同期で動作可能なＲＧＢシナプス・ブロック３１のＮｘＮクロスバー・アレイを含む（Ｎ行およびＮ列）。システム７０は、シナプス３１のクロスバー・アレイを介して相互接続される、Ｎ個のシナプス前ニューロン（例えばプレ１、プレ２・・・、プレＮ）およびＮ個のシナプス後ニューロン（例えばポスト１、ポスト２・・・、ポストＮ）をさらに含む。一実施態様において、シナプス後ニューロン３１はそれぞれ、電子ミックストモード（アナログ‐ディジタル）非同期ニューロンを含む。
【００２６】
状態は、非同期の実施を行うためにＳＴＤＰ、およびＲＬに基づいたＳＴＤＰに従ってプログラムされる。シナプス前ニューロンが発火すると、読み取り信号がシナプス前ニューロンからシナプス後ニューロンに送られ、シナプス後ニューロンは、パルスが到着すると、非同期でパルスを読み取り、プリセット・パルスを確率的にセットし、ポストセット・パルスを常にセットする。
【００２７】
本発明の一実施形態において、各電子シナプス３１は、シナプス前電子ニューロンとシナプス後電子ニューロンとを相互接続させるように構成される。電子シナプス３１は、電子シナプスの状態を保存するように、および電子シナプスの状態を更新するためのメタ情報を保存するように構成されたメモリ素子（例えば、図１２におけるメモリ・デバイス３１Ｒ、３１Ｇ、３１Ｂ）を含む。各電子シナプス・セル３１は、強化学習のために更新信号に応答して、メタ情報に基づいて電子シナプスの状態を更新するように構成された更新モジュール（例えば、図１２におけるモジュール３１Ｌ）をさらに含む。更新モジュールは、学習則に基づく強化学習のために遅延更新信号に応答して、メタ情報に基づいて電子シナプスの状態を更新するように構成される。
【００２８】
図１２は、段階を必要とせずに（および読み取り、セット、およびリセットのための時分割多重アクセスを必要とせずに）、他のシナプス・セル３１と並行して動作させることができるシナプス・セル（ブロック）として、Ｒ、Ｇ、Ｂシナプス・アレイ３１の例示的な実施態様を示す。各シナプス・セル３１は、他のシナプス・セル３１と完全に非同期で動作することができ、したがって、クロックの必要性をなくすことができる。
【００２９】
本発明の一実施形態において、各ＲＧＢシナプス・セル３１は、ローカルのシナプス・セル・レベルにおいてディジタル相補型金属酸化膜半導体（CMOS）更新ロジック３１Ｌを含み、この更新ロジック３１ＬはＲセルに書き込むために使用され得る。一実施態様において、セル３１は、ビットＲ、Ｂ、およびＧに対するメモリ素子３１Ｒ、３１Ｂ、３１Ｇをそれぞれ含む。メモリ素子は、スタティック・ランダム・アクセス・メモリ（SRAM）、ダイナミック・ランダム・アクセス・メモリＤＲＡＭ、相変化メモリ（PCM）、磁気トンネル接合（MTJ）などを含むことができる。本実施形態において、シナプス・セル３１は、空間分割多元接続電子シナプスを備え、電子シナプスは、読み取り用の２端子、セット用の２端子、およびリセット用の２端子を有する６端子デバイスとして表される。
【００３０】
本発明の別の実施形態において、更新モジュール３１Ｌは、プロセッサ（例えば図１５における情報処理システム１００）上で実行するコンピュータ可読プログラム・コードを含むソフトウェア・モジュールを備え、このソフトウェア・モジュールは、本発明の実施形態により本明細書で説明されるような電子シナプスの状態を更新するように構成されたコンピュータ可読プログラム・コードを含む。
【００３１】
Ｒメモリ・セルは、シナプスの状態を維持する。ＧおよびＢのメモリ・セルは、その後のシナプスの更新のために使用されるメタ情報を維持する。ニューロンは、メモリ・セルに対する読み／書き情報を決定する。図１２において、シナプス３１は、シナプス前ニューロンからシナプス後ニューロンへの接続を提供し、これらニューロンは、共同してＲ、ＧおよびＢのメモリ・セルに読み／書きするための適切なワード線およびビット線をアクティブにする。ニューロンは、ライト・ポート（Write port）を使用して、外部からＧおよびＢのメモリ・セルにのみ書き込む。ＧおよびＢのメモリ・セルは、リード・ポート（Readport）を使用して、更新ロジック３１Ｌによって内部で読み取られ、それに応じてＲメモリ・セルを更新する。Ｒメモリ・セルは、リード・ポートを使用して外部から読み取られ、ライト・ポートを使用して、更新ロジック３１Ｌによって内部で書き込まれる（すなわち、更新される）。
【００３２】
シナプスの状態は、シナプスの伝導率のレベルを示す複数の値を保存する１つまたは複数のビットを有することができる。一実施形態において、Ｒメモリ・セルは、シナプスの状態を保存し、このシナプスの状態は、１ビットのシナプスである（接続を示す導通状態に対しては０、非接続を示す非導通状態に対しては１）。ニューロンは、Ｒメモリ・セルを読み取ることによってシナプスを介する接続を決定することができる。学習動作のためにＲセルを更新するため、シナプスに結合されているシナプス前ニューロンおよびシナプス後ニューロンは、強化学習のためのＢとＧのメモリ・セルに書き込む処理を実施する。これらニューロンは、ライト・ポートを使用して、ＢまたはＧあるいはその両方のメモリ・セルに更新値を保存する。その後、ＢまたはＧのメモリ・セルからの更新値が、入力する報酬信号に応答して、シナプスの状態としてＲメモリ・セルを更新するために使用される。上記したように、Ｒメモリ・セルは、強化信号として後から入力する報酬信号に応じてＢメモリ・セルの値またはＧメモリ・セルの値を用いて更新される（遅延更新）。一例において、ＳＴＤＰの値は、ＧまたはＢのメモリ・セルに保存され、しばらくして、シナプスの状態が、ＧまたはＢのセルからの値を用いてＲのメモリ・セルを更新することによって更新される。
【００３３】
一実施態様において、並行するワード線（水平の）およびビット線（垂直の）がメモリ・セルにアクセスするために用いられる。各メモリ・セルは、読み取りワード線、読み取りビット線、書き込みワード線および書き込みビット線を有する。一例において、更新ロジック３１Ｌは、シナプスのＲメモリ・セルの状態を更新するために、ＢとＧのメモリ・セルのメタ情報の排他的論理和（XOR）の組合せロジックを実装する。シナプス・セル３１は、ＳＲＡＭおよびＤＲＡＭの実装とともに強化学習を提供する。図１３を参照すると、ＳＲＡＭをベースとするＲＧＢセルの実装において、各ＳＲＡＭセル３１は置換可能である（行単位または列単位のいずれかで周辺回路によってアクセスすることができる）。図１４を参照すると、ＳＲＡＭおよびＤＲＡＭをベースとする実装において、ＤＲＡＭメモリ素子内のデータは、基本状態にまで時間とともに減衰する。クロック信号は、クロスバー・アレイ内のメモリ・セルの動作をクロック制御するために使用される。メモリ・セルは、同期してまたは非同期でアクセスすることができる。
【００３４】
シナプス前ニューロンが発火し、次いで、シナプス後ニューロンが発火すると、シナプスがセットされる。シナプス後ニューロンが発火し、シナプス前ニューロンが発火すると、シナプスはリセットされ、報酬（値）信号が時間窓内に生じる場合、ＳＴＤＰセットまたはリセットが適用される。
【００３５】
学習するシナプスの電子的な強化は、並列にＲ行を読み取るステップと、並列にＧ列を読み取り、セットするステップと、並列にＧ行をリセットするステップと、並列にＢ行を読み取り、セットするステップと、並列にＢ列をセットするステップと、Ｒ行およびＲ列上のセットされたビットの数を見積もるステップと、報酬信号が到達したときにグローバル値信号を実装／提供し、クロスバー・アレイ内で、Ｎ２個のＲビットすべてを並列にセットおよびリセットするステップとをさらに含む。
【００３６】
図１５は、本発明の一実施形態を実施するのに有用な情報処理システム１００を示す高レベルのブロック図である。コンピュータ・システムは、１つまたは複数のプロセッサ、例えばプロセッサ１０２を含む。プロセッサ１０２は、通信インフラ１０４（例えば、通信バス、クロスオーバー・バー、またはネットワーク）に接続される。
【００３７】
コンピュータ・システムは、ディスプレイ・ユニット１０８上に表示するために通信インフラ１０４からの（または図示しないフレーム・バッファからの）図形、テキストおよび他のデータを転送するディスプレイ・インターフェース１０６を含んでよい。コンピュータ・システムは、主記憶装置１１０（好ましくはランダム・アクセス・メモリ（ＲＡＭ））を含んでもよく、補助記憶装置１１２を含んでもよい。補助記憶装置１１２は、例えば、ハードディスク駆動装置１１４、または、例えば、フロッピー（Ｒ）ディスク駆動装置、磁気テープ駆動装置もしくは光ディスク駆動装置を代表とする取り外し可能な記憶駆動装置１１６、あるいはその両方を含んでもよい。取り外し可能な記憶駆動装置１１６は、当業者にはよく知られている方法で、取り外し可能な記憶ユニット１１８からの読み取り、または取り外し可能な記憶ユニット１１８への書き込み、あるいはその両方を行う。取り外し可能な記憶ユニット１１８は、例えば、フロッピー（Ｒ）ディスク、コンパクト・ディスク、磁気テープまたは光ディスクなどを表し、取り外し可能な記憶駆動装置１１６によって読み出され、書き込まれる。理解されるように、取り外し可能な記憶ユニット１１８は、コンピュータ・ソフトウェアまたはデータあるいはその両方が保存されたコンピュータ可読媒体を含む。
【００３８】
代替の実施形態において、補助記憶装置１１２は、コンピュータ・プログラムまたは他の命令をコンピュータ・システムにロードさせることができる他の同様の手段を含んでよい。そうした手段には、例えば、取り外し可能な記憶ユニット１２０およびインターフェース１２２が含まれ得る。そうした手段の例には、（ビデオゲーム装置に見られるような）プログラム・パッケージおよびパッケージ・インターフェース、（EPROMまたはPROMなどの）取り外し可能なメモリ・チップおよび関連するソケット、ならびに他の取り外し可能な記憶ユニット１２０およびソフトウェアとデータとを取り外し可能な記憶ユニット１２０からコンピュータ・システムに転送させることができるインターフェース１２２が含まれ得る。
【００３９】
コンピュータ・システムはまた、通信インターフェース１２４を含んでもよい。通信インターフェース１２４により、ソフトウェアおよびデータをコンピュータ・システムと外部装置との間で転送させることが可能になる。通信インターフェース１２４の例には、モデム、（イーサネット（Ｒ）・カードなどの）ネットワーク・インターフェース、通信ポート、またはＰＣＭＣＩＡスロットおよびカードなどが含まれ得る。通信インターフェース１２４を介して転送されるソフトウェアおよびデータは、例えば、通信インターフェース１２４によって受け取ることができる電子的、電磁的、光学的、またはその他の信号となり得る信号の形態である。これらの信号は、通信経路（すなわちチャネル）１２６を介して通信インターフェース１２４へ提供される。この通信経路１２６は、信号を運び、ワイヤーもしくはケーブル、光ファイバ、電話線、携帯電話リンク、ＲＦリンク、または他の通信チャネル、あるいはそれらすべてを使用して実施され得る。
【００４０】
本明細書において、「コンピュータ・プログラム媒体」、「コンピュータ使用可能媒体」および「コンピュータ可読媒体」という用語は、全体として、主記憶装置１１０および補助記憶装置１１２、取り外し可能記憶駆動装置１１６、およびハードディスク駆動装置１１４に設置されたハードディスクなどの媒体を指すために使用されている。
【００４１】
コンピュータ・プログラム（コンピュータ制御ロジックとも呼ばれる）は、主記憶装置１１０または補助記憶装置１１２あるいはその両方に保存される。コンピュータ・プログラムは、通信インターフェース１２４を介して受け取ることもできる。そうしたコンピュータ・プログラムは、実行されたとき、コンピュータ・システムに、本明細書で論じた本発明の機能を遂行させることができる。具体的には、コンピュータ・プログラムは、実行されたとき、プロセッサ１０２にコンピュータ・システムの機能を遂行させることができる。したがって、そうしたコンピュータ・プログラムは、コンピュータ・システムのコントローラを表す。
【００４２】
上記の説明から、本発明が、本発明の実施形態を実施するためのシステム、コンピュータ・プログラム製品および方法を提供することが理解され得る。特許請求の範囲における単数の要素の参照は、明示的にそうであると述べられていない場合、「１つおよび唯一」を意味することは意図されておらず、むしろ「１つまたは複数」を意味することが意図されている。当業者に現在知られているか、または今後知られることになる、上記の例示的な実施形態の要素に対する構造的、機能的な均等物はすべて、本特許請求の範囲によって包含されることが意図されている。
【００４３】
本明細書で使用された専門用語は、特定の実施形態のみを説明するためのものであり、本発明を限定するようには意図されていない。本明細書で使用されているように、単数形の「不定冠詞」（「a」、「an」）および「定冠詞」（「the」）は、文脈上明白にその他の解釈が示されなければ、複数形を同様に含むように意図されている。「備える」または「備えている」あるいはその両方の用語は、本明細書で使用される場合、述べられた特徴、整数、ステップ、動作、要素、または構成要素、あるいはそれらすべての存在を規定するが、１つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、またはそれらのグループあるいはそれらすべての存在もしくは追加を排除しないことをさらに理解されるであろう
【００４４】
下記の特許請求の範囲における対応する構造、材料、行動、およびすべての手段またはステップの均等物、さらに機能素子は、具体的に特許請求される他の特許請求される要素との組合せにおいて機能を遂行するための任意の構造、材料、または行動を含むことが意図されている。本発明の説明は、例示および説明の目的のために提示されたが、網羅的であること、または開示された形態の発明に限定されることは意図されていない。多くの変更形態および変形形態は、本発明の範囲から逸脱せずに、当業者には明かであろう。実施形態は、本発明の原理および実際的な用途について最善の説明をするように、かつ当業者が考慮される特定の使用に適する様々な変更形態を有する様々な実施形態に対して本発明を理解することができるように、選ばれ、説明された。
【図１】
0005907994.tif 000002
【図２】
0005907994.tif 000003
【図３】
0005907994.tif 000004
【図４】
0005907994.tif 000005
【図５】
0005907994.tif 000006
【図６】
0005907994.tif 000007
【図７】
0005907994.tif 000008
【図８】
0005907994.tif 000009
【図９】
0005907994.tif 000010
【図１０】
0005907994.tif 000011
【図１１】
0005907994.tif 000012
【図１２】
0005907994.tif 000013
【図１３】
0005907994.tif 000014
【図１４】
0005907994.tif 000015
【図１５】
0005907994.tif 000016