DeLTA-Family:超小型FPGAを深層学習に活用、LeapMindの開発ソリューション。

ディープラーニング専業のスタートアップ企業、LeapMind。DNN(Deep Neural Network)のサイズを圧縮する1ビット量子化の技術と、FPGA回路設計技術を武器に、組み込みAI市場へ切り込む。同社は、学習データ作成支援サービスやクラウドベースのDNNモデル構築環境などを、コンサルティング付きで顧客に提供する。さらに、モデル構築環境は、オープンソースとして公開。米国Intel社のAI Builders Programのメンバーであり、同社のCyclone® V SoC FPGAを採用している。ここでは、LeapMindとIntelに、組み込みAIの展望や製品の概要と、両社の協業の内容について話を聞いた。

メインイメージ
集合写真(左より)
LeapMind株式会社 Marketing Division 坂口 真里奈 氏
LeapMind株式会社 Alliance, Business Division 野尻 尚稔 氏
インテル株式会社 プログラマブル・ソリューションズ事業本部 インダストリアル&オートモーティブ・ビジネス・ユニット シニア・マネージャー 生嶋 孝之 氏
LeapMind株式会社 Manager, Marketing Division 内田 遼 氏

生産ラインやインフラ点検、監視カメラに入る深層学習

――LeapMindは、どのようなビジョンを持った企業ですか?

野尻(LeapMind):当社は2012年創業の、ディープラーニング(深層学習)技術を専業とする会社です。“Deep Learning of Things(DoT)”、すなわち「あらゆるものの中にディープラーニングが入っていく世界」の実現を目指しています。その目的を実現するために、組み込み開発を対象としたソリューション「DeLTA-Family」を提供しています。

――組み込み開発にディープラーニングを導入する場合、どのような課題がありますか?

野尻:「省スペース、省電力」、「セキュリティ」、「リアルタイム応答性」、「ネット接続の制限」といった組み込み特有の要件があります。例えば、IT系ではGPUやサーバ向けCPUを使って計算する手法が主流ですが、組み込みの場合は消費電力などの制約があって、これらを適用しにくいケースがあります。

――組み込みの場合、クラウドとの連携もネックになりそうです。

野尻:工場の製造ラインにおける画像解析を考えると、セキュリティ上の理由で画像データを社外に出せないことがあります。そもそもネットワークがない、もしくは常時接続が難しい環境もあります。また、即座に判断し駆動するシステムでは、判断のたびにクラウドに問い合わせていては間に合いません。

――そのために、推論処理をエッジ側で行う必要がある、と。

野尻:そうです。当社の製品の例では、工場の生産ラインのほか、産業用ドローンや監視カメラなどの分野で多くの引き合いがあります。

――産業用ドローンは、どのようにディープラーニングを活用しているのでしょう?

野尻:NTTデータ様の事例では、電線に沿ってドローンを飛行させるときの自律飛行制御に当社の技術を使っています。

――インフラ点検にドローンを使うケースが増えそうです。

野尻:電線はその一例ですが、海外では石油や天然ガスなどを輸送するパイプラインの点検を人手でやっているところがあります。パイプラインに沿ってドローンを飛ばし、パイプ表面の異常(ひび割れなど)を検出するという活用方法です。

1ビット量子化とFPGA実装で、組み込み開発の要求に応える

――DeLTA-Familyについて教えてください。

野尻:画像を利用するディープラーニングの入口から出口までをカバーするソリューションで、中心となるのは3つのパッケージです。「DeLTA-Mark」はプロジェクト管理機能を持つ学習用データ作成環境です。「DeLTA-Lite」は、プログラミング不要でDNNのモデルを作成できるクラウドベース(SaaS方式)の開発環境です。「DeLTA-Kit」は作成したモデルを評価するためのFPGAボードです(図1)。

図図1:DeLTA-Kitに含まれるCyclone V SoC搭載ボード。

――どのような問題を解くためのモデルが用意されていますか?

野尻:現在は、分類問題と物体検知が登録済みで、セマンティックセグメンテーション(分類に基づく画像領域分割)のモデルが登録される予定です。

――すでに、さまざまな企業がモデル構築支援の環境を提供しています。DeLTA-Liteの特徴は?

野尻:ディープラーニングの知識がそれほどなくても、画像データさえあればモデルが手に入る、という点です。しかも出来上がったモデルは、PCやサーバではなく、コンパクトな組み込みボードで動作します。

――ターゲットデバイスはFPGAだけですか?

野尻:原理上はFPGAでなくてもかまわない、という作りになっています。ただ、当社が狙っているのはDoTの世界なので、省電力や低コストが要求されます。選択肢として組み込みプロセッサやマイコンもあるとは思いますが、性能に限界があります。こういった理由から当社では、主にFPGAをターゲットとしています。

生嶋(インテル):補足しますと、CPUコアを内蔵したSoCタイプのFPGAですね。現在は28nmプロセスで製造した「Cyclone® V SoC」をお使いいただいています。

――なぜ、FPGAがディープラーニングに向くのでしょう?

野尻:一般に、ディープラーニングの処理は、GPUやサーバ向けCPUの上で、浮動小数点演算、もしくは8ビット整数演算によって行うのが主流です。一方、当社の技術は1ビットまで量子化します。ビット演算を多並列で行うのに適しているデバイスは何かというと、FPGAになります。

生嶋:FPGAであれば、DNNの演算だけでなく、その前処理や後処理も含めて1チップ化できます。カメラから取り込んだ画像をフィルタリングしたり、後段にユーザー独自のインタフェース回路を入れたり、といったことが可能です。

