Python H5py层-在使用自定义keras层时,无法在第一个历元后创建链接(';名称已存在';)

Python H5py层-在使用自定义keras层时,无法在第一个历元后创建链接(';名称已存在';),python,tensorflow,keras,h5py,Python,Tensorflow,Keras,H5py,我正试图在Keras中为循环卷积网络构建一个RCL块,如本文所述: 使用自定义keras层的我的模型得到编译,但是在运行1个历元后,当模型被保存时,我遇到h5py抛出的错误: h5py.\u objects.with\u phil.wrapper()中的h5py/\u objects.pyx h5py.\u objects.with\u phil.wrapper()中的h5py/\u objects.pyx h5py.h5o.link()中的h5py/h5o.pyx 运行时错误:无法创建链接(名

我正试图在Keras中为循环卷积网络构建一个RCL块,如本文所述:

使用自定义keras层的我的模型得到编译,但是在运行1个历元后,当模型被保存时,我遇到h5py抛出的错误:

h5py.\u objects.with\u phil.wrapper()中的h5py/\u objects.pyx

h5py.\u objects.with\u phil.wrapper()中的h5py/\u objects.pyx

h5py.h5o.link()中的h5py/h5o.pyx

运行时错误:无法创建链接(名称已存在)

我正在自定义层中使用现有的keras层:

class Recurrent_block(tf.keras.layers.Layer):
    def __init__(self, ch_out,t):
        self.num_outputs = num_outputs
        self.t = t
        self.ch_out = ch_out
        super(Recurrent_block, self).__init__()

    def build(self, input_shape)
        self.shape = tf.TensorShape([input_shape[0].value,input_shape[1].value,input_shape[2].value,self.ch_out])
        self.fc = tf.keras.models.Sequential([tf.keras.layers.Conv2D(filters=self.ch_out, kernel_size=(3,3), strides=(1, 1), padding='same'),tf.keras.layers.BatchNormalization(),tf.keras.layers.Activation('relu')])
        self.fc.build(self.shape)
        print(self.fc.trainable_weights)
        self._trainable_weights = self.fc.trainable_weights
        super(Recurrent_block, self).build(self.shape)

    def call(self,x):
        x = tf.keras.layers.Conv2D(self.ch_out,kernel_size=1,strides=(1, 1),padding='same')(x)
        for i in range(self.t+1):
            if i==0:               
                x1 = self.fc(x)
        
            x1 = self.fc(x+x1)
        return x1  

请有人帮我解决这个错误,或者指导我如何将多个keras层组合成一个自定义层,以及如何以我的方式更改调用功能。

问题与
pytorch
无关-请不要垃圾邮件标签(已删除).看来这个问题与你如何保存你的模型有很大关系。请同时粘贴构建和运行模型的代码片段。