最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決tensorflow模型壓縮的問(wèn)題_踩坑無(wú)數(shù),總算搞定

 更新時(shí)間:2021年03月02日 15:58:38   作者:畢業(yè)恐慌癥1  
這篇文章主要介紹了解決tensorflow模型壓縮的問(wèn)題_踩坑無(wú)數(shù),總算搞定!希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

1.安裝bazel,從github上下載linux版的.sh文件,然后安裝

2.從GitHub上下載最新的TensorFlow源碼

3.進(jìn)入TensorFlow源碼文件夾,輸入命令

bazel build tensorflow/tools/graph_transforms:transform_graph

這里會(huì)遇到各種坑,比如

ERROR: /opt/tf/tensorflow-master/tensorflow/core/kernels/BUILD:3044:1: C++ compilation of rule ‘//tensorflow/core/kernels:matrix_square_root_op' failed (Exit 4)

gcc: internal compiler error: Killed (program cc1plus)

這個(gè)錯(cuò)誤是cpu負(fù)荷太大,需要加行代碼

# 生成swap鏡像文件
sudo dd if=/dev/zero of=/mnt/512Mb.swap bs=1M count=512
# 對(duì)該鏡像文件格式化
sudo mkswap /mnt/512Mb.swap
# 掛載該鏡像文件 
sudo swapon /mnt/512Mb.swap

又或者這個(gè)@aws Error downloading

我看csdn有的博主解決方法是去臨時(shí)文件夾刪掉文件重新下載,但是我這邊發(fā)現(xiàn)沒(méi)用,我這邊的解決方法是運(yùn)行bazel前先輸入一條命令:

sed -i '\@https://github.com/aws/aws-sdk-cpp/archive/1.5.8.tar.gz@aws' tensorflow/workspace.bzl

命令里的網(wǎng)址就是實(shí)際要下載的文件的地址,因?yàn)橛械牡刂房赡芨牧?/p>

到這里編譯bazel就完成了

4.編譯完了就可以模型壓縮了,也是一行代碼,in_graph為輸入模型路徑,outputs不動(dòng),out_graph為輸出模型路徑,transforms就填一個(gè)quantize_weights就可以了,這個(gè)就是把32bit轉(zhuǎn)成8bit的,也是此方法最有效的一步;我看有的博主還先編譯summary然后打印出輸入輸出結(jié)點(diǎn),之后再輸入一大堆參數(shù),還刪除一些結(jié)點(diǎn)啥的,我這邊都試了,最終也并沒(méi)有更縮減模型大小,所以就這樣就可以了。

bazel-bin/tensorflow/tools/graph_transforms/transform_graph --in_graph=../model/ctpn.pb  --outputs='output_node_name'  --out_graph=../model/quantized_ctpn.pb  --transforms='quantize_weights'

最終從68m縮減到17m,75%的縮減比例,實(shí)測(cè)效果基本沒(méi)啥差別,這方法還是很管用的。

補(bǔ)充:模型壓縮一二三之tensorflow查看ckpt模型里的參數(shù)和數(shù)值

查看ckpt模型參數(shù)和數(shù)值

import os
from tensorflow.python import pywrap_tensorflow
checkpoint_path = os.path.join("<你的模型的目錄>", "./model.ckpt-11000") 
# Read data from checkpoint file
reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path)
var_to_shape_map = reader.get_variable_to_shape_map()
# Print tensor name and values
for key in var_to_shape_map:
 print("tensor_name: ", key)
 print(reader.get_tensor(key))

注意:

1、"<你的模型目錄>“是指你的meta、ckpt這些模型存儲(chǔ)的路徑。

比如路徑”/models/model.ckpt-11000.meta"這種,那么"<你的模型目錄>“就是”/models"

