关于tensorflow模型保存几种格式


ckpt

常规模型保存,模型结构,数据,运算图分开保存。常用在训练阶段使用。

h5

keras前端保存的模型格式,有两种,纯数据和数据+网络结构,可以被tf调用。可以用软件查看内部数据,并进行修改。

pb

用于移动端端/server端都有使用,包括结构+数据,不可以修改内部,也就是为什么叫做凝固图了。可以做量化模型处理,目前只支持int8和float16两种格式量化。

pbtxt

pb的扩展格式,可以被修改内容,用记事本就可以修改。

tflite

一种实验的数据格式,也叫轻量化模型,多用于手机,平板,树莓派之类的边缘设备。可以用轻量级的`tflite_runtime`包来调用。

支持int8和float16两种格式量化。

说明  

pb和tflite都可以做模型量化,pb量化用到tensorflow-serving服务器,好像量化后,只能在linux短的tf调用,而tflite轻量化-量化用到移动端,在ios系统上调用好像要经过处理,要不会报错。

import tensorflow as tf
 
saved_model_dir = "./pb_model"
 
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir,
                                                     input_arrays=["inputs"],
                                                     input_shapes={"inputs": [1, 784]},
                                                     output_arrays=["predictions"])
converter.optimizations = ["DEFAULT"]  
converter.post_training_quantize = True  # 就这个行
tflite_model = converter.convert()
open("tflite_model_v3/eval_graph.tflite", "wb").write(tflite_model)

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值