DNNDK:自動車をはじめ数多くの実績が証明。エッジを中心にAIニーズに応える。

AIの推論に適したデバイスとして注目を集めるFPGA。ニューラルネットワークモデルを自在に構成・変更でき、高スループット*、低レイテンシ**、高エネルギー効率***などのメリットが評価される中、FPGAの大手ベンダーであるザイリンクスは学習済みのニューラルネットワークを円滑に実装できるソリューションを提供している。ここではAIを中心に取り組みや強みを聞いた。

*1秒に何枚の画像を処理できるか(単位:img/sec)

**入力が入ってから出力が出るまでの時間

***高エネルギー効率(img/sec/W)

メインイメージ
集合写真(最前列左より)
ザイリンクス株式会社 グローバルセールス エンジニアリング本部 スタッフDSPスペシャリスト ルーウィ ヴァレニャ 氏
ザイリンクス株式会社 フィールドアプリケーションエンジニア チームリーダー 友杉 伸一朗 氏

製品やサービスの価値を高めるAI。一方では活用法に悩む事例も

「AI」という言葉がテレビ番組や新聞などでも盛んに取り上げられるようになってきた。実際に、音声認識、機械翻訳、運転支援など、多くのAI技術が身近な存在となっていて、普段の生活の中でAI技術の恩恵に預からない日はないほどだ。製品やサービスにAIを取り込んで新たな価値の創出を目指し始めた企業も多い。今はまさにAIの時代といえるだろう。

――AIあるいはディープラーニングを取り巻く現在の動きをどう見ていますか?

ヴァレニャ:画像認識において、過去には特徴抽出フィルタは手で設計しなければなりませんでした。たとえば、ネコの画像を識別させるためには、顔や耳の形、毛の色、体の向きなど、さまざまなパターンをあらかじめそのためのフィルタを設計しておく必要があり、フィルタに引っかからなかった場合は認識ができなかったのです。しかしディープラーニング(深層学習)を基盤とした現在のAIは、最初に何枚かのネコの画像を多層のニューラルネットワークに「教師データ」として与えるだけで、推論とバックプロパゲーションの繰り返しを行いネコの特徴を学習し、高い精度でネコかどうかを判別してくれます。Googleなどの機械翻訳が出力する日本語が昔よりも自然になったのも、対訳文を自動で学習するディープラーニングのおかげと言えます。AIがさまざまな新しい可能性をもたらしてくれることが知られるようになったこともあって、当社のお客様を含めて産業界全体の関心も高まっていると感じますし、実際に採用案件も増えています。一方で、AIに興味はあるが何をさせたらいいのか、自社の製品にどう組み込むか、といったところで悩まれているお客様もいらっしゃいます。

CNNの実装と高速化に最適なFPGA。ADASや監視カメラを中心に採用が拡大

ディープラーニングの時代になり、注目を集めているデバイスがFPGA(Field Programmable Gate Array)だ。FPGAはハードウェア(半導体)でありながら内部のロジック回路を何回でも書き換えられるという特徴があり、プログラマブルという名称のとおり、きわめて自由度が高い。従来は産業機器のコントローラや周辺ロジックとして使われるケースが多かったが、最近は「画像処理エンジン」あるいは「推論エンジン」としての活用が広がりつつある。

――FPGAが注目されているそうですね。

ヴァレニャ:そのとおりです。FPGAは回路を自由自在に変えられますので、畳み込みニューラルネットワーク(Convolutional Neural Network)の各層(入力層、畳み込み層、プーリング層、全結合層、出力層)をフレキシブルに実装できますし、層構成の変更も簡単です。また、学習や推論を実行するには大量の行列演算を処理しなければなりませんが、FPGAであればIEEE 754で定められている32ビット浮動小数点演算器はもちろんのこと、規格に縛られることなくアプリケーションにあわせたビット幅の演算器を簡単に生成することができます(図1)。さらに、日々登場する新しいアルゴリズムにも、すぐに対応できますし、ハードウェアとして検証することができます。FPGAは豊富なメモリを内蔵していますので、データアクセスのほとんどがインメモリとなるように工夫すれば、外部メモリへのアクセスが減り、性能も向上しますし、消費電力も抑えることができます。こうしたFPGAのメリットが評価され、ディープラーニングのエンジンとして注目が集まっています。回路構成を変えるには今まで、VerilogやVHDLというハードウェア記述言語を利用する必要がありましたが、高位合成によって、C、C++やOpenCLを用いて、抽象度が上がりました。また、回路のIP化によって、ハードウェア知識がなくても、学習済みのニューラルネットワークを推論エンジンとして、FPGAに実装することができます。Linuxデバイスを操作する感覚でソフトウェア屋さんでも高速な推論エンジンを使いこなせます。