2、當(dāng)目錄下有多個(gè)ckpt時(shí),取最新的model名字到ckpt-<最大數(shù)字>就可以了,后面不用了。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • 如何使用pycharm連接Databricks的步驟詳解

    如何使用pycharm連接Databricks的步驟詳解

    這篇文章主要介紹了如何使用pycharm連接Databricks,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Python的進(jìn)程間通信詳解

    Python的進(jìn)程間通信詳解

    大家好,本篇文章主要講的是Python的進(jìn)程間通信詳解,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-02-02
  • Python基于聚類(lèi)算法實(shí)現(xiàn)密度聚類(lèi)(DBSCAN)計(jì)算【測(cè)試可用】

    Python基于聚類(lèi)算法實(shí)現(xiàn)密度聚類(lèi)(DBSCAN)計(jì)算【測(cè)試可用】

    這篇文章主要介紹了Python基于聚類(lèi)算法實(shí)現(xiàn)密度聚類(lèi)(DBSCAN)計(jì)算,結(jié)合實(shí)例形式分析了聚類(lèi)算法的相關(guān)概念、原理及使用聚類(lèi)算法進(jìn)行密度聚類(lèi)計(jì)算的相關(guān)操作技巧,需要的朋友可以參考下
    2018-12-12
  • 用python打開(kāi)攝像頭并把圖像傳回qq郵箱(Pyinstaller打包)

    用python打開(kāi)攝像頭并把圖像傳回qq郵箱(Pyinstaller打包)

    這篇文章主要介紹了用python打開(kāi)攝像頭并把圖像傳回qq郵箱,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Python爬蟲(chóng)之Selenium庫(kù)的使用方法

    Python爬蟲(chóng)之Selenium庫(kù)的使用方法

    這篇文章主要介紹了Python爬蟲(chóng)之Selenium庫(kù)的使用方法,幫助大家更好的理解和使用爬蟲(chóng),感興趣的朋友可以了解下
    2021-01-01
  • python dataframe astype 字段類(lèi)型轉(zhuǎn)換方法

    python dataframe astype 字段類(lèi)型轉(zhuǎn)換方法

    下面小編就為大家分享一篇python dataframe astype 字段類(lèi)型轉(zhuǎn)換方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • python 字典 setdefault()和get()方法比較詳解

    python 字典 setdefault()和get()方法比較詳解

    這篇文章主要介紹了python 字典 setdefault()和get()方法比較詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Python從函數(shù)參數(shù)類(lèi)型引出元組實(shí)例分析

    Python從函數(shù)參數(shù)類(lèi)型引出元組實(shí)例分析

    這篇文章主要介紹了Python從函數(shù)參數(shù)類(lèi)型引出元組,結(jié)合實(shí)例形式分析了Python函數(shù)定義與使用中常見(jiàn)的三種參數(shù)類(lèi)型,并簡(jiǎn)單分析了元組類(lèi)型參數(shù)的使用,需要的朋友可以參考下
    2019-05-05
  • python分布式編程實(shí)現(xiàn)過(guò)程解析

    python分布式編程實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了python分布式編程實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Python中繪制折線圖的全面指南(非常詳細(xì)!)

    Python中繪制折線圖的全面指南(非常詳細(xì)!)

    對(duì)于數(shù)據(jù)而言一般都會(huì)使用折線圖反映數(shù)據(jù)背后的趨勢(shì),下面這篇文章主要給大家介紹了關(guān)于Python中繪制折線的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08

最新評(píng)論

固镇县| 元朗区| 桑日县| 德保县| 团风县| 保德县| 河东区| 古丈县| 延庆县| 阳江市| 双峰县| 长武县| 东兴市| 修武县| 会宁县| 靖边县| 朝阳县| 荆州市| 普兰县| 哈密市| 武冈市| 宁波市| 进贤县| 北票市| 滦平县| 如皋市| 巴林左旗| 冀州市| 苏尼特左旗| 大厂| 南昌市| 土默特右旗| 邻水| 揭东县| 肃宁县| 友谊县| 吕梁市| 巴里| 新干县| 东乡族自治县| 蓝山县|