在这个案例中将考虑采用不同的方式来优化运行在移动设备上的 TensorFlow 代码。从减少模型的大小到量化等方面进行相关的分析。 使用 Bazel 来构建 TensorFlow 的不同组件,因此,第一步是
使用 Bazel 来构建 TensorFlow 的不同组件,因此,第一步是确保已经安装了 Bazel 和 TensorFlow。
具体做法
- 从网址https://developer.android.com/studio/install.html安装 Android Studio。
-
按照网址https://docs.bazel.build/versions/master/install.html的说明安装 Bazel。对于 macOS 使用 Homebrew:
-
从 GitHub 克隆 TensorFlow 发行版:
-
建立总结计算图本身的计算图变换器:
-
下载一个 TensorFlow 计算图作为示例。本例中将使用 Inception v1 TensorFlow 计算图:
-
总结 Inception 计算图,并注意常量参数的数量:1346 万。每个参数都存储 32 位的浮点数,这非常占用资源:
-
编译用于将常值运算量化为 8 位的工具:
-
运行用于量化 Inception v1 计算图的工具:
-
比较这两个模型: