android - 来自 Tensorflow 的图形文件(.pb)的大小对于 android 使用来说太大了,如何减少它?

标签 android tensorflow

我尝试构建一个使用 tensorflow 实现 Yolo 对象检测的网络,我希望它可以在 Android 上使用。构建结构后,我使用 tf.train.write_graph 获取图形文件,并想替换 android demo 中的原始文件。 但是 pb 文件太大(1.1G),在 Android 上无法使用。那么,我该如何减小尺寸呢?

最佳答案

我建议您首先尝试量化您的图表,因为您只需要一个官方的 TensorFlow 脚本。这是 Pete Warden 的精彩教程: https://petewarden.com/2016/05/03/how-to-quantize-neural-networks-with-tensorflow/

理论上,如果您使用 32 位 float ,您的模型将最终缩小约 4 倍(约 250Mb),因为图中的值将转换为 8 位整数(对于推理,它对性能没有显着影响).请注意,当您压缩 Protocol Buffer 文件时,这会起作用。

关于android - 来自 Tensorflow 的图形文件(.pb)的大小对于 android 使用来说太大了,如何减少它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39441107/

相关文章:

java - NumberFormatException:无法将 '' 解析为整数

android - 尝试初始化 monoAndroid 包时出错

java - 为什么这个 Java 编码是 UTF-8 --> Latin1 错误?

python - Tensorflow 不使用 GPU,发现 xla_gpu 不是 gpu

python - 为什么这个 TensorFlow 示例在激活函数之前没有求和?

java - Android TabbedActivity - "MainActivity.java"中缺少案例声明

android - 无法隐藏 SearchView 的虚拟键盘 ifiedbydefault(false)

c++ - Tensorflow Serving bazel 构建错误 : mnist_inference_2. cc - 尚未声明签名

python - 如何修复 - 导入 keras 时出现 ImportError : DLL load failed,

pandas - 数据集 API 'flat_map' 方法对与 'map' 方法一起使用的相同代码产生错误