gpt4 book ai didi

python - 在CNN中,如何查看多个filter的权重?

转载 作者:太空宇宙 更新时间:2023-11-03 20:53:25 33 4
gpt4 key购买 nike

我试图更好地理解 CNN,因此我使用 keras 基本上制作了一个小型 CNN,并希望手动进行计算。

我从 GTSRB 数据库下载了图像,然后使用 PIL 库包将图像集转换为灰度并调整大小为 (6 x 6)。

下面的代码显示了我创建的 CNN。它包括 1 个卷积层(带有 2 个大小为 2x2 的滤波器)、1 个最大池化层 (2x2)、一个平坦化层和最后的一个密集层。

model = keras.models.Sequential()
model.add(keras.layers.Conv2D(2, kernel_size=(2,2),activation='relu', input_shape=(6,6,1)))
model.add(keras.layers.MaxPool2D(pool_size=(2,2)))
model.add(keras.layers.Flatten())
model.add(keras.layers.Dense(len(sign_label_list),activation='relu'))

然后我训练了网络并保存了模型和权重。

我在网上读到,为了检查权重(h5 文件类型),我需要一个工具来查看权重。所以我下载了 HDFView 工具。

现在我尝试查看每个过滤器的权重,但我只能看到其中 1 个过滤器的权重。

Filter weights

如何获得两个过滤器的权重?

有谁知道有没有办法通过python查看权重?

最初,我想仅使用 1 个过滤器进行测试,但当我查看权重时,我得到了 nan

最佳答案

查看文档和 Keras 常见问题解答 found here .

查看特定层权重的建议方法是执行以下操作:

weights,biases = model.layers[0].get_weights()

然后,我使用 print(weights) 将权重打印到控制台,这会显示所有过滤器的值。

但是,我仍然无法使用 HDFView 工具查看多个过滤器的权重。

关于python - 在CNN中,如何查看多个filter的权重?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56163927/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com