Semiconductor Portal

» 寄M » 寄M(半導応)

ニューロチップ説 〜いよいよ半導の出番(5-1)

このシリーズ最後の5章は、動向を今後について述べている。に、IBMが開発したTrueNorthニューロモルフィックチップについて、にディープラーニングという菘世ら見たv路構成や長などについて解説している。(セミコンポータル集室)

著v:元半導理工学研|センター(STARC)/元東 瀬 啓

5章: ニューロチップ〜本戦に突入:動向と今後
最後の章となる5章では「動向と今後」として、最初に発表された2014Q8月からJに2Qを越える時が経っているが、最Zの新しい報告もあり新しい顔をeったニューロモルフィックチップであるIBMのTrueNorthを採り屬欧襦3章でも述べたが、本寄MではTrueNorthの構成・動作を説するが、ニューロモルフィックチップとして期待される人間のNによりZい科学的なCよりも、現在のディープラーニングのもたらすあるT味単純な性ΔCより比較説を行う。新しい顔をeったTrueNorthを圧縮という切り口からの解説も試みる。中盤の5.2Iでは本寄Mの\術の最後の説として、ネットモデルの効率化と圧縮\術の合により、もたらされるk定レベルの|極のeにる。そして最後に5.3Iで今後の課を説する。

5.1 ニューロモルフィックチップ〜v路構成とディープラーニングから見た位け
5.2 |極のeへ(k定のレベルへ)〜シンプルなモデルへの適とNMTへのt開〜
5.3 最後に〜今後の動向と課〜

5.1 ニューロモルフィックチップ〜v路構成とディープラーニングの点からの位け
本Iではニューロモルフィックチップとして、IBMがDARPAのSynapseプロジェクトのk環として研|・開発し、2014Q8月に雑誌Scienceで発表したTrueNorthをDり屬欧襦併温憂@料84、85)。その構成を説するとともにディープラーニングという極めて工学的な菘世らこのチップを見てみる。そのため、逆にニューロモルフィック的な要素に関しては極~潔に述べる。