図図1:様々なビット幅の演算器を生成できるFPGA。

――ザイリンクスのFPGAは主にどういったアプリケーションに使われているのでしょうか。

友杉:画像認識に関して多いのは自動車関連のお客様ですね。量産車の先進運転支援システム(ADAS)などに幅広く搭載されていて、2018年には29社の111車種に採用されました。また、2018年6月にはメルセデス・ベンツで有名なドイツのダイムラーAGとパートナーシップを組んだことを発表しましたし、2019年1月には同じくドイツのZF Friedrichshafen AGという大手サプライヤとの提携を発表しています。こうした自動車関連のお客様からは、安全を確保するために認識精度を上げつつも、よりコンパクトで消費電力も抑えたソリューションが求められていて、高い性能を実現できるFPGAはそうしたニーズに合致すると考えています(図2)。産業系ではサーベイランス・システム(監視カメラ)への応用が広がっています。映像の中から怪しい動きをする人物を識別したり、道路の渋滞状況を自動で認識するなどの目的で使われています。また、産業用ロボットの視覚としても採用が進んでいて、たとえば乱雑に詰まれた多くの物の中からひとつを取り上げるピッキング機能への応用もそのひとつです。

図図2:ザイリンクスの自動車向けソリューション。

エッジに注力するザイリンクス、pruningもツールでサポート

ディープラーニングのマーケットの広がりを受けて、さまざまな半導体ベンダーがソリューションの拡充を進めている。競合となるソリューションがひしめく中で、FPGAの「老舗」であり、ダイムラーAGなどとの戦略的提携を進めるザイリンクスは、どのような領域に注力し、どのような価値をユーザーに提供しようとしているのだろうか。

――ザイリンクスの取り組みを教えてください。

ヴァレニャ:当社が現在力を入れているのが推論フェーズに対するソリューションです。エッジ側ということでマーケット規模が大きいことがその理由のひとつですが、高性能、低レイテンシ、ローパワー、小型化、ローコストといったさまざまなユーザーニーズを満たすソリューションを提供しています。ただし、だからといって学習フェーズ側をやらないということではありません。「ACAP(Adaptive Compute Acceleration Platform)」と呼ぶ新しいカテゴリの製品の開発も進めています。ACAPの最初のポートフォリオは7nmプロセスを用いたVersalþデバイスで、32ビットの浮動小数点エンジンも数多く実装できますので、学習側のエンジンとして最適なプラットフォームになると考えています。

――ディープラーニングの応用としては、先ほども挙がった画像認識のほかに、機械や設備の予知保全などへの期待もあるかと思います。どういったアプリケーションを対象にしているのですか?

ヴァレニャ:現状フォーカスしているのはビジョン(画像認識)系ですね。先ほど友杉が言ったように、自動車、サーベイランス、ロボットなど、画像認識の需要は多く、しかもFPGAは畳み込みニューラルネットワークをフレキシブルに実装できますので、特徴を生かしやすいということもあります。開発面ではディープラーニングの開発フレームワークであるCaffeなどから、RTLを書かず、スムーズにFPGA実装に落とし込めるIPとツールチェーンを提供しています。また、顔認識、歩行者認識、人物照合(追跡)、骨格検出、物体認識、標識認識、車種識別など、画像処理に関する20種類を超えるサンプルネットワークも用意しています。一方、設備や機械の予知保全は、畳み込みニューラルネットワークではなく回帰型ニューラルネットワーク(Recurrent Neural Network)や長期短期記憶(Long short-term memory)といった手法を用いる必要がありますが、今の時点ではザイリンクスはこの領域に対して専用のツールチェーンやIPを特に提供していません。もちろん実装することは可能ですので、通常の高位合成ツールを利用するなどして、お客様に対応していただくことになります。

