深層学習(ディープラーニング)を活用したAI(人工知能)アプリケーションは、人間の創造性を機械が強化する新時代を実現する鍵を握っています。

しかし、そのためにはAIに十分な学習を行わせる必要があり、ニューラルネットワークごとに数TBものデータと、数十億におよぶ演算が数日間にわたる大規模バッチ処理として行われる必要があります。また、学習が完了したネットワークを、実際に導入しようとする段階では、学習とは異なる制約に直面することにもなります。

例えばデータセンターでは、AI処理に対応できるようサーバをアップグレードしますが、サーバを設置できるスペースは限られており、消費電力も無尽蔵というわけにはいきません。その一方で、ユーザーは即時応答を期待しており、低レイテンシを実現することが求められています。

また、自動車の運転支援システムや自動運転車など、安全と人命が危険にさらされるユースケースでは、さらに低いレイテンシと、安定したリアルタイムでの応答が極めて重要になります。同時に、システムのサイズと消費電力に対する制約はデータセンターよりも厳しく、さらに重量や熱の問題も考慮することが求められるようになります。Tesla社は、2019年4月に実施した同社のイベント「Autonomy Investor Day」において、自動運転向けAIチップを自社で開発することを発表しましたが、そのチップの基本理念はGPUよりも低消費電力(100W未満)かつ低レイテンシ (バッチサイズ1)であることでした。

より難しい課題をより迅速に解決するためにAIが採用されるケースはこれからも増え続けることが予想され、そうした課題の複雑化にともなって、展開されるニューラルネットワークに求められる性能要件は高まる一方でしょう。

高効率で長期運用が可能な推論

クラウドで利用するAIでも、車載などで利用される組み込みAIでも、最新のアプリケーションを動かす推論エンジンは低レイテンシ、低消費電力、そして小型であることが求められています。

現実世界で推論をうまく実行できる学習済みニューラルネットワークを準備するには、適切なプルーニング(枝刈り)や最適化が必要であるだけでなく、消費電力、サイズ、サーマルフットプリントなどの限りある制約条件下で要求されるパフォーマンス(通常は応答時間またはレイテンシ)を確実に達成できるよう、処理プラットフォームを慎重に検討することも求められます。AIの商用展開が拡大し、エンドユーザーの需要が高まるにつれて、AIチップベンダーはその要求に対応するため、より高度なデバイスアーキテクチャの投入を進めています。

自動運転などのユースケースをターゲットとするAIチップの中には、CPUとアプリケーションプロセッサコアに算術演算用の多数のGPUを組み合わせたハイブリッドアーキテクチャを搭載しているものもあります。

確かにこれであればオンチップで利用できるリソースは増えますが、固定されたアーキテクチャである以上、開発者は柔軟性に欠けるメモリインタフェース幅やデータ解像度にしたがって開発しなければなりません。その最小幅は一般的に8ビット整数の演算です。深層学習のアルゴリズムはかなり低い解像度(2ビット、ときには1ビット)でも十分に動作することが分かってきたにもかかわらずです。

このような柔軟性に欠けたCPUまたはGPU演算アーキテクチャでは今は良くても将来におけるニューラルネットワークの性能要件を満たすことが難しいことから、解像度とコア数を適応させて演算性能と消費電力を最適化できる、柔軟なアーキテクチャへの需要が高まっています。

学習済みニューラルネットワークのプルーニングと最適化や、ターゲットプロセッサの効率的な実装の実現だけでも大きな課題ですが、さらに困難なことに、より効果的な新しいニューラルネットワークの開発速度は現状のシリコンの進化速度を上回っています。プロジェクト開始時点で最新だった技術に基づいていても、それを展開する頃には確実に時代遅れになっています。そのため、展開の時点で最先端のニューラルネットワークテクノロジの多くが、ほぼ間違いなく、既存のプロセッサアーキテクチャ内でうまく動作するといった保証はないこととなります。

  • Xilinx

    次々と新しいAIのモデルが登場する一方で、シリコンデバイスの登場サイクルはそのスピードに追いつけていない

柔軟なAIアクセラレーションの実現方法

このような性能、消費電力、将来の適応性に関する課題を解決するため、さまざまなAI開発チームがFPGAの柔軟性のメリットを活用したAIアクセラレータを構築するようになってきました。

FPGAは、最小1ビットの解像度で数百、数千に及ぶ高度に並列化された演算ユニットと、ボトルネックを解消するようにカスタマイズされたメモリインタフェースのコンフィギュレーションが可能だからです。さらに、FPGAは簡単に再プログラムできるため、シリコンの世代交代を待つことなく、ニューラルネットワークの構造をアップデートすることで、新たなネットワークの性能を十分に発揮することを可能とします。

2017年にAI専門企業であるDeePhi Tech社を買収して以来、XilinxはFPGAにニューラルネットワークを実装するための高度なプルーニングおよび最適化ツールとIPの開発にフォーカスしてきました。プルーニングは、影響が少なくゼロに近い学習の重みを削除し、可能な場合にはネットワークを再編成し、演算処理回数と各演算のために消費されるエネルギーを最小限にし、ニューラルネットワークを簡略化することですが、DeePhi Tech社のニューラルネットワーク・プルーニングテクノロジは、FPGA上での実行に最適化されており、許容可能な画像認識精度を維持しながら、最大90%の重みを取り除くことを可能としました。その結果、性能としては速度が10倍に向上する一方で、消費されるエネルギーを抑えることができるようになりました。

  • Xilinx

    CNNプルーニング技術により、AI推論で求められる性能を実現。ネットワーク性能は、プルーニングを行わない場合に比べて5~50倍向上する

クラウドからエッジへ

