(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-28
(54)【発明の名称】双安定抵抗結合システム
(51)【国際特許分類】
G06N 3/065 20230101AFI20240321BHJP
【FI】
G06N3/065
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023563208
(86)(22)【出願日】2022-04-15
(85)【翻訳文提出日】2023-11-14
(86)【国際出願番号】 US2022025001
(87)【国際公開番号】W WO2022221652
(87)【国際公開日】2022-10-20
(32)【優先日】2021-04-17
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】508144129
【氏名又は名称】ユニバーシティ オブ ロチェスター
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100153729
【氏名又は名称】森本 有一
(74)【代理人】
【識別番号】100202740
【氏名又は名称】増山 樹
(72)【発明者】
【氏名】マイケル ホアン
(72)【発明者】
【氏名】ジェリコ イグニャトビク
(72)【発明者】
【氏名】リチャード アフォアクワ
(72)【発明者】
【氏名】ウダイ クマール レディ ベンガラム
(72)【発明者】
【氏名】イーチアオ チャン
(57)【要約】
双安定抵抗結合システムは、複数の可視ノードと、複数の隠れノードと、複数の可視ノードのうちのある可視ノードと複数の隠れノードのうちのある隠れノードとにそれぞれ電気的に接続された複数の結合素子とを含み、複数の結合素子のそれぞれは、プログラマブル抵抗器を含む。また、ネットワーク内の第1及び第2ノードの結合装置、ならびに双安定抵抗結合システムの訓練方法も記載されている。
【選択図】
図1
【特許請求の範囲】
【請求項1】
双安定抵抗結合システムであって、
複数の可視ノードと、
複数の隠れノードと、
前記複数の可視ノードのうちのある可視ノードと前記複数の隠れノードのうちのある隠れノードとにそれぞれ電気的に接続された複数の結合素子と、を含み、
前記複数の結合素子のそれぞれは、プログラマブル抵抗器を含む、双安定抵抗結合システム。
【請求項2】
前記複数の結合素子のそれぞれは、2つのプログラマブル抵抗器を含む、請求項1に記載のシステム。
【請求項3】
各プログラマブル抵抗器は、ソース、ゲート及びドレインを有する電界効果トランジスタを含み、前記ソースと前記ゲートとの間にゲートキャパシタが接続される、請求項1または2に記載のシステム。
【請求項4】
前記複数の結合素子のそれぞれは、オーバフロー信号及びアンダーフロー信号を有するアナログカウンタを含み、前記オーバフロー信号は、前記プログラマブル抵抗器の値を増加させるように構成されており、前記アンダーフロー信号は、前記プログラマブル抵抗器の前記値を減少させるように構成される、請求項1~3のいずれか1項に記載のシステム。
【請求項5】
前記複数の可視ノードまたは前記複数の隠れノードのうちの少なくとも1つのノードはシグモイド素子を含み、前記シグモイド素子は、入力、出力、及び前記出力とコモンモード基準との間に接続された負荷抵抗器を有するインバータを含む、請求項1~4のいずれか1項に記載のシステム。
【請求項6】
前記複数の可視ノードまたは前記複数の隠れノードのうちの少なくとも1つのノードは、ランダムノイズ発生器を含み、前記ランダムノイズ発生器は、出力を有する2進乱数発生器と、前記出力に接続されたローパスフィルタとを含む、請求項1~5のいずれか1項に記載のシステム。
【請求項7】
第1の入力及び第2の入力を有するコンパレータをさらに含み、前記第1の入力はシグモイド素子の出力に接続され、前記第2の入力は前記2進乱数発生器のフィルタリングされた出力に接続される、請求項6に記載のシステム。
【請求項8】
前記複数の可視ノードまたは前記複数の隠れノードのうちの少なくとも1つのノードは、キャパシタと、前記キャパシタの両端の電圧を双安定とするように構成される、前記キャパシタの両端に接続されたフィードバックユニットとを含む、請求項1~7のいずれか1項に記載のシステム。
【請求項9】
前記複数の可視ノードまたは前記複数の隠れノードのうちの少なくとも1つのノードは、バッファを含む、請求項1~8のいずれか1項に記載のシステム。
【請求項10】
ネットワーク内の第1及び第2のノードを接続するための結合装置であって、
反転入力及び非反転入力と、
ドレイン、ゲート、及びソースをそれぞれ有する第1及び第2の電界効果トランジスタであって、前記第1の電界効果トランジスタの前記ドレインは前記非反転入力に接続され、前記第2の電界効果トランジスタの前記ドレインは前記反転入力に接続されている、前記第1及び第2の電界効果トランジスタと、
前記第1及び前記第2の電界効果トランジスタの前記ゲートと前記ソースの間にそれぞれ接続された第1及び第2のゲートキャパシタと、
前記第1及び前記第2の電界効果トランジスタの前記ソースに接続された合計出力と、
前記第1及び前記第2の電界効果トランジスタの前記ゲートに接続された電圧調整素子であって、制御信号に応答して前記第1及び前記第2の電界効果トランジスタの前記ゲートの電圧を調整するように構成された前記電圧調整素子と、を含む、結合装置。
【請求項11】
前記電圧調整素子は、アナログカウンタを含む、請求項10に記載の結合装置。
【請求項12】
前記第1または前記第2の電界効果トランジスタの前記ゲートに切り替え可能に接続された少なくとも1つの電流源をさらに含む、請求項10~11のいずれか1項に記載の結合装置。
【請求項13】
4つの電流源をさらに含み、1つの電流源は、前記第1及び前記第2の電界効果トランジスタの前記ゲートのそれぞれに切り替え可能に接続され、かつ正電圧またはグラウンドに接続される、請求項10~12のいずれか1項に記載の結合装置。
【請求項14】
前記電圧調整素子は、前記第1及び前記第2のゲートキャパシタの電荷量を増加または減少させるように構成された前記アナログカウンタのオーバフロー出力及びアンダーフロー出力をさらに含む、請求項11に記載の結合装置。
【請求項15】
前記第1及び前記第2の電界効果トランジスタは、Nチャネル電界効果トランジスタである、請求項10~14のいずれか1項に記載の結合装置。
【請求項16】
双安定抵抗結合システムの訓練方法であって、
前記双安定抵抗結合システム内の重み付け要素のセット及びバイアス要素のセットを初期化することと、
前記双安定抵抗結合システムの可視ノードのセットを第1の初期値セットに初期化することと、
前記可視ノードのセットを前記第1の初期値セットに一定期間でクランプし、隠れノードのセットを第1の隠れ値セットに落ち着かせることと、
前記第1の初期値セットと前記第1の隠れ値セットとの積に基づいて、少なくとも1つの重み付け要素のカウンタを増加させることと、
前記双安定抵抗結合システムの隠れノードのセットを、隠れ値のテーブルから選択されたランダムな値のセットに初期化することと、
可視ノードと隠れノードを第2の一定期間でアニールすることと、
前記可視ノード及び前記隠れノードのアニールされた値に基づいて、少なくとも1つの重み付け要素の前記カウンタを減少させることと、
前記少なくとも1つの重み付け要素の前記カウンタがオーバフローまたはアンダーフローした場合に、前記少なくとも1つの重み付け要素の重み付け値を増加または減少させることと、
前記可視ノードのセットを初期化するステップから、プログラム可能な数の学習ステップを繰り返すことと、を含む、訓練方法。
【請求項17】
前記隠れノードのセットを初期化するために使用される値のセットは、前のアニーリングステップからの対応する隠れ値のセットから取得される、請求項16に記載の方法。
【請求項18】
少なくとも1つのアナログ/デジタル変換器を使用して、前記システムから結合値を読み取るステップをさらに含む、請求項16に記載の方法。
【請求項19】
前記一定期間は、1ナノ秒以下の範囲である、請求項16~17のいずれか1項に記載の方法。
【請求項20】
前記第2の一定期間が、1ナノ秒以下の範囲である、請求項16~18のいずれか1項に記載の方法。
【請求項21】
前記隠れノードの前記アニールされた値を、アニール後の前記隠れ値のテーブルの中に格納するステップをさらに含む、請求項16~19のいずれか1項に記載の方法。
【発明の詳細な説明】
【背景技術】
【0001】
関連出願の相互参照
本出願は、2021年4月17日に出願された米国仮特許出願第63/176,247号に対する優先権を主張するものであり、その全体が参照により本明細書に組み込まれる。
【0002】
微分方程式を解いたり、ランダムサンプリングを行ったり等、自然界は常に多くの計算を行っていることが明らかである。例えば、トランジスタは、自然法則に基づいてオン/オフが可能であり、今日のほとんどのコンピュータの基礎となっている。しかし、これらの法則の使用は、例えば問題全体を解決するために、自然の計算能力をより高いレベルで利用することとは異なっている。実際、非常に強力なアルゴリズムのいくつかは、自然から着想を得ている。計算基板が自然を基礎とする場合には、その問題をフォンノイマンインタフェースにマッピングするよりも迅速かつ効率的に特定の問題集合を解くために使用可能であることは想像に難くない。このような努力の中で、最近急速な進歩を遂げているのがイジングマシンである。
【0003】
簡単に言えば、イジングマシンは自然を利用して、結合されたスピンのシステムのための低エネルギ状態を探す。さまざまな問題(実際には、すべてのNP完全問題)は、イジング式の等価最適化問題として表すことができる。既存のイジングマシンは、その大部分がプロトタイプ及びコンセプトの形態にあるが、最適化問題に対する著しく良好な性能及びエネルギ効率の見込みを既に示している。しかし、これらのシステムの真の魅力は、将来的な可能性にある。第一に、設計反復により、それらの計算能力及び効率は改善し続ける。第二に、新規のハードウェアにより、アルゴリズム(特に自然から着想を得たもの)の設計は、ハードウェアと共に進化し、問題解決のモダリティをより豊かに組み合わせることになる。
【0004】
イジングモデルは、スピンが結合したシステムのハミルトニアンを記述するために用いられる。スピンは1つの自由度を有し、2つの値(+1、-1)のうちのいずれかを取る。当該システムのエネルギは、スピンの対結合(J
ij)と、各スピンに対する何らかの外部場(μ)の相互作用(h
i)との関数である。結果として得られるハミルトニアンを以下の式1に示す。
【数1】
【0005】
そのようなハミルトニアンを有する物理システムは、当然ながら低エネルギ状態の方に傾向がある。あたかも自然が目的関数として式1を用いて最適化問題を解こうとしているかのようであるが、これは決して簡単なことではない。実際、状態空間のカーディナリティはスピンの数によって指数関数的に増加し、最適化問題はNP完全であり、これは、NP完全問題の元のリストの一部である、一般化された最大カット問題と容易に変換可能である。
【0006】
したがって、スピンの物理的なシステムが何らかの形でプログラム可能な結合パラメータ(式1のJijとμhi)を提供する場合、これは、イジング式(式1)で表すことができる最適化問題を解決するための専用コンピュータとして使用することができる。実際には、Karp NP完全集合に含まれるすべての問題は、それらのイジング式が導出される。さらに、問題が既にQUBO(quadratic unconstrained binary optimization:二次制約なしバイナリ最適化)式を有している場合、イジング式へのマッピングは、スピンにビットを置換するのと同じくらい簡単であり、即ち、σi=2bi-1となる。
【0007】
イジング式にマッピングし得る問題が多岐にわたるため、これらの問題を解決する自然ベースの計算システムの構築は大きな注目を集めている。大まかに言えば、イジングマシンの設計は4つのステップを経る。
【0008】
1)スピンを表す物理変数(量子ビット、光パルスの位相、またはキャパシタの電圧の極性など)を特定する。
【0009】
2)結合のメカニズムと、係数をどのようにプログラムするかを特定する。
【0010】
3)問題解決能力を、その動作理論(自然の「見えざる手」を明らかにする)と満足のいく実践結果の両方で実証する。
【0011】
4)優れた機械指標(解決時間、エネルギ消費量、及び構築コスト)を実証する。
【0012】
重要なのは、異なるアプローチが異なる基本的なトレードオフを提供し得ること、またさまざまな形成(gestation)速度を経る可能性があることである。したがって、観察されたプロトタイプの事例に基づいて一般的なアプローチを評価することは時期尚早である。
【0013】
最も早く、おそらく最もよく知られているイジングマシンのいくつかは、D-Waveによって販売されている量子アニーラである。量子アニーリング(QA)は、断熱性要件を緩和するという点で、断熱量子計算(AQC)とは異なる。QAは技術的にはサブセットとしてAQCを含むが、現在のD-Waveシステムは断熱的ではないため、理論的に基底状態に到達する保証はない。基底状態の保証がなければ、量子ビットのイジング物理学は、代替のものよりも他の既知の利点を有さない。量子デバイスを使ってスピンを表すことは、おそらく最適ではないと主張できる。第一に、これらのデバイスは、ノイズに対してはるかに敏感であるため、多くの電力を消費する極低温動作条件(D-Wave 2000qでは25KW)を必要とする。第二に、多数の量子ビットを結合させることは、他のスピンに比べて困難である可能性があり、これは、現在の機械がローカル結合ネットワークを使用する理由を説明している。その結果、一般的なグラフのトポロジの場合、これらのローカル結合マシンに必要とされるノード数が二次関数的に増加し、D-Wave 2000q上の公称2000ノードは、約64個の有効ノードのみに相当する。
【0014】
コヒーレントイジングマシン(CIM)は、いくつかの問題に対処する第2世代設計として考えることができる。T.Inagaki et al.(Science,vol.354,no.6312,pp.603-606,2016)では、2000ノードすべてが相互に結合可能であり、現在最も強力なイジングマシンであると思われる。CIMは、特別な光パルスをスピンとして使用するため、室温下で動作することができ、消費電力はわずか200W程度である。しかし、パルスは長さ1kmの光ファイバに収めなければならず、該システムでは厳しい温度安定性が要求されるため、何スピンも安定した動作状態を維持するのは困難である。
【0015】
CIMの動作原理は蔵本モデルによって観察できるので、理論的には他の発振器を用いても同様の目標を達成できる。これにより、第3世代といえる電子発振器ベースのイジングマシン(OIM)が数多く開発された。これらのシステムは、スピンにLCタンクを使用し、結合ユニットとして(プログラム可能な)抵抗を使用する。これらの電子発振器ベースのイジングマシンは、機械指標の観点から、以前の設計よりも大幅に改善されている。確かに、それらの正確な電力消費及び動作速度は、選択された正確なインダクタンス及び容量に依存するため、桁違いの範囲にわたる可能性がある。ただし、電力消費が1~10W程度のデスクトップサイズを実現することは困難ではなく、これは、電力消費が200W~25kWのキャビネットサイズの機械よりも大幅に改善される。しかしながら、オンチップ・インテグレーションでは、インダクタはしばしば実用上の課題の原因となる。これらは、面積集約型であり、品質係数の低下や位相ノイズの増加といった望ましくない寄生性を有し、そのすべてが、数千のオンチップ発振器の間で周波数の均一性と位相の同期性を維持する際に実用上の課題を引き起こす。
【0016】
異なるアーキテクチャを有する別の電子設計は、双安定抵抗結合イジングマシン(Bistable Resistively-coupled Ising Machine、BRIM)である。BRIMでは、スピンは、フィードバック回路によって制御されるキャパシタ電圧として実装され、双安定になっている。この設計はCMOS互換であり、(位相ではなく)電圧を使用してスピンを表すため、計算タスク用の付加的なアーキテクチャサポートに対する簡単なインタフェースが可能となる。したがって、本明細書で開示されたシステムは、BRIMと同様のベースライン基板を使用する。ここで説明されるのと同じ原理が、グルーロジックの量が異なるすべてのイジングマシンに直接的に適用できることに留意されたい。BRIMシステムに関するより詳細な情報は、2021年4月16日に出願された国際出願第PCT/US2021/070402号に見出すことができ、その内容全体が参照により本明細書に組み込まれる。
【0017】
エネルギの概念は、従来の最適化アルゴリズムだけでなく、エネルギーベースモデル(EBM)と総称される数多くの機械学習アルゴリズムにも使用されている。システムは、通常、2組の変数XとYで構成される(具体的な例として、Xが画像のピクセルを表し、Yが画像を分類するブール変数を表す)。状態のエネルギであるE(X,Y)が低い場合、その分類は良好である。多くのモデルでは、エネルギはイジング式に類似している。例えば、よく知られているボルツマンマシンのモデルでは、2組の変数の間の区別が無視され、各変数がσ
iと称される場合、エネルギはイジングモデルに相当する。
【数2】
【0018】
推論にボルツマンマシンを使用する場合、システムもイジングマシンの使用と同様であるが、重要な違いを伴う。いずれの場合にも、重み(Wij)はシステムに入力され、出力は低エネルギの状態(σi)となる。その違いは、変数/スピンの意味に由来する。ボルツマンマシンでは、スピンは、可視ユニット及び隠れユニットと呼ばれる2組の変数を含む。推論の間、可視ユニットは入力(例えば、画像)に「クランプ」され、隠れユニットのみが低エネルギ状態の検索において変化することが許される。
【0019】
重みが問題定式化の一部である最適化問題とは異なり、EBMでは、重みの最適なセットを得るために訓練が必要である。多くの機械学習アルゴリズムと同様に、これは、訓練サンプルのセットを反復している間、損失関数を下げる勾配降下法を使用することによって行われる。ここで強調すべき重要な点は、このような勾配降下アルゴリズムにおける主要な課題は、多くの場合、計算が困難な項を含み、近似アルゴリズムを必要とすることである。ここでも、自然計算基板は、一般的なフォンノイマンアルゴリズムに忠実に従う必要なく、その基板にとって便利または効率的なアプローチを可能にする。
【0020】
本開示では、訓練においても推論においても、多くの異なる方法でEBMを加速するのに役立つ物理的イジングマシンが示されている。この目的のために、フォンノイマンアーキテクチャに高度に最適化されたアルゴリズムとして広く使用されている制限付きボルツマンマシン(RBM)と呼ばれるボルツマンマシンの特殊なケースを選択した。RBM(及びその多層バリアント)は、専門学習及び教師なし学習に応用されている。例示的なRBMを
図1に示す。
【0021】
RBMは、
図1に示すように、可視ノード101と隠れノード102との間の接続のみを有し、2つの可視ノードの間または2つの隠れノードの間の接続は有さない。その結果、エネルギ関数が式3に示される。
【数3】
式中、W
i,jは可視ユニットv
iと隠れユニットh
jとの間の結合重みであり、
【数4】
及び
【数5】
は、対応する可視ユニット及び隠れユニットのバイアスである。
【0022】
他のニューラルネットワークと同様に、RBMは多層構成に積み重ねてディープネットワークを形成することができる。具体的には、2つの一般的なバリアントは、ディープビリーフネットワーク(DBN)とディープボルツマンマシン(DBM)である。これらのバリアントと、より単純なRBMとの間には微妙な違いがある。わかりやすくするため、本開示ではRBMに焦点を当て、複数の層を積み重ねる場合は従来のアプローチに従う。
【発明の概要】
【0023】
一態様では、双安定抵抗結合システムは、複数の可視ノードと、複数の隠れノードと、複数の可視ノードのうちのある可視ノードと複数の隠れノードのうちのある隠れノードとにそれぞれ電気的に接続された複数の結合素子とを含み、複数の結合素子のそれぞれは、プログラマブル抵抗器を含む。一実施形態では、複数の結合素子のそれぞれは、2つのプログラマブル抵抗器を含む。一実施形態では、各プログラマブル抵抗器は、ソース、ゲート及びドレインを有する電界効果トランジスタを含み、ソースとゲートとの間にゲートキャパシタが接続される。一実施形態では、複数の結合素子のそれぞれは、オーバフロー信号及びアンダーフロー信号を有するアナログカウンタを含み、オーバフロー信号は、プログラマブル抵抗器の値を増加させるように構成されており、アンダーフロー信号は、プログラマブル抵抗器の値を減少させるように構成される。
【0024】
一実施形態では、複数の可視ノードまたは複数の隠れノードのうちの少なくとも1つのノードはシグモイド素子を含み、該シグモイド素子は、入力、出力、及び出力とコモンモード基準との間に接続された負荷抵抗器を有するインバータを含む。一実施形態では、複数の可視ノードまたは複数の隠れノードのうちの少なくとも1つのノードは、ランダムノイズ発生器を含み、該ランダムノイズ発生器は、出力を有する2進乱数発生器と、出力に接続されたローパスフィルタとを含む。
【0025】
一実施形態では、このシステムは、第1の入力及び第2の入力を有するコンパレータをさらに含み、第1の入力はシグモイド素子の出力に接続され、第2の入力は2進乱数発生器のフィルタリングされた出力に接続される。一実施形態では、複数の可視ノードまたは複数の隠れノードのうちの少なくとも1つのノードは、キャパシタと、キャパシタ両端の電圧を双安定とするように構成される、キャパシタ両端に接続されたフィードバックユニットとを含む。一実施形態では、複数の可視ノードまたは複数の隠れノードのうちの少なくとも1つのノードは、バッファを含む。
【0026】
一態様では、ネットワーク内の第1及び第2のノードを接続するための結合装置は、反転入力及び非反転入力と、ドレイン、ゲート、及びソースをそれぞれ有する第1及び第2の電界効果トランジスタであって、第1の電界効果トランジスタのドレインは非反転入力に接続され、第2の電界効果トランジスタのドレインは反転入力に接続されている、該第1及び第2の電界効果トランジスタと、第1及び第2の電界効果トランジスタのゲートとソースの間にそれぞれ接続された第1及び第2のゲートキャパシタと、第1及び第2の電界効果トランジスタのソースに接続された合計出力と、第1及び第2の電界効果トランジスタのゲートに接続された電圧調整素子であって、制御信号に応答して第1及び第2の電界効果トランジスタのゲート電圧を調整するように構成された該電圧調整素子と、を含む。
【0027】
一実施形態では、電圧調整素子はアナログカウンタを含む。一実施形態では、当該装置は、第1または第2の電界効果トランジスタのゲートに切り替え可能に接続された少なくとも1つの電流源をさらに含む。一実施形態では、当該装置はさらに4つの電流源を含み、1つの電流源は、第1及び第2の電界効果トランジスタの各ゲートに切り替え可能に接続され、かつ正電圧またはグラウンドに接続される。一実施形態では、電圧調整素子は、第1及び第2のゲートキャパシタの電荷量を増加または減少させるように構成されたアナログカウンタのオーバフロー出力及びアンダーフロー出力をさらに含む。一実施形態では、第1及び第2の電界効果トランジスタは、Nチャネル電界効果トランジスタである。
【0028】
一態様では、双安定抵抗結合システムの訓練方法は、双安定抵抗結合システム内の重み付け要素のセット及びバイアス要素のセットを初期化することと、双安定抵抗結合システムの可視ノードのセットを第1の初期値セットに初期化することと、可視ノードのセットを第1の初期値セットに一定期間でクランプし、隠れノードのセットを第1の隠れ値セットに落ち着かせることと、第1の初期値セットと第1の隠れ値セットとの積に基づいて、少なくとも1つの重み付け要素のカウンタを増加させることと、双安定抵抗結合システムの隠れノードのセットを、隠れ値のテーブルから選択されたランダムな値のセットに初期化することと、可視ノードと隠れノードを第2の一定期間でアニールすることと、可視ノード及び隠れノードのアニールされた値に基づいて、少なくとも1つの重み付け要素のカウンタを減少させることと、少なくとも1つの重み付け要素のカウンタがオーバフローまたはアンダーフローした場合に、少なくとも1つの重み付け要素の重み付け値を増加または減少させることと、可視ノードのセットを初期化するステップから、プログラム可能な数の学習ステップを繰り返すことと、を含む。
【0029】
一実施形態では、隠れノードのセットを初期化するために使用される値のセットは、前のアニーリングステップからの対応する隠れ値のセットから取得される。一実施形態では、本方法は、少なくとも1つのアナログ/デジタル変換器を使用して、システムから結合値を読み取るステップをさらに含む。一実施形態では、一定期間は、1ナノ秒以下の範囲である。一実施形態では、第2の一定期間は、1ナノ秒以下の範囲である。一実施形態では、本方法は、隠れノードのアニールされた値を、アニール後の隠れ値のテーブルの中に格納するステップをさらに含む。
【0030】
前述の目的及び特徴、ならびに他の目的及び特徴は、以下の説明及び添付の図面を参照することにより明らかになる。これらの図面は、本発明の理解を提供するために含まれ、本明細書の一部を構成するものであり、同様の数字は同様の要素を表す。
【図面の簡単な説明】
【0031】
【
図2】プログラマブル抵抗結合及びプログラミングロジックを備えた双安定容量ノードを示す例示的な高レベルBRIM実装である。
【
図3】ノードバイアスを駆動するクランプユニット、結合メッシュ、及びプログラミングロジックを備えた、可視ノード及び隠れノードを示す高レベルRBM実装の図である。
【
図4】RBM訓練のための擬似コード対比発散アルゴリズムである。
【
図5】BRIMのエネルギ状態の分布を示すグラフである。
【
図6】機械が勾配に従っている複雑な設計のアーキテクチャ図である。
【
図8】例示的なノードの特定の回路要素の詳細図である。
【
図10】画像のバッチサイズが500の場合、異なるRBMを訓練するためのTPUとギブスサンプラに対するボルツマンサンプラの高速化を示すグラフである。
【
図11】画像のバッチサイズが500の場合、ボルツマンサンプラで正規化されたさまざまなベンチマークにおけるTPU及びギブスサンプラのエネルギ消費を示すグラフである。
【
図12】従来のアルゴリズム(CD-1及びCD-10)と、ボルツマン勾配フォロワ(BGF)に使用される開示された修正アルゴリズムの平均対数確率を示すグラフである。
【
図13A】従来のアルゴリズム(CD-1及びCD-10)と、ボルツマン勾配フォロワ(BGF)に使用される開示された修正アルゴリズムの平均対数確率を示すグラフである。
【
図13B】従来のアルゴリズム(CD-1及びCD-10)と、ボルツマン勾配フォロワ(BGF)に使用される開示された修正アルゴリズムの平均対数確率を示すグラフである。
【
図13C】従来のアルゴリズム(CD-1及びCD-10)と、ボルツマン勾配フォロワ(BGF)に使用される開示された修正アルゴリズムの平均対数確率を示すグラフである。
【
図13D】従来のアルゴリズム(CD-1及びCD-10)と、ボルツマン勾配フォロワ(BGF)に使用される開示された修正アルゴリズムの平均対数確率を示すグラフである。
【
図14A】注入されたノイズ量及び変動量を変化させた場合の、異なるモデルの平均対数確率の移動平均を示すグラフである。データは、10点の移動平均を使用して平滑化される。
【
図14B】注入されたノイズ量及び変動量を変化させた場合の、異なるモデルの平均対数確率の移動平均を示すグラフである。データは、10点の移動平均を使用して平滑化される。
【
図14C】注入されたノイズ量及び変動量を変化させた場合の、異なるモデルの平均対数確率の移動平均を示すグラフである。データは、10点の移動平均を使用して平滑化される。
【
図14D】注入されたノイズ量及び変動量を変化させた場合の、異なるモデルの平均対数確率の移動平均を示すグラフである。データは、10点の移動平均を使用して平滑化される。
【
図15A】注入されたノイズ量及び変動量を変化させた場合の、異なるモデルの平均絶対誤差(MAE)を示すグラフである。最終MAE範囲は0.771~0.765である。
【
図15B】注入されたノイズ量及び変動量を変化させた場合の、異なるモデルのRoc曲線を示すグラフである。最終AUC範囲は0.964~0.967である。
【
図16】CD及びBGFの訓練結果のグラウンドトゥルースに対するKLダイバージェンスの累積確率分布を示す。
【発明を実施するための形態】
【0032】
本発明の図面及び説明は、本発明の明確な理解に関連する要素を図示するために簡略化されているが、明確化のために、関連するシステム及び方法に見られる他の多くの要素を省略していることを理解されたい。当業者であれば、本発明を実施する際に他の要素及び/またはステップが望ましいかつ/または必要であると認識することができる。しかしながら、そのような要素及びステップは、当該技術分野で良く知られており、また本発明のより良い理解を促進するものではないため、そのような要素及びステップについての説明は本明細書では提供されない。本明細書の開示は、当業者に公知のこのような要素及び方法に対するすべての変動及び修正を対象とする。
【0033】
別途定義されない限り、本明細書で使用されるすべての技術用語及び科学用語は、本発明が属する当業者が一般に理解する意味と同一の意味を有する。本明細書に記載のものと同様もしくは同等の任意の方法及び物質が本発明の実施または試験において使用され得るが、例示的な方法及び材料は、以下に記載される。
【0034】
本明細書で使用される場合、次の用語のそれぞれは、この節においてそれに関連付けられた意味を有する。
【0035】
本明細書で使用される場合、冠詞「a」及び「an」は、冠詞の文法上の目的語のうちの1つまたは複数(すなわち、少なくとも1つ)を言う。例として、「(an)要素」は、1つ以上の要素を意味する。
【0036】
本明細書では、量、時間的持続時間などの測定可能な値に言及する際に使用される「約」は、そのような変動が適切であるとして、特定の値から±20%、±10%、±5%、±1%、及び±0.1%の変動を包含することを意味する。
【0037】
本開示を通じて、本発明の様々な態様を範囲形式で表すことができる。範囲形式の記述は、単に便宜及び簡略化のためのものであり、本発明の範囲に対する柔軟性のない制限と解釈されるべきではないことを理解されたい。したがって、範囲の記述は、可能なすべてのより狭い範囲及びその範囲内の個々の数値を具体的に開示したものとみなされるべきである。例えば、1~6などの範囲の記述は、1~3、1~4、1~5、2~4、2~6、3~6などといったより狭い範囲、ならびに該範囲に含まれる個々の数値、例えば1、2、2.7、3、4、5、5.3、6ならびにその間の全体的及び部分的な増分を具体的に開示したものとみなされるべきである。これは、範囲の幅に関係なく適用される。
【0038】
一態様では、本明細書で開示されるのは、付加的なアーキテクチャサポートの基礎となるイジングマシン基板である。本開示は、機械学習アプリケーションにおける訓練と推論との両方に適した新しいクラスの拡張イジングマシンを提供する。
【0039】
いくつかのイジングマシンは、最適化問題でより優れた性能及びエネルギ効率を既に示している。ハードウェアとアルゴリズムとの間の設計反復及び共進化を通して、自然ベースの計算システムからより多くの利点が期待される。開示された装置の一実施形態は、エネルギーベースの機械学習アルゴリズムを用いた訓練と推論との両方に適した拡張イジングマシンである。一実施形態では、イジング基板は、アルゴリズムの重要な部分を加速し、重要なスピードアップ及び効率向上を達成する。いくつかの実施形態では、より大幅な変更により、機械は、ハードウェア内で実質的に訓練を完了する自給自足の勾配フォロワとなる。これにより、TPUホストと比較して、約29倍のスピードアップと、約1000倍のエネルギ消費削減を実現することができる。
【0040】
本開示の一実施形態では、エネルギーベースの機械学習システムの訓練ステップは、機械のノードを接続する各結合ユニットにプログラマブル抵抗素子を使用することによって集積回路において実施され、ここで、抵抗要素の抵抗値は、実質的な部分が単一の結合ユニット専用のチップ面積の境界内に配置された電子回路を利用することにより、訓練プロセス中に格納、制御及び更新される。そうすることでエネルギが節約され、チップ全体の面積が減り、訓練速度が速くなる。本発明の他の実施形態では、単一ビット出力を連続時間アナログフィルタでローパスフィルタリングした乱数発生器を用いて、所定範囲に渡るランダムなアナログ値を生成し、ノード電圧の確率分布のランダムサンプリングを実現する。本発明の他の実施形態では、物理的イジングマシンの軌跡を利用して、(準)ボルツマン分布に従うネイチャーランダムサンプルを生成する。これにより、マルコフ連鎖モンテカルロアルゴリズム全体を結合ユニットの制御回路に効率よく埋め込むことができる。
【0041】
イジングマシン基板
本明細書で開示されるように、いくつかの物理的基板は、自然を利用してイジング式の最適化を実行することができる。原則として、機械学習アルゴリズムを加速する目的で、このような任意の基板を使用することができる。本明細書では、本明細書中でBRIMと称される集積電子設計を用いたこのようなシステムの1つが開示される。
図2は、BRIMアーキテクチャの高レベル図を示す。
【0042】
図2に示したアーキテクチャは、例えば、プログラマブル抵抗結合202を備えた双安定容量ノード201、204と、それに付随するプログラミングロジック203を示している。各対のノード(例えばノード201及び204)の間には、1つの双方向結合ユニット202が示されており、その結果、上三角形結合ネットワークが得られる。いくつかの実装形態では、結合ユニットは、2つの単方向部分から構成され、対称ネットワークを形成し得る。いくつかの実施形態では、プログラミングロジックは、例えば、結合素子に提供される値を格納するように構成された1つ以上のメモリ要素206を含み得る。いくつかの実施形態では、複数の結合ユニット、例えば結合ユニットの列全体は、所定のサイクルでプログラムする結合ユニットの1つ以上を選択するように構成されたマルチプレクサ207を介して、同じプログラミング構成回路に接続されてもよい。いくつかの実施形態では、プログラミングロジック203は、1つ以上のデジタル/アナログ変換器を含むことができ、例えば、結合ユニット202の構成で使用するために、メモリ206にビットストリングとして格納されたアナログ値を読み出すためのものである。
【0043】
図示の機械では、各ノード201,204は、キャパシタと、キャパシタを双安定(1または-1)にするフィードバックユニットとを含む。いくつかの実施形態では、可視ノードまたは隠れノードにおけるノードキャパシタは、10~100フェムトファラッド(fF)、または1~10fF、または1~50fF、または約50fFの範囲内の容量を有することができる。全対全プログラマブル抵抗器(例えば202)のメッシュは、システムが最適化しようとしているイジング式を表すのに役立つ。動的システムとして扱われる場合、ノード電圧を支配する微分方程式にリアプノフ解析を適用することができる。イジングエネルギーランドスケープの極小値はすべて、システムの安定状態であることが示される。より簡単に言えば、与えられた初期状態から開始して、結合ノードのこのシステムは、コントローラからの明示的なガイダンスなしに、極小値を探索する。いくつかの実施形態では、追加的なアニーリング制御を使用して、ランダムな「スピンフリップ」を注入することにより、極小値を回避する。これは、シミュレートされたアニーリングの際に、ゼロでない確率でエネルギが低い状態を受け入れることに類似する。
【0044】
RBMでは、ノードが二部グラフに分離される。このような特別なグラフの場合、イジングマシン基板のためのアーキテクチャを少し変更して、結合ネットワークの2つのエッジにノードを持つようにすることができる。
図3を参照すると、この構造では、可視ノード(例えば301)は隠れノード(例えば302)にのみ結合され得る。このレイアウトは、すべてのノード間の接続を可能にするものと比較して、スペース効率を著しく改善する。具体的な例として、ある開示されたベンチマークでは、784個の可視ノード(28×28ピクセル)及び500個の隠れノードを用いる。一般的な全対全イジング基材にそれらをマッピングするには、4倍多くの結合ユニット((784+500)
2vs784×500)が必要となる。
【0045】
最後に、RBMアルゴリズムの動作をサポートするために、イジングマシンのノードを拡張することができる。訓練及び推論の両方において、可視ノードまたは隠れノードを特定の値にクランプすることが一般的である。いくつかの実施形態では、装置は、本明細書で詳述されるようなプロセスの特定のフェーズ中に隠れノード(例えば302)及び/または可視ノード(例えば301)の値を保持するように構成されたクランプユニット303をさらに含み得る。一実施形態では、クランプユニット303は、アナログ電圧出力(複数可)がクランプされるノード(複数可)のノーダルキャパシタに接続される1つ以上のデジタル/アナログ変換器(DAC)を用いて実装することができる。一実施形態では、クランプユニットは、キャパシタ電圧を接地電圧または電源電圧のいずれかにクランプする1ビットDACのセットを有する。1つの重要な詳細は、可視ノードへの入力が、いくつかの実施形態ではマルチビット値であることである。このような実装では、マルチビットのデジタル/アナログ変換器及び/またはアナログ/デジタル変換器が必要とされる場合がある。ベースラインのイジングマシンでは、必要な結合ユニットの数がN
2(Nはノードの数)に比例するため、面積の大部分が結合ユニットに割り当てられる。よって、個々のノードの構造を変更しても、システムの複雑さ及びチップ面積に与える影響はほとんどない。
いくつかの実施形態では、システムは、バイアス値を保持する1つ以上の追加の結合ユニット、例えば
図3の結合ユニット304a及び304bを含み得る。例えば、以下の方程式4において、
【数6】
は、j
th番目の隠れノードに対するバイアス値であり、描かれた実施形態では、追加の結合ユニットとして実装される。一実施形態では、追加の結合ユニットは、例えばパワーレール電圧(例えば1V、3.3V、5V)とj
th番目の隠れノードの合計ユニットの入力との間に接続された
【数7】
に抵抗が比例するプログラマブル抵抗器を含む。得られた電流は、可視ノードv
iからの入力電流に加算され、j
th番目の隠れノードの最終状態が決定される。
【0046】
ギブスサンプラアーキテクチャ
RBMアクセラレータの1つのバリアントは、より従来的であり、単純にイジング基板を活用して、ハードウェアに自然に適合したソフトウェアアルゴリズムの一部分を加速する。便宜上、当該のアクセラレータ設計は、
図4に示す従来のギブスサンプリングベースのアルゴリズムに従うので、本明細書ではギブスサンプラと称する。
【0047】
図4のアルゴリズムに示すように、訓練ループ(7行目から18行目)には、v
pos、h
posとv
neg、h
negの繰り返し計算が含まれる。一言で言えば、アルゴリズムは確率的勾配降下法であり、訓練ループはすべての重みW
ijについて確率的勾配を計算している。いわゆる正相(8、9行目)では、訓練サンプルv
posが可視ノードにクランプされ、隠れノードh
posの対応するサンプルが以下の条件付き確率式に基づいて生成され、
【数8】
ここで、σ(x)はロジスティック関数である。
【数9】
【0048】
負相(
図4の12、13行目)では、kステップのギブスサンプリングが行われる。現在の隠れノードの値を維持しながら、新たな可視ノードのセットが確率で生成され、ここでその確率は式5に示される。
【数10】
【0049】
そこから、更新された可視ノードは投影し戻され、更新された隠れノードが生成され、マルコフ連鎖モンテカルロ(MCMC)アルゴリズムの1つの完全なステップが形成される。原則として、MCMCアルゴリズムでこのようなステップを行うことで、サンプリングがかなり悪くなる。実際には、コストとサンプリングの品質とのバランスを取るために、少数のkステップが選択される。このようなkステップの対比発散アルゴリズムは、しばしばCD-kと称される。
【0050】
学習ステップごとに、現在の重み行列[W
ij]
M×Nは、各ユニットR
ijにおける抵抗が次の式に比例するように結合アレイにプログラムされる。
【数11】
【0051】
このステップは、単体のイジングマシンで最適化式をプログラミングするのと類似している。ノード(例えば可視)の1組がさらに固定値にクランプされる場合、各結合ユニットは、可視ノードの電圧をプログラマブル結合ユニットの抵抗で除算したものに等しい電流を生成し、これは、行列の対応する重みを乗算することに等しい。したがって、各隠れノードは、列全体の電流の合計を参照する。このように使用することで、結合アレイは効率的にベクトルと行列の乗算演算を生成する。
【0052】
この段階では、得られた電流を読み出すのではなく、ロジスティック関数の作用を生じさせる非線形回路に電流を流す。実際には、適切に構成された場合、単純なインバータは、この関数を優良に近似させることができる。最後に、ロジスティック関数の出力は、ノードが1である確率である。これは、比較的簡単な回路、すなわち疑似ランダム電圧レベルが供給される他方の入力端を備えたコンパレータによって支援することもできる。高レベルの構成ブロック図は
図8に示されており、以下に回路実装の詳細を説明する。
【0053】
いくつかの実施形態では、記載されたアーキテクチャサポートにより、
図4のアルゴリズムの訓練ループの多くがハードウェアにオフロードされる。残りの動作は、いくつかの実施形態では、TPUなどのデジタル機能ユニット上で実行されてもよいが、他の実施形態では、本明細書で開示されたハードウェア実装が、
図4のアルゴリズムのすべての機能を実行してもよい。1つの例示的な動作シーケンスは、以下の通りである。
【0054】
1)TPUを初期化する。
【0055】
2)ランダム結合行列とイジング基板へのバイアスをプログラミングする。
【0056】
3)可視ユニットを訓練サンプル(vpos)にクランプする。
【0057】
4)イジング基板の動作が終了した後に隠れユニット(hpos)を読み取る。
【0058】
5)隠れユニットと可視ユニットを交互にクランプして、反対側のサンプルを生成することにより、ギブスサンプリングのkステップを実行する。
【0059】
6)可視ユニット(vneg)と隠れユニット(hneg)から最終値を読み出す。
【0060】
7)(TPU上で)新たな結合行列及びバイアスを計算する。
【0061】
8)後続の学習ステップについて、ステップ2から繰り返す。
【0062】
ボルツマン勾配フォロワアーキテクチャ
上述したシステムは、デジタルユニットを改良したものである。しかしながら、これは主に、近似アナログ実装による効率向上によってもたらされる。アルゴリズム全体が一部の自然プロセスを活用できる場合には、自然ベースの計算システムの利点がはるかに大きくなることが多い。そのためには、アルゴリズムの意図をより深く理解する必要がある。
【0063】
RBMでは、確率分布モデルで訓練データを捕捉することが目標である。確率は、ボルツマン分布(名称の由来)のように、ある状態のエネルギに指数関数的に関係する。
【数12】
【0064】
明らかに、これらの確率を合計して1にする必要があり、したがって、特定の状態(v、h)の確率に関する式は以下の通りである。
【数13】
【0065】
訓練データを「捕捉」することは、機械のモデル(重み及びバイアス)が、すべてのT個の訓練サンプルの確率を最大化することを意味する。換言すれば、
【数14】
を最大化し、ここで、v
(t)はt
th番目の訓練サンプルであり、または同等に対数確率の和
【数15】
を最大化する。
【数16】
に注意されたい。確率はパラメータ(結合重みとバイアス)の関数であるため、各パラメータの勾配に従う。結合パラメータに関して、勾配は次の通りである。
【数17】
【0066】
表記を明確するために、勾配に対する1つの訓練サンプル(u=v
(t))の寄与のみが用いられ、焦点は分子の最初の部分にある。
【数18】
【0067】
ここで、<・>dataという表記は、データに対する期待値を意味し、すなわち、データを一定(u)に保ち、すべての可能なhにわたって平均化することを意味する。
【0068】
同じステップに続いて、勾配の第2の部分
【数19】
は以下である。
【数20】
【0069】
ここで、<・>modelという表記は、現在のモデル(結合パラメータ及びバイアス)によって与えられる状態空間全体に対する期待値を意味する。
【0070】
図示されているように、任意のパラメータの勾配を計算するためには、多数の状態の期待値を計算する必要があり、非実用的である。一般的な解決策は、MCMCアルゴリズム(例えば、CD-k)であり、これはイジング定式化問題を解決する際のシミュレートされたアニーリングと全く同様である。実際には、両方のケースにおいて、マルコフ連鎖は時間不均質である。
【0071】
イジングマシン基板は、特別なマルコフ連鎖と見なすために使用することができ、実質的に状態空間の一種のサンプリングを行う。
図5は、開示されたイジング基板が訪れる状態のエネルギの累積分布と、同じエネルギのセットに対するボルツマン分布のフィット曲線を示す。この一致は、このイジング基材がボルツマンサンプラと考えられることを示唆している。このようなサンプラを使用し、負相のサンプル(
図4のアルゴリズムの11~14行目)を生成して、モデル期待値<v
negh
neg>を計算することができる。
【0072】
イジング基板は、何らかの初期条件に初期化されると、システムの支配的な微分方程式及びアニーリング制御の両方によって指示されるエネルギ地形をトラバースするように進む。これは状態空間を「サンプリング」する効果を有し、CD-kのアルゴリズムによるランダムウォークよりも優れたサンプルがほぼ間違いなく生成される。しかし、サンプルの生成は、ホストコンピューターが通常アクセスし、後処理して期待値を得られるよりもはるかに速い。したがって、本明細書で開示されるのは、より直接的なアプローチであり、ここで、サンプリングされた期待値(<vihj>dataまたは<vihj>model)は、ホストを介さずに、イジング基板内部のモデルパラメータ(例えば、Wij)に直接加算または減算される。
【0073】
CD-kアルゴリズムでは、蓄積は以下のように表現され、ここで、<・>
sはサンプルsの集合に対する期待値を示す。
【数21】
【0074】
ここで、期待値は、パラメータを次の値に更新するために使用される前に、(例えば、n=100)サンプルのミニバッチにわたって蓄積される。nの選択は、通常、利便性及びある程度の試行錯誤の問題である。実装の便宜上、サンプルは異なるミニバッチ構成で蓄積され、純粋なデジタルカウンタは開示された結合ユニットよりも著しく大きく、消費電力も大きくなる。幸いなことに、このようなカウンタは、ノイズによって引き起こされるエラーと引き換えに、掛かる面積及びエネルギがはるかに少ないアナログ回路を使用して作製することができる。いくつかの実施形態では、アナログアップダウンカウンタが使用される。任意の増加または減少がカウンタに作用し、カウンタがオーバフローまたはアンダーフローした場合にのみ、適切なキャパシタを充電または放電することによってWijを実際に調整する。
【0075】
要約すると、開示された設計の一実施形態の正味の結果は、固定のミニバッチサイズを使用する代わりに、開示された機械が可変のミニバッチサイズを有効に使用することである。ミニバッチはデータに依存するため、パラメータごとに異なる。さらに、カウンタの回路実装は、勾配の確率的サンプリングに起因するノイズに加えて、効果的なノイズを追加する。すべての非理想性は、システムの評価時に忠実にモデル化される。ここで、開示された学習アルゴリズムがバイアスのかかった推定量を生成するか否かについて、細かい指摘ができる。経験分析によると、推定バイアスは最終的な精度測定には影響を与えないように思われる。実際には、いくつかの実施形態では、開示された修正は、一般的に使用されているアルゴリズムからのバイアスを低減すると思われる。これについては、以下の実験例#2でさらに詳しく説明する。
【0076】
負相サンプルの場合、p個の独立したランダムウォークを可能にするために、隠れユニット(h(k)、k=1..p)に対してp個の異なる初期条件が使用される。これらは、しばしばp粒子と呼ばれる。各正相の後、粒子の1つ(例えば、h(3))がロードされ、イジングマシンのアニーリングが実行される(フォンノイマンアルゴリズムのランダムウォークに相当)。いくつかの実施形態では、アニーリング時間は、5ns未満、4ns未満、3ns未満、2ns未満、1ns未満、500ps未満、約1nsまたは任意の他の適切な範囲である。次に、vneghnegのサンプルが取られ、得られた隠れユニットの値が、ロードされたp粒子(この場合はh(3))の位置に戻って格納される。いくつかの実施形態では、結果を異なる位置に格納することができ、例えば、異なるp粒子の位置、または既存のp粒子とは異なる位置に格納することができる。
【0077】
パラメータは、設定可能な抵抗器のコンダクタンスによって物理的に表される。抵抗器は、可変のゲート/ソース電圧を有するトランジスタによって実装される。パラメータの増減は、ゲート電圧を上昇または下降させることによって達成することができる。このことは、実効ゲートキャパシタに接続された充放電回路を短時間オンにすることによって実現できる。これは、回路素子に複数の非線形性の問題があるため、考えているほど容易ではないことが判明する。その結果、値が0に近い場合、勾配降下がより遅くなる。開示された機械の全体的な有効性に影響を及ぼさないが、いくつかの実施形態では、この問題が大幅に軽減されるような、わずかに関係するバージョンが使用される(詳細は後述)。
【0078】
最後に、ここで全体の学習が(拡張)イジング基板内で行われるため、結合ユニットはより大きく、より複雑になる。さらに、訓練された結果は、学習プロセスの最後に読み出される必要があるため、コストと表面積が高い追加のアナログ/デジタル変換器(ADC)が必要となる。それにもかかわらず、それらは、アルゴリズムの最後に1回だけ使用される。
【0079】
要するに、このアーキテクチャは、いくつかの重要な新たな回路と、動作アルゴリズムに対する小さな修正とを必要としているが、これは、従来のソフトウェア実装の意図を実行するものである。本明細書で実証されるように、重要なノイズを考慮しても、結果として得られる品質はソフトウェア実装と変わらない。
【0080】
図6は、開示されたボルツマン勾配フォロワアーキテクチャの一実施形態を示す。重要な付加部分は、結合ユニット(例えば601)であり、そこで、重みとして機能するプログラマブル抵抗器602を適切な位置に調整することができる。これは、プログラマブル抵抗器として機能するトランジスタのゲート電圧を調整する、制御された充放電パルスによって達成される。このアーキテクチャでは、デジタル(ホスト)コンピュータは、主に、システムのセットアップ、固定周波数でのデータの供給、最終的な結果の読み取りなど、より多くの周辺的な役割を担っている。この動作は、以下のように記述され得る。
【0081】
1)重み及びバイアスを初期化する。(いくつかの実施形態では、重みは小さなランダム値に初期化される。これは、確かにハードウェア自体によって実装することができる。しかしながら、プログラム可能な初期条件は、特別な目的(例えば、研究)のために役立つ場合がある。
【0082】
2)次いで、ホストは、可視ユニットのラッチに訓練サンプルを送信する。
【0083】
3)機械はデータをクランプし、隠れユニットが落ち着くまで所定の時間(例えば、1ns以下)待機する。
【0084】
4)得られたサンプル(vposhpos)は、Wijのカウンタを増加するために使用される。例えば、vposとhposの両方が1の場合、カウンタWijは定数値だけ増加される。
【0085】
5)その後、機械はp個の粒子のうちの1つをロードし、例えば1ns以下のアニーリング処理を開始する。
【0086】
6)アニーリング後、得られたサンプル(vneghneg)はWijのアナログカウンタを減少するために使用される。例えば、vnegとhnegの両方が1の場合、カウンタWijは定数値だけ減少される。したがって、カウンタの増加または減少は、vとhの積が1に等しい場合にのみ生じ、そうでなければカウンタは増加または減少されない。増分または減分は、学習率に依存する。
【0087】
7)いずれかのカウンタがオーバフローまたはアンダーフローすると、充放電回路が作動してWijを固定量だけ増加または減少し、(アナログ)カウンタはリセットされる。
【0088】
8)ステップ(2~7)のプロセスが、プログラム可能な数の学習ステップについて繰り返される。その後、ADCは、結合電圧を1列ずつ読み出す。
【0089】
回路
ベースラインのイジング基板を実装するために必要な回路に加えて、RBMアルゴリズムに従って確率的にするためにノードに追加回路が必要であり、その回路を
図7にまとめた。具体的には、電流加算回路、シグモイド関数及び乱数発生器である。最後に、ボルツマン勾配フォロワアーキテクチャには、結合ユニットが必要とされる。いずれも詳細は後述する。
【0090】
電流加算回路701は、重畳しない2つのクロック位相(φ及びφ’)で実行される。リセット段階(φ’)の間、隠れノードキャパシタ711と、可視ノードを隠れノードh
jに接続する列バスとの両方が、V
CM=V
dd/2にプリチャージされる。後続の積分段階(φ)の間、キャパシタ711は列バスに接続され、固定時間間隔t
int(例えば、5ns以下、4ns以下、3ns以下、2ns以下、1ns以下、500ps以下など)の間ですべての電流を積分し、
【数22】
に等しい出力電圧を生成し、シグモイドユニット702に送信する。
【0091】
一般に、シグモイド関数は単調であり、ベル形の一次導関数を有している。同様の特性を示す最も簡単な回路は、
図8にシグモイドユニット702の詳細図に示すように、インバータである。シグモイドユニットとしてインバータを使用する前に、いくつかの問題に対処する必要がある。第1に、ロジックゲートとして使用される典型的なインバータの伝達関数は、3つの別個の領域(すなわち、電力レールに近い2つの三極管領域と、インバータの閾値付近の高ゲインに起因する中央の急峻な領域)で構成されるが、シグモイド関数は、典型的にはより滑らかな伝達関数を有する。トランジスタのチャネル長を増加させ、出力に負荷抵抗器801を追加することで達成できるゲインを低減し、それによって、インバータの伝達関数をシグモイド関数により近づけることができる。さまざまな実施形態では、負荷抵抗器801は、例えば3kΩ~30GΩ、または3kΩ~100kΩ、または3kΩ~1ΜΩ、または1ΜΩ~100ΜΩ、または1ΜΩ~1GΩ、または1GΩ~30GΩ、または任意の他の適切な範囲の抵抗を有することができる。
【0092】
第2の問題は、インバータの伝達関数が、一般的なシグモイド関数の垂直反転画像であることで、これは後段で追加の反転を導入することで軽減される。一例として、
図8の素子802に示すように、反転コンパレータを使用することでこの影響を軽減することができる。
【0093】
電子デバイスから発生する熱ノイズは、ランダム性を生成するために使用され得る。
図8の素子803に示す回路は、乱数発生器(RNG)の一種であり、その動作は以下の通りである。φが低いとき、ノードA(831)とノードB(832)は、準安定点であるV
ddに引き上げられる。φが高くなると、回路は評価段階に入り、両ノードがインバータのスイッチング点に向かって放電し、この時点での大きなゲインがノードAまたはBの一方をV
ddに引き込み、他方は示差熱ノイズの符号に応じてグラウンドに引き下げられる。RNG回路自体は、バイナリランダムシーケンス(すなわち、出力はV
ddまたは0のいずれか)を生成するため、シグモイド関数の出力で確率的サンプリングを達成するのに直接適していない。しかし、RNG803の出力におけるバイナリランダムシーケンスは、
図8に示すように、RCローパスフィルタ804を適用することによって、0からV
ddまで一様に分布するホワイトノイズに容易に変換される。その後、得られたホワイトノイズは、標準的なダイナミックコンパレータ802でシグモイド関数の出力と比較され、確率的サンプリングが実現される。さまざまな実施形態では、ローパスフィルタ804は、5GHz未満、2GHz未満、1GHz未満、500MHz未満、100MHz未満の通過帯域または任意の他の適切な通過帯域を有することができる。
【0094】
図9を参照すると、2つのプログラマブル抵抗器(
【数23】
及び
【数24】
)と、4つの電流源(901a、901b、901c、及び901d)と、2段8ビットのアナログカウンタ902とを含む例示的な結合ユニットが示される。RBMの正負両方の重みを表すために、2つのプログラマブル抵抗器が使用されている。
図9における
【数25】
は実際の入力を表し、
【数26】
は
【数27】
を表す。
【数28】
と
【数29】
は常に逆方向に更新され、すなわち
【数30】
がデルタ分だけ増加したら、
【数31】
がデルタ分だけ減少することに留意されたい。
【0095】
これは、1対の対角電流源(例えば、901aと901d)のみをオンにすることで達成される。初期化段階では、プログラミングロジック(
図3を参照)のデジタル/時間変換器(DTC)は、ゲートキャパシタを充電することによって、
【数32】
及び
【数33】
のゲート電圧をランダムな値に設定し、これはランダム重みに変換される。状態のサンプリング中、
図7に示すように、ノードXで
【数34】
と
【数35】
の電流が合計され、その後サンプリングされる。いくつかの実施形態では、アナログカウンタ902は、2つのカスケード接続された4ビット段で構成される。カウンタは、v
ih
j値に基づいて、正相の間に増加され、負相の間に減少される。図中のφ
1とφ
2は、それぞれアナログカウンタのオーバフロー信号とアンダーフロー信号を表し、これらは、
【数36】
と
【数37】
のゲート容量の充電(または放電)に使用される。重みに加えるべきデルタの量は、学習率に依存する。したがって、オーバフロー信号またはアンダーフロー信号のパルス幅を変更することによって、ゲート容量への注入が必要な電荷量を制御することが可能となる。このようにして、重みを更新することができる。
【実施例】
【0096】
実験例
以下の実験例を参照して、本発明をさらに詳細に説明する。これらの実施例は、例示説明の目的で提供されるにすぎず、別途明記されない限り、限定することを意図するものではない。したがって、本発明は、以下の実施例に限定されるものとは何ら解釈されるべきものではなく、本明細書で提供される教示の結果として明らかになる任意かつすべての変動を包含すると解釈されるべきである。
【0097】
これ以上の説明は省略するが、当業者であれば、前述の説明及び以下の例示を使用して、本発明のシステム及び方法を製造し、利用することができると考えられる。したがって、以下の実施例は、本発明の例示的な実施形態を具体的に示すものであり、いかなる意味においても本開示の残りの部分を制限するものとして解釈されるべきではない。
【0098】
開示されたEBM用拡張イジング基板の特性をよりよく理解するため、開示された設計と、TPUを用いた実装との間でさまざまな指標を比較した。結果を見るときに、進化的な観点が必要であることは注目に値する。デジタル数値アーキテクチャと自然ベースの計算システムの双方が進化する。設計の改善により、それらの指標に大きな変化を引き起こすことができる。さらに重要なことは、2つのグループの境界線は不鮮明になり続け、相互に影響を与え合うことは非常に意図された結果である。
【0099】
以下の実験例では、ベンチマークRBMとDBNモデルを含む実験設定について説明し、次に、エネルギ効率とスループットの観点から、TPUと開示されたアナログ設計のノイズレスモデルとの定量的比較を示し、最後に、システムの挙動を理解するのに役立ついくつかの詳細な分析を紹介する。
【0100】
実験#1-実験設定
考察したシステムを評価するために、システムを、画像分類、推奨システム及び異常検出などのさまざまなアプリケーションで訓練した。画像分類には、手書き画像(MNIST)、日本語の文字(KMNIST)、ファッション画像(FMNIST)、拡張手書きアルファベット画像(EMNIST)、カラー画像(CIFAR10)、及び玩具のデータセット(SmallNorb)を含むさまざまなデータセットを使用した。画像は、28×28グレースケール(NIST)~96×96グレースケール(SmallNorb)、及び32×32カラー(CIFAR10)の範囲である。RBMとDBNアルゴリズムが使用して、すべてのNISTデータセットを訓練し、またCIFAR10とSmallNorbデータセットには畳み込みRBMアルゴリズムを使用した。RBMを推奨システム及び異常検出器として訓練するために、それぞれ100kのMovieLensデータセット及び「European Credit Card Fraud Detection」データセットを使用した。これらのモデルを訓練するために使用された学習率は0.1であり、RBM及びDBN構成のサイズを表1に示す。RBMは教師なしモデルであるため、訓練の品質を定量化する1つの方法は、アニールされた重要度サンプリングを用いて測定可能な訓練サンプルの平均対数確率である。また、画像分類のためのロジスティック回帰層を最後に使用した分類精度、テストデータ及び推奨システムのための投影データの平均絶対誤差(MAE)、ならびに異常検出のための受信機動作特性(ROC)曲線下の面積など、いくつかの一般的な指標も報告されている。
【表1】
【0101】
開示された設計のモデリングは比較的簡単である。システムは、セットの中で最大の問題に適合するのに十分なノードを有すると想定される。したがって、実行時間は、反復回数と反復ごとのサイクル数との積である。開示されたハードウェアシステム上で実行されないものは、ベースラインと同じTPUを含むと想定されるホストマシン上で実行される。
【0102】
多くの変数が関与し、すべてのパラメータが正確に推定されていると装うことは欺瞞的であるため、開示されたシステムの一次分析が望まれる。大まかに言えば、報告された結果は一桁以内の正確さであるべきだと考えられる。言い換えれば、正確な設計に従った実際の実装が、約3倍超の良好な結果、または3倍超の悪い結果を引き起こす可能性が極めて低い。すべてのパラメータが同じ幅の信頼領域を有するわけではない。実行時間は、例えば、単純に繰り返し反復の結果であるため厳しい制約を有し、回路は確実に、比較的控え目なサイクル時間を満たすように設計され得る。面積及び電力(特に、DTCなどの、開示された設計用にカスタマイズされていない要素)には、それなりに大きな設計空間があるため、使用される数値が、現在の既製品で選択され得た指標の最良の推定値に過ぎない。トランジスタのサイズは、ノイズを適度なレベルに保つために決定されている。このような研究の最大の懸念事項は、提案されたシステムが間違いなく機能するか否かである。最大の未知数は、本明細書においていくつかの感度分析が提供されるノイズの集合的な影響である。
【0103】
実行速度
まず、ギブスサンプラとボルツマン勾配フォロワ(BGF)の2つの提案アーキテクチャの実行速度を比較する。ギブスサンプラ及びBGFの動作周波数は1GHzである。比較のために、TPU(v1)をベースラインとして使用する。TPUは、700MHzのクロック周波数で8ビットの固定ポイント動作を実行するようにモデル化された。開示されたデジタル制御についても同じ周波数を想定した。
【0104】
図10は、異なるベンチマークのスピードアップのグラフを示す。図示されているように、大規模なネットワークでは、ハードウェアの大部分が利用され、速度の利点が増大する。当然ながら、問題が単一のチップでマッピングできる範囲よりも大きい場合には、マルチチップソリューションが必要となるか、または計算の一部が、ホスト上など他の場所で実行する必要がある。これらの実施例で使用されたデータセットは、すべて小さいダイの内部に快適に収まる。したがって、この実施例では、シングルチップ分析だけに焦点を当てる。
【0105】
全体として、一次近似では、ギブスサンプラまたはボルツマン勾配フォロワをTPUアレイに追加すると、面積はわずかに増加するが、速度は幾何学的平均で2倍(ギブス)または29倍(BGF)向上する。
【0106】
エネルギ及び面積
次に、より不確実性の高いエネルギ消費について検討した。システム全体の結果の推定を議論する前に、以下では、簡略化した第一原理分析を出発点として使用する。
【0107】
イジング基板の基本効率の主な源は、多くのアルゴリズムが自然を模倣しているのに対し、開示されたハードウェアは、その自然を直接具現化することである。例えば、MCMCの典型的なステップでは、1つのノードを反転させるには、約O(N)の乗算累積(MAC)演算に続いて何らかの確率サンプリングが必要となる。確率サンプリングを無視すると、各MAC演算のコストは、pJほどとなる。論じられた問題では、N≒1000。したがって、このような反転には、従来のデジタル計算を用いてnJほどの反転が必要とされる。対照的に、BRIMでは、ノードを反転させるには、ノードキャパシタに充放電を行う電流の分散ネットワークが必要である。ノードキャパシタが50fFほど、電圧が約1Vである場合、ノードの反転は50fJほどとなる。したがって、イジング基板は、従来の計算基板と比較して約4桁も効率が高くなる可能性がある。
【0108】
システム全体に関して言えば、エネルギ節約は、上記の簡単な分析に含まれていない複数の要因に依存している。電力/エネルギの推定を得るために、Generic Process Design Kit(GPDK045)を使用して、Cadence 45nmで回路を設計した。これは、この分析のために設計キットが利用可能であった最新の技術である。TPUユニットにより消費される面積及び電力は、28nm技術を採用しているX.He,et al.,Proceedings of the 34th ACM International Conference on Supercomputing,2020,pp.1-12から得られた。
【0109】
技術の違いを考慮することで、
図11に示すように、異なるベンチマークのエネルギ消費を比較することができる。すべてのエネルギ結果を、ボルツマン勾配フォロワのエネルギ結果に正規化した。
図11は、画像のバッチサイズが500の場合、ボルツマンサンプラで正規化されたさまざまなベンチマークにおけるTPU実装及びギブスサンプラのエネルギ消費を示す。
【0110】
開示されたアクセラレータは、アルゴリズムによって規定されるデジタルのTPU演算よりも実行される効果的な演算において、より効率的である。全体として、開示されたアクセラレータにより、約1000倍の改善が示された。
【0111】
定性的には2つ取り上げておく価値がある。一方では、デジタル回路はまだ改善の余地があり、より効率的な設計により動作あたりのコストをさらに削減できる。他方では、開示されたボルツマン勾配フォロワアーキテクチャで行われる短いランダムウォークの種類は、アーキテクチャの最も効率的な使用ではない。さらなるアルゴリズムの革新により、開示された及び類似の自然に基づくシステムの能力を十分に活用するアプリケーションを見出すことができる。
【0112】
次に、チップ面積を推定した。ここでも、技術の違いを考慮すると、これも直接的な比較ではない。それにもかかわらず、ベースラインの28nmのTPUは約330mm
2、その24%がMACアレイである。比較として、BGFとそのビルディングブロックの面積と電力を表2に示す。結合ユニットは、圧倒的に数が多いため(他のユニットに対して、およそO(N
2)対O(N))、面積は結合ユニットによってほぼ決定される。1024×1024アレイであると仮定すると、ギブスサンプラアーキテクチャのコストは1mm
2強で、実質的に無視できる。ボルツマン勾配フォロワの場合、面積は約16mm
2で、ホストTPUの総面積の約4.8%に当たる。表3に示すように、BGFは、この特殊なアルゴリズムにおいて、TPUまたは最先端の計算アクセラレータよりもはるかに効率的である。
【表2】
【表3】
【0113】
アルゴリズム変更の影響
第1の原則分析によれば、開示されたボルツマン勾配フォロワアーキテクチャは、単に異なるスタイルの確率的勾配降下を実装する。全く同じ訓練された重みを提供するのではなく、エンドユーザに同様のソリューション品質を提供するはずである。次のセクションでは、アルゴリズムの変更から生じる変更を数値的に分析する。前述したように、訓練サンプルの平均対数確率及び分類精度という2つの指標を使用する。
図12は、異なるデータセットを用いた訓練期間中に、異なる方法(CD-1、CD-10、及び開示されたボルツマン勾配フォロワへの修正版)を用いて得られたモデルの平均対数確率を示している。対数確率は計算が困難であるため、前述のようにAISで近似することに留意されたい。したがって、結果を過度に正確に読み取るべきではない。実際には、いくつかのデータセット(例えば、CIFAR10)では、同じAISメカニズムが、パーティション関数に有限の推定値を生成することに完全に失敗している。一例のデータセット(MNIST)が
図12に示され、他のデータセットは
図13A、
図13B、
図13C、及び
図13Dに示されている。最後に、ローデータは高周波ノイズを有するので、より明瞭にするために、10個のデータ点の移動平均を使用してデータを平滑化した。
図12と同じ凡例は、
図13A~
図13Dにも適用される。
【0114】
図示されているように、一般的には、対数確率の軌跡は時間と共に増加し、多くの場合、かなり大幅に増加する。これは、訓練されたモデルが、時間と共により良好に訓練データの確率分布を近似することを意味する。しかしながら、正確な軌跡は、異なるk値を用いた一般的なCD-kの実践下であっても、大きく変化する。開示された修正アルゴリズムは、当然のことながら固有の軌跡を生成している。CD-10と比較すると、軌跡の違いは、便宜上、小さいkを選択した結果よりも顕著でないことが多い。対数確率の推定値そのものの不確実性に加え、ある点を超えると、対数確率の向上は単にオーバーフィッティングの結果であるとも言えることが指摘されている。したがって、分類エラーを表4に示す。ツールによって丸めが適用されるベンチマークでは、一般的な慣行と開示されたアルゴリズムとの間には観察可能な差異がないことが示されている。少し精度が報告されたベンチマークでは、この差は無視できるほど小さい。
【表4】
【0115】
表4に示すデータは、異なるアルゴリズムを使用した各データセットに対して、異なる種類のニューラルネットワークモデルによって得られた丸めテスト精度である。
【0116】
全体として、主な要点は、開示されたシステムとアルゴリズムが、実装の便宜上、一般的なアルゴリズムの小さな修正を含むことである。第1の原理から見れば、これは、例えば、非実用的な最尤学習よりもCD-kを選択すること、または便宜上、CD-kの中でランダムなkの値だけを選択することとは変わらない。経験的な観察によって、これらの変化は実際には学習アプローチの有効性に影響しないことが示唆されている。
【0117】
訓練へのノイズの影響
最後に、ノイズ及び変動がソリューションの品質に与える影響を調査した。ここまでの結果は、アナログハードウェアにノイズや変動がないことを前提としている。プロセス変動及び回路ノイズをシミュレートするために、結合ユニットの抵抗値の静的変動と、ノードと結合ユニットの両方における動的ノイズを注入した。ノイズ及び変動は、3%~30%の二乗平均平方根(RMS)値を有するガウス分布によって生成された。したがって、異なる結果が、1対の(RMS
variation、RMS
noise)によって特徴付けられる。
図14A、
図14B、
図14C、及び
図14Dは、異なるモデルに対する25個の組み合わせに関する平均対数確率の同じ平滑化結果を示している。データは、10点の移動平均を使用して平滑化される。
【0118】
ノイズと変動との組み合わせがあまり極端でない場合(例えば、それぞれ<10%)、対数確率への影響は無視できる。多くの場合、損失は、開示されたボルツマン勾配フォロワに適合してアルゴリズムを修正することにより得られる損失よりも小さい。しかし、より極端な変動及びノイズ構成であっても、対数確率に対する影響はそれほど大きくはないと思われる。最終的な推定精度は、すべての画像ベースのベンチマークに対して変更されていない。推奨システムと異常検出のベンチマークでは、
図15A及び
図15Bに示すように、最終結果は若干の変化を示している。
【0119】
要するに、アナログ回路は、ノイズの影響を受けているが、訓練プロセス全体の品質に影響を与えることなく、顕著なノイズの面でも勾配降下機能を適切に実行できる。
【0120】
討論
全体として、2つのアーキテクチャの実験的分析から、ハードウェアの能力を特に利用する新しいアルゴリズムがなくても、非常に小さなチップの追加フットプリントで、大幅な性能とエネルギの利点が得られるという証拠がいくつか得られた。他方では、TPUなどの計算基板は、明らかにより一般的な目的を有する。現段階では、開示された分析では、それ自体が説得力のあるデザインであるとはまだ言えない。しかしながら、一般的な方向にはいくつかの理由から可能性があることが示されている。
【0121】
第1に、イジング基板は、幅広い種類の最適化問題を加速する上で、すでにかなり有用である。将来、これはさらに汎用性が高くなり、広く使用されるようになるだろう。したがって、付加的なアーキテクチャサポートのコストは、さらに削減されることになる。第2に、開示された設計は、汎用性、性能、再構成可能性、及び訓練セットの並列性を利用するためのサポートに関するさらなる研究によって改善される可能性がある。最後に、エネルギーベースのモデルには多くの優れた点があるが、訓練にはコストがかかることは周知である。プロトタイプのイジングマシン及び、開示されたボルツマン勾配フォロワのようなシステムの出現により、より優れたアルゴリズムが登場する可能性がある。
【0122】
実験#2-バイアス
最尤(ML)学習アルゴリズムとは異なり、対比発散(CD)アルゴリズムはバイアスがあることが知られている。つまり、CDアルゴリズムの固定点は、MLアルゴリズムの固定点と同一ではない。この話題は多くの出版物を生み出したが、実用上は問題ではない。第1に、バイアスが小さく示されている。第2に、アルゴリズムの最終的な目標は、訓練データを十分に有用なものとして捉えることである。それにもかかわらず、本明細書で示されているのは、開示された修正訓練アルゴリズムに関するバイアスの経験的観察である。この実験では、Carreira-PerpinanとHintonが最初の調査で用いたのと同じ方法が用いられた。システムのサイズは、列挙によってグランドトゥルースを得ることができるよう、十分に小さいものを使用した。このシステムは12個の可視ユニットと4個の隠れユニットで構成され、すべてバイナリである。100個の訓練画像から60種類の分布がランダムに生成された。次いで、ML、CD、及び開示された訓練アルゴリズム(BGF)は、重みを得るために同じ1000回の反復で実行された。最後に、KLダイバージェンスを測定することによって、得られた確率分布をグランドトゥルースと比較した。各アルゴリズムの実行により、1つのKLダイバージェンス測定を生成した。各アルゴリズムについて、異なるランダムな初期条件から400回の実行を行った。得られた400個の異なる測定値が累積確率分布としてプロットされる。
図16は、結果を示す。
【0123】
最初に、非実用的ではあるが、ML学習は最終推定値にバイアスを与えないことが示された。対照的に、残りのアルゴリズムは、かなり類似したバイアス特性を有する。BGFは実際には、CDアルゴリズムを修正したものであるから、驚くべきことではない。しかしながら、位相空間を探索する固有の速度に基づいて、BGFは、非常に大きなkを有するCD-kとして考えることができる。k→∞になると、CD-kは実質的にMLになる。その結果、BGFは、従来のCD-kと比較して、より大きなKLダイバージェンスを提供する可能性が実際に低い。全体として、要点は明確である。開示されたBGFは、推定にバイアスがあるという問題を引き起こさない。どちらかといえば、よく使われるフォンノイマンアルゴリズムのバイアス特性を改善する。
【0124】
図16のグラフは、CD及びBGFの訓練結果のグラウンドトゥルースに対するKLダイバージェンスの累積確率分布を示す。言い換えれば、曲線上のすべての点(x,y)は、訓練分布のy%がグランドトゥルースからx以下の最終的なKLダイバージェンスを有することを示す。
【0125】
結論
イジングマシンは自然を利用して、非常に高速かつエネルギ効率よく効果的な計算を行うことができる。また、イジングマシンは、制限付きボルツマンマシン(RBM)及びその他の微分アルゴリズムなど、エネルギーベースのモデルで演算を実行するためにも使用できる。本開示では、RBM訓練をサポートするために、イジング基板を追加回路で拡張する2つの異なる設計が紹介された。いくつかの小さな変更により、イジングマシンはRBMアルゴリズムの一部を高速化するギブスサンプラとして容易に機能し、TPUホストと比較して約2倍の速度向上と2.3倍のエネルギ向上をもたらすことが示された。さらに大幅な変更を加えれば、基板はボルツマンサンプラとして機能し、勾配に従いながら、ホスト計算を追加することなく本質的にRBMを訓練することができる。チップ面積が大幅に大きいTPUホストと比較して、このようなボルツマン勾配フォロワは29倍のスピードアップと1000倍のエネルギ節約を達成できる。さらに研究が進めば、ハードウェアソフトウェアの共設計された自然ベースの計算システムが、重要な新しいアーキテクチャモダリティになり得る。
【0126】
本明細書で引用されるありとあらゆる特許、特許出願、及び刊行物の開示は、参照によりそれらの全体が本明細書に組み込まれる。本発明は、具体的な実施形態を参照して開示されてきたが、当業者によって、本発明の真の趣旨および範囲から逸脱することなく、本発明の他の実施形態および変形が考案されてもよいことは明らかである。添付の特許請求の範囲は、全てのかかる実施形態および均等な変形を含むように解釈されることが意図される。
【0127】
参考文献
以下の刊行物は、その全体が参照により本明細書に組み込まれる。
【0128】
S.Kirkpatrick,C.D.Gelatt,and M.P.Vecchi,“Optimization by simulated annealing,” Science,vol.220,no.4598,pp.671-680,1983.
【0129】
G.Zames,N.Ajlouni,N.Ajlouni,N.Ajlouni,J.Holland,W.Hills,and D.Goldberg,“Genetic algorithms in search,optimization and machine learning,” Information Technology Journal,vol.3,no.1,pp.301-302,1981.
【0130】
D.H.Ackley,G.E.Hinton,and T.J.Sejnowski,“A learning algorithm for boltzmann machines,” Cognitive science,vol.9,no.1,pp.147-169,1985.
【0131】
A.Narayanan and M.Moore,“Quantum-inspired genetic algorithms,” in Proceedings of IEEE International Conference on Evolutionary Computation,1996,pp.61-66.
【0132】
R.M.Karp,Reducibility among Combinatorial Problems.Boston,MA: Springer US,1972,pp.85-103.
【0133】
A.Lucas,“Ising formulations of many np problems,” Frontiers in Physics,vol.2,p.5,2014.
【0134】
K.Kim,M.-S.Chang,S.Korenblit,R.Islam,E.E.Edwards,J.K.Freericks,G.-D.Lin,L.-M.Duan,and C.Monroe,“Quantum simulation of frustrated ising spins with trapped ions,” Nature,vol.465,no.7298,pp.590-593,2010.
【0135】
N.G.Berloff,M.Silva,K.Kalinin,A.Askitopoulos,J.D.Topfer,P.Cilibrizzi,W.Langbein,and P.G.Lagoudakis,“Realizing the classical xy hamiltonian in polariton simulators,” Nature materials,vol.16,no.11,pp.1120-1126,2017.
【0136】
R.Barends,A.Shabani,L.Lamata,J.Kelly,A.Mezzacapo,U.Las Heras,R.Babbush,A.G.Fowler,B.Campbell,Y.Chen et al.,“Digitized adiabatic quantum computing with a superconducting circuit,” Nature,vol.534,no.7606,pp.222-226,2016.
【0137】
M.Yamaoka,C.Yoshimura,M.Hayashi,T.Okuyama,H.Aoki,and H.Mizuno,“A 20k-spin ising chip to solve combinatorial optimization problems with cmos annealing,” IEEE Journal of Solid-State Circuits,vol.51,no.1,pp.303-309,2015.
【0138】
P.I.Bunyk,E.M.Hoskinson,M.W.Johnson,E.Tolkacheva,F.Altomare,A.J.Berkley,R.Harris,J.P.Hilton,T.Lanting,A.J.Przybysz et al.,“Architectural considerations in the design of a superconducting quantum annealing processor,” IEEE Transactions on Applied Superconductivity,vol.24,no.4,pp.1-10,2014.
【0139】
A.D.King,J.Carrasquilla,J.Raymond,I.Ozfidan,E.Andriyash,A.Berkley,M.Reis,T.Lanting,R.Harris,F.Altomare et al.,“Observation of topological phenomena in a programmable lattice of 1,800 qubits,” Nature,vol.560,no.7719,pp.456-460,2018.
【0140】
F.Bohm,G.Verschaffelt,and G.Van der Sande,“A poor man’s coherent ising machine based on opto-electronic feedback systems for solving optimization problems,” Nature communications,vol.10,no.1,pp.1-9,2019.
【0141】
R.Hamerly,A.Sludds,L.Bernstein,M.Prabhu,C.Roques-Carmes,J.Carolan,Y.Yamamoto,M.Soljacic,and D.Englund,“Towards large-scale photonic neural-network accelerators,” in 2019 IEEE International Electron Devices Meeting(IEDM).IEEE,2019,pp.22-8.
【0142】
D.Pierangeli,G.Marcucci,and C.Conti,“Large-scale photonic ising machine by spatial light modulation,” Physical review letters,vol.122,no.21,p.213902,2019.
【0143】
R.Harris,M.W.Johnson,T.Lanting,A.J.Berkley,J.Johansson,P.Bunyk,E.Tolkacheva,E.Ladizinsky,N.Ladizinsky,T.Oh,F.Cioata,I.Perminov,P.Spear,C.Enderud,C.Rich,S.Uchaikin,M.C.Thom,E.M.Chapple,J.Wang,B.Wilson,M.H.S.Amin,N.Dickson,K.Karimi,B.Macready,C.J.S.Truncik,and G.Rose,“Experimental investigation of an eight-qubit unit cell in a superconducting optimization processor,” Phys.Rev.B,vol.82,p.024511,Jul 2010.
【0144】
T.Inagaki,Y.Haribara,K.Igarashi,T.Sonobe,S.Tamate,T.Honjo,A.Marandi,P.L.McMahon,T.Umeki,K.Enbutsu et al.,“A coherent ising machine for 2000-node optimization problems,” Science,vol.354,no.6312,pp.603-606,2016.
【0145】
R.Afoakwa,Y.Zhang,U.K.R.Vengalam,Z.Ignjatovic,and Michael,“Brim: Bistable resistively coupled ising machine,” 2021.
【0146】
S.Boixo,T.F.Ronnow,S.V.Isakov,Z.Wang,D.Wecker,D.A.Lidar,J.M.Martinis,and M.Troyer,“Evidence for quantum annealing with more than one hundred qubits,” Nature physics,vol.10,no.3,pp.218-224,2014.
【0147】
R.Hamerly,T.Inagaki,P.L.McMahon,D.Venturelli,A.Marandi,T.Onodera,E.Ng,C.Langrock,K.Inaba,T.Honjo et al.,“Experimental investigation of performance differences between coherent ising machines and a quantum annealer,” Science advances,vol.5,no.5,p.eaau0823,2019.
【0148】
R.Hamerly,T.Inagaki,P.L.McMahon,D.Venturelli,A.Marandi,T.Onodera,E.Ng,C.Langrock,K.Inaba et al.,“Scaling advantages of all-to-all connectivity in physical annealers: the coherent ising machine vs.d-wave 2000q,” arXiv:arXiv:1807.00089,2018.
【0149】
Y.Yamamoto,K.Aihara,T.Leleu,K.-i.Kawarabayashi,S.Kako,M.Fejer,K.Inoue,and H.Takesue,“Coherent ising machines-optical neural networks operating at the quantum limit,” npj Quantum Information,vol.3,no.1,pp.1-15,2017.
【0150】
P.L.McMahon,A.Marandi,Y.Haribara,R.Hamerly,C.Langrock,S.Tamate,T.Inagaki,H.Takesue,S.Utsunomiya,K.Aihara,R.L.Byer,M.M.Fejer,H.Mabuchi,and Y.Yamamoto,“A fully programmable 100-spin coherent ising machine with all-to-all connections,” Science,vol.354,no.6312,pp.614-617,2016.
【0151】
K.Takata,A.Marandi,R.Hamerly,Y.Haribara,D.Maruo,S.Tamate,H.Sakaguchi,S.Utsunomiya,and Y.Yamamoto,“A 16-bit coherent ising machine for one-dimensional ring and cubic graph problems,” Scientific Reports,vol.6,no.1,p.34089,2016.
【0152】
F.Bohm,G.Verschaffelt,and G.Van der Sande,“A poor man’s coherent ising machine based on opto-electronic feedback systems for solving optimization problems,” Nature Communications,vol.10,no.1,p.3538,2019.
【0153】
Y.Takeda,S.Tamate,Y.Yamamoto,H.Takesue,T.Inagaki,and S.Utsunomiya,“Boltzmann sampling for an XY model using a non-degenerate optical parametric oscillator network,” Quantum Science and Technology,vol.3,no.1,p.014004,Nov 2017.
【0154】
K.Cho,A.Ilin,and T.Raiko,“Improved learning of gaussian-bernoulli restricted boltzmann machines,” in International conference on artificial neural networks.Springer,2011,pp.10-17.
【0155】
Y.LeCun,S.Chopra,M.Ranzato,and F.-J.Huang,“Energy-based models in document recognition and computer vision,” in Ninth International Conference on Document Analysis and Recognition(ICDAR 2007),vol.1.IEEE,2007,pp.337-341.
【0156】
S.Ding,J.Zhang,N.Zhang,and Y.Hou,“Boltzmann machine and its applications in image recognition,” in Intelligent Information Processing VIII,Z.Shi,S.Vadera,and G.Li,Eds.Cham: Springer International Publishing,2016,pp.108-118.
【0157】
G.E.Dahl,M.Ranzato,A.r.Mohamed,and G.Hinton,“Phone recognition with the mean-covariance restricted boltzmann machine,” in Proceedings of the 23rd International Conference on Neural Information Processing Systems -Volume 1,ser.NIPS’10.Red Hook,NY,USA: Curran Associates Inc.,2010,p.469-477.
【0158】
R.D.Hjelm,V.D.Calhoun,R.Salakhutdinov,E.A.Allen,T.Adali,and S.M.Plis,“Restricted boltzmann machines for neuroimaging: An application in identifying intrinsic networks,” NeuroImage,vol.96,pp.245-260,2014.
【0159】
A.Al-Waisy,M.A.Mohammed,S.Al-Fahdawi,M.Maashi,B.Garcia-Zapirain,K.H.Abdulkareem,S.Mostafa,N.M.Kumar,and D.N.Le,“Covid-deepnet: Hybrid multimodal deep learning system for improving covid-19 pneumonia detection in chest x-ray images,” CMC-COMPUTERS MATERIALS & CONTINUA,vol.67,no.2,pp.2409-2429,2021.
【0160】
Q.Zhang,Y.Xiao,W.Dai,J.Suo,C.Wang,J.Shi,and H.Zheng,“Deep learning based classification of breast tumors with shear-wave elastography,” Ultrasonics,vol.72,pp.150-157,2016.
【0161】
R.Salakhutdinov and G.Hinton,“Deep boltzmann machines,” in Artificial intelligence and statistics.PMLR,2009,pp.448-455.
【0162】
H.Wang,Y.Cai,and L.Chen,“A vehicle detection algorithm based on deep belief network,” The scientific world journal,vol.2014,2014.
【0163】
A.M.Abdel-Zaher and A.M.Eldeib,“Breast cancer classification using deep belief networks,” Expert Systems with Applications,vol.46,pp.139-144,2016.
【0164】
R.Salakhutdinov,A.Mnih,and G.Hinton,“Restricted boltzmann machines for collaborative filtering,” in Proceedings of the 24th international conference on Machine learning,2007,pp.791-798.
【0165】
A.Gouveia and M.Correia,“A systematic approach for the application of restricted boltzmann machines in network intrusion detection,” in International Work-Conference on Artificial Neural Networks.Springer,2017,pp.432-446.
【0166】
U.Fiore,F.Palmieri,A.Castiglione,and A.De Santis,“Network anomaly detection with the restricted boltzmann machine,” Neurocomputing,vol.122,pp.13-23,2013.
【0167】
Y.Wang,Z.Pan,X.Yuan,C.Yang,and W.Gui,“A novel deep learning based fault diagnosis approach for chemical process with extended deep belief network,” ISA transactions,vol.96,pp.457-467,2020.
【0168】
J.Xie,G.Du,C.Shen,N.Chen,L.Chen,and Z.Zhu,“An end-to-end model based on improved adaptive deep belief network and its application to bearing fault diagnosis,” IEEE Access,vol.6,pp.63 584-63 596,2018.
【0169】
N.Srivastava,R.R.Salakhutdinov,and G.E.Hinton,“Modeling documents with deep boltzmann machines,” arXiv:1309.6865,2013.
【0170】
M.Fatemi and M.Safayani,“Joint sentiment/topic modeling on text data using a boosted restricted boltzmann machine,” Multimedia Tools and Applications,vol.78,no.15,pp.20 637-20 653,2019.
【0171】
G.Hinton and R.Salakhutdinov,“Discovering binary codes for documents by learning deep generative models,” Topics in Cognitive Science,vol.3,no.1,pp.74-91,2011.
【0172】
J.Hernandez and A.G.Abad,“Learning from multivariate discrete sequential data using a restricted boltzmann machine model,” in 2018 IEEE 1st Colombian Conference on Applications in Computational Intelligence(ColCACI).IEEE,2018,pp.1-6.
【0173】
H.Larochelle,Y.Bengio,J.Louradour,and P.Lamblin,“Exploring strategies for training deep neural networks.”Journal of machine learning research,vol.10,no.1,2009.
【0174】
D.Erhan,A.Courville,Y.Bengio,and P.Vincent,“Why does unsupervised pre-training help deep learning?” in Proceedings of the thirteenth international conference on artificial intelligence and statistics.JMLR Workshop and Conference Proceedings,2010,pp.201-208.
【0175】
Y.Hua,J.Guo,and H.Zhao,“Deep belief networks and deep learning,” in Proceedings of 2015 International Conference on Intelligent Computing and Internet of Things.IEEE,2015,pp.1-4.
【0176】
E.Qin,A.Samajdar,H.Kwon,V.Nadella,S.Srinivasan,D.Das,B.Kaul,and T.Krishna,“Sigma: A sparse and irregular gemm accelerator with flexible interconnects for dnn training,” in 2020 IEEE International Symposium on High Performance Computer Architecture(HPCA),2020,pp.58-70.
【0177】
S.Levantino,G.Marzin,and C.Samori,“An adaptive pre-distortion technique to mitigate the dtc nonlinearity in digital plls,” IEEE Journal of Solid-State Circuits,vol.49,no.8,pp.1762-1772,2014.
【0178】
M.R.Li,C.H.Yang,and Y.L.Ueng,“A 5.28-gb/s ldpc decoder with time-domain signal processing for ieee 802.15.3c applications,” IEEE Journal of Solid-State Circuits,vol.52,no.2,pp.592-604,2016.
【0179】
D.Miyashita,R.Yamaki,K.Hashiyoshi,H.Kobayashi,S.Kousai,Y.Oowaki,and Y.Unekawa,“An ldpc decoder with time-domain analog and digital mixed-signal processing,” IEEE Journal of Solid-State Circuits,vol.49,no.1,pp.73-83,2013.
【0180】
K.Madani,P.Garda,E.Belhaire,and F.Devos,“Two analog counters for neural network implementation,” IEEE Journal of Solid-State Circuits,vol.26,no.7,pp.966-974,1991.
【0181】
N.P.Jouppi,C.Young,N.Patil,D.Patterson,G.Agrawal,R.Bajwa,S.Bates,S.Bhatia,N.Boden,A.Borchers et al.,“In-datacenter performance analysis of a tensor processing unit,” in Proceedings of the 44th Annual International Symposium on Computer Architecture,2017,pp.1-12.
【0182】
L.Deng,“The mnist database of handwritten digit images for machine learning research [best of the web],” IEEE Signal Processing Magazine,vol.29,no.6,pp.141-142,2012.
【0183】
T.Clanuwat,M.Bober-Irizar,A.Kitamoto,A.Lamb,K.Yamamoto,and D.Ha,“Deep learning for classical japanese literature,” arXiv:1812.01718,2018.
【0184】
H.Xiao,K.Rasul,and R.Vollgraf,“Fashion-mnist: a novel image dataset for benchmarking machine learning algorithms,” arXiv:1708.07747,2017.
【0185】
G.Cohen,S.Afshar,J.Tapson,and A.Van Schaik,“Emnist: Extending mnist to handwritten letters,” in 2017 International Joint Conference on Neural Networks(IJCNN).IEEE,2017,pp.2921-2926.
【0186】
A.Krizhevsky,G.Hinton et al.,“Learning multiple layers of features from tiny images,”2009.
【0187】
Y.LeCun,F.J.Huang,and L.Bottou,“Learning methods for generic object recognition with invariance to pose and lighting,” in Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,2004.CVPR 2004.,vol.2.IEEE,2004,pp.II-104.
【0188】
A.Coates,A.Ng,and H.Lee,“An analysis of single-layer networks in unsupervised feature learning,” in Proceedings of the fourteenth international conference on artificial intelligence and statistics.JMLR Workshop and Conference Proceedings,2011,pp.215-223.
【0189】
S.Verma,P.Patel,and A.Majumdar,“Collaborative filtering with label consistent restricted boltzmann machine,” in 2017 Ninth International Conference on Advances in Pattern Recognition(ICAPR).IEEE,2017,pp.1-6.
【0190】
A.Pumsirirat and L.Yan,“Credit card fraud detection using deep learning based on auto-encoder and restricted boltzmann machine,” International Journal of Advanced Computer Science and Applications,vol.9,no.1,2018.
【0191】
F.M.Harper and J.A.Konstan,“The movielens datasets: History and context,” Acm transactions on interactive intelligent systems(tiis),vol.5,no.4,pp.1-19,2015.
【0192】
R.Salakhutdinov and I.Murray,“On the quantitative analysis of deep belief networks,” in Proceedings of the 25th international conference on Machine learning,2008,pp.872-879.
【0193】
W.Li,P.Xu,Y.Zhao,H.Li,Y.Xie,and Y.Lin,“Timely: Pushing data movements and interfaces in pim accelerators towards local and in time domain,” in 2020 ACM/IEEE 47th Annual International Symposium on Computer Architecture(ISCA).IEEE,2020,pp.832-845.
【0194】
X.He,S.Pal,A.Amarnath,S.Feng,D.-H.Park,A.Rovinski,H.Ye,Y.Chen,R.Dreslinski,and T.Mudge,“Sparse-tpu: Adapting systolic arrays for sparse matrices,” in Proceedings of the 34th ACM International Conference on Supercomputing,2020,pp.1-12.
【0195】
M.A.Carreira-Perpinan and G.Hinton,“On contrastive divergence learning,” in International workshop on artificial intelligence and statistics.PMLR,2005,pp.33-40.
【国際調査報告】