エッジでのAIはもはや唖然としたAIを意味しません

ソースノード: 1579936

AI に関する一般的な通念の XNUMX つの側面は、すべてのイノベーションはクラウド上の大きな機械学習/トレーニング エンジンから始まるというものでした。 そのイノベーションの一部は、最終的には縮小/限定された形でエッジに移行される可能性があります。 これは部分的にはこの分野の新しさを反映しています。 おそらく、IoT ウィジェット用にあらかじめパッケージ化された汎用のソリューションの必要性も反映しているのでしょう。 デザイナーが製品にスマートさを求めていたものの、ML デザインの専門家になる準備がまだ整っていなかった場合。 しかし今、それらのデザイナーたちが追いつきつつあります。 彼らは、競合他社と同様に、私たち全員と同じプレスリリースを読んで調査を行っています。 彼らは、電力とコストの制約を守りながら、同じ進歩を活用したいと考えています。

エッジでのAIはもはや唖然としたAIを意味しません

顔認識

エッジにおける AI の差別化

重要なのは、許容可能なコスト/電力の範囲内での差別化です。 あらかじめパッケージ化されたソリューションからそれを実現するのは困難です。 結局のところ、競合他社も同じソリューションにアクセスできるのです。 本当に必要なのは、独自のソフトウェアベースの付加価値を重ねて利用できる専用アクセラレータとしてプロセッサ内でモデル化された一連のアルゴリズム オプションです。 ここでは、管理者と調整以外にできることはあまりないと思うかもしれません。 時が変わった。 CEVA は最近、NeuPro-M 組み込み AI プロセッサを導入しました。これにより、アルゴリズム設計の奥深くまで、最新の ML の進歩を使用した最適化が可能になります。

さて、アルゴリズムをさらに制御しますが、その目的は何でしょうか? ワットあたりのパフォーマンスを最適化したいと考えていますが、標準の指標である TOPS/W は粗すぎます。 イメージング アプリケーションは、ワットあたりのフレーム/秒 (fps) で測定する必要があります。 セキュリティ アプリケーション、自動車の安全性、ドローンの衝突回避などの場合、30 秒あたりの生の操作よりも、フレームあたりの認識時間の方がはるかに重要です。 したがって、原則として最大数千 fps/W を実現できる NeuPro-M のようなプラットフォームは、非常に低い電力で 60 秒あたり XNUMX ~ XNUMX フレームの現実的な fps レートを処理します。 これは、従来の事前にパッケージ化された AI ソリューションからの大きな進歩です。

これで可能になります

究極のアルゴリズムは、幅広い量子化オプションをはじめとして、これまでに読んだ機能をダイヤルインすることによって構築されます。 同じことが、さまざまなビットサイズにわたるアクティベーションおよび重みにおけるデータ型の多様性にも当てはまります。 ニューラル乗算器ユニット (NMU) は、8×2 や 16×4 などのアクティベーションおよび重み付けのための複数のビット幅オプションを最適にサポートし、8×10 などのバリアントもサポートします。

このプロセッサは、Winograd 変換または効率的な畳み込みをサポートし、精度の低下を限定しながら最大 2 倍のパフォーマンス向上と消費電力の削減を実現します。 スパーシティ エンジンをモデルに追加すると、ゼロ値の量 (データまたは重みのいずれか) に応じて最大 4 倍の加速が可能になります。 ここで、Neural Multiplier Unit は、2×2 ~ 16×16 の固定データ型と、16×16 ~ 32×32 の浮動小数点 (および Bfloat) の一連のデータ型もサポートします。

ストリーミング ロジックは、固定小数点のスケーリング、アクティブ化、プーリングのオプションを提供します。 ベクター プロセッサを使用すると、独自のカスタム レイヤーをモデルに追加できます。 「だから何、みんなそれを支持しているの?」と思われるかもしれませんが、スループットについては以下を参照してください。 ビジョン トランスフォーマー、3D コンボリューション、RNN サポート、行列分解などの一連の次世代 AI 機能もあります。

多数のアルゴリズム オプション。これらはすべて、CDNN フレームワークを介した組み込みソリューションへのネットワーク最適化によってサポートされ、ML アルゴリズムの能力を最大限に活用します。 CDNN は、ネットワーク推論グラフ コンパイラと専用の PyTorch アドオン ツールを組み合わせたものです。 このツールはモデルをプルーニングし、オプションで行列分解によるモデル圧縮をサポートし、量子化を意識した再トレーニングを追加します。

スループットの最適化

ほとんどの AI システムでは、これらの機能の一部は特殊なエンジンで処理される場合があり、データをオフロードし、完了時に変換をロードし直す必要があります。 これによりレイテンシーが大幅に増加し (おそらく電力も犠牲になり)、強力なモデルのパフォーマンスが完全に損なわれてしまいます。 NeuPro-M は接続することでその問題を解決します。 これらのアクセラレータは共有 L1 キャッシュに直接接続されます。 従来のアクセラレータよりもはるかに高い帯域幅を維持します。

顕著な例として、通常、カスタム レイヤーの定義に使用されるベクトル処理ユニットは、他のアクセラレータと同じレベルにあります。 VPU に実装されたアルゴリズムは、モデルの他の部分と同じ高速化の恩恵を受けます。 繰り返しになりますが、カスタム レイヤーを高速化するためにオフロードやリロードは必要ありません。 さらに、これらの NPM エンジンを最大 8 つまで使用できます (すべてのアクセラレータと NPM L1 キャッシュ)。 NeuPro-M は、L2 キャッシュと L1 キャッシュ間のソフトウェア制御による帯域幅の大幅な最適化も提供し、フレーム処理を最適化し、DDR アクセスの必要性を最小限に抑えます。

当然、NeuPro-M もデータとトラフィックの重量を最小限に抑えます。 データの場合、アクセラレータは同じ L1 キャッシュを共有します。 ホスト プロセッサは NeuPro-M L2 と直接データを通信できるため、やはり DDR 転送の必要性が減ります。 NeuPro-M は、DDR メモリを使用した転送時にオンチップで重みを圧縮および解凍します。 アクティベーションでも同じことができます。

fps/W加速の証明

CEVA は、ネイティブから Winograd、Winograd+Sparsity、Winograd+Sparsity+4×4 まで、アクセラレータでモデル化されたアルゴリズムの組み合わせを使用して標準ベンチマークを実行しました。 どちらのベンチマークでも、ISP NN の場合、最大 3 倍、電力 (fps/W) が約 5 倍のパフォーマンスの向上が示されました。 NeuPro-M ソリューションは、前世代の NeuPro-S と比較して、より小さな面積、4 倍のパフォーマンス、1/3 の電力を実現しました。

より一般的には、複数のアルゴリズムを組み合わせて究極のパフォーマンスを得るという傾向が見られます。 それが、CEVA がこのプラットフォームで可能にしたことです。 もっと読むことができます こちら.

この投稿を共有する: 出典: https://semiwiki.com/artificial-intelligence/306655-ai-at-the-edge-no-longer-means-dumbed-down-ai/

タイムスタンプ:

より多くの セミウィキ