自動運転は、演算レイテンシの短縮、最小のサイズ、軽量化、省電力化の重要なニーズを理解するのに最適な例です。レーダーやカメラによって検出したオブジェクト(他の車、自転車、歩行者など)は検出後、直ちに特定される必要があります。

  • Xilinx

    自動運転の物体検出イメージ

人間が視覚入力に反応する速度は約4分の1秒以内であることが知られていますが、自動運転システムの実現には、少なくともこの人間と同じ、理想的にはそれを上回る速度で視覚認識ができることが求められることになります。そのため、人間のドライバーに匹敵する自動運転システムを実現するためには、たとえば、緊急ブレーキの判断、物体を検出して、認識し、ブレーキを効かせる処理まで1.5秒未満で行う必要があります。

  • Xilinx

    CPU/GPUを用いた推論処理のレスポンス時間と、FPGAを用いた推論処理のレスポンス時間の差のイメージ

Xilinxは2018年、メルセデス・ベンツ(ダイムラー社)の研究開発部門と共同で、FPGAベースの深層学習プロセッサを開発し、カメラ、レーダー、LiDARからのデータを解析してドライバモニタリング、車両誘導、衝突回避に役立てることを発表しました。両社の専門家が適応性の高い車載プラットフォームにAIアルゴリズムを実装しており、メルセデス・ベンツのニューラルネットワーク用に深層学習プロセッサテクノロジを最適化する予定です。そのテクノロジは、極めて低いレイテンシと高い電力効率を同時に可能にし、熱的制約の厳しい車載環境において高い信頼性で動作するシステムを実現します。

またデータセンターにおいても、一般的なGPUベースのプロセッサで実現可能なワットあたりの性能のレベルを超えて動作する深層学習アクセラレータがFPGA上にホストされるようになってきています。SK Telecom社では、Kintex UltraScale FPGAをデータセンターのAIアクセラレータとして導入することにより、音声起動アシスタントであるNUGUの性能が向上しました。

これは韓国の通信業界にとって初めてのAI導入であり、SK Telecom社の自動音声認識(ASR)アプリケーションを従来のGPUベースのプロセッサと比べて500%高速化しました。ワットあたりの性能は16倍に向上しています。さらに、既存のCPUのみのサーバにアクセラレータを追加して複数の音声チャネルを処理するようにしたことで、同社の総保有コスト(TCO)の削減にもつながりました。

もう1つの例は、最新のAIベースのホームセキュリティです。FPGAによって高速化された低レイテンシの推論は、この新興市場をリードする企業の1つであるTend Insights社と共同開発したクラウドプラットフォームの一部として、よりスマートな監視や、在宅介護などのサービスを可能にしています。

家中に配置されるカメラの基本的な機能は、有事の可能性がある出来事を含むフレームを特定して、クラウドで実行されるFPGAベースのAIアクセラレータにアップロードすることです。アクセラレータには一連のAPI(この場合はXilinx ML Suiteハードウェアコンパイラ)を介してアクセスできます。

AIアクセラレータは不審な人や動物と、家族の一員やペットとを区別し、脅威が検出されるとアラートを出します。オーナーの許可の下、室内カメラによるフレームも解析され、高齢者が転倒したり、介助が必要であるなど、困難な状況にある家族を特定します。その上で、指定された家族や専門の介護士にシステムから電話をかけるなどして、支援を要請することができます。

この他にも、複雑なパターンマッチングや画像認識を実行して、より迅速に結果を取得するためにAIが利用されている例は多数あります。医療診断や治療をスピードアップするためのゲノム解析もその1つです。この分野では、FPGAを使用してAIの推論を高速化することで、患者のゲノム配列の解析と根本原因の特定にかかる時間は24時間から約30分に短縮されました。そしてさらなる短縮を目指して競争が始まっています。

また、次世代エネルギーである核融合の研究でも活用されています。この実験では、1億ピクセル/フレームにも及ぶ高精細な画像を、約25ms以内にキャプチャする必要があります。これは、低レイテンシ・ニューラルネットワークによる検出が求められますが、従来のCPUベースの推論では難しい課題です。実際のところ、桁違いに短い時間での処理ですが、そうした分野ですでにFPGAベースのAIは活用され、科学者の適切なニーズに応える手助けをしています。

  • Xilinx

    アプリケーション全体をFPGA内で処理することで、AI推論とその他の性能を重視した機能の両方を最適化したアクセラレーションが可能となる

結論

現在、世界から注目を集めているAI技術はつい最近になって実用化されたものばかりであるにも関わらず、すでに人々が日常的に行うサービスを支える技術として使われています。

運用コストの削減、お客様の待ち時間の短縮、新たな付加価値サービスの創出といった展望は企業にとっては非常に喜ばしいことであり、レイテンシ、消費電力、コストを削減してパフォーマンスを向上し続けることへのプレッシャーは高まっています。

そんなAIの開発には2つの側面があります。1つ目は目の前のタスクに最適なニューラルネットワークを学習させること、2つ目は学習済みのネットワークをプルーニングおよび最適化し、適切なプロセッサにホストされた推論エンジンとして実装することです。

FPGAアーキテクチャの有する柔軟性と性能、高性能なツール群(ML SuiteハードウェアコンパイラやDeePhiオプティマイザーなど)によるインプリメンテーションと最適化、シリコン設計のやり直しを待たずに最新のニューラルネットワークアーキテクチャを実装できる柔軟性は、クラウド、ネットワーク、およびエッジにおけるAI推論アクセラレーションを実現するために欠かすことのできない3つの要素となっています。

著者プロフィール

Daniel Eaton(ダニエル・イートン)
Xilinx

戦略マーケティング開発
シニア マネージャー