【手続補正書】
【提出日】平成29年4月21日(2017.4.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユニバーサル機械学習ビルディングブロック装置であって：
少なくとも一つのメタステーブルスイッチと；
出力電極の差動対の中の各電極が、前記少なくとも一つのメタステーブルスイッチを介して、それに結合された複数の入力線を含む出力電極の差動対と
を含む装置。
【請求項２】
前記少なくとも一つのメタステーブルスイッチが、二状態素子を含む、請求項１記載の装置。
【請求項３】
前記二状態素子が、二つの状態間で適用されたバイアスおよび温度の関数として確率的にスイッチする、請求項２記載の装置。
【請求項４】
少なくとも一つのＡＨａＨノードを含む装置。
【請求項５】
前記少なくとも一つのＡＨａＨノードが、正のクラスと負のクラスとの間のマージンを最大化するＡＨａＨ則に従って機能する、請求項４記載の装置。
【請求項６】
前記少なくとも一つのＡＨａＨノードが、ＡＨａＨ可塑性則を実行する複数の線形ニューロンを含む、請求項４記載の装置。
【請求項７】
前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨ分類器を、さらに含む、請求項４記載の装置。
【請求項８】
前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラを、さらに含む、請求項４記載の装置。
【請求項９】
ユニバーサル機械学習ビルディングブロック方法であって：
少なくとも一つのメタステーブルスイッチを形成する工程と；
メモリスタに基づくユニバーサル機械学習ビルディングブロックを生成するように出力電極の差動対の中の各電極が、前記少なくとも一つのメタステーブルスイッチを介してそれに結合された複数の入力線を含む、前記出力電極の差動対を提供する工程と
を含む方法。
【請求項１０】
二状態素子を含む前記少なくとも一つのメタステーブルスイッチを形成する工程を、さらに含む、請求項９記載の方法。
【請求項１１】
機械学習方法であって：
ＡＨａＨ可塑性則を実行する複数の線形ニューロンを導く工程と；
少なくとも一つのＡＨａＨノードが、正のクラスと負のクラスと間のマージンを最大化するＡＨａＨ則に従って機能する、前記複数の線形ニューロンを含む前記少なくとも一つのＡＨａＨノードを作り出す工程と
を含む方法。
【請求項１２】
前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨ分類器を提供する工程を、さらに含む、請求項１１記載の方法。
【請求項１３】
前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラを形成する工程を、さらに含む、請求項１１記載の方法。
【請求項１４】
機械学習システムであって：
ＡＨａＨ可塑性則を実行する複数の線形ニューロンを導く工程と；
少なくとも一つのＡＨａＨノードが、正のクラスと負のクラスとの間のマージンを最大化するＡＨａＨ則に従って機能する、前記複数の線形ニューロンを含む前記少なくとも一つのＡＨａＨノードを作り出す工程
用に、実行可能に、かつ、形成される各命令を含むコンピュータプログラムコードを具現する、コンピュータ使用に適した媒体を含む、システム。
【請求項１５】
前記各命令が、前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨ分類器を提供するように、さらに形成される、請求項１４記載のシステム。
【請求項１６】
前記各命令が、前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラを作り出すように、さらに形成される、請求項１４記載のシステム。
【請求項１７】
機械学習用のプロセスを引き起こす各命令を表すコードを記憶するプロセッサ読み取り可能媒体であって、前記コードが：
ＡＨａＨ可塑性則を実行する複数の線形ニューロンを導くコードと；
少なくとも一つのＡＨａＨノードが、正のクラスと負のクラスとの間のマージンを最大化するＡＨａＨ則に従って機能する、前記複数の線形ニューロンを含む前記少なくとも一つのＡＨａＨノードを作り出すコードと
を含む。
【請求項１８】
前記コードが、前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨ分類器を作り出すコードを、さらに含む、請求項１７記載のプロセッサ読み取り可能媒体。
【請求項１９】
前記コードが、前記少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラを作り出すコードを、さらに含む、請求項１７記載のプロセッサ読み取り可能媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【発明の名称】ユニバーサル機械学習ビルディングブロック
【技術分野】
【０００１】
技術分野
実施態様は、一般的に機械学習の応用に関する。実施態様は、メモリスタデバイスおよび応用にも関する。実施態様は、ＡＨａＨ（反ヘブとヘブ）学習デバイス、システムおよびアプリケーションにさらに関する。
【背景技術】
【０００２】
背景
メモリと処理の分離に基づく現代のコンピューティングアーキテクチャは、フォン・ノイマン・ボトルネックと呼ばれる周知の問題、例として、ＣＰＵとＲＡＭとの間のデータ帯域幅への拘束的限界につながる。多数の技術的および経済的圧力が現在、新たなタイプの電子機器の開発において存在する。量子コンピューティング、ＭＥＭＳ、ナノテクノロジーならびに分子およびメモリスティブ電子機器における最近の進歩は、従来型のノイマン型デジタルコンピュータの制限を拡張するための新たな、かつ、興味深い道を提供する。デバイス密度が増すにつれ、Ｒ＆Ｄおよび製造のコストは、そのように小さいスケールで製造を正確に制御する難しさに起因して急騰した。ムーアの第二法則として既知の、時間の経過とともに指数関数的に増す半導体製造の資本コストによって説明される経済的圧力を緩和させるために、新たなコンピューティングアーキテクチャが要望されている。私たちは地球上で最も滅菌され、制御された環境を構築することに膨大な量のエネルギーを費やして、現代の電子機器を製造している。しかし、生命にはいかなる現代のチップをはるかに超えた複雑性を持つ組み立ておよび修復構造という能力があり、しかもクリーンルームではなく、リアルワールドに組み込まれてそのように行う能力がある。
【０００３】
IBMの１０億個のニューロンおよび１０兆個のシナプスからなるネコスケール大脳皮質シミュレーションは、例として、１４７，４５６個のＣＰＵ、１４４TBのメモリを要し、リアルタイムの８３分の１で動いた。ＣＰＵ当たり２０Ｗの電力消費で、これは２．９MWになる。完全なスケーリングを仮定する場合、リアルタイムのシミュレーションは、８３倍の電力または２４４MWを消費するであろう。ネコの大脳皮質のサイズの約３０倍であるヒューマンスケール大脳皮質シミュレーションは、７GW超えに達するであろう。大脳皮質は脳内の全ニューロンのごく一部を表し、ニューロンは全細胞のごく一部を表し、IBMニューロンモデルは、極めて簡略化された。IBMシミュレーションにおける絶え間ない変形下の適応変数の数が生物学的同等物よりも桁違いにより少ないにもかかわらず、その電力損失は桁違いに大きい。電力の相違がそれほど大きいため、それは、単に私たちの現在の技術の限界のみならず、コンピューティングについての私たちの考え方における欠陥にも関心を向けさせる。
【０００４】
脳は発展し、複雑な、変化する世界を通じて身体を動かす。換言すると、脳は、適応デバイスと移動できるデバイスの両方である。私たちが生物に近い電力および空間の収支で実際的な人工脳を作りたいと思う場合、私たちは、メモリと処理とを新たなタイプの物理的な適応ハードウェアと有効なソフトウェアアプリケーションとに統合させなければならない。
【発明の概要】
【０００５】
簡単な概要
本発明の下記の概要は、開示された実施態様に一意の革新的なフィーチャの一部の理解を容易にするために提供されるものであり、詳しい説明を意図するものではない。本発明の様々な態様は、明細書全部、特許請求の範囲、図および要約を全体としてとらえることによってきちんと認識されることができる。
【０００６】
それは、したがって、ユニバーサル機械学習ビルディングブロックのために提供する開示された実施態様の一つの態様である。
【０００７】
それは、複数メモリスタの差動対およびＡＨａＨ（反ヘブとヘブ）可塑性から適応シナプス荷重を形成する開示された実施態様のもう一つの態様である。
【０００８】
それは、機械学習用途の集積回路デバイスに追加することができる物理的なシナプス成分のために提供する開示された実施態様のさらなる態様である。
【０００９】
それは、そのアトラクタ状態が計算上一通り揃ったセットを形成する論理関数であるニューラルノード回路を形成する差動配列のシナプス荷重のために提供する開示された実施態様の態様でもある。
【００１０】
それは、各電極がメタステーブルスイッチの集合体を介してそれに結合された複数の入力線を含む、出力電極の差動対を包含することができるユニバーサル機械学習ビルディングブロックのために提供する開示された実施態様のさらにもう一つの態様である。
【００１１】
それは、ハードウェアおよび／またはソフトウェアに関連して実行されることができる機械学習方法のために提供する開示された実施態様のもう一つの態様である。
【００１２】
それは、ハードウェアおよび／またはソフトウェアに関連して実行されることができるＡＨａＨノードのために提供する開示された実施態様のさらなる態様である。
【００１３】
それは、ハードウェアおよび／またはソフトウェアに関連して実行されることができるＡＨａＨ分類器(クラシファイア：classifier)のために提供する開示された実施態様の態様でもある。
【００１４】
それは、ハードウェアおよび／またはソフトウェアに関連して実行されることができるＡＨａＨクラスタのために提供する開示された実施態様の追加的な態様である。
【００１５】
前述の態様ならびに他の目的および効果は、今や、本明細書に記載したように達成されることができる。
【００１６】
メモリと処理の分離に基づく現代のコンピューティングアーキテクチャは、フォン・ノイマン・ボトルネックと呼ばれる周知の問題、ＣＰＵとＲＡＭとの間のデータ帯域幅への拘束的限界につながる。開示された実施態様は、メモリと処理とが組み合わせられる、本発明者らが「ＡＨａＨコンピューティング」と呼ぶ、コンピューティングに対する新たな手法に関する。この手法の態様は、生物系から発想を得た揮発性散逸電子機器のアトラクタダイナミクスに基づいており、適応し、自己修復し、環境との相互作用から学習することが可能な魅力的な代替アーキテクチャを提示する。この手法で、ノイマン型およびＡＨａＨコンピューティングアーキテクチャの両方は同じマシン上で一緒に動作することができ、ＡＨａＨコンピューティングプロセッサは、一定の適応学習タスクのための電力消費および処理時間を桁違いに減らすことができる。
【００１７】
開示された実施態様は、揮発性、サーモダイナミクス、反ヘブとヘブ（ＡＨａＨ）可塑性の特性間の関連性を導き出す。ＡＨａＨシナプス可塑性は、適用されたデータストリームの独立成分を抽出し、論理関数の計算上一通り揃ったセットを形成することができるアトラクタ状態につながる。一般的なメモリスティブデバイスモデルは、メタステーブルスイッチの集合体に基づいて本明細書に開示されている。そのような実施態様は、適応シナプス荷重がいかにして差動対の漸増メモリスタから形成されることができるかを明示する。配列のシナプス荷重は、ＡＨａＨ可塑性を操作するニューラルノード回路を作るために使用されることもできる。ＡＨａＨノードのアトラクタ状態を異なるやり方で形成することによって、高いレベルの機械学習機能は、実行されることができる。これは、例として、教師なしクラスタリング、教師ありおよび教師なし分類(クラシフィケーション：classification)、複雑な信号予測、教師なしロボット作動ならびに手順の組合せ最適化、生物学的神経系の、そしてリアルワールド応用性を持つ現代の機械学習アルゴリズムの全ての主要能力を包含する。
【００１８】
生物は、絶えず変化する環境でうまく乗り切り、適応する能力を有して、生命の維持・繁栄に使用されるエネルギーを求め、消費する、揮発性ニューラル成分から作られた知的生き物を発展させてきた。生命体が行っていることを限定的なエネルギー収支を所与として行うことができるという事実は、さらに驚くべきことである。コンピューティング、機械学習および人工知能における進歩は、自然が設定したハードルに近づくことにさえ失敗してきた。したがって、本発明者らは、生物の揮発性低電力ソリューションに基づく、コンピューティングに対する全く新たな手法を発明する必要があると信ずる。開示された実施態様は、例として、現在のノイマン型システムを阻む障壁を回避する。メモリスティブ回路の最近の登場は、今や、この新たなタイプのコンピューティングへの道を築くシリコン集積デバイスを確立するためにシナプス様電子成分を追加することも可能にした。
【００１９】
別個の図面を通じて同じ符号が同一のまたは機能的に同様の要素を指し、明細書に取り込まれて明細書の一部を形成する添付の図は、本発明をさらに図示し、発明を実施するための形態と一緒に、本発明の原理を説明する働きをする。
【図面の簡単な説明】
【００２０】
【図１】開示された実施態様の態様に従って、ＭＳＳ（メタステーブルスイッチ）を描くグラフを図示する。
【図２Ａ】それぞれ、開示された実施態様の態様に従って、ＭＳＳモデルを使用してモデル対ハードウェアの相関を描くグラフ１２０および１２２を図示する。
【図２Ｂ】それぞれ、開示された実施態様の態様に従って、ＭＳＳモデルを使用してモデル対ハードウェアの相関を描くグラフ１２０および１２２を図示する。
【図３】開示された実施態様の態様に従って、シナプスを形成する複数メモリスタの差動対を描く回路図を図示する。
【図４】好ましい実施態様に従って、ＡＨａＨノードを描く回路図を図示する。
【図５】開示された実施態様の態様に従って、ＡＨａＨノードから作り出されたＡＨａＨ則を表示するデータを描くグラフを図示する。
【図６Ａ】開示された実施態様の態様に従って、二入力ＡＨａＨノードの吸引するアトラクタ状態を描く入力空間図およびグラフを図示する。
【図６Ｂ】開示された実施態様の態様に従って、二入力ＡＨａＨノードの吸引するアトラクタ状態を描く入力空間図およびグラフを図示する。
【図７】開示された実施態様の態様に従って、回路レベルおよび機能シミュレーション例を包含するＡＨａＨクラスタラを表示するデータを描くグラフを図示する。
【図８Ａ】開示された実施態様の態様に従って、二次元空間のクラスタリングデモンストレーションを表示するグラフを図示する。
【図８Ｂ】開示された実施態様の態様に従って、二次元空間のクラスタリングデモンストレーションを表示するグラフを図示する。
【図８Ｃ】開示された実施態様の態様に従って、二次元空間のクラスタリングデモンストレーションを表示するグラフを図示する。
【図９】開示された実施態様の態様に従って、テスト分類ベンチマーク結果例を描くグラフを図示する。
【図１０】開示された実施態様の態様に従って、ＡＨａＨ分類器の半教師あり操作を表示するデータを描くグラフを図示する。
【図１１】開示された実施態様の態様に従って、ＡＨａＨ分類器を用いる複雑な信号予測を描くグラフを図示する。
【図１２Ａ】開示された実施態様に従って、教師なしロボットアームチャレンジの図（左）およびそのデータを描くグラフを図示する。
【図１２Ｂ】開示された実施態様に従って、教師なしロボットアームチャレンジの図（左）およびそのデータを描くグラフを図示する。
【図１３Ａ】開示された実施態様の態様に従って、６４都市巡回セールスマンチャレンジを表示するデータを描くグラフを図示する。
【図１３Ｂ】開示された実施態様の態様に従って、６４都市巡回セールスマンチャレンジを表示するデータを描くグラフを図示する。
【図１３Ｃ】開示された実施態様の態様に従って、６４都市巡回セールスマンチャレンジを表示するデータを描くグラフを図示する。
【図１４】一つ以上の実施態様に従って実行されることができるコンピュータシステムの概要図を図示する。
【図１５】開示された実施態様の態様に従って、メモリスタベースのユニバーサル機械学習ブロックを実行するために採用されることができるソフトウェアシステムの概要図を図示する。
【図１６】電子集積回路（ＩＣ）と集積されるまたは関連することができるシナプス成分モジュールの代替例を図示する。
【図１７】電子集積回路（ＩＣ）と集積されるまたは関連することができるシナプス成分モジュールの代替例を図示する。
【発明を実施するための形態】
【００２１】
詳細な説明
これらの限定されない例で論じた具体的な値および構成は、変更されることができ、本発明の実施態様を図示するためのみに引用されており、本発明の範囲を限定することを意図するものではない。
【００２２】
本明細書に記載した開示された実施態様は、一般的に三つの目的をカバーする。第一に、そのような実施態様は、コンピュータエンジニアリングにおける不揮発性の共通の隠れた仮定と、いかにこの思考が生物学および物理学と根本的に食い違っており、現代のコンピューティング技術と生物学的神経系との間の極端な電力の相違に責任があり得るかとを明らかにする。第二に、メタステーブル（例えば、揮発性）スイッチの集合体から構成され、高次機械学習能力を構築するための基本ビルディングブロックとして使用されることができる、単純な適応回路および機能モデルが本明細書において論じられている。第三に、本発明者らは、いかに多数のコア機械学習機能、例えば、クラスタリング、分類およびロボット作動が本発明者らの適応ビルディングブロックから導かれることができるかを明示する。全てを考え合わせるとき、本発明者らは、今日の技術と未来の適応物理的自己組織化ニューロモーフィックプロセッサとの間に比較的明瞭な道筋が存在することを示したいと望む。
【００２３】
実施態様は、今から、本発明の例証的実施態様が示されている添付の図を参照しながら、さらにきちんと後述の通り記載される。本明細書に開示された実施態様は、多くの異なる形で具体化されることができ、本明細書に記述された実施態様に限定的であると受け取られるべきではなく、むしろ、これらの実施態様は、本開示が徹底的であり、かつ一通り揃っており、本発明の範囲を当業者にきちんと知らせるために提供される。本明細書を通じて、同じ数が同じ要素を指す。本明細書で使用される用語「および／または」は、一つ以上の関連する列挙された項目のありとあらゆる組み合わせを包含する。
【００２４】
本明細書で使用される専門用語は、具体的な実施態様を記載することのみを目的としており、本発明を限定することを意図するものではない。本明細書で使用される単数形「ａ」、「ａｎ」および「ｔｈｅ」は、特に文脈が明瞭に表示しない限り、複数形も包含することを意図する。本明細書で使用されるとき、用語「を含む」および／または「を含んでいる」は述べられたフィーチャ、整数、工程、操作、要素および／または成分の存在を特定するが、一つ以上の他のフィーチャ、整数、工程、操作、要素、成分および／またはそれらの群の存在または追加を除外しないことがさらに理解される。
【００２５】
本明細書で使われる用語「モジュール」が物理的なモジュールまたは成分、例えば、電気部品／ハードウェアを指すことができ、および／または、用語「モジュール」がコンピュータソフトウェア（例えば、ソフトウェアモジュール、プログラムモジュールなど）、コンピュータプログラム、サブルーチン、ルーチンなどを指すことができることに留意されたい。一般的に、プログラムモジュールは、具体的なタスクを果たすまたは具体的な抽象データ型および命令を実行する、ルーチン、サブルーチン、ソフトウェアアプリケーション、プログラム、オブジェクト、成分、データ構造などを非限定的に包含する。また、当業者は、開示された方法およびシステムが他のコンピュータシステム構成、例えば、例として、手のひらサイズのデバイス、マルチプロセッサシステム、データネットワーク、マイクロプロセッサベースのまたはプログラマブル消費者向け電子機器、ネットワーク化されたパーソナルコンピュータ、ミニコンピュータ、メインフレームコンピュータ、サーバーおよび同種のもので実施されることをよく理解する。
【００２６】
開示されたフレームワークがハードウェア（例えば、ＩＣチップとして）に関連しておよび／またはコンピュータソフトウェア、モジュールなどとして、命令／アルゴリズムなどを遂行するように実行できることがよく理解されることができる。このように、開示されたフレームワークは、ハードウェアＩＣチップ、ソフトウェアモジュールなどまたはそれらの組み合わせとして実行されることができる。
【００２７】
本明細書で使われる用語「ＡＨＡ」または「ＡＨａＨ」が一般的に「反ヘブとヘブ」を指すことに留意されたい。故に、「ＡＨａＨ可塑性」は「反ヘブとヘブ可塑性」を指し、「ＡＨａＨノード」はＡＨａＨ可塑性を実行するニューロンモデルを指す。ＡＨａＨ可塑性則の適用の一つの限定されない例は、引用例として本明細書に取り込む米国特許第７，３９８，２５９号に開示されている。ＡＨａＨ可塑性則のもう一つの限定されない例は、これもまた引用例として本明細書に取り込む米国特許第７，４０９，３７５号に開示されている。ＡＨａＨ可塑性則のさらなる限定されない例は、引用例として本明細書に取り込む米国特許第７，４１２，４２８号に開示されている。
【００２８】
ＡＨａＨ可塑性則の追加的な限定されない例は、引用例として本明細書に取り込む米国特許第７，４２０，３９６号に開示されている。ＡＨａＨ可塑性則のもう一つの限定されない例は、引用例として本明細書に取り込む米国特許第７，５０２，７６９号に開示されている。ＡＨａＨ可塑性則のさらなる限定されない例は、引用例として本明細書に取り込む米国特許第７，５９９，８９５号に開示されている。ＡＨａＨ可塑性則のもう一つの限定されない例は、引用例として本明細書に取り込む米国特許第７，８２７，１３０号に開示されている。
【００２９】
ＡＨａＨ可塑性則の追加的な限定されない例は、引用例として本明細書に取り込む米国特許第７，９３０，２５７号に開示されている。ＡＨａＨ可塑性則のさらなる限定されない例は、引用例として本明細書に取り込む米国特許第８，０２２，７３２号に開示されている。ＡＨａＨ可塑性則のもう一つの限定されない例は、これもまた引用例として本明細書に取り込む米国特許第８，０４１，６５３号に開示されている。
【００３０】
＜揮発性、生命および適応電力問題＞
揮発性は、それを有するオブジェクトと、例えば死でそのような機能が停止するか、無生物オブジェクトの場合と同様にそのような機能を欠いているか何かいずれかによってそれを有さないものとを区別する生命の特徴である。全ての生命は揮発性であるという事実は、生命が全てのスケールにおいて適応であるという所見につながり、あらゆる細胞のあらゆる成分は、絶え間ない修復を通じて保持されている。より詳しく見ることにより、そのような巨大なスケールでの適応が不揮発性コンピューティングフレームワークと根本的に食い違っているように思われることを明らかになる。
【００３１】
二つのスイッチを考察する。第一のスイッチは揮発性であり、その状態は絶えずリフレッシュまたは修復されなければならない。第二のスイッチは不揮発性であり、背景エネルギー変動に影響されない。最も根本的な適応または再構成の行為である、これらのスイッチの各々の状態を変化させるために欠かせないものを見てみよう。抽象的に、本発明者らは、開示された実施態様の態様に従って、ＭＳＳ（メタステーブルスイッチ）を描くグラフ１００を図示する図１に示すように、スイッチを二つ以上の最小値と相関する電位エネルギーとして表すことができる。ＭＳＳは、適用されたバイアスおよび温度の関数としてその二つの状態間を確率的にスイッチする二状態素子である。ＭＳＳがＢ状態からＡ状態へと遷移する確率はＰＡによって与えられる一方、ＭＳＳがＡ状態からＢ状態へと遷移する確率はＰＢによって与えられる。本発明者らは、離散時間過程にわたって発展するＮ個のメタステーブルスイッチの集合体として、メモリスタをモデル化する。
【００３２】
不揮発性のケースでは、障壁電位を克服するに十分なエネルギーが印加されなければならず、一度スイッチングが起こると障壁の高さに比例してエネルギーが損失する。単にスイッチというよりもむしろ、スイッチ障壁エネルギーまで引き上げなければならないのはスイッチにつながる電極である。適応変数の数が増すにつれ、全距離がスイッチング事象を伝達する必要があったため、電力はスイッチング事象スケールの維持を要した。考え得る最悪のアーキテクチャは、このように、分散不揮発性メモリに結合された集中型ＣＰＵである。
【００３３】
揮発性のケースでは、何かより興味深いことを行うことができる。エネルギーを印加するのではなくむしろ、それを奪うことができる。スイッチが損失するエネルギーがより少なくなるにつれ、その障壁は、熱変動に固有のエネルギーが自発的状態遷移を引き起こすに十分になるまで落ちる。それが外的制約を満たすことを条件として揮発性メモリ素子のエネルギーアクセスをゲートコントロールするメカニズムが存在するならば、エネルギーが戻り一度制約が満たされるとメモリ素子は自身を構成する。
【００３４】
不揮発性のケースでは、状態遷移をもたらすのに必要とされるエネルギーはスイッチ外から生じ、伝達されなければならない。揮発性のケースでは、状態遷移をもたらすエネルギーはスイッチ自身から来たものである。一つのスイッチがプログラムされた一方、他は自身をプログラムした。一つのスイッチは、遷移するためにより多くのエネルギーを要し、他は、より少ないエネルギーを要する。本発明者らがこれらの所見と全ての脳（および生命）が元から揮発性であるという事実を組み合わせるとき、揮発性がムーアの第二法則の原因になるのではなくむしろ実際にそのソリューションになることができるという興味深い見解が本発明者らには残る。恐らく、変化させなければならない唯一のことは、コンピューティングについての私たちの考え方であろう。
【００３５】
＜メタステーブルスイッチ＞
メタステーブルスイッチ（ＭＳＳ）は、電位エネルギー障壁によって分離された二つの状態、ＡおよびＢを保有する。障壁電位を基準電位Ｖ＝０としよう。ＭＳＳがＢ状態からＡ状態へと遷移する確率はＰＡによって与えられる一方、ＭＳＳがＡ状態からＢ状態へと遷移する確率はＰＢによって与えられる。遷移確率は下記の通りモデル化されることができ、
【数１】
2016524216.tif 000001
【数２】
2016524216.tif 000002
ここで、□＝ｑ／ｋＴは熱電圧であり、Ｔ＝３００Ｋで２６mV-1に等しく、□＝□ｔ／ｔｃはデバイスの特徴的な時間スケールｔｃに対する時間過程期間Δｔの比率であり、ΔＶはスイッチにわたる電圧である。本発明者らは、ＰＡを正極性方向と定義し、印加された正電圧はＡ状態を占有する機会を増やす。各状態は、ｗＡおよびｗＢによって与えられる真性電気伝導度を有する。本発明者らは、ｗＡ＞ｗＢを取り決める。ＭＳＳは、これらの伝導度が異なる限り、メモリまたは適応計算要素として電気回路にユーティリティを保有する。
【００３６】
メモリスタは、離散時間過程Δｔで発展するＮ個のメタステーブルスイッチの集合体としてモデル化されることができる。メモリスタ伝導度は、各メタステーブルスイッチの和によって提供されることができ、
【数３】
2016524216.tif 000003
ここで、ＮＡはＡ状態にあるＭＳＳの数であり、ＮＢはＢ状態にあるＭＳＳの数であり、Ｎ＝ＮＡ＋ＮＢである。各時間過程において、Ａ状態にあるＭＳＳの一部のサブ集団はＢ状態へと遷移する一方、Ｂ状態にある一部のサブ集団はＡ状態へと遷移する。ｋ個のスイッチがｎ個のスイッチの集団から出て遷移する確率は、二項分布によって与えられる。
【数４】
2016524216.tif 000004
【００３７】
ｎ個が大きくなるにつれ、二項分布は正規分布で近似されることができ、
【数５】
2016524216.tif 000005
ここで、μ＝ｎｐおよびσ２＝ｎｐ（１−ｐ）である。
【００３８】
メモリスタの伝導度の変化は、Ａ状態とＢ状態との間を遷移するＭＳＳの数がｎｐで中心となり、分散がｎｐ（１−ｐ）である正規分布から選び出され、状態遷移確率が数式１および数式２によって与えられる確率的プロセスとしてモデル化されることができる。
【００３９】
メモリスタ伝導度の更新は、二つの正規分布から選び出された二つの確立変数からの寄与によって提供されることができる。
【数６】
2016524216.tif 000006
【００４０】
メモリスタの伝導度の最後の更新は、下記によって与えられる。
【数７】
2016524216.tif 000007
【００４１】
＜メモリスタ＞
２００８年、HP Laboratoriesは、Chuaが１９７１年にその存在を主張した、最後の第四の素子的な二端子電子デバイスであるメモリスタの生産を発表した。物理的デバイスは純粋にメモリスティブではないと言うこともできるが、簡潔に示すため、本発明者らは、高い抵抗値状態と低い抵抗値状態との間をスイッチされることができ、デバイスを通じて流れる電流を印加された正弦波電圧の関数としてプロットするとき、通例、収縮ヒステリシスループを呈するデバイスを、メモリスタと呼ぶ。ニューロモーフィック回路を学習するために、本発明者らは、急激なスイッチング様挙動よりもむしろ段階的状態遷移を呈するデバイスに最も関心がある。この理由のため、本発明者らは、照らして本発明者らのＭＳＳモデルをテストするために二つのメモリスタデバイス、Boise State UniversityのＡｇ−カルコゲニドデバイスとUniversity of MichiganのＡｇ−Ｓｉデバイスとを選択した。
【００４２】
図２Ａ〜２Ｂはそれぞれ、開示された実施態様の態様に従って、ＭＳＳモデルを使用してモデル対ハードウェアの相関を描くグラフ１２０および１２２を図示する。図２のグラフ１２０、１２２に示される実線は、実デバイス電流−電圧データの上に重ねられたデバイスシミュレーションを表す。Ａ）Boise State UniversityのＡｇ−カルコゲニドデバイス、例として、１００Hzで振幅０．２５Ｖの正弦波電圧で駆動された。Ｂ）University of MichiganのＡｇ−Ｓｉデバイスは、例として、振幅１．８Ｖ、直流オフセット１．８Ｖおよび周波数０．５Hzの三角波で駆動された。
【００４３】
図２Ａ〜２Ｂはそれぞれ、本発明者らのＭＳＳモデルと二つのデバイスとの間の相関を明示するグラフ１２０および１２２を図示する。Ａｇ−Ｓｉデバイスのヒステリシスループにおける非線形性を説明するために、本発明者らは、ＭＳＳモデルを拡張して、ＡおよびＢ状態の動的伝導度を包含するようにした。両方の状態の定数である伝導度に代わって、それは電圧の関数であり、換言すれば、それはダイオード様特性を露呈する。伝導度に非線形挙動を与えるために、発明者らは数式７のｗＡおよびｗＢを二次多項式関数に置き換え、
【数８】
2016524216.tif 000008
ここで、Ｖはデバイスにわたる瞬時電圧であり、パラメータａ、ｂおよびｃはモデルをハードウェアデータに適合させるために調整される。
【００４４】
＜差動メモリスタシナプス＞
ほとんどのニューロモーフィックコンピューティング研究が単一のメモリスタのシナプス様挙動を利用することに焦点を合わせてきたが、本発明者らは、複数メモリスタの差動対を介してシナプス荷重を実行することがはるかにより有効であることを見出した。第一に、差動対は、シナプスをデバイス不均一性に影響されないようにする自動校正を提供する。第二に、シナプス荷重を取り込むほとんどの機械学習モデルは、荷重を符号および絶対値の両方を保有するものとして取り扱う。単独のメモリスタは、これを達成することができない。開示された実施態様の態様に従って、複数メモリスタの差動対から形成されたシナプスは、シナプスを形成する複数メモリスタの差動対Ｍ１およびＭ２を描く回路図１３０を図示する図３に示される。
【００４５】
通常、シナプスは、単一のメモリスタによって表される。本発明者らは、しかし、複数メモリスタの差動対を使用するが、これはシナプスが符号と絶対値の両方を保有することを許容するためである。Ｍ１およびＭ２は、ｙにおける電圧がほんの一部のＶになることを引き起こす分圧器を形成する。対のメモリスタは、デバイス不均一性に由来する問題点を防ぐ接地状態に自身を自動的に平衡させる。
【００４６】
＜読み取り位相―反ヘブ＞
読み取り電圧Ｖの印加は、シナプス状態に損傷を与える。例として、Ｍ１の伝導度がＭ２より大きい場合、出力電圧ｙはＶ／２より大きい。電圧Ｖの印加中、メモリスタＭ１は、それにわたってＭ２より小さい電圧低下を有する。これによりＭ２の伝導度はＭ１の伝導度より多く増し、出力ｙをＶ／２により近づける。本発明者らはシナプス状態におけるこの変化が反ヘブであると言うことができる、なぜならばシナプス荷重の変化は次の読み取り操作が同じ状態と判断することを防ぐような方向に発生し、これはまさにヘブ学習の逆である。もう一つの観点から見てとれるように、シナプスは、強化フィードバックの非存在でランダム二進数発生器に収束する。この負のフィードバックが純粋に受動的かつ元から揮発性であることに気付かれたい。状態を読み取る行為は、それを熱力学的平衡により近づけることによって状態に損傷を与える。この特性は、以下に論じたように大いに役立つ。
【００４７】
＜書き込み位相―ヘブ＞
状態を読み取りする行為を介してこうむった損傷を元に戻すために、本発明者らは「報奨」フィードバックを「勝者」メモリスタに適用することができる（がしなくてもよい）。例として、読み取り位相中にｙ＞Ｖ／２の場合、本発明者らは、一期間、ｙ＝０を設定することができる。これはＭ１の伝導度を高める一方、Ｍ２の伝導度を一定に保つ。本発明者らは、それがシナプス状態を強化するため、シナプス状態におけるこの変化がヘブであると言う。より長くフィードバックが適用されるほど、より多くシナプス荷重は増強される。本発明者らはこのフィードバックをモジュール化することができるものの、ここでの本発明者らの目的のために、本発明者らはこの更新を個々の「全てか無か」の量で発生するものとして考えることができる。
【００４８】
＜減衰位相―正規化＞
読み取りおよび書き込み位相中、メモリスタは、伝導度において増している。ある時点で、それらはそれらの最大限に伝導性がある状態に飽和し、シナプス差動はゼロとなり、シナプスは役に立たなくなる。飽和を防ぐために、本発明者らは、ある時間の期間、両方のメモリスタにわたって同じ逆転電位を印加しなければならない。この手順は、その開始値に比例して両方のメモリスタの伝導度を減少させ、飽和を防ぐ一方、シナプス状態を守る。この操作が長期「スリープ期間」を介した自然減衰を介して発生することもできることに留意されたい。本発明者らは、しかし、それが長期休眠期間の必要を防ぎ、自然減衰率と処理の時間スケールとの間の結合を解除することの両方をするため、この減衰を強制する能力が有利であることを見出した。しかし、ほとんどの電力効率の良い構成とは読み取りおよび書き込み位相に起因した伝導度の累積が自然減衰率を介して均衡が取れているものであることは特筆すべきである。
【００４９】
＜ＡＨａＨ則＞
反ヘブとヘブ（ＡＨａＨ）可塑性は、読み取りおよび書き込みの二相プロセスを通じて達成されることができる。減衰位相は、メモリスタをそれらが飽和状態にならないよう保つための単なる実際的必要性である。減衰操作をくくり出すと、読み取りおよび書き込み更新の単純な機能モデルは以下の通りに書くことができ、
【数９】
2016524216.tif 000009
ここで、ｓは教師信号であり、αおよびβは定数であり、ηは熱力学的ノイズであり、ｗｉはｉ番目のスパイキングシナプスであり、ｙは以下の通り書かれたＡＨａＨノードのシナプスアクティベーションであり、
【数１０】
2016524216.tif 000010
ここで、ｂは「ノードバイアス」である。ノードバイアスは、常時アクティブな入力であるが、ヘブ更新を決して受け取らないものとして考えられることができる。
【数１１】
2016524216.tif 000011
【００５０】
ノードバイアスは、平均アクティベーションの減算として見てとれることができる。その機能は、ＡＨａＨノードが均衡が取れたアトラクタ状態を見出し、ヌル状態（後で記載される）を回避することを容易にすることである。
【００５１】
教師信号ｓは、外部ソースから来るまたはＡＨａＨノードのシナプス後アクティベーション、すなわちｓ＝ｙであることができる。後のケースでは、ノードは純粋に教師なしであり、以下の通りまで減る。
【数１２】
2016524216.tif 000012
【００５２】
＜回路の実現＞
先に記載したＡＨａＨノードは、好ましい実施態様に従って、ＡＨａＨノードを図示する図４に示す回路１４０によって実行されることができる。換言すれば、回路１４０は、ＡＨａＨノードとして実行されることができる。単一のＡＨａＨサイクル中、入力Ｘ０〜ＸＮ上の長さＮの二進信号は、Ｖｙ＝Ｖａ−Ｖｂにおいて出力上に連続値信号を生成する。Ｖｙは、さらに電圧コンパレータ（図示せず）で「デジタル化され」、その結果１ビット二進出力となることができる。電極Ｃは、読み取り操作中、接地され、アクティブＸｉ入力およびノードバイアス入力ＸＢを持つ分圧器を形成する。信号ＳａおよびＳｂは、教師ありまたは教師なし学習を調節および制御するために使用される。
【００５３】
図４に示す構成は、出力電圧ＶａおよびＶｂを持つ二つの「ハーフノード」を包含する。電極Ｃは、読み取り操作中、接地され、アクティブＸ入力およびノードバイアス入力ＸＢを持つ分圧器を形成する。ヘブフィードバックなしでは、ＶａおよびＶｂは、Ｖｄｄ／２に向かう傾向がある。ＸＢは、ノードバイアス入力であり、読み取り位相中、常時アクティブ（Ｖｄｄ）であるが、決してヘブ更新を受け取らない。入力Ｘ０〜ＸＮは、アクティブの場合Ｖｄｄに設定され、さもなければ、流動的なままにされる。他のＡＨａＨノード構成が可能であることに留意すべきである。
【００５４】
電圧制御電圧源（ＶＣＶＳ）は、書き込み位相中、ヘブフィードバックを調節するために採用されることができる。電極ａまたはｂのいずれかは、ヘブフィードバックの適用中、外部信号Ｓ（教師あり）または電極ａおよびｂ（教師なし）にわたる差動電圧のいずれかによって決定され、接地される。減衰は、電極ａおよびｂ上の電圧をＶｄｄまで引き上げることによって成し遂げられる一方、電極ＣおよびＸＢのみならずアクティブ入力も接地する。ＣおよびＸＢは、書き込み位相中、流動的なままにされる。ＡＨａＨノードの出力はＶｙ＝Ｖａ−Ｖｂであり、この出力は、電圧コンパレータ（図示せず）によって論理１または０のいずれかにデジタル化されることができる。単一のＡＨａＨサイクル中、駆動入力ｋ（「スパイク」）および流動的な入力Ｎ−ｋを持つ長さＮの二進入力は、出力において論理１または０に変換されるというのが「全体像」である。
【００５５】
ＡＨａＨ則が読み取り−書き込み−減衰の三相プロセスを介して実行されることができることを思い出されたい。これらの位相のパルスデューティサイクルおよび相対的継続時間を変化させることによって、ＡＨａＨ則の形状を変化させることができる（図５を参照されたい）。これは、数式１２におけるパラメータαおよびβの変形に相当する。これにより、ほとんどいかなる機械学習問題にも適用することができる単一の汎用的なＡＨａＨ回路が可能になる。
【００５６】
図５は、開示された実施態様の態様に従って、ＡＨａＨノードから作り出されたＡＨａＨ則を表示するデータを描くグラフ１５０を図示する。図５中の実線は、数式１２によって記載された関数のＡＨａＨ則を表す。四角形は、ＡＨａＨノードの出力ｙの符号と絶対値を所与として適用されたヘブフィードバック（Δｗ）を表す。ＡＨａＨ則は、読み取りおよび書き込み位相のデューティサイクルをチューニングすることによって外部から調整されることができる。シナプスフィードバックをこのようにして外部から調整できるようにすることによって、特注チップの必要なしで、回路をいくつかの異なる機械学習用途に再利用することができる。
【００５７】
＜論理関数としてのＡＨａＨアトラクタ状態＞
図６Ａ〜６Ｂは、開示された実施態様の態様に従って、入力空間ダイアグラム１５２および二入力ＡＨａＨノードの吸引するアトラクタ状態を描くグラフ１５４を図示する。ＡＨａＨ則は、当然ながら、データ分布間のマージンを最大化する決定境界を形成する。これは二次元で簡単に可視化されることができるが、それは入力のいかなる数に対しても等しく妥当である。Ａ）入力空間：アトラクタ状態は決定境界Ａ、ＢおよびＣによって表される。Ｂ）荷重空間：例として、Ａｇ−カルコゲニドメモリスタを持つ二入力ＡＨａＨノードのシミュレーション結果。ランダムな正常初期化からアトラクタ流域までの荷重の展開は、図６に示すデータから明瞭に見てとれることができる。
【００５８】
最も単純な可能なＡＨａＨノードである、二つの入力のみを持つものを分析するとしよう。四つの可能な入力パターンは、以下の通りである。
【数１３】
2016524216.tif 000013
【００５９】
安定したシナプス状態は、全ての荷重更新の和がゼロであるときに発生することができる。この単純なケースでは、安定したシナプス荷重を代数的に導くことは平易である。しかし、本発明者らは、アトラクタ状態の幾何学的解釈がより概念的に有益であることを見出した。本発明者らは、それを生成したデータを持つ同じ作図上にＡＨａＨノードの安定した決定境界（ｙ＝０を解く）を作図することができる。これは、本発明者らが決定境界Ａ、ＢおよびＣにラベル付けした入力空間ダイアグラム１５２で見てとれることができる。ＡＨａＨ則は、対立するデータ分布間の「マージンを最大化する」ことを試みるローカル更新則として見てとれることができる。「正（ポジティブ：positive）」の分布が決定境界をそれから遠ざける（荷重をより正（ポジティブ：positive）にする）につれ、正（ポジティブ：positive）の更新の絶対値は減少する一方、対立する負（ネガティブ：negative）の更新の絶対値は増す。決定境界がデータ分布をきれいに分離することができ、ｙの出力分布が２モードになるとき、強いアトラクタ状態が存在するというのが最終結果である。
【００６０】
入力空間ダイアグラム１５２に作図された各決定境界は、各々の安定した決定境界に二つの解が存在するため、状態およびその反状態を表す。本発明者らの特注アナログシミュレーションエンジンMemSim（www.xeiam.com）を使用して、本発明者らは、二入力ＡＨａＨノードをＡｇ−カルコゲニドメモリスタでシミュレーションした。この例では、｛［１，０］、［０，１］および［１，１］｝のセットからランダムに選択した１０００回の入力の流れを所与として、１５０個のＡＨａＨノードがランダムに初期化されたシナプス荷重でシミュレーションされた。ＡＨａＨノードは、図６のグラフ１５４に示される六つのアトラクタ流域の一つに該当した。
【００６１】
アトラクタ状態Ａ、ＢおよびＣは、論理関数として見なされることができる。これは、サンプル真理値表（以下の表１）で見てとれることができる。例として、シナプス状態（ＳＳ）Ａは、論理関数８に相当する。常時アクティブな入力であり、ヘブ更新を受け取る入力バイアスを本発明者らが追加しない限り、論理関数０〜７を得ることはできないことは興味深い。これは、機械学習における標準手順である。非線形論理関数９および６は、「ＸＯＲ」論理関数およびその補数に相当する。ＸＯＲ関数は、二段回路を通じて得ることができる。
【００６２】
【表１】
2016524216.tif 000014
【００６３】
本発明者らは、Ａ状態および全ての高次一般化をヌル状態と呼ぶ。ヌル状態は、ＡＨａＨノードが同じ荷重値を各シナプスに割り当て、あらゆるパターンに対して＋１または−１を出力するとき発生する。ヌル状態は計算上役に立たず、その占有は、ノードバイアスによって抑制されることができる。
【００６４】
ＡＨａＨアトラクタ状態は、二つのケース下で計算上一通り揃っている：１）入力バイアスの包含または２）「抽出」論理ゲートまたは閾値、例えば、ＮＡＮＤゲートの使用。この結果は、いかなるアルゴリズムも理論的にはそれらのアトラクタ状態を占有するＡＨａＨノードの集団に由来することができることを表示する。これは、大きい自己組織化回路において意味合いを有する。不揮発性論理ゲートを構成するために電位障壁を克服するエネルギーを費やさなくてはならないのではなくむしろ、一つ以上のＡＨａＨノードから形成された揮発性論理ゲートは、一旦ヘブフィードバックが解除されると、自己構成することができる。一旦より良い解が見出されると、ヘブフィードバックが適用されることができ、解は安定化される。
【００６５】
＜適応スパイク符号化＞
ＡＨａＨ則は実数値入力に簡単に拡張されることができるものの、ＶＬＳＩにおいてアナログデータ表現を伝達することは、困難または非実用的である。この理由のため、生物がスパースなスパイキング表現に落ち着いてきたという所見と組み合わせることにより、本発明者らの方法は、入力データからスパースなスパイキング表現への変換を要する。この表現は、アクティビティパターンがはるかにより大きいセットの電位入力から出た小さいセットのアクティブ入力によって表されることを要する。そのような符号化を生成する単純な再帰的方法は、二分決定木を介した厳密な反ヘブ学習を通じて実現されることができる。コアＡＨａＨノード回路を使用して、この符号化を行うことができる。
【００６６】
根ノードから開始して葉ノードへ進み、入力ｘは、ノードバイアスｂと合計される、ｙ＝ｘ＋ｂ。結果ｙの符号に依存して、それは、葉ノードに向かってどちらかの方向に送られる。ノードバイアスは、反ヘブ学習に従って更新され、実際的結果は適応平均値の減算である。
【数１４】
2016524216.tif 000015
【００６７】
根から葉へのノードのＩＤは、次に、スパースなスパイクコードとして使用されることができる。根ノードが入力バイアスになる一方、分岐の各追加レベルがより細かい適応ビンになることに留意されたい。このプロセスは、アナログからデジタルへの適応変換である。数式１４は、α＝０を設定することによって数式９から得ることができることに留意されたい。この適応ビニング手順は、以下の場合、スパースなスパイク符号化パターンに簡単に拡張されることができ、
【数１５】
2016524216.tif 000016
ここで、ｗｉは、ゼロ平均を持つランダム分布から選び出される。
【００６８】
＜ＡＨａＨクラスタラ＞
クラスタリングは、自動的にデータの隠れた構造を教師なしの方式で見出そうとする知識発見の方法である。ｋ平均法のような中心点ベースのクラスタリング方法は、ユーザーがクラスタ中心の数を前もって定義することを要する。密度ベースの方法は、クラスタ中心を事前定義することなく使用されることができるが、様々な密度のクラスタである場合、失敗することがある。ＯＰＴＩＣＳのような方法は、変数密度の問題の一部に取り組むことを試みるが、それらがある種の密度低下を期待するという問題を生ぜしめ、任意クラスタ境界につながる。既知のクラスタ分布の混合からなるデータセット上で、分布ベースの方法、例えば、ＥＭクラスタリングは、密度ベースのクラスタリングアルゴリズムをしのぐ。しかし、ＥＭクラスタリングは、データが既知の分布の混合であることを前提としており、それ自体は、密度ベースのクラスタをモデル化することはできない。さらに、それは、過剰適合を起こしやすい。
【００６９】
ＡＨａＨノードは、対立するデータ分布間のマージンを最大化することによってその入力空間をきれいに分割するアトラクタ状態に収束する。ＡＨａＨアトラクタ状態のセットは、さらに、計算上一通り揃っている。これらの二つの特性は、ＡＨａＨノードの集団が一意の入力データ分布に一意のラベルを割り当てることをできるようにする。ＡＨａＨノードの集団がアトラクタ状態にランダムに落ちることが許容される場合、集団からの二値出力ベクトルは、入力フィーチャのラベルとして働く。本発明者らは、そのような集団をＡＨａＨクラスタラと呼ぶ。
【００７０】
＜バージェンス＞
本発明者らは、本発明者らのＡＨａＨクラスタラの性能を特徴付けるための定量的測定法を開発した。一意のフィーチャＦを所与として、本発明者らは、理想的には一意のラベルＬ（Ｆ→Ｌ）がほしい。これは、ノイズ、閉塞および非定常データまたはドリフトの存在によって複雑化されている。失敗は、二通りに発生することがある。第一に、同じ基底パターンに二つ以上のラベルが与えられている場合、本発明者らは、ＡＨａＨクラスタラが分岐していると言うことができる。本発明者らは、パターン当たりの平均ラベルの逆数として、ダイバージェンス、Ｄを測定する。第二に、二つの異なるパターンに同じラベルが与えられている場合、本発明者らは、それが収束していると言うことができる。本発明者らは、ラベル当たり平均パターンの逆数として、コンバージェンス、Ｃを測定する。
【００７１】
ダイバージェンスおよびコンバージェンスは、本発明者らがバージェンス、Ｖと呼ぶ複合的な測定値を形成するために組み合わせられることができる。
【数１６】
2016524216.tif 000017
【００７２】
完全なクラスタ抽出は、バージェンス値１で発生する。
【００７３】
＜集団分割確率＞
ＡＨａＨ集団からの可能な出力ラベルの全数は２Ｎであり、ここで、Ｎは集団におけるＡＨａＨノードの数である。集団は、Ｎが小さくおよび／またはパターンの数、Ｆが高い場合、異なるフィーチャに同じラベルを出力することができる。しかし、ＡＨａＨノードの数が増すにつれ、これが発生する確率は、指数関数的に低下する。全てのアトラクタ状態が等しく可能性が高いという前提下では、任意の二つのフィーチャに同じ二進ラベルが割り当てられる確率は以下の通りになる。
【数１７】
2016524216.tif 000018
【００７４】
例として、６４個のフィーチャおよび１６個のＡＨａＨノードを所与として、二つのＡＨａＨノードに同じラベルが割り当てられる確率は３％であり、Ｎを３２個まで増やすことによって、これは百万個に一つより少なくなるまで下がる。先の則を使用して、所与の用途に対するＡＨａＨノードの最適数を決定することができる。
【００７５】
＜クラスタラ結果＞
本発明者らのバージェンス測定法によって測定されたＡＨａＨクラスタラの性能をテストするために、スパイク符号化フィーチャからなるランダムな合成データセットが作り出された。ノードバイアスの影響を研究するために、本発明者らは、その学習率を単独で調節し、それをγに設定した一方、本発明者らはλ＝α＝βを設定した。
【数１８】
2016524216.tif 000019
【００７６】
γが小さすぎるとき、ノードバイアスは、ＡＨａＨノードがヌル状態に陥ることを防ぐことができない。ますます多くのノードがヌル状態に陥るにつれ、ＡＨａＨクラスタラは、同じラベルを各パターンに割り当てることを開始し、その結果コンバージェンスは低下する。他方では、γを高すぎるまで増やすと、ダイバージェンスの減少を引き起こす。ノードバイアスは、各ＡＨａＨノードがその空間を分岐させるアトラクタ状態を選ぶことを強制している。しかし、全てのアトラクタ状態が等しく空間を分岐させるとは限らない。γが高すぎない場合、それは、これらの非対称状態を許容し、準最適分割につながる。しかし、γが増やされるにつれ、ノードバイアスの影響は、決定境界を最適分割からゆがめる。結果は、より高いダイバージェンスである。
【００７７】
本発明者らは、ＡＨａＨクラスタラのロバスト性を調べるために、単独でいくつかのパラメータをスイープした。以下の表２は、これらの結果を要約する。
【００７８】
【表２】
2016524216.tif 000020
【００７９】
バージェンスが下がる前にＡＨａＨクラスタラによって区別されることができるパターンの数は、パターンスパース性およびパターンノイズの関数である。ノイズは、ランダム入力線を取得してそれらをアクティベートするか、入力線が既にアクティブの場合はそれをデアクティベートすることによって作り出される。３％のスパース性（３２／１０２４）および６％ノイズ（パターンの３２個スパイク当たり２個のノイズスパイク）に対して、ＡＨａＨクラスタラは、バージェンスが９５％未満に下がる前に２３０個の３２−スパイクパターンを区別することができる。
【００８０】
ＡＨａＨクラスタラの性能は、ノイズに対してロバストである。例として、本発明者らは、１００％パターンロード下で３０％ノイズ（３２個の３２−スパイクパターン）まで完全な性能アップを達成することができる。
【００８１】
MemSimを使用して、本発明者らは、１０個のＡＨａＨノード、１６個の入力およびＮ個の４ビットパターンで形成されたＡＨａＨクラスタラの回路シミュレーションを果たした。本発明者らの結果はスパイクパターンの数が増すにつれ期待されたバージェンス減少を示し、回路シミュレーションは図７に示すように機能シミュレーションとの適合を示す。
【００８２】
図７は、開示された実施態様の態様に従って、回路レベルおよび機能シミュレーション例を包含するＡＨａＨクラスタラを表示するデータを描くグラフ１７０を図示する。図７のグラフ１７０は、六つのＡＨａＨノードおよび１６個の入力線で形成されたＡＨａＨクラスタラの回路レベルのおよび機能のシミュレーション結果を描く。長さ４ビットの一意のフィーチャの数は、１から２０までスイープされ、バージェンスが測定された。これらの結果は、本発明者らのＡＨａＨクラスタラの高いレベルの機能モデルとメモリスタを使用したハードウェアの実装との間の適合を明示する。
【００８３】
スパースなスパイク符号器と対を作るとき、ＡＨａＨクラスタラは、幅広いクラスタタイプにわたってよく機能するように思われる。これを明示するために、本発明者らは、様々な二次元クラスタ分布を取得し、それらを本発明者らがスパースな符号器として使用したｋ近傍法アルゴリズムに投入した。全５１２個の中心のうち最もよくマッチしている３２個の中心のＩＤは、入力に一意のラベルを割り当てたＡＨａＨクラスタラに投入された。一意のラベルは各々、一意の色または他の表現にマップされることができる。図８のグラフ１８０、１８２、１８４で見てとれることができるように、この方法は、非ガウスクラスタのみならず様々なサイズおよび数のクラスタに対してもよく機能する。図８に示すクラスタリングタスクの映像は、オンラインのSupporting Informationセクション（映像Ｓ１〜Ｓ４）で閲覧することができる。
【００８４】
概して、図８は、開示された実施態様の態様に従って、二次元空間のクラスタリングデモンストレーションを表示するグラフ１８０、１８２、１８４を図示する。図８は、開示された実施態様のＡＨａＨクラスタラが広い範囲の異なる２−Ｄ空間クラスタタイプにわたって、クラスタの数または期待されたクラスタタイプ：Ａ）ガウス、Ｂ）非ガウス、Ｃ）ランダムガウスサイズおよび配置を全て事前定義することなくよく機能することを明示する。
【００８５】
＜ＡＨａＨ分類器＞
線形分類は、機械学習の分野でオブジェクトにラベルを特徴付け、適用するために使用されるツールである。分類に対する最先端の手法は、アルゴリズム、例えば、ロジスティック回帰、決定木、サポートベクターマシン（ＳＶＭ）および単純ベイズを包含し、リアルワールド応用、例えば、画像認識、データマイニング、スパムフィルタリング、音声認識および不正検出で使用される。本発明者らのＡＨａＨベースの線形分類器は、主に単なるもう一つのアルゴリズムではないという点でこれらの技術とは異なり、それは、物理的な適応回路として実現されることができる。これはいくつかの競走上の効果を提示するが、主な一つは、そのようなデバイスが速度を高め、電力消費を劇的に減らす一方、大型データマイニング用途において経験があるディスクＩ／Ｏボトルネックに関連する問題を排除するだろう。
【００８６】
ＡＨａＨ分類器は、各々に分類ラベルが割り当てられ、各々が数式９のＡＨａＨ則の教師あり形を操作する、多数のＡＨａＨノードを包含することができる。教師信号が利用可能でないケースでは、則の教師なし形（数式１２）が使用されることができる。より高いノードアクティベーション（ｙ）は、より高い信頼度として解釈される。状況に依存して、分類器の出力を解釈する複数のやり方がある。第一に、全てのノードアクティベーションをオーダーし、最も正（ポジティブ：positive）のものを選択することができる。この方法は、パターン当たり一つのラベルのみが必要とされ、出力が常時作り出されなければならないとき、理想的である。第二に、アクティベーション値閾値を上回る全てのラベルを選択することができる。この方法は、各入力パターンに複数のラベルが存在するとき、使用されることができる。最終的に、閾値を上回る場合、最も正（ポジティブ：positive）のもののみが選択され、さもなければ何も戻されない。この方法は、パターン当たり一つのラベルのみが必要とされるが、パターンの拒絶が許容されるとき、使用されることができる。
【００８７】
全ての入力は、スパースなスパイキング表現に変換されることができる。連続値入力は、数式１４の適応ビニング方法を使用して変換された。テキストは、各ワードがスパイクを代表する、バッグオブワーズ表現に変換された。MNIST手書き文字データセットの画像パッチは、未加工ピクセル値のインデックスがスパイク入力として使用された、数式１５の方法を使用したスパイク表現に変換された。各画像は、次に、サイズ８×８の画像パッチおよび８×８ピクセルのプーリングサイズを持つ標準畳み込み＋プーリング手法を介してスパイク表現に変換された。
【００８８】
ＡＨａＨ分類器を他の最先端の分類アルゴリズムと比較するために、本発明者らは、チャレンジの多様な範囲を表している、四つの人気がある分類器ベンチマークデータセット：Breast Cancer Wisconsin、Census Income、MNIST Handwritten DigitsおよびReuters-21578データセットを選択した。本発明者らのベンチマーク結果は、それらのそれぞれの分類方法を使用した他の公表された研究からの結果と共に表３に示される。表３に示された本発明者らのスコアは、本発明者らの分類器によって生成されたピークＦ１スコアである。
【００８９】
全てのベンチマークデータセットの常で、開示された実施態様の態様に従って、テスト分類ベンチマーク結果例を描くグラフ１９０を図示する図９で見てとれることができるように、信頼度閾値が増やされるにつれ、適合率が増す一方、再現率は低下する。図９は、一般的にReuters-21578テキスト分類ベンチマーク結果を図示する。Reuters-21578データセット内のニュース記事に関連する上位１０位の最も頻繁なラベルを使用して、ＡＨａＨ分類器の正解率、適合率、再現率およびＦ１スコアは、その信頼度閾値の関数として決定された。信頼度閾値が増やされるにつれ、適合率が増す一方、再現率は低下する。最適信頼度閾値は、所望の結果に依存して選択されることができ、それは、動的に変化させることさえできる。
【００９０】
【表３】
2016524216.tif 000021
【００９１】
ＡＨａＨ分類器は、数式１２を起こすことによる教師なし学習の能力もある。教師ありラベルを与えられないが、分類器が高い信頼度でラベルを出力できる場合、出力は、正しいと推定され、教師あり信号として使用されることができる。結果は、最大マージンのポイントを表すアトラクタ流域への継続コンバージェンスである。これは、大量のラベル付けされていないデータが存在する任意の領域、例として画像認識におけるような応用を有する。分類器によるこれらのラベル付けされていない例の処理を許容することによって、それは、改善を継続することができる。この能力を明示するため、本発明者らは、Reuters-21578データセットを使用した。結果は、教師あり学習打ち切り後に継続改善を明瞭に示す図１０に示す。
【００９２】
図１０は、開示された実施態様の態様に従って、ＡＨａＨ分類器の半教師あり操作を表示するデータを描くグラフ２００を図示する。Ｔ＝０からＴ＝４２５７まで、分類器は、数式９を介して教師ありモードで操作された。Ｔ＝４２５８以降、分類器は、数式１２を介して教師なしモードで操作された。ヘブ学習の教師なし適用には、信頼度閾値０．９５が設定された。これらの結果は、ＡＨａＨ分類器が教師ありフィードバックなしで連続的にその性能を改善する能力があることを明示する。
【００９３】
本発明者らの分類結果は、公表されたベンチマークと比較しても劣らず、一貫してＳＶＭの性能にマッチするか上回る。本発明者らは、単純なスパースなスパイク符号化技術に続く独立ＡＨａＨノードによる分類以上の何ものでもない手法の簡潔さを所与として、これを驚くべきことであると発見する。ＡＨａＨ分類器は、多数の望ましい特性を露呈する。それは、最適な漸増学習器のように思われ、複数の各分類（クラス：class）ラベルを扱うことができ、教師なし適応の能力があり、欠測データやノイズに耐性があり、スパースなスパイク符号化を介して混合データ型を扱うことができる。本発明者らは、過剰適合に対する優れた耐性も認めた。
【００９４】
表３に提示されたベンチマークデータセットのほとんどは、今回におけるMemSimでの回路シミュレーションには大きすぎた。しかし、Wisconsin Breast Cancerデータセットは、回路レベルでシミュレートし、機能レベルの結果と比較するに十分に小さかった。５００個の訓練データポイントをフォローする１８３個のテストデータポイントがあった。回路レベルのシミュレーションは、機能シミュレーションと比較して遜色がない、９８．９％の分類率を出した。
【００９５】
＜複雑な信号予測＞
信号予測をマルチラベル分類問題として提起することによって、本発明者らは、複雑な時系列を学習することができる。時間の各瞬間について、本発明者らは、数式１４の方法を使用して実数値信号Ｓ（ｔ）をスパースなスパイキング表現Ｆ（Ｓ（ｔ−Ｎ））に変換する。本発明者らは、一時的にこれらのフィーチャをバッファに格納して、フィーチャセットを形成する。
【数１９】
2016524216.tif 000022
【００９６】
本発明者らは、今、このフィーチャセットを使用して、分類器が各スパイクに一意のラベルを割り当てている、現在のフィーチャアクティベーションＦ（Ｓ（ｔ））を予測することができる。学習後、出力予測は、実際の入力に代えて使用され、時間において再帰的に前方へ動くことができる。このようにして、未来についての拡張された予測が可能である。例は、図１１で見てとれることができる。
【００９７】
図１１は、開示された実施態様の態様に従って、ＡＨａＨ分類器を用いる複雑な信号予測を描くグラフ３００を図示する。予測をマルチラベル分類問題として提起することによって、ＡＨａＨ分類器は、複雑な時間波形を学習して、再帰を介して拡張された予測をすることができる。
【００９８】
＜ＡＨａＨモータコントローラ＞
図１２Ａ〜１２Ｂは、開示された実施態様の態様に従って、教師なしロボットアームチャレンジのダイアグラム４００およびそのデータを描くグラフ４０２を図示する。ロボットアームチャレンジ（図１２Ａのダイアグラム４００を参照されたい）は、動いて、目標物を捕らえる多関節ロボットアームを伴う。ロボットの「目」からの値信号および閉ループ構成内のＡＨａＨノードの小さい集合体のみを使用して、ロボットアームは、静止したおよび動く目標物を捕らえる。グラフ４０２によって、ＡＨａＨガイド付き作動についてはアーム関節の数が増やされても目標物を捕らえるために要する平均全関節作動は依然として一定のままであることが表示されている。ランダム作動については、要する作動は、指数関数的に増える。
【００９９】
ＡＨａＨサイクルの書き込み位相中のヘブフィードバックの安定化は、読み取り操作後いつでも発生することができる。これは、それを強化ベースの学習のために使用する可能性を開くものである。ここで、本発明者らは、ＡＨａＨノードの小さい集団が値信号に基づいて目標物に多関節ロボットアームをガイドするために使用されることができることを示す。
【０１００】
本発明者らは、目標物（ダイアグラム４００を参照されたい）と接触させるためにＡＨａＨノードの集合体がＮ個の接続された固定長ロッドの角度を制御する、ロボットアーム仮想環境を作った。ダイアグラム４００に示されるアームは、そのベースが中心で固定された平面上に載っており、全ての関節は３６０度自由に回転する。新たな目標物は、ロボットアームが目標物を捕らえた後、ロボットアームの到達半径内にランダムに落とされる。ロボットアーム仮想環境は、Proprioceptron（www.xeiam.com）と呼ばれるオープンソースプロジェクトの一部である。
【０１０１】
本発明者らは、目標物が設置された時から捕らえるまでの最小漸増関節作動の全数を合計することによって、目標物をキャッチする際のアーム効率を測定した。性能は、関節の数を増やしつつ、ランダムなアクチュエータと比較された。結果は、図１２Ｂのグラフ４０２に示される。
【０１０２】
センサは、目標物ボールからアームの「ヘッド」の側面上に位置する二つの「目」の各々への距離のみならずロボットアームの各セグメントの相対的関節角度も測定することができる。センサ測定結果は、数式１４の方法を使用してスパースなスパイキング表現に変換される。値信号は、目標物へのヘッドの逆距離として計算されることができる。
【数２０】
2016524216.tif 000023
【０１０３】
対立する「筋肉」は、各関節を作動させる。各筋肉は多くの「繊維」で形成されており、単一のＡＨａＨノードは各繊維を制御する。各関節を動かす漸増過程の数、ΔＪは、以下によって与えられ、
【数２１】
2016524216.tif 000024
ここで、ｙｉ０は一次筋肉のｉ番目の筋肉繊維を制御するｉ番目のＡＨａＨノードのシナプス後アクティベーションであり、ｙｉ１は対立する筋肉のｉ番目の筋肉繊維を制御するｉ番目のＡＨａＨノードのシナプス後アクティベーションであり、Ｈ（ｙ）はヘビサイド過程関数である。各時間過程内に動かされた漸増過程の数は、次に、これらの二つの値の差によって与えられる。
【０１０４】
本発明者らは、報奨ヘブフィードバックをＡＨａＨノードに与えるための複数の方法を探った。最も効率的な方法は、フィードバックが与えられるべきか否かを具体的に決定するために、筋肉群に対して相対的な、各筋肉の状態を考慮した。動きを所与として、本発明者らは動きに沿ってまたは対抗して繊維が振る舞ったか否かを言うことができる。動きが後で値を増やした、または減少させたことを本発明者らが知っていれば、本発明者らは、各ＡＨａＨノードがヘブフィードバックを受け取るべきか否か具体的に決定することができる。例として、繊維が動きを支援して振る舞って、値が後で低下した場合、そうであれば、本発明者らは繊維が間違ったと言うことができ、そのヘブ更新を拒否することができる。実験的所見は、広い範囲の値に対して一般的に良好な性能が認められたものの、α＝０．１およびβ＝０．５の一定値につながった。
【０１０５】
本発明者らの結果は、ＡＨａＨノードの集団が値関数の勾配降下を果たしており、迅速にアームをその目標物にガイドできることを明示するように思われる。
【０１０６】
＜ＡＨａＨ組合せ最適化系＞
ＡＨａＨノードは、ヘブフィードバックが差し控えられた場合、確率的出力状態に降下する。シナプス荷重の絶対値がゼロの近くに下がるにつれ、熱力学的状態遷移が発生する機会は、〜０％から５０％へ上昇する。この特性は、確率的探索および最適化タスクにおいて利用されることができる。組合せ最適化タスク、例えば、本発明者らが都市の経路を二値ベクトルＰ＝［ｂ０，ｂ１，…，ｂＮ］として符号化した巡回セールスマン問題を考察する。全ての可能な経路の空間は、深さＮの二分木の葉として可視化されることができる。経路を構築する行為は、木を幹から葉へと横断するルーティング手順として見てとれることができる。事前の試みられた解がルーティング確率を修正することを許容することによって、当初の均一なルーティング分布は、より最適な解のサブ空間に折り畳むことができる。
【０１０７】
これは、仮想ルーティング木内のノードとしての単一の入力でＡＨａＨノードを使うことによって成し遂げられることができる。ルートが幹から葉へ進むにつれ、各ＡＨａＨノードは、その状態を判断され、反ヘブ更新を受け取る。ルートがその結果平均解より良好な解となるのならば、ルーティング経路に沿った全てのノードは、ヘブ更新を受け取る。手順を再び何度も繰り返すことによって、正（ポジティブ：positive）フィードバックループは作られ、より最適なルートがその結果、より高いルート確率となり、同様に、その結果、より最適なルートとなる。最終効果は、経路が閉じ込められるため、幹から葉へのルート確率の崩壊である。プロセスは、地面への経路を探索する落雷（ライトニングストライク）の形成と直感的に同様であり、そのようなものであるため、本発明者らは、それを「ストライク」と呼ぶ。
【０１０８】
組合せ最適化の方法としてのストライクを判断するため、本発明者らは、ＡＨａＨノードの再帰的フラクタルツリーを構築し、数式９にα＝β＝学習率を設定した。ノイズ変数、ηがゼロ平均および０．０２５の分散を持つランダムガウス分布から選び出された。１０，０００解試みごとに、０．０１より少ないシナプス荷重絶対値を持つ枝が切り落とされた。
【０１０９】
図１３Ａ〜１３Ｃは、開示された実施態様の態様に従って、６４都市巡回セールスマンチャレンジを表示するデータを描くグラフ５００、５０２、４０４を図示する。単一入力ＡＨａＨノードをルーティング木におけるノードとして使用することによって、組合せ最適化問題、例えば、巡回セールスマン問題は、ハードウェア内で解かれることができる。解の速度および質は、ＡＨａＨノードの読み取りおよび書き込み位相駆動のデューティサイクルを調整することによって制御されることができる。グラフ５００は、解試みの数の関数としての最大解値、Ｖ（より高いほどより良好）を表示する。グラフ５０２は、より低い学習率がより良好な解につながることを表示する。グラフ５０４は、より低い学習率がコンバージェンス時間を増やすことを表示する。
【０１１０】
本発明者らは、各都市が他の全都市に直接接続され、都市座標がゼロ平均および一の分散を持つランダムガウス分布から選び出される、６４都市巡回セールスマン問題を構築した。都市経路はビット列として符号化され、第一の都市が６ビットで、続く都市の各々が残りの都市を解決するために必要なだけのビットで符号化され、第二〜最後の都市が１ビットを要した。解の値は、ｄが全経路長さである、Ｖ＝１／ｄとして計算された。
【０１１１】
ストライクプロセスは、５０，０００試み後または１０回連続して同じ解が作り出されたとき、終了された。ランダム探索は、各新たな解試みが均一なランダム分布から選び出された、制御として使用された。これは、α＝０を設定することによって達成された。結果は、図１３Ａ〜１３Ｃのグラフ５００、５０２および５０４によって要約された。学習率が減少するにつれ、解の質は増すが、収束するのにより長い時間がかかる。解の質は、ランダム探索に勝っており、ストライクが指令探索を果たしていることを表示している。
【０１１２】
ストライクは、探索アルゴリズムを加速する比較的汎用的な方法であるように思われる。例として、本発明者らは、絶対オーダリングよりもむしろ、同じ位に簡単に都市のリストを再オーダーするための相対的手順としてストライク経路を符号化することができる。例として、本発明者らは、インデックス「Ａ」と「Ｂ」の都市を交換し、次に、インデックス「Ｃ」と「Ｄ」の都市を交換するなどをすることができる。さらに、本発明者らは、再帰的な方式でストライク手順を使うことができる。例として、巡回セールスマン問題のケースでは、本発明者らは、最適サブ経路および高次ストライクを見出し、サブ経路からより大きい経路を組み立てるために、「より低いレベルの」ストライクを割り当てることができる。
【０１１３】
本発明者らの研究は、単純な反ヘブとヘブビルディングブロックを介してメタステーブルスイッチから広い範囲の機械学習能力への経路を明示した。本発明者らは、メモリスティブデバイスがメタステーブルスイッチに由来することができ、いかに差動シナプス荷重が二つ以上のメモリスタから作られることができ、いかにＡＨａＨノードが二配列の差動シナプスから作られることができるかを示した。ＡＨａＨノード回路を駆動する単純な読み取り／書き込み／減衰サイクルは、その結果、ＡＨａＨ則を実行する物理的デバイスとなる。本発明者らは、ＡＨａＨ則のアトラクタ状態が計算上一通り揃った論理関数であり、スパイク符号化、教師ありおよび教師なし分類、クラスタリング、複雑な信号予測、教師なしロボットアーム作動および組合せ最適化においてそれらの有用性を示したことを明示した。本発明者らは、既存のメモリスティブデバイスの正確なモデルを使用した、ハードウェアシミュレーションにおける教師なしクラスタリングおよび教師あり分類を明示した。本発明者らは、本発明者らのハードウェアシミュレーションと単純な数学的機能モデルとの間の一致をさらに示した。
【０１１４】
本発明者らは、本発明者らの結果から、他の能力が明瞭に可能であることを推測することができる。異常検出は、例として、予測と密接に関連している。一時的な動的信号について予測することができる場合、そうであれば、予測が現実とマッチするのに失敗したとしても異常信号は簡単に作り出されることができる。非定常統計のトラッキングもＡＨａＨ則のアトラクタ特質の当然の副産物である。ＡＨａＨ則のアトラクタポイントは、データ構造によって作られる。情報の構造が変化するにつれ、必然的にこれらの同じ状態が変わることになる。アトラクタ状態に閉じ込められた成分で作られたシステムは、損傷を与えられた場合、自然に回復することにもなる。本発明者らはこれを過去の研究で明示したが、自己修復が非集中型自己組織化の副産物であることを強調すべきであろう。システムが自身を作ることができる場合、そうであれば、それは自身を修復することができる。
【０１１５】
新規の方法、例えば、深層フィーチャ学習は、現在、機械学習コミュニティで勢いを増している。これらの方法は、教師なし方法、例えば、自動符号器の対話型アプリケーションに基づく複数の層の表現を作る。ＡＨａＨクラスタラと組み合わせたスパースなスパイク符号化は、教師なしフィーチャ抽出の能力があり、確実に積層されて、より高いレベルの表現を形成することができる。ＡＨａＨ分類器は、さらに、入力スパイクがラベルとなる自動符号器として使用されることができる。
【０１１６】
深層学習器をYouTube（登録商標）画像データ上で訓練するためのGoogle（登録商標）による最近の研究が正解率を以前の試みから約二倍にしたが、これは興味深い可能性である。しかし、この結果は、驚嘆するような数を強いるものであった。取り組みには、３日間フルキャパシティで稼働する１６，０００コアの配列がかかった。モデルは、一見したところ生物と比較すれば印象が薄くなるものの、１０億個の接続を含有した。平均的なヒトの大脳新皮質は、１５０兆個の接続を含有し、大脳新皮質内のシナプスの数は、脳の接続の全数のごく一部である。コア当たり２０Ｗで、Googleのシミュレーションは、およそ３２０kWを消費した。完全なスケーリングの下では、ヒューマンスケール大脳新皮質のシミュレーションは、４８GWを消費していたであろう。
【０１１７】
先の数に対して大局的な見方をすることには価値がある。現時点において世界で最も大きい発電所は、２２．５GWのキャパシティを持つ中国の三峡ダムである。ヒトの脳の一部をシミュレーションするために要するコンピュータへの電力供給には、これらの施設が二つ以上かかるであろう。４８GWは、有意な問題である。
【０１１８】
数十億個のトランジスタを持つ回路は可能である、なぜならばトランジスタが複雑だからではなく、むしろ、それらが単純だからである。本発明者らが１０００兆個の適応シナプスを持つ大型適応ニューロモーフィックプロセッサを作りたいと望む場合、そうであれば、本発明者らは、必然的に単純かつロバストなビルディングブロックから始めなければならない。
【０１１９】
本発明者らが本書で明示したように、ＡＨａＨノードは、本発明者らにそのようなビルディングブロックを提供することができる。まさに、本発明者らは、認知（クラスタリング、分類）、計画（組合せ最適化、予測）、制御（ロボット作動）および汎用的な計算（ユニバーサル論理）をできるようにするために必要とされる機能が単に耐容性があるのみならず実際に揮発性およびノイズを要する単純な回路で可能であることを本発明者らの研究が明示することを望む。
【０１２０】
生物は、絶えず変化する環境でうまく乗り切り、適応する能力を有して、生命を維持・繁栄に使用されるエネルギーを求め、消費する、揮発性ニューラル成分から作られた知的生き物を発展させてきた。生命体が行っていることを限定的なエネルギー収支を所与として行うことができるという事実は、さらに驚くべきことである。コンピューティング、機械学習および人工知能における進歩は、自然が設定したハードルに近づくことにさえ失敗してきた。したがって、本発明者らは、生物の揮発性低電力ソリューションに基づく、コンピューティングに対する全く新たな手法を発明する必要があると信ずる。ここで提示された研究は、一つのそのような手法を提案し、現在のノイマン型システムを阻む障壁を回避する。メモリスティブ回路の最近の登場は、今や、この新たなタイプのコンピューティングへの道を築くシリコン集積デバイスを確立するためにシナプス様電子成分を追加することも可能にした。
【０１２１】
メモリスタ用の本発明者らのメタステーブルスイッチモデルは、例として、二つの物理的デバイス、Boise State UniversityのＡｇ−カルコゲニドデバイスと、University of MichiganのＡｇ−Ｓｉデバイスとをモデル化するために使用されることができる。適応シナプス荷重は、複数メモリスタの差動対および反ヘブとヘブ可塑性から形成されることができる。差動配列のシナプス荷重は、そのアトラクタ状態が計算上一通り揃ったセットを形成する論理関数である、ニューラルノード回路を形成するために使用される。
【０１２２】
さらに、開示された実施態様は、メタステーブルスイッチング素子の低いレベルのシミュレーションからメモリスティブデバイス、シナプス荷重、ニューラルノードそして最終的に高いレベルの機械学習機能、例えば、スパイク符号化、教師なしクラスタリング、教師ありおよび教師なし分類、複雑な信号予測、教師なしロボット作動ならびに組合せ最適化―その全てが生物学的神経系の、そしてリアルワールド応用性を持つ現代の機械学習アルゴリズムの主要能力、への経路も明示する。最終的に、開示された実施態様は、メモリスタレベルのハードウェアシミュレーションにおける、教師なしクラスタリングおよび教師あり分類を明示する。
【０１２３】
開示された実施態様の一部の態様がハードウェアに関連して実行でき、開示された実施態様の他の態様がソフトウェアに関連して実行できることがよく理解されることができる。なおも、開示された実施態様の他の実行したものは、ハードウェアおよびソフトウェア成分の組み合わせを成すことができる。例として、一部の実施態様では、本明細書で論じたメモリスティブデバイスは物理的な成分、例えば、電気回路などを介して実行されることができる一方、そのようなメモリスティブデバイスの他の態様はコンピュータベースのソフトウェア命令に従って操作することができる。
【０１２４】
当業者によってよく理解されるように、開示された実施態様は、方法、データ処理システムまたはコンピュータプログラム製品として実行されることができる。それゆえに、実施態様は、ハードウェアの実装全体（例えば、図１６〜１７のＩＣ９６０／シナプス成分９６２を参照されたい）、ソフトウェアの実施態様全体または全ての一般的に「回路」または「モジュール」と呼ばれるソフトウェアおよびハードウェア態様を組み合わせる実施態様の形を取ることができる。一部の実施態様は、例として、ＡＰＩ（アプリケーションプログラムインターフェース）に関連して実行されることができる。
【０１２５】
開示された手法は、（一部の実施態様で）媒体内で具体化されたコンピュータ使用に適したプログラムコードを有するコンピュータ使用に適した記憶媒体上のコンピュータプログラム製品の形を取ることができる。ハードディスク、ＵＳＢフラッシュドライブ、ＤＶＤ、ＣＤ−ＲＯＭ、光学式記憶デバイス、磁気記憶デバイスなどを包含する、任意の好適なコンピュータ読み取り可能媒体を使うことができる。
【０１２６】
本発明の操作を遂行するためのコンピュータプログラムコードは、オブジェクト指向プログラミング言語（例えば、JAVA、Ｃ＋＋など）で書かれることができる。しかし、本発明の操作を遂行するためのコンピュータプログラムコードは、従来型の手続き型プログラミング言語、例えば、「Ｃ」プログラミング言語または視覚指向プログラミング環境、例えば、例として、Visual Basicで書くこともできる。
【０１２７】
プログラムコードは、ユーザーのコンピュータまたは移動できるデバイス上だけで、一部ユーザーのコンピュータ上で、スタンドアローンソフトウェアパッケージとして、一部ユーザーのコンピュータ上かつ一部リモートコンピュータ上で、またはリモートコンピュータ上だけで実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）、ワイアレスデータネットワーク、例えば、ＷｉＦｉ、ＷｉＭａｘ、８０２．１１ｘおよびセルラーネットワークを通じてユーザーのコンピュータに接続されることができるか、またはほとんどの第三者がサポートするネットワーク（例えば、インターネットサービスプロバイダーを介してインターネットを通じて）を介して外部コンピュータに接続することができる。
【０１２８】
実施態様は、本発明の実施態様に従って、方法、システムならびにコンピュータプログラム製品およびデータ構造のグラフおよび／またはブロック図を参照しながら、少なくとも部分的に本明細書に記載されている。実例の各ブロックおよびブロックの組み合わせがコンピュータプログラム命令によって実行されることができることが理解される。これらのコンピュータプログラム命令は、汎用のコンピュータ、特殊目的コンピュータまたはマシンを作製するための他のプログラマブルデータ処理装置のプロセッサに提供されることができ、コンピュータまたは他のプログラマブルデータ処理装置プロセッサを介して実行する命令が本明細書で論じたブロック内に特定された機能／行為、例えば、例として、図１〜１３に関して示された様々な命令および方法論を実行するための手段を作る。
【０１２９】
これらのコンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置に指令して具体的な方式で機能することができるコンピュータ読み取り可能メモリに記憶されることもでき、コンピュータ読み取り可能メモリに記憶された命令は、ブロック内に特定された機能／行為を実行する命令手段を包含する製造品を作製する。
【０１３０】
コンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置上にロードされて、コンピュータが実行したプロセスを生成するためにコンピュータまたは他のプログラマブル装置上で果たされるべき一連の操作工程を引き起こすこともでき、コンピュータまたは他のプログラマブル装置上で実行する命令はブロック内に特定された機能／行為を実行するための工程を提供する。
【０１３１】
図１４〜１５は、本発明の実施態様が実行されることができるデータ処理環境例の図として提供される。図１４〜１５は、例示的にすぎず、開示された実施態様の態様または実施態様が実行されることができる環境についていかなる制限を主張または暗示することを意図するものではないことがよく理解されるべきである。開示された実施態様の本質および範囲を逸することなく、描かれた環境に多くの変形を加えることができる。
【０１３２】
図１４に図示するように、例として、一部の実施態様は、例として、中央処理装置９０１（または他のプロセッサ）、主記憶装置９０２、入力／出力コントローラ９０３および一部の実施態様ではＵＳＢ（ユニバーサルシリアルバス）９１１または他の適切な周辺接続を包含する、データ処理システム９００に関連して実行されることができる。システム９００は、キーボード９０４、入力デバイス９０５（例えば、ポインティングデバイス、例えば、マウス、トラックボール、ペンデバイスなど）、ディスプレイデバイス９０６および大容量記憶装置９０７（例えば、ハードディスク）も包含することができる。図示されたように、データ処理システム９００の様々な成分は、システムバス９１０または同様のアーキテクチャを通じて電子的に通信することができる。システムバス９１０は、例として、データ処理システム９００内のコンピュータ成分間のまたは他のデータ処理デバイス、成分、コンピュータなどからの／へのデータを転送する、例として、サブシステムであることができる。データ処理システム９００は、例として、デスクトップパーソナルコンピュータ、サーバー、ワイアレス手のひらサイズのデバイス（例えば、スマートフォン、テーブルコンピューティングデバイス、例えば、iPad、Androidデバイスなど）または他のタイプのコンピューティングデバイスであることができる。
【０１３３】
図１５は、図９に描かれたデータ処理システム９００の操作を指令するために採用されることができるコンピュータソフトウェアシステム９５０を図示する。主記憶装置９０２内および大容量記憶装置９０７上に記憶されたソフトウェアアプリケーション９５４は、一般的にカーネルまたはオペレーティングシステム９５１およびシェルまたはインターフェース９５３を包含することおよび／またはそれらに関連することができる。一つ以上のアプリケーションプログラム、例えば、モジュール９５２は、データ処理システム９００による実行のために「ロードされる」（すなわち、大容量記憶装置９０７から主記憶装置９０２に転送される）ことができる。図１５に示す例では、モジュール９５２は、例として、図１〜１３に関して本明細書に示され、論じられた一つ以上の論理命令または操作を果たすモジュールとして実行されることができる。モジュール９５２は、一部の実施態様では、ＡＨａＨモジュールおよび／またはＡＰＩモジュールとして実行されることができる。
【０１３４】
データ処理システム９００は、ユーザー９４９によってアクセス可能なユーザーインターフェース９５３を通じてユーザーコマンドおよびデータを受け取ることができる。これらの入力は、オペレーティングシステム９５１および／またはソフトウェアアプリケーション９５４およびその任意のソフトウェアモジュール９５２からの命令に従って、次に、データ処理システム９００によって作用されることができる。
【０１３５】
本明細書における議論は、このように、システムおよび方法が実行されることができる好適なコンピューティング環境の簡潔で一般的な説明を提供することを意図する。要することはないものの、開示された実施態様は、コンピュータ実行可能な命令、例えば、単一のコンピュータによって実行される、プログラムモジュールの一般的な文脈で記載される。ほとんどの場合、「モジュール」は、ソフトウェアアプリケーションを成す。
【０１３６】
一般的に、プログラムモジュール（例えば、モジュール９５２）は、具体的なタスクを果たすまたは具体的な抽象データ型および命令を実行する、ルーチン、サブルーチン、ソフトウェアアプリケーション、プログラム、オブジェクト、成分、データ構造などを非限定的に包含することができる。また、当業者は、開示された方法およびシステムが他のコンピュータシステム構成、例えば、例として、手のひらサイズのデバイス、マルチプロセッサシステム、データネットワーク、マイクロプロセッサベースのまたはプログラマブル消費者向け電子機器、ネットワーク化されたパーソナルコンピュータ、ミニコンピュータ、メインフレームコンピュータ、サーバーおよび同種のもので実施されることができることをよく理解する。
【０１３７】
本明細書で使われる用語モジュールが物理的デバイス（例えば、集積回路、ＡＰＩブロックなど）および／または具体的なタスクを果たすまたは具体的な抽象データ型を実行する、ルーチンおよびデータ構造の集合体を指すことができることに留意されたい。モジュールは、定数、データ型、変数および他のモジュールまたはルーチンによってアクセスされることができるルーチンを列挙するインターフェースと、通常プライベート（そのモジュールのみにアクセス可能な）であり、実際にモジュール内のルーチンを実行するソースコードを包含する実装との二つの部分からなることができる。用語モジュールは、単純にアプリケーション、例えば、特有のタスク、例えば、パターン認識、機械学習の性能をアシストするように設計されたコンピュータプログラムなどを指すこともできる。
【０１３８】
インターフェース９５３（例えば、グラフィカルユーザーインターフェース）は、結果をディスプレイする働きをすることができ、その際、ユーザーは追加的な入力を供給するか、具体的なセッションを終了することができる。一部の実施態様では、オペレーティングシステム９５１およびインターフェース９５３は、「windows」システムに関連して実行されることができる。もちろん、他のタイプのシステムが潜在的に可能であることがよく理解されることができる。例として、むしろ従来の「windows」システムよりも、他のオペレーションシステム、例えば、例として、オペレーティングシステム９５１およびインターフェース９５３に関してワイアレスシステムにおいてより一般に採用されるリアルタイムオペレーティングシステム（ＲＴＯＳ）が採用されることもできる。ソフトウェアアプリケーション９５４は、例として、図１〜１３に関して工程または論理操作、例えば、本明細書に示され記載したものを遂行するための命令を包含することができる、モジュール９５２を包含することができる。
【０１３９】
図１４〜１５は、このように、例として意図されたものであり、開示された実施態様のアーキテクチャ上の制限として意図されたものではない。また、そのような実施態様は、いかなる具体的なアプリケーションまたはコンピューティングもしくはデータ処理環境に対しても非限定的である。代わりに、開示された手法が種々のシステムおよびアプリケーションソフトウェアに有利に適用されることができることを当業者はよく理解する。また、開示された実施態様は、Macintosh、Unix、Linuxおよび同種のものを包含する種々の異なるコンピューティングプラットフォーム上で具体化されることができる。このように、ＡＨＡＨ則とその適用は、ソフトウェアアプリケーション、ソフトウェアモジュールなどに関連して、物理的なハードウェアデバイスと対応するソフトウェア自身としてか、またはシステム、例えば、図１６〜１７に示すようなもののいずれかとして実行されることができる。
【０１４０】
図１６〜１７は、電子集積回路（ＩＣ）９６０に関連するおよび／または集積されることができるシナプス成分モジュール９６２の代替例を図示する。ＩＣ９６２は、本明細書で図１〜１３に関して論じ図示したようにメモリスタベースのユニバーサル機械学習ビルディングブロックを成すことができる。そのようなビルディングブロックまたは物理的なモジュール９６２（ソフトウェアモジュールに対立するものとして）は、図１６に示すようにＩＣ９６０と集積されるかまたは図１７に示すようにＩＣ９６０に関連することができる。モジュール９６２は、このように、例えば、図１４〜１５に関して示され論じたソフトウェアアプリケーションに対立するものとして物理的な適応ハードウェアとして実行されることができるメモリおよび処理デバイスとして機能する。
【０１４１】
図１６〜１７に示す構成は、物理的なＩＣチップに関連して実行されるものの、例えば、図１４〜１５に示すようなソフトウェアと関連して実行されることもできる。モジュール９６２は、例として、各電極がメタステーブルスイッチの集合体、例えば、本明細書で以前に論じたＭＳＳ成分を介してそれに結合された一つ以上の入力線を含む出力電極の差動対を含む、ユニバーサル機械学習ビルディングブロック回路であることができる。
【０１４２】
一部の実施態様では、シナプス成分９６２を持つＩＣ９６０が図１４に示すプロセッサ９０１および主記憶装置９０２を置き換えることができることに留意されたい。そのような例では、ＩＣ９６０（シナプス成分９６２を包含するか、それに関連する）は、本明細書で論じたようにシナプス成分９６２がプロセッサおよびメモリ機能の両方を網羅するため、図１４に示すバス９１０に接続されることができる。換言すれば、シナプス成分９６２は、メモリであるプロセッサおよびプロセッサであるメモリとして機能する。
【０１４３】
シナプス成分９６２は、一つ以上のメタステーブルスイッチと、出力電極の差動対の中の各電極がメタステーブルスイッチを介してそれに結合された一群の入力線を包含することができる出力電極の差動対とを包含することができる、メモリスタベースのユニバーサル機械学習ビルディングブロックである。シナプス成分９６２は、このように、メモリとプロセッサとが統合された、新たなタイプの物理的な適応ハードウェアを成す。ＩＣ実装、例えば、ＩＣ９６０においては、ＩＣ９６０（シナプス成分９６２を包含する）は、スマートフォン、コンピュータ、サーバー、パッドコンピューティングデバイスその他を非限定的に包含するコンピューティングデバイスと共に使用するために適応されることができる。
【０１４４】
上記に基づいて、多数の実施態様、好ましい実施態様および代替実施態様が本明細書に開示されていることがよく理解されることができる。例として、一つの実施態様では、例として、一つ以上のメタステーブルスイッチと、出力電極の差動対の中の各電極がメタステーブルスイッチ（またはスイッチ）を介してそれに結合された複数の入力線を含む一つ以上の出力電極の差動対とを包含するユニバーサル機械学習ビルディングブロック装置が実行されることができる。一部の実施態様では、メタステーブルスイッチは、二状態素子であることができる。他の実施態様では、二状態素子は、二つの状態間を適用されたバイアスおよび温度の関数として確率的にスイッチすることができる。
【０１４５】
もう一つの実施態様では、少なくとも一つのＡＨＡＨノードが実行されることができる。もう一つの実施態様では、正（ポジティブ：positive）の各分類（クラス）と負（ネガティブ：negative）の各分類（クラス）との間のマージンを最大化するＡＨａＨ則に従って、少なくとも一つのＡＨａＨノードが機能する。もう一つの実施態様では、少なくとも一つのＡＨａＨノードは、ＡＨａＨ可塑性則を実行する複数の線形ニューロンを含む。なおも他の実施態様では、ＡＨａＨ分類器は、少なくとも一つのＡＨａＨノードを包含することができる。さらにもう一つの実施態様では、少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラが構成・提供されることができる。
【０１４６】
さらにもう一つの実施態様では、例として、少なくとも一つのメタステーブルスイッチを構成する工程または論理操作と、メモリスタベースのユニバーサル機械学習ビルディングブロックを生成するために出力電極の差動対の中の各電極が少なくとも一つのメタステーブルスイッチを介してそれに結合された複数の入力線を含む出力電極の差動対を提供する工程または論理操作とを包含する、ユニバーサル機械学習ビルディングブロック方法が実行されることができる。もう一つの実施態様では、工程または論理操作は、二状態素子を含む少なくとも一つのメタステーブルスイッチを形成して実行されることができる。
【０１４７】
もう一つの実施態様では、ＡＨａＨ可塑性則を実行する複数の線形ニューロンを導く工程または論理操作と、少なくとも一つのＡＨａＨノードが正の各分類（クラス）と負の各分類（クラス）との間のマージンを最大化するＡＨａＨ則に従って機能する、複数の線形ニューロンを含む少なくとも一つのＡＨａＨノードを作り出す工程または論理操作とを包含する機械学習方法が実行されることができる。もう一つの実施態様では、少なくとも一つのＡＨａＨノードを包含するＡＨａＨ分類器を包含する工程または論理操作が実行されることができる。なおももう一つの実施態様では、少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラを構成する工程または論理操作が提供されることができる。
【０１４８】
もう一つの実施態様では、例として、ＡＨａＨ可塑性則を実行する複数の線形ニューロンを導く工程と、少なくとも一つのＡＨａＨノードが正の各分類（クラス）と負の各分類（クラス）と間のマージン最大化するＡＨａＨ則に従って機能する、複数の線形ニューロンを含む少なくとも一つのＡＨａＨノードを作り出す工程のために実行可能なかつ構成される命令を含むコンピュータプログラムコードを具現するコンピュータ使用に適した媒体を包含する機械学習システムが実行されることができる。もう一つの実施態様では、そのような命令は、少なくとも一つのＡＨａＨノードを包含するＡＨａＨ分類器を提供するまたは作り出すためにさらに構成されることができる。なおももう一つの実施態様では、そのような命令は、少なくとも一つのＡＨａＨノードを包含するＡＨａＨクラスタラを提供するまたは作り出すためにさらに構成されることができる。
【０１４９】
先の通り開示されたならびに他のフィーチャおよび機能のバリエーションまたはそれらの代替が望ましく組み合わせられて多くの他の異なるシステムまたはアプリケーションにすることができることがよく理解される。それらにおいて、様々な今のところ予見できないか、予期せぬ代替、変形、バリエーションまたは改善がその後当業者によって作られることができ、下記の請求項によって網羅されることが意図されることもよく理解される。