Facebookの機械学習ライブラリPyTorch開発チームは、モバイル向けのPyTorch Mobileにおいて、AndroidのニューラルネットワークAPIであるNNAPIをサポートするプロトタイプ機能を、11月13日(現地時間)に発表した。
NNAPIは、Android 8で導入され、Android 10および11で大幅に拡張された低レベルAPIで、NNAPIを使用することによって、AndroidアプリはGPUやNPUといったスマートフォンにおけるもっともパワフルかつ効率的なチップにおいて、計算量の多いニューラルネットワークを実行できるようになる。
NNAPIにはネイティブのオンディスクモデル形式がないため、通常のTorchScriptモデル内に定義をカプセル化しており、開発者はトレーニング後にNNAPIで実行されるモデルを準備し、保存されたモデルはAndroidアプリにパッケージ(またはネットワーク経由で配信)され、PyTorch MobileのJava APIまたはlibtorch C++ APIで実行される。
すでにPyTorch Mobileを使用しているアプリなら、コードを変更する必要はなく、CPUモデルをNNAPIモデルに置き換えるだけでNNAPIを利用できる。
今回のリリースでは、線形畳み込みおよび多層パーセプトロンモデルをサポートしており、将来的にはオブジェクト検出やインスタンスセグメンテーションモデルであるMask R-CNNを含む、他の演算子およびモデルアーキテクチャをサポートしていく。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です