――強みとなる技術があれば紹介してください。

ヴァレニャ:ザイリンクスのソリューションやテクノロジーにはさまざまな特徴や強みがありますが、畳み込みニューラルネットワークを実装されるお客様に特にご紹介しているのが、演算器のビット数削減と「pruning(プルーニング)」です。エッジ側の推論エンジンには、推論精度はもちろん必要ですが、ローパワー化やローコスト化も求められます。そのひとつの方法がニューラルネットワークを構成する演算器のビット数をいかに抑えるかで、回路規模と消費電力が大きい32ビット浮動小数点ではなく、8ビットや4ビット、あるいは1ビットで構成する方法が提唱されています。FPGAはフレキシブルに演算器を実装できるというメリットがあり、ビット数の異なる演算器を組み合わせたハイブリッド構成も実現できます。推論に使われる演算のビット幅がどんどん狭くなっているトレンドに応じ、他社は新しいアーキテクチャを作らなければなりません。また、UltraScaleþポートフォリオ以降のザイリンクスのFPGAに搭載されているDSP48E2スライスは、ふたつのINT8累積乗算(MACC)を同時に実行することが可能であり、競合のソリューションに比べて演算処理の高速化が可能です。もうひとつがニューロンやシナプスを省略しながら推論精度のロスを1%程度に抑える手法として近年注目されている「pruning(枝刈り)」のサポートです。物体検出のSSD(Single Shot Multibox Detector)処理でのチャンピオンデータですが、認識精度(mAP)を維持しながら、117GOPsも必要だった演算数をpruningと再学習によって4種類を検出するには11.7GOPsにまで圧縮した評価結果もあります。エッジ側推論器の大幅な軽量化はローパワー化や高性能化に直結しますし、よりロジック規模の小さいFPGA品種が使えます。このpruningをツールとしてサポートしているのは現時点でザイリンクスだけと認識しています。

デバイスや評価ボードなどニーズに応える豊富な選択肢を提供

最先端のアルゴリズムも実装できるフレキシビリティ、回路の小型化が図れる最適な演算器、20種類を超えるサンプルネットワーク、pruningのサポート、自動車業界で認められた信頼性など、さまざまな強みや特徴を備えたザイリンクスのFPGA。ディープラーニングの高速化技術で高い知名度を持つ中国のDeePhi Techを2018年7月に買収するなど、テクノロジーのさらなる強化に取り組んでいる。

――最後に、APSの読者に向けて一言お願いします。

友杉:ザイリンクスは、消費電力を下げるにはどうしたらいいか、認識精度を上げるにはどうしたらいいか、といったディープラーニングを実現するうえでの課題に対して、明確なソリューションを持っています。また、ヴァレニャが説明したpruningを含め、エッジ側のツールフローが完成されていますので、より手軽に活用していただけるのではないかと考えています。評価ボードについても、お客様のニーズやターゲットシステムに応じて、クレジットカード・サイズなものも含めて数種類を提供しています。FPGAのデバイスファミリーも豊富ですから、ニーズに応じた選択肢が数多く用意されていることになります。当社はFPGAベンダーであるとともに「AIを高速化するプラットフォームを提供している会社」でもあります。自社の製品や装置にAIを組み込んで価値を高めたい、とお考えのお客様には是非ザイリンクスのソリューションを検討していただきたいなと思います。

ヴァレニャ:映画「ターミネーター」では自我を持ち、核戦争を起こすSkynetというコンピュータが描かれましたが、進化が続く現在のAIは架空のSkynetよりもはるかに多くの可能性を社会や生活にもたらしてくれると信じていますし、いずれは知的なロボットも誕生するでしょう。これからも、お客様の課題に取り組むとともに、さまざまな提案や発信を続けながら、可能性のある未来を創造できるように努めていきます。

APS EYE'S

AIを具体的に進化させ続けるザイリンクスの取り組みは、FPGAとツールのバランスの良さが決め手と言える。AIで用いられる演算器のビット数が削減されるとFPGAの方が強みがより生かされる。どうバランスよくシステム構築をするかは、ユーザーの腕にかかっている。