首页 > TensorFlow
阅读:758
移动端优化TensorFlow代码详解
在这个案例中将考虑采用不同的方式来优化运行在移动设备上的 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 计算图的工具:
-
比较这两个模型:
解读分析
量化有助于将常值运算从 32 位减小到 8 位,以减少模型的大小。一般来说,该模型性能不会显著下降,但是,必须要在一个个案例中加以核实。所有教程
- socket
- Python基础教程
- C#教程
- MySQL函数
- MySQL
- C语言入门
- C语言专题
- C语言编译器
- C语言编程实例
- GCC编译器
- 数据结构
- C语言项目案例
- C++教程
- OpenCV
- Qt教程
- Unity 3D教程
- UE4
- STL
- Redis
- Android教程
- JavaScript
- PHP
- Mybatis
- Spring Cloud
- Maven
- vi命令
- Spring Boot
- Spring MVC
- Hibernate
- Linux
- Linux命令
- Shell脚本
- Java教程
- 设计模式
- Spring
- Servlet
- Struts2
- Java Swing
- JSP教程
- CSS教程
- TensorFlow
- 区块链
- Go语言教程
- Docker
- 编程笔记
- 资源下载
- 关于我们
- 汇编语言
- 大数据
- 云计算
- VIP视频
优秀文章
- Go语言指针详解,看这一篇文章就够了
- Go语言reflect.TypeOf()和reflect.Type(通过反射获取类型信息)
- 流迭代器实现文件操作(读取和写入)方法详解
- Linux文件特殊权限(SUID、SGID和SBIT)设置详解
- Linux lsattr命令:查看文件系统属性
- Android手机区域设置详细步骤
- 基于大数据的个性化推荐系统
- JSP PageContext.getErrorData()方法:返回包含错误信息的ErrorData对象
- Hibernate projectionList方法:创建多个投影列
- Spring getServletContext方法:取ServletContext上下文