新聞中心
這篇文章主要講解了使用Keras查看model weights.h5文件內(nèi)容的實現(xiàn)方法,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
Keras的模型是用hdf5存儲的,如果想要查看模型,keras提供了get_weights的函數(shù)可以查看:
for layer in model.layers: weights = layer.get_weights() # list of numpy array
而通過hdf5模塊也可以讀取:hdf5的數(shù)據(jù)結(jié)構(gòu)主要是File - Group - Dataset三級,具體操作API可以看官方文檔。weights的tensor保存在Dataset的value中,而每一集都會有attrs保存各網(wǎng)絡(luò)層的屬性:
import h6py def print_keras_wegiths(weight_file_path): f = h6py.File(weight_file_path) # 讀取weights h6文件返回File類 try: if len(f.attrs.items()): print("{} contains: ".format(weight_file_path)) print("Root attributes:") for key, value in f.attrs.items(): print(" {}: {}".format(key, value)) # 輸出儲存在File類中的attrs信息,一般是各層的名稱 for layer, g in f.items(): # 讀取各層的名稱以及包含層信息的Group類 print(" {}".format(layer)) print(" Attributes:") for key, value in g.attrs.items(): # 輸出儲存在Group類中的attrs信息,一般是各層的weights和bias及他們的名稱 print(" {}: {}".format(key, value)) print(" Dataset:") for name, d in g.items(): # 讀取各層儲存具體信息的Dataset類 print(" {}: {}".format(name, d.value.shape)) # 輸出儲存在Dataset中的層名稱和權(quán)重,也可以打印dataset的attrs,但是keras中是空的 print(" {}: {}".format(name. d.value)) finally: f.close()
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
名稱欄目:使用Keras查看modelweights.h5文件內(nèi)容的實現(xiàn)方法-創(chuàng)新互聯(lián)
鏈接URL:http://www.ef60e0e.cn/article/cojdij.html