Python H5py层-在使用自定义keras层时,无法在第一个历元后创建链接(';名称已存在';)
我正试图在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层: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 运行时错误:无法创建链接(名
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
无关-请不要垃圾邮件标签(已删除).看来这个问题与你如何保存你的模型有很大关系。请同时粘贴构建和运行模型的代码片段。