python模型可视化_keras模型可视化,层可视化及kernel可视化实例

本文通过Keras展示了如何可视化模型的层,包括权重和卷积核。首先构建了一个卷积神经网络模型,然后分别对不同层进行可视化,包括卷积层、池化层和全连接层的激活图,以及卷积核的权重分布。通过迭代优化输入图像以最大化特定卷积核的响应,得到直观的视觉效果。
摘要由CSDN通过智能技术生成

keras模型可视化:

model:

model = Sequential()

# input: 100x100 images with 3 channels -> (100, 100, 3) tensors.

# this applies 32 convolution filters of size 3x3 each.

model.add(ZeroPadding2D((1,1), input_shape=(38, 38, 1)))

model.add(Conv2D(32, (3, 3), activation='relu', padding='same'))

# model.add(Conv2D(32, (3, 3), activation='relu', padding='same'))

model.add(BatchNormalization())

model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Dropout(0.25))

model.add(Conv2D(64, (3, 3), activation='relu', padding='same',))

# model.add(Conv2D(64, (3, 3), activation='relu', padding='same',))

model.add(BatchNormalization())

model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Dropout(0.25))

model.add(Conv2D(128, (3, 3), activation='relu', padding='same',))

# model.add(Conv2D(128, (3, 3), activation='relu', padding='same',))

model.add(BatchNormalization())

model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Dropout(0.25))

model.add(AveragePooling2D((5,5)))

model.add(Flatten())

# model.add(Dense(512, activation='relu'))

# model.add(Dropout(0.5))

model.add(Dense(label_size, activation='softmax'))

1.层可视化:

test_x = []

img_src = cv2.imdecode(np.fromfile(r'c:\temp.tif', dtype=np.uint8), cv2.IMREAD_GRAYSCALE)

img = cv2.resize(img_src, (38, 38), interpolation=cv2.INTER_CUBIC)

# img = np.random.randint(0,255,(38,38))

img = (255 - img) / 255

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值