1.獲取中間層輸出
keras中獲取層輸出shape的方法匯總(主要看如何取出中間層的輸出)
https://blog.csdn.net/C_chuxin/article/details/85237690
Keras中的model.get_layer()的使用方法
https://blog.csdn.net/c_chuxin/article/details/85237334
2.keras中間層可視化
Keras中間層輸出的兩種方式,即特征圖可視化
https://blog.csdn.net/u010420283/article/details/80303231
keras—如何獲得中間層的輸出???
https://blog.csdn.net/wuyuefei3/article/details/80812006
剛開始接觸keras的時候,覺得這個框架很方便使用,就像搭積木一樣,但有時候為了理解模型中間的數據流向,摸清楚模型內部的數據傳輸是什么樣子的就有點麻煩。
事實上,keras也為我們提供了方法,其中最簡單的方法就是在原來的模型之外在建立一個小型的模型,截取原始模型從輸入層到你你感興趣的那一層作為新模型的輸入和輸出,在predict一下就出來你想要的那一層的結果啦!
代碼:
my_model = load_model('./model/model_resnet_10.hdf5') #64-32-16結構,最好的結果0.9994 my_model.summary() from keras.models import Model #這個新的模型截取了原始模型中從輸入到某個層(你想要得到結果的那一層)的一部分, intermediate_layer_model = Model(inputs=my_model.input, outputs=my_model.get_layer('flatten_1').output)#你創建新的模型 intermediate_output = intermediate_layer_model.predict(X_test_r)#這個數據就是原始模型的輸入數據,
疑問這部分代碼插入到resnet的哪個位置?,解決方案參考下面