keras輸出中間層結果,某一層的權重、偏置


 

 轉載:https://blog.csdn.net/hahajinbu/article/details/77982721

from keras.models import Sequential,Model
from keras.layers import Dense
import numpy as np

model = Sequential()
model.add(Dense(32,activation="relu",input_dim=100))
model.add(Dense(16,activation="relu",name="Dense_1"))
model.add(Dense(1, activation='sigmoid',name="Dense_2"))

model.compile(optimizer='rmsprop',loss='binary_crossentropy',metrics=['accuracy'])


#假設訓練和測試使用同一組數據
data = np.random.random((1000, 100))
labels = np.random.randint(2, size=(1000, 1))

model.fit(data,labels,epochs=10,batch_size=32)

#取某一層的輸出為輸出新建為model,采用函數模型
dense1_layer_model = Model(inputs=model.input,outputs=model.get_layer('Dense_1').output)
dense1_output = dense1_layer_model.predict(data)

print (dense1_output.shape)


#獲得某一層的權重和偏置
weight_Dense_1,bias_Dense_1 = model.get_layer('Dense_1').get_weights()

print(weight_Dense_1.shape)
print(bias_Dense_1.shape)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM