エッジ用AIチップの種類と特徴

エッジAIでは計算リソースと消費電力の制約のため、計算が得意なエッジAIチップを採用する ことが多い。エッジAIチップはGPUやFPGAなど様々な種類があり、それぞれ特徴が異なる。

エッジAIの構築では、目的に応じたエッジAIチップを採用することが必要となる。本稿では、様々なデバイスで実現されているエッジAIチップの特徴を説明する。

エッジにおけるディープラーニングの推論機能とは

 画像処理にディープラーニングが用いられるようになり、世間は少しずつディープラーニングによる画像認識技術の恩恵を受けつつある。

その多くはクラウド環境もしくはGPUを搭載したサーバで「学習」「推論」の処理を実行しているが、ネットワークやクラウドでの処理を用いず、特に端末の機能だけでディープラーニングを実行することを『エッジAI』と呼び、端末が組み込み機器の場合は『組み込みAI』と呼ばれる(ここで言うAIはディープラーニングと同義で語られることが多いが、厳密にはAIはディープラーニングを内包する上位の概念である)。

エッジにおけるディープラーニングの実行環境では、PCやワークステーションのような電力にモノを言わせた強力な計算リソースを持ち合わせていない。

そのため、ディープラーニングの「学習」をエッジだけで実行するのは非現実的であり、「学習」はクラウドやサーバに組み込まれたGPUで実施して、エッジではその学習結果を元にした「推論」のみを実施する形がほとんどである(図1)。

図1 エッジでは推論のみを実行

エッジでは「推論」しか行わないとしても、その計算処理は省電力を目指して構成された組み込み機器にとっては膨大である。組み込み機器でも可能な限り正確で速い「推論」を行うために、大きく分けて次の方法が用いられる。

(1) 計算量が少ないモデルを採用する
(2) 消費電力が少ない計算用ハードウェアによるアクセラレータを組み合わせる

この2つは排他ではなく、同時に採用することで、さらに効果を発揮する。しかし、(2)の組み合わせによっては(1)が制限される場合もある。

本稿では、(2)の省電力な計算用ハードウェアによるアクセラレータを組み合わせた場合について、どのようなアクセラレータがあり、どのような特徴をもっているかを解説する。アクセラレータ選択の参考にしてほしい。

アクセラレータを構成するデバイス

組み込み機器であってもCPUは必ず載っており、メモリさえあればディープラーニングの推論の計算をすることは可能である。しかし、CPUの本来の仕事の合間にそんな膨大な計算をさせようものなら、いつ計算が終わるのかわからないほど時間がかかってしまう。

そこで、ディープラーニングの計算は、計算が得意なデバイス(電子部品)に任せようというのがアクセラレータの目的である。

こういったデバイスは、ニュースなどでは『AIチップ』と呼ばれる場合もある。エッジ機器でディープラーニングのアクセラレータに使えそうなデバイスは、現時点では、次のデバイスが代表的である。

• GPU
• FPGA
• DSP
• スマホ用SoC
• ASIC

 このうち、DSPについては単体で販売されているデバイスはあまりなく、SoCやFPGAにモジュールとして内蔵され、機能として使用されるケースが多くなっている。

車載用やスマホ用など特定用途向けのSoCでは、ディープラーニング専用に最適化したDSPやGPUモジュールを搭載したものも登場しているが、まだ本格的な量産に至っているものは少なく入手が不確定なので、本稿では言及していない。

以下に、現時点で入手および実装可能なチップという観点で、ディープラーニングにおける各デバイスの特性を解説する。

現在入手可能なアクセラレーション用デバイス

1)GPU
サーバやPCでのディープラーニングに欠かせないGPUだが、省電力が鍵になる組み込み分野では、まだ大きなプレゼンスはない。

とはいえ、潜在能力は抜群に高く、サーバ側のGPUを用いた学習環境とエッジ側の組み込みGPUとの連携も洗練されていて、学習からエッジでの推論まで一貫したエコシステムが構築されている。エッジAI開発を組み込みGPU開発キットから始める方も多いのではないだろうか。 

PoC(Proof of Concept=概念実証)の後、実際の現場でどうやって組み込みGPUを継続的に運用するか懸念されるが、その解決策として、冷却性や防水性を考慮した組み込みGPU内蔵の機器が販売されるなど、実運用を想定したエッジ機器も揃ってきた。

組み込み分野ではこれまでGPUというチップにあまり縁がなかったが、部品の安定供給やエコシステムのアップデートなど、GPUチップベンダーが継続的にエッジに力を入れているので、採用は増えていくと思われる。

2)FPGA
 産業分野で長年親しまれている FPGA だが、ディープラーニング向けではまだ存在感を示せていない。デバイスの特性上、並列計算は得意なはずだが、ディープラーニングを処理できるクラスのFPGAはかなり高価になり、他のデバイスより割高感がある。

しかし、下位クラスの FPGA でも動作可能なニューラルネットワークの研究も進んでいる。PoCに向いたFPGA内臓のエッジ機器も用意されている(図2)。消費電力・入手性・開発実績・信頼性から組み込み分野ではFPGAによるディープラーニングを期待する声は多い。

また汎用チップならではの新しいアーキテクチャへの追従も容易なことから、下位クラスのFPGAに最適化されたモデルや学習方法が登場すれば一気に採用機会は増える可能性が高い。

図2 FPGAゲートウェイ

3)スマホ用SoC
先にも書いたとおり、純粋なCPU機能だけでチップ化されているものより、他の機能を統合したSoCの方が主流である。特にディープラーニング用途としては、GPUやDSPのユニットが統合されたスマホ用SoCが、消費電力・価格・供給面で圧倒的である。

その反面、産業用途で使うには、調達ルートが限られていること、1年ごとに新型が登場するなどライフサイクルが短すぎること、Android OSによる開発のハードルの高さが問題になるが、チップベンダーでもそれを改善して産業市場を取り込もうとする動きがある。

4)ASIC
ASICは数万個以上の大量生産で高性能・低価格を実現するカスタムチップである。エッジAIの最終的な大本命はASICによるAI専用チップと思われる。

しかし、ASICの開発は膨大な時間と費用が必要なため、日進月歩のディープラーニングの分野では、チップ開発を始めてから製造可能になるまでに、採用したアルゴリズムが陳腐化してしまう恐れがある。

それを見越して、プログラマブルな演算モジュールを内蔵したり、メニーコアのように汎用性を保ったまま並列処理性能を上げたりするなど、様々な方向性のチップが開発されている。特に中国のチップベンチャーの勢いは目を見張るものがある。

また、大手クラウドサービスベンダでは、サーバ向けの推論専用チップをエッジ向けに作り直したAI専用チップの販売を予定している。

ただし、現状入手可能なAI専用チップは限られており、数社からUSBスティックタイプやM.2カードタイプで登場している程度である。このようなAI専用チップはすでにドローンなどで採用実績がある。

エッジAIアクセラレータとして何を選ぶべきか

 ではどのデバイスがエッジAIに向いていて、今後の普及が見込めるか、ということだが、今のところは決定打があるわけではない。特徴ごとに優劣をつけることは可能であるが、どの項目を優先とするかは、エッジAIを用いる現場の特性によって異なる(表1)。

表1 エッジAIアクセラレータの特性ごとの比較

自動運転など高精度で高速な画像認識が必須の現場では「AIの性能」を重視するのは間違いなく、状況に応じて手軽に作り直しや流用が必要なPoCの段階では「AIの汎用性」があった方がよい。

家電や情報機器にAIを組み込むためには何より「デバイス価格」が重要となる。工場などで長期に渡って運用し、故障したらすぐに交換する必要があるなら「デバイス入手性」が欠かせない。したがって今は、適材適所でどのデバイスでも使えるようにする、というのが正しいのではないかと思われる。

さいごに

富士ソフトでは、FPGAでのエッジAI実装を早い時期から模索してきた知見を活かし、お客様によるFPGAエッジAI作成をサポートする『エッジAIコンサルテーション』と、FPGAエッジAIのPoC 向けハードウェアプラットフォームである『IoTフォグコンピューティングゲートウェイ』の提供を行っている(図2)。

また、FPGA以外にも、GPUやSoCなど各種エッジAIアクセラレータへの対応や、独自のAI構築に必要な学習用データの作成もサポートするので、エッジAIの構築を検討されている方はご相談いただきたい。

問い合わせ
富士ソフト株式会社
TEL.050-3000-2102
E-mail:et-solution@fsi.co.jp
https://www.fsi-embedded.jp/

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください