将keras权重加载到特定图层

问题描述 投票:1回答:1

我训练了一个3dCNN模型。我想在Keras中加载我存储的权重,直到特定的图层。我已将特定图层命名为name =“my_dense_layer”。如何加载权重直到该层?

我的模型看起来像:

enter image description here

我想通过跳过最后一次掉落和大小为6的Dense图层来加载我的权重。然后,我想投影我的大小为32x10x28x28的输入并使用具有输出大小为512的向量的特定Dense图层的权重尺寸。因此有作为输出32x512

python tensorflow keras
1个回答
1
投票

因为存储的权重排列为b1, w1, b2, w2 ...,我们可以逐层加载权重,直到my_dense_layer。可能的解决方案如下:

for layer in model.layers:
if layer.trainable_weights:
    b=weights.pop(0)
    w=weights.pop(0)
    layer.set_weights((b,w))
    if layer.name=='my_dense_layer':
        break
© www.soinside.com 2019 - 2024. All rights reserved.