TensorFlowLiteガイド
TensorFlow Liteは、開発者がモバイルデバイス、組み込みデバイス、IoTデバイスでTensorFlowモデルを実行するのに役立つツールのセットです。低遅延で小さなバイナリファイルを使用して、デバイス側の機械学習推論をサポートします。
TensorFlow Liteには、次の2つの主要コンポーネントが含まれています。
- TensorFlow Liteインタープリター。携帯電話、組み込みLinuxデバイス、マイクロコントローラーなど、さまざまな種類のハードウェアで特別に最適化されたモデルを実行できます。
- TensorFlow Liteコンバーター。TensorFlowモデルをインタープリターが使用できる効率的な形式に変換し、最適化を導入してバイナリファイルのサイズを縮小し、パフォーマンスを向上させることができます。
エッジでの機械学習
TensorFlow Liteは、デバイスとサーバー間でデータをやり取りすることなく、ネットワークの「エッジ」にあるデバイスで機械学習を簡単に実行できるように設計されています。開発者にとって、デバイス側で機械学習を実行すると、次のことが役立ちます。
- レイテンシーの削減:データはサーバーとの間でやり取りする必要がありません
- プライバシーの保護:データがデバイスから出ることはありません
- 削減された接続:インターネット接続は必要ありません
- 消費電力の削減:ネットワーク接続は非常に電力を消費します
TensorFlow Liteは、超小型マイクロコントローラーから強力な携帯電話まで、さまざまなデバイスをサポートします
独自のAndroidアプリケーションを作成する
Androidコードをすばやく記述したい場合は、Android画像分類コードの例を出発点として使用することをお勧めします。
次のセクションには、AndroidでTensorFlowLiteを使用する方法に関するいくつかの役立つ情報が含まれています。
JCenterでTensorFlowLiteAARを使用する
AndroidアプリケーションでTensorFlowLiteを使用する場合は、TensorFlowLiteでホストされているJCenterAARを使用することをお勧めします。
次のようにbuild.gradle
依存関係で指定できます:
dependencies {
implementation 'org.tensorflow:tensorflow-lite:0.0.0-nightly'
}
このAARには、AndroidABI内のすべてのバイナリファイルが含まれています。サポートする必要のあるABIのみを含めることで、アプリケーションのバイナリファイルサイズを減らすことができます。
ほとんどの開発者ジェーンが削除したx86
、x86_64
およびarm32
ABIをお勧めします。あなたは、次のGradleの構成を使用することができ、この構成では、のみarmeabi-v7a
とarm64-v8a
ライブの構成その最も近代的なAndroidデバイスのカバー。
android {
defaultConfig {
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
}
}