――「1ビット量子化」とは、論理演算子(AND、OR)レベルのハードワイヤード回路に展開するということですね?

野尻:おっしゃるとおりです。1ビットまで量子化しないと、DNNの係数を保存するために必要なメモリ量が大きくなってしまいます。一般的なディープラーニングの場合、何十~何百Mバイトのレンジですが、1ビット量子化なら数十K~数Mバイトで済みます。

生嶋:産業用機器や車載システムの開発者に聞くと、量子化した場合でも8ビット、16ビットあたりに落とし込んでいるケースが多いようです。1ビット量子化は、学会論文などではいろいろと発表されていますが、実際にチャレンジして事業化までしている例は、非常に珍しい。LeapMind様の強みは、ここにあると思います。

――SoCタイプを選んだ理由は?

野尻:SoCタイプであれば、それなりのOSが動きます。ディープラーニングの世界ではLinuxを使うことが多く、Linuxのソフトウェアスタック一式が動く、というのは重要です。

――DeLTA-Liteでのモデルの生成には、どのくらいの時間がかかりますか?

野尻:短いものであれば数時間、長くて1日くらいです。学習の進み具合がグラフ(図2)で表示され、最終的にテスト結果が出力されます。

図図2:学習の進み具合を示すDeLTA-LiteのUIグラフ画面。縦軸は学習の回数、横軸は平均適合率の平均値(mean average precision)を示す。

モデル生成の心臓部を、オープンソースとして公開

――2018年10月にDNN量子化モデル生成のためのツールやライブラリをオープンソースとして公開しました。

野尻:「Blueoil」と呼んでいます。DeLTA-Liteのバックエンド部分に相当します。

――なぜ、公開したのでしょう?

野尻:当社の技術で社会に対して貢献したい、というのが一つの理由です。

内田(LeapMind):当社には、「ディープラーニングの技術を広めていく」というミッションがあります。いかにしてディープラーニングを身近に使っていただくか、を考える中で、今回の取り組みにたどり着きました。

野尻:AIを実現するには、GPU以外の選択肢があることを知ってほしい、という理由もあります。

――反響は?

野尻:Blueoilの発表以降、かなりの方々に「ニュースを見た」と言っていただきました。「実際に動かしてみた」という方も結構いらっしゃいます。

内田:GitHubのリポジトリに“100スター”が付いたのは、かなり早かったです。

――ライセンス形態は?

野尻:Apache2.0です。ユーザーがBlueoilを使って製品を開発していただいても、何の問題もありません。ご自身でテストしてください、というだけです。コードを公開する必要も、使用を報告する義務もありません。

IntelのAIエコシステムが開発者同士をマッチメイキング

――AIについては、Intel社もさまざまな取り組みを行っています。

生嶋:例えば「Movidius™」と呼ばれるエッジ端末向けの画像認識プロセッサや、「Nervana™」というハイエンドの学習処理に特化したAIプロセッサを開発しています。当社の大きな目標は、より多くの機器にAIを搭載していただくことです。その一環として、2018年9月に「OpenVINOþ」というオープンソースのツールキット(APIライブラリ)の提供を開始しました。これを使うことで、開発者は、ハードウェアの違いを意識することなく、共通の環境でディープラーニングのアプリケーションを開発できるようになります。

――OpenVINOの環境とLeapMindのDeLTA-Liteは競合しませんか?

生嶋:OpenVINOは汎用的なAPIとして提供しており、当社の数々のチップセットで動くように作られています。一方、LeapMind様のツールは1ビット量子化に特化したものです。FPGAに1ビット量子化した回路を実装したい場合は、当然、LeapMind様のツールのほうが使いやすいでしょう。もっと汎用的にたくさんのチップセットをターゲットにしたい場合はOpenVINOのほうが向いていると思います。それぞれの特徴を見極めて、開発者の方に選択していただくのが適切かと思います。

――協業のための活動は行っていますか?

野尻:東京・有楽町にある「インテル® コラボレーション・センター」で、当社製品のデモ展示をさせていただいています。

生嶋:セミナー講演でLeapMind様の取り組みを紹介させていただいたり、展示会の当社のブースでLeapMind様のデモ展示を行ったりしています。また、当社は「AI Builders Program」というAI開発のエコシステムを構築しており、LeapMind様にはそのメンバー企業になっていただきました。当社がプロモーションや開発者同士のマッチメイキングなどを支援していきます。

――AI Builders Programに多くの企業が参加

生嶋:これはワールドワイドのプログラム*なので、当社の全世界のユーザーに対して扉が開かれたことになります。

*米国Intel社 AI Builders Program メンバー181社、2019年1月APS編集部調べ

――LeapMindの今後の展開は?

野尻:DeLTA-Kitのボードや対応デバイスを増やしていきたいと考えています。当社のみでの実現は困難なので、パートナーシップを拡充する予定です。また、ユーザーからのフィードバックをいただきながら、モデルの追加など、様々な課題に取り組んでいきます。

――IntelからLeapMindへの期待は?

生嶋:LeapMind様の量子化されたコンパクトなAIがカメラや端末に組み込まれることにより、それぞれの機器がつながりながら、よりスマートな世界が実現されます。今後も新しいことにチャレンジし、FPGAを活用したAIのユースケースをどんどん発表していただきたい、と思います。

APS EYE'S

1ビット量子化技術をローエンドのFPGA上で実現させたLeapMind。組み込みAIプラットフォームは数あれど、具体的なソリューションは案外少ない。LeapMindは、DeLTA-FamilyやBlueoilを通して、ビジネスとオープンソースへの貢献を見事に両立させた。