(1)要・・・人間のN実現を`指して
Synapseプロジェクトの最終`Yは、人間のNの実現である(2020Q以Tか?)。神経細胞に相当するニューロンとシナプス(メモリ)からなるコア(256ニューロンを内邸砲64×64のアレイXに配し、合4096コアを集積したTrueNorthチップ(17mm×25mm)が図43の左下にすように構成される(参考@料84)。2014Qに発表されたチップだ。2014Qから2015QにXけて、NS1eボードをIBMはo開し始めた。kつのTrueNorthチップが載っている。そもそも、TrueNorthのアーキテクチャは、コアからのパケット通信を基本としていることから、理[的にはシームレスにコア拡張、チップ拡張が可Δ播ボード拡張も容易だ。2015Qには、図の下にすように48ボードを連ねた48×のシステムをo開している(参考@料105、106を参照)。骨格だけだと、図の屬隣U入図にすように、人間のNに瓦靴1/1000のポジションまで来ている。それ以T最Z(2017Qi半)まで模拡jの情報はない。


図43 TrueNorthのコア、チップ、ボード構成と、プロジェクトの`Yトレンド 参考@料84、85を参考に作成、ボード情報は参考@料105、106.

図43 TrueNorthのコア、チップ、ボード構成と、プロジェクトの`Yトレンド
参考@料84、85を参考に作成、ボード情報は参考@料105、106.


図44にTrueNorthの要k覧をした。図43のニューロンv路(型陝砲鮖分割H_で使いまわす、いわゆる仮[ニューロン(sh┫)式である。1つのニューロンv路を1msecに256v使いvす。またクロスバー(sh┫)式をいているが、同じく仮[クロスバー(sh┫)式でもある。仮[であることを除くと、まさしくSRAM(メモリアレイと積和演Q陲郎Z接に配されていないが)である。入(ロー)笋256個の軸索(アクソン:Axon)、出(カラム)笋256個のニューロンが並ぶ。クロスのポイントが256×256となりシナプス接を形成する。カラム(sh┫)向に積和の処理を行う。実際には積和の作業は1ロー毎に行われる。コントロールv路でアクソンへの入値(0, 1)とシナプス接情報(0,1)の積をとり、情報(1のみ)をニューロンv路に投げる。この作業をカラム(sh┫)向にシーケンシャルに繰り返し行う。

k(sh┫)、ニューロンv路ではコントロールv路からの情報(1)をpけ、その都度、ロー番地(アクソン)、カラム(ニューロン)番地でまるシナプス負荷を元にニューロンモデルにい演Qし条PがDえばスパイク出を出す。出はスパイクとしてチップ屬離灰◆△發靴は他のチップのコアへルータを介してパケットとして伝鬚気譴襦なお、学{の機Δ賄觝椶気譴討い覆ぁ実行だけのチップである。


図44 TrueNorthの要仕様 (参考@料84、85を参考に作成) 転載元:STARCでの調h報告書より転載.

図44 TrueNorthの要仕様 (参考@料84、85を参考に作成)
転載元:STARCでの調h報告書より転載.


Q|のネットワークモデルとハード(TrueNorth)とのインターフェースはコアレットというプログラム環境により接される。応例としてH検堯ηЪ韻73mW、800GOPS/Wの性Δ諒鷙陲あった。低消J電であることからエッジ応を当初より狙っている。に2015Qより盜颪砲董 Brain-inspired Computing Boot Camp”,なるものを主(参考@料107)、Hくの盜颪僚j学を中心に数欧慮|機関が参加、エッジUをターゲットとしたアプリケーションへの実化の動をMしており、最Zその成果を発表した(k/参考@料108)。このキャンプは残念ながら国防省が関連しており、日本からの参加はMしいようだ

(2)v路構成
_複する点もあるが、v路構成に関して図45をいて~単に説する。参考@料85を参考に作成している。かなり複雑だ。入笋256個の入(軸索:アクソン)の端子があり、かつ16ステップ(1msごと、16msまで)の時間を調Dできる16×256ビットのメモリマトリクスをおかれている。ダイナミックに時間調Dをするものではなく、iのオフラインで行った学{のT果にったスタティックなネットワークモデルを構成するためのものである(現時点での筆vの理解)。内陲同期ではあるが、グローバルクロック(1ms周期)により同期させるためのタイミング調Dでもある。

クロスバーのクロスポイントは、バイナリービット(0、1)からなる接情報のみを~するシナプス接である。それに加えて、入ロー笋離▲ソンと出笋離縫紂璽蹈鵑年まるシナプス係数と称する_みをeっている。4|類の9ビット(-256〜255)の_みだ。|類はアクソンによりまり、9ビットの値はニューロンによりまる仕組みだ。興奮性(プラス)とか抑U性(マイナス)といったタイプはアクソン笋年めて、その_み(jきさ)はとなるとニューロン笋年まるということだ。コードブックがTされている。学{の段階でこの表は定されSRAMに格納される。その点から、TrueNorthはバイナリーと言われているがずしもそうではない。また後で述べるが、コードブックを使する点はiI4.3Iで述べた量子化のkつであるクラスタリングと同じだ。

カラム(sh┫)向にロー毎にd次QされるT果がニューロンv路に入り、その都度和の処理が行われる。ポテンシャルが変化する。T果、単純にはiにめられているしきい値よりjきくなればスパイクが出され、逆に小さければスパイクは発擇靴覆ぁスパイク発攜紊發靴はグローバルタイミング1msec毎にゼロにリセットされる。以屬パルス入から、パルス出までの}順だ。しきい値をeつ点はiI4.3IのPruningに瑤討い襦9弩ヅ戮両ない(_みが小さい)ものは最初から参加もされない。ダイナミックに処理される点では同じくiI4.3のゼロスキップにZいと考えた(sh┫)が良いかもしれない。

b文によるとk例として100入に瓦靴1vのパルスが出るようにしきい値U御されるのがYのようだ。1コア当たり5スパイク/1ms度とのことだ。出はかなり(Sparse)だ。もちろんその頻度はw定ではない。しきい値を低くすればパルスの頻度は高まり、演Q性Δ屬るが同時に比例して消J電も屬る。しきい値を低くすると10倍度は頻度が屬るようだ。この頻度、すなわちしきい値が低消J電さらには動作]度の要になっている点がIF (Integrate and Fire)型ニューロンモデルの徴である。通常のFLOPS(Floating-point Operations Per Second)という性ι週に瓦靴董⌒kvのパルス発擇Synaptic Operationと見なしたSOPS (Synaptic Operations per second)という性ι週を使している。FLOPSとSOPSの比較はMしい。SOPSの価値も確にする要がある。例えば依T性のjきいしきい値が何によってまるかの定性的もしくは定量的な理解が欲しい。ニューラルネットワークでもPruningなりゼロスキップ、さらには量子化を施した際、実効処理]度という表現をいることがある。これにZい考え(sh┫)が理解しやすいと考えている。

出はスパイクとしてニューロンv路からルータを通して、パケットとして`的の番地に送られる。チップ、コアの番地、そしてアクソンのロー(行)の番地からなるネット接情報だ。時間情報も加する。アクソンと称する1msecを単位とするタイミング情報だ。スパイクのコア間の同期をとるためだけに使されている。パケット情報は、学{時の段階でめられる。スタティックなネットワーク構成をめるためだ。なお、学{時にはさらにシナプス負荷およびシナプス接もめる。ネット構成がまり、_みもまれば学{でのネットワークモデルは完成する。実行のiにパケット情報と負荷、接情報はコア内のSRAMにストアされる。


図45 TrueNorthのv路(sh┫)式: (参考@料85を参考に作成した) 出Z元:STARCでの調h報告書より転載

図45 TrueNorthのv路(sh┫)式: (参考@料85を参考に作成した)
出Z元:STARCでの調h報告書より転載


(3)ニューロモルフィック/TrueNorthの徴と動向〜ディープラーニングとの架け橋
ニューロモルフィックは、バイナリー(TrueNorthでは確には入出データのみ)での演Q処理に加えてスパイキングでの情報伝鬚であることから、その低消J電性が実的には魅だ(複数検瑤70mW)。そうなると、ディープラーニングの}法を実△任ないか、とりわけ際だった成果を屬欧討いCNN(しくはQ込みの\術)をニューロモルフィック屬房△任ないかと期待されてきた。今までなかった両vに橋を架けるD組みだ。

実はこのことは、2014Q発表当時より議bされている狭Iのニューラルネットワークとニューロモルフィックのどちらが優れているかという議bにk定の判が出るD組みでもある。中々Mしいとれ聞こえていたが、2015Q後半より2016Q11月にかけてb文報告(実際は改、繰り返され)があり進tが伝えられているので、この項でその\術的な内容を解説する。X況を言うと中々判がMしい、少し理解するのに時間がXかるというX況である。

課は、以下の二つである。
-スパイキングと誤差逆伝鯔 淵丱奪プロパゲーション法)の微分と相性が良くない(本)
-クロスバー(sh┫)式とQ込み層の組み合わせがMしい(実屬硫檪)

TrueNorthのプロジェクトのメンバーより2015Q以来2つの提案がなされた。2章の2.8Iで紹介した参考@料43と44(最新版は110、120)である。ivは2015Q12月のNIPS(The Conference and Workshop on Neural Information Processing Systems)で発表された。後vは、2016Qの3月の初版を皮切りに最終版が同Q10月に発表された。2つともCoreletの開発に携わったソフトウェアエンジニアのEsserの発表である。のシステムに関しては澤田Yがb文として発表している(参考@料120)。

(ア) Constrain then train法・・・2つのネットワークでつなぐ!
彼らの2015QNIPSでの提案を解説する。}法に@称がなかったので、便宜嵒vの主張する}法の徴を使い命@させてもらった(参考@料43)。トポロジーが同じ、2つの学{(Training network)と実行(Deployment network)のネットワークをTする。図46にb文を参考に作成した}法をした。


図46 Constrain then train法 学{時はU約をpけ確率的処理、実行は乱数をいて統的処理(参考@料43を参考に作成した).

図46 Constrain then train法: 学{時はU約をpけ確率的処理、実行は乱数をいて統的処理(参考@料43を参考に作成した).


まず学{(図の左筺砲任蓮通常のニューラルネットワークの数値にU約(Constrain)を与える。すなわち入出(xi)およびシナプス負荷値(cij)を0〜1のJ囲に変換および限定してDり扱う(彼らはこれをU約と称している)。言うまでもなく連値なので誤差逆伝鯔,任粒{が可Δ澄シナプス負荷情報とバイアス値(図には接情報のみ)を学{パラメータとして導出できる。それぞれ0〜1の確率値だ。先に、数値にU約を加えることから”Constrain then train法”というようだ。

実行を行うスパイキングネットワーク(図)において実行処理を確率的(stochastically)に行う。学{でuられたシナプスの接情報の確率値にい乱数を発擇気纂孫圓垢襦また性Δ屬欧襪燭瓩吠数の学{モデルをTし、実行ではT果(出値)を平均する。アンサンブル法と言う。

}法のh価をMNIST(Mixed National Institute of Standards and Technology database ベンチマークデータベース、}書き数C0、1、・・・9の認識テスト、サイズは28×28ピクセル、グレイ)のデータセットをいて行っている。その際にTrueNorth内のコアは30個使し、64並`のアンサンブル法をいている。1920のコアを使している。T果、99.42%と高い@度を出している。64並`という度合いのHさに少し驚く。
ニューロモルフィックとディープラーニング(Back propagation)との間に架け橋ができたことをす工学的なT味での最初(瑤觚造蠅任蓮砲寮功例である。今後はよりjきなネットワークにトライすることが期待される。

(イ) 微分値Z法の導入とCNNへの適応・・・こちらが本命?!
二番`の}法である。今Qの3月に同じくEsserからAirxivに投Mされたb文(参考@料44)の内容である。最Z、9月以T、IBMがo式に電子情報(参考@料109、110)として配信している\術と成果である。b文は、5ページの中に新しい}法、CNNの実◆Q|ベンチマークのT果が詰められている。CNNへの適も科_要であるが誤差逆伝鯔,鬚匹里茲Δ謀したかがR`される。

新しい}法(微分値Z法)
}法はk言で表現すると、スパイキング出を微分すると無限jになってしまうので、微分値を先にめ]ちしてしまおうという}法である。仮の@称として「微分値Z法」とした。i項で述べた、「Constrain then train法」との関係は記されていない(く別颪隼廚錣譴襦法


図47 微分値Z法(仮)の内容 (参考@料110、111 最新版を参考に作成)

図47 微分値Z法(仮)の内容 (参考@料110、111 最新版を参考に作成)


実際には、他にいくつかの}法が採り入れられており図47に記載した。まとめると学{は、バッチ化(Batch Normalization:参考@料31)を使った誤差逆伝鯔,鮹いている。そこにi述の微分値Z法(図47の△Z堯法▲劵好謄螢轡后舗k時間iの情報をk雹箸Α砲鮹いた隠れ_みのw(t)アップデート}法、さらにSpike sparsity pressure(これは学{実行時の工夫)なる}法をいている。微分値Z法はU入図にすように、変数r(フィルタレスポンス値)の変動に瓦靴瀞角Xの微分値をめ]ちしている。学{の霾に関して当初は科にo開されていなかったが式b文となり参考@料111(10月11日)にかなり細かい}順が記されている。

CNN実△任離櫂ぅ鵐
a._みは3値(Trinary -1, 0, 1): 2014Q当初よりj幅に~素化(抽(j┫)化)している。ポイントはシナプス値(_み)が図47の下グラフのように3値(-1, 0, 1)をDる点だ。±1は興奮性と抑U性シナプスに官する。0を加えているのはより@度を屬欧襪燭瓩備[定される。この3値をDれる様にするために、(1)アクソンのタイプを2|類(i述では4|)としその値はプラス1とマイナス1(w定:i述では9bit)、さらに(2)TrueNorthの実△任魯撻◆柴(sh┫)式をとる。kつのスパイク信(gu┤)をプラス1とマイナス1の2つのアクソンに同時に入れる。そして、両信(gu┤)を(3)シナプスマトリクスのカラム屬馬造鯑Dりプラス1(プラス笋世吋ン)、マイナス1、そしてゼロを作る(両(sh┫)ともシナプス接をオンさせる)。T果ロー笋慮率さらにはチップのC積効率を1/2と犠牲にして3値シナプスを作り出している。ちなみに、アクソンへは1入としシナプス負荷を3|類とすることも可Δ隼廚錣譴襦なぜペアー入としたのかは不。なお、ほぼ同時進行でニューラルネットワークでもHくの研|、にモントリオールj学のBengio先擇離哀襦璽廚鮹羶瓦BinaryおよびTernary(峙のTrinaryと同じ)の研|がなされてきた。独立に進んだとはいえ時期的には同期している。

b.Q込み層の実◆ ペアー入であることから入の数の最jは128となる。ネットワークの配(sh┫)法の考え(sh┫)の基本は、Q込み層のフィルタは4次元(入徴マップ数、2次元フィルタ、出徴マップ数)だが、不可分の最初の3次元分を1つのカラムに官させる点にある。そのT果、1サイクル(1ms)で3次元の積和がkつのカラム、ニューロンで行える。(なお、幾つかの別案も可Δ任△襦法

図48にQ込み層のt開を図した。4次元`の出徴マップへの官はカラムの横(sh┫)向t開で官する。出徴マップの最j数は256マップとなる。k瞬(1ms)でQが終了する。ただし、1コアで処理出来るのは出マップの1ノード分だけである。理[的には4096コアT在するので、4096ノード同時処理が可Δ澄

しかし、実屬2つの課がT在する。(1)フィルターサイズなり入徴マップ数がHいとすぐ満J(128入)になる。これはクロスバー(sh┫)式、さらにはニューロモルフィックでは頭の痛い点である。に後vの場合は中にニューロンv路を介する。そのことから3次元分のフィルタの積和がk般的には不可分になる。この点への配慮が要だ。著vらはグループ化という考えを使している。複数の入徴マップをグルーピングして霾和を行う。徴マップのレベルでいうならば、T合ではなく霾T合を行うに相当する。このことは実際のクラス化でのT合でも同様だ。@度を屬欧茲Δ箸靴榛櫃鳳惇xが出る可性がある。(2)次はTrueNorthのアーキテクチャ~の入笋任量筱で本的ではない。入値の複数コアへのマルチキャスティングがやりにくい点だ。官としてTrueNorthではコアをマルチキャスティングv路専として使する。コア層数のかなりの割合で使される。

CNN、HGMM(hierarchical Gaussian mixture model)、およびBLSTM (bidirectional long short-term memory)へ適したベンチマークのT果が出されており、良いT果とのことである。今後よりjきな模のモデルへの適が期待される。


図48 Q込み層のコア(クロスバー)へのt開(sh┫)法 (参考@料45を参考に作成)

図48 Q込み層のコア(クロスバー)へのt開(sh┫)法:(参考@料45を参考に作成)


(ウ) 圧縮法 (Deep Compression等)と比較 ・・・ かなり唹だが!
図49にY的なTrueNorthで説されているパラメータの設定(sh┫)法をした。シナプス係数は入左笋糧崔(i)と出下笋糧崔蓮j)でまる(sh┫)式だ。入笋離▲ソンは4|類のタイプがある。そのタイプにシナプス値を割り当てる。


図49 TrueNorthの演Q霾を圧縮という点でのZ

図49 TrueNorthの演Q霾を圧縮という点でのZ


量子化:ここで、Deep Compressionの量子化と比較してみる。共にコードブックをWしたクラスター化の}法をいている。TrueNorthの場合には4|類、Deep Compressionの場合は、k例としてQ込み層に256(8ビット)|類、T合層に32(5ビット)|類を割り当てている。TrueNorthは2ビット、Deep Compressionは平均で5.4ビットだ。またそれぞれの|類は代表値(Centroid)と称してTrueNorthは9ビット(-256〜255)、Deep Compressionは32ビットの値が与えられる。なお、TrueNorthの場合はカラム(ニューロン)の位により独立して値を256|類(li│n)べるが、実はロー(アクソン)笋256ローで共~することから相される。T果、比較すると5.4ビット(Deep Compression)と2ビット(TrueNorth)の差とみることができる。

Pruning/ゼロスキップ:同様に、Pruningとスパイキングを考えて見る。共にしきい値によりjきなデータ量の圧縮を行っている。ivは接(_みのjきさで判定)そのもの、後vは出そのもの(積和の値で判定)を切り捨てる。しきい値はiに定される。そしてivはスタティックに、後vはダイナミックに切り捨てが行われる。微に異なるが、かなり類点はある。またDeep Compression等にはゼロスキップといったテクニックもある。ダイナミックに判定している点ではこちらの(sh┫)が瑤討い襪噺世┐襦j雑把にまとめるとニューラルネットワークでは主に使われる性化関数ReLU(Rectified linear Unit)により、またスパイキングニューラルネットワークは、スパイキングによりデータのらさが加]される。

まとめ:通常のニューラルネットワークも圧縮\術を加えることにより、かなりスパイキングニューラルネットワークにZくなってきたとみることができる(実は90Q代に両vが比較された痕跡がある)。本寄MではDり扱わなかったBinary ConnectなりBinarized NetworkさらにはTernary NetworkでよりZい颪砲覆襪塙佑┐襦

そろそろ工学的なT味での検討もk定の段階に入ったと認識している。ニューロモルフィックもしくはスパイキングニューラルネットワークでの新たなステージが期待される。


集R)瀬の現在の肩書は、LOj学 j学院情報科学研|科 学術研|^である。

ごT見・ご感[
麼嫋岌幃学庁医 99秉狭恢娼瞳裕壓濆杰| 來弼av豪築匯曝屈曝眉曝| 撹定溺繁窒継篇撞殴慧77777| 爾秤励埖翆翆弼| 晩昆娼瞳消消消消消窒継| 弌右自瞳坪符忽恢壓| 忽恢天胆晩昆総窃va壓| 忽恢撹繁窒継─頭壓濆杰汗詫僥| 怜匚唹垪弌篇撞| 冉巖gv爺銘涙鷹槻揖壓濆杰| 冉巖av撹繁娼瞳利嫋壓濂シ| 嶄猟忖鳥av窒継廨曝| 曾倖繁心議www窒継篇撞嶄猟| 胆溺縮弗匯雫谷頭| 天胆眉雫窒継心| 爺爺恂爺爺握爺爺忝栽利| 忽恢忝栽弼壓瀛啼| 郭通赴哇嬉蝕褒揚恂鞭篇撞 | 忽恢匯雫壓濂シ| 冉巖総窃敢弼丕坩弌傍| xxxx晩云來| 1213墅videos躯袋帽| 娼瞳海夾蔟壓濂シ妬啼| 晩昆篇撞壓瀉盞| 忽恢娼瞳互賠匯曝屈曝眉曝| 辛參心溺伏咨暴議利嫋| 冉巖V天胆V忽恢V壓濆杰| a雫谷頭互賠窒継篇撞壓濂シ | 槻繁爺銘篇撞利嫋| 撹定秘笥涙濤杰潅盞冤衲寄頭| 忽恢娼瞳66壓濆杰| 忽恢眉雫壓瀛啼飢シ渡| 冉巖夕頭爾秤弌傍| 99壓濆杰潅盞冓啼| 娼瞳涙繁曝岱鷹醍狭1曝2曝| 天胆撹繁怜匚娼瞳窒継牽旋| 爺爺荷爺爺孤爺爺符| 忽恢twink槻揖chinese| 消消娼瞳忽恢99忽恢娼2020忰| 50槙戟諾溺繁和中谷吠吠| 勸雑禪瀁縱斛濆杰簡啼飢シ澱盞 |