您好,登錄后才能下訂單哦!
小編給大家分享一下Tensorflow模型轉換.pb convert to .lite的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Tensorflow 推出Lite版本,可實現移動端的快速運行,其中,一個很關鍵的問題,如何把現有分類模型(.pb) 轉換為(.lite)模型呢?
其實,步驟如下
1- 進入 Tensorflow 源碼文件夾(以便bazel可以無需配置找打相應路徑)
2- 轉換可執行文件
bazel run --config=opt \ //tensorflow/contrib/lite/toco:toco -- \ --input_file=/tmp/mobilenet_v1_1.0_224_frozen.pb \ # 待轉換模型路徑 --output_file=/tmp/tflite_model2.tflite \ # 目標模型路徑 --input_format=TENSORFLOW_GRAPHDEF \ --output_format=TFLITE \ --input_shape=1,224,224,3 \ # 輸入圖像寬高 --input_array=input \ # 輸入節點名稱<參考1> --output_array=MobilenetV1/Predictions/Reshape_1 \ # 輸出節點名稱<參考1> --inference_type=FLOAT \ # 圖像數據類型 --input_data_type=FLOAT
參考1: 如果輸入輸出節點不知道:進入python,import tf ,并通過如下命令( tf.GraphDef() )查找:
>>> import tensorflow as tf >>> gf = tf.GraphDef() >>> gf.ParseFromString(open('/your/path/to/graphname.pb','rb').read()) >>> for n in gf.node: >>> print ( n.name +' ===> '+n.op )
參轉換后,在android手機上運行,在不考慮精度的前提下,不同實現方式得到的結果如下:
模型 | type | model size | speed |
---|---|---|---|
mobilenet-v1-224 | .pb | 17 mb | 106 ms |
mobilenet-v1-224 | .lite | 16.4 mb | 72 ms |
以上是“Tensorflow模型轉換.pb convert to .lite的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。