第 5 章 脳型情報処理のハードウェア実装に向けた要素技術の開発 66
5.2 スピントロニクスメモリデバイスを用いた連想記憶システム
5.2.1 本節の背景と目的
神経細胞間を結ぶシナプスは学習により頻繁に荷重値が書き換わり,また学習しない場 合にはかなり長い期間荷重値を保持しなくてはならない.このような特性を有するシナプ スのハードウェア実装の際には,高書き換え耐性を持つ不揮発性のアナログメモリにより 実現することが効率の観点から重要である.この研究では,次世代の不揮発性アナログメ モリであるアナログスピン軌道トルク磁化反転デバイス(SOT)をシナプス素子として用
いたHopfieldネットワークを形成し,連想記憶を実現するシステムを構築した.以下で
は,メモリデバイス及びHopfield モデルについて概説し,連想記憶システムの構成及び その評価結果について報告する.
図5.1 (a)スピンデバイスの顕微鏡写真と測定方法,(b)チャネル電流に対するホー ル抵抗の変化.文献 [48]より引用.
5.2.2 アナログスピンメモリデバイス
連想記憶システムは9のニューロン及び36のメモリデバイスから構成され,それぞれ のニューロンは他のニューロンからの入力により,−1または+1どちらかの値をとる.
メモリデバイスは図5.1(a)に示す四端子の素子構造を持ち,図5.1(b)に示すようなヒス テリシス特性を有する.メモリデバイスの電流チャネルに読み出し電流(1mA)を流した 際に,電圧チャネルにホール電圧が生じる.電流チャネルに書き込み電流(20 ∼ 32mA) を流すことで,次回読み出し時のホール電圧がヒステリシス曲線に従って変化する.ヒス テリシス曲線が線形に変化する領域(23 ∼27 mA)で電流を制御することで,デバイスを 線形のアナログメモリとして利用することが出来る.
5.2.3 Hopfield モデル
連想記憶とは,入力されたパターンと近い記憶パターンを思い出す動作のことで,脳型 計算の一種であるHopfieldモデルを用いることで連想記憶を実現することが出来る [49].
Hopfieldモデルを実現する神経ネットワークであるHopfieldネットワークではすべての
ニューロンが相互に結合しネットワークを形成しており,ニューロン間のシナプス結合荷
重値を変えることで同一のネットワークに複数のパターンを記憶することが出来る.各 ニューロンの状態ベクトルをζ とすると,ニューロンiの状態ζiは,
ζi = sgn(
∑N
j
wijζj) (5.1)
ここで,N はニューロン数,wij はニューロンi, j間の結合荷重値である.sgn(x)は符 号関数で,以下の式で定義される.
sgn(x) =
{ 1 (x≥0)
−1 (x <0) (5.2)
結合荷重値行列W は,以下の式で計算される.
W =
∑M
µ=1
ξµξTµ, (5.3)
ここで,M は回路に記憶するパターン数,ξµ は記憶パターンベクトルである.記憶パ ターンと近いキーパターンζ′µをネットワークの初期値として与えることにより,ネット ワークの終状態はξµにより近づくかあるいは等しくなる.
アナログメモリに荷重値をマッピングする場合には,実際にはデータの書き込みや読み 込み時に値のばらつきが生じる.そこで,以下の式を用いて荷重値の学習を行った.
∆W =
∑M
µ=1
η(ξµξTµ −ζµζTµ), (5.4) ここで,ηは学習係数である.ξµ =ζµ の時,記憶パターンと回路に想起されたパターン が一致し,荷重値の更新量は0になる.記憶パターンと想起パターンの乖離が大きくなる ほど,荷重値の更新量は増大する.
また,回路の想起パターンと記憶パターンとの一致の程度を,記憶パターンと想起パ ターンベクトルの内積(direction cosine)から評価した.Direction cosine αは以下の式 で計算される.
α=∑
mu
ξµζµ/N (5.5)
αが1に近い程,回路の記憶性能が高い.
表5.1 学習動作前後の想起性能.キーパターンは記憶パターンからランダムに1ビッ ト反転したベクトルを用いた.
荷重値 Direction cosine α
学習前 0.601
学習後 0.852
理想値(参考) 0.905
5.2.4 結果
図5.2に,アナログスピンデバイスを用いて構成した連想記憶システムを示す.シナプ ス荷重値はスピンデバイス上に保存してあり,メモリデバイスの制御はFPGA・I/Fボー ドを介して行った.メモリの書き込み・読み出しはPCで生成した制御パケットにより行 い,読み出したメモリの値はPC上で荷重値行列に変換され,同じくPC 上に実装した
Hopfieldモデル上で各ニューロンの状態が計算される.スピンデバイスが生じる電圧は
数百 µV程度であるため,オペアンプにより増幅したのちにA/D変換を行う.また,マ ルチプレクサ及びデマルチプレクサを用いて,スピンデバイスの書き込み・読み込みを個 別に制御した.
表5.1に,ネットワークの想起性能を示す.参考として,理想的な荷重値を64bit精度 で記憶した場合の想起性能についても併記した.キーパターンは記憶パターンからランダ ムに1ビット反転したベクトルを用いた.また,記憶パターンは3種類とした.図5.3(a) に示すような3× 3に配置したニューロンに,文字パターンを記憶させることに成功し た.更に,記憶に失敗したパターンに関しても,追加学習を行うことによって理想値に近 い値まで想起性能が向上することを示した.
5.2.5 まとめ
本研究ではスピントロニクス素子を用いた自己連想記憶システムが実装可能なことを 示した.また,一度記憶に失敗したパターンについても追加を行うことによって記憶性 能が向上することを示した.これらのスピントロニクス素子は,将来的にReservoir層や
Readout層の荷重値を記憶するシナプス素子としての応用が想定される.
不揮発性アナログメモリを用いた脳型計算は,例えば抵抗変化メモリを用いてSTDP 学習を実現した例 [50]や,メモリスタを用いたニューラルネットワークによる画像の識
図5.2 スピンデバイスを用いた連想記憶システム.文献[48]より引用.
別 [51]などが挙げられる.本研究で用いたスピントロニクス素子は書き換え耐性が高く 高速動作が可能であることが理論的に示唆されており,次世代の脳型ハードウェアへの応 用が期待されている.本研究の結果はアナログ値を記憶できるスピントロニクス素子を用 いて脳型計算を行った世界初の試みである.
本研究は東北大学・大野研究室との共同研究であり,スピントロニクス素子の設計・製 作は大野研究室で行われた.連想記憶システムの設計・製作は主に当研究室で行われ,筆
図5.3 (a)3×3のニューロンに記憶させた3つの文字パターン.(b)学習前・学習後 の荷重値の分布.インセットは理想的な荷重値分布.文献 [48]より引用.
者はこの内I/Fボードの設計・製作,PCから送られる制御命令を解釈しI/Fボードに書 き込み指示を行うFPGAプログラムの作成を担当した.