BasisN: 効率的なDNN処理のための新しいアプローチ
BasisNは、より高速でエネルギー効率の良い深層ニューラルネットワーク計算のためにRRAMの課題に取り組んでいる。
― 1 分で読む
目次
深層ニューラルネットワーク(DNN)は、画像認識や言語処理などのさまざまな分野で使われる強力なツールだよ。成功の理由は、多くの層を使うことで計算がたくさん必要になるから。これらの計算を速くするために、アナログインメモリーコンピューティング(IMC)プラットフォームみたいな新技術が使われてる。期待されてる技術の一つが抵抗性RAM(RRAM)で、エネルギー効率がいいんだ。
でも、RRAMベースのプラットフォームには大きな課題があるんだ。タスクを実行するためにセルをプログラムするのに時間がかかることが多い。例えば、DenseNetやResNetみたいにネットワークが大きいと、必要な重みをすべて保持するスペースがないから、システムはセルを何度も再プログラムしなきゃいけなくなる。これが時間とエネルギーの無駄になっちゃって、大きなDNNでの実際のアプリケーションには使いづらくなるんだ。
再プログラミングの課題
RRAMを使うと、DNNの重みを表現するセルをプログラムするのに時間がかかるんだ。一般的なチップは、重みを保存するために必要なクロスバーの数が限られてる。チップが必要な重みをすべて保持できない場合、計算を停止してセルを再プログラムする必要が出てくる。この再プログラミングによって、全体のプロセスがかなり遅くなるんだ。
研究者たちはこの問題に対処するために2つの主な戦略を試してる。1つ目はプログラミングにかかる時間を減らそうとする方法で、たとえばセルを一つずつじゃなくてグループでプログラムする提案がある。2つ目は、DNNのサイズを縮小して、利用可能なRRAMクロスバーの限られたスペースに収まるようにする方法だ。
こうした方法は多少は助けになるけど、再プログラミングの必要はなくならないから、DNNの処理にはまだ大きな遅延があるんだ。
BasisNの紹介
この課題に対処するために、BasisNという新しいフレームワークが提案されてる。これは、RRAMクロスバーを再プログラミングせずに大きなDNNを処理できることを目的としてる。BasisNのフレームワークは、DNNの層の重みを一度だけプログラムすることで、共有の基底ベクトルのセットの組み合わせとして表現するんだ。
BasisNフレームワークの重要な部分は以下の通り:
重みの新しい表現:DNNのすべての重みをクロスバーにプログラムする代わりに、BasisNはこれらのベクトルの組み合わせで重みを表現する基底ベクトルのセットを使うんだ。これにより、プログラミングが少なく、計算が効率的になる。
トレーニング手法:DNNをこのフレームワークに合わせるための革新的なトレーニングアプローチがあるよ。これによって限られたクロスバーを効率的に使える。
最小限のハードウェア変更:BasisNは既存のハードウェアに対してほとんど変更を必要としないから、実装が簡単なんだ。
BasisNの仕組み
重みの表現
従来の方法では、DNNの各層は大量の重みの行列として表現されてた。これらの重みは小さな部分に分解され、RRAMクロスバーに収まるようにされてた。でも、BasisNはこのアプローチを変えて、各層の重みを基本ベクトルの組み合わせとして表現できるようにしてる。
こうやって機能するんだ:
- グローバル基底ベクトル:少数の基底ベクトルがRRAMクロスバーにプログラムされる。これらのベクトルは、DNNの異なる層のさまざまな重みを表現できる。
- 係数の組み合わせ:各層は、これらの基底ベクトルといくつかの係数を使って必要な重みを計算する。係数は、どのくらいの基底ベクトルを使うかを教えてくれる。
こうすることで、各層ごとにクロスバーを再プログラムする代わりに、システムは異なる係数のセットを読み込むだけで済むから、ずっと早く、エネルギーも少なくて済むんだ。
ハードウェアの実装
BasisNフレームワークは、基底ベクトルと係数を管理するためにハードウェアを少し変更するよ。
- トランスミッションゲート:トランスミッションゲートと呼ばれる基本的な制御回路が追加される。これらのゲートは、係数に基づいてクロスバーを通る電流を選択的に流すことができる。これで再プログラミングせずに重みを計算できるんだ。
トレーニングプロセス
BasisNのトレーニング方法も違う。交互最適化を取り入れてる:
- 初期条件:基底ベクトルは最初にランダムだが直交するように初期化されて、必要なスペースをカバーできるようにする。
- 変数の最適化:トレーニングプロセスでは、基底ベクトルを固定しながら重みの係数を最適化し、その後係数を固定して基底ベクトルを更新する。このサイクルがモデルがトレーニングされるまで続く。
BasisNの利点
推論サイクルの削減
実験結果によれば、BasisNフレームワークは推論に必要なサイクルの数を大幅に削減するんだ。処理中に必要なエネルギーも、再プログラミングを必要とする既存の方法に比べて1%未満に下がるんだ。
柔軟性
BasisNは異なるハードウェアの設定に適応できるよ。利用可能なクロスバーの数に関係なくうまく機能するから、広範なハードウェアの変更を要求せずにさまざまなDNNのサイズに対応できる。
無視できるハードウェアコスト
既存のシステムへの変更は最小限なんだ。トランスミッションゲートを追加しても面積のオーバーヘッドは小さく、重大な投資なしで実装できる。
BasisNの評価
BasisNの効果を評価するために、研究者たちはResNet34とDenseNet121という2つの人気のDNNモデルを使ってテストしてる。CIFAR100とImageNetという2つの広く使われているデータセットでシステムのパフォーマンスを比較したよ。
精度とエネルギー効率
結果は、BasisNフレームワークが高い精度を維持し、従来の方法と比較して推論のサイクル数を大幅に削減できてることを示した。エネルギー効率もかなり良くて、BasisNは推論操作に必要なエネルギーが少なくて済むんだ。
推論速度
BasisNの推論速度は素晴らしいよ。従来の方法が必要とする再プログラミングステップを避けるから、処理時間がずっと速くなるんだ。これで実際のアプリケーションでの計算が早くできる。
結論
BasisNフレームワークは、RRAMベースのアクセラレーターが大きなDNNを処理する際の課題に対して有望な解決策を提供するんだ。重みの表現を変え、新しいトレーニングアプローチを使うことで、時間のかかる再プログラミングなしで効率的な計算が可能になる。
この進展は、さまざまな分野でDNNの実用的なアプリケーションを促進するかもしれないし、ディープラーニングが必要なタスクでのパフォーマンス向上につながるかもしれない。最小限のハードウェア変更と速度・エネルギー効率の大幅な向上は、機械学習と人工知能の世界でのBasisNのエキサイティングな進展を示してるんだ。
タイトル: BasisN: Reprogramming-Free RRAM-Based In-Memory-Computing by Basis Combination for Deep Neural Networks
概要: Deep neural networks (DNNs) have made breakthroughs in various fields including image recognition and language processing. DNNs execute hundreds of millions of multiply-and-accumulate (MAC) operations. To efficiently accelerate such computations, analog in-memory-computing platforms have emerged leveraging emerging devices such as resistive RAM (RRAM). However, such accelerators face the hurdle of being required to have sufficient on-chip crossbars to hold all the weights of a DNN. Otherwise, RRAM cells in the crossbars need to be reprogramed to process further layers, which causes huge time/energy overhead due to the extremely slow writing and verification of the RRAM cells. As a result, it is still not possible to deploy such accelerators to process large-scale DNNs in industry. To address this problem, we propose the BasisN framework to accelerate DNNs on any number of available crossbars without reprogramming. BasisN introduces a novel representation of the kernels in DNN layers as combinations of global basis vectors shared between all layers with quantized coefficients. These basis vectors are written to crossbars only once and used for the computations of all layers with marginal hardware modification. BasisN also provides a novel training approach to enhance computation parallelization with the global basis vectors and optimize the coefficients to construct the kernels. Experimental results demonstrate that cycles per inference and energy-delay product were reduced to below 1% compared with applying reprogramming on crossbars in processing large-scale DNNs such as DenseNet and ResNet on ImageNet and CIFAR100 datasets, while the training and hardware costs are negligible.
著者: Amro Eldebiky, Grace Li Zhang, Xunzhao Yin, Cheng Zhuo, Ing-Chao Lin, Ulf Schlichtmann, Bing Li
最終更新: 2024-07-04 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2407.03738
ソースPDF: https://arxiv.org/pdf/2407.03738
ライセンス: https://creativecommons.org/licenses/by-nc-sa/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。