keras得到每層的系數(shù)方式
使用keras搭建好一個(gè)模型,訓(xùn)練好,怎么得到每層的系數(shù)呢:
weights = np.array(model.get_weights()) print(weights) print(weights[0].shape) print(weights[1].shape)
這樣系數(shù)就被存放到一個(gè)np中了。
補(bǔ)充知識:使用keras框架編寫的深度模型 輸出及每一層的特征可視化
使用訓(xùn)練好的模型進(jìn)行預(yù)測的時(shí)候,為分析效果,通常需要對特征提取過程中的特征映射做可視化操作
本文以keras為例,對特征可視化操作進(jìn)行詳解。
一、首先,對模型的最后輸出層進(jìn)行特征可視化
from keras import models
#使用matlpotlib模塊進(jìn)行繪圖的操作
import matplotlib.pylot as plt
#images是一個(gè)batch的輸入圖像,batch_input[batch圖像數(shù)量,尺寸高,尺寸寬,3(rgb通道數(shù)量)]
#model是訓(xùn)練好的模型
#model = load_model('path')
nb_images = len(images)
batch_input = np.zeros((nb_images, net_h, net_w, 3))
# preprocess the input
for i in range(nb_images):
batch_input[i] = preprocess_input(images[i], net_h, net_w)
# run the prediction
#batch_output為一個(gè)樣本的所有通道輸出特征映射,本文應(yīng)用特征金字塔結(jié)構(gòu),有三個(gè)維度的特征提取層
#batch_output[0]是第一個(gè)維度的特征提取層所有通道的輸出特征映射,四維,本文例子中為[1, 52, 52, 72]
#[一個(gè)樣本,尺寸,尺寸,通道數(shù)]
#也可以是batch_output = model.predict(batch_input)
batch_output = model.predict_on_batch(batch_input)
batch_boxes = [None]*nb_images
print(batch_output[0].shape)
#display feature map
#下面為歸一化到0-255空間內(nèi)
xx = batch_output[0]
max = np.max(xx)
print(max,"max value is :")
X_output = X_output .astype("float32") / max * 255
#下面的30為第30個(gè)通道
X_output = xx[0,:,:,30]
#使用matplotlib顯示圖像
plt.figure()
plt.imshow(X_output, cmap='viridis')
plt.show()
#輸出結(jié)果
原始圖像

輸出層的特征可視化

二、可視化某一層的特征映射
from keras import backend as k
from keras import models
import matplotlib.pylot as plt
model = load_model('...')
layer_1 =k.function([model.layers[0].input], [model.layers[1].output])
#第2個(gè)model,layers[]改成你想顯示的層數(shù)
f1 = layer_1[input_image][0]
f1.image = f1[0,:,:,channel]
plt,matshow(f1.image, camp='viridis')
plt.show()
示例:
from keras import models
import matplotlib.pylot as plt
from keras import backend as k
#images是一個(gè)batch的輸入圖像,batch_input[batch圖像數(shù)量,尺寸高,尺寸寬,3(rgb通道數(shù)量)]
#model是訓(xùn)練好的模型
#model = load_model('path')
nb_images = len(images)
batch_input = np.zeros((nb_images, net_h, net_w, 3))
# preprocess the input
for i in range(nb_images):
batch_input[i] = preprocess_input(images[i], net_h, net_w)
#display feature map
#可視化第一層的特征映射
layer_1 = K.function([model.layers[0].input], [model.layers[1].output])
f1 = layer_1([batch_input])[0]
print(f1.shape)
max = np.max(f1)
f1 =f1.astype("float32") / max * 255
plt.figure()
#顯示第一層網(wǎng)絡(luò)前5個(gè)通道的特征映射
for i in range(5):
plt.subplot(2, 3, i+1)
plt.imshow(f1[0,:,:,i], cmap='viridis')
plt.show()
輸出結(jié)果:

以上這篇keras得到每層的系數(shù)方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python模塊hashlib(加密服務(wù))知識點(diǎn)講解
在本篇文章里小編給大家分享的是關(guān)于python模塊hashlib(加密服務(wù))知識點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2019-11-11
python中sklearn的pipeline模塊實(shí)例詳解
這篇文章主要介紹了python中sklearn的pipeline模塊的相關(guān)知識,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05
Django ORM數(shù)據(jù)庫操作處理全面指南
本文深度探討Django ORM的概念、基礎(chǔ)使用、進(jìn)階操作以及詳細(xì)解析在實(shí)際使用中如何處理數(shù)據(jù)庫操作,同時(shí),我們還討論了模型深入理解,如何進(jìn)行CRUD操作,并且深化理解到數(shù)據(jù)庫遷移等高級主題2023-09-09
Python實(shí)現(xiàn)隨機(jī)森林RF模型超參數(shù)的優(yōu)化詳解
這篇文章主要為大家詳細(xì)介紹了基于Python的隨機(jī)森林(Random Forest,RF)回歸代碼,以及模型超參數(shù)(包括決策樹個(gè)數(shù)與最大深度、最小分離樣本數(shù)、最小葉子節(jié)點(diǎn)樣本數(shù)、最大分離特征數(shù)等)自動(dòng)優(yōu)化的代碼,感興趣的小伙伴可以了解一下2023-02-02
Python使用scipy進(jìn)行曲線擬合的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Python使用scipy進(jìn)行曲線擬合的相關(guān)資料,Scipy優(yōu)化和擬合采用的是optimize模塊,該模塊提供了函數(shù)最小值(標(biāo)量或多維)、曲線擬合和尋找等式的根的有用算法,需要的朋友可以參考下2022-05-05
python如何實(shí)現(xiàn)數(shù)據(jù)的線性擬合
這篇文章主要為大家詳細(xì)介紹了python如何實(shí)現(xiàn)數(shù)據(jù)的線性擬合,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07
Python遠(yuǎn)程控制Windows服務(wù)器的方法詳解
在很多企業(yè)會(huì)使用閑置的 Windows 機(jī)器作為臨時(shí)服務(wù)器,有時(shí)候我們想遠(yuǎn)程調(diào)用里面的程序或查看日志文件。本文分享了利用Python遠(yuǎn)程控制Windows服務(wù)器的方法,感興趣的可以學(xué)習(xí)一下2022-05-05
基于python實(shí)現(xiàn)百度語音識別和圖靈對話
這篇文章主要介紹了基于python實(shí)現(xiàn)百度語音識別和圖靈對話,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
python+mysql實(shí)現(xiàn)教務(wù)管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python+mysql實(shí)現(xiàn)教務(wù)管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02

